:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f2f2ee;background:#090909;font-synthesis:none;--muted:#92928c;--line:#262624;--panel:#111110;--accent:#d8ff3e}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 72% 22%,#191a12 0,#0b0b0a 26%,#090909 58%);color:#f2f2ee}button{font:inherit;color:inherit;background:#151514;border:1px solid #343431;border-radius:12px;padding:.82rem 1.1rem;cursor:pointer;transition:.16s}button:hover{border-color:#5b5b55;transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}.primary{background:var(--accent);color:#0a0a08;border-color:var(--accent);font-weight:700}.danger{background:#fff;color:#090909;border-color:#fff;font-weight:700;padding:1rem 1.8rem}.big{padding:1rem 1.5rem;font-size:1.05rem}header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,72px);border-bottom:1px solid var(--line);position:sticky;top:0;background:#090909db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:20}.brand{border:0;background:transparent;padding:0;font-size:1.05rem;letter-spacing:.13em;font-weight:800}.brand span{color:var(--accent)}nav{display:flex;gap:6px}nav button{border:0;background:transparent;color:var(--muted);padding:.55rem .75rem}nav button.active,nav button:hover{color:#fff;transform:none}.eyebrow{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;letter-spacing:.18em;color:var(--accent);margin-bottom:18px}.home{max-width:1400px;margin:auto;min-height:calc(100vh - 128px);padding:clamp(48px,7vw,108px) clamp(22px,6vw,90px);display:grid;grid-template-columns:1.12fr .88fr;gap:40px;align-items:center}.hero h1{font-size:clamp(3rem,6vw,6.7rem);line-height:.91;letter-spacing:-.065em;margin:0 0 30px;max-width:900px}.hero h1 em{font-style:normal;color:#aaa9a2}.hero p{color:#b6b6af;max-width:620px;font-size:clamp(1rem,1.35vw,1.28rem);line-height:1.65}.hero-actions{display:flex;gap:10px;margin:32px 0 18px}.tiny{color:#64645f;font-size:.78rem}.population{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#9d9d96;margin-top:24px;font-size:.82rem}.hero-illusion,.stage,.test-stage{display:flex;flex-direction:column;align-items:center;justify-content:center}.illusion-canvas{display:block;max-width:100%;aspect-ratio:1;background:radial-gradient(circle,#131311 0,#090909 67%);border-radius:50%}.play-page,.test-page,.results-page,.about-page,.intro-page{max-width:1200px;margin:auto;padding:60px clamp(20px,5vw,70px) 90px}.section-title h2,.test-intro h2,.results-page h2,.about-page h2{font-size:clamp(2.4rem,5vw,5rem);letter-spacing:-.055em;line-height:.95;margin:0 0 22px}.section-title p,.test-intro p,.about-page p,.result-lead{color:#aaa9a3;line-height:1.7;max-width:760px}.play-grid{display:grid;grid-template-columns:220px 1fr;gap:30px;margin-top:38px}.stim-list{display:flex;flex-direction:column;gap:7px}.stim-list button{text-align:left;background:transparent;color:#93938d}.stim-list button.selected{color:#0a0a08;background:var(--accent);border-color:var(--accent);font-weight:700}.stage{border:1px solid var(--line);border-radius:24px;padding:30px;min-height:650px;background:#0e0e0d80}.stage-prompt,.instruction{font-size:1.05rem;margin:14px 0 18px;text-align:center;max-width:680px;line-height:1.5}.percept-buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.choice span{font-size:1.25rem;margin-right:.3rem}.choice.subtle{color:#aaa}.feedback{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#93938c;font-size:.78rem;margin-top:16px;text-align:center}.callout{border:1px solid #343430;background:#11110f;border-radius:16px;padding:18px 20px;color:#aead9f;line-height:1.55;margin:26px 0}.error-callout{border:1px solid #5f302d;background:#1a0f0e;border-radius:14px;padding:14px 16px;color:#efb0aa;line-height:1.5;margin-top:16px;font-size:.9rem}.test-intro{max-width:820px;margin:7vh auto}.test-top{display:flex;justify-content:space-between;align-items:end}.test-top h3{font-size:2rem;margin:0}.progress-label{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#92928c}.progress{height:3px;background:#20201e;margin:18px 0 28px}.progress div{height:100%;background:var(--accent);transition:.3s}.test-stage{min-height:690px;border:1px solid var(--line);border-radius:24px;background:#0d0d0c99;padding:26px}.timer{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--accent);margin-bottom:14px}.results-page{max-width:1050px}.result-lead{margin-bottom:35px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px}.metric-card{border:1px solid var(--line);border-radius:18px;background:#10100f;padding:22px}.metric-head{display:flex;justify-content:space-between;gap:12px;color:#ddd}.metric-head span{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#82827b;font-size:.72rem}.metric-value{font-size:2.4rem;font-weight:700;letter-spacing:-.045em;margin:18px 0}.bar{height:5px;background:#292925;position:relative;margin:16px 0 18px}.bar-fill{height:100%;background:var(--accent)}.bar-dot{position:absolute;top:50%;width:13px;height:13px;border-radius:50%;background:var(--accent);transform:translate(-50%,-50%)}.metric-note{color:#83837d;font-size:.86rem;line-height:1.5}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 28px}.detail-grid div{border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px}.detail-grid span{font-size:.77rem;color:#777771}.detail-grid strong{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.about-page{max-width:850px}.about-page h3{margin-top:38px}.identity{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px;margin-top:18px}.identity code{color:#9c9c95;flex:1}footer{height:56px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,72px);color:#5f5f5a;font-size:.72rem}footer span:first-child{font-weight:800;letter-spacing:.13em;color:#85857e}@media(max-width:850px){.home{grid-template-columns:1fr;padding-top:50px}.hero-illusion{order:-1}.hero-illusion .illusion-canvas{max-width:420px}.play-grid{grid-template-columns:1fr}.stim-list{display:grid;grid-template-columns:1fr 1fr}.metrics,.detail-grid{grid-template-columns:1fr}.stage,.test-stage{min-height:auto}.hero h1{font-size:clamp(3.2rem,14vw,5.4rem)}footer{gap:20px}}@media(max-width:520px){header{height:62px}.brand{font-size:.9rem}nav button{padding:.45rem .5rem;font-size:.85rem}.home,.play-page,.test-page,.results-page,.about-page,.intro-page{padding-left:17px;padding-right:17px}.percept-buttons{width:100%}.choice{flex:1 1 45%;padding:.8rem .5rem;font-size:.85rem}.stim-list{grid-template-columns:1fr 1fr}.stage,.test-stage{padding:14px}.hero-actions,.identity{flex-direction:column;align-items:stretch}footer span:last-child{display:none}}.fatal-error{max-width:760px;margin:10vh auto;padding:40px clamp(20px,5vw,60px);display:flex;flex-direction:column;align-items:flex-start;gap:18px}.fatal-error h2{font-size:clamp(2.2rem,5vw,4rem);letter-spacing:-.05em;margin:0}.fatal-error p{color:#aaa9a3;line-height:1.6;margin:0}.fatal-error code{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:12px;color:#d7a7a3;background:#110d0c;overflow-wrap:anywhere}.test-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#060606;color:#f3f3ee}.instruction-overlay{display:flex;align-items:center;justify-content:center;padding:clamp(20px,5vw,64px);overflow:auto}.instruction-card{width:min(820px,100%);margin:auto}.instruction-card h2{font-size:clamp(2.7rem,7vw,5.6rem);line-height:.95;letter-spacing:-.055em;margin:12px 0 24px}.instruction-card p{font-size:clamp(1rem,2.2vw,1.22rem);line-height:1.7;color:#b3b3ac;max-width:760px}.instruction-card p strong{color:#f3f3ee}.instruction-card .muted{font-size:.92rem;color:#7f7f78}.instruction-meta{display:flex;justify-content:space-between;gap:20px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;letter-spacing:.1em;color:#888881;text-transform:uppercase}.control-map{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:30px 0}.control-map>div{border:1px solid #2d2d29;border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:8px;background:#0d0d0c}.control-map span,.control-line,.key-hint{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#92928a}.control-line{border-left:3px solid var(--accent);padding:14px 18px;margin:28px 0 30px;background:#0e0e0c;line-height:1.55}.key-hint{font-size:.75rem;margin-top:12px}.practice-note{border:1px solid #343430;border-radius:12px;padding:12px 14px;margin:18px 0;color:#b6b5ab;background:#10100e}.countdown-overlay,.saving-overlay{display:flex;align-items:center;justify-content:center;text-align:center}.countdown-number{font-size:clamp(7rem,28vw,18rem);font-weight:800;letter-spacing:-.08em;line-height:.8}.countdown-caption{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-transform:uppercase;letter-spacing:.16em;color:#75756f;margin-top:26px;font-size:.75rem}.measurement-overlay{display:flex;align-items:center;justify-content:center;cursor:none;touch-action:manipulation;user-select:none;-webkit-user-select:none;overscroll-behavior:none}.measurement-overlay .illusion-canvas{width:min(72vmin,680px)!important;height:min(72vmin,680px)!important;max-width:92vw;max-height:92vh;background:radial-gradient(circle,#11110f 0,#060606 69%)}.saving-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);margin:auto;animation:savepulse .7s ease-in-out infinite alternate}@keyframes savepulse{0%{opacity:.25;transform:scale(.75)}to{opacity:1;transform:scale(1.2)}}@media(max-width:620px){.instruction-overlay{align-items:flex-start;padding-top:34px}.control-map{grid-template-columns:1fr}.instruction-card h2{font-size:clamp(2.5rem,13vw,4.2rem)}.measurement-overlay .illusion-canvas{width:min(88vw,74vh)!important;height:min(88vw,74vh)!important}}.compact-card{width:min(720px,100%)}.compact-card h2{margin-bottom:18px}.sound-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:22px 0;color:#8e8e87;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem}.sound-ok{color:#a7c77c}.sound-bad{color:#e1a19b}.feedback-overlay{display:flex;align-items:center;justify-content:center;text-align:center}.feedback-readout{min-width:min(560px,88vw);padding:36px 24px}.feedback-readout .eyebrow{margin-bottom:14px}.feedback-value{font-size:clamp(3.8rem,12vw,8.5rem);font-weight:800;letter-spacing:-.07em;line-height:.9}.feedback-detail{color:#9b9b94;margin-top:20px;font-size:1rem}.feedback-progress{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#5f5f59;margin-top:24px;font-size:.72rem;letter-spacing:.12em}.dataset-section{margin:46px 0 56px;padding-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-bottom:42px}.dataset-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.dataset-head .eyebrow{margin-bottom:10px}.dataset-head h3{font-size:clamp(1.6rem,4vw,2.6rem);margin:0;letter-spacing:-.035em}.live-pill{border:1px solid #3e4d2b;color:#b8d985;background:#11150c;padding:6px 9px;border-radius:999px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.68rem;letter-spacing:.14em}.dataset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.dataset-grid>div{border:1px solid var(--line);border-radius:14px;padding:16px;background:#10100f;display:flex;min-height:92px;flex-direction:column;justify-content:space-between;gap:10px}.dataset-grid span{color:#777771;font-size:.75rem;line-height:1.3}.dataset-grid strong{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.25rem}.dataset-note{font-size:.82rem!important;color:#71716b!important;margin:18px 0 0!important;line-height:1.5!important}@media(max-width:700px){.dataset-grid{grid-template-columns:1fr 1fr}.sound-row{align-items:flex-start}.feedback-value{font-size:clamp(3.2rem,18vw,6rem)}}@media(max-width:440px){.dataset-grid{grid-template-columns:1fr}}
