/* Lowball's general-store counter. Layout is independent of item/price logic. */
body{padding-top:30px}.wrap{gap:18px 38px}.sub{font-size:14px}.mode-toggle{box-shadow:3px 3px #17263a}.mode-btn{font-size:12px}.progress-dots{justify-content:flex-start;padding:2px 0;gap:7px}.dot{border-radius:50%;width:9px;height:9px}.dot.current{animation:none;background:#ee6557}.stat-strip .stat{border-width:1px;box-shadow:2px 2px #17263a}.stat-strip .stat+.stat{border-left:0}.tagline{border:0;border-top:2px solid #17263a;box-shadow:none;background:none;padding:16px 0;color:#526273}
.card{max-width:760px;border:0;border-image:none;box-shadow:none;background:none;padding:0;min-height:0;overflow:visible}.card:before,.card:after{display:none}
#playArea{padding:0;border:2px solid #17263a;background:#d5e7de;box-shadow:5px 6px #17263a;overflow:hidden;background-image:radial-gradient(#17263a0d .7px,transparent .8px);background-size:6px 6px}
.counter-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 22px;font:700 9px/1.5 var(--label-font);letter-spacing:.8px;color:#39574e}.counter-topline>span:first-child{display:flex;align-items:center;gap:7px}.counter-topline>span:last-child{white-space:nowrap}.counter-topline i,.till-topline i{display:inline-block;width:6px;height:6px;background:#3a7850;border:1px solid #17263a}
.product-display{position:relative;height:225px;display:grid;place-items:center;padding-bottom:22px;isolation:isolate}.product-display:before{content:'';position:absolute;z-index:-1;width:204px;height:204px;background:#e8f0dc;border:1px solid #b9cdb9;border-radius:50%;bottom:22px}.product-display:after{content:'';position:absolute;bottom:17px;left:50%;width:145px;height:12px;background:#17263a20;border-radius:50%;transform:translateX(-50%);z-index:-1}.product-display .item-emoji{margin:0;min-height:0;transform:translateY(5px)}.product-display #itemEmoji img{width:192px!important;height:192px!important;filter:drop-shadow(2px 4px 0 #17263a15)}
.counter-shelf{position:absolute;bottom:0;left:0;right:0;height:20px;border-top:2px solid #17263a;border-bottom:2px solid #17263a;background:#c6ad86;box-shadow:inset 0 4px #e4d2ae}.counter-shelf:before{content:'';display:block;position:absolute;left:0;right:0;top:7px;height:1px;background:#a78d69}
.shelf-price-tag{position:absolute;right:34px;top:36px;transform:rotate(7deg);padding:12px 13px 9px;background:#f9e2a7;border:1.5px solid #17263a;box-shadow:3px 3px #8da69a;text-align:center;min-width:82px}.shelf-price-tag:before{content:'';position:absolute;width:5px;height:5px;left:calc(50% - 3px);top:4px;background:#d5e7de;border:1px solid #17263a;border-radius:50%}.shelf-price-tag span{display:block;font:700 8px var(--label-font);letter-spacing:1px}.shelf-price-tag b{display:block;margin-top:4px;font:800 25px var(--score-font);letter-spacing:-1px}
.product-label{position:relative;background:#fffdf5;text-align:left;padding:18px 25px 19px;border-bottom:2px solid #17263a}.product-label:after{content:'';position:absolute;right:25px;top:22px;width:33px;height:25px;opacity:.5;background:repeating-linear-gradient(90deg,#17263a 0 1px,transparent 1px 3px,#17263a 3px 5px,transparent 5px 7px)}.product-label-kicker{font:700 8px var(--label-font);letter-spacing:1.5px;color:#526273}.product-label .item-name{font-size:clamp(23px,2.5vw,30px);line-height:1.2;margin:6px 45px 5px 0;letter-spacing:-.7px}.product-label .item-detail{margin:0;font:13px/1.5 var(--score-font);color:#526273;opacity:1}
.price-till{background:#9bb9c3;padding:19px 24px 0;text-align:left}.till-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font:700 9px var(--label-font);letter-spacing:1px}.till-topline>span{font-size:8px;display:flex;align-items:center;gap:5px}.till-topline i{background:#d5ef8c}
.till-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:stretch}.till-entry .guess-row{display:flex;width:100%;max-width:none;margin:0;background:#203b37;border:2px solid #17263a;box-shadow:inset 0 3px #142e2a;gap:0;padding:8px 14px;align-items:center}.till-entry .currency-chip{background:none;box-shadow:none;border:0;padding:0 8px 0 0;font:600 21px var(--label-font);color:#a9cdb5;min-width:0}.till-entry input{min-width:0;max-width:none;flex:1;width:100%;height:40px;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;text-align:right;font:750 32px/1 var(--score-font);font-variant-numeric:tabular-nums;color:#ecf6ca;letter-spacing:-1px}.till-entry input::placeholder{color:#95b39e;opacity:.8}.till-entry .btn-gold{margin:0;min-width:151px;min-height:60px;box-shadow:3px 3px #17263a;font:800 11px var(--label-font);padding:12px 16px;background:#c7e66d;display:flex;align-items:center;justify-content:space-between;gap:20px}.till-entry .btn-gold span{font-size:21px}.till-hint{display:flex;justify-content:space-between;gap:10px;font:11px/1.5 var(--score-font);color:#253f49;margin:12px 0 17px}.till-hint span{font-size:10px}.till-drawer{height:21px;border-top:2px solid #17263a;background:#7d9ba7;display:flex;justify-content:center;align-items:center;margin:0 -24px}.till-drawer span{width:64px;height:5px;border:1px solid #17263a;background:#c6d5d6;box-shadow:0 1px #17263a}
/* Printed results have a shop heading, stamped verdict and perforated tear edge. */
.card:has(.result.show),.card:has(.final-screen.show){padding:25px 24px 28px;border:2px solid #17263a;background:#c5d9d0;background-image:radial-gradient(#17263a12 .7px,transparent .8px);background-size:6px 6px;box-shadow:5px 6px #17263a}
.result.show,.final-screen.show{border:0;padding:27px 26px 38px;max-width:540px;margin:auto;box-shadow:3px 5px #17263a26;background:#fffdf5;clip-path:polygon(0 0,100% 0,100% 98%,98% 100%,96% 98%,94% 100%,92% 98%,90% 100%,88% 98%,86% 100%,84% 98%,82% 100%,80% 98%,78% 100%,76% 98%,74% 100%,72% 98%,70% 100%,68% 98%,66% 100%,64% 98%,62% 100%,60% 98%,58% 100%,56% 98%,54% 100%,52% 98%,50% 100%,48% 98%,46% 100%,44% 98%,42% 100%,40% 98%,38% 100%,36% 98%,34% 100%,32% 98%,30% 100%,28% 98%,26% 100%,24% 98%,22% 100%,20% 98%,18% 100%,16% 98%,14% 100%,12% 98%,10% 100%,8% 98%,6% 100%,4% 98%,2% 100%,0 98%);animation:receipt-feed 220ms steps(5) both}
.receipt-header{display:grid;gap:5px;padding-bottom:19px;margin-bottom:20px;border-bottom:1px dashed #829086;font:9px/1.5 var(--label-font);letter-spacing:.8px;color:#526273}.receipt-header strong{font:800 23px/1.3 var(--score-font);color:#17263a;letter-spacing:2px}.receipt-header #receiptItemName{font:600 12px/1.4 var(--score-font);letter-spacing:0}.result-score{font-size:78px;margin:4px 0 7px;line-height:1.1}.score-caption{font-size:9px}.result #resultLabel{display:inline-block;padding:5px 12px 4px;border:2px solid #3a7850;color:#3a7850;border-radius:2px;font:800 14px/1.2 var(--label-font);letter-spacing:1.5px;transform:rotate(-5deg);margin:3px 0 24px;animation:verdict-stamp 220ms steps(4) 180ms both}.result[data-tier=good] #resultLabel{color:#776018;border-color:#776018}.result[data-tier=ok] #resultLabel{color:#995024;border-color:#995024}.result[data-tier=bad] #resultLabel{color:#b23b32;border-color:#b23b32}.price-comparison{border:0;border-top:1px dashed #829086;border-bottom:1px dashed #829086;background:none}.price-comparison>div{padding:15px 0}.price-comparison>div+div{border:0;background:none;text-align:right}.price-comparison dt{font-size:9px;letter-spacing:.5px}.price-comparison dd{font-size:24px}.price-difference{margin:14px 0 5px}.result-note{font-size:10px}.result .squares{margin:17px 0 20px;gap:6px}.result .btn-gold{width:100%;min-height:44px;font-size:11px}.final-screen .item-name{font-size:25px}.final-screen .result-label{font-size:11px}.final-screen .btn-gold,.final-screen .btn-outline{width:100%;min-height:44px;margin-top:10px}
@keyframes receipt-feed{from{transform:translateY(-14px);opacity:.4}to{transform:translateY(0);opacity:1}}@keyframes verdict-stamp{from{opacity:0;transform:rotate(-9deg) scale(1.2)}to{opacity:1;transform:rotate(-5deg) scale(1)}}
@media(max-width:750px){body{padding:22px 16px}.wrap{gap:16px}header{order:0}.mode-toggle{order:1}.country-row{order:2;align-self:flex-start;font-size:11px;gap:8px}.cselect-btn{font-size:12px;padding:8px 12px}.progress-dots{order:3;align-self:flex-start}.card{order:4}.stat-strip{order:5;margin-top:9px}.tagline{order:6;align-self:stretch;text-align:left;border-top:1px solid #b7bdaf;font-size:11px;padding-top:12px}.sound-btn{order:7}.legal-footer{order:8}.counter-topline{padding:12px 14px;font-size:7px;letter-spacing:.2px}.counter-topline>span:first-child{gap:5px}.product-display{height:204px;padding-bottom:21px}.product-display:before{width:170px;height:170px;bottom:23px}.product-display #itemEmoji img{width:168px!important;height:168px!important}.shelf-price-tag{right:18px;top:23px;min-width:59px;padding:10px 8px 7px;transform:rotate(8deg)}.shelf-price-tag span{font-size:6px}.shelf-price-tag b{font-size:19px}.product-label{padding:15px 16px}.product-label .item-name{font-size:23px}.product-label:after{right:16px;top:22px;width:24px;height:20px}.price-till{padding:16px 16px 0}.till-entry{grid-template-columns:minmax(0,1fr);gap:11px}.till-entry .btn-gold{width:100%;min-height:44px;justify-content:center;gap:18px}.till-hint{margin:11px 0 14px;font-size:10px}.till-hint span{font-size:9px}.till-drawer{margin:0 -16px;height:18px}.card:has(.result.show),.card:has(.final-screen.show){padding:17px 13px 20px}.result.show,.final-screen.show{padding:23px 18px 33px}.receipt-header{font-size:8px}.receipt-header strong{font-size:21px}.result-score{font-size:70px}.price-comparison dd{font-size:20px}.price-comparison dt{font-size:8px}}
@media(max-width:360px){.shelf-price-tag{right:12px;top:17px;min-width:51px}.product-display #itemEmoji img{width:154px!important;height:154px!important}.counter-topline{font-size:6px}.till-hint{flex-direction:column;gap:2px}.result.show{padding-left:13px;padding-right:13px}}
@media(prefers-reduced-motion:reduce){.card,.result.show,.final-screen.show,.result #resultLabel{animation:none!important;transition:none!important}}
/* Reset legacy absolute positioning and focus glow inside the new till screen. */
.till-entry .currency-chip{position:static;right:auto;top:auto;margin:0;transform:none;flex:none}
.till-entry input:focus{filter:none;outline:none}.till-entry .guess-row:focus-within{outline:2px solid #d0e582;outline-offset:2px}
.result.show,.final-screen.show{width:100%}
.progress-dots .deck-count{font:700 10px/1.5 var(--label-font);letter-spacing:1px;color:#526273}
#finalScreen .btn-gold,#finalScreen .btn-outline{display:block;width:100%;min-height:46px;margin:12px 0 0;padding:12px 16px;font:700 11px var(--label-font)}
/* Match Stake: title / centred personal stats / tools, with reset and region on the right. */
body{padding:30px 32px}.wrap{max-width:1296px;gap:22px 38px}
header{display:grid;grid-template-columns:minmax(0,1fr) minmax(144px,30%) minmax(0,1fr);gap:12px;align-items:center;width:100%}
.lowball-title-group{grid-column:1;grid-row:1;min-width:0}header h1{margin:0;line-height:1.2}.lowball-title-group .sub{margin-top:4px}
header .head-btns{grid-column:3;grid-row:1;position:static;float:none;justify-self:end;display:flex;gap:8px}
header .stat-strip{grid-column:2;grid-row:1;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-self:center;gap:0;width:100%;margin:0;background:#fffdf5;border:1px solid #17263a;box-shadow:2px 2px #17263a}
header .stat-strip .stat{padding:12px 4px;border:0;box-shadow:none;background:none;border-radius:0;min-width:0}header .stat-strip .stat+.stat{border-left:1px solid #17263a}header .stat-strip .stat b{font:900 22px/1.1 'Courier New',monospace}header .stat-strip .stat span{font:800 8px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;margin-top:5px}
.live-reset{grid-column:2;grid-row:1;align-self:start;background:none;border:0;border-top:2px solid #17263a;box-shadow:none;padding:14px 0;font:800 11px 'Courier New',monospace;color:#17263a;text-align:left}
.live-reset strong{display:block;font-family:ui-monospace,monospace;font-size:30px;font-weight:900;line-height:normal;letter-spacing:normal;margin:10px 0;color:#17263a}.live-reset p{font:11px Arial,sans-serif;color:#526273;margin:0}.live-reset .new-daily-ready{display:block;font:700 11px/1.6 Arial,sans-serif;text-decoration:underline;margin-top:10px}.live-reset .new-daily-ready[hidden]{display:none}.live-reset.ready{cursor:pointer}
.country-row{grid-column:2;grid-row:2;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;margin:0;font:12px Arial,sans-serif;align-self:start}.country-label{color:#526273}.cselect-btn{font-size:14px;padding:12px}
@media(min-width:651px) and (max-width:900px){.wrap{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:20px}.country-row{flex-direction:column;align-items:stretch}.lowball-title-group h1{font-size:30px}.lowball-title-group .sub{font-size:12px}}
@media(max-width:900px){header .stat-strip .stat{padding:10px 3px}header .stat-strip .stat b{font-size:20px}header .stat-strip .stat span{font-size:7px;letter-spacing:.03em}}
@media(max-width:650px){body{padding:24px 16px}.wrap{display:flex;gap:19px}header{order:0;grid-template-columns:minmax(0,1fr) 144px minmax(0,1fr);gap:8px}.lowball-title-group h1{font-size:21px}.lowball-title-group .sub{display:none}header .head-btns{gap:6px}header .icon-btn{width:36px;height:36px}header .stat-strip .stat b{font-size:19px}.mode-toggle{order:1}.progress-dots{order:2}.card{order:3}.live-reset{order:4;align-self:stretch;display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}.live-reset strong{display:inline-block;font-size:22px;margin:0}.live-reset p{flex-basis:100%;margin:5px 0 0}.live-reset .new-daily-ready{flex-basis:100%;margin-top:5px}.country-row{order:5;align-self:stretch;flex-direction:column;align-items:stretch;font-size:12px}.sound-btn{order:6}.legal-footer{order:7}}
@media(max-width:360px){body{padding-left:12px;padding-right:12px}header{grid-template-columns:minmax(0,1fr) 124px minmax(0,1fr)}.lowball-title-group h1{font-size:17px}header .icon-btn{width:32px;height:34px;font-size:17px}header .head-btns{gap:4px}header .stat-strip .stat{padding:9px 2px}header .stat-strip .stat b{font-size:18px}header .stat-strip .stat span{font-size:6px}}
/* A tactile sound switch, styled like a small control on the shop till. */
.sound-btn{display:flex;align-items:center;justify-content:flex-start;gap:10px;align-self:center;justify-self:center;width:190px;min-height:46px;margin:5px auto 9px;padding:9px 12px;background:#fffdf5;border:1.5px solid #17263a;box-shadow:3px 3px #17263a;color:#17263a;font:700 10px/1 var(--label-font);letter-spacing:.7px;opacity:1;transition:transform 100ms steps(2),box-shadow 100ms steps(2)}
.sound-btn .lowball-art{width:23px;height:23px;margin:0;flex:none}.sound-label{text-transform:uppercase}.sound-state{margin-left:auto;font:700 9px var(--label-font);letter-spacing:0;color:#3a7850;min-width:18px;text-align:right;text-transform:uppercase}.sound-switch{position:relative;display:block;width:30px;height:17px;flex:none;background:#c7e66d;border:1px solid #17263a;box-shadow:inset 0 2px #17263a16}.sound-switch i{position:absolute;top:2px;left:16px;width:10px;height:11px;background:#17263a;transition:left 100ms steps(2)}
.sound-btn[aria-pressed=false]{background:#eeeade}.sound-btn[aria-pressed=false] .sound-state{color:#526273}.sound-btn[aria-pressed=false] .sound-switch{background:#c4d2d1}.sound-btn[aria-pressed=false] .sound-switch i{left:2px}
.sound-btn:hover{opacity:1;transform:translate(-1px,-1px);box-shadow:4px 4px #17263a}.sound-btn:active{transform:translate(2px,2px);box-shadow:1px 1px #17263a}.sound-btn:focus-visible{outline:3px solid #ee6557;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.sound-btn,.sound-switch i{transition:none}}
/* One central column: the counter, controls and footer share the same axis. */
body{padding:28px 24px}.wrap{display:flex;flex-direction:column;align-items:stretch;max-width:760px;width:100%;gap:18px;margin:0 auto}
header{order:0;align-self:stretch}.mode-toggle{order:1;width:100%;align-self:stretch}.progress-dots{order:2;align-self:stretch;justify-content:center;width:100%;margin:0;padding:0}
.card{order:3;align-self:stretch;width:100%;max-width:none;margin:0}
.session-settings{order:4;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;width:100%;border-top:1px solid #a9b6aa;padding:18px 0 0;margin-top:7px}
.session-settings .live-reset{display:block;grid-column:auto;grid-row:auto;align-self:start;border:0;padding:0;margin:0;text-align:left}
.session-settings .live-reset strong{display:block;margin:8px 0;font-size:28px}.session-settings .live-reset p{margin:0}.session-settings .new-daily-ready{margin-top:8px}
.session-settings .country-row{grid-column:auto;grid-row:auto;order:0;display:flex;flex-direction:column;align-items:stretch;align-self:start;justify-self:end;width:100%;max-width:260px;min-width:0;margin:0;gap:8px}
.session-settings .cselect{min-width:0}.session-settings .cselect-btn{min-width:0;max-width:100%}.session-settings .cselect-list{left:auto;right:0;max-width:calc(100vw - 32px)}
.sound-btn{order:5;grid-column:auto;align-self:center;justify-self:center;margin:0 auto 4px;flex:none}
.legal-footer{order:6;align-self:center;width:100%;max-width:600px;text-align:center}
@media(max-width:650px){body{padding:22px 16px}.wrap{gap:17px}.session-settings{gap:18px;padding-top:16px}.session-settings .live-reset{font-size:9px}.session-settings .live-reset strong{font-size:23px}.session-settings .live-reset p{font-size:10px;line-height:1.5}.session-settings .country-label{font-size:10px}.session-settings .cselect-btn{font-size:12px;padding:11px 9px}.session-settings .country-row{gap:8px}.session-settings .cselect-list{font-size:12px}}
@media(max-width:360px){body{padding-left:12px;padding-right:12px}.session-settings{gap:12px}.session-settings .live-reset{font-size:8px}.session-settings .live-reset strong{font-size:21px}.session-settings .cselect-btn{font-size:11px;padding:11px 8px}}
.session-settings .live-reset{order:0}.session-settings .country-row{order:1}
/* A separate top-right utility rail keeps the game itself on the viewport centre line. */
.wrap{position:relative}
.session-settings{order:1;grid-template-columns:minmax(0,1fr);align-self:flex-end;width:min(260px,100%);gap:17px;border:0;padding:0;margin:0}
.session-settings .country-row{max-width:none;justify-self:stretch}.session-settings .live-reset{border-top:2px solid #17263a;padding-top:14px}
.mode-toggle{order:2}.progress-dots{order:3}.card{order:4}
@media(min-width:1100px){.wrap{--lowball-column:min(760px,calc(100vw - 448px));max-width:var(--lowball-column)}.session-settings{position:absolute;top:0;left:calc(100% + 24px);width:min(240px,calc((100vw - var(--lowball-column))/2 - 48px))}.mode-toggle{order:1}.progress-dots{order:2}.card{order:3}}
