:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f8fafc;background:#10131e;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#10131e}button{font:inherit}.app-shell{min-height:100vh;max-width:1160px;margin:0 auto;padding:32px 6vw 24px;display:flex;flex-direction:column}.screen-transition-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:radial-gradient(ellipse at 22% 28%,#a6f75038,transparent 38%),radial-gradient(ellipse at 78% 68%,#f45a9d35,transparent 42%),linear-gradient(115deg,#ffffff12,transparent 38%,#675af425 72%,transparent);background-size:140% 140%;background-position:0% 20%;opacity:0;pointer-events:none;mix-blend-mode:screen;-webkit-backdrop-filter:blur(9px) saturate(1.45) hue-rotate(-10deg);backdrop-filter:blur(9px) saturate(1.45) hue-rotate(-10deg);animation:liquid-glass .72s ease-out both}.screen-transition{position:relative;flex:1;isolation:isolate;animation:screen-enter .72s cubic-bezier(.16,1,.3,1) both;transform-origin:50% 42%}.screen-transition>*{position:relative;z-index:1}@keyframes screen-enter{0%{opacity:0;filter:blur(4px);transform:translateY(32px) scale(.97)}62%{opacity:1;filter:blur(0);transform:translateY(-3px) scale(1.005)}to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}@keyframes liquid-glass{0%{opacity:0;background-position:0% 20%;filter:hue-rotate(0deg) saturate(1)}18%{opacity:.78}62%{opacity:.25;background-position:100% 80%;filter:hue-rotate(24deg) saturate(1.55)}to{opacity:0;background-position:50% 50%;filter:hue-rotate(0deg) saturate(1)}}.topbar{display:flex;justify-content:space-between;align-items:center}.brand-button{padding:0;background:transparent;border:0;cursor:pointer}.eyebrow{color:#a6f750;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.language-button{color:#d6d9e5;background:transparent;border:1px solid #3b4154;border-radius:999px;padding:8px 16px;cursor:pointer}.hero{flex:1;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;padding:64px 0 80px}h1{max-width:650px;margin:12px 0 20px;font-size:clamp(3.5rem,10vw,7.5rem);line-height:.9;letter-spacing:-.08em}.welcome{max-width:460px;color:#d6d9e5;font-size:clamp(1.1rem,2vw,1.35rem)}.headphones{color:#9298aa;font-size:.9rem}.headphones span{color:#a6f750}.primary-button{margin-top:28px;padding:15px 22px;color:#11131d;background:#a6f750;border:0;border-radius:999px;font-weight:800;cursor:pointer}.primary-button span{margin-left:18px}.hero-art{position:relative;min-height:360px;overflow:hidden;border-radius:32px;background:linear-gradient(145deg,#292f47,#171a28)}.disc{position:absolute;width:270px;height:270px;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%) rotate(-25deg);background:repeating-radial-gradient(circle,#252b41 0,#252b41 2px,#10131e 3px,#10131e 5px);box-shadow:0 28px 50px #080a10aa}.disc span{position:absolute;top:42%;right:42%;bottom:42%;left:42%;border-radius:50%;background:#a6f750}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-one{width:130px;height:130px;right:-32px;top:-30px;background:#f45a9d}.orb-two{width:90px;height:90px;left:-22px;bottom:22px;background:#675af4}.difficulty{flex:1;padding:12vh 0}.difficulty h1{font-size:clamp(3rem,8vw,6rem)}.difficulty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}.difficulty-card{min-height:180px;padding:24px;text-align:left;color:#f8fafc;background:#1b2030;border:1px solid #30374c;border-radius:20px;cursor:pointer;transition:transform .2s,border-color .2s}.difficulty-card:hover{transform:translateY(-4px);border-color:#a6f750}.difficulty-name,.difficulty-description,.question-count,.high-score{display:block}.difficulty-name{font-size:1.6rem;font-weight:800}.difficulty-description{min-height:48px;margin:12px 0 24px;color:#aeb4c5;font-size:.9rem}.question-count{color:#a6f750;font-size:.8rem;font-weight:700}.high-score{margin-top:10px;color:#f6c85f;font-size:.78rem;font-weight:700}footer{max-width:600px;color:#6e7588;font-size:.75rem;line-height:1.5}.test-mode-card{max-width:420px;margin-top:42px;padding:18px 20px;color:#aeb4c5;background:#171b29;border:1px dashed #4c5570;border-radius:16px;font-size:.85rem}.test-mode-card p{margin:0 0 12px}.test-mode-card .secondary-button{margin-top:4px}.test-mode-label,.test-badge,.question-type{color:#a6f750;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.secondary-button,.next-button{padding:11px 17px;color:#f8fafc;background:transparent;border:1px solid #59627d;border-radius:999px;cursor:pointer}.secondary-button:hover,.next-button:hover{border-color:#a6f750}.quiz-screen,.results{flex:1;width:min(760px,100%);margin:0 auto;padding:7vh 0 10vh}.quiz-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#aeb4c5;font-size:.82rem}.quiz-progress-label{min-width:0;padding:0 0 0 25px}.quiz-stats{display:flex;align-items:center;justify-content:flex-end;gap:10px}.test-badge{letter-spacing:.08em}.counter-label{color:#9298aa;font-size:.58rem;font-weight:900;letter-spacing:.14em;line-height:1;text-transform:uppercase}.score-counter,.high-score-counter,.life-counter{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 25px 6px 11px;background:transparent;border:0px solid #30374c;border-radius:10px;box-shadow:inset 0 1px #ffffff08,0 6px 18px #080a1018}.score-value,.score-total{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-variant-numeric:tabular-nums;font-weight:900}.score-value{min-width:4.5ch;padding:4px 6px;color:#a6f750;background:#0d111b;border:1px solid #293345;border-radius:5px;box-shadow:inset 0 0 10px #0005;font-size:1.08rem;letter-spacing:.06em;line-height:1;text-align:right;text-shadow:0 0 12px #a6f75066}.high-score-value{color:#f6c85f;text-shadow:0 0 12px #f6c85f66}.score-divider,.score-total{color:#6e7588;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;font-weight:800}.life-counter{gap:10px}.life-lights{display:inline-flex;gap:6px;padding:5px 7px;background:#0d111b;border:1px solid #293345;border-radius:7px;box-shadow:inset 0 0 10px #0005}.life-light{position:relative;display:block;width:11px;height:11px;border:1px solid #59627d;border-radius:50%;background:#2c3348;box-shadow:inset 0 1px 2px #080a1066}.life-light-on{border-color:#a6f750;background:#a6f750;box-shadow:0 0 10px #a6f750aa,inset 0 1px 1px #fff8}.life-light-exploding{z-index:1;border-color:#ef789d;background:#ef789d;animation:life-light-explode .65s ease-out both}.life-light-exploding:before{position:absolute;top:50%;left:50%;width:3px;height:3px;content:"";border-radius:50%;background:#ef789d;box-shadow:0 -11px #ef789d,8px -8px #ef789d,11px 0 #ef789d,8px 8px #ef789d,0 11px #ef789d,-8px 8px #ef789d,-11px 0 #ef789d,-8px -8px #ef789d;transform:translate(-50%,-50%) scale(.3);animation:life-sparks .65s ease-out both}.life-light-exploding:after{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;content:"";border:1px solid #ef789d;border-radius:50%;animation:life-ring .65s ease-out both}@keyframes life-light-explode{0%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1.45)}to{opacity:.15;transform:scale(.65)}}@keyframes life-sparks{0%{opacity:1;transform:translate(-50%,-50%) scale(.3)}to{opacity:0;transform:translate(-50%,-50%) scale(1.25)}}@keyframes life-ring{0%{opacity:.9;transform:scale(.35)}to{opacity:0;transform:scale(2.5)}}.progress-track{position:fixed;z-index:30;inset:0 0 auto;height:8px;overflow:hidden;background:#2c3348;box-shadow:0 2px 10px #080a1066}.progress-track span{display:block;height:100%;background:#a6f750;border-radius:inherit;transition:width .25s ease}.question-card{overflow:hidden;position:relative;padding:clamp(24px,5vw,54px);background:#1b2030;border:1px solid #30374c;border-radius:28px;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}.question-card-correct{background:#203c2b;border-color:#70d77d;box-shadow:0 0 0 5px #70d77d18,0 18px 48px #70d77d12}.question-card-wrong{background:#39252f;border-color:#ef789d;animation:question-shake .38s ease-in-out both}@keyframes question-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;overflow:hidden;pointer-events:none}.confetti span{position:absolute;top:50%;left:50%;width:9px;height:16px;background:hsl(var(--confetti-hue) 82% 66%);border-radius:2px;animation:confetti-burst var(--confetti-duration) cubic-bezier(.16,.84,.35,1) var(--confetti-delay) both}@keyframes confetti-burst{0%{opacity:0;transform:translate(-50%,-50%) rotate(0) scale(.5)}12%{opacity:1}to{opacity:0;transform:translate(calc(var(--confetti-x) * 1vw),calc(var(--confetti-y) * 1vh)) rotate(var(--confetti-rotation)) scale(1)}}.question-timer{position:absolute;bottom:0;right:3px;left:3px;height:6px;overflow:hidden;background:#2c3348;border-radius:27px 27px 0 0}.question-timer span{display:block;height:100%;background:#a6f750;border-radius:inherit;transition:width .1s linear}.question-type{margin:0 0 20px}.question-card h1{max-width:none;margin:0 0 36px;font-size:clamp(2rem,5vw,4.2rem);letter-spacing:-.055em;line-height:1}.question-value{margin:-18px 0 30px;color:#a6f750;font-size:.9rem;font-weight:800}.answer-list{display:grid;gap:10px}.answer-list button{display:flex;align-items:flex-start;gap:14px;width:100%;padding:16px 18px;text-align:left;color:#e9ebf3;background:#242a3d;border:1px solid #3a435c;border-radius:14px;cursor:pointer;opacity:1;transition:background .15s,border-color .15s,transform .15s,opacity .35s ease}.answer-list button:hover:not(:disabled){transform:translate(3px);border-color:#a6f750}.answer-list button:disabled{cursor:default}.answer-index{flex:0 0 28px;color:#a6f750;font-weight:800}.answer-checkbox{display:inline-grid;flex:0 0 22px;width:22px;height:22px;place-items:center;color:#11131d;background:transparent;border:2px solid #7e879f;border-radius:5px;font-size:.8rem;font-weight:900;line-height:1}.checkbox-checked{background:#a6f750;border-color:#a6f750}.answer-selected{background:#303a4d!important;border-color:#a6f750!important}.answer-correct{background:#29452d!important;border-color:#70d77d!important}.answer-wrong{background:#4a2c39!important;border-color:#ef789d!important}@keyframes answer-distractor-fade{0%{opacity:1}to{opacity:0}}.answer-list button.answer-distractor-hidden{pointer-events:none;opacity:0;animation:answer-distractor-fade .35s ease both;will-change:opacity}.feedback{margin:22px 0;padding:16px 18px;border-left:3px solid #aeb4c5;color:#d6d9e5;background:#242a3d}.audio-source{display:none}.music-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.85fr);align-items:center;gap:26px;min-height:270px;margin:0 0 28px;padding:22px;overflow:hidden;background:#151a29;border:1px solid #30374c;border-radius:22px}.music-card-unrevealed{grid-template-columns:1fr;place-items:center;padding-right:0;padding-left:0}.album-art{display:block;width:100%;max-width:280px;aspect-ratio:1;height:auto;margin:0 auto;object-fit:contain;border-radius:12px}.album-art-placeholder{display:grid;place-items:center;color:#a6f750;background:radial-gradient(circle at center,#303952 0,#303952 8%,#1f2639 9%,#1f2639 22%,#151a29 23%,#151a29);font-size:5rem}.music-card-details{min-width:0}.music-card-meta{min-width:0;color:#aeb4c5}.music-card-meta p{margin:5px 0;overflow-wrap:anywhere;line-height:1.35}.music-card-meta .music-song-title{color:#f8fafc;font-size:1.1rem;font-weight:800}.metadata-hidden{filter:blur(8px);-webkit-user-select:none;user-select:none}.music-play-button{position:absolute;left:calc(25% - 38px);top:calc(50% - 38px);display:grid;width:76px;height:76px;place-items:center;padding:0;color:#11131d;background:#a6f750;border:0;border-radius:50%;cursor:pointer;font-size:1.3rem;font-weight:900}.music-card-unrevealed .music-play-button{left:calc(50% - 38px)}.music-play-button:disabled{opacity:.45;cursor:not-allowed}.music-visualizer{display:grid;width:100%;height:140px;place-items:center;padding:24px 0;background:transparent}.music-visualizer canvas{display:block;width:100%;height:100%}.music-card-unrevealed .music-visualizer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0 22px}.music-card-unrevealed .music-visualizer canvas{width:100%;height:140px}.music-progress{position:absolute;width:96px;height:96px;transform:rotate(-90deg);pointer-events:none}.music-play-button .music-progress{top:-10px;right:-10px;bottom:-10px;left:-10px}.music-loading-progress{left:calc(25% - 48px);top:calc(50% - 48px)}.music-progress circle{fill:none;stroke-width:5}.music-progress-track{stroke:#59627d}.music-progress-value{stroke:#a6f750;stroke-linecap:round;stroke-dasharray:326.73;transition:stroke-dashoffset .1s linear}.music-progress-loading{stroke:#a6f750;stroke-linecap:round;stroke-dasharray:90 236.73;animation:music-progress-spin 1.1s linear infinite}@keyframes music-progress-spin{to{stroke-dashoffset:-326.73}}.music-loading-spinner{width:64px;height:64px;border:6px solid #59627d;border-top-color:#a6f750;border-radius:50%;animation:music-spinner-spin .8s linear infinite}@keyframes music-spinner-spin{to{transform:rotate(360deg)}}.music-playing{box-shadow:0 0 0 8px #a6f75022}.music-unavailable{color:#9298aa;font-size:.85rem}.itunes-link{margin:18px 0 0}.itunes-link img{display:block;height:auto}.feedback p{margin:6px 0 0;line-height:1.55}.feedback-correct{border-left-color:#70d77d}.feedback-wrong{border-left-color:#ef789d}.feedback-skipped{border-left-color:#a6f750}.question-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.primary-button:disabled{opacity:.4;cursor:not-allowed}.next-button{display:block;margin:18px 0 0 auto;color:#11131d;background:linear-gradient(to right,#71824b var(--countdown-progress, 0%),#a6f750 var(--countdown-progress, 0%));border-color:#a6f750;font-weight:800}.results{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;isolation:isolate}.results:before{position:absolute;z-index:-1;top:8%;left:-18%;width:70%;height:52%;content:"";border-radius:50%;background:#675af41c;filter:blur(70px)}.results-heading{margin-bottom:26px}.results-kicker{color:#a6f750;font-size:.76rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.results h1{max-width:720px;margin:8px 0 0;font-size:clamp(3.2rem,9vw,7rem);line-height:.86}.score-hero{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 10px;width:100%;margin:8px 0;padding:26px 30px 30px;overflow:hidden;background:linear-gradient(120deg,#242b43,#171b2b 72%);border:1px solid #414d6a;border-radius:26px;box-shadow:0 24px 70px #080a105c,inset 0 1px #ffffff12}.score-hero:after{position:absolute;right:-10%;bottom:-85%;width:60%;height:180%;content:"";border-radius:50%;background:#a6f75019;filter:blur(24px);transform:rotate(-18deg)}.score-hero-label{flex-basis:100%;margin-bottom:6px;color:#aeb4c5;font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.score-hero-value{color:#a6f750;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(4.2rem,14vw,9rem);font-variant-numeric:tabular-nums;letter-spacing:-.08em;line-height:.9;text-shadow:0 0 30px #a6f75055}.score-hero-total{color:#9298aa;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(1.1rem,3vw,1.8rem);font-weight:800}.new-high-score{border-color:#f6c85f;box-shadow:0 0 0 4px #f6c85f18,0 24px 70px #080a105c,inset 0 1px #ffffff12}.new-high-score .score-hero-value{color:#f6c85f;text-shadow:0 0 30px #f6c85f66}.new-high-score-badge{position:relative;z-index:1;flex-basis:100%;width:fit-content;margin-top:20px;padding:8px 13px;color:#17120b;background:#f6c85f;border-radius:999px;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.results-details{color:#d6d9e5;font-size:1.05rem}.results-details p{margin:8px 0 0}.results-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:34px}.results-actions .primary-button,.results-actions .secondary-button{margin-top:0}.question-card-correct .question-timer span{background:#70d77d}@media(prefers-reduced-motion:reduce){.screen-transition,.question-card-wrong,.screen-transition-overlay{animation:none}.confetti{display:none}.question-card,.screen-transition{transition:none}.life-light-exploding,.life-light-exploding:before,.life-light-exploding:after{animation:none}}.results h1{font-size:clamp(3rem,8vw,6rem)}@media(max-width:520px){.quiz-meta{flex-wrap:wrap;align-items:flex-start}.quiz-progress-label{flex:1 1 100%}.quiz-stats{width:100%;justify-content:space-between}.score-counter,.high-score-counter,.life-counter{flex:1;justify-content:space-between}.counter-label{font-size:.52rem}}@media(max-width:520px){.music-card{grid-template-columns:1fr;gap:16px;padding:16px}.music-card-meta{text-align:center}.music-play-button{left:calc(50% - 38px);top:91px}.album-art{max-width:220px}.itunes-link img{margin:18px auto 0}}@media(max-width:700px){.hero{grid-template-columns:1fr;padding-top:56px}.hero-art{min-height:240px}.difficulty-grid{grid-template-columns:1fr}h1{font-size:4.5rem}}@media(max-width:520px){.results{padding-top:5vh;padding-bottom:8vh}.results-heading{margin-bottom:20px}.score-hero{padding:22px 20px 24px;border-radius:20px}.results-actions{width:100%;flex-direction:column;align-items:stretch}.results-actions .primary-button,.results-actions .secondary-button{width:100%;text-align:center}}
