/* Customer-only polish. Staff tools and all session/access checks stay separate. */
[hidden]{display:none!important}
.sf-test-badge{flex:none;border:1px solid #d9d0c5;border-radius:20px;color:#625442;background:#f8f5ef;padding:5px 9px;font-size:10px;white-space:nowrap}
.viewer-live-pill{position:fixed;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));z-index:60;border:1px solid #f3ded9;border-radius:999px;background:#292220;color:#fff;padding:12px 17px;box-shadow:0 4px 20px #0003;font:700 12px/1.2 system-ui;cursor:pointer;touch-action:manipulation}
.viewer-live-pill span{color:#ff7468;margin-right:6px}
.viewer-live-pill:focus-visible,.viewer-sound-hint:focus-visible{outline:3px solid #c7ab78;outline-offset:3px}
body.session-idle .viewer-live-pill{display:none!important}
.viewer-sound-hint{position:absolute;top:26%;left:50%;transform:translateX(-50%);z-index:13;max-width:calc(100% - 24px);width:max-content;border:1px solid #ffffff70;border-radius:999px;background:#201b19ed;color:#fff;padding:14px 20px;font:600 14px/1.3 var(--font-sans);box-shadow:0 4px 20px #0003;cursor:pointer;touch-action:manipulation}
#floatingVideoMount .viewer-sound-hint{display:none}
/* Desktop already has a dedicated chat column, so the video chat overlay waits for its toggle. Public spotlights stay visible. */
body:not(.mobile-live) #floatingChatOverlayCol:not(.desktop-chat-on) :is(#videoFloatingChatList,#videoPinnedChat){display:none}
body:not(.mobile-live) #floatingChatOverlayCol.hidden-overlay{opacity:1;pointer-events:auto}
.qsc-var-btn:disabled{opacity:1;color:#625954;background:#f5f2ee;border-color:#d2c9c0;cursor:not-allowed}
.qsc-var-btn:disabled>span:first-child{text-decoration:line-through}
.vp-status[data-stock="sold-out"] .vp-dot-green{background:#b56354;box-shadow:none}
.vp-status[data-stock="unknown"] .vp-dot-green{background:#a6a09a;box-shadow:none}
@media(max-width:760px){
 .storefront-header{gap:8px;flex-wrap:wrap;height:auto;min-height:58px;padding:10px 12px}
 .sf-left{gap:8px;min-width:0}.sf-right{gap:8px;min-width:0;margin-left:auto}
 .sf-brand-main{font-size:22px}.sf-brand-sub{font-size:6px}
 .sf-right>span,.sf-right>.sf-icon-btn:not([data-viewer-bag]){display:none}
 .sf-test-badge{font-size:9px;padding:4px 6px}
 body.viewer-qa .sf-center-mode-bar{order:3;width:100%;min-width:0;justify-content:center;border-radius:8px;flex-wrap:wrap}
 body.viewer-qa .sf-mode-btn{font-size:10px;padding:7px 8px;white-space:normal}
 body.viewer-qa .sf-bo-link{font-size:10px;padding:4px}
}
