:root{--ink:#f3e6c8;--ink-dim:#f3e6c89e;--gold:#c9a45c;--gold-deep:#8a6a2f;--night:#0b0806;--panel:#100b07d1;--serif:"Cormorant Garamond", "Times New Roman", serif;--caps:"Cinzel", "Trajan Pro", serif}*{box-sizing:border-box}html,body{background:var(--night);height:100%;color:var(--ink);font-family:var(--serif);margin:0;overflow:hidden}#viewport{width:100%;height:100%;display:block;position:fixed;inset:0}kbd{border:1px solid var(--gold-deep);min-width:1.6em;height:1.6em;font-family:var(--caps);color:var(--gold);background:#00000059;border-radius:3px;place-items:center;margin:0 .12em;padding:0 .35em;font-size:.72em;display:inline-grid}.hud{pointer-events:none;transition:opacity .6s;position:fixed;inset:0}.hud[data-idle=true] .hud-brand{opacity:.35}.hud-brand{text-shadow:0 1px 12px #000c;gap:2px;transition:opacity 1.2s;display:grid;position:absolute;top:clamp(16px,3vh,32px);left:clamp(16px,3vw,40px)}.hud-brand__name{font-family:var(--caps);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-size:clamp(15px,1.4vw,20px)}.hud-brand__sub{color:var(--ink-dim);letter-spacing:.06em;font-size:clamp(12px,1vw,15px);font-style:italic}.hud-reticle{background:#f3e6c88c;border-radius:50%;width:4px;height:4px;margin:-2px 0 0 -2px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 1px #00000059}.hud-prompt{font-family:var(--caps);letter-spacing:.18em;text-transform:uppercase;background:linear-gradient(90deg,#0000,#0a0704b3 18% 82%,#0000);align-items:center;gap:.6em;padding:.5em 1.1em;font-size:14px;display:flex;position:absolute;bottom:clamp(48px,12vh,120px);left:50%;translate:-50%}.curtain{z-index:10;background:radial-gradient(at 50% 40%,#3c240e8c,#0000 60%),#080503eb;place-items:center;padding:16px;transition:opacity 1.4s,visibility 1.4s;display:grid;position:fixed;inset:0}.curtain[data-hidden=true]{opacity:0;visibility:hidden}.curtain__inner{text-align:center;max-width:560px}.curtain__eyebrow{font-family:var(--caps);letter-spacing:.4em;color:var(--ink-dim);text-transform:uppercase;margin:0;font-size:12px}.curtain__title{font-family:var(--caps);letter-spacing:.12em;color:var(--gold);text-shadow:0 0 40px #c9a45c40;margin:.2em 0 .4em;font-size:clamp(34px,6vw,64px);font-weight:400}.curtain__status{min-height:1.4em;color:var(--ink-dim);font-size:18px;font-style:italic}.curtain__enter{font-family:var(--caps);letter-spacing:.3em;text-transform:uppercase;color:var(--ink);border:1px solid var(--gold);cursor:pointer;background:linear-gradient(#c9a45c2e,#c9a45c0d);margin:12px 0 20px;padding:.75em 2.4em;font-size:14px;transition:background .25s,opacity .25s}.curtain__enter:hover:not(:disabled),.curtain__enter:focus-visible{background:#c9a45c4d;outline:none}.curtain__enter:disabled{opacity:.35;cursor:progress}.curtain__hint{color:var(--ink-dim);font-size:15px;line-height:2}.menu{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9;background:#0503028c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.menu[hidden]{display:none}.menu__panel{background:var(--panel);outline-offset:5px;text-align:center;border:1px solid #c9a45c73;outline:1px solid #c9a45c2e;gap:16px;width:min(440px,100%);padding:28px 32px;display:grid}.menu__title{font-family:var(--caps);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin:0 0 4px;font-weight:400}.menu__row{text-align:left;gap:6px;font-size:17px;display:grid}.menu__row select,.menu__row input{accent-color:var(--gold);width:100%}.menu__row select{font:inherit;color:var(--ink);border:1px solid var(--gold-deep);background:#1a120b;padding:6px 8px;font-size:15px}.menu__foot{color:var(--ink-dim);margin:0;font-size:13px;font-style:italic}.hud-prompt[hidden]{display:none}.hud-toast{color:var(--ink);text-shadow:0 1px 10px #000000e6;opacity:0;padding:.5em 1.4em;font-size:19px;font-style:italic;transition:opacity .5s;position:absolute;top:22%;left:50%;translate:-50%}.hud-toast[data-show=true]{opacity:1}.game{width:min(1100px,100% - 24px);max-height:none;color:var(--ink);font-family:var(--serif);z-index:20;background:0 0;border:none;margin:0 auto 14px;padding:0;position:fixed;inset:auto 0 0;overflow:visible}.game__bar{-webkit-backdrop-filter:blur(6px)saturate(1.1);backdrop-filter:blur(6px)saturate(1.1);outline-offset:4px;background:linear-gradient(#120c08c7,#090604db);border:1px solid #c9a45c73;outline:1px solid #c9a45c24;padding:10px 16px 12px;animation:.32s ease-out both bar-in;box-shadow:0 16px 50px #0000008c}@keyframes bar-in{0%{opacity:0;transform:translateY(18px)}}.game__meta{align-items:baseline;gap:18px;min-height:1.6em;display:flex}.game__title{font-family:var(--caps);letter-spacing:.26em;text-transform:uppercase;color:var(--gold);white-space:nowrap;margin:0;font-size:14px;font-weight:400}.game__status{text-align:center;color:var(--ink);flex:1;margin:0;font-size:18px;font-style:italic;transition:color .2s}.game__status[data-tone=win]{color:#ecc977;text-shadow:0 0 18px #ecc97759}.game__status[data-tone=lose]{color:#d9998a}.game__chips{color:var(--ink-dim);white-space:nowrap;font-size:15px}.game__chips b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}.game__controls{flex-wrap:wrap;align-items:center;gap:16px;margin-top:8px;display:flex}.game__body{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.game__info{color:var(--ink-dim);font-variant-numeric:tabular-nums;margin-right:6px;font-size:15px}.game__info b{color:var(--ink);font-weight:600}.game__sep{background:#c9a45c40;align-self:stretch;width:1px;margin:0 4px}.game button{font-family:var(--caps);letter-spacing:.18em;text-transform:uppercase;color:var(--ink);border:1px solid var(--gold-deep);cursor:pointer;background:linear-gradient(#c9a45c38,#c9a45c0f);padding:.62em 1.2em;font-size:12px;transition:background .12s,opacity .16s}.game button:hover:not(:disabled),.game button:focus-visible{outline:1px solid var(--gold);outline-offset:2px;background:#c9a45c57}.game button:disabled{opacity:.35;cursor:default}.game button.primary{border-color:var(--gold);background:linear-gradient(#c9a45c80,#a076304d)}.game__leave{padding:.5em .9em!important}.game__leave kbd{opacity:.7;margin-left:4px;font-size:10px}.game__stakes{gap:6px;display:flex}.game .chip{--c:#1f4f95;background:radial-gradient(circle at 50% 50%, #eee6d4 0 38%, var(--c) 39% 100%), var(--c);width:42px;height:42px;box-shadow:0 2px 6px #00000080, inset 0 0 0 2px var(--c);letter-spacing:0;font-family:var(--serif);border:3px dashed #f1ede4e6;border-radius:50%;place-items:center;padding:0;font-size:12px;font-weight:700;transition:transform .12s;display:grid}.game .chip span{color:var(--c)}.game .chip--1{--c:#1d7a3e}.game .chip--2{--c:#161412}.game .chip--3{--c:#5a2a86}.game .chip[aria-checked=true]{box-shadow:0 8px 14px #0000008c, 0 0 0 2px var(--gold), inset 0 0 0 2px var(--c);transform:translateY(-5px)}.game .chip:hover:not(:disabled){background:radial-gradient(circle at 50% 50%, #fff7e4 0 38%, var(--c) 39% 100%), var(--c)}.rl-last{font-family:var(--caps);border:1px solid var(--gold);border-radius:50%;place-items:center;width:2.1em;height:2.1em;font-size:18px;display:inline-grid}.rl-history{font-variant-numeric:tabular-nums;color:var(--ink-dim);gap:5px;font-size:14px;display:inline-flex}.rl-history .r{color:#e07a7a}.rl-num-input{width:3.4em;color:var(--ink);border:1px solid var(--gold-deep);font:inherit;background:#00000059;padding:.35em .4em}.rl-hint{color:var(--ink-dim);font-size:13px;font-style:italic}@media (prefers-reduced-motion:reduce){.game__bar{animation:none}}@media (width<=760px){.game__meta{flex-wrap:wrap;gap:4px 12px}.game__status{text-align:left;flex-basis:100%;order:3;font-size:16px}.game .chip{width:36px;height:36px}}
