:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,sans-serif}*{box-sizing:border-box}html,body,#__next{width:100%;min-height:100%;margin:0}body{color:#111;overscroll-behavior:none;background:#d6d6cd}button,a{font:inherit}button{appearance:none}a{color:inherit}h1,h2,h3,p{margin:0}
.app-shell,.not-found-page{min-height:100dvh;position:relative;overflow:hidden}.app-shell{touch-action:none}.app-shell--loading,.game-canvas,.game-canvas__surface,.game-canvas--loading{width:100%;height:100%;position:absolute;inset:0}.game-canvas--loading{background:#d6d6cd}.ui-layer{z-index:1;pointer-events:none;grid-template-rows:1fr;min-height:100dvh;display:grid;position:relative}.ui-layer>*{grid-area:1/1}.play-overlay{grid-template-rows:auto 1fr auto;gap:12px;min-height:100dvh;padding:14px;display:grid}.screen-shell,.modal-shell,.not-found-page{place-items:center;min-height:100dvh;padding:16px;display:grid}.screen-shell,.modal-shell,.top-hud,.problem-banner,.choice-bar,.not-found-panel,.flat-panel,.flat-button,.choice-button,.toggle-row{pointer-events:auto}.flat-panel,.flat-strip{background:#f2eedf;border:2px solid #111;box-shadow:6px 6px #11111129}.flat-panel{width:min(100%,32rem);padding:18px}.flat-panel--compact{padding:14px}.flat-panel__kicker{letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:.74rem;font-weight:700}.flat-panel__title{margin-bottom:14px;font-size:clamp(1.75rem,5.8vw,2.5rem);font-weight:900;line-height:.95}.flat-panel__body{gap:14px;display:grid}.flat-panel__footer{margin-top:18px}.flat-button,.button,.choice-button,.toggle-row{color:#111;background:#f2eedf;border:2px solid #111;border-radius:0;transition:transform .14s,background-color .14s,color .14s,box-shadow .14s}.flat-button,.button{cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 16px;text-decoration:none;display:inline-flex;box-shadow:4px 4px #11111129}.flat-button:active,.button:active,.choice-button:active,.toggle-row:active{transform:translate(2px,2px);box-shadow:2px 2px #11111129}.flat-button--primary,.button,.choice-button.is-active{color:#f2eedf;background:#111}.flat-button--secondary{background:#ded7c5}.flat-button--danger{color:#f2eedf;background:#c84c2b}.flat-button--success{color:#f2eedf;background:#2f5e4e}.flat-button--sm{min-height:40px;padding-inline:12px;font-size:.86rem}.flat-button--md{min-height:46px;font-size:.96rem}.flat-button--lg{min-height:54px;font-size:1rem;font-weight:800}.flat-button--full{width:100%}.flat-button.is-active{color:#f2eedf;background:#111}.flat-button.is-disabled,.choice-button.is-disabled,.toggle-row.is-disabled,.flat-button:disabled,.choice-button:disabled,.toggle-row:disabled{opacity:.45;cursor:default}.top-hud,.problem-banner,.choice-bar{width:100%}.flat-strip{padding:12px}.top-hud{align-self:start;gap:10px;display:grid}.top-hud__row,.top-hud__stats,.screen-actions,.difficulty-row,.choice-bar__grid{gap:10px;display:grid}.top-hud__row{grid-template-columns:1fr auto;align-items:start}.top-hud__eyebrow{letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-weight:700}.top-hud__title{font-size:clamp(1.2rem,5vw,1.7rem);font-weight:900;line-height:1}.top-hud__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.top-hud__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hud-stat{background:#ded7c5;border:2px solid #111;gap:4px;padding:10px;display:grid}.hud-stat__label{font-size:.74rem;font-weight:700}.hud-stat__value{font-size:1.1rem;font-weight:900}.top-hud__progress{background:#ded7c5;border:2px solid #111;height:12px}.top-hud__progress-fill{background:#c84c2b;height:100%}.problem-banner{align-self:end;gap:6px;display:grid}.problem-banner__count{font-size:.8rem;font-weight:800}.problem-banner__prompt{font-size:clamp(1.2rem,5.5vw,2rem);font-weight:900;line-height:1}.problem-banner__meta{flex-wrap:wrap;gap:8px;font-size:.78rem;font-weight:700;display:flex}.problem-banner__meta span{background:#ded7c5;border:1px solid #111;padding:4px 6px}.choice-bar{align-self:end}.choice-bar__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-button{background:#f2eedf;place-items:center;gap:6px;min-height:88px;padding:12px 8px;display:grid;box-shadow:4px 4px #11111129}.choice-button__lane{font-size:.72rem;font-weight:800}.choice-button__value{font-size:clamp(1.4rem,6vw,2rem);line-height:1}.screen-panel,.settings-panel,.not-found-panel{width:min(100%,34rem)}.screen-shell--center{align-items:center}.screen-lead{font-size:1rem;line-height:1.45}.screen-actions{grid-template-columns:1fr}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.info-card,.result-strip{background:#ded7c5;border:2px solid #111;gap:6px;padding:12px;display:grid}.info-card__label,.result-strip__title{text-transform:uppercase;font-size:.75rem;font-weight:700}.info-card__value{font-size:1.18rem;font-weight:900}.modal-shell{z-index:2;background:#1111111f}.settings-group,.settings-list{gap:10px;display:grid}.settings-group__title{text-transform:uppercase;font-size:.82rem;font-weight:800}.difficulty-row{grid-template-columns:repeat(3,minmax(0,1fr))}.toggle-row{text-align:left;grid-template-columns:1fr auto;gap:10px;width:100%;padding:12px;display:grid;box-shadow:4px 4px #11111129}.toggle-row.is-checked{background:#ded7c5}.toggle-row__copy{gap:4px;display:grid}.toggle-row__label{font-size:.98rem;font-weight:800}.toggle-row__description{font-size:.78rem;line-height:1.35}.toggle-row__indicator{color:#f2eedf;background:#111;border:2px solid #111;align-self:center;padding:4px 8px;font-size:.78rem;font-weight:800}.not-found-page{place-items:center}.not-found-panel{gap:14px;display:grid}.ui-layer--reduced-motion .flat-button,.ui-layer--reduced-motion .button,.ui-layer--reduced-motion .choice-button,.ui-layer--reduced-motion .toggle-row{transition:none}@media (min-width:720px){.play-overlay{padding:18px}.top-hud,.problem-banner,.choice-bar{max-width:34rem}.problem-banner,.choice-bar{justify-self:center}.screen-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
