@font-face{font-family:Gaso;src:url('public/fonts/source-sans-400.ttf')}@font-face{font-family:Gaso;src:url('public/fonts/source-sans-600.ttf');font-weight:700 800}
:root{--bg:#0d0b24;--panel:#171438;--panel2:#211b49;--ink:#f5f1ff;--muted:#b8afd4;--violet:#aa8cff;--lime:#c9ff7a;--coral:#ff9a7a;--pink:#ff7fa5;--blue:#72cbff;--line:#393064;--radius:15px;--shadow:0 22px 55px rgba(3,2,18,.42)}
*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:Gaso,system-ui,sans-serif}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% 8%,rgba(170,140,255,.14),transparent 31%),radial-gradient(circle at 90% 88%,rgba(114,203,255,.08),transparent 28%),var(--bg)}button,select{font:inherit}.hidden{display:none!important}button{color:inherit}.start-shell{min-height:100vh;padding:34px clamp(24px,5vw,76px);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);grid-template-rows:auto 1fr auto auto;gap:34px 7vw}.brand{grid-column:1/-1;font-size:1.1rem;font-weight:800;display:flex;align-items:center;gap:11px}.brand em{font-style:normal;color:var(--muted);font-size:.68rem;letter-spacing:.12em}.brand-mark{width:30px;height:30px;border:2px solid var(--violet);border-radius:50%;display:grid;place-items:center}.brand-mark i{display:block;width:16px;height:7px;border-bottom:2px solid var(--lime);transform:skewX(-35deg)}h1{font-size:clamp(3.2rem,7vw,6.2rem);line-height:.92;letter-spacing:-.04em;margin:0;max-width:13ch}h2{font-size:clamp(1.65rem,3vw,2.7rem);line-height:1.08;letter-spacing:-.03em;margin:0}.lead{color:#cec7e3;font-size:1.08rem;line-height:1.65;max-width:64ch}.start-copy{align-self:center}.normal-strip{display:flex;flex-wrap:wrap;gap:1px;margin-top:28px}.normal-strip span{background:var(--panel);padding:12px 16px;color:var(--muted);font-size:.78rem}.normal-strip b{color:var(--lime);margin-left:5px;font-variant-numeric:tabular-nums}.session-selector{align-self:center;background:var(--panel);padding:27px;border-radius:var(--radius);box-shadow:var(--shadow);display:grid;gap:13px}.session-selector label{color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em}.session-selector select{appearance:none;background:var(--panel2);border:1px solid var(--line);color:var(--ink);padding:15px;border-radius:11px;outline:none}.toggle{display:flex;align-items:center;gap:9px!important;letter-spacing:0!important;font-size:.85rem!important}.toggle input{width:18px;height:18px;accent-color:var(--violet)}.primary{border:0;border-radius:12px;background:var(--lime);color:#18122c;padding:16px 20px;font-weight:800;cursor:pointer;transition:transform .2s ease-out,box-shadow .2s ease-out}.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 26px rgba(201,255,122,.16)}.primary:disabled{opacity:.35;cursor:not-allowed}.primary span{display:block;font-size:.72rem;opacity:.7;margin-top:3px}.quiet{background:transparent;border:0;color:var(--muted);padding:8px;cursor:pointer}.reward-map{grid-column:1/-1;display:grid;grid-template-columns:1fr auto 1fr;border-block:1px solid var(--line);align-items:center}.reward-map>div{padding:22px 28px}.reward-map small,.reward-map strong,.reward-map span{display:block}.reward-map small{color:var(--violet);font-weight:800;letter-spacing:.11em}.reward-map span{color:var(--muted);font-size:.82rem;margin-top:4px}.pulse-preview,.result-wave{display:flex!important;gap:6px;align-items:center}.pulse-preview i,.result-wave i{width:26px;height:8px;background:var(--violet);clip-path:polygon(0 40%,35% 40%,46% 0,58% 100%,69% 40%,100% 40%,100% 60%,72% 60%,58% 100%,43% 20%,37% 60%,0 60%)}.disclaimer{grid-column:1/-1;color:#8e85ac;font-size:.72rem;margin:0}.credits{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.78rem}.credits strong{color:var(--violet);letter-spacing:.18em}.credits span{border-left:1px solid var(--line);padding-left:12px}.game-shell{min-height:100vh;padding:20px clamp(16px,3vw,44px)}.game-header{height:54px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:20px;max-width:1500px;margin:auto}.icon-button{border:0;background:transparent;color:var(--muted);font-size:2rem;cursor:pointer}.progress-track{height:8px;border-radius:8px;background:#211b49;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--lime);width:0}.score{display:flex;align-items:center;gap:14px;font-size:.78rem}.score span{color:var(--violet);font-weight:800}.score strong{color:var(--lime)}.sound-button{border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);padding:6px 10px;cursor:pointer}.case-grid{max-width:1500px;min-height:calc(100vh - 112px);margin:18px auto 0;display:grid;grid-template-columns:minmax(460px,1.3fr) minmax(350px,.7fr);border-top:1px solid var(--line)}.lab-panel{padding:24px 4vw 28px 0;border-right:1px solid var(--line);display:flex;flex-direction:column}.case-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.1em;margin-bottom:14px}.abg-stage,.clinical-stage{flex:1;min-height:470px;border-radius:var(--radius);background:radial-gradient(circle at 50% 30%,rgba(170,140,255,.18),transparent 35%),var(--panel);box-shadow:var(--shadow);padding:clamp(26px,4vw,58px);display:flex;flex-direction:column;justify-content:center}.ph-orbit{height:150px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid var(--line)}.ph-orbit:after{content:"ÁCIDO                                      EQUILÍBRIO                                      BÁSICO";position:absolute;bottom:10px;width:100%;color:var(--muted);font-size:.64rem;white-space:pre;text-align:center}.ph-orbit>span{color:var(--muted);font-weight:800}.ph-orbit strong{font-size:4.5rem;line-height:1;color:var(--lime);font-variant-numeric:tabular-nums}.ph-orbit #ph-marker{position:absolute;bottom:0;width:2px;height:26px;background:var(--lime);transform:translateX(-50%)}.gas-values{display:grid;grid-template-columns:repeat(4,1fr);margin-top:24px}.gas-values div{padding:18px;text-align:center}.gas-values div+div{border-left:1px solid var(--line)}.gas-values span,.gas-values small{display:block;color:var(--muted)}.gas-values strong{font-size:2.2rem;font-variant-numeric:tabular-nums}.acid-wave{height:40px;margin-top:24px;overflow:hidden}.acid-wave span{display:block;width:100%;height:100%;background:var(--violet);clip-path:polygon(0 48%,12% 48%,16% 30%,20% 70%,24% 48%,42% 48%,46% 10%,50% 92%,54% 48%,72% 48%,76% 34%,80% 64%,84% 48%,100% 48%,100% 54%,84% 54%,80% 70%,76% 40%,72% 54%,54% 54%,50% 100%,46% 18%,42% 54%,24% 54%,20% 77%,16% 37%,12% 54%,0 54%)}.clinical-stage small{color:var(--violet);font-weight:800;letter-spacing:.12em}.clinical-stage h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1.13;max-width:19ch;margin-top:18px}.clinical-stage p{color:var(--muted);max-width:60ch;line-height:1.6}.sequence{display:flex;gap:8px;justify-content:center;margin-top:16px;flex-wrap:wrap}.sequence span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.68rem}.sequence .active{color:var(--lime);border-color:var(--lime)}.answer-panel{padding:clamp(28px,5vw,72px) 0 28px clamp(28px,4vw,58px);display:flex;align-items:center}.answer-panel>div{width:100%}#difficulty,#feedback-label{color:var(--violet);font-size:.72rem;font-weight:800;letter-spacing:.13em;margin:0 0 18px}#question-copy{color:var(--muted);line-height:1.55;margin:14px 0 20px}.confidence{display:flex;align-items:center;gap:7px;margin-bottom:18px}.confidence span{color:var(--muted);font-size:.72rem}.confidence button{border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);padding:6px 10px;cursor:pointer}.confidence button.active{background:#332864;border-color:var(--violet);color:var(--ink)}.options{display:grid;gap:10px;margin-bottom:18px}.option{position:relative;width:100%;min-height:54px;padding:14px 14px 14px 54px;text-align:left;border:1px solid var(--line);border-radius:12px;background:var(--panel);cursor:pointer}.option:hover{border-color:var(--violet)}.option[aria-checked=true]{border-color:var(--lime);background:#29214d}.option kbd{position:absolute;left:15px;top:13px;width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;color:var(--muted)}.answer-panel .primary{width:100%}.feedback-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:1.8rem;font-weight:800;margin-bottom:24px}.feedback.correct .feedback-icon{background:rgba(201,255,122,.12);color:var(--lime)}.feedback.wrong .feedback-icon{background:rgba(255,127,165,.12);color:var(--pink)}.feedback.correct #feedback-label{color:var(--lime)}.feedback.wrong #feedback-label{color:var(--pink)}#feedback-clue{color:#d1cae6;line-height:1.6}.reasoning{border-block:1px solid var(--line);padding:18px 0;margin:24px 0}.reasoning small{color:var(--blue);font-weight:800;letter-spacing:.12em}.reasoning p{color:var(--muted);line-height:1.55;margin:7px 0 0}.result-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px}.result-wave i{width:54px;height:22px;background:var(--lime)}.result-shell h1{max-width:11ch;margin-top:25px}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);width:min(680px,100%);margin:30px 0;border-block:1px solid var(--line)}.result-stats div{padding:20px}.result-stats div+div{border-left:1px solid var(--line)}.result-stats strong,.result-stats span{display:block}.result-stats strong{font-size:2rem;color:var(--lime)}.result-stats span{color:var(--muted);font-size:.75rem}.mastery-list{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;max-width:850px;margin-bottom:28px}.mastery-list span{border:1px solid var(--line);border-radius:999px;padding:7px 11px;color:var(--muted);font-size:.72rem}.mastery-list .earned{color:var(--lime);border-color:var(--lime)}.result-shell>.credits{margin:25px 0 12px}#celebration{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:20;opacity:0}#celebration.active{opacity:1}.primary:focus-visible,.quiet:focus-visible,.option:focus-visible,.icon-button:focus-visible,.sound-button:focus-visible,select:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
@media(max-width:850px){.start-shell{grid-template-columns:1fr;grid-template-rows:auto auto auto auto auto;padding:24px}.brand,.reward-map,.disclaimer{grid-column:auto}.reward-map{grid-template-columns:1fr}.pulse-preview{justify-content:flex-start}.case-grid{grid-template-columns:1fr}.lab-panel{border-right:0;border-bottom:1px solid var(--line);padding:16px 0}.answer-panel{padding:28px 0}.abg-stage,.clinical-stage{min-height:430px}.score span{display:none}}
@media(max-width:560px){h1{font-size:3.25rem}.game-header{gap:9px}.gas-values{grid-template-columns:repeat(2,1fr)}.gas-values div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.gas-values div:nth-child(4){border-top:1px solid var(--line)}.ph-orbit:after{content:"ÁCIDO              EQUILÍBRIO              BÁSICO"}.abg-stage,.clinical-stage{min-height:400px;padding:22px}.clinical-stage h2{font-size:2rem}.sequence{display:none}.result-stats strong{font-size:1.4rem}.result-stats div{padding:15px 5px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.confidence button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.review-status{margin:0;padding:11px 13px;border-radius:10px;background:#2b234f;color:#e2dafa;font-size:.8rem;line-height:1.45}
