:root{color-scheme:dark;--bg:#121316;--panel:#1a1c20;--edge:#303137;--gold:#edc66e;--gold-dark:#9b7633;--mint:#8ae1c9;--coral:#f98986;--text:#f7f6f0;--muted:#b0b0b4;--mono:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",monospace;--body:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px}.svg-library{position:absolute;width:0;height:0;overflow:hidden}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:square;stroke-linejoin:miter;flex-shrink:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button,a,input,select,canvas{outline-offset:5px}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid var(--mint)}[hidden]{display:none!important}.page-shell{max-width:1370px;margin:0 auto;padding:0 54px}.site-header{height:114px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--edge);gap:20px}.brand{display:flex;align-items:center}.brand img{width:202px;height:auto}.arcade-label{display:flex;gap:14px;align-items:center;font-family:var(--mono);font-size:14px;letter-spacing:2px;color:var(--gold);margin-right:auto;margin-left:30px}.pixel-cross{font-size:25px;color:var(--gold)}.edition{color:#aaa6a0;font-size:12px;border:1px solid #454035;padding:5px 7px;letter-spacing:0}.icon-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;background:transparent;color:var(--muted);border:1px solid #3b3c42;border-radius:4px;font-size:13px}.icon-button svg{width:18px;height:18px}.icon-button[aria-pressed=true]{color:var(--gold)}.intro-line{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:34px 0 27px}.eyebrow{font-size:12px;font-family:var(--mono);letter-spacing:2px;color:var(--gold);font-weight:600}h1{font-size:38px;letter-spacing:-1.4px;margin:10px 0 0;font-weight:750}.title-dot{color:var(--gold)}.round-tag{font:12px var(--mono);letter-spacing:.3px;color:var(--muted);padding-bottom:6px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:24px}.game-panel{border:1px solid #484035;border-radius:8px;overflow:hidden;min-width:0;background:var(--panel)}.hud{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:17px 22px;background:#222226;border-bottom:1px solid #4d4435;height:84px}.hud-label{display:block;color:var(--muted);font:11px var(--mono);letter-spacing:1.6px;margin-bottom:6px}.hud strong{font:700 27px var(--mono);font-variant-numeric:tabular-nums;letter-spacing:1px}.hud-score strong{color:var(--gold)}.hud-center{text-align:center}.hud-lives svg{height:20px;width:20px;color:var(--coral);fill:var(--coral);stroke:#222226;margin-right:4px}.hud-lives svg.lost{color:#5a4445;fill:#5a4445}.compact{padding:10px}.compact:disabled{opacity:.35}.arena{position:relative;background:#111a21;aspect-ratio:900/570;overflow:hidden;isolation:isolate;background-size:cover;background-position:center}.arena:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#00000010 3px 4px);pointer-events:none;z-index:2}.arena canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;z-index:3;cursor:crosshair}.scene-shade{position:absolute;inset:0;background:linear-gradient(180deg,#10161ba0 0%,#0b101736 50%,#11181fa6 100%);z-index:1;pointer-events:none}.start-screen{position:absolute;inset:0;z-index:4;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 15px 82px;background:radial-gradient(ellipse,#0d141ebc,#11172140);pointer-events:none}.start-screen>*{pointer-events:auto}.tiny-tag{color:var(--gold);font:11px var(--mono);letter-spacing:2px}.game-title{font:900 clamp(28px,3.8vw,49px)/1.06 var(--mono);letter-spacing:-2px;color:#f6e6bf;text-shadow:3px 3px #3d3021,6px 6px #0008;margin:22px 0 10px}.game-title span{color:var(--gold)}.start-screen p{color:#ddd8ce;font-size:15px;line-height:1.6;margin:12px 0 24px}.primary-button{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--gold);color:#252019;border:1px solid #f5d488;border-bottom:4px solid var(--gold-dark);border-radius:4px;padding:13px 22px;font-size:15px;font-weight:750;transition:filter .15s,transform .15s;min-height:48px}.primary-button:hover{filter:brightness(1.1)}.primary-button:active{transform:translateY(2px)}.primary-button:disabled{opacity:.6}.start-button{font:700 16px var(--mono);padding:15px 34px;letter-spacing:.4px}.start-button svg{width:17px;height:17px;fill:currentColor}.start-hint{font:11px var(--mono);color:#d0cdc4;margin-top:19px}.arena-bottom{position:absolute;z-index:5;bottom:0;left:0;right:0;padding:17px 20px;display:flex;align-items:center;gap:16px;background:#111820d9;border-top:1px solid #ffffff12}.level-label{font:11px var(--mono);letter-spacing:1px;color:#bac1c4;flex:1}.help-meter{width:128px}.help-meter>span{font:9px var(--mono);letter-spacing:.4px;color:#cecec8}.meter{height:5px;background:#ffffff24;margin-top:7px;overflow:hidden}.meter>span{height:100%;display:block;background:var(--gold);width:0;transition:width .2s}.help-button{background:#eec66e0c;color:var(--gold);border:1px solid #d9b96566;font:11px var(--mono);padding:10px;display:flex;align-items:center;gap:7px;border-radius:3px}.help-button:disabled{opacity:.45}.help-button svg{width:16px;height:16px}kbd{font:9px var(--mono);padding:3px 4px;border:1px solid #ffffff20;border-radius:2px}.help-button:not(:disabled){background:#edc66e;color:#252019;border-color:#ffe4a0;box-shadow:0 0 16px #edc66e70;animation:help-ready-pulse 1.25s ease-in-out infinite}.arena-top{position:absolute;left:20px;right:20px;top:16px;display:flex;justify-content:space-between;gap:10px;color:#f8f2df;font:11px var(--mono);z-index:4;pointer-events:none}.arena-top>span{background:#15191fcc;padding:7px 9px;border:1px solid #ffffff19}.arena-top #combo-display{color:var(--mint)}.countdown{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;color:var(--gold);font:700 90px var(--mono);background:#0b1116a8;z-index:8;pointer-events:none;text-shadow:5px 5px #4f3d1d}.pause-screen{position:absolute;inset:0;background:#10161ef2;z-index:9;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:25px;text-align:center}.pause-screen h2{font-size:30px;margin:16px 0 26px}.how-to{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:19px 22px;border-top:1px solid #37383b;background:#1d1f23}.how-to>div{display:flex;align-items:center;gap:10px}.how-to svg{width:24px;height:24px}.how-to span{display:flex;flex-direction:column;gap:5px}.how-to b{font-size:12px;font-weight:600}.how-to small{font-size:11px;color:var(--muted)}.mint{color:var(--mint)}.coral{color:var(--coral)}.gold{color:var(--gold)}.ranking-panel{border:1px solid #37383d;border-radius:8px;background:var(--panel);display:flex;flex-direction:column;padding:23px 22px}.ranking-title{display:flex;align-items:center;gap:11px}.ranking-title svg{color:var(--gold);width:23px;height:23px}.ranking-title h2{font-size:18px;letter-spacing:-.3px;margin:0}.ranking-caption{font-size:12px;line-height:1.5;color:var(--muted);margin:9px 0 24px}.ranking-columns{display:flex;justify-content:space-between;font:10px var(--mono);letter-spacing:1px;color:var(--muted);padding:0 0 11px;border-bottom:1px solid #37383d}.leaderboard{list-style:none;margin:0 0 20px;padding:0;flex:1;min-height:150px}.leaderboard li:not(.empty-ranking){display:flex;align-items:center;gap:10px;border-bottom:1px solid #ffffff0b;padding:14px 0;font-size:13px}.leaderboard .rank-position{font:13px var(--mono);color:#8a8c91;min-width:16px}.leaderboard .rank-nick{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.leaderboard .rank-score{font:700 13px var(--mono);color:#e3e2df}.leaderboard li:first-child .rank-position,.leaderboard li:first-child .rank-score{color:var(--gold)}.leaderboard .own-result{background:#edc66e0c}.empty-ranking{padding-top:42px;color:#e0ddcf;line-height:1.8;font-size:14px;text-align:center}.empty-ranking span{color:var(--muted);font-size:12px}.your-best{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-top:1px solid #37383d}.your-best>span{font:10px var(--mono);color:var(--muted);letter-spacing:.7px}.your-best strong{font:700 18px var(--mono);color:var(--gold)}.your-best small{font-size:10px}.ranking-note{background:#242427;border:1px solid #3c3831;border-radius:5px;text-align:center;padding:14px 9px 17px;margin-top:13px}.ranking-note p{font-size:14px;line-height:1.6;margin:6px 0 11px}.ranking-note b{color:var(--gold)}.service-label{font:9px var(--mono);color:#c3bda9;letter-spacing:.3px}.below-game{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;color:var(--muted);padding:20px 0 27px}.below-game p{font-size:12px;line-height:1.7;margin:0;max-width:680px}.below-game p span{font:10px var(--mono);color:var(--gold);margin-right:12px}.below-game>span{font:10px var(--mono);white-space:nowrap;padding-top:3px;color:#8f9297}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0 28px;border-top:1px solid var(--edge);color:#a7a7ac;font-size:12px}footer>div{display:flex;align-items:center;gap:22px}.footer-divider{margin:0 14px;color:#55585e}.local-badge{font:9px var(--mono);letter-spacing:.4px;border:1px solid #404147;border-radius:3px;padding:5px 7px}footer a{color:#dedacb}dialog{width:min(900px,calc(100% - 32px));max-height:90dvh;overflow:auto;background:#1b1d21;color:var(--text);border:1px solid #6a5432;border-radius:10px;padding:32px;box-shadow:0 20px 100px #0009}dialog::backdrop{background:#080a10c9;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:16px;top:12px;font-size:30px;border:0;color:var(--muted);background:none;width:40px;height:40px}.result-heading{text-align:center;margin-bottom:25px}.result-heading h2{font-size:32px;letter-spacing:-.7px;margin:12px 0 8px}.result-heading p{color:var(--muted);font-size:14px;margin:5px 0 12px}.result-heading>strong{font:700 52px var(--mono);color:var(--gold)}.result-heading>strong small{font-size:15px}.result-stats{display:flex;gap:24px;justify-content:center;font-size:12px;color:var(--muted);margin-top:12px}.result-stats b{color:var(--mint)}.result-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:26px}.result-grid section{padding:23px;border:1px solid #3b3c40;border-radius:6px}.result-grid h3{font-size:23px;line-height:1.2;margin:6px 0 12px;letter-spacing:-.4px}.result-grid section>p{font-size:14px;color:var(--muted);line-height:1.5;margin:0 0 21px}.lead-section{background:#262523;border-color:#514737!important}.result-grid label:not(.consent){display:block;margin:13px 0 7px;font-size:13px;color:#dedbd3}.result-grid label span{color:#aeadac;font-size:11px}.result-grid input:not([type=checkbox]),.result-grid select{width:100%;min-width:0;background:#151619;border:1px solid #535257;border-radius:4px;color:var(--text);padding:11px 12px;font-size:14px}.result-grid input:focus,.result-grid select:focus{outline:1px solid var(--gold);border-color:var(--gold)}.result-grid input::placeholder{color:#89888a}.result-grid .primary-button{width:100%;margin-top:18px;font-size:14px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-hint{display:block;color:var(--muted);font-size:12px;margin-top:8px}.consent{display:flex;gap:9px;align-items:flex-start;margin-top:18px;line-height:1.5}.consent input{accent-color:var(--gold);min-width:17px;min-height:17px;margin-top:2px}.consent span{font-size:12px!important;color:#e2dccc!important}.local-disclosure{font-size:11px!important;line-height:1.5;color:#bfbcb5}.form-status{font-size:13px;line-height:1.5;min-height:1.5em;color:var(--mint);margin:12px 0 0}.form-status.error{color:var(--coral)}.secondary-button{background:transparent;border:1px solid #7e714f;border-radius:4px;color:var(--gold);padding:12px 20px;display:block;margin:24px auto 0;font-weight:650}.result-grid form.submitted input,.result-grid form.submitted select{opacity:.6}.arena.active .scene-shade{opacity:.7}body.reduced-motion .help-button{animation:none}@keyframes help-ready-pulse{0%,100%{transform:scale(1);box-shadow:0 0 16px #edc66e70,0 0 0 0 #edc66e30}50%{transform:scale(1.06);box-shadow:0 0 32px #edc66eb0,0 0 0 7px #edc66e12}}
@media(min-width:1400px){.intro-line{padding-top:40px}.game-title{font-size:51px}}
@media(max-width:1050px){.page-shell{padding:0 28px}.game-layout{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.ranking-panel{padding:20px 18px}.help-meter{width:100px}.level-label{display:none}.arena-bottom{justify-content:space-between}.hud{gap:12px;padding:15px}.hud strong{font-size:23px}.how-to{padding:16px 12px;gap:8px}.how-to svg{width:20px}.how-to small{font-size:10px}.how-to b{font-size:11px}.game-title{font-size:35px}.round-tag{font-size:10px}.start-screen{padding-bottom:65px}.start-screen p{margin:8px 0 16px;font-size:13px}.game-title{margin-top:15px}.start-hint{margin-top:13px}.below-game>span{display:none}}
@media(max-width:780px){.page-shell{padding:0 18px}.site-header{height:87px;gap:10px}.brand img{width:150px}.arcade-label{margin-left:8px;font-size:11px;gap:8px;letter-spacing:1px}.edition{display:none}.site-header .icon-button span{display:none}.intro-line{padding:26px 0 21px}h1{font-size:29px;letter-spacing:-1px}.eyebrow{font-size:10px}.round-tag{display:none}.game-layout{grid-template-columns:1fr}.arena{aspect-ratio:1.28}.game-title{font-size:43px}.start-screen p{font-size:14px}.hud{height:77px;padding:14px 17px}.hud-label{font-size:10px}.hud strong{font-size:24px}.hud-lives svg{width:18px;height:18px}.how-to{padding:15px 13px}.how-to>div{gap:7px}.how-to b{font-size:11px}.how-to small{font-size:10px;line-height:1.4}.ranking-panel{padding:22px}.leaderboard{min-height:0}.empty-ranking{padding:24px 0}.ranking-note{display:none}.ranking-caption{margin-bottom:18px}.your-best{padding-bottom:0}.below-game{padding:18px 0 23px}.below-game p{font-size:11px}footer{font-size:10px;flex-wrap:wrap;gap:12px;padding:18px 0 23px}footer>div{gap:14px}.local-badge{font-size:8px}.footer-divider{margin:0 8px}.result-grid{grid-template-columns:1fr;gap:15px}dialog{padding:25px 18px}.result-grid section{padding:20px}.result-heading h2{font-size:27px}.result-heading>strong{font-size:46px}}
@media(max-width:390px){.arcade-label .pixel-cross{display:none}.arcade-label{font-size:10px}.hud-label{letter-spacing:.3px;font-size:9px}.hud{gap:9px;padding:12px}.hud strong{font-size:21px}.game-title{font-size:35px}.help-button{font-size:10px;padding:9px 7px}.help-button kbd{display:none}.arena-bottom{padding:14px 12px}.how-to{gap:6px}.how-to svg{width:17px}.how-to b{font-size:10px}.how-to small{font-size:9px}.field-row{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Readable control labels and a taller mobile playing field. */
.how-to b{font-size:14px}.how-to small{font-size:12px}.ranking-caption{font-size:14px}.ranking-columns{font-size:12px}.leaderboard li:not(.empty-ranking){font-size:14px}.leaderboard .rank-position,.leaderboard .rank-score{font-size:14px}.empty-ranking span{font-size:13px}.service-label{font-size:11px}.hud-label{font-size:12px}.start-hint{font-size:12px}.below-game p{font-size:14px}.arena-top{font-size:12px}.help-meter>span{font-size:11px}.help-button{font-size:12px}.result-grid label:not(.consent){font-size:14px}.consent span{font-size:13px!important}.local-disclosure{font-size:12px!important}.save-score{align-self:start}
@media(max-width:1050px){.how-to b{font-size:12px}.how-to small{font-size:12px}.how-to>div{align-items:flex-start}.hud-label{font-size:11px}.help-button{font-size:11px}.arena-top{font-size:11px}.help-meter>span{font-size:10px}}
@media(max-width:780px){.arena{aspect-ratio:.82}.game-title{font-size:43px}.start-screen{padding-bottom:75px}.how-to{gap:12px;grid-template-columns:1fr}.how-to>div{align-items:center}.how-to span{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:8px}.how-to b,.how-to small{font-size:13px}.hud-label{font-size:11px}.help-button{font-size:11px}.below-game p{font-size:13px}.start-hint{font-size:11px}.arena-top{font-size:10px}.arena-top>span{padding:6px}.field-row{grid-template-columns:1fr}.hud-lives svg{width:17px;height:17px}.arena-bottom{padding:15px 12px}.help-meter{width:102px}}
@media(max-width:390px){.game-title{font-size:35px}.hud-label{font-size:10px}.help-button{font-size:10px}.help-button kbd{display:none}}

.help-meter>span{white-space:nowrap}@media(max-width:780px){.help-meter{width:115px}}

.blue{color:#9cd5ff}.specials-guide{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid #37383b;background:#222225;padding:15px 22px}.specials-guide>div{display:flex;align-items:center;gap:10px}.specials-guide span{display:flex;flex-direction:column;gap:5px}.specials-guide b{font-size:13px}.specials-guide small{font-size:12px;color:var(--muted)}.specials-guide svg{width:22px;height:22px}.result-stats{flex-wrap:wrap;gap:12px 20px}@media(max-width:780px){.specials-guide{grid-template-columns:1fr;gap:15px;padding:17px 13px}.specials-guide b{font-size:14px}}

/* Round rhythm and time-limited client work. */
.round-progress{height:3px;background:#363335}.round-progress>span{display:block;height:100%;width:0;background:var(--gold)}
.purple{color:#c6afff}.specials-guide{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.specials-guide small{line-height:1.5;font-size:11px}.specials-guide b{font-size:12px}
@media(max-width:780px){.specials-guide{grid-template-columns:1fr}.specials-guide b{font-size:14px}.specials-guide small{font-size:12px}.arena-top{left:9px;right:9px}.arena-top>span{padding:6px}.arena-top #phase-label{font-size:9px;letter-spacing:-.3px}.start-hint{max-width:250px;line-height:1.7}}

/* Public-facing first screen: one title, one action, optional instructions. */
.site-header{height:96px}.site-header .brand img{width:190px}main{padding-top:28px}.start-screen{padding:32px 24px;background:radial-gradient(ellipse,#0d141ecc,#11172160)}.start-screen .game-title{margin:0 0 18px;font-size:clamp(34px,4.5vw,60px);line-height:1.08}.start-screen p{max-width:300px;margin:0 0 26px;line-height:1.55;font-size:16px}.start-button{min-width:180px}.game-rules{border-top:1px solid #37383b;background:#1d1f23}.game-rules summary{padding:17px 22px;font-size:14px;color:#ddd7c8;cursor:pointer}.game-rules summary:hover{color:var(--gold)}.rules-content>p{font-size:13px;line-height:1.7;color:var(--muted);padding:0 22px;margin:4px 0 18px}.game-rules .how-to{border-top:0}.rules-content .rules-extra{margin-top:17px}.rules-controls{font:11px/1.7 var(--mono)}.ranking-panel .your-best{margin-top:auto}.ranking-panel{align-self:start;min-height:410px}.ranking-caption{margin-bottom:19px}footer{margin-top:24px}.local-disclosure a{text-decoration:underline;text-underline-offset:3px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.information-page{max-width:780px;margin:0 auto;padding:28px 24px 50px}.information-page h1{font-size:32px;margin:16px 0 24px}.information-page h2{font-size:20px;margin-top:30px}.information-page p,.information-page li{font-size:15px;line-height:1.75;color:#d3d1cd}.information-page a{text-decoration:underline;text-underline-offset:3px}.information-page .return-link{color:var(--gold);font-size:14px}.information-page .note{padding:16px;background:#252629;border:1px solid #404045;border-radius:5px}
@media(max-width:780px){.site-header{height:88px}main{padding-top:18px}.site-header .brand img{width:160px}.start-screen{padding:26px 18px}.start-screen .game-title{font-size:37px;margin-bottom:20px}.start-screen p{font-size:15px;max-width:240px}.game-rules summary{padding:16px 14px}.rules-content>p{padding:0 14px}.ranking-panel{min-height:300px}footer{margin-top:20px}.information-page h1{font-size:28px}}

/* Keep both contact actions visible in the desktop result view. */
@media(min-width:781px){dialog{padding:24px}.result-heading{margin-bottom:18px}.result-heading h2{font-size:28px;margin:8px 0}.result-heading>strong{font-size:42px}.result-heading p{margin-bottom:8px}.result-grid{gap:20px}.result-grid section{padding:18px}.result-grid h3{font-size:21px;margin-top:3px}.result-grid section>p{margin-bottom:12px}.consent{margin-top:12px}.secondary-button{margin-top:18px}}

.arena-bottom{justify-content:space-between}.help-meter{flex:1;max-width:150px}.hud-score{min-width:0}.hud strong{font-size:clamp(18px,2.1vw,27px)}
