.reasoning-page{
  --reasoning-bg:#070707;
  --reasoning-panel:#0d1112;
  --reasoning-line:rgba(255,255,255,.16);
  --reasoning-gold:#e8c57e;
  --ink:#1d2527;
  --ink-soft:#556063;
  --line:#d6d2c8;
  --petrol:#2f5c60;
  --gold:#755528;
  --error:#8a4b45;
  min-width:0;
  background:#f2f0ea;
  color:var(--ink);
}
.reasoning-page [hidden]{display:none!important}
.reasoning-page .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.reasoning-app :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid #2f5c60;outline-offset:3px}
.reasoning-page .skip:focus-visible{background:#070707;color:#fff;outline:3px solid #f8d98a;outline-offset:3px}
.reasoning-hero{
  min-height:510px;
  padding:clamp(82px,9vw,132px) clamp(24px,5vw,84px) clamp(62px,7vw,96px);
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);
  gap:clamp(42px,8vw,120px);
  align-items:end;
  color:#f4f1e9;
  border-bottom:1px solid var(--reasoning-line);
  background:
    radial-gradient(55% 115% at 100% 10%,rgba(27,117,130,.33),transparent 65%),
    radial-gradient(35% 80% at 0% 100%,rgba(232,197,126,.08),transparent 70%),
    linear-gradient(115deg,#070707 0%,#090c0d 64%,#0b1719 100%);
}
.reasoning-hero .kicker{color:#f8d98a}
.reasoning-hero h1{font:500 clamp(54px,8vw,118px)/.88 var(--display);letter-spacing:-.055em;margin:22px 0 30px}
.reasoning-hero>div>p{max-width:790px;margin:0;color:rgba(255,255,255,.68);font-size:clamp(17px,1.6vw,22px);line-height:1.6}
.reasoning-hero-note{padding:10px 0 10px 26px;border-left:2px solid var(--reasoning-gold)}
.reasoning-hero-note strong{display:block;font:600 clamp(26px,3vw,40px)/1.05 var(--display);color:#fff}
.reasoning-hero-note p{margin:14px 0 0;color:rgba(255,255,255,.66);font-size:14px;line-height:1.65}

.reasoning-app{max-width:1260px;margin:0 auto;padding:clamp(42px,6vw,82px) 28px 96px;display:grid;grid-template-columns:minmax(270px,330px) minmax(0,1fr);gap:24px;align-items:start}
.reasoning-settings,.reasoning-workspace{border:1px solid var(--line);border-radius:20px;background:rgba(248,247,243,.88);box-shadow:0 18px 55px rgba(33,43,44,.07)}
.reasoning-settings{position:sticky;top:94px;padding:28px}
.reasoning-settings h2{font:560 38px/1 var(--display);margin:10px 0 26px}
.reasoning-settings form{display:grid;gap:10px}
.reasoning-settings label{margin-top:7px;font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}
.reasoning-settings select{width:100%;min-height:48px;padding:10px 38px 10px 12px;border:1px solid #c9c5bb;border-radius:10px;background:#fff;color:var(--ink)}
.reasoning-primary,.reasoning-secondary,.reasoning-quiet{min-height:46px;border-radius:10px;padding:11px 16px;font-weight:750;cursor:pointer;transition:transform .16s,background .16s,border-color .16s}
.reasoning-primary{border:1px solid var(--petrol);background:var(--petrol);color:#fff}
.reasoning-primary:hover:not(:disabled){background:#244c50;transform:translateY(-1px)}
.reasoning-secondary{border:1px solid #adbab6;background:#edf1ee;color:#264f52}
.reasoning-secondary:hover:not(:disabled){border-color:var(--petrol);background:#e3ece9}
.reasoning-quiet{border:0;background:transparent;color:var(--petrol);text-decoration:underline;text-decoration-color:rgba(47,92,96,.3);text-underline-offset:4px}
.reasoning-primary:disabled,.reasoning-secondary:disabled{cursor:not-allowed;opacity:.5;transform:none}
.reasoning-settings .reasoning-primary{margin-top:10px;width:100%}
.bank-availability{min-height:22px;margin:14px 0 0;color:var(--ink-soft);font-size:12px}
.bank-availability.is-error{color:var(--error)}
.local-summary{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
.local-summary>strong{font-size:12px;color:var(--ink-soft)}
.local-summary dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:13px 0 0}
.local-summary dl div{padding-left:10px;border-left:1px solid var(--line)}
.local-summary dt{font-size:9px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}
.local-summary dd{margin:4px 0 0;font:600 25px var(--display)}
.privacy-note{margin:18px 0 0;color:var(--ink-soft);font-size:11px}

.reasoning-workspace{min-height:610px;padding:clamp(28px,5vw,62px);overflow:hidden}
.reasoning-welcome{min-height:480px;display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center}
.workspace-number{font:500 clamp(100px,16vw,210px)/.8 var(--display);letter-spacing:-.07em;color:#d6dfdc}
.reasoning-welcome h2,.session-result h2{font:540 clamp(40px,5.5vw,72px)/.94 var(--display);letter-spacing:-.04em;margin:12px 0 18px}
.reasoning-welcome p,.session-result p{max-width:620px;margin:0;color:var(--ink-soft);font-size:16px}
.session-progress{margin-bottom:34px}
.session-progress>div:first-child{display:flex;justify-content:space-between;gap:16px;color:var(--ink-soft);font-size:12px;font-weight:700}
.session-track{height:5px;margin-top:12px;border-radius:999px;background:#dce1dd;overflow:hidden}
.session-track span{display:block;width:0;height:100%;background:var(--petrol);transition:width .24s ease}
.problem-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.problem-meta span{padding:6px 9px;border:1px solid #d1cec5;border-radius:999px;color:var(--ink-soft);font-size:10px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.problem-prompt{max-width:860px;margin:0 0 30px;font:560 clamp(31px,4.5vw,54px)/1.08 var(--display);letter-spacing:-.025em}
#answer-form fieldset{min-width:0;margin:0;padding:0;border:0}
.reasoning-options{display:grid;gap:10px}
.reasoning-option{position:relative;display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:center;min-height:58px;padding:12px 15px;border:1px solid #cecac0;border-radius:13px;background:#fff;cursor:pointer;transition:border-color .16s,background .16s}
.reasoning-option:hover{border-color:#8ea7a2;background:#f4f7f5}
.reasoning-option:has(input:checked){border-color:var(--petrol);background:#e6efec;box-shadow:0 0 0 1px var(--petrol)}
.reasoning-option input{width:20px;height:20px;margin:0;accent-color:var(--petrol)}
.reasoning-option span{line-height:1.42}
.reasoning-option.is-correct{border-color:#528069;background:#e6f0e9}
.reasoning-option.is-wrong{border-color:#9d605a;background:#f4e7e5}
.reasoning-option:has(input:disabled){cursor:default}
#answer-form>.reasoning-primary{margin-top:22px;min-width:160px}
.reasoning-feedback{margin-top:22px;padding:16px 18px;border-radius:12px;border:1px solid transparent}
.reasoning-feedback strong{display:block;margin-bottom:4px}
.reasoning-feedback.is-correct{border-color:#91b5a1;background:#e6f0e9;color:#315946}
.reasoning-feedback.is-error{border-color:#c89e99;background:#f4e7e5;color:#713d38}
.after-answer{margin-top:18px;padding-top:20px;border-top:1px solid var(--line)}
.support-actions{display:flex;flex-wrap:wrap;gap:10px}
.support-panel{margin-top:12px;padding:16px 18px;border-left:3px solid var(--petrol);border-radius:0 10px 10px 0;background:#e8efed;color:#354c4d}
.support-panel::before{content:'Pista';display:block;margin-bottom:5px;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--petrol)}
.support-panel.explanation-panel{border-left-color:var(--gold);background:#f2eadc;color:#54452f}
.support-panel.explanation-panel::before{content:'Explicación';color:#755528}
.next-problem{margin-top:20px}
.session-result{min-height:480px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.result-score{font:600 clamp(48px,7vw,84px)/1 var(--display)!important;color:var(--petrol)!important;margin-bottom:14px!important}
.result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}

.reasoning-page .site-footer{max-width:none;margin:0;padding:34px clamp(24px,5vw,84px);border-top:1px solid #d4d0c6}

@media(max-width:900px){
  .reasoning-hero{grid-template-columns:1fr;min-height:0}
  .reasoning-app{grid-template-columns:1fr}
  .reasoning-settings{position:static}
  .reasoning-settings form{grid-template-columns:1fr 1fr}
  .reasoning-settings form label{align-self:end}
  .reasoning-settings .reasoning-primary{grid-column:1/-1}
}
@media(max-width:760px){
  .reasoning-hero{padding:72px 18px 54px;gap:38px}
  .reasoning-hero h1{font-size:clamp(48px,16vw,72px)}
  .reasoning-app{padding:30px 18px 64px}
  .reasoning-settings,.reasoning-workspace{border-radius:15px}
  .reasoning-settings{padding:22px}
  .reasoning-settings form{grid-template-columns:1fr}
  .reasoning-settings .reasoning-primary{grid-column:auto}
  .reasoning-workspace{min-height:520px;padding:26px 20px}
  .reasoning-welcome{min-height:410px;grid-template-columns:1fr;gap:20px;align-content:center}
  .workspace-number{font-size:112px}
  .problem-prompt{font-size:clamp(30px,9vw,42px)}
  .support-actions,.result-actions{display:grid;grid-template-columns:1fr;width:100%}
  .support-actions button,.result-actions button,.next-problem,#answer-form>.reasoning-primary{width:100%}
  .reasoning-page .site-footer{padding:30px 18px}
}
@media(prefers-reduced-motion:reduce){
  .reasoning-page *{scroll-behavior:auto!important;transition:none!important}
}
