/* 实体商品与订单；只覆盖专属组件。 */
#detail.physical-card-in-view > .actionbar { display: none !important; }
.physical-cards {
  margin: 18px 16px 22px;
  padding: 24px 22px 18px;
  border: 1px solid #ded6c9;
  border-radius: 18px;
  background: linear-gradient(135deg, #faf7f0, #f0e9dd);
  color: #283b36;
  box-shadow: 0 7px 20px #4c3e2610;
  overflow-wrap: anywhere;
}
.physical-cards-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.physical-cards-kicker { color: #786346; font-size: 11px; letter-spacing: .16em; }
.physical-cards-preview { color: #756f65; font-size: 10px; }
.physical-cards h2 { margin: 0; font-size: 20px; line-height: 1.45; font-weight: 600; letter-spacing: .025em; }
.physical-cards-intro { margin: 10px 0 22px; color: #62695f; font-size: 13px; line-height: 1.9; }
.physical-cards-picture { margin: 0 0 22px; }
.physical-cards-picture img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; border-radius: 8px; }
.physical-cards-picture figcaption { margin-top: 8px; color: #79756b; font-size: 10px; text-align: right; }
.physical-cards-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px; }
.physical-cards-amount { font-size: 35px; line-height: 1.2; font-weight: 600; color: #85543b; font-variant-numeric: tabular-nums; letter-spacing: -.03em; }
.physical-cards-amount small { margin-right: 4px; font-size: 18px; font-weight: 500; }
.physical-cards-shipping { font-size: 12px; color: #6d695e; }
.physical-cards-member { margin: 8px 0 20px; font-size: 12px; line-height: 1.7; color: #756044; }
.physical-cards-services { display: flex; flex-wrap: wrap; gap: 8px 16px; list-style: none; margin: 0; padding: 16px 0 0; border-top: 1px solid #dcd3c5; }
.physical-cards-services li { font-size: 12px; color: #515c50; }
.physical-cards-services li::before { content: ''; display: inline-block; width: 4px; height: 4px; border-radius: 50%; background: #9c896b; margin: 0 7px 2px 0; }
.physical-cards-guide { margin: 12px 0 18px; color: #696c61; font-size: 12px; line-height: 1.85; }
.physical-cards .physical-cards-buy { width: 100%; min-height: 46px; border: 1px solid #c9c4b7; background: #e3e2d9; color: #686e60; opacity: 1; cursor: not-allowed; }
.physical-cards-art-note { text-align: center; margin: 11px 0 0; color: #79756b; font-size: 11px; }
.physical-cards-buy:not(:disabled){background:#344d49;color:#fff;border-color:#344d49;cursor:pointer}
.physical-product-info{margin:16px 0;color:#68675f;font-size:12px;line-height:1.8}
.physical-product-info summary{cursor:pointer}
.physical-product-info p{white-space:pre-line}
.physical-orders-intro,.physical-order-summary{margin:20px 16px;padding:22px;background:linear-gradient(120deg,#f5f0e6,#fffdf8);border:1px solid #e4ddd0;border-radius:16px;overflow-wrap:anywhere}
.physical-orders-intro h1,.physical-order-summary h1{font-size:20px;line-height:1.5;margin:12px 0}
.physical-orders-intro p,.physical-order-summary p{font-size:13px;color:#6c7068;line-height:1.8}
.physical-order-summary strong{font-size:30px;color:#85543b;font-variant-numeric:tabular-nums}
.physical-order-summary small{display:block;color:#76796f;font-size:11px}
.physical-order-summary .btn{display:block;width:100%;margin:18px 0 8px}
.physical-order-card{display:block;width:calc(100% - 32px);margin:12px 16px;padding:20px;text-align:left;background:#fffdf8;border:1px solid #e4ddd0;border-radius:14px;color:#293e39;cursor:pointer}
.physical-order-head,.physical-order-foot{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
.physical-order-head b{font-size:14px}.physical-order-head>span{font-size:11px;color:#876640;flex-shrink:0}
.physical-order-foot small{font-size:12px;color:#73776f}.physical-order-foot b{color:#85543b}
.physical-form{margin:16px;padding:22px;background:#fffdf8;border:1px solid #e4ddd0;border-radius:14px}
.physical-form h2{font-size:18px;margin:0 0 8px}.physical-form label{display:block;font-size:13px;margin:16px 0 7px;color:#4e5c52}
.physical-form input,.physical-form textarea{box-sizing:border-box;width:100%;border:1px solid #d5d8cf;border-radius:8px;background:#fff;padding:12px;font:inherit;font-size:16px;color:#273f38}
.physical-form input:focus,.physical-form textarea:focus{outline:2px solid #426658;outline-offset:2px}
.physical-form .btn{width:100%;margin-top:12px;min-height:44px}.physical-message{color:#a34635;font-size:13px;line-height:1.7;white-space:pre-line}
.physical-address p,.physical-learning p,.physical-aftersale p{font-size:13px;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere}
.physical-checkout{display:grid;gap:12px}.physical-checkout strong{font-size:28px;color:#85543b}.physical-checkout small,.physical-checkout details{font-size:13px;line-height:1.8}
.physical-service-qr{display:block;width:180px;max-width:100%;height:auto;margin:12px auto}
.physical-all-orders{display:block;width:calc(100% - 32px);margin:16px 16px 28px}
.physical-loading{padding:32px;text-align:center;font-size:14px;color:#69796d}
.physical-address.card.sec,.physical-learning.card.sec,.physical-aftersale.card.sec{padding:20px;margin:14px 16px;border-radius:16px}
.physical-address .sec-t,.physical-learning .sec-t,.physical-aftersale .sec-t{padding:0;margin:0 0 14px}
.physical-address .btn,.physical-learning .btn,.physical-aftersale .btn,.physical-form .btn,.physical-order-summary .btn,.physical-all-orders{height:auto;min-height:44px;padding:11px 18px;font-size:14px;line-height:1.5;border-radius:10px;text-align:center}
.physical-address .btn,.physical-learning .btn{display:block;width:100%;margin-top:14px}
.physical-address .text-btn,.physical-aftersale .text-btn{min-height:44px;padding:8px 0;text-align:left}
.physical-checkout p,.physical-checkout details p{white-space:pre-line}
#physicalShare .l{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e7e5dc;font-size:13px}
#physicalShare .w small{display:block;margin-top:5px;color:#758074;font-size:10px;overflow-wrap:anywhere}
#physicalShare .v{white-space:nowrap;color:#85543b}
#modal .physical-form{padding:0;border:0;margin:0;background:transparent}
@media(max-width:350px){.physical-order-head{align-items:flex-start;flex-direction:column;gap:6px}.physical-form{padding:17px}}
@media (max-width: 350px) {
  .physical-cards { padding: 20px 17px 16px; }
  .physical-cards h2 { font-size: 18px; }
  .physical-cards-heading { gap: 7px; }
  .physical-cards-services { gap: 8px 12px; }
}
