:root{color-scheme:light;--font-display: "Italiana", "Bodoni Moda", Georgia, serif;--font-editorial: "Bodoni Moda", Georgia, serif;--font-ui: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--color-canvas: #d3dacc;--color-canvas-deep: #c9d2c2;--color-canvas-soft: #dee3d8;--color-surface: #f6f7f2;--color-surface-soft: #eef1ea;--color-ink: #1b2b26;--color-muted: #41544a;--color-brand: #5f5849;--color-brand-strong: #4a4438;--color-brand-soft: #e6e6df;--color-border: rgba(27, 43, 38, .28);--color-border-soft: rgba(27, 43, 38, .14);--color-success: #2f6d46;--color-success-soft: #e8f1eb;--color-danger: #a63a30;--color-danger-soft: #f8e9e7;--color-warning: #855b13;--color-warning-soft: #fff3d6;--type-micro: .59375rem;--type-label: .6875rem;--type-small: .78125rem;--type-body: .875rem;--type-display-s: 1.0625rem;--type-display-m: 1.375rem;--type-display-l: 2rem;--tracking-versals: .3em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: .5rem;--radius-md: .875rem;--radius-panel: 1rem;--radius-sheet: 1.25rem;--radius-lg: var(--radius-sheet);--radius-xl: 1.75rem;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(27, 43, 38, .05);--shadow-md: 0 18px 50px rgba(27, 43, 38, .14);--focus-ring: 0 0 0 3px rgba(95, 88, 73, .28);--content-max: 74rem;--control-height: 3.25rem;--mobile-inset: 1.125rem;--ease-standard: .18s ease}*,*:before,*:after{box-sizing:border-box}html{min-width:20rem;width:100%;overflow-x:clip;background:var(--color-canvas);text-size-adjust:100%}body{margin:0;width:100%;min-height:var(--app-viewport-height, 100dvh);font-family:var(--font-ui);line-height:1.5;color:var(--color-ink);background:linear-gradient(180deg,var(--color-canvas-deep) 0%,var(--color-canvas) 46%,var(--color-canvas-soft) 100%);-webkit-font-smoothing:antialiased}html:has(#home-view.is-music:not([hidden])){background:#0d1827}body:has(#home-view.is-music:not([hidden])){background:linear-gradient(160deg,#0d1827,#1b304b)}button,input,select,textarea{font:inherit}button,[role=button]{min-height:2.75rem;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-brand);outline-offset:3px}button:disabled,input:disabled{cursor:not-allowed;opacity:.58}img{max-width:100%}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.network-status{position:sticky;z-index:1200;top:0;padding:var(--space-3) max(var(--space-4),env(safe-area-inset-right)) var(--space-3) max(var(--space-4),env(safe-area-inset-left));border-bottom:1px solid #a86e0c;color:#3f2a08;background:var(--color-warning-soft);text-align:center;font-size:.9rem;font-weight:700;box-shadow:var(--shadow-sm)}.container{width:min(100%,var(--content-max));max-width:var(--content-max);min-height:var(--app-viewport-height, 100dvh);margin-inline:auto;padding:max(var(--space-4),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-6),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left))}.desktop-placeholder{display:none}.home-view{position:relative;display:flex;width:100%;max-width:36rem;min-height:calc(100dvh - max(2rem,env(safe-area-inset-top)) - max(2rem,env(safe-area-inset-bottom)));margin-inline:auto;flex-direction:column;overflow-x:hidden;overflow-y:auto;padding:0;border:1px solid rgba(27,43,38,.22);border-radius:var(--radius-xl);background:#f6f7f233;text-align:center}.home-view,.home-core,.home-footer{min-width:0}.home-view:before,.home-view:after{position:absolute;border:1px solid rgba(27,43,38,.14);border-radius:calc(var(--radius-xl) - .35rem);pointer-events:none;content:""}.home-view:before{top:.85rem;right:.85rem;bottom:.85rem;left:.85rem}.home-view:after{top:1.15rem;right:1.15rem;bottom:1.15rem;left:1.15rem;border-radius:calc(var(--radius-xl) - .7rem)}.home-core{position:relative;z-index:1;display:flex;width:100%;min-height:0;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:clamp(.85rem,2.2vh,1.1rem);padding:clamp(2.5rem,7vh,4.5rem) clamp(2.1rem,9vw,4.5rem) var(--space-5)}.home-ornament{display:flex;width:100%;align-items:center;gap:.6rem;color:var(--color-brand)}.home-ornament span{height:1px;flex:1;background:currentColor;opacity:.35}.home-ornament b{font-size:.62rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase}.home-emblem{position:relative;display:grid;width:clamp(6.5rem,31vw,9rem);aspect-ratio:11 / 14.8;place-items:center;padding:.45rem;border:1px solid var(--color-border);outline:1px solid var(--color-border-soft);outline-offset:.3rem;color:var(--color-brand);background:var(--color-surface)}.home-emblem img{display:block;width:100%;height:100%;object-fit:cover}.home-emblem span{display:none;width:100%;height:100%;place-items:center;border:1px solid var(--color-border-soft);font-family:var(--font-editorial);font-size:clamp(2rem,10vw,3.25rem)}.home-emblem.is-unavailable img{display:none}.home-emblem.is-unavailable span{display:grid}.home-heading{margin-top:.35rem}.home-heading h1{margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:clamp(2rem,10vw,4.25rem);font-weight:400;line-height:1.08;letter-spacing:.09em;text-transform:uppercase}.home-footer{position:relative;z-index:2;width:100%;max-width:100%;padding-bottom:max(1.35rem,env(safe-area-inset-bottom))}.home-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 1.4rem;overflow:hidden;padding-inline:.35rem;border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface)}.home-nav button{position:relative;display:flex;min-width:0;min-height:4.25rem;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:.55rem .2rem;border:0;color:var(--color-brand);background:transparent;font-size:.62rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.home-nav button+button:before{position:absolute;top:0;bottom:0;left:-.2rem;width:1px;background:var(--color-border-soft);content:""}.home-nav svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.home-nav span{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.home-nav button:hover{color:var(--color-brand-strong)}.home-view{background:linear-gradient(160deg,#d1d9cc,#e4e8df);transition:background .18s ease}.home-view.is-music{border-color:#30435c;background:linear-gradient(160deg,#0d1827,#1b304b);color:#f8f8f2}.home-view.is-music:before,.home-view.is-music:after{border-color:#c1d7e62e}.home-core{justify-content:flex-start;gap:0;padding:clamp(2.4rem,7vh,3.7rem) clamp(1.5rem,7vw,3rem) 1rem}.home-mode-tabs{display:grid;width:min(100%,13.8rem);grid-template-columns:repeat(2,1fr);gap:.2rem;padding:.24rem;border:1px solid rgba(27,43,38,.14);border-radius:.85rem;background:#f4f5f1}.home-mode-tabs button{min-height:2.55rem;border:0;border-radius:.65rem;background:transparent;color:#233b39;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.home-mode-tabs button[aria-selected=true]{background:#675f50;color:#fff}.is-music .home-mode-tabs{border-color:#304968;background:#203552}.is-music .home-mode-tabs button{color:#b7cbec}.is-music .home-mode-tabs button[aria-selected=true]{background:#d9ae65;color:#112037}.home-hero{display:flex;width:100%;min-height:0;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:1.3rem}.home-mode-panel{display:flex;width:100%;flex-direction:column;align-items:center;gap:clamp(1.3rem,3vh,1.7rem)}.home-mode-panel[hidden]{display:none}.home-ornament{max-width:19rem}.home-ornament b{font-size:.72rem;letter-spacing:.28em}.is-music .home-ornament{color:#abc6e5}.home-emblem{width:clamp(8.5rem,37vw,9.5rem);min-width:0;aspect-ratio:.76;padding:.48rem;border-color:#a9b8a8;outline-offset:.3rem}.home-heading{margin:0}.home-heading h1{font-size:clamp(2.2rem,9vw,3.2rem);line-height:1.04}.home-heading h1 span{display:block}.is-music .home-heading h1{color:#f8f8f2}.home-music-emblem{display:grid;width:clamp(8.5rem,37vw,9.5rem);aspect-ratio:.76;place-items:center;padding:.6rem;border:.35rem solid #f2f4f5;outline:1px solid #415573;outline-offset:.3rem;background:#17283f}.home-vinyl{display:grid;width:85%;aspect-ratio:1;place-items:center;border-radius:50%;background:repeating-radial-gradient(circle,#102136 0,#102136 2px,#243a54,#243a54,#102136,#102136 6px);box-shadow:0 0 0 1px #0b1828}.home-vinyl span{width:27%;aspect-ratio:1;border-radius:50%;background:#d9ae65}.home-footer{padding:0 clamp(1.2rem,5vw,2rem) max(1.25rem,env(safe-area-inset-bottom))}.home-entry-actions{margin-bottom:.85rem}.home-entry-btn{display:flex;width:100%;min-height:4.1rem;align-items:center;justify-content:center;gap:.3rem;border:1px solid #5d5649;border-radius:1rem;background:#675f50;color:#fff;font-size:1rem;font-weight:800;cursor:pointer}.home-entry-btn[hidden]{display:none}.home-entry-btn:disabled{opacity:.7;cursor:wait}.is-music .home-entry-btn{border-color:#c69c58;background:#d9ae65;color:#102038}#home-music-btn:before{content:"▶";font-size:.85rem}.home-nav{margin:0}.is-music .home-nav{border-color:#344e6c;background:#203552}.is-music .home-nav button{color:#e2bb72}.is-music .home-nav button+button:before{background:#344e6c}.is-music .home-nav button:hover{color:#f1dca7}.leaderboard-content.is-music-board{--color-canvas: #101e31;--color-canvas-deep: #233955;--color-surface: #203550;--color-ink: #f6f7f3;--color-muted: #b9cbe8;--color-brand: #dfb160;--color-brand-strong: #c99d57;--color-border-soft: #38516d;border-color:#304968}.is-music-board .leaderboard-back{border-color:#38516d}.music-progress-panel{display:flex;min-height:0;flex:1;flex-direction:column}.music-board-scroll{min-height:0;flex:1;overflow-y:auto;padding:0 .1rem 1rem}.music-progress-panel .podium-first .podium-bar{color:#11243d;background:#dfb160}.music-progress-panel .podium-first .leaderboard-level{border-color:#11243d}.music-progress-panel .leaderboard-accuracy,.music-progress-panel .leaderboard-columns{color:#bbd2ed}.music-progress-panel .leaderboard-row.is-me,.music-progress-panel .leaderboard-current{background:#233955}.music-progress-panel .leaderboard-current{display:block;padding:0}.music-progress-panel .leaderboard-current .leaderboard-row{border:0}.music-board-footer{padding-top:.65rem}#board-music-play-btn{border-color:#c99d57;background:#dfb160;color:#11243d}.music-board-footer .leaderboard-account-actions{margin-top:.4rem;color:#bbd2ed}#board-music-retry-btn{width:100%;margin-top:1rem;border-color:#69809b;background:#203550;color:#f6f7f3}.music-progress-panel[data-state=loading] .leaderboard-podium,.music-progress-panel[data-state=loading] .leaderboard-columns,.music-progress-panel[data-state=empty] .leaderboard-podium,.music-progress-panel[data-state=empty] .leaderboard-columns,.music-progress-panel[data-state=error] .leaderboard-podium,.music-progress-panel[data-state=error] .leaderboard-columns,.music-progress-panel[data-state=error] .music-board-list{display:none}.music-progress-panel[data-state=error] #board-music-status{padding:1.5rem 1rem}.music-progress-panel[data-state=empty] .music-board-list,.music-progress-panel[data-state=loading] .music-board-list{padding:1rem;text-align:center}.music-volume-label{display:flex;justify-content:space-between;color:var(--color-ink);font-weight:700}#settings-music-volume{width:100%;accent-color:var(--color-brand)}.settings-content{color:var(--color-ink);text-align:left}.settings-content.is-music-settings{--color-surface: #101e31;--color-ink: #f6f7f3;--color-muted: #b9cbe8;--color-brand: #dfb160;--color-border-soft: #38516d;border-color:#304968}.is-music-settings .leaderboard-back,.is-music-settings .music-answer-settings label{border-color:#38516d;background:#203550;color:#f6f7f3}.is-music-settings .settings-danger{color:#f2b5a8}.settings-content .leaderboard-header{margin-bottom:1rem}.settings-content .leaderboard-header h2{margin:0}.settings-panel{display:grid;gap:.75rem}.settings-panel[hidden],.music-progress-panel[hidden]{display:none}.settings-panel p{margin:0 0 .4rem}.settings-account-actions{margin-top:1.5rem;padding-top:.75rem;border-top:1px solid var(--color-border-soft);text-align:center}.settings-panel button{width:100%;min-height:2.9rem}.settings-danger{margin-top:.7rem;border:0;background:transparent;color:#8c3d35;text-decoration:underline;cursor:pointer}.music-answer-settings{display:grid;gap:.45rem;margin:0 0 .4rem;padding:0;border:0}.music-answer-settings legend{margin-bottom:.55rem;color:var(--color-ink);font-weight:700}.music-answer-settings label{display:flex;align-items:center;gap:.55rem;min-height:2.8rem;padding:.6rem;border:1px solid var(--color-border-soft);border-radius:.55rem;cursor:pointer}.music-answer-settings input{accent-color:var(--color-brand)}.game-view{--game-answer-layer-height: 18rem}.setup-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.setup-header h1{margin:0;font-family:var(--font-editorial);font-size:clamp(1.75rem,6vw,2.75rem);font-weight:500;line-height:1.1}.text-btn{min-height:2.75rem;padding-inline:var(--space-2);border:0;color:var(--color-brand);background:transparent;font-size:.78rem;font-weight:800;text-decoration:underline;text-underline-offset:.2rem;cursor:pointer}.learning-answer-mode{margin:0 0 var(--space-6);padding:0;border:0}.learning-answer-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.learning-answer-mode label{position:relative;min-width:0;-webkit-tap-highlight-color:transparent;cursor:pointer;-webkit-user-select:none;user-select:none}.learning-answer-mode input{position:absolute;opacity:0;pointer-events:none}.learning-answer-mode label span{display:grid;min-height:var(--control-height);place-items:center;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);background:var(--color-surface-soft);font-size:var(--type-small);font-weight:700;line-height:1.3;text-align:center}.learning-answer-mode input:checked+span{border-color:var(--color-brand-strong);color:var(--color-surface);background:var(--color-brand)}.learning-answer-mode input:focus-visible+span{box-shadow:var(--focus-ring)}.learning-answer-mode p{margin:var(--space-3) 0 0;color:var(--color-brand);font-size:var(--type-small);line-height:1.5}.selected-filters{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.selected-filters:empty{display:none}.filter-chip{min-height:2.25rem;padding:.35rem .7rem;border:1px solid var(--color-brand);border-radius:var(--radius-pill);color:var(--color-brand);background:var(--color-brand-soft);font-size:.75rem;font-weight:700;cursor:pointer}.facet-list{border-top:1px solid var(--color-border-soft)}.facet-group{border-bottom:1px solid var(--color-border-soft)}.facet-group summary{display:flex;min-height:3.5rem;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--color-ink);font-weight:800;cursor:pointer;list-style:none}.facet-group summary::-webkit-details-marker{display:none}.facet-group summary:after{color:var(--color-brand);content:"+";font-size:1.15rem}.facet-group[open] summary:after{content:"−"}.facet-selection-count{margin-left:auto;color:var(--color-muted);font-size:.72rem;font-weight:700}.facet-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);padding:0 0 var(--space-4)}.facet-option{display:flex;min-width:0;min-height:2.75rem;align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-soft);font-size:.78rem;cursor:pointer}.facet-option span:first-of-type{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}.facet-option small{color:var(--color-muted);font-variant-numeric:tabular-nums}.facet-option:has(input:checked){border-color:var(--color-brand);background:var(--color-brand-soft)}.facet-option:has(input:disabled){opacity:.5;cursor:not-allowed}.round-lengths{margin:var(--space-6) 0 0;padding:0;border:0}.round-lengths legend{margin-bottom:var(--space-3);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.round-lengths>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2)}.round-lengths label{position:relative;cursor:pointer}.round-lengths input{position:absolute;opacity:0;pointer-events:none}.round-lengths span{display:grid;min-height:2.75rem;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-brand);background:var(--color-surface);font-weight:800}.round-lengths input:checked+span{border-color:var(--color-brand);color:#fff;background:var(--color-brand)}.round-lengths input:focus-visible+span{box-shadow:var(--focus-ring)}.setup-result{display:flex;align-items:baseline;justify-content:center;gap:var(--space-2);margin-top:var(--space-6);color:var(--color-muted);text-align:center}.setup-result strong{color:var(--color-brand);font-family:var(--font-editorial);font-size:2rem;font-weight:500}.setup-message{min-height:1.4rem;margin:var(--space-2) 0;color:var(--color-warning);font-size:.8rem;text-align:center}.setup-start{width:100%}.setup-view{display:flex;width:min(100%,48rem);min-height:calc(100dvh - max(2rem,env(safe-area-inset-top)) - max(2rem,env(safe-area-inset-bottom)));margin-inline:auto;padding:0;flex-direction:column}.setup-header{gap:var(--space-3);margin:0;padding:var(--space-4) 0 var(--space-5)}.setup-header h1{font-size:clamp(1.6rem,6vw,2.35rem);white-space:nowrap}.setup-card{flex:1;padding:0 0 var(--space-5);border:0;border-radius:0;background:transparent;box-shadow:none}.setup-section-heading{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);color:var(--color-brand);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.setup-section-heading:before{width:.5rem;height:.5rem;border-radius:50%;background:var(--color-brand);content:""}.setup-section-heading i{height:1px;flex:1;background:color-mix(in srgb,var(--color-brand) 55%,transparent)}.setup-section-heading strong{letter-spacing:0;text-transform:none}.setup-view .facet-list{display:grid;gap:var(--space-3);border:0}.setup-view .facet-group{overflow:hidden;border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface)}.setup-view .facet-group[open]{border-color:var(--color-brand)}.setup-view .facet-group summary{min-height:4rem;padding:0 var(--space-4);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.setup-view .facet-group summary:focus{outline:none}.setup-view .facet-group summary:focus-visible{box-shadow:inset 0 0 0 2px var(--color-brand)}.setup-view .facet-group summary:after{color:var(--color-brand);content:"▾";font-size:.65rem}.setup-view .facet-group[open] summary:after{content:"▴"}.setup-view .facet-selection-count{overflow:hidden;max-width:58%;color:var(--color-brand);font-size:.85rem;font-weight:600;text-align:right;text-overflow:ellipsis;white-space:nowrap}.setup-view .facet-options{display:grid;grid-template-columns:1fr;gap:0;padding:0 var(--space-4) var(--space-3)}.setup-view .facet-option{min-height:2.9rem;padding:var(--space-2) 0;border:0;border-top:1px solid var(--color-border-soft);border-radius:0;background:transparent;font-size:.9rem}.setup-view .facet-option:has(input:checked){background:transparent}.setup-view .facet-option input{width:1.55rem;height:1.55rem;margin:0;accent-color:var(--color-brand)}.setup-view .facet-option-all span{font-weight:600}.facet-more{min-height:2.5rem;padding:0;border:0;color:var(--color-brand);background:transparent;text-align:left;font-size:.78rem;cursor:pointer}.setup-view .round-lengths{margin:0;padding:0 var(--space-4) var(--space-4)}.setup-view .round-lengths legend{margin:0}.setup-view .selected-filters{margin:var(--space-4) 0 0}.setup-view .filter-chip{min-height:2.65rem;padding:.45rem .9rem;background:transparent;font-size:.8rem;font-weight:600}.setup-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(8.5rem,42%);align-items:center;gap:var(--space-4);padding:var(--space-4) 0 max(var(--space-4),env(safe-area-inset-bottom));border-top:1px solid var(--color-border-soft);background:var(--color-surface)}.setup-view .setup-result{justify-content:flex-start;gap:var(--space-1);margin:0;color:var(--color-ink);text-align:left;font-size:.85rem;font-weight:700}.setup-view .setup-result strong{color:var(--color-ink);font-family:inherit;font-size:inherit;font-weight:800}.setup-availability>p:not(.setup-message){margin:var(--space-1) 0 0;color:var(--color-muted);font-size:.68rem}.setup-availability>p:not(.setup-message)>span:first-child{color:var(--color-brand)}.setup-view .setup-message{min-height:0;margin:var(--space-1) 0 0;font-size:.68rem;text-align:left}.setup-view .setup-start{width:100%;min-height:4.1rem}.btn-danger{padding:0 var(--space-4);border-color:var(--color-danger);color:#fff;background:var(--color-danger)}.custom-mode-badge{display:inline-flex;align-items:center;justify-content:center;margin-inline:auto;padding:.25rem .65rem;border:1px solid var(--color-brand);border-radius:var(--radius-pill);color:var(--color-brand);background:var(--color-brand-soft);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.submit-btn,.next-btn,.start-btn,.btn-primary,.btn-secondary,.skip-btn,.choice-btn,.fatal-error button{min-height:var(--control-height);border-radius:var(--radius-md);font-weight:700;cursor:pointer;transition:background-color var(--ease-standard),border-color var(--ease-standard),color var(--ease-standard),box-shadow var(--ease-standard),transform var(--ease-standard)}.submit-btn,.next-btn,.start-btn,.btn-primary,.fatal-error button{border:1px solid var(--color-brand-strong);color:#fff;background:var(--color-brand);box-shadow:none}.submit-btn:hover,.next-btn:hover,.start-btn:hover,.btn-primary:hover,.fatal-error button:hover{background:var(--color-brand-strong);box-shadow:none;transform:translateY(-1px)}.submit-btn:active,.next-btn:active,.start-btn:active,.btn-primary:active,.fatal-error button:active{transform:translateY(0)}.btn-secondary,.skip-btn{border:1px solid var(--color-border);color:var(--color-brand);background:var(--color-surface)}.btn-secondary:hover,.skip-btn:hover{border-color:var(--color-brand);background:var(--color-brand-soft)}.header{position:relative;display:grid;gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-4) clamp(var(--space-4),3vw,var(--space-6));border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:none}.title{margin:0;padding-inline:clamp(0rem,15vw,13rem);font-family:var(--font-display);font-size:clamp(1.35rem,3vw,2rem);font-weight:400;line-height:1.15;letter-spacing:.035em;text-align:center;color:var(--color-ink)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);width:min(100%,34rem);margin-inline:auto}.stat{min-width:0;text-align:center}.stat-icon{display:none}.stat+.stat{border-left:1px solid var(--color-border-soft)}.stat-label,.stat-note{display:block;overflow:hidden;color:var(--color-muted);font-size:.75rem;font-weight:700;line-height:1.25;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.stat-value{display:block;margin-top:.15rem;color:var(--color-brand);font-size:clamp(1.1rem,3vw,1.5rem);font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.stat-note{margin-top:.18rem;font-size:.65rem;letter-spacing:.03em;text-transform:none}.main-content{display:grid;gap:var(--space-3)}.game-area{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);gap:clamp(var(--space-5),4vw,var(--space-10));align-items:stretch;min-height:min(68vh,43rem);padding:clamp(var(--space-4),3vw,var(--space-8));border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:none;animation:fade-in .32s ease both}.painting-container{position:relative;display:grid;place-items:center;min-width:0;min-height:clamp(18rem,56vh,36rem);padding:clamp(var(--space-4),3vw,var(--space-8));overflow:hidden;border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:inset 0 0 0 .35rem var(--color-surface-soft)}.painting-image{grid-area:1 / 1;display:block;width:auto;height:auto;min-width:0;min-height:0;max-width:100%;max-height:min(58vh,34rem);object-fit:contain;border:1px solid var(--color-border-soft)}.image-action{position:absolute;right:var(--space-4);bottom:var(--space-4);z-index:2;display:inline-flex;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.72);border-radius:50%;color:#fff;background:color-mix(in srgb,var(--color-ink) 72%,transparent);box-shadow:var(--shadow-sm);font-size:1.15rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.image-action svg,.user-info .icon-btn svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.image-action:disabled{opacity:0}.image-overlay{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:inherit;background:var(--color-surface)}.loading-spinner{width:2.75rem;height:2.75rem;border:3px solid var(--color-border-soft);border-top-color:var(--color-brand);border-radius:50%;animation:spin .8s linear infinite}.game-interface{align-self:center;height:var(--game-answer-layer-height);min-width:0;padding:clamp(var(--space-2),2vw,var(--space-5))}.input-section,.multiple-choice-section,.result-section{height:100%;max-width:35rem;margin-inline:auto;flex-direction:column;animation:fade-in .16s ease-out both}.question-loading{display:flex;min-height:10rem;align-items:center;justify-content:center;gap:var(--space-3);color:var(--color-muted);font-size:.875rem;font-weight:700}.question-loading .loading-spinner{width:1.5rem;height:1.5rem;flex:none;border-width:2px}.question{display:flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-5);color:var(--color-brand);font-size:clamp(.85rem,1.8vw,1rem);font-weight:800;line-height:1.35;letter-spacing:.11em;text-transform:uppercase}.question:before{width:.45rem;height:.45rem;flex:none;border-radius:50%;background:currentColor;content:""}.question:after{height:2px;flex:1;background:currentColor;opacity:.36;content:""}.choice-question-row{display:flex;align-items:center;gap:var(--space-3)}.choice-question-row .question{min-width:0;flex:1;margin:0}.input-group{display:grid;grid-template-columns:minmax(0,1fr);align-items:end;gap:var(--space-2)}.artist-field{position:relative;min-width:0}.artist-field .hint-text.show{position:absolute;top:.35rem;left:1rem;font-size:.68rem;pointer-events:none}.artist-field .hint-text:not(.show){position:absolute;width:1px;overflow:hidden;clip:rect(0 0 0 0)}.artist-field.has-error .artist-input{border-color:var(--color-danger)}.artist-input,.form-input{width:100%;min-width:0;min-height:var(--control-height);padding:0 var(--space-4);border:1.5px solid var(--color-brand);border-radius:var(--radius-md);color:var(--color-ink);background:var(--color-surface-soft);caret-color:var(--color-brand);transition:border-color var(--ease-standard),box-shadow var(--ease-standard),background var(--ease-standard)}.artist-input::placeholder,.form-input::placeholder{color:color-mix(in srgb,var(--color-muted) 72%,transparent);opacity:1}.artist-input:focus,.form-input:focus{outline:none;background:var(--color-surface);box-shadow:var(--focus-ring)}.submit-btn{grid-column:1 / -1;width:100%;padding-inline:var(--space-6)}.submit-icon{display:none}.hint-text{color:var(--color-danger);font-size:.875rem}.skip-btn{grid-column:1 / -1;width:auto;min-height:2.75rem;justify-self:center;margin:0;padding:0 var(--space-3);border:0;color:var(--color-brand);background:transparent;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-decoration:underline;text-transform:uppercase;text-underline-offset:.25rem}.choices{display:grid;flex:1;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-3)}.choice-btn{min-height:3.625rem;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);color:var(--color-ink);background:var(--color-surface);text-align:center}.choice-btn:hover{border-color:var(--color-brand);background:var(--color-surface-soft);transform:translateY(-1px)}.choice-btn.selected{border-color:var(--color-brand);background:var(--color-brand-soft);box-shadow:var(--focus-ring)}.choice-error{grid-column:1 / -1;padding:var(--space-3);border:1px solid var(--color-danger);border-radius:var(--radius-sm);color:var(--color-danger);background:var(--color-danger-soft);font-size:.82rem;font-weight:700;text-align:center}.loading-row,.empty-leaderboard{padding:var(--space-8)!important;color:var(--color-muted);font-style:normal;text-align:center}.result-section{text-align:left}.result-content{min-height:0;flex:1;overflow-y:hidden}.result-status-row{display:flex;align-items:center;gap:var(--space-3)}.result-icon{display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;margin:0;border-radius:50%;color:#fff;font-size:1rem;font-weight:800;vertical-align:middle;animation:result-appear .28s ease both}.result-icon.correct{background:var(--color-success)}.result-icon.incorrect{background:var(--color-danger)}.result-title{display:block;margin:0;font-size:.9rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.result-points{margin-left:auto;font-size:.85rem;font-weight:800;white-space:nowrap}.result-section.is-correct .result-points{color:var(--color-success)}.result-section.is-wrong .result-points{color:var(--color-danger)}.result-icon.correct+.result-title{color:var(--color-success)}.result-icon.incorrect+.result-title{color:var(--color-danger)}.painting-info{display:flex;flex-direction:column;gap:var(--space-1);margin:var(--space-4) 0}.reveal-title,.reveal-artist{color:var(--color-ink);font-family:var(--font-editorial);font-size:clamp(1.35rem,3vw,1.75rem);font-weight:500;line-height:1.2}.reveal-work{color:var(--color-brand);font-family:var(--font-editorial);font-size:.9rem;font-style:italic}.reveal-year,.reveal-context,.reveal-materials,.reveal-rate,.result-message,.result-breakdown{color:var(--color-muted);font-size:.875rem}.reveal-context{margin-top:var(--space-2)}.reveal-context{display:flex;flex-wrap:wrap;gap:var(--space-2)}.reveal-tag{flex:none;padding:.28rem .65rem;border:1px solid var(--color-border-soft);border-radius:var(--radius-pill);background:var(--color-surface-soft);white-space:nowrap}.reveal-rate{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-soft);color:var(--color-brand);font-weight:600}.result-message{margin-top:var(--space-3)}.points-earned{margin-bottom:var(--space-2);color:var(--color-success);font-size:1.75rem;font-weight:800}.result-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);color:var(--color-muted);font-size:.85rem}.result-breakdown{margin-top:var(--space-2)}.reveal-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.reveal-actions>*{flex:1 1 10rem}.next-btn{width:100%;padding-inline:var(--space-6)}.round-progress-row{display:flex;width:min(100%,42rem);align-items:center;gap:var(--space-3);margin-inline:auto}.progress-bar{position:relative;flex:1;width:100%;height:.35rem;overflow:hidden;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-brand) 16%,transparent)}.progress-segments{display:none;width:100%;height:100%}.progress-bar.segmented{height:.3rem;overflow:visible;background:transparent}.progress-bar.segmented .progress-segments{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:.25rem}.progress-segments span{border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-brand) 18%,transparent);transition:background var(--ease-standard)}.progress-segments span.is-current,.progress-segments span.is-complete{background:var(--color-brand)}.progress-bar.segmented .progress-fill{display:none}.progress-label{flex:none;color:var(--color-muted);font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}.progress-fill{width:0;height:100%;border-radius:inherit;background:var(--color-brand);transition:width .32s ease}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:max(var(--space-4),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-4),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left));overflow-y:auto;background:color-mix(in srgb,var(--color-ink) 66%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{position:relative;width:min(100%,31rem);max-height:calc(100dvh - 2rem);overflow-y:auto;padding:clamp(var(--space-6),6vw,var(--space-10));border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:0 28px 80px #1b2b2647;text-align:center}.modal-content h2{margin:0 0 var(--space-4);color:var(--color-ink);font-family:var(--font-editorial);font-size:clamp(1.65rem,5vw,2.25rem);font-weight:500;line-height:1.15}.modal-content p{margin:0 0 var(--space-5);color:var(--color-muted)}.artwork-detail-content{text-align:left}.detail-kicker{margin-bottom:var(--space-2)!important;color:var(--color-brand)!important;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.artwork-detail-list{display:grid;gap:0;margin:var(--space-6) 0}.artwork-detail-list>div{display:grid;grid-template-columns:minmax(7rem,.45fr) minmax(0,1fr);gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-soft)}.artwork-detail-list dt{color:var(--color-muted);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.artwork-detail-list dd{margin:0;color:var(--color-ink)}.detail-sources h3{margin:0 0 var(--space-3);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.detail-sources a{display:block;padding:var(--space-2) 0;color:var(--color-brand);font-weight:700}.viewer-modal{padding:0}.viewer-content{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;height:100dvh;overflow:hidden;background:#211c17}.viewer-toolbar{display:flex;align-items:center;justify-content:center;gap:var(--space-4);padding:max(var(--space-3),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) var(--space-3) max(var(--space-4),env(safe-area-inset-left));color:#fff;background:#211c17f5}@media(max-width:36rem){.setup-header{grid-template-columns:auto minmax(0,1fr)}.setup-header .text-btn{grid-column:1 / -1;justify-self:end}.facet-options{grid-template-columns:1fr}.viewer-toolbar{gap:var(--space-2)}.viewer-controls output{display:none}}@media(max-width:47.99rem){.image-action,#reveal-fullscreen-btn{display:none!important}}.viewer-toolbar h2{margin:0;font-family:var(--font-editorial);font-size:clamp(1rem,3vw,1.35rem);font-weight:500}.viewer-controls{display:flex;align-items:center;gap:var(--space-2)}.viewer-controls button{min-width:2.75rem;min-height:2.75rem;padding:var(--space-2);border-color:#ffffff59;color:#fff;background:#ffffff14}.viewer-controls output{min-width:3.5rem;color:#ffffffc7;font-size:.78rem;text-align:center}.viewer-viewport{display:grid;overflow:hidden;padding:clamp(var(--space-3),4vw,var(--space-6));place-items:center;overscroll-behavior:contain;text-align:center;touch-action:none}.viewer-viewport img{display:block;width:auto;max-width:100%;max-height:100%;margin:0;object-fit:contain;transform:translateZ(0) scale(1);transform-origin:center;transition:transform .18s ease;-webkit-user-select:none;user-select:none;will-change:transform;-webkit-user-drag:none}.viewer-viewport.is-gesturing img{transition:none}.start-btn{width:100%;padding-inline:var(--space-6)}.success{border-color:var(--color-success)!important;background:var(--color-success-soft)!important}.error{border-color:var(--color-danger)!important;background:var(--color-danger-soft)!important}.fatal-error{position:fixed;top:50%;left:50%;z-index:10000;width:min(calc(100% - 2rem),29rem);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);text-align:center;transform:translate(-50%,-50%)}.fatal-error h2{margin:0 0 var(--space-3);color:var(--color-danger);font-family:var(--font-editorial)}.fatal-error button{margin-top:var(--space-4);padding-inline:var(--space-5)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0;transform:translateY(.75rem)}to{opacity:1;transform:translateY(0)}}@keyframes result-appear{0%{opacity:0;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@media(max-width:56rem){.container{padding-left:max(var(--space-3),env(safe-area-inset-left));padding-right:max(var(--space-3),env(safe-area-inset-right))}.header{border-radius:var(--radius-md)}.title{padding-inline:0}.game-area{grid-template-columns:minmax(0,1fr);gap:var(--space-3);min-height:0;padding:var(--space-3);border-radius:var(--radius-lg)}.painting-container{min-height:clamp(15rem,48dvh,30rem);padding:var(--space-3)}.painting-image{max-height:45dvh}.game-interface{align-self:auto;padding:var(--space-4) var(--space-2) var(--space-2)}}@media(max-width:36rem){.container{padding-top:max(var(--space-2),env(safe-area-inset-top))}.home-view{height:calc(100dvh - max(var(--space-2),env(safe-area-inset-top)) - max(var(--space-6),env(safe-area-inset-bottom)));min-height:0}.home-core{gap:clamp(.7rem,2dvh,1.05rem);padding:clamp(1.75rem,6dvh,3.75rem) clamp(1.5rem,9vw,2.25rem) clamp(.8rem,2.5dvh,1.25rem)}.home-emblem,.home-music-emblem{width:clamp(8.3rem,38vw,9.5rem)}.home-heading h1{font-size:clamp(2.1rem,9vw,2.7rem)}.header{gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3)}.title{font-size:1.25rem}.stat-label{font-size:.65rem;letter-spacing:.04em}.stat-note{display:none}.game-area{padding:var(--space-2)}.painting-container{min-height:clamp(13rem,39dvh,22rem)}.painting-image{max-height:36dvh}.game-interface{padding-inline:var(--space-2)}.question{margin-bottom:var(--space-3);font-size:.78rem}.input-group{grid-template-columns:minmax(0,1fr) 3.25rem;gap:var(--space-2)}.submit-btn{min-width:0;overflow:hidden;padding-inline:var(--space-2);font-size:.78rem}.choices{gap:var(--space-2)}.choice-btn{padding-inline:var(--space-2);font-size:.82rem}.modal{align-items:flex-end;padding:0}.modal-content{width:100%;max-height:calc(100dvh - env(safe-area-inset-top));padding:var(--space-6) var(--space-4) max(var(--space-6),env(safe-area-inset-bottom));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.container:has(.game-view:not([hidden])){max-width:none;padding:0;overflow:hidden}.game-view:not([hidden]){position:fixed;z-index:10;top:var(--app-viewport-top, 0);right:0;bottom:auto;left:0;display:flex;width:100%;max-width:36rem;height:var(--game-viewport-height, 100dvh);min-height:0;margin-inline:auto;overflow:hidden;flex-direction:column}.game-view[data-question-state=typing]{--game-answer-layer-height: 16.75rem}.game-view .header{display:grid;flex:none;grid-template-columns:2.75rem minmax(0,1fr) 2.75rem;align-items:center;gap:0;margin:0;padding:max(.9rem,env(safe-area-inset-top)) max(var(--mobile-inset),env(safe-area-inset-right)) .8rem max(var(--mobile-inset),env(safe-area-inset-left));border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.game-view .title,.game-view .custom-mode-badge,.game-view .round-progress-row{display:none!important}.game-view .user-info{display:contents!important}.game-view .user-badge,.game-view #lang-toggle-btn{display:none!important}.game-view #exit-round-btn{grid-column:1;grid-row:1}.game-view #view-leaderboard-btn{grid-column:3;grid-row:1}.game-view .user-info .icon-btn{width:2.75rem;height:2.75rem;min-height:2.75rem;padding:0;border-color:var(--color-border-soft);border-radius:.65rem;color:var(--color-brand);background:var(--color-surface)}.game-view .stats{grid-column:2;grid-row:1;display:flex;width:100%;align-items:center;justify-content:center;gap:clamp(.55rem,3vw,.9rem);margin:0}.game-view .stat{display:inline-flex;align-items:center;color:var(--color-brand);text-align:left}.game-view .stat+.stat{border:0}.game-view .stat-label,.game-view .stat-note{display:none}.game-view .stat-value{display:inline;margin:0;font-size:.72rem;font-weight:700;line-height:1}.game-view .stat:nth-child(1) .stat-value:before{content:"◆ "}.game-view .stat:nth-child(2) .stat-icon{display:block;width:.75rem;height:.75rem;margin-right:.22rem;fill:currentColor}.game-view .stat:nth-child(2) .stat-label{display:inline;order:3;margin-left:.28rem;font-size:.6rem;letter-spacing:.13em}.game-view .stat:nth-child(2) .stat-value:before{content:"×"}.game-view .stat:nth-child(3) .stat-value{color:color-mix(in srgb,var(--color-brand) 60%,transparent);font-weight:600}.game-view .stat:nth-child(3) .stat-value:before{content:"LV "}.game-view .stat:nth-child(4){display:none}.game-view .main-content{display:flex;min-height:0;flex:1}.game-view .game-area{display:grid;width:100%;min-height:0;flex:1;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) var(--game-answer-layer-height);gap:.75rem;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.game-view .painting-container{min-height:0;margin:0 max(var(--mobile-inset),env(safe-area-inset-right)) 0 max(var(--mobile-inset),env(safe-area-inset-left));padding:.65rem;border:1px solid var(--color-border-soft);border-radius:var(--radius-panel);box-shadow:none}.game-view .painting-image{width:100%;height:100%;max-height:100%}.game-view .image-action{right:.65rem;bottom:.65rem;width:2.75rem;height:2.75rem;border-color:var(--color-border-soft);color:var(--color-brand);background:var(--color-surface);box-shadow:none;font-size:.8rem}.game-view .game-interface{padding:1.25rem max(1.25rem,env(safe-area-inset-right)) max(1.85rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));overflow:hidden;border-top:1px solid var(--color-border-soft);border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;background:var(--color-surface)}.game-view .question{gap:.55rem;margin:0 0 1rem;font-size:.78rem;letter-spacing:.16em}.game-view .question:before{width:.45rem;height:.45rem}.game-view .question:after{height:2px}.game-view .input-group{grid-template-columns:minmax(0,1fr);gap:.65rem}.game-view .artist-input{min-height:3.75rem;padding-inline:1rem;border-radius:var(--radius-md);font-size:1rem}.game-view .skip-btn{grid-column:1;grid-row:3}.game-view .submit-btn{grid-column:1 / -1;grid-row:2;min-height:3.75rem;border-radius:var(--radius-md);font-size:1rem}.game-view .choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.75rem}.game-view .choice-btn{min-height:4.65rem;padding:.65rem .5rem;border-color:var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:1rem;line-height:1.35}.game-view .choice-btn:focus-visible{border-color:var(--color-brand);outline-width:1px;outline-offset:1px;background:var(--color-surface-soft)}.game-view.is-revealing .image-action{display:none}.game-view .result-content{margin:0}.game-view .result-status-row{gap:.6rem;color:var(--color-brand)}.game-view .result-icon{width:.45rem;height:.45rem;flex:none;border-radius:50%;font-size:0;animation:none}.game-view .result-title{font-size:.78rem;letter-spacing:.16em}.game-view .result-points{font-size:.85rem;letter-spacing:.01em}.game-view .result-status-row:after{order:2;height:2px;min-width:1rem;flex:1;background:currentColor;opacity:.5;content:""}.game-view .result-title{order:1}.game-view .result-icon{order:0}.game-view .result-points{order:3}.game-view .result-section.is-correct .result-status-row{color:var(--color-success)}.game-view .result-section.is-wrong .result-status-row{color:var(--color-danger)}.game-view .painting-info{gap:.3rem;margin:.65rem 0 0}.game-view .reveal-artist{font-size:1.9rem;line-height:1.2}.game-view .reveal-work{font-size:1rem;line-height:1.45}.game-view .result-message{min-height:0;margin:.5rem 0 0;color:color-mix(in srgb,var(--color-ink) 48%,transparent);font-size:.78rem}.game-view .result-message:empty{display:none}.game-view #reveal-facts{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.game-view .reveal-tag{padding:.4rem .65rem;border-color:var(--color-border);border-radius:.75rem;color:var(--color-brand);background:transparent;font-size:.8rem;font-weight:600}.game-view .reveal-actions{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:.75rem;margin:.9rem 0 0}.game-view .next-btn{grid-column:1;grid-row:1;min-height:3.25rem;border-radius:var(--radius-md);font-size:.95rem}.game-view .next-btn:after{content:" →"}.game-view #learn-more-btn{grid-column:2;grid-row:1;min-height:2.75rem;padding:0;border:0;color:var(--color-brand);background:transparent;font-size:.75rem;text-decoration:underline}.game-view #reveal-fullscreen-btn{display:none}.game-view.is-keyboard-open .game-interface{height:var(--keyboard-answer-height, 5.55rem);padding:.9rem max(1rem,env(safe-area-inset-right)) .9rem max(1rem,env(safe-area-inset-left));overflow:hidden;border-radius:1rem 1rem 0 0}.game-view.is-keyboard-open .header{overflow:hidden}.game-view.is-keyboard-open .question,.game-view.is-keyboard-open .skip-btn{display:none}.game-view.is-keyboard-open .input-group{grid-template-columns:minmax(0,1fr) 3.75rem}.game-view.is-keyboard-open .artist-field{grid-column:1;grid-row:1}.game-view.is-keyboard-open .submit-btn{display:inline-flex;grid-column:2;grid-row:1;width:3.75rem;min-width:3.75rem;min-height:3.75rem;align-items:center;justify-content:center;padding:0;border-color:var(--color-border);color:var(--color-brand);background:var(--color-surface);box-shadow:none}.game-view.is-keyboard-open .submit-label{display:none}.game-view.is-keyboard-open .submit-icon{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.game-view.is-keyboard-open .submit-keyboard-icon{display:block}.game-view.is-keyboard-open.has-draft-answer .submit-btn{border-color:var(--color-brand-strong);color:#fff;background:var(--color-brand)}.game-view.is-keyboard-open.has-draft-answer .submit-keyboard-icon{display:none}.game-view.is-keyboard-open.has-draft-answer .submit-arrow-icon{display:block}.game-view.is-keyboard-open .game-area{grid-template-rows:minmax(0,1fr) var(--keyboard-answer-height, 5.55rem)}}@media(max-width:24rem){.home-footer{padding-inline:1.15rem}.home-nav button{font-size:.56rem;letter-spacing:.08em}}@media(max-height:44rem)and (max-width:36rem){.game-view{--game-answer-layer-height: 16rem}.home-core{gap:.55rem;padding-top:1.4rem;padding-bottom:.55rem}.home-emblem,.home-music-emblem{width:clamp(6.4rem,29vw,8rem)}.home-heading{margin-top:.15rem}.home-heading h1{font-size:clamp(1.8rem,8.5vmin,2.25rem)}.home-heading p{margin-top:.75rem}.home-mode-panel{gap:.9rem}.home-entry-btn{min-height:3.3rem}.home-nav button{min-height:3.7rem}}@media(max-height:38rem)and (max-width:56rem){.header{padding-block:var(--space-2)}.title{display:none}.game-view .painting-container{min-height:0}.game-view .painting-image{max-height:100%}}@media(min-width:36.001rem){html,body{overflow:hidden}body>.network-status,body>.container{display:none!important}.desktop-placeholder{position:fixed;z-index:2000;top:0;right:0;bottom:0;left:0;display:grid;padding:clamp(2rem,7vw,6rem);place-items:center;background:var(--color-canvas-soft);text-align:center}.desktop-placeholder-card{position:relative;width:min(100%,42rem)}.desktop-placeholder-mark{margin:0 auto var(--space-8);color:var(--color-brand);font-family:var(--font-editorial);font-size:2.4rem}.desktop-placeholder-kicker{margin:0 0 var(--space-3);color:var(--color-brand);font-size:var(--type-label);font-weight:700;letter-spacing:var(--tracking-versals);text-transform:uppercase}.desktop-placeholder h1{margin:0;font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5.5rem);font-weight:400;line-height:1.05}.desktop-placeholder-card>p:last-child{max-width:30rem;margin:var(--space-5) auto 0;color:var(--color-muted);font-size:clamp(1rem,1.5vw,1.25rem)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}@media(forced-colors:active){.question:before,.question:after,.progress-fill{background:CanvasText}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}@media(max-width:36rem){.container:has(.setup-view:not([hidden])){max-width:none;padding:max(var(--space-2),env(safe-area-inset-top)) max(var(--space-3),env(safe-area-inset-right)) 0 max(var(--space-3),env(safe-area-inset-left))}.setup-view:not([hidden]){display:flex;width:100%;max-width:36rem;height:calc(100dvh - max(var(--space-2),env(safe-area-inset-top)));min-height:0;margin-inline:auto;overflow-y:auto;scrollbar-width:none}.setup-view::-webkit-scrollbar{display:none}.setup-view .setup-header{grid-template-columns:auto minmax(0,1fr) auto;padding:var(--space-4) var(--space-2) var(--space-4)}.setup-view .setup-header .text-btn{grid-column:auto;justify-self:auto}.setup-view .setup-header h1{overflow:visible;font-size:1.35rem;text-overflow:clip}.setup-view .setup-card{padding-inline:var(--space-2)}.setup-footer{position:sticky;z-index:2;bottom:0;margin-top:auto;margin-inline:calc(var(--space-3) * -1);padding-right:calc(var(--space-3) + var(--space-2));padding-left:calc(var(--space-3) + var(--space-2))}}.modal-subtitle{margin-top:var(--space-2);color:var(--color-muted);font-size:.95rem}.form-group{margin:var(--space-4) 0}.form-group label{display:block;margin-bottom:var(--space-2);color:var(--color-ink);font-size:.9rem;font-weight:700;text-align:left}.form-error{display:none;margin:var(--space-3) 0;padding:var(--space-3);border:1px solid var(--color-danger);border-radius:var(--radius-sm);color:var(--color-danger);background:var(--color-danger-soft);font-size:.875rem}.form-error.show{display:block;animation:form-error-enter .18s ease}.form-actions{display:flex;gap:var(--space-3);margin-top:var(--space-5)}.btn-primary,.btn-secondary{flex:1;padding-inline:var(--space-4)}.user-info{position:absolute;top:var(--space-3);right:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.user-badge{max-width:11rem;overflow:hidden;padding:.45rem var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-pill);color:var(--color-brand);background:var(--color-brand-soft);font-size:.8rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.icon-btn,.close-btn{display:inline-flex;width:2.75rem;height:2.75rem;flex:none;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border);border-radius:50%;color:var(--color-brand);background:var(--color-surface);cursor:pointer;transition:background var(--ease-standard),border-color var(--ease-standard),transform var(--ease-standard)}.icon-btn:hover,.close-btn:hover{border-color:var(--color-brand);background:var(--color-brand-soft);transform:translateY(-1px)}.icon-btn{font-size:.8rem;font-weight:800}.leaderboard-content{display:flex;width:min(100%,28rem);max-height:calc(100dvh - 2rem);flex-direction:column;padding:1.35rem;overflow:hidden;color:var(--color-ink);background:var(--color-canvas);text-align:left}.close-btn{position:absolute;top:var(--space-4);right:var(--space-4);font-size:1.6rem;line-height:1}.leaderboard-header{display:flex;align-items:center;gap:.9rem}.leaderboard-header h2{margin:0;font-family:var(--font-editorial);font-size:clamp(1.65rem,7vw,2.15rem);font-weight:500}.leaderboard-back{display:inline-flex;width:2.75rem;height:2.75rem;flex:none;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border-soft);border-radius:50%;color:var(--color-brand);background:var(--color-surface);font-family:var(--font-editorial);font-size:1.3rem;cursor:pointer}.icon-btn.home-control,.leaderboard-back.home-control{border-radius:.65rem}.home-control svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.leaderboard-container{min-height:0;flex:1;overflow-y:auto}.leaderboard-podium{display:grid;min-height:13.25rem;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:.5rem;padding:1.25rem 0 .95rem;border-bottom:1px solid var(--color-border-soft)}.podium-entry{display:grid;justify-items:center;grid-template-rows:auto 1.65rem}.podium-first{grid-column:2}.podium-third{grid-column:3}.podium-score{font-family:var(--font-editorial);font-size:clamp(1.75rem,8vw,2.35rem);font-weight:500;line-height:1}.podium-bar{display:flex;width:100%;flex-direction:column;justify-content:flex-end;gap:.25rem;padding:.75rem .7rem;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:.8rem .8rem 0 0;background:color-mix(in srgb,var(--color-brand) 18%,transparent)}.podium-first .podium-bar{height:10.8rem;border-color:var(--color-brand-strong);color:#fff;background:var(--color-brand)}.podium-second .podium-bar{height:7.8rem}.podium-third .podium-bar{height:7.1rem}.podium-accuracy{font-size:.7rem}.podium-name{max-width:100%;overflow:hidden;font-size:.82rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.podium-rank{max-width:100%;font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.leaderboard-columns,.leaderboard-row,.leaderboard-current{display:grid;grid-template-columns:1.45rem minmax(0,1fr) 4.8rem 3.25rem;align-items:center;column-gap:.55rem}.leaderboard-columns{height:2.2rem;padding-inline:.45rem;border-bottom:1px solid var(--color-border-soft);color:var(--color-brand);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase}.leaderboard-columns span:first-child{grid-column:2}.leaderboard-columns span:not(:first-child){text-align:right}.leaderboard-row{min-height:3.45rem;padding-inline:.45rem;border-bottom:1px solid var(--color-border-soft)}.leaderboard-row.is-me{border-radius:.75rem;background:var(--color-canvas-deep);font-weight:700}.leaderboard-rank{color:color-mix(in srgb,var(--color-ink) 62%,transparent);font-family:var(--font-editorial);font-size:1rem}.leaderboard-name{overflow:hidden;font-size:.9rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.leaderboard-metrics{display:flex;justify-content:flex-end;gap:.25rem}.leaderboard-level{padding-inline:.2rem;border:1px solid;border-radius:3px;font-size:.62rem}.leaderboard-accuracy{color:var(--color-brand);font-size:.78rem;text-align:right}.leaderboard-score{font-family:var(--font-editorial);font-size:1.4rem;text-align:right}.leaderboard-current{min-height:3.7rem;margin-top:.45rem;padding-inline:.45rem;border-radius:.75rem;background:var(--color-canvas-deep)}.leaderboard-current #leaderboard-current-rank{color:var(--color-brand);font-family:var(--font-editorial);font-size:1rem}.leaderboard-current #leaderboard-current-accuracy{color:var(--color-brand);font-size:.78rem;font-weight:600;text-align:right}.leaderboard-current #leaderboard-current-score{font-family:var(--font-editorial);font-size:1.4rem;text-align:right}.leaderboard-status{color:var(--color-muted);font-size:.8rem;text-align:center}.leaderboard-status:not(:empty){padding-top:var(--space-3)}.leaderboard-footer{flex:none}.leaderboard-play{width:100%;min-height:3.8rem;border-radius:.8rem;text-transform:uppercase}.leaderboard-account-actions{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--color-muted);font-size:.65rem}.leaderboard-account-actions button{padding:.2rem;border:0;color:inherit;background:transparent;font:inherit;text-decoration:underline;cursor:pointer}.leaderboard-content[data-state=loading] .leaderboard-podium,.leaderboard-content[data-state=loading] .leaderboard-columns,.leaderboard-content[data-state=empty] .leaderboard-podium,.leaderboard-content[data-state=empty] .leaderboard-columns,.leaderboard-content[data-state=error] .leaderboard-container{display:none}.leaderboard-content[data-state=loading] .leaderboard-container,.leaderboard-content[data-state=empty] .leaderboard-container{display:grid;place-items:center}.leaderboard-content[data-state=loading] .leaderboard-list,.leaderboard-content[data-state=empty] .leaderboard-list{padding:var(--space-8) var(--space-4);text-align:center}.leaderboard-content[data-state=error] .leaderboard-status{margin-top:auto}.leaderboard-content[data-state=error] .leaderboard-retry{margin-bottom:auto}#name-modal .form-group{margin:var(--space-5) 0 var(--space-2)}#name-modal .form-input{text-align:center}.game-over{display:flex;grid-column:1 / -1;grid-row:1 / -1;flex-direction:column;text-align:center}.game-over h2{margin:0;font-family:var(--font-editorial);font-size:clamp(2rem,6vw,3rem);font-weight:500}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:var(--space-5) 0 0}.summary-card{display:flex;min-height:5.5rem;align-items:center;justify-content:center;padding:.75rem .35rem;border-radius:var(--radius-panel);background:var(--color-surface);flex-direction:column}.summary-grid span{margin-top:.35rem;font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.summary-grid strong{font-family:var(--font-editorial);font-size:clamp(1.7rem,6vw,2.25rem);font-weight:500;line-height:1;white-space:nowrap}.save-score-notice{display:inline-block;margin:var(--space-2) 0;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:.875rem;font-weight:700}.game-over>.level-move{margin:0 0 .8rem;color:var(--color-muted);font-size:.75rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase}.save-score-notice{border-color:var(--color-success);color:var(--color-success);background:var(--color-success-soft)}.save-score-notice.pending{border-color:var(--color-warning);color:var(--color-warning);background:var(--color-warning-soft)}.game-end-actions{display:flex;gap:var(--space-3);margin-top:auto;padding-top:var(--space-6)}.game-end-actions>*{min-width:10rem}@keyframes form-error-enter{0%{opacity:0;transform:translateY(-.25rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:48rem){.user-info{position:static;justify-content:center;order:3}.game-over{min-height:100%;padding:clamp(4.5rem,13dvh,7rem) max(var(--mobile-inset),env(safe-area-inset-right)) max(1.25rem,env(safe-area-inset-bottom)) max(var(--mobile-inset),env(safe-area-inset-left));overflow-y:auto}.game-view .game-area:has(.game-over){grid-template-rows:minmax(0,1fr)}.game-over .game-end-actions button{min-height:4.1rem;border-radius:1.05rem}}@media(max-width:36rem){.user-badge{max-width:8rem}.form-actions,.game-end-actions{flex-direction:column}.game-end-actions>*{width:100%}.game-over h2{font-size:clamp(2.25rem,10vw,3rem)}#leaderboard-modal{align-items:stretch;padding:0;background:var(--color-canvas);-webkit-backdrop-filter:none;backdrop-filter:none}#leaderboard-modal .leaderboard-content{width:100%;max-width:36rem;height:var(--app-viewport-height, 100dvh);max-height:none;margin-inline:auto;padding:max(1rem,env(safe-area-inset-top)) max(var(--mobile-inset),env(safe-area-inset-right)) max(.65rem,env(safe-area-inset-bottom)) max(var(--mobile-inset),env(safe-area-inset-left));border:0;border-radius:0;box-shadow:none}.leaderboard-podium{min-height:clamp(11rem,28dvh,13.25rem);padding-top:clamp(.8rem,3dvh,1.25rem)}.leaderboard-content{padding-inline:1.15rem}}
