@font-face{font-family:Fraunces;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/fraunces-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/fraunces-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:400 900;font-display:swap;src:url(/fonts/fraunces-italic-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:italic;font-weight:400 900;font-display:swap;src:url(/fonts/fraunces-italic-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Work Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/worksans-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Work Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/worksans-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--mahogany:#6b2f1e;--mahogany-dark:#401c11;--mahogany-deep:#2a120b;--brass:#c9a227;--brass-bright:#e6c34f;--brass-dim:#8a6a1e;--cream:#f5ead1;--cream-dim:#d9c9a4;--felt:#1f4d3d;--ink:#1a1008;--serif:"Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--sans:"Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--ease-panel:cubic-bezier(.22, .68, .24, 1);--dur:.3s;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{width:100%;height:100%;font-family:var(--sans);-webkit-font-smoothing:antialiased;background:#0d0a10;margin:0;padding:0;overflow:hidden}#app{width:100%;height:100%;position:fixed;inset:0}#app canvas{touch-action:none;display:block;position:absolute;inset:0}button{font-family:inherit}.grain{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.05 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.panel-brass{background:linear-gradient(165deg,#401c11f0,#1a100bf5);border:1px solid #c9a22761;border-radius:18px;position:relative;box-shadow:inset 0 1px #e6c34f2e,inset 0 -1px #0006,0 18px 50px #0000008c}.panel-brass:before,.panel-brass:after{content:"";background:radial-gradient(circle at 35% 30%, #f3d878, var(--brass-dim) 70%, #4a3610 100%);border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:0 1px 2px #0009}.panel-brass:before{top:10px;left:10px}.panel-brass:after{bottom:10px;right:10px}.btn{font-family:var(--serif);letter-spacing:.02em;cursor:pointer;transition:transform .18s var(--ease-panel), box-shadow .18s var(--ease-panel);border:1px solid #0000;border-radius:999px;padding:13px 26px;font-size:16px;font-weight:600;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn--brass{background:linear-gradient(155deg, var(--brass-bright), var(--brass) 55%, var(--brass-dim));color:#2a1c05;text-shadow:0 1px #ffffff59;border-color:#fff0c880;box-shadow:0 6px 18px #00000073,inset 0 1px #fff6}.btn--brass:after{content:"";background:linear-gradient(115deg,#0000 40%,#ffffff8c 50%,#0000 60%);transition:transform .65s;position:absolute;inset:0;transform:translate(-120%)}.btn--brass:hover:after{transform:translate(120%)}.btn--brass:hover{box-shadow:0 8px 22px #00000080,inset 0 1px #fff6}.btn--ghost{color:var(--cream);background:0 0;border-color:#c9a22773}.btn--ghost:hover{background:#c9a2271f}.icon-btn{width:38px;height:38px;color:var(--brass-bright);cursor:pointer;background:#6b2f1e8c;border:1px solid #c9a22773;border-radius:50%;justify-content:center;align-items:center;font-size:16px;transition:background .18s,transform .18s;display:flex}.icon-btn:hover{background:#c9a22738;transform:translateY(-1px)}.hidden{display:none!important}.screens{z-index:30;pointer-events:none;position:fixed;inset:0}.screen{opacity:0;pointer-events:none;filter:blur(4px);visibility:hidden;transition:opacity var(--dur) var(--ease-panel), transform var(--dur) var(--ease-panel), filter var(--dur) var(--ease-panel), visibility 0s linear var(--dur);padding:max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(10px)saturate(1.1);backdrop-filter:blur(10px)saturate(1.1);background:radial-gradient(at 50% 20%,#6b2f1e38,#0000 60%),#080506b8;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow-y:auto;transform:translateY(10px)scale(.99)}.screen--active{opacity:1;pointer-events:auto;filter:blur();visibility:visible;transition:opacity var(--dur) var(--ease-panel), transform var(--dur) var(--ease-panel), filter var(--dur) var(--ease-panel), visibility 0s linear 0s;transform:translateY(0)scale(1)}.screen--splash{cursor:pointer;background:radial-gradient(at 50% 35%,#c9a22729,#0000 60%),#0d0a10}.splash-inner{text-align:center;animation:splash-rise .9s var(--ease-panel) both}.splash-frog{filter:drop-shadow(0 6px 18px #e6c34f59);margin-bottom:6px;font-size:56px;animation:2.4s ease-in-out infinite splash-hop}.splash-title{font-family:var(--serif);color:var(--brass-bright);letter-spacing:.01em;text-shadow:0 0 40px #e6c34f66,0 6px 20px #0009;margin:0;font-size:clamp(48px,12vw,88px);font-weight:800}.splash-tagline{font-family:var(--serif);color:var(--cream-dim);margin:8px 0 30px;font-size:17px;font-style:italic}.splash-loading{letter-spacing:.18em;text-transform:uppercase;color:var(--brass-dim);font-size:11px;animation:1.6s ease-in-out infinite splash-pulse}@keyframes splash-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes splash-hop{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-8px)rotate(-4deg)}}@keyframes splash-pulse{0%,to{opacity:.4}50%{opacity:.9}}.menu-shell{flex-direction:column;align-items:center;gap:28px;width:min(460px,100%);display:flex}.menu-header{text-align:center}.menu-title{font-family:var(--serif);color:var(--brass-bright);text-shadow:0 0 30px #e6c34f4d,0 4px 14px #0009;margin:0;font-size:clamp(40px,10vw,60px);font-weight:800}.menu-subtitle{font-family:var(--serif);color:var(--cream-dim);margin:6px 0 0;font-size:15px;font-style:italic}.mode-cards{flex-direction:column;gap:14px;width:100%;display:flex}.mode-card{text-align:left;cursor:pointer;color:var(--cream);animation:card-in .42s var(--ease-panel) both;animation-delay:calc(var(--stagger,0) * 70ms);transition:transform .2s var(--ease-panel), border-color .2s ease;background:linear-gradient(165deg,#401c11f0,#1a100bf5);border:1px solid #c9a22761;border-radius:18px;flex-direction:column;gap:4px;padding:18px 22px;display:flex;position:relative;box-shadow:inset 0 1px #e6c34f2e,inset 0 -1px #0006,0 18px 50px #0000008c}.mode-card:before,.mode-card:after{content:"";background:radial-gradient(circle at 35% 30%, #f3d878, var(--brass-dim) 70%, #4a3610 100%);border-radius:50%;width:6px;height:6px;position:absolute}.mode-card:before{top:9px;left:9px}.mode-card:after{bottom:9px;right:9px}.mode-card:hover{border-color:#e6c34fb3;transform:translateY(-2px)}.mode-card__label{font-family:var(--serif);color:var(--brass-bright);font-size:22px;font-weight:700}.mode-card__desc{color:var(--cream-dim);font-size:13px}.mode-card__best{letter-spacing:.06em;text-transform:uppercase;color:var(--brass-dim);margin-top:4px;font-size:11px}@keyframes card-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.menu-footer{justify-content:center;align-items:center;gap:14px;width:100%;display:flex}.menu-footer__text{color:var(--cream-dim);opacity:.7;font-size:11px;font-style:italic;font-family:var(--serif)}.setup-shell{flex-direction:column;align-items:stretch;gap:16px;width:min(480px,100%);max-width:100%;display:flex}.setup-back{align-self:flex-start}.setup-title{font-family:var(--serif);color:var(--brass-bright);margin:0;font-size:clamp(26px,6vw,34px);font-weight:700}.setup-subtitle{color:var(--cream-dim);margin:-8px 0 4px;font-size:14px}.setup-body{flex-direction:column;gap:10px;display:flex}.setup-start{align-self:stretch}.field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--brass-dim);margin-top:6px;font-size:12px}.text-input{color:var(--cream);font-size:16px;font-family:var(--sans);background:#00000047;border:1px solid #c9a22759;border-radius:10px;outline:none;padding:11px 14px;transition:border-color .18s,box-shadow .18s}.text-input:focus{border-color:var(--brass-bright);box-shadow:0 0 0 3px #e6c34f2e}.difficulty-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.difficulty-coin{cursor:pointer;color:var(--cream);background:linear-gradient(165deg,#401c11d9,#1a100beb);border:1.5px solid #c9a2274d;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex}.difficulty-coin__face{width:34px;height:34px;font-family:var(--serif);color:var(--mahogany-deep);background:radial-gradient(circle at 35% 30%, var(--brass-bright), var(--brass) 60%, var(--brass-dim));border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:800;display:flex;box-shadow:0 2px 6px #00000080}.difficulty-coin__name{font-family:var(--serif);font-size:14px;font-weight:700}.difficulty-coin__desc{color:var(--cream-dim);text-align:center;font-size:10.5px;line-height:1.3}.difficulty-coin--selected{border-color:var(--brass-bright);transform:translateY(-2px);box-shadow:0 8px 18px #00000073,0 0 0 1px #e6c34f59}.difficulty-coin--selected .difficulty-coin__face{animation:coin-spin .5s var(--ease-panel)}@keyframes coin-spin{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}.passplay-list{flex-direction:column;gap:8px;display:flex}.passplay-row{align-items:center;gap:8px;display:flex}.passplay-row .text-input{flex:1}.passplay-remove{width:36px;height:36px;color:var(--cream-dim);cursor:pointer;background:#00000040;border:1px solid #c9a22759;border-radius:50%;flex-shrink:0}.passplay-remove:hover{color:var(--brass-bright);border-color:var(--brass-bright)}.passplay-add{margin-top:4px}.end-shell{flex-direction:column;align-items:stretch;gap:16px;width:min(520px,100%);max-height:100%;display:flex}.end-title{font-family:var(--serif);color:var(--brass-bright);text-align:center;margin:0;font-size:clamp(30px,7vw,42px);font-weight:800}.end-winner{font-family:var(--serif);text-align:center;color:var(--cream);background:#c9a2271f;border:1px solid #c9a22759;border-radius:12px;padding:10px;font-size:19px;font-style:italic;font-weight:700}.end-table{flex-direction:column;gap:2px;display:flex}.ledger-row{color:var(--cream);font-size:13px;font-family:var(--sans);text-align:left;background:#0000002e;border:none;grid-template-columns:1.6fr 1fr .7fr 1fr;align-items:center;gap:6px;padding:10px 12px;display:grid}.ledger-row:first-child{border-radius:10px 10px 0 0}.ledger-row:last-child{border-radius:0 0 10px 10px}.ledger-row--head{letter-spacing:.08em;text-transform:uppercase;color:var(--brass-dim);background:#00000052;font-size:10.5px}.ledger-row--player{cursor:pointer;border-top:1px solid #ffffff0d;transition:background .15s}.ledger-row--player:hover{background:#c9a2271f}.ledger-row--winner{color:var(--brass-bright);font-weight:600}.ledger-row--selected{background:#c9a22729}.end-perhole{background:#0000002e;border-radius:10px;max-height:220px;padding:10px 12px;overflow-y:auto}.end-perhole__head{font-family:var(--serif);color:var(--brass-bright);margin-bottom:6px;font-size:14px;font-weight:700}.end-actions{gap:10px;display:flex}.end-actions .btn{flex:1}.settings-body{flex-direction:column;gap:14px;display:flex}.settings-row{background:#00000029;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.settings-row__label{color:var(--cream);flex-direction:column;gap:2px;font-size:14px;display:flex}.settings-row__label small{color:var(--cream-dim);font-size:11px;font-weight:400}.settings-row--volume{align-items:center}.pill-switch{background:#0000004d;border-radius:999px;gap:2px;padding:3px;display:flex}.pill-switch button{color:var(--cream-dim);letter-spacing:.03em;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:7px 16px;font-size:12.5px;font-weight:600;transition:background .18s,color .18s}.pill-switch__active{background:linear-gradient(155deg, var(--brass-bright), var(--brass));color:var(--mahogany-deep)}.coin-toggle{appearance:none;cursor:pointer;background:#00000059;border:1px solid #c9a2274d;border-radius:999px;flex-shrink:0;width:52px;height:30px;padding:0;transition:background .22s;position:relative}.coin-toggle:focus-visible{outline:2px solid var(--brass-bright);outline-offset:2px}.coin-toggle--on{background:#c9a22747}.coin-toggle__knob{background:radial-gradient(circle at 35% 30%, var(--brass-bright), var(--brass) 60%, var(--brass-dim));width:22px;height:22px;transition:transform .26s var(--ease-panel);transform-style:preserve-3d;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #00000080}.coin-toggle--on .coin-toggle__knob{transform:translate(22px)rotateY(360deg)}.volume-slider{--fill:50%;appearance:none;cursor:pointer;background:0 0;flex:1;min-width:90px;height:20px}.volume-slider:focus-visible{outline-offset:3px;border-radius:999px;outline:2px solid #e6c34f99}.volume-slider::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--brass-bright) 0%, var(--brass) var(--fill), #0006 var(--fill), #0006 100%);border:1px solid #c9a2274d;border-radius:999px;height:6px;box-shadow:inset 0 1px #00000059}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;background:radial-gradient(circle at 35% 30%, var(--brass-bright), var(--brass) 60%, var(--brass-dim));cursor:pointer;width:18px;height:18px;transition:transform .15s var(--ease-panel);border:none;border-radius:50%;margin-top:-6px;box-shadow:0 2px 5px #0000008c,0 0 0 1px #fff0c880}.volume-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.volume-slider::-moz-range-track{background:linear-gradient(to right, var(--brass-bright) 0%, var(--brass) var(--fill), #0006 var(--fill), #0006 100%);border:1px solid #c9a2274d;border-radius:999px;height:6px;box-shadow:inset 0 1px #00000059}.volume-slider::-moz-range-thumb{background:radial-gradient(circle at 35% 30%, var(--brass-bright), var(--brass) 60%, var(--brass-dim));cursor:pointer;border:none;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 5px #0000008c,0 0 0 1px #fff0c880}.settings-stats{margin-top:6px}.settings-stats__title{font-family:var(--serif);color:var(--brass-bright);margin-bottom:8px;font-size:14px;font-weight:700}.settings-stats__grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.lifetime-stat{text-align:center;background:#0003;border-radius:10px;flex-direction:column;gap:2px;padding:10px 6px;display:flex}.lifetime-stat__value{font-family:var(--serif);color:var(--brass-bright);font-size:20px;font-weight:800}.lifetime-stat__label{letter-spacing:.05em;text-transform:uppercase;color:var(--cream-dim);font-size:10px}.howto-steps{flex-direction:column;gap:14px;display:flex}.howto-step{animation:card-in .42s var(--ease-panel) both;animation-delay:calc(var(--stagger,0) * 90ms);background:#00000029;border-radius:14px;align-items:flex-start;gap:14px;padding:14px;display:flex}.howto-step__icon{width:52px;height:52px;color:var(--brass-bright);flex-shrink:0}.howto-step__title{font-family:var(--serif);color:var(--brass-bright);margin-bottom:3px;font-size:15px;font-weight:700}.howto-step__body{color:var(--cream-dim);font-size:13px;line-height:1.45}.hud{pointer-events:none;z-index:10;padding:max(14px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));visibility:visible;flex-direction:column;transition:opacity .2s,visibility linear;display:flex;position:fixed;inset:0}.hud--hidden{opacity:0;pointer-events:none;visibility:hidden;transition:opacity .2s,visibility 0s linear .2s}.hud-top{align-items:flex-start;gap:10px;display:flex}.hud-menu-btn{pointer-events:auto;width:38px;height:38px;color:var(--brass-bright);cursor:pointer;background:#1a100bb3;border:1px solid #c9a22780;border-radius:50%;flex-shrink:0;font-size:15px}.hud-chips{flex-wrap:wrap;flex:1;gap:8px;display:flex}.hud-chip{pointer-events:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(160deg,#6b2f1ee0,#401c11e0);border:1px solid #c9a2278c;border-radius:12px;flex-direction:column;align-items:center;min-width:62px;padding:8px 14px;display:flex;box-shadow:0 4px 14px #00000059}.hud-chip--sapo{border-color:#e6c34fd9}.hud-label{letter-spacing:.09em;text-transform:uppercase;color:var(--cream);opacity:.75;font-size:10px}.hud-value{font-family:var(--serif);color:var(--brass-bright);font-size:19px;font-weight:700;line-height:1.25}.player-chip{background:linear-gradient(160deg,#6b2f1ed1,#401c11db);border:1px solid #c9a22766;border-radius:12px;flex-direction:column;min-width:74px;padding:6px 12px;transition:border-color .2s,transform .2s;display:flex}.player-chip__name{letter-spacing:.03em;color:var(--cream-dim);white-space:nowrap;text-overflow:ellipsis;max-width:110px;font-size:10px;overflow:hidden}.player-chip__score{font-family:var(--serif);color:var(--cream);font-size:17px;font-weight:700}.player-chip--active{border-color:var(--brass-bright);transform:translateY(-1px);box-shadow:0 4px 14px #0006,0 0 0 1px #e6c34f4d}.player-chip--active .player-chip__score{color:var(--brass-bright)}.hud-round{pointer-events:auto;font-family:var(--serif);color:var(--cream-dim);white-space:nowrap;background:#140c0a99;border:1px solid #c9a22759;border-radius:10px;align-self:flex-start;padding:8px 12px;font-size:12px}.hud-turn-row{align-self:flex-start;align-items:center;gap:10px;margin-top:8px;display:flex}.hud-turn-chip{font-family:var(--serif);color:var(--cream);background:#140c0a8c;border-radius:999px;padding:5px 12px;font-size:14px;font-style:italic}.hud-turn-chip--ai{color:var(--brass-bright)}.hud-dots{gap:4px;display:flex}.coin-dot{background:0 0;border:1.4px solid #e6c34f8c;border-radius:50%;width:9px;height:9px;transition:background .2s,transform .2s}.coin-dot--spent{background:radial-gradient(circle at 35% 30%, var(--brass-bright), var(--brass));transform:scale(.92)}.hud-last{font-family:var(--serif);color:var(--cream);background:#140c0a8c;border-radius:8px;align-self:flex-start;min-height:1.4em;margin-top:8px;padding:4px 10px;font-size:15px}.hud-last:empty{background:0 0;min-height:0;padding:0}.hud-practice-tools{pointer-events:auto;top:max(14px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));gap:8px;display:flex;position:absolute}.hud-pill-btn{color:var(--brass-bright);font-family:var(--serif);cursor:pointer;background:#1a100bb3;border:1px solid #c9a22780;border-radius:999px;padding:8px 14px;font-size:12px;transition:background .18s,border-color .18s}.hud-pill-btn--active{background:linear-gradient(155deg, var(--brass-bright), var(--brass));color:var(--mahogany-deep);border-color:#fff0c899}.throw-hint{bottom:max(18px, env(safe-area-inset-bottom));color:var(--cream);opacity:.55;letter-spacing:.03em;text-align:center;text-shadow:0 1px 3px #0009;font-size:12px;position:absolute;left:50%;transform:translate(-50%)}.pass-banner{z-index:15;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .26s var(--ease-panel);background:#060405db;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pass-banner--show{opacity:1;pointer-events:auto}.pass-banner__card{text-align:center;background:linear-gradient(165deg,#401c11f5,#1a100bfa);border:1px solid #c9a22766;border-radius:20px;max-width:320px;padding:32px 30px;box-shadow:0 20px 60px #0009}.pass-banner__title{font-family:var(--serif);color:var(--brass-bright);font-size:26px;font-weight:800}.pass-banner__subtitle{color:var(--cream);margin:8px 0 20px;font-size:14px}.context-loss-overlay{z-index:50;background:#060405d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.context-loss-overlay__card{text-align:center;color:var(--cream);font-family:var(--sans);gap:10px;padding:28px 32px;display:grid}.context-loss-overlay__card button{border:1px solid var(--brass);color:var(--brass-bright);cursor:pointer;background:#c9a2272e;border-radius:999px;margin-top:6px;padding:10px 26px;font-weight:700}.quit-confirm{z-index:16;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .22s var(--ease-panel);background:#060405b8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.quit-confirm--show{opacity:1;pointer-events:auto}.quit-confirm__card{text-align:center;width:min(340px,100%);padding:28px 26px}.quit-confirm__title{font-family:var(--serif);color:var(--brass-bright);font-size:22px;font-weight:800}.quit-confirm__body{color:var(--cream-dim);margin:10px 0 22px;font-size:13.5px;line-height:1.4}.quit-confirm__actions{gap:10px;display:flex}.quit-confirm__actions .btn{flex:1}.stats-drawer{z-index:14;opacity:0;pointer-events:none;background:#0604058c;justify-content:center;align-items:flex-end;transition:opacity .26s;display:flex;position:fixed;inset:0}.stats-drawer--show{opacity:1;pointer-events:auto}.stats-drawer__card{width:min(420px,100%);max-height:70vh;padding:16px 18px max(16px, env(safe-area-inset-bottom));transition:transform .32s var(--ease-panel);background:linear-gradient(165deg,#401c11f7,#1a100bfa);border:1px solid #c9a22766;border-radius:20px 20px 0 0;flex-direction:column;display:flex;transform:translateY(100%)}.stats-drawer--show .stats-drawer__card{transform:translateY(0)}.stats-drawer__head{font-family:var(--serif);color:var(--brass-bright);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:16px;font-weight:700;display:flex}.stats-drawer__close{color:var(--cream-dim);cursor:pointer;background:0 0;border:none;font-size:16px}.stats-drawer__body{overflow-y:auto}.stats-row{color:var(--cream);border-bottom:1px solid #ffffff0f;grid-template-columns:1.8fr .7fr .9fr;gap:8px;padding:7px 4px;font-size:13px;display:grid}.stats-row--head{letter-spacing:.06em;text-transform:uppercase;color:var(--brass-dim);border-bottom:1px solid #c9a2274d;font-size:10.5px}.stats-empty{color:var(--cream-dim);padding:8px 4px;font-size:13px}.power-meter{right:max(20px, env(safe-area-inset-right));opacity:0;background:#140c0a8c;border:1px solid #c9a22766;border-radius:8px;width:14px;height:140px;transition:opacity .2s;position:absolute;bottom:20%;overflow:hidden}.power-meter--active{opacity:1}.power-meter__fill{transform-origin:bottom;background:linear-gradient(180deg, var(--brass-bright), var(--mahogany));height:100%;position:absolute;bottom:0;left:0;right:0;transform:scaleY(0)}.popup-layer{pointer-events:none;z-index:20;position:fixed;inset:0;overflow:hidden}.score-popup{font-family:var(--serif);color:var(--brass-bright);text-shadow:0 2px 6px #000000b3,0 0 12px #e6c34f80;white-space:nowrap;font-size:22px;font-weight:700;animation:1.1s ease-out forwards popup-float;position:absolute;transform:translate(-50%,-50%)}.score-popup--big{color:var(--cream);text-shadow:0 2px 10px #000c,0 0 24px #e6c34fd9;font-size:34px}@keyframes popup-float{0%{opacity:0;transform:translate(-50%,-30%)scale(.85)}15%{opacity:1;transform:translate(-50%,-60%)scale(1.05)}to{opacity:0;transform:translate(-50%,-150%)scale(1)}}.sapo-banner{font-family:var(--serif);letter-spacing:.04em;color:var(--brass-bright);text-shadow:0 0 30px #e6c34fe6,0 4px 18px #000000b3;opacity:0;pointer-events:none;font-size:clamp(42px,12vw,96px);font-weight:800;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)scale(.6)}.sapo-banner--show{animation:1.6s cubic-bezier(.2,.9,.25,1) forwards sapo-pop}@keyframes sapo-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)rotate(-3deg)}12%{opacity:1;transform:translate(-50%,-50%)scale(1.15)rotate(2deg)}25%{transform:translate(-50%,-50%)scale(1)rotate(0)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.05)rotate(0)}}.vignette{pointer-events:none;z-index:5;background:radial-gradient(at 50% 60%,#0000 45%,#0503068c 100%);position:fixed;inset:0}@media (width<=420px){.hud-chip{min-width:52px;padding:6px 9px}.hud-value{font-size:16px}.difficulty-grid{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){.screen,.mode-card,.howto-step,.btn,.coin-toggle__knob{transition:none!important;animation:none!important}}
