:root{--shop-mobile-bar:72px}
html{scroll-padding-top:16px}
body{overflow-x:hidden}
.shop-services{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}
.shop-services button,.shop-services a{display:grid;gap:3px;min-width:0;padding:15px 18px;border:4px outset #f6e8a8;background:linear-gradient(135deg,#ffe866,#e7b307);color:#052f68;text-align:left;text-decoration:none;cursor:pointer;box-shadow:5px 6px 0 #031831;font-family:Arial,sans-serif}
.shop-services span{font-size:9px;font-weight:900;letter-spacing:.18em}.shop-services strong{font:24px/1 Impact,"Arial Black",sans-serif;letter-spacing:.04em}.shop-services small{color:#173d67;font-size:11px}
.shop-services>*:nth-child(2){background:linear-gradient(135deg,#f5f1df,#cfc4a5)}.shop-services>*:last-child{background:linear-gradient(135deg,#0c68bf,#033773);color:#fff;border-color:#65abec}.shop-services>*:last-child small{color:#cae5ff}
.weekly-mobile-tabs{display:none}

.catalogue-tools{position:sticky;top:0;z-index:15;display:grid;grid-template-columns:repeat(3,minmax(110px,1fr)) minmax(150px,1fr) auto;gap:8px;align-items:end;margin:0 0 18px;padding:10px;border:3px outset #ede2c4;background:#cbbd99;color:#17120c;font:11px Arial,sans-serif;box-shadow:0 6px 14px rgba(0,0,0,.55)}
.catalogue-tools label{display:grid;gap:4px;font-weight:800}.catalogue-tools select{min-width:0;padding:8px;border:2px inset #fff;background:#fffceb;color:#111}.catalogue-tools .available-check{display:flex;align-items:center;gap:7px;min-height:35px;padding:8px;background:#eee4c8;border:1px solid #887c61}.catalogue-tools #surprise-tape{min-height:35px;padding:8px 12px;border:3px outset #3b84ca;background:#0755a5;color:#fff;font-weight:900;cursor:pointer}

/* Yellow rental shells stay branded, while each inner insert has its own abstract identity. */
.cover-art{isolation:isolate;background:linear-gradient(145deg,hsl(var(--art-hue) 74% 52%),hsl(calc(var(--art-hue) + 48) 65% 18%))}
.cover-art:before{display:block;z-index:-1;width:155%;height:52%;left:-25%;top:38%;border:0;background:repeating-linear-gradient(var(--art-angle),rgba(255,255,255,.28) 0 7px,transparent 7px 19px);transform:rotate(-8deg)}
.cover-art:after{display:block;z-index:-1;inset:0;background:radial-gradient(circle at 72% 27%,rgba(255,255,255,.55) 0 3%,transparent 4%),radial-gradient(circle at 30% 75%,rgba(0,0,0,.45) 0 20%,transparent 21%)}
.case-brand{align-self:start;padding:3px 4px;background:rgba(255,224,47,.92);border:2px solid #fff;transform:skew(-5deg) scale(.7);transform-origin:top left;text-shadow:none}.case-film-mark{position:absolute;right:8px;bottom:5px;z-index:2;color:rgba(255,255,255,.84);font:78px/.8 Impact,"Arial Black",sans-serif;text-shadow:3px 3px 0 rgba(0,0,0,.45)}
.case-reels{position:absolute;left:9px;bottom:10px;width:68px;margin:0;padding:4px}.case-reels i{width:22px;height:22px;border-width:4px}.case-reels:after{display:none}
.detail-pairings{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px;padding-top:11px;border-top:1px dashed #736a58}.detail-pairings b{flex:1 0 100%;font-size:10px}.detail-pairings button,.tape-vote button{padding:7px 9px;border:2px outset #fff;background:#d6c9aa;color:#111;font-weight:800;cursor:pointer}.tape-vote{display:flex;gap:6px;align-items:center;margin:10px 0;font-size:10px;font-weight:900}.tape-vote button.active{background:#0755a5;color:#fff}

.counter-mobile-close,.mobile-counter-bar{display:none}
.request-wall{margin:28px 0;padding:24px;border:7px solid #07336d;background:linear-gradient(135deg,#ffe970,#e6ad00);color:#062e64;box-shadow:0 15px 35px #000}
.request-wall header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px;border-bottom:3px solid #0755a5}.request-wall header p{font:900 10px Arial,sans-serif;letter-spacing:.16em}.request-wall h2{margin:0 0 8px;font:clamp(30px,5vw,56px)/1 Impact,"Arial Black",sans-serif}.request-wall-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.request-wall article{padding:15px;border:3px outset #fff;background:#fff9d2;box-shadow:4px 5px 0 #725400;transform:rotate(-.5deg)}.request-wall article:nth-child(even){transform:rotate(.6deg)}.request-wall article>span{color:#b3161c;font:bold 9px Arial,sans-serif;letter-spacing:.16em}.request-wall h3{margin:5px 0 8px;font:23px/1 Impact,"Arial Black",sans-serif;text-transform:uppercase}.request-wall article p{font:12px/1.4 Georgia,serif}.request-wall article small{font:bold 10px Arial,sans-serif}

.service-dialog{width:min(900px,calc(100% - 22px));max-height:calc(100dvh - 22px);padding:0;border:6px outset #eee1bc;background:#cfc2a0;color:#17120c;box-shadow:0 0 0 100vmax rgba(0,0,0,.82);font-family:Arial,sans-serif}
.service-dialog>header{padding:22px 60px 18px 22px;color:#fff;background:linear-gradient(135deg,#086ac1,#032c63);border-bottom:5px solid #ffda31}.service-dialog>header p{margin:0 0 4px;color:#ffdf45;font-size:10px;font-weight:900;letter-spacing:.2em}.service-dialog>header h2{margin:0;font:clamp(30px,5vw,52px)/1 Impact,"Arial Black",sans-serif}.service-dialog>header span{display:block;margin-top:7px;font-size:12px}.recommender-dialog form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px}.recommender-dialog fieldset{display:flex;gap:12px;margin:0;padding:13px;border:2px inset #fff;background:#eee5cd}.recommender-dialog legend{font-weight:900}.recommender-dialog form>label{display:grid;gap:6px;font-weight:900}.recommender-dialog select{padding:11px;background:#fffdf1;color:#111;border:2px inset #fff}.recommender-dialog form>button{grid-column:1/-1;padding:13px;border:3px outset #4c91d3;background:#0755a5;color:#fff;font-weight:900;cursor:pointer}.clerk-results{padding:22px}.clerk-results>header p{margin:0;color:#0755a5;font-weight:900;letter-spacing:.16em}.clerk-results h3{margin:4px 0 15px;font:34px/1 Impact,sans-serif}.clerk-results>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.clerk-results article{padding:16px;border:3px outset #fff;background:#fff6cf}.clerk-results article>span{font-size:9px;font-weight:900;color:#a5151a}.clerk-results h4{margin:4px 0;font:25px/1 Impact,sans-serif;text-transform:uppercase}.clerk-results article p{min-height:67px;font-size:12px;line-height:1.4}.clerk-results article small{display:block;min-height:30px;color:#555}.clerk-results button{margin:9px 5px 0 0;padding:8px;border:2px outset #fff;background:#0755a5;color:#fff;font-weight:800;cursor:pointer}.clerk-results article button+button{background:#d5c8aa;color:#111}.clerk-results>#clerk-again{background:#222}

.membership-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:16px}.membership-stats article{display:grid;place-items:center;min-height:95px;padding:10px;border:3px inset #fff;background:#eee6d0;text-align:center}.membership-stats b{font:34px Impact,sans-serif;color:#0755a5}.membership-stats span{font-size:9px;font-weight:900}.membership-dialog>section{padding:0 16px 15px}.membership-dialog h3{margin:0 0 8px;padding-bottom:5px;border-bottom:2px solid #716850;font-size:13px}.member-rental{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:7px 0;padding:10px;background:#fff9df;border:2px inset #fff}.member-rental div{display:grid;gap:3px}.member-rental span,#return-history span{font-size:10px;color:#665e4c}.member-rental button,.membership-print{padding:9px;border:3px outset #fff;background:#0755a5;color:#fff;font-weight:900;cursor:pointer}.member-rental button:disabled{background:#777}.membership-empty{padding:11px;background:#e4d9ba;color:#6a614f}.membership-dialog #return-history p{display:flex;justify-content:space-between;gap:12px;margin:5px 0;padding:7px;background:#e7dcc0}.membership-print{margin:0 16px 18px}
.mystery-decisions{position:relative;z-index:3;display:flex;justify-content:center;flex-wrap:wrap;gap:7px;padding:12px;border:1px solid #800;background:rgba(20,0,0,.9)}.mystery-decisions[hidden]{display:none}.mystery-decisions p{flex:1 0 100%;margin:0;color:#f55;text-align:center;font:bold 11px monospace}.mystery-decisions button{margin:0;color:#fff}.receipt-anomaly{padding:7px;border:1px solid #111;font-weight:bold;text-align:center}

@media(max-width:1050px){.request-wall-grid{grid-template-columns:repeat(2,1fr)}.catalogue-tools{grid-template-columns:repeat(3,1fr)}.catalogue-tools .available-check,.catalogue-tools #surprise-tape{grid-column:auto}}
@media(max-width:980px){
  body{padding-bottom:var(--shop-mobile-bar)}
  .counter{position:fixed;z-index:1200;left:8px;right:8px;bottom:calc(var(--shop-mobile-bar) + 6px);top:auto;max-height:calc(100dvh - var(--shop-mobile-bar) - 22px);overflow:auto;visibility:hidden;opacity:0;transform:translateY(22px);pointer-events:none;transition:opacity .18s,transform .18s,visibility .18s}
  .counter.mobile-open{visibility:visible;opacity:1;transform:none;pointer-events:auto}.counter-mobile-close{display:grid;place-items:center;position:absolute;right:8px;top:8px;z-index:2;width:35px;height:35px;border:3px outset #fff;background:#d7d0bd;color:#111;font:bold 23px Arial;cursor:pointer}
  .mobile-counter-bar{display:block;position:fixed;z-index:1190;left:0;right:0;bottom:0;padding:7px max(8px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#030c19;border-top:3px solid #ffdd34;box-shadow:0 -6px 18px #000}
  .mobile-counter-bar button{display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;min-height:52px;padding:7px 12px;border:3px outset #4f9add;background:#0755a5;color:#fff;text-align:left}.mobile-counter-bar span{font:bold 12px Arial}.mobile-counter-bar span b{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:4px;border-radius:50%;background:#ffdb2f;color:#052b5d}.mobile-counter-bar strong{font:22px Impact,Arial}.mobile-counter-bar em{grid-column:1/-1;color:#ffe45d;font:bold 9px Arial;letter-spacing:.13em}
  body.counter-drawer-open:after{content:"";position:fixed;z-index:1180;inset:0;background:rgba(0,0,0,.68)}
}
@media(max-width:820px){
  .shop-services{grid-template-columns:1fr}.shop-services button,.shop-services a{min-height:82px}
  .weekly-mobile-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:8px 10px;background:#05070b}.weekly-mobile-tabs button{padding:10px 4px;border:2px outset #444;background:#222;color:#fff;font-weight:900}.weekly-mobile-tabs button.active{background:#ffdc35;color:#062e64;border-color:#fff}
  .weekly-arcade-grid [data-weekly-section]{display:none}.weekly-arcade-grid [data-weekly-section].mobile-panel-active{display:grid}.weekly-arcade-grid .arcade-scoreboard.mobile-panel-active{display:block}
  .catalogue-tools{position:sticky;top:0;grid-template-columns:1fr 1fr;padding:8px}.catalogue-tools label:nth-child(3){display:none}
  .request-wall header{display:block}.clerk-results>div{grid-template-columns:1fr}.clerk-results article p{min-height:0}.membership-stats{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .shop-services{gap:8px;margin:16px 0}.shop-services button,.shop-services a{padding:12px 14px}.shop-services strong{font-size:21px}
  .catalogue-tools{margin-inline:-10px}.catalogue-tools label{font-size:9px}.catalogue-tools select{padding:7px 4px}.catalogue-tools .available-check{font-size:9px}.catalogue-tools #surprise-tape{font-size:10px}
  .case-film-mark{font-size:58px}.request-wall{padding:15px;margin-inline:-2px}.request-wall-grid{grid-template-columns:1fr}.request-wall article:nth-child(n){transform:none}
  .recommender-dialog form{grid-template-columns:1fr;padding:14px}.recommender-dialog form>button{grid-column:auto}.recommender-dialog fieldset{flex-wrap:wrap}.service-dialog>header{padding:18px 50px 15px 15px}
  .membership-stats{padding:10px}.membership-stats b{font-size:27px}.member-rental{align-items:stretch;flex-direction:column}.membership-dialog #return-history p{flex-direction:column}
  .tape-dialog,.receipt-dialog,.tracking-dialog,.service-dialog{max-width:100%;width:calc(100% - 10px);max-height:calc(100dvh - 10px);margin:auto}.detail-copy{max-height:60dvh;overflow:auto}
}
@media(prefers-reduced-motion:reduce){.counter,.vhs-tape,.request-wall article{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.membership-dialog[open]{display:block!important;position:static!important;width:100%!important;max-width:none!important;border:0!important;box-shadow:none!important}.membership-dialog[open]>*{display:none!important}.membership-dialog[open]>header,.membership-dialog[open]>.membership-stats{display:grid!important;color:#000!important;background:#fff!important}}
.request-wall article p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}

/* v6.43.1 fitting audit: every content box stays inside the viewport at zoom. */
.tape-dialog{
  width:min(960px,calc(100vw - 24px));
  max-width:calc(100vw - 24px);
  max-height:calc(100dvh - 24px);
  overflow:auto;
}
#tape-dialog-content,.tape-detail,.detail-sleeve,.detail-copy,.detail-facts,.detail-facts span{min-width:0;max-width:100%}
.tape-detail{width:100%;grid-template-columns:minmax(190px,30%) minmax(0,1fr)}
.detail-sleeve{overflow:hidden}
.detail-sleeve strong,.detail-copy h2,.cover-copy strong,.featured-title,.pick-copy h3,.clerk-results h4,.request-wall h3,.member-rental b,#return-history b{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}
.detail-sleeve strong{font-size:clamp(22px,3vw,34px);line-height:.94}
.detail-sleeve strong.title-fit-sm{font-size:clamp(20px,2.55vw,29px)}
.detail-sleeve strong.title-fit-xs{font-size:clamp(17px,2.15vw,25px);letter-spacing:-.02em}
.detail-copy h2{font-size:clamp(25px,3.2vw,34px);line-height:1}
.detail-copy h2.title-fit-sm{font-size:clamp(23px,2.8vw,30px)}
.detail-copy h2.title-fit-xs{font-size:clamp(21px,2.5vw,28px)}
.detail-copy>p,.detail-clerk,.edition-note,.detail-pairings,.tape-vote{white-space:normal;overflow-wrap:anywhere}
.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.detail-facts span{overflow-wrap:anywhere}
.detail-clerk{transform:none}
.detail-pairings button,.tape-vote button,.rent-button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.cover-copy strong.title-fit-sm{font-size:16px}.cover-copy strong.title-fit-xs{font-size:14px;line-height:1.05}
.featured-title.title-fit-sm{font-size:13px}.featured-title.title-fit-xs{font-size:11px;line-height:1.05}
.pick-copy h3.title-fit-sm{font-size:clamp(20px,2.1vw,29px)}.pick-copy h3.title-fit-xs{font-size:clamp(18px,1.8vw,25px)}
.clerk-results h4.title-fit-sm,.request-wall h3.title-fit-sm{font-size:21px}.clerk-results h4.title-fit-xs,.request-wall h3.title-fit-xs{font-size:18px;line-height:1.05}
.receipt-items span{min-width:0;overflow-wrap:anywhere}
.shop-services strong,.shelf-heading h2,.request-section h2,.weekly-marquee h2,.cabinet-topper h3{overflow-wrap:anywhere}
.shop-footer{flex-wrap:wrap}
.request-wall article p{display:block;overflow:visible;-webkit-line-clamp:unset}
.quiz-review span,.arcade-scoreboard li span{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
.quiz-review p{grid-template-columns:minmax(70px,100px) minmax(0,1fr)}
.counter li,.counter li button,.member-line,.request-form label,.clerk-results article small{overflow-wrap:anywhere}

@media(max-width:800px){
  .tape-detail{display:block;min-width:0}
  .detail-sleeve{min-height:180px;border-right:0;border-bottom:8px solid #0755a5}
  .detail-copy{padding:20px 16px;max-height:none;overflow:visible}
  .detail-sleeve strong{font-size:clamp(23px,8vw,38px)}
  .detail-sleeve strong.title-fit-sm{font-size:clamp(21px,7vw,33px)}
  .detail-sleeve strong.title-fit-xs{font-size:clamp(19px,6vw,29px)}
}
@media(max-width:430px){
  .detail-facts{grid-template-columns:1fr}
  .tape-vote{align-items:stretch;flex-wrap:wrap}.tape-vote span{flex:1 0 100%}.tape-vote button{flex:1}
  .detail-pairings{display:grid;grid-template-columns:1fr}.detail-pairings b{grid-column:1}
  .rent-button{width:100%}
  .cover-copy strong.title-fit-sm{font-size:13px}.cover-copy strong.title-fit-xs{font-size:12px}
  .quiz-review p{grid-template-columns:1fr}.arcade-scoreboard li{grid-template-columns:24px minmax(0,1fr) 34px 45px}
}
