/* Checkout and order-center experience; isolated from player and HLS styling. */
:root{--commerce-ink:#1d1d1f;--commerce-muted:#86868b;--commerce-line:#e8e8ed;--commerce-brand:#0071e3;--commerce-brand-dark:#1d1d1f;--commerce-paper:#ffffff;--commerce-soft:#f5f5f7;--commerce-safe-bottom:env(safe-area-inset-bottom,0px);--commerce-red:#f52d56;--commerce-red-dark:#d91f45;--commerce-red-soft:#fdeaec;--commerce-red-paper:#fff7f8;--commerce-gray-soft:#f1f2f4;--commerce-gray-btn:#fff;--commerce-gray-ink:#4d5661}
.composer{z-index:126;gap:7px;right:82px!important;bottom:12px!important;bottom:max(12px,env(safe-area-inset-bottom))!important}.orders-shortcut{height:42px;min-width:47px;flex:0 0 47px;padding:0 8px;border:1px solid rgba(255,255,255,.2);border-radius:21px;background:rgba(23,20,18,.72);color:#fff;font-size:12px;font-weight:700;backdrop-filter:blur(10px)}
/* 主播页右上角「订单 / 客服」图标按钮：与 #roomClose 同风格的内联 SVG stroke 图标。 */
@media(max-width:390px){}
/* Keep comments compact at lower left, clear of the composer and right rail. */
.comments{left:10px!important;right:auto!important;bottom:calc(var(--live-hot-bottom,70px) + var(--live-hot-height,56px) + var(--live-stack-gap,10px))!important;width:min(62vw,228px);max-height:155px;max-height:min(155px,25vh);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;gap:3px;padding:0 2px 2px 0}.comment{width:fit-content;max-width:100%;padding:3px 6px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:rgba(20,18,17,.64);font-size:11px;line-height:1.25;backdrop-filter:blur(6px)}.comment .fan-badge{padding:1px 4px;font-size:8px;line-height:12px}.comment-status{position:absolute;z-index:127;left:10px;right:auto;bottom:calc(var(--live-hot-bottom,70px) + var(--live-hot-height,56px) + var(--live-stack-gap,10px) - 12px)!important;width:max-content;max-width:228px;max-width:min(62vw,228px);padding:4px 7px;border-radius:10px;background:rgba(20,18,17,.76);font-size:10px;pointer-events:none}
.room.has-lecture-card .comments{left:10px!important;right:auto!important;width:min(51vw,188px);max-height:145px;max-height:min(145px,23vh)}
/* Hot-sale card: real product tile (thumb + name + live price + deal count). */
#hotSaleCard.hot-sale-card{position:absolute!important;right:12px!important;left:auto!important;bottom:var(--live-hot-bottom,70px)!important;z-index:121!important;display:flex!important;align-items:center!important;gap:5px!important;box-sizing:border-box!important;width:168px!important;width:min(168px,calc(100vw - 24px))!important;height:56px!important;min-height:56px!important;margin:0!important;padding:4px 5px!important;border:0!important;border-radius:10px!important;background:linear-gradient(100deg,#ff8b29 0%,#ff6637 55%,#ff4934 100%)!important;color:#fff!important;overflow:hidden!important;text-align:left!important;box-shadow:0 6px 18px rgba(0,0,0,.3)!important;cursor:pointer!important}
#hotSaleCard.hot-sale-card[hidden]{display:none!important}
#hotSaleCard .hot-sale-product{position:static!important;display:flex!important;align-items:center!important;gap:5px!important;flex:1 1 auto!important;min-width:0!important;width:auto!important;height:48px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important}
#hotSaleCard .hot-product-visual{position:static!important;display:block!important;flex:0 0 40px!important;width:40px!important;height:40px!important;margin:0!important;padding:0!important;border:0!important;border-radius:8px!important;background:#fff!important;color:#a4471d!important;font-size:16px!important;font-weight:700!important;line-height:40px!important;text-align:center!important;overflow:hidden!important}
#hotSaleCard #hotProductImage{display:block!important;width:40px!important;height:40px!important;object-fit:cover!important}
#hotSaleCard .hot-product-info{position:static!important;display:flex!important;flex:1 1 auto!important;min-width:0!important;flex-direction:column!important;justify-content:center!important;gap:1px!important;margin:0!important;padding:0!important;background:transparent!important;color:#fff!important;overflow:hidden!important}
#hotSaleCard #hotProductName{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:11px!important;font-weight:700!important;line-height:13px!important}
#hotSaleCard #hotProductPrice{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#ffe05a!important;font-size:13px!important;font-weight:900!important;line-height:15px!important}
#hotSaleCard .hot-sale-main{position:static!important;display:flex!important;min-width:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
#hotSaleCard .hot-sale-title{display:flex!important;align-items:baseline!important;gap:1px!important;white-space:nowrap!important;line-height:1!important}
#hotSaleCard .hot-sale-word{font-size:9px!important;font-weight:800!important}
#hotSaleCard .hot-sale-times{font-size:9px!important}
#hotSaleCard #hotSaleCount{min-width:0!important;font-size:13px!important;font-weight:900!important;line-height:12px!important;text-shadow:none!important}
#hotSaleCard #hotSaleUnit{font-size:9px!important;line-height:12px!important;opacity:.92!important}
#hotSaleCard .hot-sale-sub{flex:0 0 auto!important;align-self:center!important;color:rgba(255,255,255,.88)!important;font-size:9px!important;font-weight:700!important;line-height:11px!important;white-space:nowrap!important}
#hotSaleCard .hot-sale-flame,#hotSaleCard .hot-sale-copy,#hotSaleCard .hot-sale-test,#hotSaleCard .hot-sale-buy{display:none!important}
.orders-shortcut{display:none!important}.cart-head-actions{gap:4px}
@media(max-width:390px){.comments,.room.has-lecture-card .comments{left:8px!important;right:auto!important;width:min(56vw,202px);max-height:145px;max-height:min(145px,24vh)}.room.has-lecture-card .comments{width:min(48vw,174px)}#hotSaleCard.hot-sale-card{right:8px!important}.live-product-shortcut{right:8px}.comment{font-size:10px}.composer{gap:5px}}
@media(max-height:700px) and (orientation:landscape){.comments,.room.has-lecture-card .comments{left:10px!important;right:auto!important;bottom:62px!important;bottom:calc(max(8px,env(safe-area-inset-bottom)) + 54px)!important;max-height:22vh}.actions{bottom:62px;bottom:calc(max(8px,env(safe-area-inset-bottom)) + 54px)}#hotSaleCard.hot-sale-card{display:none!important}.orders-shortcut{display:none!important}}
.sheet-backdrop{z-index:220;top:0;right:0;bottom:0;left:0;padding-top:8px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:var(--commerce-safe-bottom);align-items:flex-end}.sheet{z-index:1;width:100%;width:min(520px,100%);max-height:84vh;max-height:min(84vh,850px);max-height:min(84svh,850px);padding-bottom:10px;padding-bottom:calc(10px + var(--commerce-safe-bottom));border-radius:20px 20px 0 0;background:var(--commerce-paper);box-shadow:0 -14px 45px rgba(20,25,30,.22);color:var(--commerce-ink)}.sheet-head{padding:15px 18px 13px;border-color:var(--commerce-line);background:rgba(255,255,255,.97);backdrop-filter:blur(16px)}.sheet-head h2{font-size:18px;letter-spacing:.01em}.sheet-head h2 small{margin-left:5px;color:var(--commerce-muted);font-size:12px;font-weight:500}.cart-head-actions{display:flex;align-items:center;gap:5px}.sheet-head .close{width:44px;height:44px;min-width:44px;border:1px solid #e3e4e6;background:#f5f5f7;color:#4d5661}.products{padding:0 14px}.product{grid-template-columns:76px minmax(0,1fr) auto;gap:11px;padding:14px 0;border-color:var(--commerce-line)}.product-img{width:76px;height:76px;overflow:hidden;border-radius:10px;background:var(--commerce-soft);color:var(--commerce-brand)}.product-img img{width:100%;height:100%;object-fit:cover}.product h3{font-size:15px;line-height:1.35}.product p{margin-bottom:7px}.product-price-row{display:flex;align-items:center;gap:7px}.price{color:#d91f45;font-size:17px}.product-stock{margin-top:4px;color:#8d938d;font-size:11px}.product-stock.is-low{color:#d91f45}.product-stock.is-empty{color:#a3a7ad}.sales-count{color:#86868b;font-size:11px}.product-action{display:flex;align-items:flex-end}.buy,.commerce-action,.pay{min-height:42px;border-radius:22px;background:var(--commerce-brand);color:#fff;font-weight:700}.buy{height:42px;padding:0 15px}.buy:disabled,.pay:disabled,.commerce-action:disabled{opacity:.48}.detail{padding:16px 18px 8px}.detail-visual{height:190px;overflow:hidden;border-radius:15px;background:linear-gradient(145deg,#f5efe4,#e7edf0);color:var(--commerce-brand)}.detail-visual img{width:100%;height:100%;object-fit:cover}.detail h2{color:var(--commerce-ink)}.checkout-head{display:grid;grid-template-columns:104px 1fr;align-items:center;gap:14px}.checkout-head .detail-visual{width:104px;height:104px}.checkout-head .price{margin:7px 0}.detail-desc{color:#68717c;line-height:1.6}.checkout-section{padding:13px 0;border-top:1px solid var(--commerce-line)}.checkout-section h3{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px;font-size:14px}.sku{gap:9px}.sku button{max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:44px;padding:8px 13px;border-color:#e6e0d6;border-radius:12px;background:#fff;color:#49515b}.sku button.on{border-color:var(--commerce-brand);background:#f8f0e5;color:var(--commerce-brand-dark);box-shadow:0 0 0 1px rgba(181,122,60,.08)}.sku button:disabled{opacity:.4;text-decoration:line-through}.quantity{display:flex;align-items:center;gap:17px}.quantity button{width:44px;height:44px;border:1px solid #e6e1d8;border-radius:12px;background:white;color:#433b33;font-size:20px}.quantity strong{min-width:28px;text-align:center}.address-card{padding:13px;border:1px solid #eee8de;border-radius:12px;background:#fff}.address-card h3 button{min-height:40px;border:0;background:transparent;color:var(--commerce-brand-dark)}.address-card strong{font-size:13px}.address-card p,.address-region{margin:5px 0 0;color:#747d87;line-height:1.45}.checkout-total{position:sticky;bottom:58px;padding:11px 0;text-align:right;color:#68717c;background:var(--commerce-paper)}.checkout-total strong{margin-left:8px;color:#d91f45;font-size:20px}.detail-actions{position:sticky;bottom:0;grid-template-columns:1fr;margin:8px -18px 0;padding:10px 18px 8px;padding:10px 18px calc(8px + var(--commerce-safe-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.detail-actions button{min-height:48px;height:auto;border-radius:25px}
.commerce-sheet .sheet{display:flex;flex-direction:column;overflow:hidden}.commerce-list{min-height:70px;overflow:auto;padding:0 16px 14px;overscroll-behavior:contain}.commerce-empty{padding:34px 16px;text-align:center;color:var(--commerce-muted)}.commerce-row{display:grid;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid var(--commerce-line)}.commerce-row-image{display:grid;width:66px;height:66px;place-items:center;overflow:hidden;border-radius:10px;background:var(--commerce-soft);color:var(--commerce-brand);font-size:22px}.commerce-row-image img{width:100%;height:100%;object-fit:cover}.commerce-row-main{min-width:0}.commerce-row-main strong,.commerce-row-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.commerce-row-main strong{font-size:14px}.commerce-row-main small{margin-top:4px;color:var(--commerce-muted);font-size:11px}.commerce-row-price{margin-top:6px;color:var(--commerce-brand-dark);font-size:14px;font-weight:700}.commerce-footer{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:12px;padding:13px 17px 13px;padding:13px 17px calc(13px + var(--commerce-safe-bottom));border-top:1px solid var(--commerce-line);background:rgba(255,255,255,.98)}.commerce-footer>span{color:#69717b;font-size:13px}.commerce-footer strong{margin-left:5px;color:#d91f45;font-size:20px}.commerce-footer .pay{min-width:126px;padding:0 20px;border:0}.order-filter{display:flex;gap:8px;overflow:auto;padding:12px 16px;border-bottom:1px solid var(--commerce-line)}.order-filter button{min-height:40px;padding:0 15px;border:1px solid #e3e4e6;border-radius:18px;background:#fff;color:#69717b;white-space:nowrap}.order-filter button.on{border-color:#d2d2d7;background:#f5f5f7;color:var(--commerce-brand-dark)}.order-card{margin:12px 0;border:1px solid #e6e6eb;border-radius:14px;background:#fff;overflow:hidden}.order-card-head,.order-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 12px}.order-card-logistics{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:0;border-top:1px solid #f0f0f2;background:#fff;text-align:left;cursor:pointer}.order-card-logistics:active{background:#f5f5f7}.order-card-logistics-carrier{flex:0 0 auto;color:#1d1d1f;font-size:12px;font-weight:700}.order-card-logistics-no{flex:1;min-width:0;overflow:hidden;color:#4d5661;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.order-card-logistics .order-logistics-state{flex:0 0 auto;font-size:11px}.order-card-logistics-go{flex:0 0 auto;color:#0071e3;font-size:11px;font-weight:600}
.order-card-head{border-bottom:1px solid #f0f0f2;color:#76808b;font-size:11px}.order-state{color:var(--commerce-brand-dark);font-size:12px;font-weight:700}.order-card-items{padding:0 12px}.order-mini{display:flex;align-items:center;gap:9px;padding:10px 0}.order-mini-image{width:50px;height:50px;flex:0 0 50px;overflow:hidden;border-radius:8px;background:var(--commerce-soft)}.order-mini-image img{width:100%;height:100%;object-fit:cover}.order-mini-copy{min-width:0;flex:1}.order-mini-copy strong,.order-mini-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-mini-copy strong{font-size:12px}.order-mini-copy small{margin-top:4px;color:#818994;font-size:10px}.order-mini-price{font-size:12px}.order-card-foot{border-top:1px solid #f0f0f2}.order-card-total{color:#68717c;font-size:12px}.order-card-total strong{color:#d91f45;font-size:16px}.order-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;margin-top:8px}.commerce-action{min-height:40px;padding:0 13px;border:0;font-size:12px}.commerce-action.secondary{border:1px solid #d2d2d7;background:#fff;color:#1d1d1f}.load-more{display:block;width:calc(100% - 32px);min-height:44px;margin:3px 16px 15px;border:1px solid #d2d2d7;border-radius:22px;background:white;color:var(--commerce-brand-dark)}.order-detail{overflow:auto;padding:14px 16px 20px}.order-back{min-height:40px;margin:0 0 10px;padding:0 12px;border:1px solid var(--commerce-line);border-radius:18px;background:#fff;color:var(--commerce-brand-dark)}.order-detail-status{margin-bottom:12px;padding:15px;border-radius:13px;background:#f5f5f7;color:var(--commerce-brand-dark)}.order-detail-status strong{font-size:17px}.order-detail-status p{margin:7px 0 0;color:#86868b;font-size:12px}.order-detail-address{padding:13px;border:1px solid #e6e6eb;border-radius:12px;line-height:1.6}.order-detail-address small{display:block;color:#79818a}.order-detail-meta{padding:13px 0;color:#79818a;font-size:12px;line-height:1.8}.order-detail-meta strong{color:#3b4652}.order-detail-total{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid var(--commerce-line);font-size:13px}.order-detail-total strong{color:#d91f45;font-size:18px}
@media(max-width:390px){.composer{left:8px;right:78px!important;gap:4px}.orders-shortcut{min-width:42px;flex-basis:42px;padding:0 5px}.comments{left:8px;right:8px}.product{grid-template-columns:66px minmax(0,1fr) auto;gap:8px}.product-img{width:66px;height:66px}.buy{padding:0 11px;font-size:12px}.commerce-row{grid-template-columns:58px minmax(0,1fr) auto;gap:8px}.commerce-row-image{width:58px;height:58px}}
@media(max-height:700px) and (orientation:landscape){.room{--commerce-landscape-clear:54px}.comments{left:10px;right:86px;bottom:62px;bottom:calc(var(--commerce-landscape-clear) + max(8px,env(safe-area-inset-bottom)));max-height:24vh}.comment{font-size:12px}.actions{bottom:62px;bottom:calc(var(--commerce-landscape-clear) + max(8px,env(safe-area-inset-bottom)))}.composer{bottom:7px;bottom:max(7px,env(safe-area-inset-bottom));left:10px;right:10px}.sheet{max-height:94vh;max-height:94svh}.commerce-sheet .sheet{max-height:94vh;max-height:94svh}.detail{padding-top:10px}.detail-visual{height:135px}.checkout-head .detail-visual{height:84px}.checkout-section{padding:8px 0}.detail-actions{padding-top:6px}#lectureCard.lecture-card{bottom:70px!important}}
@media(prefers-reduced-motion:reduce){.commerce-row,.order-card{scroll-behavior:auto}}
/* Unified commerce panel: left rail (mini bag + orders) beside four views. */
.commerce-body{display:flex;flex:1 1 auto;min-height:0}
.commerce-views{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column}
.commerce-views > div{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.commerce-views .commerce-list{flex:1 1 auto;min-height:0}
.commerce-views .order-detail{flex:1 1 auto;min-height:0}
/* 订单多或手机视口变矮时，只压缩可滚动内容，不压缩头部、筛选按钮和底部操作。 */
.commerce-body{overflow:hidden}
.commerce-sheet .sheet-head,.commerce-views .order-filter,.commerce-views .commerce-view-head,.commerce-views .load-more{flex:0 0 auto}
.commerce-views .order-filter{overflow-x:auto;overflow-y:hidden}
.commerce-view-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:10px 16px 4px;color:var(--commerce-muted);font-size:10px}
.commerce-view-head strong{color:var(--commerce-ink);font-size:13px}
/* 商品行（竞品形态）：序号徽章 + 缩略图 + 名称/红色价格，右侧「去购买」红色小按钮；没有购物车。 */
.product{display:grid;grid-template-columns:28px 76px minmax(0,1fr) auto;align-items:center;gap:0 11px;padding:14px 0;border-color:var(--commerce-line);cursor:pointer}
.product-index{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--commerce-gray-soft);color:#8b929c;font-size:13px;font-weight:700;line-height:1}
.product-img{width:76px;height:76px;overflow:hidden;border-radius:10px;background:var(--commerce-soft);color:var(--commerce-brand);font-size:22px}
.product-img img{width:100%;height:100%;object-fit:cover}
.product-copy{display:grid;gap:3px;align-content:start;min-width:0}
.product-copy h3{margin:0;min-height:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.4}
.product-copy p{margin:0;min-height:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.5;color:var(--commerce-muted)}
.product-price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin-top:3px;min-width:0}
.product-price-row .price{white-space:nowrap;color:var(--commerce-brand);font-size:17px;font-weight:800;letter-spacing:-.2px}
.product-price-row .price.b{color:var(--commerce-red)}
.product-price-row .product-stock,.product-price-row .sales-count{margin-top:0;font-size:11px;line-height:1.4}
.product-stock.is-low{color:#d91f45}
.product-stock.is-empty{color:#a3a7ad}
.product-action{display:flex;align-items:center;justify-content:flex-end}
/* 竞品行内小按钮：红色圆角（不再是通栏大按钮）。 */
.product .buy{flex:0 0 auto;white-space:nowrap;min-width:78px;height:34px;padding:0 14px;border-radius:17px;background:var(--commerce-red);color:#fff;font-size:13px;font-weight:700;letter-spacing:.5px}
.product .buy:disabled{background:#c8cdd3;color:#fff;cursor:not-allowed;opacity:1}
@media(max-width:390px){.product{grid-template-columns:28px 70px minmax(0,1fr) auto;gap:0 8px}.product-index{width:26px;height:26px;font-size:12px}.product-img{width:70px;height:70px;font-size:22px}.product .buy{min-width:72px;font-size:12px}}

/* 商品详情页图集：主图 + 缩略图排，多张参考图可点击切换；无图时退回 icon 首字符。 */
.checkout-head.has-gallery{grid-template-columns:minmax(120px,152px) minmax(0,1fr)}
.checkout-head.has-gallery .detail-visual{width:100%;height:auto;padding:0;background:transparent}
.detail-gallery{display:flex;flex-direction:column;gap:8px}
.detail-main{position:relative;width:100%;height:150px;border-radius:12px;overflow:hidden;background:linear-gradient(145deg,#f5efe4,#e7edf0)}
.detail-main img{display:block;width:100%;height:100%;object-fit:cover}
.detail-main-fallback{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;display:grid;place-items:center;color:var(--commerce-brand);font-size:38px;font-weight:700}
.detail-main-fallback[hidden]{display:none}
.detail-thumbs{display:flex;flex-wrap:wrap;gap:6px}
.detail-thumb{width:34px;min-width:34px;height:34px;padding:0;border:1px solid var(--commerce-line);border-radius:8px;background:var(--commerce-soft);overflow:hidden}
.detail-thumb.on{border-color:var(--commerce-brand);box-shadow:0 0 0 1px rgba(181,122,60,.25)}
.detail-thumb img{display:block;width:100%;height:100%;object-fit:cover}

/* 讲解卡底部附着的热卖小条（连成一体）：只要讲解卡在显示，小条就始终挂在它底部；
   异品时右侧另有独立热播卡（位置在讲解卡上方），同品时热播卡收起、只留这条小条。 */
.room.has-hot-strip{--live-lecture-height:222px}
.room.has-hot-strip #lectureCard.lecture-card{height:222px!important}
#lectureHotStrip{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;justify-content:center;gap:1px;height:46px;padding:6px 6px 5px;background:linear-gradient(100deg,#ff7a18 0,#ff4d1f 55%,#ff3d2e 100%);color:#fff;cursor:pointer;overflow:hidden;text-align:left}
#lectureHotStrip[hidden]{display:none}
.lecture-hot-row{display:flex;align-items:center;gap:2px;min-width:0;height:20px}
.lecture-hot-flame{flex:0 0 auto;display:grid;place-items:center;width:17px;height:17px;font-size:16px;line-height:1}
#lectureHotStrip strong{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900;letter-spacing:-.3px;line-height:20px}
.lecture-hot-view{flex:0 0 auto;padding:2px 6px;border-radius:9px;background:rgba(255,255,255,.26);color:#fff;font-size:9px;font-weight:700;line-height:12px;white-space:nowrap}
.lecture-hot-note{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(255,255,255,.8);font-size:9px;line-height:13px}

/* 横屏：讲解卡变矮（thumb 82 + copy 42 = 124），小条照样挂在底部，卡片高度按 142 + 46 = 188 增长。 */
@media(max-height:700px) and (orientation:landscape){
  .room.has-hot-strip #lectureCard.lecture-card{height:188px!important}
  .detail-main{height:104px}
}

/* 右上角模拟观众头像（#viewerAvatars，由 legacy.js renderViewerAvatars 按人数渲染）：
   0 人时压低透明度；窄屏 ≤390 顶栏空间紧张，响应式规则把整组藏了，这里只保留最多 2 张。 */
.viewer-avatars.is-empty img{opacity:.45}
#viewerAvatars{display:flex;overflow:hidden}
@media(max-width:390px){
  #viewerAvatars{display:flex!important}
  #viewerAvatars img:nth-child(n+3){display:none}
}

/* ===== 购买商品半屏面板（#purchaseSheet）：仿竞品七段结构 ===== */
.purchase-sheet .sheet-head h2{font-size:17px}
.purchase-body{flex:1 1 auto;min-height:0;overflow:auto;padding:12px 16px 16px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
/* ① 顶部地址块：白底圆角，右侧「修改/添加」红字，整块可点。 */
.purchase-address{display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--commerce-line);border-radius:14px;background:#fff;cursor:pointer}
.purchase-address-main{flex:1 1 auto;min-width:0}
.purchase-address-main strong{display:block;font-size:14px;font-weight:700}
.purchase-address-main span{display:-webkit-box;margin-top:3px;overflow:hidden;color:var(--commerce-muted);font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}
.purchase-address-main.is-empty strong{color:var(--commerce-red)}
.purchase-address-edit{flex:0 0 auto;min-height:36px;padding:0 13px;border:0;border-radius:18px;background:var(--commerce-red-soft);color:var(--commerce-red);font-size:12px;font-weight:700}
/* ② 商品卡：图 + 名称 + 规格名 + ¥价格 × 数量。 */
.purchase-product-card{display:flex;gap:11px;margin-top:12px;padding:13px;border-radius:14px;background:var(--commerce-soft)}
.purchase-product-image{display:grid;place-items:center;width:74px;height:74px;flex:0 0 74px;overflow:hidden;border-radius:10px;background:#fff;color:var(--commerce-brand);font-size:26px;font-weight:700}
.purchase-product-image img{width:100%;height:100%;object-fit:cover}
.purchase-product-copy{display:flex;min-width:0;flex:1 1 auto;flex-direction:column;justify-content:center}
.purchase-product-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.purchase-product-copy small{display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--commerce-muted);font-size:11px}
.purchase-product-price{margin-top:6px;color:var(--commerce-red);font-size:17px;font-weight:800;line-height:1.2}
.purchase-product-price em{margin:0 3px;font-size:12px;font-style:normal;font-weight:600}
.purchase-product-price span{font-size:13px}
/* ③④ 规格 pills 与购买数量步进器。 */
.purchase-section{padding:15px 0 2px}
.purchase-section h3{margin:0 0 10px;color:var(--commerce-ink);font-size:13px}
.purchase-specs{display:grid;gap:10px}
.product-spec-choice-group{display:grid;width:100%;gap:6px}
.product-spec-choice-group>strong{color:var(--commerce-muted);font-size:12px;font-weight:700}
.product-spec-choice-dependency{margin-top:-4px;color:var(--commerce-muted);font-size:11px;line-height:1.4}
.product-spec-choice-options{display:flex;flex-wrap:wrap;gap:8px}
.product-spec-choice-empty{color:var(--commerce-muted);font-size:12px}
.purchase-spec{max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;min-height:40px;padding:0 14px;border:0;border-radius:10px;background:var(--commerce-gray-soft);color:var(--commerce-gray-ink);font-size:12px;font-weight:600;white-space:nowrap}
.purchase-spec.on{background:var(--commerce-red-soft);color:var(--commerce-red)}
.purchase-spec:disabled{opacity:.45;text-decoration:line-through}
.purchase-qty{display:inline-flex;align-items:center;gap:3px;padding:3px;border-radius:11px;background:var(--commerce-gray-soft)}
.purchase-qty-btn{width:44px;height:44px;border:0;border-radius:9px;background:var(--commerce-gray-btn);color:#333c47;font-size:20px;font-weight:700;line-height:1}
.purchase-qty-btn:disabled{opacity:.4}
.purchase-qty strong{min-width:46px;text-align:center;font-size:15px;font-weight:700}
/* ⑤ 商品金额 + 服务端金额差异提示。 */
.purchase-amount-row{display:flex;align-items:baseline;justify-content:space-between;margin-top:16px;padding-top:13px;border-top:1px solid var(--commerce-line);color:var(--commerce-muted);font-size:13px}
.purchase-amount-row strong{color:var(--commerce-red);font-size:19px;font-weight:800}
.purchase-amount-note{margin-top:5px;color:var(--commerce-muted);font-size:11px;text-align:right;overflow-wrap:anywhere}
.purchase-amount-note .price-change{color:var(--commerce-red);font-weight:700}
/* ⑥ 支付方式（单选，唯一选项）。 */
.purchase-pay-item{display:flex;align-items:center;gap:10px;padding:12px 13px;border:1px solid var(--commerce-line);border-radius:12px;background:#fff}
.purchase-pay-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:#e9f9ef;color:#0e9b4d}
.purchase-pay-copy{flex:1 1 auto;min-width:0}
.purchase-pay-copy strong{display:block;font-size:14px}
.purchase-pay-copy small{display:block;margin-top:2px;color:var(--commerce-muted);font-size:11px}
.purchase-pay-radio{position:relative;flex:0 0 auto;width:22px;height:22px;border:2px solid #d5dae0;border-radius:50%}
.purchase-pay-radio.on{border-color:var(--commerce-red)}
.purchase-pay-radio.on::after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;inset:3px;border-radius:50%;background:var(--commerce-red)}
/* ⑦ sticky 底栏：总计 + 大红提交胶囊。 */
.purchase-footer{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px 11px;padding:11px 16px calc(11px + var(--commerce-safe-bottom));border-top:1px solid var(--commerce-line);background:rgba(255,255,255,.98)}
.purchase-footer-copy{color:#3d4653;font-size:13px}
.purchase-footer-copy strong{margin-left:2px;color:var(--commerce-red);font-size:19px;font-weight:800}
.purchase-submit{min-width:132px;min-height:44px;padding:0 22px;border:0;border-radius:22px;background:var(--commerce-red);color:#fff;font-size:15px;font-weight:800;letter-spacing:.5px}
.purchase-submit:disabled{opacity:.5}
/* 购买面板内的服务端确认行（复用 commerce-row 视觉）。 */
.purchase-body .commerce-row{padding:11px 0;border-bottom:0}
.purchase-body .commerce-row+.commerce-row{border-top:1px solid var(--commerce-line)}

/* ===== 地址选择半屏（#addressPickerSheet） ===== */
.address-picker-sheet .sheet{max-height:72vh;max-height:min(72vh,640px);max-height:min(72svh,640px)}
.address-picker-body{display:flex;flex:1 1 auto;min-height:0;flex-direction:column}
.address-picker-list{flex:1 1 auto;min-height:0;overflow:auto;padding-top:6px}
.address-picker-item{display:flex;align-items:center;gap:10px;width:100%;padding:13px;border:1px solid var(--commerce-line);border-radius:12px;background:#fff;text-align:left}
.address-picker-item+.address-picker-item{margin-top:9px}
.address-picker-item.on{border-color:var(--commerce-red);background:var(--commerce-red-paper)}
.address-picker-main{flex:1 1 auto;min-width:0}
.address-picker-main strong{display:block;font-size:14px}
.address-picker-main small{display:-webkit-box;margin-top:4px;color:var(--commerce-muted);font-size:11px;line-height:1.45;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}
.address-picker-item em{flex:0 0 auto;padding:2px 7px;border-radius:9px;background:var(--commerce-red-soft);color:var(--commerce-red);font-size:10px;font-style:normal;font-weight:700}
.address-picker-footer{flex:0 0 auto;padding:10px 16px 10px;padding:10px 16px calc(10px + var(--commerce-safe-bottom));border-top:1px solid var(--commerce-line);background:#fff}
.address-picker-add{width:100%;min-height:46px;border:1px dashed #e7c3c9;border-radius:23px;background:#fff;color:var(--commerce-red);font-size:14px;font-weight:700}

@media(max-width:390px){
  .purchase-body{padding:10px 12px 14px}
  .purchase-spec{min-height:44px;font-size:13px}
  .purchase-qty-btn{width:42px;height:42px}
  .purchase-submit{min-width:120px;padding:0 16px;font-size:14px}
  .purchase-address{padding:12px}
  }

/* 订单详情：物流轨迹（2026-09-27 logistics 轮，X5 兼容：纯 flex/div，无 has 选择器） */
.order-detail-logistics{margin:12px 0;padding:13px;border:1px solid #e6e6eb;border-radius:12px;background:#fff}
.order-logistics-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.order-logistics-head strong{display:flex;align-items:baseline;gap:8px;font-size:13px;color:#3b4652;overflow-wrap:anywhere}
.order-logistics-head small{color:var(--commerce-muted);font-size:12px;font-weight:400}
.order-logistics-state{flex:0 0 auto;padding:3px 9px;border-radius:11px;background:#f2eee7;color:#8a7f6d;font-size:11px;font-weight:700}
.order-logistics-state.shipping{background:#e8f3ff;color:#1f6fbf}
.order-logistics-state.signed{background:#e9fbf4;color:#0b9c62}
.order-logistics-state.exception{background:#fff0f1;color:#e34f59}
.order-logistics-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.order-logistics-timeline{margin-top:10px;padding-left:12px;border-left:2px solid #f0e9dd}
.order-logistics-timeline[hidden]{display:none}
.order-logistics-event{padding:7px 0;border-bottom:1px dashed #e8e8ed}
.order-logistics-event:last-child{border-bottom:0}
.order-logistics-event small{color:var(--commerce-muted);font-size:10px}
.order-logistics-event p{margin:3px 0 0;color:#3b4652;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.order-logistics-event em{display:block;margin-top:1px;color:var(--commerce-muted);font-size:10px;font-style:normal}
.order-logistics-packages{display:grid;gap:7px;margin-top:10px}
.order-logistics-package{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid #e6e6eb;border-radius:9px;background:#fff}
.order-logistics-package>span{min-width:0;color:#3b4652;font-size:11px;overflow-wrap:anywhere}
.order-logistics-package .order-logistics-state{font-style:normal}
.order-logistics-updated,.order-logistics-refresh-status{display:block;margin-top:7px;color:var(--commerce-muted);font-size:10px;line-height:1.5}
.order-logistics-refresh-status{color:#8a7f6d}
.order-logistics-actions .commerce-action:disabled{opacity:.58;cursor:not-allowed}
/* 从订单卡片直接查看物流时，将可视空间优先留给包裹和轨迹。 */
#commerceDetail.logistics-focus>.order-detail-address,
#commerceDetail.logistics-focus>.commerce-list,
#commerceDetail.logistics-focus>.order-detail-meta,
#commerceDetail.logistics-focus>.order-detail-total,
#commerceDetail.logistics-focus>.order-actions{display:none}
#commerceDetail.logistics-focus>.order-detail-logistics{min-height:56vh;margin:8px 0 0;padding:16px;border-color:#e2e4e8;border-radius:14px}
#commerceDetail.logistics-focus .order-logistics-head strong{font-size:15px}
#commerceDetail.logistics-focus .order-logistics-timeline{max-height:48vh;min-height:32vh;overflow:auto;padding:4px 0 4px 15px;-webkit-overflow-scrolling:touch}
#commerceDetail.logistics-focus .order-logistics-event{padding:10px 0}
#commerceDetail.logistics-focus .order-logistics-event p{font-size:13px;line-height:1.65}
#commerceDetail.logistics-focus .order-logistics-event small{font-size:11px}
/* Reference-inspired live controls: compact glass surfaces, clear hit targets, no fake payment actions. */
.room-more{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:rgba(18,18,20,.55);color:#fff;font-size:24px;line-height:1;cursor:pointer}
.official-live-badge{position:absolute;z-index:80;top:calc(env(safe-area-inset-top) + 66px);left:12px;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid rgba(255,255,255,.24);border-radius:4px;background:rgba(17,18,21,.66);color:#fff;font-size:12px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.5);backdrop-filter:blur(8px)}
.official-live-badge i{display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:#ed3549;color:#fff;font-size:10px;font-style:normal}
.live-quick-actions{position:absolute;z-index:85;top:calc(env(safe-area-inset-top,0px) + 112px);right:10px;display:flex;align-items:center;gap:8px}
.live-quick-actions button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;cursor:pointer;transition:transform .16s ease,opacity .16s ease}
.live-quick-actions button:active{transform:scale(.9);opacity:.72}
.live-quick-actions button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.service-contact-link:focus-visible{outline:2px solid #087d42;outline-offset:3px}
.service-contact-close:focus-visible{outline:2px solid #505862;outline-offset:2px}
.quick-action-icon{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:0;background:transparent;color:rgba(255,255,255,.96);filter:drop-shadow(0 2px 5px rgba(0,0,0,.55))}
.quick-action-icon svg{display:block;width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.live-quick-actions small{display:none}
.composer{gap:5px}

.live-product-shortcut{position:absolute;z-index:130;right:12px;bottom:calc(var(--live-composer-bottom,12px) - 4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;width:58px;height:52px;min-width:58px;min-height:52px;padding:2px;border:1px solid rgba(255,255,255,.24);border-radius:16px;background:rgba(18,20,27,.56);color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer;transition:transform .16s ease,background .16s ease}
.live-product-shortcut:active{transform:scale(.94);background:rgba(27,30,39,.78)}
.live-product-shortcut:focus-visible{outline:2px solid #fff;outline-offset:3px}
.live-product-shortcut .cart-icon{display:block;width:27px;height:27px;margin-inline:auto;object-fit:contain}.live-product-label{display:block;width:100%;color:rgba(255,255,255,.9);font-size:9px;line-height:11px;text-align:center;white-space:nowrap}
.live-product-shortcut[data-icon-fallback]::before{content:"🛒";display:block;font-size:24px;line-height:1}
@media(max-width:390px){.composer{left:8px;right:78px!important;gap:5px}.live-product-shortcut{right:8px}}
@media(max-height:700px) and (orientation:landscape){.composer{right:82px!important}.live-product-shortcut{bottom:calc(max(7px,env(safe-area-inset-bottom,0px)) - 4px)}}
.service-contact-backdrop{position:fixed;z-index:260;inset:0;display:grid;place-items:center;padding:20px;background:rgba(12,14,19,.58);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.service-contact-backdrop[hidden]{display:none}
.service-contact-modal{position:relative;width:min(352px,100%);padding:26px 22px 21px;border:1px solid rgba(255,255,255,.82);border-radius:26px;background:linear-gradient(180deg,#fff 0%,#fbfbfc 100%);color:#222830;box-shadow:0 24px 70px rgba(0,0,0,.3);text-align:center;animation:service-contact-in .2s ease-out}
@keyframes service-contact-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.service-contact-close{position:absolute;top:13px;right:13px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#f1f2f4;color:#5b626c;font-size:22px;line-height:1;cursor:pointer}
.service-contact-kicker{color:#818894;font-size:12px;font-weight:650;letter-spacing:.12em}
.service-contact-avatar{display:grid;place-items:center;width:76px;height:76px;margin:14px auto 11px;overflow:hidden;border:3px solid #fff;border-radius:25px;background:linear-gradient(145deg,#e4f7ed,#dcf0ff);color:#11824c;font-size:28px;font-weight:800;box-shadow:0 5px 18px rgba(30,68,48,.16)}
.service-contact-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.service-contact-avatar img[hidden]{display:none}
.service-contact-modal h2{margin:0;color:#20242b;font-size:20px;font-weight:750;line-height:1.35;overflow-wrap:anywhere}
.service-contact-subtitle{margin:5px 0 0;color:#8a9099;font-size:12px}
.service-contact-note{min-height:42px;margin:16px 0 17px;padding:12px 13px;border-radius:13px;background:#f6f7f8;color:#555e69;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left}
.service-contact-link{display:grid;place-items:center;min-height:48px;border-radius:15px;background:linear-gradient(135deg,#12c96b,#08aa58);color:#fff;font-size:15px;font-weight:750;text-decoration:none;box-shadow:0 7px 16px rgba(8,170,88,.22);transition:filter .15s ease,transform .15s ease}
.service-contact-link[hidden]{display:none}
.service-contact-link:active{transform:scale(.985);filter:brightness(.96)}
.service-contact-unavailable{margin:13px 0 0;color:#8a9099;font-size:12px;line-height:1.5}
@media(max-height:600px) and (orientation:landscape){.official-live-badge{top:calc(env(safe-area-inset-top) + 58px)}.live-quick-actions{top:calc(env(safe-area-inset-top,0px) + 82px);gap:7px}.live-quick-actions button{min-height:50px}}
/* 商品面板头部两个弱化按钮（老板要求美化）：‹ 返回按钮 + 订单收发图标。
   默认低饱和弱化，订单视图点亮成品牌色；按下有轻微底色反馈。 */
.cart-back,.cart-orders-icon{display:inline-flex;display:-webkit-inline-flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--commerce-muted);cursor:pointer;-webkit-transition:background .15s ease,color .15s ease;transition:background .15s ease,color .15s ease}
.cart-back:active,.cart-orders-icon:active{background:var(--commerce-soft)}
.cart-orders-icon.on{background:var(--commerce-soft);color:var(--commerce-brand-dark)}
.cart-back svg,.cart-orders-icon svg{pointer-events:none}

/* Viewer interaction chips sit above the composer and reserve the right action rail. */
.quick-comments{position:absolute;z-index:128;left:10px;right:76px;display:flex;align-items:center;gap:6px;min-height:36px;overflow-x:auto;overflow-y:hidden;padding:1px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.quick-comments::-webkit-scrollbar{display:none}
.quick-comments[hidden]{display:none}
.quick-comment-chip{flex:0 0 auto;max-width:min(42vw,156px);min-height:34px;padding:0 12px;overflow:hidden;border:1px solid rgba(255,255,255,.28);border-radius:18px;background:rgba(23,29,39,.78);color:#fff;font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 3px 12px rgba(0,0,0,.24);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer}
.quick-comment-chip:active{background:rgba(79,65,128,.92);transform:scale(.97)}
.quick-comment-chip:focus-visible{outline:2px solid #fff;outline-offset:2px}
.viewer-count{font-size:14px;font-weight:800;font-variant-numeric:tabular-nums}
@media(max-width:390px){.quick-comments{left:8px;right:72px;gap:5px}.quick-comment-chip{max-width:43vw;padding:0 10px;font-size:11px}.viewer-avatars{flex:0 0 auto;padding-left:8px}.viewer-avatars img{width:22px;height:22px;margin-left:-7px}.viewer-count{font-size:13px}}
@media(max-height:600px) and (orientation:landscape){.quick-comments{right:72px}}

/* Keep the conversation visually connected to the composer. Product cards use
   their own right-hand stack; they must not push comments and reply chips up. */
.room{--live-composer-height:44px;--live-quick-comments-height:36px;--live-comment-gap:8px}
.room .comments{max-height:min(170px,26svh)}
.room.has-lecture-card .comments{max-height:min(148px,23svh)}
@media(max-width:390px){
  .room .comments,.room.has-lecture-card .comments{max-height:min(140px,23svh)}
}
@media(max-height:700px) and (orientation:landscape){
  .room .comments,.room.has-lecture-card .comments{max-height:22vh}
}

/* The compact header badge opens neutral fan-club information; it does not claim membership. */
.fan-club-badge{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;margin-left:2px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:linear-gradient(145deg,#9a7df2,#6744c9);color:#fff;font-size:15px;box-shadow:0 3px 12px rgba(44,25,99,.38);cursor:pointer}
.fan-club-badge:active{transform:scale(.95)}
.fan-club-badge:focus-visible{outline:2px solid #fff;outline-offset:3px}
.fan-heart{background:#7955d9!important}
.fan-club-info-backdrop{position:fixed;z-index:270;inset:0;display:grid;place-items:center;padding:20px;background:rgba(12,14,19,.58);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.fan-club-info-backdrop[hidden]{display:none}
.fan-club-info-modal{position:relative;width:min(342px,100%);padding:27px 22px 23px;border:1px solid rgba(255,255,255,.86);border-radius:25px;background:linear-gradient(160deg,#fff,#f7f4ff);color:#262138;text-align:center;box-shadow:0 22px 62px rgba(0,0,0,.3)}
.fan-club-info-close{position:absolute;top:11px;right:11px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#eeebf6;color:#675d7b;font-size:23px;cursor:pointer}
.fan-club-info-diamond{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 12px;border-radius:19px;background:linear-gradient(145deg,#a78bfa,#6845ca);color:#fff;font-size:25px;box-shadow:0 8px 20px rgba(92,61,184,.28)}
.fan-club-info-kicker{margin:0 0 4px;color:#8b7cae;font-size:12px;font-weight:700;letter-spacing:.08em}
.fan-club-info-modal h2{margin:0;color:#302750;font-size:20px;overflow-wrap:anywhere}
.fan-club-info-note{margin:13px 0 0;padding:12px 13px;border-radius:13px;background:#f1edfa;color:#5f5871;font-size:13px;line-height:1.65;text-align:left}

/* Public room-configured order lookup links precede the internal order filters. */
.order-lookup-links{display:flex;flex:0 0 auto;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--commerce-line);background:#fff}
.order-lookup-links[hidden]{display:none}
.order-lookup-links>strong{flex:0 0 auto;color:var(--commerce-ink);font-size:12px}
.order-lookup-links-list{display:flex;min-width:0;flex-wrap:wrap;gap:8px}
.order-lookup-links-list a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid #e3d9f4;border-radius:18px;background:#f7f3ff;color:#6546ad;font-size:12px;font-weight:700;text-decoration:none}
.order-lookup-links-list a:focus-visible{outline:2px solid #7955d9;outline-offset:2px}
@media(max-width:360px){.order-lookup-links{align-items:flex-start;flex-direction:column;gap:7px}}

/* Larger product photos and an easy-to-tap logistics route in the order list. */
.order-mini{gap:11px}
.order-mini-image{width:68px;height:68px;flex-basis:68px;border-radius:10px}
.order-mini-copy strong{font-size:13px}
.order-card-logistics{flex-wrap:wrap;min-height:70px;gap:5px 8px;padding:10px 12px}
.order-card-logistics-carrier{font-size:13px}
.order-card-logistics-no{max-width:42%;font-size:13px}
.order-card-logistics .order-logistics-state{font-size:12px}
.order-card-logistics-go{flex:1 0 100%;min-height:29px;padding:5px 4px 0;text-align:right;color:#2165c7;font-size:14px;font-weight:750}
.order-pickup-code-panel{display:flex;align-items:center;gap:10px;margin-top:10px;padding:11px 12px;border:1px solid #e8e2f2;border-radius:11px;background:#f8f5fc;color:#65567e}
.order-pickup-code-panel[hidden]{display:none}
.order-pickup-code-panel strong{flex:1;color:#37264f;font-size:20px;letter-spacing:.08em}
.order-pickup-code-panel button{min-height:36px;padding:0 12px;border:1px solid #ddd4eb;border-radius:18px;background:#fff;color:#6546ad;font-weight:700}

.purchase-stock-hint{display:block;margin-top:5px;color:#777f8a;font-size:12px}
.purchase-stock-hint[hidden]{display:none}
.purchase-quantity-section{margin-top:4px}

/* Full-width live deal bar, with the product lecture tile stacked above it. */
#hotSaleCard.hot-sale-card{left:12px!important;right:12px!important;width:auto!important;height:64px!important;min-height:64px!important;bottom:var(--live-hot-bottom,70px)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:5px 6px 5px 9px!important;border:1px solid rgba(255,194,73,.9)!important;border-radius:14px!important;background:linear-gradient(105deg,#ff861d 0%,#ff6825 50%,#ff4931 100%)!important;box-shadow:0 8px 24px rgba(184,43,17,.34),inset 0 1px 0 rgba(255,255,255,.26)!important}
#hotSaleCard .hot-sale-copy{position:static!important;display:flex!important;flex:1 1 auto!important;align-items:center!important;gap:8px!important;width:auto!important;height:100%!important;min-width:0!important;margin:0!important;overflow:hidden!important}
#hotSaleCard .hot-sale-flame{display:grid!important;place-items:center!important;position:static!important;width:38px!important;height:48px!important;flex:0 0 38px!important;font-size:29px!important;line-height:1!important;filter:drop-shadow(0 3px 4px rgba(114,20,0,.28))!important}
#hotSaleCard .hot-sale-copy-text{display:flex!important;min-width:0!important;flex:1 1 auto!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;overflow:hidden!important}
#hotSaleCard .hot-sale-main{display:flex!important;margin:0!important;padding:0!important}
#hotSaleCard .hot-sale-title{display:flex!important;align-items:baseline!important;gap:3px!important;white-space:nowrap!important;line-height:1!important}
#hotSaleCard .hot-sale-word{font-size:15px!important;font-weight:850!important}
#hotSaleCard .hot-sale-times{font-size:15px!important;font-weight:850!important}
#hotSaleCard #hotSaleCount{min-width:0!important;font-size:22px!important;font-weight:900!important;line-height:24px!important;text-shadow:0 1px 2px rgba(128,32,0,.2)!important}
#hotSaleCard #hotSaleUnit{font-size:11px!important;line-height:14px!important}
#hotSaleCard .hot-sale-sub{display:block!important;align-self:flex-start!important;margin-top:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:rgba(255,255,255,.9)!important;font-size:10px!important;font-weight:700!important;line-height:13px!important}
#hotSaleCard .hot-sale-buy{position:static!important;transform:none!important;inset:auto!important;display:flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;gap:4px!important;width:112px!important;height:48px!important;margin:0!important;padding:0 10px!important;border:1px solid rgba(255,255,255,.76)!important;border-radius:25px!important;background:linear-gradient(180deg,#fff8e9 0%,#ffe5be 100%)!important;color:#db4626!important;font-size:14px!important;font-weight:900!important;line-height:1!important;box-shadow:0 2px 8px rgba(108,26,0,.22),inset 0 1px 0 #fff!important;text-align:center!important}
#hotSaleCard .hot-sale-buy i{font-size:21px!important;font-style:normal!important;line-height:16px!important}
#hotSaleCard .hot-sale-product{display:none!important}
.room.has-hot-sale .comments{bottom:calc(var(--live-hot-bottom) + var(--live-hot-height) + var(--live-stack-gap))!important}
.room.has-hot-sale.has-lecture-card .comments{width:min(51vw,188px)!important;max-height:min(145px,23vh)!important}
.live-profile-sheet{max-height:min(74svh,720px)!important}
.live-profile-form{display:grid;gap:16px;padding:16px 18px 20px}
.live-profile-form>.field{display:grid;gap:7px;margin:0;color:#383d45;font-size:13px;font-weight:700}
.live-profile-form .field input:not([type=file]){height:44px;padding:0 12px;border:1px solid #dfe3e8;border-radius:10px;background:#fff;color:#222;font:inherit;font-weight:500}
.live-profile-form .field small,.live-profile-privacy small{color:#7d8490;font-size:11px;font-weight:400;line-height:1.5}
.live-profile-avatar-row{display:flex;align-items:center;gap:12px}
.live-profile-avatar{display:grid;width:54px;height:54px;place-items:center;overflow:hidden;border-radius:50%;background:#eee8fa;color:#6849b2;font-size:18px;font-weight:800}
.live-profile-avatar img{width:100%;height:100%;object-fit:cover}
.live-profile-avatar-pick{display:inline-flex;min-height:40px;align-items:center;padding:0 14px;border:1px solid #e0e2e6;border-radius:20px;background:#f7f7f9;color:#373c44;font-size:12px;font-weight:700}
.live-profile-privacy{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #ece9f4;border-radius:12px;background:#faf9fc}
.live-profile-privacy input{width:18px;height:18px;margin:1px 0 0;accent-color:#7955d9}
.live-profile-privacy span{display:grid;gap:4px;color:#35313d}
.live-profile-form .notice{min-height:18px;margin:0;padding:0;border:0;background:transparent;color:#68717c;font-size:12px}
.live-profile-form .notice.success{color:#16824e}
.live-profile-form .notice.danger{color:#d0443b}
.live-profile-form>button{min-height:46px;border:0;border-radius:24px;background:#7955d9;color:#fff;font-size:14px;font-weight:800}
.live-profile-form>.live-profile-share{min-height:40px;border:1px solid #e1e4e8;border-radius:21px;background:#f7f7f9;color:#505864;font-size:13px;font-weight:700}
.comment-avatar{width:18px;height:18px;flex:0 0 18px;margin-right:4px;border-radius:50%;object-fit:cover;vertical-align:middle}
.video{touch-action:none;user-select:none;-webkit-user-select:none;overscroll-behavior:contain}
.video video{position:absolute;inset:0;pointer-events:none;transition:opacity .18s ease;touch-action:manipulation;-webkit-user-drag:none}
.video #playerStandby{opacity:0}
.live-like-floaters{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none}
.live-like-heart{position:absolute;bottom:18%;color:#ff526d;font-size:32px;line-height:1;text-shadow:0 2px 8px rgba(255,34,90,.45);animation:live-like-rise 1.05s ease-out forwards}
@keyframes live-like-rise{0%{opacity:0;transform:translate3d(0,10px,0) scale(.65)}18%{opacity:1}100%{opacity:0;transform:translate3d(var(--heart-drift,12px),-90px,0) scale(1.25)}}
.room{touch-action:manipulation;overscroll-behavior:none}
@media(max-width:390px){#hotSaleCard.hot-sale-card{left:8px!important;right:8px!important;padding-left:7px!important}#hotSaleCard .hot-sale-flame{width:32px!important;flex-basis:32px!important;font-size:26px!important}#hotSaleCard #hotSaleCount{font-size:20px!important}#hotSaleCard .hot-sale-buy{width:102px!important;height:46px!important;font-size:13px!important}}
@media(max-height:600px) and (orientation:landscape){.room.has-hot-sale #hotSaleCard.hot-sale-card{display:none!important}.room.has-hot-sale .comments{bottom:calc(max(8px,env(safe-area-inset-bottom)) + 54px)!important}}

/* 参考图热卖横条保留两侧留白，与讲解卡共用右边线；底部购物车不参与卡片定位。 */
.room{--live-commerce-inset:5%}
#hotSaleCard.hot-sale-card{left:var(--live-commerce-inset)!important;right:var(--live-commerce-inset)!important;height:56px!important;min-height:56px!important;gap:6px!important;padding:4px 6px 4px 8px!important;border-radius:10px!important}
#lectureCard.lecture-card{right:var(--live-commerce-inset)!important}
#hotSaleCard .hot-sale-flame{width:29px!important;height:40px!important;flex-basis:29px!important;font-size:26px!important}
#hotSaleCard .hot-sale-copy{gap:5px!important}
#hotSaleCard .hot-sale-buy{width:88px!important;height:38px!important;font-size:12px!important;border-radius:20px!important;padding:0 5px!important}
#hotSaleCard .hot-sale-buy i{display:none!important}
#hotSaleCard #hotSaleCount{font-size:21px!important;max-width:115px!important;overflow:hidden!important;text-overflow:ellipsis!important}
.order-filter .historical-orders-link{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border:1px solid #b7d8ff;border-radius:22px;background:#eaf4ff;color:#0069d9;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.order-filter .historical-orders-link[hidden]{display:none!important}
/* 原生文字保持完整像素字号，不缩放徽章；长名称限制徽章宽度，评论可自然换行。 */
.comment{font-size:11px!important;line-height:1.5;overflow-wrap:anywhere;text-shadow:none;backdrop-filter:none}
.comment .fan-badge{display:inline-flex;max-width:106px;align-items:center;vertical-align:middle;padding:1px 5px;margin-right:4px;border:1px solid rgba(255,255,255,.2);font-size:10px!important;line-height:15px;font-weight:700;text-shadow:none;box-shadow:none}
.comment .fan-badge-icon{flex:0 0 auto;font-size:10px;line-height:15px}
.comment .fan-badge-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.comment b{overflow-wrap:anywhere;margin-right:4px}

.room.has-lecture-card .comments,.room.has-hot-sale.has-lecture-card .comments{width:min(calc(100% - 178px),212px)!important}
/* 五个入口在常用手机宽度下尽量同排，较窄屏仍保留横向滚动。 */
.commerce-views .order-filter{gap:6px;padding-left:12px;padding-right:12px}
.commerce-views .order-filter button{flex:0 0 auto;padding-left:8px;padding-right:8px}

/* 直播快捷评论轻微交叠，减少底部横向占位；焦点/按下时提到最上层。 */
.quick-comments{gap:0}
.quick-comment-chip{position:relative;z-index:1}
.quick-comment-chip+.quick-comment-chip{margin-left:-9px}
.quick-comment-chip:active,.quick-comment-chip:focus-visible{z-index:3}

/* ===== 2026-10-04 观众端鉴权分流 + 素材/直开商品/售后追加层 ===== */
/* 鉴权三态的离线遮罩操作按钮：临时播放测试的「微信登录」与探测失败的「重试」都必须醒目可见。 */
.offline-auth-action{display:inline-block;min-height:42px;margin-top:14px;padding:0 22px;border:0;border-radius:21px;background:#07c160;color:#fff;font-size:14px;font-weight:700;letter-spacing:.02em;box-shadow:0 6px 18px rgba(7,193,96,.32);cursor:pointer}
.offline-auth-action:active{filter:brighter(.95)}
/* 热播/讲解位促销图标（hotState.promo_icon_url，可能是 GIF）：撑满火焰位，加载失败由 JS 回落 emoji。 */
.promo-icon-image{display:block;width:100%;height:100%;object-fit:contain}
/* ===== 顾客端售后（仅建单与展示，不自动退款） ===== */
.after-sale-sheet .sheet-head h2{font-size:17px}
.after-sale-body{flex:1 1 auto;min-height:0;overflow:auto;padding:14px 16px 16px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.after-sale-order{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin-bottom:14px;padding:12px 13px;border:1px solid var(--commerce-line);border-radius:12px;background:var(--commerce-soft)}
.after-sale-order span{color:var(--commerce-muted);font-size:12px;line-height:20px}
.after-sale-order strong{color:var(--commerce-ink);font-size:13px;font-weight:700;line-height:20px;overflow-wrap:anywhere}
.after-sale-types{display:flex;flex-wrap:wrap;gap:8px}
.after-sale-type{min-height:42px;padding:0 15px;border:1px solid var(--commerce-line);border-radius:12px;background:#fff;color:var(--commerce-gray-ink);font-size:13px;font-weight:600;cursor:pointer}
.after-sale-type.on{border-color:var(--commerce-red);background:var(--commerce-red-soft);color:var(--commerce-red)}
.after-sale-files-input{width:100%;min-height:44px;padding:9px 10px;border:1px dashed #d5dae0;border-radius:10px;background:#fff;color:var(--commerce-gray-ink);font-size:12px}
.after-sale-files{display:grid;gap:5px;margin-top:8px}
.after-sale-file{color:var(--commerce-muted);font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.after-sale-file.is-over{color:#c98a1e}
.after-sale-note{margin:14px 0 0;padding:10px 12px;border-radius:11px;background:#fff8e6;color:#8a6d1f;font-size:12px;line-height:1.6}
.after-sale-foot{flex:0 0 auto;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--commerce-line);background:rgba(255,255,255,.98)}
.after-sale-foot .primary{width:100%;min-height:46px;border:0;border-radius:23px;background:var(--commerce-red);color:#fff;font-size:15px;font-weight:800;cursor:pointer}
.after-sale-foot .primary:disabled{opacity:.55;cursor:not-allowed}
/* 订单详情内的售后区 */
.order-after-sale{margin:12px 0 0;padding:13px 14px;border:1px solid #e6e6eb;border-radius:14px;background:#fff}
.order-after-sale[hidden]{display:none}
.order-after-sale-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}
.order-after-sale-head strong{color:var(--commerce-ink);font-size:14px;font-weight:750}
.order-after-sale-hint{color:var(--commerce-muted);font-size:11px;text-align:right}
.order-after-sale-tickets{display:grid;gap:9px;margin-bottom:11px}
.after-sale-ticket{padding:11px 12px;border:1px solid var(--commerce-line);border-radius:12px;background:var(--commerce-soft)}
.after-sale-ticket-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.after-sale-ticket-head strong{color:var(--commerce-ink);font-size:13px}
.after-sale-ticket-status{flex:0 0 auto;padding:2px 9px;border-radius:11px;background:#eef0f3;color:#5d6672;font-size:11px;font-weight:700}
.after-sale-ticket-status.is-pending{background:#fff4e0;color:#a96a12}
.after-sale-ticket-status.is-processing{background:#e8f1ff;color:#1f6fbf}
.after-sale-ticket-status.is-completed{background:#e9fbf4;color:#0b9c62}
.after-sale-ticket-status.is-rejected{background:#fff0f1;color:#d34a54}
.after-sale-ticket-status.is-cancelled{background:#f2f3f5;color:#8a9099}
.after-sale-ticket-head-side{display:flex;align-items:center}
.after-sale-ticket-withdraw{margin-left:10px;padding:2px 0;border:0;background:none;color:#a96a12;font-size:12px;font-weight:600;cursor:pointer}
.after-sale-ticket-withdraw:active{color:#c2841f}
.after-sale-ticket-reason{margin:7px 0 0;color:#3b4652;font-size:12px;line-height:1.6;overflow-wrap:anywhere;white-space:pre-wrap}
.after-sale-ticket-images{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.after-sale-ticket-images img{width:56px;height:56px;object-fit:cover;border:1px solid var(--commerce-line);border-radius:8px;background:#fff}
.after-sale-ticket small{display:block;margin-top:7px;color:var(--commerce-muted);font-size:10px}
.after-sale-empty{margin:0;color:var(--commerce-muted);font-size:12px}
.order-after-sale #detailAfterSale:disabled{opacity:.55;cursor:not-allowed}
