:root{--bg:#f5f7fb;--card:#fff;--text:#172033;--muted:#667085;--line:#dfe5ef;--brand:#143a73;--brand2:#1f5ba7;--ok:#0b7a45;--bad:#b42318;--warn:#b54708;--shadow:0 12px 34px rgba(15,35,70,.10);--radius:22px;--bottom:88px}html[data-theme=dark]{--bg:#0c1220;--card:#141c2d;--text:#eef4ff;--muted:#a9b5c9;--line:#2c3850;--brand:#78aaff;--brand2:#9bc0ff;--shadow:0 18px 44px rgba(0,0,0,.26)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,var(--bg),color-mix(in srgb,var(--bg) 92%,var(--brand) 8%));color:var(--text);font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;min-height:100vh;padding-bottom:calc(var(--bottom) + env(safe-area-inset-bottom))}button,input,select,textarea{font:inherit}button,.secondary,.ghost,.file-label{border:0;border-radius:14px;padding:.82rem 1rem;background:var(--brand);color:white;font-weight:750;cursor:pointer;box-shadow:0 7px 18px rgba(20,58,115,.18)}button:disabled{opacity:.5;cursor:not-allowed}.secondary,.file-label{background:color-mix(in srgb,var(--card) 85%,var(--brand) 15%);color:var(--text);border:1px solid var(--line);box-shadow:none}.ghost{background:transparent;color:var(--text);border:1px solid var(--line);box-shadow:none}.danger{background:#b42318}.hidden{display:none!important}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem clamp(1rem,4vw,2rem);backdrop-filter:blur(18px);background:color-mix(in srgb,var(--bg) 75%,transparent);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.8rem}.logo-dot{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:var(--brand);color:white;font-weight:900}.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;color:var(--muted);font-weight:850;margin:0 0 .15rem}.topbar h1{font-size:1.12rem;margin:0}.top-actions{display:flex;align-items:center;gap:.5rem}.app{max-width:1180px;margin:0 auto;padding:1rem clamp(.85rem,3vw,1.4rem)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1rem,3vw,1.4rem)}.loading{text-align:center;max-width:680px;margin:8vh auto}.spinner{width:34px;height:34px;border-radius:50%;border:4px solid var(--line);border-top-color:var(--brand);margin:0 auto 1rem;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}h2{font-size:clamp(1.45rem,3.2vw,2.25rem);line-height:1.12;margin:.25rem 0 .7rem}h3{margin:1.2rem 0 .65rem}.muted{color:var(--muted)}.home-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}.hero{grid-column:span 8;display:block;min-height:260px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--brand) 14%,transparent),transparent 45%),var(--card)}.hero h2{max-width:780px}.hero .muted{max-width:680px}#homeStats{grid-column:span 8}.home-grid>.compact{grid-column:span 4;min-height:0}.actions{display:flex;gap:.65rem;align-items:center}.actions.wrap{flex-wrap:wrap}.actions.stack{flex-direction:column}.actions.stack>*{width:100%}.actions.small button,.actions.small .file-label{padding:.62rem .75rem;font-size:.9rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.75rem}.stat-card{border:1px solid var(--line);background:color-mix(in srgb,var(--card) 88%,var(--brand) 12%);border-radius:18px;padding:1rem}.stat-card strong{display:block;font-size:1.55rem;line-height:1.05}.stat-card span{display:block;color:var(--muted);font-size:.9rem;margin-top:.35rem}.compact{min-height:190px}.steps{padding-left:1.25rem}.layout{display:grid;grid-template-columns:330px 1fr;gap:1rem}.layout.single{display:block;max-width:1100px;margin:0 auto}.panel{position:sticky;top:86px;align-self:start}.panel-head,.split-head{display:flex;align-items:start;justify-content:space-between;gap:.7rem}.pill{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--line);border-radius:999px;padding:.42rem .7rem;background:color-mix(in srgb,var(--card) 85%,var(--brand) 15%);font-weight:800}label{display:block;margin:.8rem 0;color:var(--muted);font-weight:750}select,input,textarea{width:100%;border:1px solid var(--line);border-radius:13px;padding:.75rem .85rem;background:var(--card);color:var(--text);margin-top:.35rem}textarea{resize:vertical}.check{display:flex;gap:.55rem;align-items:center;margin:.45rem 0;color:var(--text);font-weight:600}.check input{width:auto;margin:0}fieldset{border:1px solid var(--line);border-radius:16px;margin:.9rem 0;padding:.75rem .85rem}legend{padding:0 .35rem;color:var(--muted);font-weight:850}.content{min-height:420px}.preview-list{display:grid;gap:.75rem;margin-top:1rem}.preview-item,.attempt-card{border:1px solid var(--line);border-radius:17px;padding:.9rem;background:color-mix(in srgb,var(--card) 92%,var(--brand) 8%)}.badges{display:flex;flex-wrap:wrap;gap:.4rem;margin:.2rem 0 .8rem}.badge{display:inline-flex;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 86%,var(--brand) 14%);border-radius:999px;padding:.25rem .55rem;font-size:.78rem;font-weight:850}.badge.official{background:color-mix(in srgb,#e0f2fe 70%,var(--card));color:#075985}.badge.generated{background:color-mix(in srgb,#fef3c7 70%,var(--card));color:#92400e}.badge.reserve{background:color-mix(in srgb,#fee2e2 70%,var(--card));color:#991b1b}.badge.marked{background:#fde68a;color:#78350f}.mock-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.wide{grid-column:1/-1}.notice{border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:18px;padding:1rem;background:color-mix(in srgb,var(--card) 92%,var(--brand) 8%);margin:1rem 0}.quiz{display:grid;gap:1rem}.quiz-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.progress-row{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}.progress-row progress{width:100%;height:12px;accent-color:var(--brand)}.question-card h3{font-size:clamp(1.08rem,3.8vw,1.55rem);line-height:1.28}.options{display:grid;gap:.7rem;margin:1rem 0}.option-btn{width:100%;text-align:left;background:var(--card);color:var(--text);border:1px solid var(--line);box-shadow:none;display:grid;grid-template-columns:42px 1fr;align-items:start;gap:.75rem}.option-btn .letter{display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--brand) 16%,transparent);font-weight:900;min-height:34px}.option-btn.selected{outline:2px solid var(--brand)}.option-btn.correct{border-color:color-mix(in srgb,var(--ok) 70%,var(--line));background:color-mix(in srgb,var(--card) 82%,#16a34a 18%)}.option-btn.wrong{border-color:color-mix(in srgb,var(--bad) 70%,var(--line));background:color-mix(in srgb,var(--card) 82%,#ef4444 18%)}.feedback{border-radius:17px;padding:1rem;margin:1rem 0}.feedback.ok{background:color-mix(in srgb,var(--card) 80%,#22c55e 20%);border:1px solid color-mix(in srgb,var(--ok) 55%,var(--line))}.feedback.bad{background:color-mix(in srgb,var(--card) 80%,#ef4444 20%);border:1px solid color-mix(in srgb,var(--bad) 55%,var(--line))}.note-box{margin-top:1rem}.quiz-nav{display:grid;grid-template-columns:1fr 1fr 1fr 1.35fr;gap:.75rem;position:sticky;bottom:calc(var(--bottom) + .5rem);z-index:10}.score-box{border:1px solid var(--line);border-radius:18px;padding:1rem;background:color-mix(in srgb,var(--card) 90%,var(--brand) 10%);margin:1rem 0}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px}table{border-collapse:collapse;width:100%;min-width:650px}th,td{padding:.75rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:color-mix(in srgb,var(--card) 78%,var(--brand) 22%)}tr:last-child td{border-bottom:0}.bars{display:grid;gap:.7rem}.bar-row{display:grid;grid-template-columns:minmax(160px,1.2fr) 2fr 70px;align-items:center;gap:.7rem;border:1px solid var(--line);border-radius:16px;padding:.65rem}.bar{height:14px;background:color-mix(in srgb,var(--card) 70%,var(--line));border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;background:var(--brand);border-radius:999px}.bar-row.weak .bar span{background:var(--bad)}.bar-row.strong .bar span{background:var(--ok)}.attempts{display:grid;gap:.65rem}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(6,1fr);gap:.35rem;padding:.5rem max(.5rem,env(safe-area-inset-left)) calc(.5rem + env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-right));background:color-mix(in srgb,var(--card) 90%,transparent);border-top:1px solid var(--line);backdrop-filter:blur(18px)}.bottom-nav button{box-shadow:none;border-radius:14px;padding:.65rem .25rem;font-size:.83rem;background:transparent;color:var(--muted);border:1px solid transparent}.bottom-nav button.active{background:var(--brand);color:white}.file-label{display:inline-flex;align-items:center;justify-content:center}@media(max-width:850px){.home-grid,.layout,.hero{grid-template-columns:1fr}.hero,#homeStats,.home-grid>.compact{grid-column:1/-1}.panel{position:static}.mock-grid{grid-template-columns:1fr}.quiz-top{align-items:flex-start}.split-head{display:block}.topbar{padding:.75rem .9rem}.brand h1{font-size:1rem}.logo-dot{width:40px;height:40px}.app{padding:.85rem}.card{border-radius:18px}.stat-card strong{font-size:1.35rem}.quiz-nav{grid-template-columns:1fr 1fr 1fr 1fr}.option-btn{grid-template-columns:36px 1fr}.bottom-nav button{font-size:.72rem}}@media(max-width:420px){.eyebrow{font-size:.68rem}.top-actions{gap:.3rem}.ghost{padding:.6rem .7rem}.bottom-nav{gap:.2rem}.bottom-nav button{padding:.55rem .15rem}.stats-grid{grid-template-columns:repeat(2,1fr)}}

/* Estudio */
.study-shell{display:grid;gap:1rem}.study-hero{display:grid;grid-template-columns:1.2fr .9fr;gap:1rem;align-items:start;background:radial-gradient(circle at 10% 0,color-mix(in srgb,var(--brand) 16%,transparent),transparent 45%),var(--card)}.study-toolbar{display:grid;grid-template-columns:1fr;gap:.35rem}.study-toolbar label{margin:0}.study-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.study-grid.main-study{display:grid;grid-template-columns:300px 1fr;gap:1rem}.compact-card{min-height:auto}.study-index{position:sticky;top:86px;align-self:start;max-height:calc(100vh - 120px);overflow:auto}.index-list{display:grid;gap:.45rem}.index-link,.path-step{width:100%;text-align:left;background:color-mix(in srgb,var(--card) 92%,var(--brand) 8%);color:var(--text);border:1px solid var(--line);box-shadow:none;border-radius:14px;padding:.72rem .8rem;display:grid;gap:.15rem}.index-link small,.path-step small{color:var(--muted);font-weight:650}.index-link.done,.path-step.done{border-color:color-mix(in srgb,var(--ok) 70%,var(--line));background:color-mix(in srgb,var(--card) 82%,#22c55e 18%)}.path-list{display:grid;gap:.5rem}.path-step{grid-template-columns:34px 1fr;align-items:center}.path-step strong{grid-row:span 2;background:var(--brand);color:#fff;display:grid;place-items:center;border-radius:11px;min-height:34px}.compare-box .profile-card-mini{border:1px solid var(--line);background:color-mix(in srgb,var(--card) 92%,var(--brand) 8%);border-radius:18px;padding:1rem}.profile-card-mini h4{margin:.65rem 0 .25rem;font-size:1.25rem}.chip-row{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.6rem}.chip{display:inline-flex;border:1px solid var(--line);background:color-mix(in srgb,var(--brand) 12%,var(--card));border-radius:999px;padding:.32rem .6rem;font-size:.82rem;font-weight:800}.study-modules{display:grid;gap:1rem}.study-card{scroll-margin-top:90px;overflow:hidden}.study-card.is-done{outline:2px solid color-mix(in srgb,var(--ok) 55%,transparent)}.study-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;border-bottom:1px solid var(--line);padding-bottom:.8rem;margin-bottom:1rem}.study-card-head h3{font-size:clamp(1.15rem,2.2vw,1.65rem);margin:.1rem 0}.visual-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.6rem;margin:.85rem 0 1rem}.map-node{border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--card) 84%,var(--brand) 16%),var(--card));padding:.8rem;display:grid;grid-template-columns:36px 1fr;gap:.55rem;align-items:center;min-height:74px}.map-node strong{height:34px;width:34px;border-radius:12px;background:var(--brand);color:white;display:grid;place-items:center}.map-node span{font-weight:850}.study-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.study-columns section{border:1px solid var(--line);border-radius:18px;padding:1rem;background:color-mix(in srgb,var(--card) 96%,var(--brand) 4%)}.study-columns h4{margin:.1rem 0 .7rem}.clean-list,.trap-list{padding-left:0;list-style:none;display:grid;gap:.55rem;margin:0}.clean-list li,.trap-list li{position:relative;padding-left:1.55rem}.clean-list li:before{content:'✓';position:absolute;left:0;color:var(--ok);font-weight:900}.trap-list li:before{content:'!';position:absolute;left:0;background:color-mix(in srgb,var(--warn) 22%,var(--card));color:var(--warn);border-radius:999px;width:1.05rem;height:1.05rem;display:grid;place-items:center;font-size:.75rem;font-weight:900;top:.1rem}.memory-box{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:center;border:1px solid color-mix(in srgb,var(--brand) 50%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 22%,var(--card)),var(--card));border-radius:18px;padding:.95rem 1rem;margin-top:1rem}.memory-box span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.75rem;font-weight:900}.memory-box strong{font-size:1.05rem}.deep-box{margin-top:.85rem;border:1px solid var(--line);border-radius:16px;padding:.85rem 1rem;background:color-mix(in srgb,var(--card) 94%,var(--brand) 6%)}.deep-box summary{cursor:pointer;font-weight:900}.deep-box li{margin:.45rem 0}.bottom-nav{grid-template-columns:repeat(6,1fr)}
@media(max-width:950px){.study-hero,.study-grid.two,.study-grid.main-study,.study-columns{grid-template-columns:1fr}.study-index{position:static;max-height:none}.study-card-head{display:block}.study-card-head .actions{margin-top:.7rem}.visual-map{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.bottom-nav button{font-size:.68rem}}
@media(min-width:1200px){.app{max-width:1320px}.home-grid{align-items:start}.hero{grid-column:span 8}#homeStats{grid-column:span 8}.home-grid>.compact{grid-column:span 4}.study-grid.main-study{grid-template-columns:340px 1fr}}


/* Aula v4: estudio guiado, una ficha cada vez */
.aula-shell { max-width: 1220px; margin: 0 auto; }
.aula-hero { display:grid; grid-template-columns: minmax(0,1.2fr) minmax(320px,.8fr); gap: 20px; align-items: start; background: linear-gradient(135deg, rgba(20,58,115,.45), rgba(15,23,42,.96)); }
.aula-hero h2 { max-width: 760px; }
.aula-top { align-items:stretch; }
.aula-main { grid-template-columns: 320px minmax(0,1fr); align-items:start; }
.aula-index { position: sticky; top: 86px; max-height: calc(100vh - 120px); overflow:auto; }
.index-link.active, .path-step.active { border-color: var(--brand); background: rgba(105,161,255,.20); box-shadow: inset 0 0 0 1px rgba(105,161,255,.3); }
.aula-path { display:grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr)); gap: 8px; }
.aula-path .path-step { min-height: 78px; }
.aula-card { padding: 0; overflow:hidden; }
.aula-card-head { display:grid; grid-template-columns:minmax(0,1fr) 140px; gap:20px; padding:24px; border-bottom:1px solid var(--line); background: radial-gradient(circle at top left, rgba(105,161,255,.22), transparent 40%), rgba(15,23,42,.6); }
.aula-card-head h3 { margin: 5px 0 8px; font-size: clamp(1.4rem, 2.5vw, 2.25rem); letter-spacing:-.02em; }
.lesson-hook { color: var(--text); font-size:1.05rem; line-height:1.55; margin:0; max-width:760px; }
.aula-progress { align-self:center; text-align:right; color:var(--muted); font-weight:700; }
.aula-progress .bar { height:8px; background:rgba(255,255,255,.08); border-radius:999px; margin-top:8px; overflow:hidden; }
.aula-progress .bar i { display:block; height:100%; background:linear-gradient(90deg,var(--brand),#f7b84b); border-radius:999px; }
.aula-actions { padding: 14px 24px; border-bottom:1px solid var(--line); background: rgba(15,23,42,.45); }
.aula-one-liner { margin:24px; padding:18px 20px; border-radius:20px; border:1px solid rgba(247,184,75,.45); background:linear-gradient(135deg, rgba(247,184,75,.18), rgba(105,161,255,.10)); }
.aula-one-liner span { display:block; color:#f7b84b; text-transform:uppercase; font-size:.74rem; font-weight:900; letter-spacing:.08em; margin-bottom:6px; }
.aula-one-liner strong { display:block; font-size:1.12rem; line-height:1.55; }
.aula-map { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin: 0 24px 24px; }
.aula-node { position:relative; min-height:92px; padding:16px; border-radius:18px; border:1px solid var(--line); background:rgba(35,52,82,.72); display:flex; flex-direction:column; justify-content:center; gap:8px; }
.aula-node strong { width:34px; height:34px; display:grid; place-items:center; border-radius:12px; background:var(--brand); color:white; font-size:1rem; }
.aula-node span { font-weight:800; line-height:1.25; }
.aula-board { display:grid; grid-template-columns:1.15fr .85fr; gap:16px; margin:0 24px 24px; }
.aula-panel { border:1px solid var(--line); border-radius:20px; padding:18px; background:rgba(15,23,42,.58); }
.aula-panel h4, .aula-compare h4 { margin:0 0 14px; font-size:1rem; text-transform:uppercase; letter-spacing:.04em; color:#dce8ff; }
.aula-flashcards { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:10px; }
.aula-flash { border-radius:16px; padding:14px; background:rgba(105,161,255,.10); border:1px solid rgba(105,161,255,.23); }
.aula-flash b { display:block; color:#78b7ff; font-size:1rem; margin-bottom:6px; }
.aula-flash span { color:var(--text); line-height:1.45; }
.aula-panel .check-list, .aula-panel .trap-list, .aula-panel .clean-list { margin:0; padding-left:0; list-style:none; display:grid; gap:10px; }
.aula-panel .check-list li, .aula-panel .clean-list li { padding-left:28px; position:relative; line-height:1.45; }
.aula-panel .check-list li::before, .aula-panel .clean-list li::before { content:'✓'; position:absolute; left:0; top:0; color:#f7b84b; font-weight:900; }
.aula-panel .trap-list li { padding-left:30px; position:relative; line-height:1.45; }
.aula-panel .trap-list li::before { content:'!'; position:absolute; left:0; top:0; width:20px; height:20px; border-radius:50%; display:grid; place-items:center; background:#ef4444; color:white; font-size:.8rem; font-weight:900; }
.aula-compare { margin:0 24px 24px; padding:18px; border-radius:20px; border:1px solid var(--line); background:rgba(35,52,82,.54); }
.aula-compare > div { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:10px; }
.aula-compare article { border-radius:16px; padding:14px; border:1px dashed rgba(255,255,255,.18); background:rgba(0,0,0,.10); }
.aula-compare b { display:block; color:#f7b84b; margin-bottom:6px; }
.aula-glossary { margin:0; display:grid; gap:10px; }
.aula-glossary dt { color:#78b7ff; font-weight:900; }
.aula-glossary dd { margin:2px 0 0; color:var(--text); line-height:1.4; }
.aula-case { margin:0 24px 24px; border-radius:20px; border:1px solid rgba(105,161,255,.35); background:rgba(105,161,255,.08); overflow:hidden; }
.aula-case summary { cursor:pointer; padding:18px 20px; display:grid; gap:8px; list-style:none; }
.aula-case summary::-webkit-details-marker { display:none; }
.aula-case summary span { color:#f7b84b; text-transform:uppercase; font-size:.75rem; font-weight:900; letter-spacing:.08em; }
.aula-case summary strong { font-size:1.08rem; line-height:1.45; }
.aula-case summary em { color:var(--muted); font-style:normal; font-weight:700; }
.aula-case p { margin:0; padding:18px 20px; border-top:1px solid var(--line); line-height:1.55; background:rgba(0,0,0,.16); }
.aula-checkrow { display:grid; grid-template-columns:.8fr 1.2fr; gap:16px; margin:0 24px 24px; }
.aula-checkrow .memory-box { margin:0; min-height:100%; display:flex; flex-direction:column; justify-content:center; }
.coach-box { margin:0 24px 24px; border-radius:18px; padding:16px 18px; border:1px solid rgba(247,184,75,.28); background:rgba(247,184,75,.08); }
.coach-box span { color:#f7b84b; text-transform:uppercase; font-size:.74rem; font-weight:900; letter-spacing:.08em; }
.coach-box p { margin:6px 0 0; line-height:1.5; }
button[disabled] { opacity:.45; cursor:not-allowed; }
.tiny { font-size:.85rem; }
@media (max-width: 980px) {
  .aula-hero, .aula-main, .aula-board, .aula-checkrow, .aula-card-head { grid-template-columns:1fr; }
  .aula-index { position:relative; top:0; max-height:none; }
  .aula-card-head, .aula-actions, .aula-one-liner, .aula-map, .aula-board, .aula-compare, .aula-case, .aula-checkrow, .coach-box { margin-left:14px; margin-right:14px; }
  .aula-card-head { margin:0; padding:18px; }
  .aula-actions { margin:0; padding:12px 18px; }
}


/* Temario oficial auditado v1 */
.audit-shell{max-width:1280px;margin:0 auto;display:grid;gap:1rem}.audit-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.8fr);gap:1rem;align-items:start;background:linear-gradient(135deg,rgba(105,161,255,.18),rgba(15,23,42,.92))}.audit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.legend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.65rem;margin-top:1rem}.legend-grid>div{border:1px solid var(--line);border-radius:14px;padding:.7rem;background:rgba(255,255,255,.03);display:grid;gap:.35rem}.status{display:inline-flex;align-items:center;width:max-content;padding:.28rem .55rem;border-radius:999px;font-weight:900;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--line)}.status.cubierto{background:rgba(34,197,94,.16);color:#86efac;border-color:rgba(34,197,94,.35)}.status.reforzado{background:rgba(105,161,255,.18);color:#9cc7ff;border-color:rgba(105,161,255,.38)}.status.parcial{background:rgba(247,184,75,.16);color:#ffd28a;border-color:rgba(247,184,75,.35)}.status.pendiente{background:rgba(239,68,68,.16);color:#fecaca;border-color:rgba(239,68,68,.35)}.status.histórico{background:rgba(168,85,247,.16);color:#e9d5ff;border-color:rgba(168,85,247,.35)}.hotspot{border:1px solid var(--line);border-radius:16px;padding:.85rem 1rem;background:rgba(255,255,255,.035);margin:.55rem 0}.hotspot strong{color:#f7b84b}.hotspot p{margin:.25rem 0 0;line-height:1.45}.audit-list-card{display:grid;gap:1rem}.audit-block{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:rgba(255,255,255,.025);margin-bottom:1rem}.audit-block h4{margin:0;padding:1rem 1.1rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;background:rgba(105,161,255,.08)}.audit-block h4 span{color:var(--muted);font-size:.9rem}.audit-topic-list{display:grid}.audit-topic{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:1rem;padding:1rem 1.1rem;border-bottom:1px solid var(--line);align-items:center}.audit-topic:last-child{border-bottom:0}.audit-topic h5{font-size:1rem;line-height:1.35;margin:.55rem 0 .25rem}.audit-topic-side{display:grid;justify-items:end;text-align:right;gap:.2rem}.audit-topic-side strong{font-size:1.35rem}.risk{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:900}.small-btn{font-size:.82rem;padding:.45rem .65rem}.audit-topic.pendiente{background:linear-gradient(90deg,rgba(239,68,68,.09),transparent)}.audit-topic.parcial{background:linear-gradient(90deg,rgba(247,184,75,.07),transparent)}.audit-topic.reforzado{background:linear-gradient(90deg,rgba(105,161,255,.07),transparent)}.audit-topic.histórico{background:linear-gradient(90deg,rgba(168,85,247,.07),transparent)}
.bottom-nav{grid-template-columns:repeat(7,1fr)}
@media(max-width:900px){.audit-hero,.audit-grid,.audit-topic{grid-template-columns:1fr}.audit-topic-side{justify-items:start;text-align:left}.bottom-nav button{font-size:.64rem}.legend-grid{grid-template-columns:1fr}}

/* Auditado gamificado v2 */
.bottom-nav{grid-template-columns:repeat(8,1fr)}
.games-shell{max-width:1240px;margin:0 auto;display:grid;gap:1rem}.games-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.8fr);gap:1rem;align-items:start;background:linear-gradient(135deg,rgba(247,184,75,.15),rgba(105,161,255,.13),rgba(15,23,42,.9))}.games-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.game-card{cursor:pointer;transition:.18s transform,.18s border-color}.game-card:hover{transform:translateY(-2px);border-color:var(--brand)}.game-card h3{margin-top:0}.game-panel{min-height:320px}.flash-big{min-height:240px;border-radius:28px;border:1px solid rgba(105,161,255,.35);background:radial-gradient(circle at top left,rgba(105,161,255,.22),transparent 45%),rgba(15,23,42,.62);display:grid;place-items:center;text-align:center;padding:2rem;margin:1rem 0}.flash-big strong{font-size:clamp(1.5rem,4vw,2.5rem);line-height:1.15;max-width:780px}.flash-big span{display:block;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-top:.9rem}.statement-box{border:1px solid var(--line);border-radius:20px;padding:1.2rem;background:color-mix(in srgb,var(--card) 82%,var(--brand) 18%);font-size:1.1rem;line-height:1.45;margin:1rem 0}.statement-box.warning{background:rgba(247,184,75,.12);border-color:rgba(247,184,75,.4)}.options.mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.65rem}.score-line{font-size:1.2rem;font-weight:900}.feedback.good{border-color:rgba(34,197,94,.5);background:rgba(34,197,94,.12)}.feedback.bad{border-color:rgba(239,68,68,.5);background:rgba(239,68,68,.12)}
.audit-metric-note{font-size:.84rem;color:var(--muted)}
@media(max-width:900px){.games-hero{grid-template-columns:1fr}.bottom-nav{grid-template-columns:repeat(4,1fr)}}

/* v5 guía ideal */
.fast-plan{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.fast-plan article{padding:12px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg,var(--panel),rgba(255,255,255,.02))}
.fast-plan b{display:block;font-size:1.05rem;color:var(--accent);margin-bottom:6px}.fast-plan span{font-size:.92rem;color:var(--muted)}
.learning-goal{padding:14px;border-radius:18px;background:rgba(42,122,255,.08);border:1px solid rgba(42,122,255,.22);margin:10px 0}.learning-goal span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.learning-goal p{margin:.35rem 0 0;font-weight:700}
.visual-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:12px 0}.visual-summary div{border-radius:14px;padding:10px;background:rgba(255,255,255,.05);border:1px solid var(--border)}.visual-summary strong{display:block}.visual-summary small{color:var(--muted)}
.exam-angles,.recall,.drills{background:rgba(255,255,255,.04)}
.sprint-cards{display:grid;gap:10px;margin:16px 0}.sprint-cards div{padding:12px;border-radius:14px;border:1px solid var(--border);background:rgba(255,255,255,.05)}
.chosen-order{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.chosen-order span{padding:8px 10px;border-radius:999px;background:rgba(42,122,255,.12);border:1px solid rgba(42,122,255,.25);font-size:.9rem}
@media (max-width:720px){.fast-plan{grid-template-columns:1fr}.visual-summary{grid-template-columns:1fr 1fr}}

/* V6 Tutor adaptativo */
.tutor-shell{display:grid;gap:1rem}.tutor-hero{display:grid;grid-template-columns:1.4fr .9fr;gap:1rem;align-items:end}.tutor-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.tutor-plan{display:grid;gap:.8rem}.mission-card{border:1px solid var(--border);background:linear-gradient(135deg,rgba(37,99,235,.10),rgba(15,23,42,.03));border-radius:1rem;padding:1rem}.mission-card h4{margin:.1rem 0 .35rem}.quality-panel{display:grid;gap:.8rem}.quality-meter{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.75rem;border:1px solid var(--border);border-radius:.9rem;background:var(--soft)}.quality-meter strong{font-size:1.6rem}.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.compact-bars .bar-row{grid-template-columns:1.4fr .8fr auto}.small-btn{font-size:.85rem;padding:.55rem .75rem}.badge.reserve{border-color:var(--warning);color:var(--warning)}
@media (max-width: 850px){.tutor-hero,.tutor-grid{grid-template-columns:1fr}.action-grid{grid-template-columns:1fr}.compact-bars .bar-row{grid-template-columns:1fr}.compact-bars .bar-row .bar{width:100%}}


/* Base visual */
.diagnostic-shell{display:grid;gap:1rem}.diagnostic-hero{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.diagnostic-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:1rem}.diagnostic-plan{display:grid;gap:.7rem}.strong-notice{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.game-recommendations{margin-bottom:1rem}.feedback .actions button[disabled]{opacity:.55}.tiny{font-size:.82rem}.sprint-cards{display:grid;gap:.55rem;margin:.8rem 0}.sprint-cards div,.chosen-order span{display:block;padding:.6rem;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
@media (max-width: 820px){.diagnostic-hero{display:block}.diagnostic-grid{grid-template-columns:1fr}}

/* V8 RC2 · guía ideal de estudio */
.ideal-flow{display:grid;gap:1rem;margin-top:1rem}
.ideal-step{display:grid;grid-template-columns:44px 1fr;gap:.85rem;align-items:start;border:1px solid var(--border);background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(255,255,255,.025));border-radius:18px;padding:1rem}
.ideal-step h4{margin:.05rem 0 .5rem;font-size:1.05rem}.ideal-step p{margin:.35rem 0;line-height:1.55}.step-num{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:var(--accent);color:#fff;font-weight:900;box-shadow:0 6px 18px rgba(37,99,235,.25)}
.teacher-step{background:linear-gradient(135deg,rgba(13,148,136,.12),rgba(37,99,235,.08))}.teacher-step .big-idea{font-size:1.08rem;font-weight:800;color:var(--text)}
.confusion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.confusion-grid article{border:1px solid var(--border);border-radius:14px;padding:.75rem;background:var(--soft);display:grid;gap:.25rem}.confusion-grid b{color:var(--accent)}.confusion-grid span{font-weight:700}.confusion-grid small{color:var(--muted);line-height:1.35}
.mini-case-grid{display:grid;gap:.8rem}.ideal-mini-case{border:1px solid var(--border);border-radius:16px;padding:.9rem;background:rgba(245,158,11,.08)}.ideal-mini-case h5{margin:.2rem 0 .45rem;font-size:1rem}.case-tag{display:inline-flex;padding:.25rem .55rem;border-radius:999px;background:rgba(245,158,11,.14);color:var(--warning);font-weight:800;font-size:.78rem}.case-answer{display:none;margin-top:.6rem;padding:.75rem;border-radius:12px;background:rgba(34,197,94,.10);border:1px solid rgba(34,197,94,.25)}.ideal-mini-case.show-answer .case-answer{display:block}
.action-step{border-color:rgba(37,99,235,.35)}.correction-step{border-color:rgba(239,68,68,.24)}.correction-list{margin:.3rem 0 .8rem;padding-left:1.2rem}.correction-list li{margin:.35rem 0}
.support-drawer{margin-top:1rem;border:1px solid var(--border);border-radius:18px;background:var(--card);overflow:hidden}.support-drawer summary{cursor:pointer;padding:1rem;font-weight:900;color:var(--accent);background:var(--soft)}.support-drawer[open] summary{border-bottom:1px solid var(--border)}.support-drawer > section,.support-drawer > div{margin:1rem}
.aula-card .aula-one-liner{display:none}
.lesson-hook{font-size:1rem;line-height:1.55}.aula-card-head{border-bottom:1px solid var(--border);padding-bottom:.8rem;margin-bottom:.8rem}
@media (max-width:720px){.ideal-step{grid-template-columns:34px 1fr;padding:.85rem}.step-num{width:30px;height:30px}.confusion-grid{grid-template-columns:1fr}.ideal-step h4{font-size:1rem}.support-drawer > section,.support-drawer > div{margin:.75rem}}

/* Navegación principal reducida y flujo de estudio */
:root{--bottom:76px}
.main-bottom-nav{grid-template-columns:repeat(5,1fr)!important;max-width:760px;left:50%;transform:translateX(-50%);right:auto;width:min(100%,760px);border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0;padding:.55rem;background:color-mix(in srgb,var(--bg) 88%,transparent);box-shadow:0 -14px 32px rgba(0,0,0,.14)}
.main-bottom-nav button{border-radius:16px;padding:.75rem .45rem;font-size:.88rem;display:grid;place-items:center;min-height:44px}.main-bottom-nav button span{font-weight:850}.main-bottom-nav button.active{box-shadow:0 8px 20px rgba(20,58,115,.24)}
.ux-home{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}.ux-hero{grid-column:span 8;min-height:auto}.ux-flow-card{grid-column:span 4}.ux-stats{grid-column:span 8}.ux-next-card,.ux-tools-card,.ux-quality-card{grid-column:span 4}.main-actions button{min-width:150px}.flow-steps{display:grid;gap:.55rem}.flow-steps div{display:grid;grid-template-columns:34px 1fr;gap:.55rem;align-items:center;padding:.65rem;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--card) 90%,var(--brand) 10%)}.flow-steps span{grid-row:span 2;width:34px;height:34px;border-radius:12px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:900}.flow-steps b{line-height:1}.flow-steps small{color:var(--muted);font-weight:700}.home-next-action p{margin-top:0}.no-margin{margin:0}.practice-hub-shell{display:grid;gap:1rem}.practice-hub-hero{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;background:radial-gradient(circle at top right,color-mix(in srgb,var(--brand) 16%,transparent),transparent 46%),var(--card)}.hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.hub-card{cursor:pointer;transition:transform .16s,border-color .16s;display:flex;flex-direction:column;min-height:230px}.hub-card:hover{transform:translateY(-2px);border-color:var(--brand)}.hub-card button{margin-top:auto}.hub-icon{font-size:2rem;line-height:1}.primary-hub-card{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 16%,var(--card)),var(--card))}
@media(max-width:1000px){.ux-hero,.ux-flow-card,.ux-stats,.ux-next-card,.ux-tools-card,.ux-quality-card{grid-column:1/-1}.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-hub-hero{display:block}.practice-hub-hero .actions{margin-top:1rem}}
@media(max-width:620px){:root{--bottom:72px}.main-bottom-nav{border-radius:18px 18px 0 0;padding:.4rem;width:100%}.main-bottom-nav button{font-size:.76rem;padding:.65rem .25rem}.hub-grid{grid-template-columns:1fr}.main-actions button{min-width:auto;width:100%}.main-actions{display:grid;grid-template-columns:1fr 1fr}.ux-hero h2{font-size:1.7rem}}


/* V8 RC5 · estudio ampliado */
.deep-study-block{
  margin:18px 0;
  padding:16px;
  border:1px solid var(--border);
  border-radius:22px;
  background:linear-gradient(180deg, rgba(110,164,255,.10), rgba(15,27,48,.52));
}
.deep-study-head{margin-bottom:12px;}
.deep-study-head span{display:inline-flex; font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); font-weight:800; margin-bottom:6px;}
.deep-study-head h4{font-size:22px; line-height:1.15; margin:0 0 6px;}
.deep-study-head p{margin:0; color:var(--muted); max-width:76ch;}
.deep-study-sections{display:grid; gap:10px;}
.deep-study-section{border:1px solid rgba(129,153,197,.25); background:rgba(8,17,32,.42); border-radius:16px; overflow:hidden;}
.deep-study-section summary{cursor:pointer; padding:13px 14px; display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--text);}
.deep-study-section summary::after{content:'+'; width:24px; height:24px; border-radius:999px; background:rgba(111,166,255,.16); display:grid; place-items:center; color:var(--accent); font-weight:900; flex:0 0 auto;}
.deep-study-section[open] summary::after{content:'−';}
.deep-study-section p{padding:0 14px; margin:0 0 12px; color:#dbe6fb; line-height:1.62; max-width:95ch;}
ul.deep-bullets{margin:0; padding:0 14px 14px 34px; color:#eef4ff; display:grid; gap:7px; line-height:1.45;}
ul.deep-bullets li::marker{color:var(--accent);}
.teacher-step .big-idea{font-size:18px; line-height:1.45; color:#fff;}
.aula-card .ideal-flow{gap:14px;}
@media (max-width: 760px){
  .deep-study-block{padding:12px; border-radius:18px;}
  .deep-study-head h4{font-size:19px;}
  .deep-study-section p{font-size:14px; line-height:1.55;}
}


/* RC6 rich study maps */
.rich-map-block{display:flex;flex-direction:column;gap:14px;margin-top:10px}
.rich-map-intro{margin:0;color:var(--text);line-height:1.65}
.rich-map-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.rich-flow-chip{position:relative;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;background:rgba(37,99,235,.10);border:1px solid rgba(96,165,250,.24)}
.rich-flow-chip strong{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:999px;background:var(--accent);color:#fff;font-size:.9rem}
.rich-flow-chip span{font-weight:700;line-height:1.25}
.rich-flow-chip i{position:absolute;right:-9px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--muted)}
.rich-map-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.rich-map-card{border-radius:18px;padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid var(--border);box-shadow:0 10px 28px rgba(0,0,0,.14)}
.rich-map-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.rich-step{display:flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:rgba(96,165,250,.18);color:#dbeafe;font-weight:800}
.rich-map-head h5{margin:2px 0 0;font-size:1rem;line-height:1.3}
.rich-map-main{margin:.2rem 0 .65rem;line-height:1.6;color:var(--text)}
.rich-map-clue,.rich-map-sub{margin:.45rem 0 0;color:var(--muted);line-height:1.5;font-size:.95rem}.rich-map-clue strong{color:#dbeafe}
.rich-map-footer{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.map-memory,.map-warning{border-radius:16px;padding:14px;background:rgba(255,255,255,.035);border:1px solid var(--border)}
.map-memory strong,.map-warning strong{display:block;margin-bottom:6px}.map-memory p,.map-warning ul{margin:0;color:var(--text);line-height:1.55}.map-warning ul{padding-left:18px}
@media (max-width:720px){.rich-map-grid,.rich-map-flow,.rich-map-footer{grid-template-columns:1fr}.rich-flow-chip i{display:none}.rich-map-card{padding:14px}}


/* RC7: mapas de estudio con valor didáctico */
.study-map-pro{display:flex;flex-direction:column;gap:16px}
.map-pro-head{padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,rgba(96,165,250,.13),rgba(255,255,255,.035));border:1px solid rgba(96,165,250,.22)}
.map-pro-head span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--muted);font-weight:800;margin-bottom:5px}
.map-pro-head h5{margin:0 0 6px;font-size:1.2rem}.map-pro-head p{margin:0;color:var(--text);line-height:1.6}
.map-pro-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.flow-step{display:flex;align-items:center;gap:10px;padding:12px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid var(--border)}
.flow-step b{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:var(--accent);color:white;flex:0 0 auto}.flow-step span{font-weight:750;line-height:1.25}
.map-pro-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:12px}
.map-pro-card{padding:16px;border-radius:20px;background:rgba(255,255,255,.045);border:1px solid var(--border);box-shadow:0 10px 30px rgba(0,0,0,.14)}
.map-pro-card header{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px}.map-pro-card header strong{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:rgba(96,165,250,.22);color:#dbeafe;flex:0 0 auto}.map-pro-card h6{margin:4px 0 0;font-size:1.02rem;line-height:1.25}.map-pro-card p{margin:.35rem 0 .7rem;line-height:1.6;color:var(--text)}
.map-exam,.map-trap{margin-top:9px;border-radius:14px;padding:10px 12px;line-height:1.5;background:rgba(96,165,250,.08);border:1px solid rgba(96,165,250,.18);color:var(--text)}
.map-trap{background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.20)}
.map-exam span,.map-trap span{display:block;margin-bottom:3px;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:900}
.map-pro-compare{border-radius:18px;border:1px solid var(--border);background:rgba(255,255,255,.035);padding:14px}
.map-pro-compare h6{margin:0 0 10px;font-size:1rem}.map-pro-compare div{display:grid;grid-template-columns:minmax(120px,.6fr) 1fr;gap:10px;padding:10px 0;border-top:1px solid rgba(255,255,255,.08)}.map-pro-compare div:first-of-type{border-top:0}.map-pro-compare b{color:#dbeafe}.map-pro-compare span{color:var(--text);line-height:1.5}
.map-pro-bottom{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.map-pro-bottom section{border-radius:18px;border:1px solid var(--border);background:rgba(255,255,255,.035);padding:14px}.map-pro-bottom b{display:block;margin-bottom:6px}.map-pro-bottom p,.map-pro-bottom ul{margin:0;line-height:1.6}.map-pro-bottom ul{padding-left:18px}
@media (max-width:720px){.map-pro-panels,.map-pro-flow,.map-pro-bottom{grid-template-columns:1fr}.map-pro-compare div{grid-template-columns:1fr;gap:4px}}


/* RC8: tema desarrollado como lección real */
.pro-lesson{border:1px solid rgba(96,165,250,.22);background:linear-gradient(180deg,rgba(96,165,250,.06),rgba(255,255,255,.025));border-radius:22px;padding:18px;margin:0}
.pro-lesson .deep-study-head{margin-bottom:14px}
.pro-lesson .deep-study-head span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--muted);font-weight:900;margin-bottom:5px}
.pro-lesson .deep-study-head h4{font-size:1.25rem;margin:.1rem 0 .35rem}
.pro-lesson .deep-study-head p{margin:0;color:var(--muted);line-height:1.55}
.lesson-rail{display:flex;flex-direction:column;gap:12px}
.lesson-card{border-radius:18px;border:1px solid var(--border);background:rgba(255,255,255,.04);overflow:hidden}
.lesson-card summary{cursor:pointer;display:flex;gap:10px;align-items:center;padding:14px 16px;list-style:none}
.lesson-card summary::-webkit-details-marker{display:none}
.lesson-card summary span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:var(--accent);color:#fff;font-weight:900;flex:0 0 auto}
.lesson-card summary b{font-size:1rem}
.lesson-body{padding:0 16px 16px 54px}
.lesson-body p{line-height:1.72;margin:.65rem 0;color:var(--text)}
.lesson-body .deep-bullets{margin:.7rem 0 0;padding-left:1.1rem}.lesson-body .deep-bullets li{margin:.45rem 0;line-height:1.55}
@media (max-width:720px){.pro-lesson{padding:12px}.lesson-body{padding:0 13px 14px 13px}.lesson-card summary{padding:12px}.lesson-card summary span{width:26px;height:26px}}


/* RC10: Estudio limpio, didáctico y sin redundancias */
.clean-study-flow{display:flex;flex-direction:column;gap:18px;margin-top:18px}
.clean-hero{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;border:1px solid rgba(96,165,250,.22);background:linear-gradient(135deg,rgba(96,165,250,.11),rgba(255,255,255,.035));border-radius:22px;padding:18px}
.clean-hero span{display:block;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.72rem;font-weight:900;margin-bottom:5px}.clean-hero h4{margin:0;font-size:1.15rem;line-height:1.35}.clean-hero-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.clean-lesson,.clean-box,.clean-map-section,.clean-case,.clean-reference{border:1px solid var(--border);background:rgba(255,255,255,.035);border-radius:22px;padding:18px}
.clean-lesson h4,.clean-box h4,.clean-map-section h4,.clean-case h4{margin:.05rem 0 .8rem;font-size:1.12rem}.clean-lesson p,.clean-box p{line-height:1.7;margin:.6rem 0;color:var(--text)}
.clean-section-head p{margin:.2rem 0 1rem;color:var(--muted);line-height:1.55}.clean-section-head strong{color:var(--text)}
.clean-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:0 0 14px}.clean-flow span{display:flex;align-items:center;gap:9px;border:1px solid rgba(96,165,250,.20);background:rgba(96,165,250,.08);border-radius:15px;padding:10px 12px;font-weight:750}.clean-flow b{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:var(--accent);color:#fff;flex:0 0 auto}
.clean-map-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.clean-map-cards article{border:1px solid var(--border);background:rgba(255,255,255,.035);border-radius:18px;padding:14px}.clean-map-cards header{display:flex;gap:9px;align-items:flex-start;margin-bottom:8px}.clean-map-cards header b{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:rgba(96,165,250,.20);color:#dbeafe}.clean-map-cards header strong{line-height:1.25}.clean-map-cards p{line-height:1.6;margin:.45rem 0;color:var(--text)}
.clean-exam,.clean-trap{margin-top:9px;padding:10px;border-radius:14px;border:1px solid rgba(96,165,250,.18);background:rgba(96,165,250,.07);line-height:1.5}.clean-trap{background:rgba(245,158,11,.07);border-color:rgba(245,158,11,.18)}.clean-exam span,.clean-trap span{display:block;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:var(--muted);font-size:.7rem;margin-bottom:3px}
.clean-takeaway{margin-top:12px;padding:12px 14px;border-radius:16px;background:rgba(34,197,94,.07);border:1px solid rgba(34,197,94,.20)}.clean-takeaway b{display:block;margin-bottom:4px}.clean-takeaway p{margin:0;line-height:1.55}
.clean-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.clean-confusions{display:flex;flex-direction:column;gap:8px}.clean-confusions div{display:grid;grid-template-columns:minmax(120px,.55fr) 1fr;gap:9px;border-top:1px solid rgba(255,255,255,.08);padding-top:8px}.clean-confusions div:first-child{border-top:0;padding-top:0}.clean-confusions b{color:#dbeafe}.clean-confusions span{line-height:1.5}
.case-card-clean{border-radius:18px;background:rgba(255,255,255,.035);border:1px solid var(--border);padding:15px}.case-card-clean > span{display:inline-flex;margin-bottom:8px;font-weight:900;color:#dbeafe}.case-card-clean p{line-height:1.65}.case-card-clean details{margin-top:10px}.case-card-clean summary{cursor:pointer;font-weight:800}
.clean-reference summary{cursor:pointer;font-weight:900}.clean-reference section{margin-top:14px}.clean-card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.clean-card-list div{border:1px solid var(--border);background:rgba(255,255,255,.035);border-radius:14px;padding:12px}.clean-card-list b{display:block;margin-bottom:5px}.clean-card-list span{color:var(--muted);line-height:1.45}.clean-reference dl{display:grid;grid-template-columns:minmax(120px,.35fr) 1fr;gap:8px 12px}.clean-reference dt{font-weight:900;color:#dbeafe}.clean-reference dd{margin:0;color:var(--text);line-height:1.45}
@media (max-width:820px){.clean-hero{grid-template-columns:1fr}.clean-hero-actions{justify-content:flex-start}.clean-grid-two{grid-template-columns:1fr}.clean-confusions div{grid-template-columns:1fr}.clean-reference dl{grid-template-columns:1fr}.clean-map-cards{grid-template-columns:1fr}.clean-flow{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.clean-flow{grid-template-columns:1fr}.clean-lesson,.clean-box,.clean-map-section,.clean-case,.clean-reference,.clean-hero{padding:14px;border-radius:18px}}


/* RC26: anclaje de fichas en banco real */
.bank-evidence { margin-top: 1rem; padding: 1rem; border-radius: 18px; background: rgba(19, 88, 121, .06); border: 1px solid rgba(19, 88, 121, .14); }
.mini-stats { display:flex; flex-wrap:wrap; gap:.5rem; margin:.75rem 0 1rem; }
.mini-stats span { display:inline-flex; padding:.35rem .6rem; border-radius:999px; background: var(--surface); border:1px solid var(--border); font-size:.82rem; color: var(--muted); }
.bank-example-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap:.75rem; }
.bank-example-grid article { background: var(--surface); border:1px solid var(--border); border-radius:16px; padding:.85rem; }
.bank-example-grid article span { display:block; font-size:.78rem; color:var(--muted); margin-bottom:.35rem; }
.bank-example-grid article p { margin:.35rem 0; }
.bank-example-grid details { margin-top:.5rem; }
.bank-traps { margin-top:.85rem; }
.bank-traps h5 { margin:.2rem 0 .45rem; }
.bank-traps ul { margin:.25rem 0 0 1.1rem; }


/* RC28: motor adaptativo y simulador avanzado */
.confidence-placeholder{margin-top:1rem}
.confidence-box{border:1px solid rgba(96,165,250,.22);background:rgba(96,165,250,.07);border-radius:18px;padding:14px;margin-top:1rem}
.confidence-box strong{display:block;margin-bottom:.25rem}
.confidence-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.confidence-buttons .active{outline:2px solid var(--accent);background:rgba(96,165,250,.18)}
.advanced-analysis{margin:1rem 0;padding:1rem;border-radius:20px;border:1px solid rgba(96,165,250,.22);background:rgba(96,165,250,.055)}
.advanced-analysis h3{margin-top:0}
.analysis-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:1rem;margin-top:1rem}
.warning-notice{border-color:rgba(245,158,11,.45)!important;background:rgba(245,158,11,.09)!important}
.srs-panel{margin-bottom:1rem}
.srs-topic-grid{display:flex;flex-wrap:wrap;gap:.5rem}
.compact-stats{margin:.7rem 0}
@media (max-width:820px){.analysis-grid{grid-template-columns:1fr}.confidence-buttons{flex-direction:column}.confidence-buttons button{width:100%}}


/* RC35 supuestos largos */
.case-context{display:block;margin:0 0 1rem;padding:1rem;border:1px solid var(--border);border-radius:1rem;background:var(--soft);font-size:.95rem;line-height:1.5;font-weight:400}
.case-context span{display:block;margin-bottom:.35rem;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:700}
.case-context p{margin:0;color:var(--text);font-weight:400}
.longcase-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1rem}
.longcase-card{border:1px solid var(--border);border-radius:1.1rem;padding:1rem;background:var(--card);display:flex;flex-direction:column;gap:.6rem}
.longcase-card span{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}
.longcase-card h4{margin:0}
.longcase-card p{margin:0;color:var(--muted);line-height:1.45}
.longcase-card small{color:var(--muted)}
.longcase-card button{margin-top:auto}


/* RC38 · temario resumido */
.exam-summary{display:grid;gap:18px;margin:18px 0;padding:18px;border:1px solid rgba(148,163,184,.24);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(248,250,252,.96));}
.exam-summary .clean-section-head h4{margin-bottom:8px;}
.exam-summary .clean-section-head p{font-size:1rem;line-height:1.65;color:#334155;}
.exam-summary-sections{display:grid;gap:12px;}
.exam-summary-section{padding:16px;border:1px solid rgba(148,163,184,.22);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.04);}
.exam-summary-section h5,.exam-summary-box h5{margin:0 0 8px;font-size:1.02rem;color:#0f172a;}
.exam-summary-section p{margin:0 0 10px;line-height:1.7;color:#334155;}
.exam-summary-side{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}
.exam-summary-box{padding:14px;border-radius:18px;background:#f8fafc;border:1px solid rgba(148,163,184,.2);}
.article-grid{display:grid;gap:8px;}
.article-grid div{display:grid;grid-template-columns:minmax(90px,.9fr) 2fr;gap:10px;align-items:start;padding:8px;border-radius:12px;background:#fff;border:1px solid rgba(148,163,184,.16);}
.article-grid b{color:#0f172a;font-size:.92rem;}
.article-grid span{color:#475569;font-size:.92rem;line-height:1.45;}
@media(max-width:720px){.article-grid div{grid-template-columns:1fr}.exam-summary{padding:14px}}


/* RC39 · contraste y memoria v1 */
:root{
  --border: var(--line);
  --surface: color-mix(in srgb,var(--card) 92%,var(--brand) 8%);
  --soft: color-mix(in srgb,var(--card) 90%,var(--brand) 10%);
  --accent: var(--brand);
  --warning: var(--warn);
}
html[data-theme=dark]{
  --surface: color-mix(in srgb,var(--card) 88%,var(--brand) 12%);
  --soft: color-mix(in srgb,var(--card) 84%,var(--brand) 16%);
}
.exam-summary,
.exam-summary *{color:#172033;}
.exam-summary .muted{color:#475569!important;}
.exam-summary .clean-list li,
.exam-summary .check-list li,
.exam-summary .trap-list li{color:#1f2937!important;}
.exam-summary .clean-list li:before,
.exam-summary .check-list li:before{color:#087443!important;}
.exam-summary .trap-list li:before{color:#b45309!important;background:#fff7ed!important;}
.exam-summary-section,
.exam-summary-box,
.article-grid div{background:#ffffff;color:#172033;}
.aula-card-head,
.aula-actions{color:#eef4ff;}
.aula-card-head .muted,
.aula-actions .muted{color:#c7d2e5!important;}
.aula-panel{color:var(--text);}
.clean-box,.clean-lesson,.clean-map-section,.clean-case,.clean-reference{color:var(--text);}
.clean-list li,.trap-list li,.check-list li{color:var(--text);}
.games-hero .muted{color:color-mix(in srgb,#ffffff 78%,var(--muted) 22%);}
.flash-big.study-flash{background:linear-gradient(135deg,color-mix(in srgb,var(--card) 86%,var(--brand) 14%),var(--card));color:var(--text);border-color:color-mix(in srgb,var(--brand) 35%,var(--line));}
.flash-big.study-flash strong{font-size:clamp(1.15rem,3vw,1.85rem);line-height:1.35;color:var(--text);}
.flash-big.study-flash span{color:var(--muted);}
.statement-box.warning{background:color-mix(in srgb,var(--card) 84%,#f59e0b 16%);border-color:color-mix(in srgb,#b45309 45%,var(--line));color:var(--text);}
.feedback.good,.feedback.bad{color:var(--text);}
@media(max-width:720px){.flash-big.study-flash{min-height:200px;padding:1.3rem}.flash-big.study-flash strong{font-size:1.15rem}}
