:root{color-scheme:dark;font-family:DM Sans,ui-sans-serif,system-ui,-apple-system,sans-serif;line-height:1.55;font-weight:400;color:#f2e8d8;background:#0d0b09;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #0c0c0c;--bg-2: #161616;--bg-3: #1e1e1e;--ivory: #f2e8d8;--ivory-2: #e2d5c0;--ink: #130f08;--muted: #7a6e5e;--line: rgba(242, 232, 216, .09);--line-dark: rgba(19, 15, 8, .14);--amber: #d4960c;--amber-dark: #b07808;--amber-bright: #f0b830;--amber-text: #1a0e00;--action: #c42b20;--action-dark: #a32218;--action-text: #fff5f5;--red: #b84038;--red-dark: #963430;--radius: 10px;--shadow-card: 0 1px 16px rgba(0,0,0,.5), 0 1px 0 rgba(242,232,216,.04) inset;--shadow-float: 0 8px 48px rgba(0,0,0,.7), 0 1px 0 rgba(242,232,216,.06) inset}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{min-height:100%;background:var(--bg)}body{min-width:320px;min-height:100vh;min-height:100dvh;margin:0;background:var(--bg);overscroll-behavior:none}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button:focus-visible,input:focus-visible{outline:2px solid rgba(196,43,32,.7);outline-offset:3px}svg{width:1.25rem;height:1.25rem;display:block}#root{min-height:100vh;min-height:100dvh}.eyebrow{margin:0;color:var(--amber-bright);text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:700}.muted{margin:0;color:var(--muted);font-size:.92rem}.chip{flex:0 0 auto;border-radius:999px;background:#f2e8d80d;color:var(--muted);border:1px solid var(--line);padding:5px 12px;font-size:.78rem;font-weight:600;letter-spacing:.04em}.primary-button,.danger-button{width:100%;min-height:54px;border:0;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;gap:10px;color:var(--action-text);background:var(--action);font-size:.95rem;font-weight:700;letter-spacing:.02em;user-select:none;-webkit-user-select:none;box-shadow:0 2px 20px #c42b2073;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.primary-button:hover{filter:brightness(1.1);box-shadow:0 4px 28px #c42b20a6;transform:translateY(-1px)}.primary-button:active,.danger-button:active{transform:translateY(0);filter:brightness(.95)}.danger-button{color:#fff0ee;background:#8b1a12;box-shadow:0 2px 16px #8b1a1266}.danger-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.ghost-button,.secondary-button,.danger-outline-button{min-height:44px;border-radius:var(--radius);border:1px solid var(--line);color:var(--ivory-2);background:transparent;padding:0 18px;font-weight:500;transition:transform .16s ease,filter .16s ease,border-color .16s ease}.ghost-button:hover,.secondary-button:hover,.danger-outline-button:hover{transform:translateY(-1px);border-color:#f2e8d833}.secondary-button{color:var(--amber-bright);border-color:#d4960c47}.danger-outline-button{color:var(--red);border-color:#b8403847}.field{display:grid;gap:8px}.field span{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.field input{width:100%;min-height:46px;border-radius:var(--radius);border:1px solid var(--line);background:#f2e8d80d;color:var(--ivory);padding:0 14px;font-weight:500;transition:border-color .16s ease}.field input:focus{border-color:#d4960c80;outline:none}.app-frame{width:100%;min-height:100vh;min-height:100dvh;padding:max(16px,env(safe-area-inset-top)) 16px calc(88px + env(safe-area-inset-bottom))}.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 2px 16px}.screen-body{animation:rise .36s ease both}.client-grid,.barber-grid{display:grid;gap:12px}.panel,.game-card,.summary-panel{border-radius:var(--radius);background:var(--bg-2);border:1px solid var(--line);box-shadow:var(--shadow-card)}.panel{padding:20px;display:grid;gap:16px;color:var(--ivory)}.game-card{padding:20px;display:grid;gap:14px;color:var(--ivory);overflow:hidden;position:relative}.game-card h2,.panel h2{margin:0;font-size:clamp(1.2rem,5vw,1.75rem);font-weight:700;line-height:1.1}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.section-heading h2{margin:4px 0 0;font-size:1.1rem;font-weight:700}.summary-panel{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:var(--ivory);color:var(--ink);border:1px solid rgba(242,232,216,.1)}.summary-panel>div{padding:18px;display:grid;gap:6px}.summary-panel>div+div{border-left:1px solid var(--line-dark)}.summary-panel span{color:#130f0880;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.summary-panel strong{font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:700;line-height:1;color:var(--ink)}.summary-panel small{color:#130f0880;font-size:.82rem}.timer-wrap{display:grid;gap:8px;padding:4px 0 0}.timer{font-variant-numeric:tabular-nums;font-size:clamp(3.6rem,18vw,6.8rem);line-height:.88;font-weight:800;letter-spacing:-.02em;color:var(--ivory);transition:color .2s ease,text-shadow .2s ease}.timer-running{color:var(--amber-bright);text-shadow:0 0 32px rgba(240,184,48,.45),0 0 64px rgba(240,184,48,.15)}.scale{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:8px;color:var(--muted);font-size:.75rem}.scale i{height:1px;background:var(--line)}.price-strip{min-height:48px;border:1px solid var(--line);border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px}.price-strip span{color:var(--muted);font-size:.85rem;font-weight:500}.price-strip strong{color:var(--ivory);font-size:1.15rem;font-weight:700;font-variant-numeric:tabular-nums}.result-panel{border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:grid;gap:8px;background:#f2e8d80a}.result-panel span{color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.result-panel strong{font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:700;line-height:1}.result-panel small{color:var(--muted);font-size:.85rem}.compact-field{width:100%}.login-form .field span{color:#130f088c}.login-form .field input{border:1px solid rgba(19,15,8,.14);background:#ffffffb8;color:var(--ink);min-height:46px}.status-line{margin:0;color:var(--muted);font-size:.88rem}.empty-state{min-height:140px;border:1px dashed rgba(242,232,216,.1);border-radius:var(--radius);display:grid;place-content:center;gap:6px;text-align:center;color:var(--muted);font-size:.9rem}.empty-state strong{color:var(--ivory-2);font-weight:600}.demo-panel{align-items:start}.demo-actions{display:grid;gap:10px}.profile-panel{min-height:220px;align-content:center}.play-ranking-preview{display:none}.ranking-list{list-style:none;margin:0;padding:0;display:grid}.ranking-list li{min-height:48px;display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:10px;border-top:1px solid var(--line);padding:7px 0}.ranking-list li:first-child{border-top:0}.ranking-list li.highlight{margin:0 -12px;padding-inline:12px;border-radius:var(--radius);background:#d4960c14}.ranking-list.dense li{min-height:52px}.rank-number{min-width:2rem;font-weight:700;font-size:.95rem;color:var(--muted)}.rank-number.gold{color:var(--amber-bright)}.rank-number.silver{color:#b0b8c0}.rank-number.bronze{color:#b87844}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--ink);background:var(--ivory-2);font-weight:700;font-size:.9rem}.avatar.gold{background:var(--amber-bright);color:#1a0800;box-shadow:0 0 12px #f0b83066}.avatar.silver{background:#c0c8d0;color:#1e2630}.avatar.bronze{background:#c07840;color:#2a0e00}.rank-meta{min-width:0;display:grid}.rank-meta strong,.rank-meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-meta strong{font-weight:600;font-size:.92rem}.rank-meta small{color:var(--muted);font-size:.8rem}.rank-time{color:var(--ivory);font-variant-numeric:tabular-nums;font-weight:700;font-size:.88rem}.bottom-nav{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:10;max-width:480px;margin:0 auto;min-height:66px;border:1px solid rgba(242,232,216,.08);border-radius:18px;background:#100e0bf7;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 8px 40px #000000b3;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;overflow:hidden}.bottom-nav button{min-width:0;border:0;background:transparent;color:#f2e8d85c;display:grid;place-items:center;align-content:center;gap:4px;font-size:.68rem;font-weight:600;letter-spacing:.04em;position:relative;transition:color .16s ease}.bottom-nav button.active{color:var(--amber-bright)}.bottom-nav button.active:after{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:24px;height:2px;border-radius:0 0 2px 2px;background:var(--amber-bright);box-shadow:0 0 8px #f0b83080}.nav-icon svg{width:20px;height:20px}.kiosk-shell{width:100%;height:100dvh;overflow:hidden;display:flex;flex-direction:column;padding:max(12px,env(safe-area-inset-top)) 16px max(14px,env(safe-area-inset-bottom))}.kiosk-shell--game{background:var(--bg)}.kiosk-welcome{flex:1;display:flex;flex-direction:column;gap:10px;position:relative;min-height:0}.welcome-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.welcome-title{margin:0;font-size:clamp(1.5rem,7vw,2.4rem);font-weight:800;line-height:.95;letter-spacing:-.02em;color:var(--ivory)}.demo-card{flex-shrink:0;height:clamp(160px,32dvh,260px);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;justify-content:space-between;gap:8px;position:relative;overflow:hidden}.demo-glow{position:absolute;inset:-60%;border-radius:50%;pointer-events:none;opacity:0;transition:opacity .5s ease,background .5s ease}.demo-glow--hot{background:radial-gradient(circle,rgba(212,150,12,.14) 0%,transparent 60%);opacity:1;animation:pulse-glow-ring 1.2s ease-in-out infinite}.demo-glow--over{background:radial-gradient(circle,rgba(196,43,32,.12) 0%,transparent 60%);opacity:1}.demo-phase{margin:0;position:relative;transition:color .3s ease}.demo-card--hot .demo-phase{color:var(--amber-bright)}.demo-card--over .demo-phase{color:var(--red)}.demo-hero-timer{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.demo-timer{font-size:clamp(3rem,11dvh,8rem);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ivory);transition:color .2s ease,text-shadow .2s ease;position:relative}.demo-timer--hot{color:var(--amber-bright);text-shadow:0 0 32px rgba(240,184,48,.55),0 0 64px rgba(240,184,48,.2);animation:pulse-hot .55s ease-in-out infinite}.demo-timer--over{color:var(--red);text-shadow:0 0 24px rgba(196,43,32,.5)}.demo-timer--stopped{animation:none}.demo-footer{flex-shrink:0;display:grid;gap:6px;position:relative}.demo-meta{font-size:.78rem;color:var(--muted);font-weight:600}.demo-meta strong{color:var(--ivory-2)}.demo-result{font-size:1rem;font-weight:800;animation:pop-in .3s cubic-bezier(.34,1.56,.64,1) both}.demo-result--perfect,.demo-result--amazing{color:var(--amber-bright)}.demo-result--great{color:var(--amber)}.demo-result--good{color:var(--ivory-2)}.demo-progress-track{height:3px;border-radius:2px;background:#f2e8d814;overflow:hidden}.demo-progress-fill{height:100%;border-radius:2px;background:#f2e8d859;transition:width .06s linear,background .25s ease}.demo-progress-fill--hot{background:var(--amber-bright)}.demo-progress-fill--over{background:var(--red)}.ranking-spotlight-wrap{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-card)}.ranking-scroll-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px 9px;border-bottom:1px solid var(--line);flex-shrink:0;background:#f2e8d805}.ranking-spotlight-list{list-style:none;margin:0;padding:4px 6px;flex:1;display:flex;flex-direction:column;justify-content:space-evenly;overflow:hidden;min-height:0;max-height:100%}.ranking-spot-row{display:grid;grid-template-columns:26px 36px 1fr auto;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;border:1px solid transparent;position:relative;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease;background:#f2e8d805}.ranking-spot-row--first{background:#d4960c0d}.ranking-spot-row--active{background:#f2e8d80f;border-color:#f2e8d81a}.ranking-spot-row--active.ranking-spot-row--gold{background:#d4960c1f;border-color:#d4960c4d;box-shadow:0 0 24px #d4960c24,inset 3px 0 0 var(--amber-bright);animation:pulse-row 1.1s ease-in-out 3}.ranking-spot-row--active.ranking-spot-row--silver{background:#b4c0cc12;border-color:#b4c0cc2e;box-shadow:inset 3px 0 #b0b8c0}.ranking-spot-row--active.ranking-spot-row--bronze{background:#c8784012;border-color:#c878402e;box-shadow:inset 3px 0 #c07840}.ranking-spot-row--gold .rank-time{color:var(--amber-bright);font-weight:800}.ranking-spot-row--silver .rank-time{color:#c0cad4}.ranking-spot-row--bronze .rank-time{color:#d08050}.ranking-spot-row--first .rank-meta strong{font-size:.97rem}.ranking-spot-row .rank-number{text-align:center;font-size:.82rem}.ranking-live-avatar-wrap{position:relative;display:flex;align-items:center}.avatar-crown{position:absolute;top:-4px;left:50%;transform:translate(-50%);font-size:10px;line-height:1;filter:drop-shadow(0 0 4px rgba(240,184,48,.7));animation:float-crown 2s ease-in-out infinite;z-index:3}.ranking-spotlight-empty{flex:1;display:grid;place-items:center}.ranking-view-all{flex-shrink:0;width:100%;border:0;border-top:1px solid var(--line);background:#d4960c0a;color:var(--amber-bright);font-size:.78rem;font-weight:700;padding:11px 14px;text-align:center;letter-spacing:.06em;text-transform:uppercase;transition:background .16s ease;display:flex;align-items:center;justify-content:center;gap:6px}.ranking-view-all:after{content:"↑";font-size:.9rem}.ranking-view-all:hover{background:#d4960c1a}.sheet-backdrop{position:fixed;inset:0;background:#000000a6;z-index:50;animation:fade-in .22s ease both}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;height:85dvh;background:var(--bg-2);border-radius:20px 20px 0 0;border:1px solid var(--line);border-bottom:0;z-index:51;display:flex;flex-direction:column;box-shadow:0 -12px 48px #0009;animation:sheet-up .32s cubic-bezier(.32,.72,0,1) both}.sheet-drag-handle{flex-shrink:0;width:36px;height:4px;border-radius:2px;background:#f2e8d833;margin:10px auto 0}.sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 20px 12px;border-bottom:1px solid var(--line);flex-shrink:0}.sheet-title{margin:4px 0 0;font-size:1.1rem;font-weight:700;color:var(--ivory)}.sheet-close{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#f2e8d80f;color:var(--muted);font-size:.9rem;display:grid;place-items:center;flex-shrink:0;transition:background .16s ease,color .16s ease}.sheet-close:hover{background:#f2e8d81f;color:var(--ivory)}.sheet-body{flex:1;min-height:0;overflow-y:auto;padding:0 20px max(20px,env(safe-area-inset-bottom))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.welcome-play-btn{box-shadow:0 4px 36px #c42b2099!important}.kiosk-copy{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5;max-width:36ch}.kiosk-price-badge{display:inline-flex;align-items:center;gap:10px;background:#d4960c14;border:1px solid rgba(212,150,12,.2);border-radius:8px;padding:8px 14px;width:fit-content}.kiosk-price-badge span{color:var(--muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.kiosk-price-badge strong{color:var(--amber-bright);font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums}.kiosk-ranking{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.kiosk-ranking .panel{flex:1;min-height:0;overflow-y:auto}.kiosk-actions{padding:2px 0 0}.kiosk-play-btn{min-height:56px!important;font-size:.95rem!important;font-weight:700!important;border-radius:12px!important}.kiosk-operator-btn{align-self:flex-end;background:transparent;border:0;color:#f2e8d824;font-size:.65rem;font-weight:600;padding:10px 2px;letter-spacing:.1em;text-transform:uppercase}.kiosk-step{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:14px}.kiosk-step h1{margin:0;font-size:clamp(1.8rem,8vw,4.2rem);line-height:.92;font-weight:800;letter-spacing:-.02em;color:var(--ivory)}.kiosk-step>div{display:grid;gap:8px}.kiosk-name-actions,.kiosk-result-actions{display:grid;gap:10px}.kiosk-idle-timer{display:flex;align-items:baseline;gap:12px}.kiosk-idle-timer .timer{font-size:clamp(2.6rem,13vw,6rem)}.kiosk-idle-timer .muted{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.running-shell{position:relative;overflow:hidden}.running-screen{flex:1;display:flex;flex-direction:column;align-items:stretch;gap:16px;position:relative}.running-label{align-self:stretch;text-align:center;letter-spacing:.2em}.running-center{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.running-ambient{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,rgba(184,64,56,.14) 0%,transparent 65%);animation:running-breathe 3s ease-in-out infinite;pointer-events:none;z-index:0}.running-timer-block{display:flex;align-items:center;justify-content:center;position:relative}.running-timer{font-size:clamp(4rem,20vw,8rem)!important;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ivory)!important;text-shadow:none!important;animation:none!important}.kiosk-stop-btn{width:100%;min-height:88px!important;font-size:1.3rem!important;font-weight:800!important;border-radius:14px!important;letter-spacing:.08em;flex-shrink:0;position:relative;z-index:10}@keyframes running-breathe{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}.kiosk-result-ranking{flex:1;min-height:0;overflow-y:auto}.countdown-bar-wrap{display:grid;gap:8px}.countdown-bar-track{height:2px;border-radius:2px;background:#f2e8d814;overflow:hidden}.countdown-bar-fill{height:100%;border-radius:2px;background:var(--amber);transition:width 1s linear}.pin-shell{width:100%;height:100dvh;overflow:hidden;display:grid;place-items:center;padding:20px;background:var(--bg)}.pin-card{width:100%;max-width:380px;background:var(--bg-2);color:var(--ivory);border-radius:var(--radius);border:1px solid var(--line);padding:28px;display:grid;gap:16px;box-shadow:var(--shadow-float)}.pin-card h2{margin:0;font-size:1.35rem;font-weight:700}.pin-card .field input{border:1px solid var(--line)!important;background:#f2e8d80d!important;color:var(--ivory)!important;min-height:58px!important;font-size:1.8rem!important;font-weight:700;letter-spacing:.5em;text-align:center}.pin-cancel{color:var(--muted)!important;border-color:var(--line)!important}.entry-screen{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-height:0}.entry-header{flex-shrink:0;display:grid;gap:4px}.entry-header .eyebrow{text-transform:none;letter-spacing:.02em;font-size:.9rem;font-weight:600;color:var(--muted)}.entry-title{margin:0;font-size:clamp(1.6rem,5vw,2.6rem);font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--ivory)}.entry-actions{flex-shrink:0;display:grid;gap:10px}.entry-hero{display:flex;flex-direction:column;justify-content:center}.entry-field{display:grid;gap:10px}.entry-field span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.entry-input{width:100%;min-height:clamp(60px,10dvh,88px)!important;border-radius:var(--radius)!important;border:1px solid var(--line)!important;background:#f2e8d80d!important;color:var(--ivory)!important;padding:0 18px!important;font-weight:600!important;font-size:clamp(1.2rem,5vw,1.8rem)!important;transition:border-color .16s ease}.entry-input:focus{border-color:#c42b2080!important;outline:none}.plays-grid--hero .play-option{min-height:clamp(100px,18dvh,145px);justify-content:center;align-items:center;padding:14px 10px;gap:6px}.plays-grid--hero .play-option strong{font-size:clamp(1.8rem,6vw,3rem)}.plays-grid--hero .play-option span{font-size:.82rem}.plays-grid--hero .play-option small{font-size:.95rem}.pix-hero{display:flex;flex-direction:column;align-items:center;gap:14px}.pix-qr-hero{width:100%;height:clamp(200px,38dvh,320px);border-radius:16px;border:2px dashed rgba(242,232,216,.15);background:var(--bg-2);display:grid;place-items:center}.pix-hero-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:#c42b2014;border:1px solid rgba(196,43,32,.2);border-radius:var(--radius);padding:14px 18px}.pix-hero-qty{color:var(--muted);font-size:.9rem;font-weight:600}.pix-hero-price{font-size:clamp(1.4rem,5vw,2rem);font-weight:800;font-variant-numeric:tabular-nums;color:var(--ivory)}.idle-hero{height:clamp(200px,40dvh,320px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:24px;position:relative;overflow:hidden;box-shadow:var(--shadow-card)}.idle-hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(196,43,32,.08) 0%,transparent 70%);pointer-events:none}.idle-hero-label{position:relative}.idle-hero-timer{font-size:clamp(3rem,12dvh,6.5rem);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ivory);line-height:1;position:relative}.op-login-shell{width:100%;height:100dvh;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) 20px max(16px,env(safe-area-inset-bottom));background:var(--bg)}.op-login-layout{width:100%;max-width:390px;display:flex;flex-direction:column;gap:20px;animation:rise .4s ease both}.op-login-hero{display:grid;gap:6px}.op-login-hero h1{margin:0;font-size:clamp(1.9rem,9vw,3.6rem);font-weight:800;line-height:.92;letter-spacing:-.02em;color:var(--ivory)}.op-login-copy{margin:0;color:var(--muted);font-size:.86rem;line-height:1.5;max-width:34ch}.op-login-form{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:grid;gap:12px;box-shadow:var(--shadow-card)}.op-login-form-heading{display:grid;gap:4px}.op-login-form-heading h2{margin:0;font-size:1.15rem;font-weight:700;color:var(--ivory)}.login-hint{color:var(--muted);font-size:.78rem;line-height:1.35}.password-field-wrap{position:relative;display:flex;align-items:center}.password-field-wrap input{width:100%;padding-right:46px}.password-toggle{position:absolute;right:0;top:0;bottom:0;width:46px;background:transparent;border:0;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:color .16s ease}.password-toggle:hover{color:var(--ivory-2)}.password-toggle:focus-visible{outline:none;color:var(--amber-bright)}.password-toggle svg{width:18px;height:18px}.checkbox-row{min-height:44px;display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.85rem;font-weight:500;cursor:pointer}.checkbox-row input[type=checkbox]{width:18px;height:18px;min-height:unset;accent-color:var(--amber);border-radius:4px;cursor:pointer;flex-shrink:0}.op-login-submit{margin-top:4px}@media(min-width:760px){.op-login-layout{max-width:820px;flex-direction:row;align-items:center;gap:72px}.op-login-hero{flex:1}.op-login-form{flex:0 0 360px;padding:28px}}.login-error{margin:0;border-radius:var(--radius);background:#b840381a;color:var(--red);padding:10px 14px;font-size:.88rem;font-weight:600;border:1px solid rgba(184,64,56,.2)}.revenue-wrap{display:grid;gap:16px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stats-grid .stat-card:first-child{grid-column:1 / -1}.stat-card{background:var(--bg-3);border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:grid;gap:6px}.stat-card span{color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.stat-card strong{font-size:1.7rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ivory);line-height:1}.stat-card--highlight strong{font-size:2.1rem;color:var(--amber-bright)}.today-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#d4960c12;border:1px solid rgba(212,150,12,.2);border-radius:var(--radius);padding:14px 16px}.today-strip-label{margin:0;color:var(--amber-bright);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.today-strip-value{margin:0;font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ivory)}.today-strip-plays{text-align:right;display:grid;gap:2px}.today-strip-plays strong{font-size:1.6rem;font-weight:800;color:var(--amber-bright);line-height:1}.today-strip-plays span{color:var(--muted);font-size:.78rem}.revenue-history{gap:12px!important}.day-list{list-style:none;margin:0;padding:0;display:grid}.day-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.day-row:first-child{border-top:0;padding-top:4px}.day-row--today .day-label{color:var(--amber-bright);font-weight:700}.day-label{font-size:.9rem;font-weight:500;color:var(--ivory-2)}.day-plays{color:var(--muted);font-size:.82rem;white-space:nowrap}.day-revenue{font-variant-numeric:tabular-nums;font-weight:700;font-size:.95rem;color:var(--ivory);white-space:nowrap}.upsell-header{display:grid;gap:4px}.upsell-header .eyebrow{text-transform:none;letter-spacing:.02em;font-size:.9rem;font-weight:600;color:var(--muted)}.upsell-header h1{margin:0;font-size:clamp(1.6rem,5vw,2.6rem);font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--ivory)}.upsell-cards{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}.upsell-card{border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-2);padding:12px 10px;display:grid;gap:3px;text-align:center}.upsell-card--offer{border-color:var(--amber);background:#d4960c12;animation:pop-in .4s 80ms cubic-bezier(.34,1.56,.64,1) both}.upsell-card-label{margin:0;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.upsell-card--offer .upsell-card-label{color:var(--amber-bright)}.upsell-card-qty{margin:0;font-size:1.1rem;font-weight:700;color:var(--ivory)}.upsell-card-price{margin:0;font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ivory-2);display:flex;align-items:baseline;justify-content:center;gap:6px}.upsell-card--offer .upsell-card-price{color:var(--amber-bright)}.upsell-old-price{font-size:.78rem;color:var(--muted);text-decoration:line-through;font-weight:500}.upsell-plus{font-size:1.4rem;font-weight:800;color:var(--muted);text-align:center}.upsell-total{background:#d4960c12;border:1px solid rgba(212,150,12,.2);border-radius:var(--radius);padding:14px 16px;display:grid;gap:4px}.upsell-total-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.upsell-total-row span{color:var(--muted);font-size:.85rem}.upsell-total-row strong{font-size:1.4rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ivory)}.upsell-saving{margin:0;font-size:.8rem;font-weight:700;color:var(--amber-bright)}.exit-sheet{height:auto!important}.exit-sheet-body{padding:4px 20px max(24px,env(safe-area-inset-bottom));display:grid;gap:14px}.exit-sheet-title{margin:4px 0 0;font-size:1.15rem;font-weight:700;color:var(--ivory)}.exit-sheet-msg{margin:0;font-size:.9rem;color:var(--muted);line-height:1.55}.exit-sheet-msg strong{color:var(--amber-bright);font-weight:700}.exit-sheet-actions{display:grid;gap:8px;padding-top:4px}.settings-divider{height:1px;background:var(--line);margin:4px 0}.settings-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.settings-row-title{margin:0 0 4px;font-size:.92rem;font-weight:600;color:var(--ivory)}.settings-row-desc{margin:0;font-size:.8rem;color:var(--muted);line-height:1.45;max-width:28ch}.toggle-switch{position:relative;display:inline-block;width:44px;height:26px;flex-shrink:0;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-track{position:absolute;inset:0;border-radius:999px;background:#f2e8d81f;border:1px solid var(--line);transition:background .2s ease,border-color .2s ease}.toggle-track:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--muted);transition:transform .2s ease,background .2s ease}.toggle-switch input:checked+.toggle-track{background:#d4960c33;border-color:var(--amber)}.toggle-switch input:checked+.toggle-track:after{transform:translate(18px);background:var(--amber-bright)}.admin-panel,.account-panel{gap:16px}.operator-form{display:grid;gap:12px}.admin-create-form{padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff08}.operator-list{display:grid;gap:14px}.operator-card{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2)}.operator-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.operator-card-header strong{display:block;color:var(--ivory);font-size:1rem}.operator-card-header span{display:block;color:var(--muted);font-size:.82rem}.operator-status{border:1px solid var(--line);border-radius:999px;padding:4px 8px;color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.operator-status--active{border-color:#3cbe7859;color:#6ee7a8}.operator-edit-grid,.operator-secret-grid{display:grid;gap:10px}.operator-secret-grid{padding-top:4px;border-top:1px solid var(--line)}.operator-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.operator-active-row{margin:0}@media(min-width:720px){.admin-create-form,.operator-edit-grid,.operator-secret-grid{grid-template-columns:1fr 1fr;align-items:end}.admin-create-form .primary-button{grid-column:1 / -1}}.plays-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.play-option{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:12px 10px;display:grid;gap:3px;text-align:center;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.play-option strong{font-size:1.6rem;font-weight:800;color:var(--ivory);line-height:1}.play-option span{font-size:.8rem;font-weight:500;color:var(--muted)}.play-option small{font-size:.9rem;font-weight:700;color:var(--ivory-2);margin-top:4px}.play-option--active{border-color:var(--amber);background:#d4960c14;transform:translateY(-2px)}.play-option--active strong,.play-option--active small{color:var(--amber-bright)}.plays-total-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#d4960c12;border:1px solid rgba(212,150,12,.2);border-radius:var(--radius);padding:14px 16px}.plays-total-strip span{color:var(--muted);font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.plays-total-strip strong{font-size:1.5rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--amber-bright)}.pix-qr-wrap{display:grid;gap:16px;align-items:center}.pix-qr-box{aspect-ratio:1;max-width:160px;width:100%;margin:0 auto;border-radius:16px;border:2px dashed rgba(242,232,216,.15);background:var(--bg-2);display:grid;place-items:center}.pix-qr-inner{display:grid;gap:6px;text-align:center}.pix-qr-label{font-size:1rem;font-weight:700;color:var(--muted);display:block}.pix-qr-sublabel{font-size:.75rem;color:#7a6e5e99;display:block}.pix-summary{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.pix-summary-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.pix-summary-row span{color:var(--muted);font-size:.88rem}.pix-summary-row strong{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ivory)}.credits-badge{display:inline-flex;align-items:center;gap:8px;background:#d4960c14;border:1px solid rgba(212,150,12,.2);border-radius:999px;padding:6px 14px;width:fit-content}.credits-badge span{color:var(--amber-bright);font-size:.82rem;font-weight:700}.credits-pill{background:#ffffff26;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:700;white-space:nowrap}.timer-zone-warm{color:var(--ivory);transition:color .3s ease,text-shadow .3s ease}.timer-zone-hot{color:var(--amber-bright);text-shadow:0 0 24px rgba(240,184,48,.7),0 0 60px rgba(240,184,48,.3);animation:pulse-hot .55s ease-in-out infinite}.timer-zone-over{color:var(--red);text-shadow:0 0 24px rgba(184,64,56,.5);transition:color .15s ease,text-shadow .15s ease}.kiosk-stop-btn--hot{background:var(--action)!important;box-shadow:0 0 0 4px #c42b204d,0 4px 28px #c42b208c!important;animation:pulse-btn .55s ease-in-out infinite}.result-screen{flex:1;display:flex;flex-direction:column;gap:10px;min-height:0}.result-hero{flex-shrink:0;display:grid;gap:4px;padding:14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-2);position:relative;overflow:hidden;animation:rise .3s ease both;text-align:center;justify-items:center}.result-hero-glow{position:absolute;top:-40px;left:50%;transform:translate(-50%);width:200px;height:200px;border-radius:50%;pointer-events:none;opacity:0}.result-hero--perfect .result-hero-glow,.result-hero--amazing .result-hero-glow{background:radial-gradient(circle,rgba(240,184,48,.22) 0%,transparent 70%);opacity:1}.result-hero--great .result-hero-glow{background:radial-gradient(circle,rgba(212,150,12,.12) 0%,transparent 70%);opacity:1}.result-emoji{font-size:1.6rem;line-height:1;animation:pop-in .4s 60ms cubic-bezier(.34,1.56,.64,1) both}.result-label{margin:0;font-size:clamp(1.3rem,6.5vw,2.2rem);font-weight:800;letter-spacing:-.02em;line-height:1;animation:pop-in .42s .12s cubic-bezier(.34,1.56,.64,1) both}.result-label--perfect,.result-label--amazing{color:var(--amber-bright)}.result-label--great{color:var(--amber)}.result-label--good{color:var(--ivory)}.result-label--ok,.result-label--miss{color:var(--muted)}.result-score{font-size:clamp(2.4rem,12vw,4.5rem);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:.9;color:var(--ivory);animation:pop-in .44s .2s cubic-bezier(.34,1.56,.64,1) both}.result-score--perfect,.result-score--amazing{color:var(--amber-bright);text-shadow:0 0 32px rgba(240,184,48,.45)}.result-sub{margin:4px 0 0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;font-size:.82rem;color:var(--muted);animation:rise .3s .3s ease both}.result-position{font-weight:700;color:var(--ivory-2)}.result-position--podium{color:var(--amber-bright)}.result-screen .ranking-spotlight-wrap{animation:rise .3s .16s ease both}.you-badge{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:#d4960c33;color:var(--amber-bright);border-radius:4px;padding:1px 5px;margin-left:6px;vertical-align:middle}.ranking-spot-row--you{background:#d4960c1f!important;border-color:#d4960c4d!important;box-shadow:inset 3px 0 0 var(--amber-bright),0 0 20px #d4960c1a!important}.ranking-spot-row--you .rank-time{color:var(--amber-bright);font-weight:800}.ranking-spot-row--you .rank-meta strong{color:var(--ivory)}.result-actions{flex-shrink:0;display:grid;gap:8px}.result-rank-badge{background:#d4960c1f;border:1px solid rgba(212,150,12,.3);color:var(--amber-bright);border-radius:999px;padding:3px 12px;font-size:.82rem;font-weight:700}.result-rank-plain{color:var(--muted);font-size:.85rem}@keyframes pulse-row{0%,to{background:#d4960c0f}50%{background:#d4960c1f}}@keyframes float-crown{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-2px)}}@keyframes pulse-hot{0%,to{opacity:1}50%{opacity:.78}}@keyframes pulse-btn{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}@keyframes pop-in{0%{opacity:0;transform:scale(.82) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(min-width:760px){.kiosk-shell{padding-inline:max(24px,3vw);padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}.kiosk-welcome{gap:16px}.welcome-title{font-size:clamp(2rem,5vw,3.6rem)}.kiosk-step{gap:20px}.kiosk-step h1{font-size:clamp(2rem,5vw,4rem)}.kiosk-play-btn{min-height:68px!important;font-size:1.05rem!important}.kiosk-stop-btn{min-height:110px!important}.ranking-spot-row,.contextual-row{padding:12px 14px}.demo-card{padding:16px 18px}.demo-timer{font-size:clamp(1.8rem,4vw,2.6rem)}.app-frame{padding-inline:28px}.barber-grid{width:100%}.timer{font-size:clamp(5rem,10vw,8rem)}.play-ranking-preview{display:grid}.bottom-nav{left:50%;transform:translate(-50%)}}@media(min-width:1040px){.bottom-nav{max-width:520px}.app-frame{padding-bottom:110px}}@media(min-width:600px){.demo-card{height:clamp(200px,38dvh,360px)}.demo-timer{font-size:clamp(5rem,16dvh,13rem)}}
