:root{color-scheme:dark;--bg:#0b1022;--surface:#171b31;--surface2:#202642;--text:#f8fafc;--muted:#b8c0d4;--accent:#25d6b4;--accent2:#1678ff;--danger:#ef4444;--line:#36405f;--safe:calc(88px + env(safe-area-inset-bottom));font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at top,#182449 0,#0b1022 42%);color:var(--text);min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #facc15;outline-offset:3px}.app-header{position:sticky;top:0;z-index:30;min-height:64px;background:rgba(11,16,34,.94);backdrop-filter:blur(14px);display:flex;justify-content:space-between;align-items:center;padding:8px max(14px,env(safe-area-inset-left));border-bottom:1px solid rgba(255,255,255,.08)}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand img{width:44px;height:44px;border-radius:12px}.brand div{display:grid;min-width:0}.brand strong{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand span{font-size:.72rem;color:var(--muted);white-space:nowrap}.view{width:min(860px,100%);margin:auto;padding:18px 14px var(--safe)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.65rem,5vw,2.35rem);line-height:1.08}h2{font-size:1.18rem}p{line-height:1.55;color:var(--muted)}.eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#83f3df;font-weight:800;margin-bottom:7px}.hero-card,.panel,.phase,.action-card{background:linear-gradient(145deg,rgba(32,38,66,.97),rgba(23,27,49,.97));border:1px solid var(--line);border-radius:20px;box-shadow:0 16px 40px rgba(0,0,0,.2)}.hero-card,.panel,.phase{padding:18px;margin-bottom:14px}.hero-card{background:linear-gradient(135deg,#1f315f,#17353d)}.hero-card h1{margin-bottom:8px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.stats>div{background:rgba(0,0,0,.18);border-radius:14px;padding:12px;text-align:center;display:grid}.stats b{font-size:1.35rem}.stats span{font-size:.75rem;color:var(--muted)}.stats.big{margin-bottom:14px}.primary-panel h2{font-size:1.35rem}.primary,.secondary,.danger,.action-card,.icon-btn{border:0;border-radius:14px;min-height:48px;padding:11px 16px;font-weight:800}.primary{background:linear-gradient(135deg,var(--accent),#12a88d);color:#061713;width:100%}.secondary{background:var(--surface2);color:var(--text);border:1px solid var(--line)}.danger{background:#4a1820;color:#fecaca;border:1px solid #7f1d1d;width:100%}.small{min-height:38px;padding:7px 11px;font-size:.84rem;width:auto}.icon-btn{width:44px;height:44px;min-height:44px;padding:0;background:var(--surface2);color:var(--text)}.action-grid{display:grid;gap:12px}.action-card{text-align:left;color:var(--text);display:grid;gap:5px;background:var(--surface);border:1px solid var(--line)}.action-card span{font-weight:400;color:var(--muted);line-height:1.35}.section-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;margin-bottom:14px}.section-head>div{min-width:0}.section-head p{margin-bottom:0}.phase header{display:flex;justify-content:space-between;gap:10px}.phase header>span{background:#102640;color:#7dd3fc;border-radius:999px;padding:6px 10px;height:max-content}.card-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px}.mini-card{height:58px;border-radius:12px;border:1px solid var(--line);background:#11162b;color:var(--text);display:grid;place-items:center}.mini-card.completed{background:#12372f;border-color:#1f8f74}.mini-card.available,.mini-card.inProgress,.mini-card.readyForEvidence{background:#153d6e;border-color:#2486ee}.mini-card span{font-size:.7rem}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{padding:6px 9px;border-radius:999px;background:#102640;color:#bfe4ff;font-size:.78rem}.steps{padding-left:22px;color:var(--muted)}.steps li{padding:5px}.steps li.done{color:#84f3c8;font-weight:700}.success{border-color:#18846e;background:linear-gradient(135deg,#12372f,#172a36)}label{display:grid;gap:7px;margin-bottom:14px;color:var(--text);font-weight:700}textarea,input,select{width:100%;border-radius:12px;border:1px solid var(--line);background:#0e1427;color:var(--text);padding:12px}textarea{resize:vertical}.feedback.error{background:#451a1a;border:1px solid #7f1d1d;padding:10px;border-radius:12px;color:#fecaca}.cromo-grid{display:grid;gap:12px}.cromo{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#11162b}.cromo.selected{border-color:var(--accent);box-shadow:0 0 0 2px rgba(37,214,180,.2)}.cromo img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#0a0f1f}.cromo>div{padding:13px}.cromo h3{margin-bottom:5px}.row{display:flex;gap:8px;flex-wrap:wrap}.criterion{display:grid;grid-template-columns:1fr minmax(80px,180px) 44px;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.criterion p{font-size:.82rem;margin:5px 0 0}.criterion meter{width:100%}.product{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.product p{margin:3px 0 0;font-size:.82rem}.stack{display:grid;gap:10px}.file-label{text-align:center;display:block}.file-label input{display:none}.timeline article{border-left:2px solid var(--accent2);padding:0 0 18px 15px}.timeline time{display:block;color:var(--muted);font-size:.75rem;margin-bottom:4px}.timeline p{margin:4px 0}.empty{text-align:center;padding:30px}.bottom-nav{position:fixed;z-index:40;left:50%;bottom:max(8px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(94%,700px);display:grid;grid-template-columns:repeat(5,1fr);background:rgba(17,22,43,.96);border:1px solid var(--line);border-radius:20px;padding:6px;box-shadow:0 20px 45px rgba(0,0,0,.45);backdrop-filter:blur(12px)}.bottom-nav button{background:none;border:0;color:var(--muted);border-radius:14px;padding:7px 3px;font-size:.68rem;display:grid;place-items:center;gap:2px}.bottom-nav button span{font-size:1.15rem}.bottom-nav button.active{background:#183c68;color:#fff}.modal-open{overflow:hidden}.modal-open .app-header,.modal-open .bottom-nav{visibility:hidden}.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.72);display:grid;align-items:end;padding:12px}.modal{width:min(720px,100%);max-height:90dvh;overflow:auto;margin:auto;background:#171b31;border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:0 30px 80px #000}.modal>header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;position:sticky;top:-16px;background:#171b31;padding:16px 0 10px;z-index:2}.modal-image{width:100%;border-radius:16px;max-height:42vh;object-fit:contain;background:#0a0f1f}.guide{display:grid;gap:10px}.guide section{background:#11162b;border-radius:14px;padding:13px}.selected-list{display:grid;gap:6px;margin:10px 0 16px}.selected-list span{background:#11162b;padding:8px;border-radius:9px}.category{display:inline-block;padding:6px 10px;background:#102640;color:#bfe4ff;border-radius:999px}.modal blockquote{font-size:1.15rem;line-height:1.5;margin:18px 0;padding-left:15px;border-left:4px solid var(--accent)}fieldset{border:1px solid var(--line);border-radius:14px;margin:0 0 14px;padding:12px}.radio{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:8px;font-weight:500}.radio input{width:auto}.toast{position:fixed;z-index:200;left:50%;top:45%;transform:translate(-50%,-50%);width:min(88%,480px);background:#12372f;border:1px solid #1f8f74;padding:14px;border-radius:14px;box-shadow:0 20px 60px #000;text-align:center;font-weight:800}.toast.error{background:#451a1a;border-color:#991b1b}.fatal{padding:30px}.reduce-motion *{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media(min-width:640px){.action-grid{grid-template-columns:1fr 1fr}.cromo-grid{grid-template-columns:repeat(3,1fr)}.app-header{padding-inline:max(18px,calc((100vw - 860px)/2))}.modal-backdrop{align-items:center}}@media(max-width:420px){.brand span{display:none}.criterion{grid-template-columns:1fr 70px 38px}.section-head{align-items:stretch;flex-direction:column}.section-head .small{align-self:flex-start}}
.fitness-list{display:grid;gap:8px}.fitness-card{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;text-align:left;background:#11162b;color:var(--text);border:1px solid var(--line);border-radius:13px;padding:11px}.fitness-card.completed{border-color:#1f8f74;background:#12372f}.fitness-card span{font-size:.84rem}.fitness-card i{font-style:normal;color:var(--muted);font-size:.75rem}
/* V38.1 · integridad pedagógica y guía completa */
.view{padding-bottom:calc(var(--safe) + 28px)}
.spaced{margin-top:12px}.feedback.notice{background:#172554;border:1px solid #1d4ed8;padding:10px;border-radius:12px;color:#bfdbfe}.mission-cromos{display:grid;gap:9px;margin:12px 0}.mission-cromos article{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;background:#11162b;border:1px solid var(--line);border-radius:13px;padding:11px}.mission-cromos article span{color:var(--muted);font-size:.85rem}.mission-cromos article button{grid-column:2;grid-row:1/3}.practice-live{border-color:#0ea5e9;background:linear-gradient(135deg,#102640,#172a36)}.timer-note{font-weight:800;color:#7dd3fc}.evidence-target{background:#11162b;border-left:4px solid var(--accent);padding:10px 12px;border-radius:8px}.auto-evidence{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;background:#11162b;padding:12px;border-radius:12px;margin-bottom:14px}.auto-evidence span{color:var(--muted)}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.checklist{display:grid;gap:8px;margin:12px 0}.checklist span{background:#11162b;border:1px solid var(--line);padding:9px;border-radius:10px}.checklist span.ok{border-color:#1f8f74;color:#84f3c8}.guide-hub{display:grid;gap:10px}.guide-hub details{background:linear-gradient(145deg,rgba(32,38,66,.97),rgba(23,27,49,.97));border:1px solid var(--line);border-radius:16px;padding:13px}.guide-hub summary{cursor:pointer;font-size:1.05rem;font-weight:800}.guide-hub details[open] summary{margin-bottom:10px}.guide-hub ol{color:var(--muted);line-height:1.7}.example{padding:11px;border-radius:12px;margin:8px 0}.example.bad{background:#451a1a;border:1px solid #7f1d1d}.example.good{background:#12372f;border:1px solid #1f8f74}.keyboard-open .app-header,.keyboard-open .bottom-nav{display:none}.keyboard-open .view{padding-bottom:28px}.keyboard-open{background:#0b1022}.keyboard-open textarea,.keyboard-open input,.keyboard-open select{scroll-margin-bottom:38dvh}@media(max-width:520px){.two-cols{grid-template-columns:1fr}.mission-cromos article{grid-template-columns:1fr}.mission-cromos article button{grid-column:1;grid-row:auto}.auto-evidence{grid-template-columns:1fr}.guide-hub details{padding:12px}}

/* V38.2 · Compromiso motor */
.rope-panel{border-color:#b45309;background:linear-gradient(145deg,#342113,#1c2238)}
.rope-card{display:grid;grid-template-columns:minmax(120px,42%) 1fr;gap:14px;align-items:center;background:#10162b;border:1px solid var(--line);border-radius:16px;padding:12px;margin:10px 0}
.rope-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;background:#070b16}
.rope-card h2,.rope-card h3{margin:8px 0 4px}.rope-card p{margin-bottom:5px}.rope-card.compact{grid-template-columns:110px 1fr}.rope-card.compact div{display:grid;gap:5px}.rope-rarity{display:inline-block;width:max-content;padding:5px 9px;border-radius:999px;text-transform:uppercase;font-size:.72rem;font-weight:900;letter-spacing:.06em}.rope-rarity.common{background:#7f1d1d;color:#fecaca}.rope-rarity.epic{background:#581c87;color:#e9d5ff}.rope-rarity.legendary{background:#854d0e;color:#fef3c7}.rope-target{color:#fef3c7}.honesty-note{background:#172554;border-left:4px solid #38bdf8;padding:11px 12px;border-radius:10px;color:#dbeafe}.rope-result{display:grid;gap:5px;padding:12px;border-radius:12px;margin-top:10px}.rope-result.mastered{background:#12372f;border:1px solid #1f8f74}.rope-result.pending{background:#422006;border:1px solid #b45309}.rope-result p{margin:0}.check{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:9px}.check input{width:auto}.rope-collection{display:grid;gap:9px;margin-top:12px}.rope-collection article{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:center;background:#11162b;border:1px solid var(--line);border-radius:13px;padding:9px}.rope-collection img{width:72px;height:58px;object-fit:cover;border-radius:9px}.rope-collection div{display:grid;gap:3px}.rope-collection span{font-size:.78rem;color:var(--muted)}
@media(max-width:520px){.rope-card{grid-template-columns:1fr}.rope-card img{max-height:260px}.rope-card.compact{grid-template-columns:92px 1fr}.rope-collection article{grid-template-columns:64px 1fr}.rope-collection article button{grid-column:1/3;width:100%}.rope-collection img{width:64px;height:54px}}

.honesty-confirm{background:#0f2f2a;border:1px solid #1f8f74;padding:10px;border-radius:11px;color:#d1fae5}

/* V38.3 · Identidad visual y navegación contextual */
:root{--safe:calc(104px + env(safe-area-inset-bottom))}
.view{padding-bottom:calc(var(--safe) + 40px)}
.stacked-head{display:grid;gap:14px}
.context-cta{width:100%;display:grid;gap:4px;align-items:start;text-align:left;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,rgba(37,214,180,.22),rgba(25,50,85,.95));box-shadow:0 10px 30px rgba(0,0,0,.25)}
.context-cta b{font-size:1.05rem;color:#fff}
.context-cta small{color:#d7e4f8;font-size:.82rem;line-height:1.35}
.context-cta-kicker{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#9ef7e5;font-weight:900}
.profile-cta{margin:10px 0 0}
.map-cta{background:linear-gradient(135deg,rgba(43,93,194,.42),rgba(27,41,82,.96));border-color:#3259aa}
.rope-rarity.common{background:#14532d;color:#dcfce7}.rope-rarity.epic{background:#4c1d95;color:#ede9fe}.rope-rarity.legendary{background:#854d0e;color:#fef3c7}
.rope-card.visual-card{grid-template-columns:minmax(160px,44%) 1fr;align-items:stretch}
.rope-media{position:relative;border-radius:18px;padding:10px;background:linear-gradient(180deg,#eff5ff,#dce9f8);border:1px solid rgba(15,23,42,.08);overflow:hidden;min-height:220px}
.rope-media svg{width:100%;height:100%;display:block}
.rope-banner{position:absolute;top:12px;left:12px;z-index:1;padding:5px 10px;border-radius:999px;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:#14532d;color:#dcfce7;box-shadow:0 8px 18px rgba(0,0,0,.15)}
.rope-banner.epic{background:#4c1d95;color:#ede9fe}.rope-banner.legendary{background:#92400e;color:#fef3c7}
.rope-copy{display:grid;align-content:center;gap:7px}.rope-copy h2,.rope-copy b{margin:0;font-size:1.7rem;line-height:1.05}.rope-copy p{margin:0}.rope-copy .rope-target{font-size:1.02rem;color:#fef3c7}.rope-copy .rope-caption{font-size:.82rem;color:#c8d4ea}
.rope-panel .rope-card{margin-bottom:0}
.rope-collection article{grid-template-columns:96px 1fr auto;gap:12px;padding:11px}
.rope-thumb{width:96px;height:76px;border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#eff5ff,#dce9f8);border:1px solid rgba(15,23,42,.08)}
.rope-thumb svg{width:100%;height:100%;display:block}
.bottom-nav{bottom:max(10px,calc(env(safe-area-inset-bottom) + 4px))}
@media(max-width:640px){.context-cta b{font-size:1rem}.rope-card.visual-card{grid-template-columns:1fr}.rope-media{min-height:204px}.rope-copy h2,.rope-copy b{font-size:1.45rem}.rope-collection article{grid-template-columns:84px 1fr}.rope-thumb{width:84px;height:68px}.rope-collection article button{grid-column:1/3;width:100%}}
@media(max-width:420px){.context-cta{padding:13px 14px}.rope-media{min-height:190px}}


/* V39 · Lenguaje pedagógico integrado y guía completa */
.guide-hub details p:last-child{margin-bottom:0}
.guide-hub ul{color:var(--muted);line-height:1.65;padding-left:22px}
.guide-hub li{margin-bottom:5px}

/* V40 · Rúbricas, tarjetas reales de comba y Fitness Race secuenciada */
.criterion-card{padding:12px 0;border-bottom:1px solid var(--line)}
.criterion-card:last-child{border-bottom:0}.criterion-card .criterion{border-bottom:0;padding:0}.criterion-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.criterion-footer span{font-size:.82rem;color:var(--muted)}
.guide-criterion{background:#11162b;border:1px solid var(--line);border-radius:14px;padding:12px;margin:10px 0}.guide-criterion p{margin:6px 0 10px}
.rubric-table{display:grid;gap:9px}.rubric-table article{background:#11162b;border:1px solid var(--line);border-radius:13px;padding:12px}.rubric-table article.current{border-color:var(--accent);box-shadow:0 0 0 2px rgba(37,214,180,.2)}.rubric-table p{margin:5px 0 0}
.rope-card.image-card{grid-template-columns:minmax(150px,42%) 1fr}.rope-image-button{display:block;width:100%;padding:0;border:0;background:transparent;border-radius:14px;overflow:hidden}.rope-image-button img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:14px;background:#fff}.rope-copy{display:grid;align-content:center;gap:8px}.rope-copy h2,.rope-copy p{margin:0}.rope-copy .small{justify-self:start}.rope-card.compact .rope-image-button img{aspect-ratio:4/5}.rope-thumb{padding:0;border:0;overflow:hidden}.rope-thumb img{width:100%;height:100%;object-fit:cover;display:block}.rope-full-card{display:block;width:min(100%,460px);max-height:72dvh;object-fit:contain;margin:0 auto;border-radius:16px;background:#fff}.centered{text-align:center}.achievement-button{min-height:38px;padding:7px 11px;border-radius:12px;border:1px solid #1f8f74;background:#12372f;color:#d1fae5;font-weight:800}.map-locked{opacity:.65;border:1px dashed #64748b!important}.locked-phase{opacity:.78}.fitness-card.locked{opacity:.48}.fitness-card.available{border-color:#2486ee}.fitness-card.completed{border-color:#1f8f74;background:#12372f}.modal small{display:block;color:var(--muted);margin-top:6px;line-height:1.4}
@media(max-width:640px){.rope-card.image-card{grid-template-columns:1fr}.rope-image-button img{max-height:58dvh;object-fit:contain}.criterion-footer{align-items:stretch;flex-direction:column}.criterion-footer .small{width:100%}}
.fitness-cromo-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;max-height:38dvh;overflow:auto;padding:4px}.fitness-cromo-options .check{background:#11162b;border:1px solid var(--line);border-radius:10px;padding:8px;font-weight:600}

/* V41 · Implementación consolidada */
.header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.report-panel{border-color:#315a8c;background:linear-gradient(145deg,#18284a,#171b31)}
.report-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}
.report-filters{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.report-preview{min-height:52dvh;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.86rem;line-height:1.45}
.safety-panel summary{cursor:pointer;font-size:1.05rem;font-weight:850}.safety-panel[open] summary{margin-bottom:12px}
.safety-action{display:grid;gap:6px;margin-top:12px;padding:12px;border-radius:14px;background:#11162b;border:1px solid var(--line)}
.safety-action small{color:var(--muted);line-height:1.4}.danger-zone{border-color:#7f1d1d;background:#2a151b}
/* Miniatura compacta dentro de las aventuras con reto motor complementario */
.rope-panel .rope-card.image-card{grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:center}
.rope-panel .rope-image-button img{width:92px;height:116px;aspect-ratio:4/5;object-fit:cover}
.rope-panel .rope-copy{gap:5px}.rope-panel .rope-copy h2{font-size:1.18rem}.rope-panel .rope-copy p{font-size:.88rem}.rope-panel .rope-copy .small{min-height:36px;padding:7px 10px}
@media(max-width:640px){.report-actions{grid-template-columns:1fr}.report-filters{grid-template-columns:1fr}.rope-panel .rope-card.image-card{grid-template-columns:86px minmax(0,1fr)}.rope-panel .rope-image-button img{width:86px;height:108px;max-height:none;object-fit:cover}.rope-panel .rope-copy h2{font-size:1.08rem}.rope-panel .rope-copy .rope-target{font-size:.84rem}}
@media(max-width:380px){.brand .tagline{display:none}.header-actions{gap:5px}.icon-btn{width:40px;height:40px;min-height:40px}.rope-panel .rope-card.image-card{grid-template-columns:76px minmax(0,1fr)}.rope-panel .rope-image-button img{width:76px;height:96px}}


/* V45 · Imágenes fijas de apertura y cierre integradas en la paleta oscura */
.flash-splash{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));background:#07101f;overflow:hidden}
.flash-splash>img{display:block;width:min(100vw,560px);height:min(100dvh,996px);object-fit:contain;filter:none;transform:none;animation:none}
.flash-closing{background:#07101f}
.close-fallback{position:absolute;left:50%;bottom:max(22px,env(safe-area-inset-bottom));transform:translate(-50%,18px);width:min(92vw,560px);padding:14px;border-radius:18px;background:rgba(15,23,42,.97);border:1px solid rgba(255,255,255,.18);box-shadow:0 20px 60px rgba(0,0,0,.45);color:#fff;text-align:center;opacity:0;visibility:hidden;transition:.3s ease}
.close-fallback p{margin:0 0 8px}.flash-closing.show-fallback .close-fallback{opacity:1;visibility:visible;transform:translate(-50%,0)}
.app-closing{overflow:hidden}.close-app-btn{color:#fecaca;border-color:#7f1d1d}.close-app-btn:hover{background:#4a1820}
@media(max-width:460px){.flash-splash{padding:0}.flash-splash>img{width:100vw;height:100dvh}.header-actions{gap:5px}.close-app-btn{width:40px;height:40px;min-height:40px}}

/* Ajustes finales V45 */
.power-icon{width:24px;height:24px;display:block;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.close-app-btn{display:grid;place-items:center;flex:0 0 auto}
@media(max-width:520px){
  .app-header{padding-inline:10px;gap:8px}
  .brand{gap:8px;flex:1 1 auto;overflow:hidden}
  .brand img{width:42px;height:42px;flex:0 0 42px}
  .brand strong{font-size:.96rem}
  .header-actions{gap:6px}
  .header-actions .icon-btn{width:40px;height:40px;min-height:40px;flex:0 0 40px}
}
@media(max-width:360px){
  .brand strong{font-size:.88rem}
  .brand img{width:38px;height:38px;flex-basis:38px}
  .header-actions .icon-btn{width:38px;height:38px;min-height:38px;flex-basis:38px}
}

.guide-motto{margin:14px 0 0;color:#9ff3df;font-weight:800;letter-spacing:.025em;line-height:1.6;text-align:center}


.action-card.action-training{border-color:rgba(34,211,238,.32);box-shadow:0 0 0 1px rgba(34,211,238,.08) inset;}
.surprise-followup{display:none;margin-top:1rem;}
.surprise-followup.active{display:block;}
.surprise-feedback blockquote{margin-bottom:1rem;}
.ok-inline{background:rgba(34,197,94,.12);border-left:4px solid rgba(34,197,94,.7);padding:.75rem 1rem;border-radius:12px;}
.training-session .session-list{margin:1rem 0;}

.range-with-output{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center}.range-with-output output,#rpe-athlete-output{font-size:1.4rem;font-weight:800;min-width:2ch;text-align:center}.training-type-option span{display:flex;flex-direction:column;gap:.25rem}.training-type-option small{opacity:.78}.format-guide p{margin:.65rem 0}.training-review dl{display:grid;grid-template-columns:minmax(110px,.4fr) 1fr;gap:.65rem 1rem}.training-review dt{font-weight:800}.training-review dd{margin:0}.execution-list{display:grid;gap:.7rem;padding-left:1.25rem}.execution-list li{padding:.7rem;background:rgba(15,23,42,.5);border-radius:12px}.execution-list span{display:block;opacity:.75;margin-top:.2rem}@media(max-width:520px){.training-review dl{grid-template-columns:1fr}.training-review dt{margin-top:.45rem}.training-review dd{padding-bottom:.35rem;border-bottom:1px solid rgba(148,163,184,.16)}}

.training-head{align-items:flex-start}.training-summary{display:grid;grid-template-columns:minmax(120px,.35fr) 1fr;gap:.7rem 1rem}.training-summary dt{font-weight:800}.training-summary dd{margin:0}.action-link{display:inline-block;margin-top:.65rem;color:#5eead4}@media(max-width:520px){.training-summary{grid-template-columns:1fr}.training-summary dt{margin-top:.45rem}.training-summary dd{padding-bottom:.45rem;border-bottom:1px solid rgba(148,163,184,.16)}}


/* V48 */
.collection-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin-top:1rem}.collection-stats span{padding:.7rem;background:rgba(15,23,42,.55);border-radius:12px;text-align:center;font-size:.86rem}.home-progress-line{margin-top:1rem}.compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.compact-cromo{display:flex;flex-direction:column;min-width:0}.compact-cromo img{aspect-ratio:4/5;width:100%;height:auto;object-fit:cover;border-radius:14px}.compact-cromo h3{font-size:1rem;margin:.25rem 0}.compact-meta{font-size:.8rem;opacity:.75}.compact-cromo .row{display:grid;grid-template-columns:1fr;gap:.45rem}.range-with-output output{min-width:150px;text-align:right;font-size:1rem}.bottom-nav button{min-width:0}.bottom-nav button span{font-size:1.3rem}@media(max-width:380px){.collection-stats{grid-template-columns:1fr}.bottom-nav{gap:0}.bottom-nav button{font-size:.68rem;padding-inline:.2rem}.compact-grid{grid-template-columns:1fr 1fr}}

/* V51 · navegación universal, Inicio curricular y métricas */
.screen-actions{position:sticky;top:0;z-index:35;display:flex;gap:.5rem;padding:.55rem max(1rem,env(safe-area-inset-left));background:rgba(8,15,35,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(148,163,184,.18)}
.screen-actions button{flex:1;min-height:42px}.danger-soft{color:#fecaca;border-color:rgba(248,113,113,.35)}
.season-progress-box{margin-top:1rem;padding:1rem;border-radius:18px;background:rgba(15,23,42,.48);display:grid;gap:.45rem}.progress-track{height:9px;border-radius:999px;background:rgba(148,163,184,.22);overflow:hidden}.progress-track.large{height:13px}.progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22d3ee,#2dd4bf,#fbbf24)}
.criterion-home-row{margin:.85rem 0}.criterion-home-row>div:first-child{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.35rem}.criterion-home-row span{font-weight:800;color:#67e8f9}.criteria-home-card .secondary{width:100%;margin-top:.75rem}
.training-indicators{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;margin-top:1rem}.training-indicators div{padding:.65rem .25rem;border-radius:14px;background:rgba(15,23,42,.55);text-align:center}.training-indicators b{display:block;font-size:1.05rem}.training-indicators span{display:block;font-size:.68rem;line-height:1.1;color:#cbd5e1;margin-top:.2rem}
@media(max-width:430px){.training-indicators{gap:.25rem}.training-indicators div{padding:.55rem .12rem}.training-indicators b{font-size:.92rem}.training-indicators span{font-size:.58rem}.screen-actions{padding:.45rem .6rem}.screen-actions button{font-size:.76rem;padding:.45rem .35rem}}

/* V51 · UX móvil, onboarding y registro breve */
.home-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.8rem}.welcome-screen{max-width:760px;margin:auto}.welcome-screen>p,.welcome-screen>h1{text-align:center}.sticky-return{position:sticky;top:.5rem;z-index:5}.cromo-list{display:grid;gap:.75rem}.clan-group{background:var(--panel,#161d35);border:1px solid #34405f;border-radius:1rem;padding:.2rem .8rem}.clan-group summary{font-weight:800;padding:.9rem 0;cursor:pointer}.cromo-row{display:grid;grid-template-columns:1fr auto;gap:.7rem;align-items:center;border-top:1px solid #2c3652;padding:.75rem 0}.cromo-row>div:first-child{display:grid;gap:.2rem}.cromo-row span{opacity:.75}.cromo-row.selected{border-left:4px solid #22d3b6;padding-left:.6rem}.test-clan-card{border:1px solid #34405f;border-radius:1rem;padding:1rem;margin:1rem 0}.stepper{display:grid;grid-template-columns:48px minmax(72px,1fr) 48px auto;gap:.45rem;align-items:center}.stepper button{min-height:48px;font-size:1.5rem}.stepper input{text-align:center;min-height:48px}.segmented,.chips-field{display:flex;flex-wrap:wrap;gap:.5rem;border:0;padding:0;margin:1rem 0}.segmented legend,.chips-field legend{width:100%;font-weight:800}.segmented input,.chips-field input{position:absolute;opacity:0}.segmented span,.chips-field span{display:block;border:1px solid #455171;border-radius:999px;padding:.65rem .8rem}.segmented input:checked+span,.chips-field input:checked+span{background:#24ceb2;color:#07111d;border-color:#24ceb2;font-weight:800}.time-pair{display:grid;grid-template-columns:1fr auto 1fr auto;gap:.4rem;align-items:center}.optional-details{margin:1rem 0}.guardian-card,.feedback-block,.feedback-final-card{border:1px solid #34405f;border-radius:1rem;padding:1rem;margin:1rem 0}.feedback-block.positive{border-color:#24ceb2}.feedback-final-card{display:grid;gap:.3rem;background:#10182d}.feedback-final-card b:not(:first-child){margin-top:.6rem}.close-app-btn{font-size:1.05rem}.screen-actions .danger-soft{font-size:.95rem}.training-indicators{grid-template-columns:repeat(5,minmax(56px,1fr))}.criterion-home-row{margin-top:.65rem}
@media(max-width:620px){.app-header .tagline{display:none}.home-quick-actions{position:sticky;top:0;z-index:4;background:#081126;padding:.35rem 0}.cromo-row{grid-template-columns:1fr}.cromo-row .row{display:grid;grid-template-columns:1fr 1fr}.training-indicators{grid-template-columns:repeat(3,1fr)}.screen-actions{grid-template-columns:repeat(3,1fr)}.screen-actions button{padding:.7rem .35rem}.test-clan-card .row{display:block}}

/* V52 · navegación clara, fichas ampliadas y registro adaptativo */
html,body,#app{width:100%;max-width:100%;overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box}
main,.view,.panel,.section-head,.modal,.cromo-list,.clan-group,.training-head{max-width:100%;min-width:0}
.screen-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.screen-actions button{width:100%;min-width:0}
.close-app-btn{font-size:1.45rem}
.cromo-full-view{display:grid;gap:1rem;min-width:0}
.cromo-full-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:18px;background:#fff}
.cromo-full-image.image-error{display:none}.image-fallback{padding:1rem;border:1px solid #f59e0b;border-radius:14px;background:rgba(245,158,11,.1)}
.cromo-meta{display:grid;gap:.3rem}.cromo-meta p{margin:0}
.modal-actions-sticky{position:sticky;bottom:-1px;display:grid;grid-template-columns:1fr 1fr;gap:.6rem;padding:.75rem 0 .15rem;background:linear-gradient(180deg,transparent,#161d35 18%)}
.exercise-results{border-top:1px solid #34405f;padding-top:.8rem}.exercise-results label{display:block;margin:.8rem 0}.exercise-results input{width:100%}
.conditional-options[hidden]{display:none!important}.conditional-partial{margin-top:.7rem}
.stepper{width:100%;max-width:100%;grid-template-columns:minmax(44px,52px) minmax(64px,1fr) minmax(44px,52px) auto}
.stepper>*{min-width:0}.stepper span{white-space:nowrap}
.chips-field span,.segmented span{max-width:100%;overflow-wrap:anywhere}
.row{min-width:0}.row>*{min-width:0}
@media(max-width:420px){.modal-actions-sticky{grid-template-columns:1fr}.stepper{grid-template-columns:48px minmax(60px,1fr) 48px}.stepper span{grid-column:1/-1;text-align:center}.screen-actions button{font-size:.9rem}.cromo-full-image{border-radius:12px}}


/* V53 · Aventuras en cuatro pantallas y selector de idioma persistente */
.adventure-title{margin-bottom:10px}.adventure-title.compact h1{font-size:clamp(1.7rem,7vw,2.5rem)}
.adventure-stepbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 20px 14px;padding:8px;border:1px solid var(--line);border-radius:16px;background:#11162b;position:sticky;top:0;z-index:7}
.adventure-stepbar span{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;color:var(--muted);text-align:center}.adventure-stepbar b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#252c49}.adventure-stepbar small{font-size:.68rem;line-height:1.05}.adventure-stepbar .active{color:#7cead2}.adventure-stepbar .active b{background:#1f8f7b;color:white}.adventure-stepbar .done{color:#d6fff4}.adventure-stepbar .done b{background:#176b5f}
.adventure-mission,.adventure-feedback{margin-top:0}.xp-award{font-size:1.3rem;font-weight:800;color:#7cead2;text-align:center}
.rope-panel{padding:16px}.rope-panel .rope-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}.rope-panel .rope-card img{display:none}.rope-panel .honesty-note{display:none}.micro-help{display:block;margin-top:8px;color:var(--muted)}
.rope-attempt-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rope-attempt-grid label{margin:0}
@media(max-width:390px){.adventure-stepbar small{font-size:.6rem}.rope-attempt-grid{grid-template-columns:1fr}.adventure-stepbar{margin-left:12px;margin-right:12px}}

/* V56 · arranque y offline resiliente */
.install-banner{position:relative;margin:10px auto 0;max-width:920px;padding:12px 14px;border:1px solid rgba(59,130,246,.45);border-radius:16px;background:linear-gradient(135deg,rgba(30,64,175,.28),rgba(15,23,42,.96));display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.install-banner>div:first-child{display:grid;gap:3px;min-width:0}.install-banner span{font-size:.9rem;color:var(--muted)}
.install-banner .row{flex:0 0 auto}.adventure-feedback .primary{margin-top:10px}
@media(max-width:520px){.install-banner{align-items:stretch;flex-direction:column}.install-banner .row{display:grid;grid-template-columns:1fr 1fr}.install-banner button{width:100%}}

/* V59 · flujo independiente y persistente de cartas sorpresa */

/* V60 · Cartas sorpresa cognitivas: flujo binario Mito/Realidad sin reto motor. */

/* V61 · evidencias compactas, colecciones interactivas y estados de comba */
.compact-evidence fieldset{margin:1rem 0;padding:1rem;border:1px solid var(--line);border-radius:1rem}.compact-evidence legend{font-weight:800;padding:0 .35rem}.check-grid{display:grid;gap:.55rem;margin:.7rem 0 1rem}.check{display:flex;gap:.65rem;align-items:flex-start;padding:.75rem;border:1px solid var(--line);border-radius:.8rem;background:var(--surface-deep)}.check input{margin-top:.2rem;min-width:1.2rem;min-height:1.2rem}.inline-choice{display:grid;gap:.35rem}.micro-help{font-size:.92rem;opacity:.82;margin:.35rem 0 .7rem}.rope-progress-list{display:grid;gap:.75rem}.rope-progress-row{display:grid;grid-template-columns:64px 1fr;gap:.75rem;align-items:center;padding:.75rem;border:1px solid var(--line);border-radius:1rem}.rope-progress-row .rope-thumb{grid-row:1/3}.rope-progress-row>button:last-child{grid-column:2}.rope-progress-row span{display:block;font-size:.86rem;opacity:.82;margin-top:.25rem}

/* V64 · Entrenamiento libre guiado y compacto */
.training-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:.35rem;margin:.25rem 1rem 1rem;position:sticky;top:0;z-index:8;background:rgba(8,16,39,.94);padding:.65rem;border:1px solid var(--border,#34415f);border-radius:1rem;backdrop-filter:blur(10px)}
.training-steps span{display:flex;flex-direction:column;align-items:center;gap:.15rem;opacity:.5;text-align:center}.training-steps span b{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:#202b49}.training-steps span.current,.training-steps span.done{opacity:1}.training-steps span.current b{background:#16c9b0;color:#071522}.training-steps span.done b{background:#1f5f91}.training-steps small{font-size:.68rem}
.compact-panel{max-width:44rem;margin-inline:auto}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.sticky-actions{position:sticky;bottom:6.8rem;z-index:6;display:grid;grid-template-columns:1fr 1.25fr;gap:.65rem;padding:.7rem;background:rgba(19,28,58,.96);border:1px solid var(--border,#34415f);border-radius:1rem;backdrop-filter:blur(10px)}
.session-summary,.timer-card,.recommendation-card,.learning-summary{display:flex;flex-direction:column;gap:.4rem;padding:1rem;border-radius:1rem;background:#111a35;border:1px solid #34415f}.session-summary b,.timer-card b{font-size:1.2rem}.compact-exercise-list{display:grid;gap:.55rem;padding:0;list-style:none}.compact-exercise-list li{display:grid;grid-template-columns:2rem 1fr;gap:.65rem;align-items:center;padding:.75rem;background:#111a35;border-radius:.85rem}.compact-exercise-list li>span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#1f5f91}.compact-exercise-list small{display:block;margin-top:.2rem;color:#c8d0e3}.active-training{min-height:55vh}.timer-card{text-align:center;padding:1.4rem}.practice-actions{position:sticky;bottom:6.8rem;display:grid;grid-template-columns:1fr 1.5fr;gap:.65rem;margin-top:1rem;padding:.7rem;background:rgba(19,28,58,.96);border-radius:1rem}.rpe-compare{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin:.8rem 0}.rpe-compare>div{display:flex;flex-direction:column;align-items:center;padding:.8rem;background:#111a35;border-radius:.85rem}.rpe-compare b{font-size:1.25rem}.compact-choice{display:flex;gap:.6rem;flex-wrap:wrap}.compact-choice label span{display:inline-block;padding:.7rem 1rem;border:1px solid #465474;border-radius:999px}.compact-choice input{position:absolute;opacity:0}.compact-choice input:checked+span{background:#20cbb1;color:#071522;border-color:#20cbb1}.learning-summary h3{margin:.45rem 0 0}.learning-summary p{margin:.1rem 0 .6rem}.selected-list summary{cursor:pointer;font-weight:700}.selected-list[open] summary{margin-bottom:.7rem}
@media(max-width:520px){.two-col{grid-template-columns:1fr}.training-steps small{font-size:.58rem}.sticky-actions,.practice-actions{bottom:6.2rem}.training-head h1{font-size:2rem}.rpe-compare{gap:.35rem}.rpe-compare>div{padding:.6rem .3rem}}

/* V66 · Plataforma Curricular Explicable y Adaptativa */
.coach-insight-card{border:1px solid rgba(46,139,87,.45);background:linear-gradient(180deg,rgba(46,139,87,.12),rgba(15,23,42,.18));}
.coach-insight-card h2{margin:.25rem 0 .5rem}.coach-insight-card p{margin:.45rem 0}
.coach-reasoning{padding:.85rem;border-radius:14px;background:rgba(46,139,87,.1);border-left:4px solid #2e8b57;margin:1rem 0}
.coach-reasoning p{margin:.45rem 0}
.coach-alternatives{border:0;padding:0;margin:1rem 0}.coach-alternatives legend{font-weight:800;margin-bottom:.65rem}
.decision-option{display:flex;gap:.7rem;align-items:flex-start;padding:.75rem;margin:.55rem 0;border:1px solid rgba(148,163,184,.35);border-radius:14px;background:rgba(255,255,255,.04)}
.decision-option input{margin-top:.25rem;flex:0 0 auto}.decision-option span{display:grid;gap:.2rem}.decision-option small{line-height:1.35;opacity:.86}
@media(max-width:520px){.coach-insight-card p,.coach-reasoning p,.decision-option small{font-size:.92rem}.decision-option{padding:.65rem}}
.thinking-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;margin-top:.8rem}.thinking-grid div{display:grid;text-align:center;padding:.7rem .35rem;border-radius:12px;background:rgba(148,163,184,.1)}.thinking-grid b{font-size:1.1rem}.thinking-grid span{font-size:.78rem;opacity:.82}@media(max-width:520px){.thinking-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.thinking-grid div:last-child{grid-column:1/-1}}

/* V66 · accesibilidad y economía de interacción */
.skip-link{position:fixed;left:1rem;top:-4rem;z-index:9999;background:#fff;color:#111827;padding:.75rem 1rem;border-radius:.65rem;font-weight:800;box-shadow:0 8px 24px #0003}.skip-link:focus{top:1rem}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #f59e0b;outline-offset:3px}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

.coach-panel{margin:0 0 1rem;padding:1rem;border:1px solid #5eead4;border-radius:18px;background:linear-gradient(135deg,rgba(15,118,110,.18),rgba(30,41,59,.92));box-shadow:0 8px 24px rgba(0,0,0,.18)}.coach-panel p{margin:.35rem 0}.coach-next{padding-top:.5rem;border-top:1px solid rgba(255,255,255,.14)}

/* V67.3 · mejoras Bloque E */
.album-return{width:auto}.clan-return,.album-end-return{display:flex;justify-content:center;padding:.8rem 0}.album-end-return{padding:1rem 0 2rem}.compact-view-cromo{margin-top:.45rem}.modification-options[hidden]{display:none!important}.modification-options{margin-top:.2rem}.exercise-results{margin-top:1rem}.exercise-results legend{font-weight:800}.micro-help{font-size:.86rem}.training-post-form select{min-height:48px}

/* V67.5 · Bloque E: anchura móvil, selector múltiple y cierre honesto */
html,body{width:100%;max-width:100%;overflow-x:clip;overscroll-behavior-x:none}
body,#app,.view,.panel,.phase,form,fieldset,label,select,input,textarea,.exercise-results,.training-post-form,.conditional-options{min-width:0;max-width:100%}
#app{width:100%;overflow-x:clip}
.view{width:100%;max-width:860px}
fieldset{width:100%}
select,input,textarea{min-width:0}
.time-pair{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto}
.stepper{grid-template-columns:48px minmax(0,1fr) 48px minmax(0,auto)}
.multi-select{width:100%;border:1px solid var(--line);border-radius:14px;background:#0e1427;overflow:hidden}
.multi-select summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;cursor:pointer;font-weight:800;list-style:none}
.multi-select summary::-webkit-details-marker{display:none}
.multi-select summary::after{content:'▾';margin-left:auto}
.multi-select[open] summary::after{content:'▴'}
.multi-select summary strong{font-size:.78rem;color:#83f3df;white-space:nowrap}
.multi-select-options{display:grid;gap:0;border-top:1px solid var(--line);padding:.25rem .7rem .7rem}
.multi-select-options label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem;margin:0;padding:.75rem .25rem;border-bottom:1px solid rgba(148,163,184,.14);font-weight:650}
.multi-select-options label:last-child{border-bottom:0}
.multi-select-options input{width:1.25rem;height:1.25rem;margin:0}
.close-fallback .row{grid-template-columns:1fr}
@media(max-width:520px){.view{padding-left:12px;padding-right:12px}.panel,.phase,.hero-card{padding-left:14px;padding-right:14px}.time-pair{gap:.3rem}.stepper{grid-template-columns:44px minmax(0,1fr) 44px auto}.stepper span{font-size:.8rem}.multi-select summary{align-items:flex-start;flex-wrap:wrap}.multi-select summary strong{white-space:normal}}


/* V67.5 · cierre legible y contención definitiva del Registro */
#training-execution-form,
#training-execution-form > *,
#training-execution-form .exercise-results,
#training-execution-form .conditional-options,
#training-execution-form .range-with-output,
#training-execution-form .sticky-actions{
  width:100%;
  max-width:100%;
  min-width:0;
}
#training-execution-form{overflow-x:hidden;contain:inline-size}
#training-execution-form .range-with-output{grid-template-columns:minmax(0,1fr);gap:.45rem}
#training-execution-form .range-with-output output{
  min-width:0;
  max-width:100%;
  width:100%;
  text-align:left;
  white-space:normal;
  overflow-wrap:anywhere;
}
#training-execution-form input[type="range"]{width:100%;min-width:0}
#training-execution-form .sticky-actions{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
#training-execution-form .sticky-actions > button{
  width:100%;
  min-width:0;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
}
#training-execution-form .stepper{grid-template-columns:44px minmax(0,1fr) 44px}
#training-execution-form .stepper > span{grid-column:1/-1;text-align:center;white-space:normal;overflow-wrap:anywhere}
#training-execution-form select{width:100%;min-width:0;max-width:100%;text-overflow:ellipsis}
@media(max-width:520px){
  #training-execution-form .sticky-actions{grid-template-columns:1fr}
  #training-execution-form .sticky-actions{bottom:6.1rem}
}

/* V67.6 · contención horizontal real y objetivos por cromo */
html,body{overflow-x:hidden!important;max-inline-size:100%!important}
#app,.view{overflow-x:hidden!important;max-inline-size:100%!important}
.training-register-panel{overflow:hidden!important;contain:layout paint;inline-size:100%;max-inline-size:100%;min-inline-size:0}
.training-register-panel *,#training-execution-form *{box-sizing:border-box;min-inline-size:0}
#training-execution-form{display:block;inline-size:100%;max-inline-size:100%;overflow:hidden!important}
#training-execution-form fieldset,#training-execution-form label,#training-execution-form .stepper,#training-execution-form .time-pair,#training-execution-form .multi-select{inline-size:100%;max-inline-size:100%;overflow:hidden}
#training-execution-form .compact-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
#training-execution-form .compact-choice legend{grid-column:1/-1}
#training-execution-form .compact-choice label{margin:0;inline-size:auto}
#training-execution-form .compact-choice label span{display:block;text-align:center;white-space:normal}
#training-execution-form .stepper{grid-template-columns:42px minmax(0,1fr) 42px!important;gap:.35rem}
#training-execution-form .stepper button,#training-execution-form .stepper input{inline-size:100%;max-inline-size:100%}
#training-execution-form .stepper>span{grid-column:1/-1!important;inline-size:100%;white-space:normal!important}
#training-execution-form .exercise-results{padding-inline:10px}
.exercise-plan-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,180px);gap:.65rem;align-items:center;padding:.7rem;border-top:1px solid rgba(148,163,184,.16);margin:0}
.exercise-plan-row span{display:grid;gap:.2rem}.exercise-plan-row small,.exercise-result-row small{color:var(--muted);font-weight:500}
.exercise-result-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,130px);gap:.55rem;align-items:center;padding:.65rem 0;border-bottom:1px solid rgba(148,163,184,.14);margin:0}
.exercise-result-row>small{grid-column:1/-1}
@media(max-width:520px){
 .training-register-panel{padding-inline:12px}
 .exercise-plan-row,.exercise-result-row{grid-template-columns:1fr}
 #training-execution-form .sticky-actions{position:static;grid-template-columns:1fr!important}
}

/* V69 · simulación operativa, revisión clara y feedback trazable */
.session-simulation{margin:1rem 0;padding:1rem;border:1px solid rgba(45,212,191,.45);border-radius:1rem;background:rgba(15,23,42,.48);min-width:0;max-width:100%;overflow:hidden}
.session-simulation h3{margin:.1rem 0 .65rem}
.session-simulation p{margin:.35rem 0 .7rem}
.session-simulation ol{margin:.5rem 0;padding-left:1.35rem}
.session-simulation li{margin:.35rem 0;overflow-wrap:anywhere}
.simulation-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.45rem;margin-top:.75rem}
.simulation-summary span{padding:.55rem .65rem;border-radius:.75rem;background:rgba(30,41,59,.72);overflow-wrap:anywhere}
.session-simulation.compact ol{max-height:13rem;overflow:auto}
.review-grid{display:grid;gap:1rem;min-width:0}
.review-grid>section,.review-grid>details{min-width:0;max-width:100%}
.training-register-panel,.training-register-panel form,.training-register-panel fieldset,.training-register-panel label,.training-register-panel select,.training-register-panel input,.training-register-panel textarea{box-sizing:border-box;max-width:100%;min-width:0}
@media (max-width:520px){.simulation-summary{grid-template-columns:1fr}.session-simulation{padding:.85rem}.session-simulation.compact ol{max-height:none}}


/* V67.8 · Reflexión guiada con mínima carga cognitiva */
.reflection-flow{display:grid;gap:12px;min-width:0}
.reflection-step{margin:0;padding:12px;border:1px solid var(--line,#d8e0e8);border-radius:14px;min-width:0}
.reflection-step legend{font-weight:800;padding:0 6px}
.reflection-step label{margin:0}
.reflection-coach{margin:2px 0 4px}
.reflection-coach h3{margin-top:0}
@media(max-width:520px){.reflection-step{padding:10px}.reflection-panel .rpe-compare{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* V69 · Diseño limpio, simulación final y referencia inicial compacta */
.test-result-line{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:end}.test-result-line>label{margin:0;min-width:0}.test-result-line .stepper{margin:0}.simulation-accordion{padding:0;overflow:hidden}.simulation-accordion>summary{padding:1rem;font-weight:900;cursor:pointer;background:rgba(22,120,255,.10)}.simulation-accordion[open]>summary{border-bottom:1px solid var(--line)}.simulation-body{padding:1rem}.simulation-body>p{margin-bottom:.75rem}.simulation-body ol{padding-left:1.35rem}.simulation-body li{margin:.45rem 0;overflow-wrap:anywhere}.simulation-reminders{margin-top:1rem;padding:.85rem;border-radius:14px;background:rgba(37,214,180,.08);border:1px solid rgba(37,214,180,.25)}.simulation-reminders ul{margin:.5rem 0 0;padding-left:1.25rem}.simulation-summary{display:grid;gap:.4rem}.session-simulation.compact .simulation-body{padding:.75rem}.session-simulation.compact .simulation-reminders{display:none}@media(max-width:520px){.test-result-line{grid-template-columns:1fr}.test-result-line .secondary{width:100%}}

/* V69 · diseño asistido y explicable */
.recommendation-reason{display:block;margin-top:.45rem;color:#9cebdc;font-weight:650}.recommended-group{border:1px solid rgba(45,212,191,.55);background:rgba(20,184,166,.07)}.recommended-group>summary{color:#8ff3df}.album-load{display:grid;grid-template-columns:minmax(0,1fr) minmax(8rem,12rem);align-items:center;gap:.6rem;margin-top:.55rem;font-size:.9rem}.album-load select{width:100%;min-width:0}.rpe-design{margin-top:1rem}.rpe-design .feedback{margin:.35rem 0 .75rem}.cromo-list>h2{margin:1rem 0 .55rem;font-size:1.08rem}@media(max-width:520px){.album-load{grid-template-columns:1fr}.recommended-group,.cromo-list{min-width:0}.cromo-row{min-width:0;overflow:hidden}.cromo-row>div{min-width:0}}

/* V69 · consolidación pedagógica */
.passport-identity{text-align:center}.passport-criteria{display:grid;gap:.65rem}.passport-criteria article,.learning-chain-card{display:flex;flex-direction:column;gap:.35rem;padding:.85rem;border:1px solid var(--line,#d9e1dc);border-radius:14px;background:var(--surface,#fff)}
.learning-chain{display:flex;flex-wrap:wrap;gap:.35rem}.learning-chain span{padding:.28rem .55rem;border-radius:999px;background:#eef7f1;font-size:.82rem}.learning-history article{overflow-wrap:anywhere}.history-summary{display:flex;flex-wrap:wrap;gap:.4rem;margin:.55rem 0}.history-summary span{background:#f1f5f3;border-radius:999px;padding:.25rem .5rem;font-size:.82rem}.history-detail{white-space:normal;overflow:visible;text-overflow:clip}.reflection-flow fieldset{animation:fadeIn .18s ease}.reflection-flow select{width:100%;max-width:100%}@keyframes fadeIn{from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}


/* V69.1 · refinamiento móvil, contraste y consignas operativas */
.home-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}
.home-quick-actions button{padding:.72rem .35rem;font-size:.86rem;white-space:normal}
.coach-micro{margin:.45rem 0;padding:.55rem .75rem;border-left:3px solid #5eead4;background:rgba(45,212,191,.08);border-radius:.55rem}
.operational-steps{display:grid;gap:.55rem;margin:.7rem 0;padding-left:1.4rem}
.operational-steps li{padding:.15rem 0;line-height:1.45}
.simulation-register{margin-top:.85rem;padding:.8rem;border-radius:.8rem;background:rgba(56,189,248,.09);border:1px solid rgba(56,189,248,.3)}
.simulation-register p{margin:.35rem 0 0}
.learning-chain-readable{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.8rem}
.learning-chain-readable>div{display:grid;gap:.35rem;padding:.75rem;border-radius:.75rem;background:#0f1931;border:1px solid #405171;color:#f8fafc}
.learning-chain-readable b{color:#7ff7e2}.learning-chain-readable span{display:block;color:#f8fafc;font-weight:700}
.exercise-result-row .field-label{display:block;margin:.65rem 0 .25rem;color:#f8fafc;font-weight:800}
@media(max-width:520px){.home-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));position:static}.home-quick-actions button{font-size:.74rem;padding:.65rem .15rem}.learning-chain-readable{grid-template-columns:1fr}.session-simulation h3{font-size:1.12rem}.operational-steps{padding-left:1.2rem}}

/* V69.2 · guía funcional y trazabilidad curricular legible */
.guide-start{border-color:rgba(45,212,191,.55)}
.progress-accordion>summary,.criterion-card>summary{cursor:pointer;font-weight:850;list-style-position:inside}
.progress-accordion>summary{padding:.25rem 0 1rem;font-size:1.08rem}
.criterion-card>summary{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.45rem 0}
.criterion-card>summary span{color:#8ff3df;font-size:.88rem;text-align:right}
.criterion-evidence{padding:.7rem;border-radius:.75rem;background:#0f1931;border:1px solid #405171;white-space:normal;overflow-wrap:anywhere}
.learning-chain-card p{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
@media(max-width:520px){.criterion-card>summary{align-items:flex-start;flex-direction:column;gap:.3rem}.criterion-card>summary span{text-align:left}}

/* V69.2.1 · revisión pedagógica, microciclos y registros específicos */
.pending-evidence,.evidence-review-alert,.review-required-panel{border-color:#f59e0b!important}
.learning-chain-card>div:first-child{display:grid;gap:.2rem}
.pending-evidence{background:rgba(245,158,11,.06)!important}
.feedback.warning{border:1px solid rgba(245,158,11,.6);background:rgba(245,158,11,.10);color:var(--text,#f8fafc)}
.microcycle-context{margin:.35rem 0 0;color:#8ff3df;font-weight:750}
.microcycle-session-list{display:grid;gap:.65rem;margin:1rem 0}
.microcycle-session-list article{display:grid;gap:.25rem;padding:.8rem;border:1px solid var(--line,#405171);border-radius:.85rem;background:rgba(15,25,49,.72)}
.microcycle-session-list article span,.microcycle-session-list article small{color:var(--muted,#cbd5e1)}
.compact-result-field{display:grid!important;gap:.35rem;margin:0!important;min-width:0}
.exercise-result-row>span{grid-column:1/-1}
.exercise-result-row .compact-result-field input{width:100%;min-width:0}
.rope-progress-row{display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:.7rem;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(148,163,184,.18)}
.rope-progress-row>div{display:grid;gap:.2rem;min-width:0}.rope-progress-row span{color:var(--muted,#cbd5e1);overflow-wrap:anywhere}
.rope-thumb{padding:0;border:0;background:transparent}.rope-thumb img{display:block;width:64px;aspect-ratio:2/3;object-fit:cover;border-radius:.55rem}
.collection-actions{display:grid;gap:.6rem;margin-top:.8rem}
@media(max-width:520px){.rope-progress-row{grid-template-columns:56px minmax(0,1fr)}.rope-progress-row>.secondary{grid-column:1/-1}.rope-thumb img{width:52px}.microcycle-session-list article{padding:.7rem}}

/* V69.2.3 · instrumentos de práctica, temporización contextual y cierre explicable */
.test-recommendation,.format-register-guide,.decision-proof,.safety-decision{
  display:grid;gap:.4rem;margin:.8rem 0 1rem;padding:.9rem;border:1px solid rgba(45,212,191,.48);
  border-radius:1rem;background:linear-gradient(145deg,rgba(20,184,166,.12),rgba(15,25,49,.72));
}
.test-recommendation h3,.format-register-guide h3,.decision-proof p,.safety-decision h3,.safety-decision p{margin:.15rem 0}
.test-recommendation small{color:var(--muted,#cbd5e1);line-height:1.45}
.embedded-timer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem;align-items:center;margin:.75rem 0;padding:.9rem;border:1px solid #405171;border-radius:1rem;background:#0f1931}
.embedded-timer>span{font-weight:850;color:#8ff3df}
.embedded-timer output{font-variant-numeric:tabular-nums;font-size:clamp(2rem,8vw,3.4rem);font-weight:950;line-height:1;text-align:right;color:#f8fafc}
.embedded-timer>small{grid-column:1/-1;color:#c8d0e3}
.embedded-timer.finished{border-color:#f59e0b}.embedded-timer.finished output{color:#fbbf24}
.timer-controls{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.timer-controls button{width:100%;white-space:normal}
.cromo-timer{margin-top:.65rem;padding-top:.55rem;border-top:1px solid #2f3c5c}.cromo-timer>small{color:#c8d0e3}.cromo-timer .embedded-timer{margin-bottom:0}.cromo-timer .embedded-timer output{font-size:clamp(1.8rem,7vw,2.7rem)}
.test-time-pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:.4rem;align-items:center}
.test-time-pair input{text-align:center;font-variant-numeric:tabular-nums}
.test-time-pair span{font-weight:800;color:var(--muted,#cbd5e1)}
.reorder-list{display:grid;gap:.65rem;padding:0;list-style:none;counter-reset:none}
.reorder-list li{display:grid;grid-template-columns:2.25rem minmax(0,1fr);gap:.65rem;align-items:start;padding:.75rem;border:1px solid #405171;border-radius:.9rem;background:rgba(15,25,49,.78)}
.reorder-list li>span{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:999px;background:#176a9e;font-weight:900}
.reorder-list li>div{display:grid;gap:.35rem;min-width:0}.reorder-list small{display:block;color:var(--muted,#cbd5e1)}
.compact-row{display:flex;flex-wrap:wrap;gap:.4rem}.compact-row .compact-view-cromo{margin:0}
.learning-choice-cards{display:grid;gap:.65rem}
.learning-choice-cards label{display:block;margin:0;cursor:pointer}
.learning-choice-cards input{position:absolute;opacity:0;pointer-events:none}
.learning-choice-cards span{display:grid;gap:.25rem;padding:.8rem;border:1px solid #405171;border-radius:.9rem;background:#0f1931;transition:border-color .15s,background .15s}
.learning-choice-cards small{color:var(--muted,#cbd5e1);line-height:1.4}.learning-choice-cards em{color:#8ff3df;font-size:.82rem;font-style:normal;font-weight:800}
.learning-choice-cards input:checked+span{border-color:#2dd4bf;background:rgba(20,184,166,.16);box-shadow:0 0 0 2px rgba(45,212,191,.16)}
.learning-choice-cards input:focus-visible+span{outline:3px solid #f59e0b;outline-offset:3px}
.planned-actual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.planned-actual-grid article{padding:.85rem;border:1px solid #405171;border-radius:.9rem;background:#0f1931;min-width:0}
.planned-actual-grid h3{margin:.1rem 0 .6rem}.planned-actual-grid p,.learning-summary p{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
.learning-summary{display:grid;gap:.35rem}.learning-summary h3{margin:1rem 0 .1rem}.learning-summary h3:first-child{margin-top:.25rem}
.session-learning-closure{padding-bottom:8rem}.closure-actions{z-index:5}
.format-register-guide p{margin:.15rem 0;line-height:1.5}
@media(max-width:520px){
 .embedded-timer{grid-template-columns:1fr}.embedded-timer output{text-align:left}.planned-actual-grid{grid-template-columns:1fr}
 .test-time-pair{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto}.reorder-list li{grid-template-columns:2rem minmax(0,1fr)}
 .compact-row button{flex:1 1 5.5rem}.timer-controls{grid-template-columns:1fr 1fr}.session-learning-closure{padding-bottom:2rem}
 .closure-actions{position:static!important;grid-template-columns:1fr!important}
}

/* V69.2.4 · colecciones completas, práctica prudente y síntesis del microciclo */
.rope-collection-group>summary{cursor:pointer;font-size:1.08rem;font-weight:850}
.rope-collection-group[open]>summary{margin-bottom:.7rem}
.rope-row-actions{display:grid;gap:.4rem;justify-items:stretch;min-width:9rem}
.rope-row-actions .small{width:100%}
.rope-awaiting{max-width:11rem;padding:.55rem .65rem;border:1px dashed #52617f;border-radius:.7rem;text-align:center;font-size:.76rem!important;line-height:1.35}
.rope-progress-row small{display:block;color:#9eabc4;line-height:1.35}
.rope-progress-row.not-practiced{opacity:.9}
.finish-guidance{display:grid;gap:.2rem;margin:.9rem 0;padding:.8rem;border:1px solid #f59e0b;border-radius:.9rem;background:rgba(245,158,11,.09)}
.finish-guidance.ready{border-color:#2dd4bf;background:rgba(45,212,191,.09)}
.finish-guidance p{margin:0}
.microcycle-session-list.selectable{margin-top:.6rem}
.microcycle-session-choice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.65rem;align-items:start;margin:0;padding:.75rem;border:1px solid #405171;border-radius:.85rem;background:#0f1931;cursor:pointer}
.microcycle-session-choice input{width:1.25rem;height:1.25rem;margin-top:.15rem}
.microcycle-session-choice span{display:grid;gap:.2rem;min-width:0}
.microcycle-session-choice small{color:#c8d0e3;overflow-wrap:anywhere}
.microcycle-observed{padding:.8rem;border-left:4px solid #2dd4bf;border-radius:.75rem;background:#0f1931;overflow-wrap:anywhere}
.practice-actions{z-index:7}
.practice-actions .primary:disabled{background:#475569;color:#e2e8f0}
.stats.four-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:600px){
 .stats.four-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .rope-progress-row{grid-template-columns:56px minmax(0,1fr)}
 .rope-progress-row .rope-row-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
 .rope-progress-row .rope-awaiting{grid-column:1/-1;max-width:none}
 .practice-actions{grid-template-columns:1fr}
}

/* V69.2.5 · Registro inmediato y controles sin solapamientos */
.training-scope-back{margin:0 0 1rem}
.practice-actions.practice-actions-static{position:static;bottom:auto;z-index:auto;margin-top:1.25rem;padding:1rem;background:#111a35;border:1px solid #34415f}
.practice-log{display:grid;gap:1rem;margin:1rem 0 1.25rem;padding:1rem;border:1px solid #34415f;border-radius:1rem;background:#0f1830}
.practice-round-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.practice-round-heading h3{margin:.15rem 0 0}
.practice-round-heading>span{padding:.35rem .65rem;border-radius:999px;background:#173754;color:#bce9ff;font-size:.82rem;font-weight:700}
.practice-exercise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem}
.practice-exercise-card{display:grid;align-content:start;gap:.65rem;padding:1rem;border:1px solid #34415f;border-radius:.9rem;background:#111a35}
.practice-exercise-card header{display:grid;gap:.2rem}
.practice-exercise-card header span{font-weight:800;color:#e9f5ff}
.practice-exercise-card header small{color:#c8d0e3}
.practice-exercise-card label{display:grid;gap:.35rem}
.practice-exercise-card input{width:100%;min-height:46px;font-size:1.05rem}
.practice-exercise-card .embedded-timer{margin:.25rem 0}
.practice-round-confirm{width:100%;margin-top:.25rem}
.practice-completed-rounds,.practice-results-summary{padding:.85rem;border-radius:.85rem;background:#111a35;border:1px solid #34415f}
.practice-completed-rounds p,.practice-results-summary p{margin:.4rem 0;line-height:1.55}
.practice-results-summary{display:grid;gap:.65rem;margin:0 0 1rem}
.practice-results-summary article{padding:.75rem;border-radius:.75rem;background:#0d1730}
.criterion-learning-status{margin:.8rem 0;padding:.8rem;border-left:3px solid #20cbb1;background:#101a34}
.criterion-learning-status ul{margin:.4rem 0 .7rem;padding-left:1.25rem}
.active-training{padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}
@media(max-width:620px){.practice-exercise-grid{grid-template-columns:1fr}.practice-actions.practice-actions-static{grid-template-columns:1fr}.practice-round-heading{flex-direction:column}.practice-round-heading>span{align-self:flex-start}}

/* V69.2.6 · Ruta curricular 64/88, secuencia en espiral y planificador docente */
.head-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem;width:min(100%,500px)}
.stacked-head{align-items:flex-start}.route-explainer{display:grid;gap:.85rem;margin:1rem 0}.route-legend{display:flex;flex-wrap:wrap;gap:.45rem}
.route-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .6rem;border-radius:999px;border:1px solid #4b5c7b;background:#111d38;color:#d9e8ff;font-size:.78rem;font-weight:800}
.route-chip.essential{border-color:#2dd4bf;background:rgba(45,212,191,.12)}.route-chip.choice{border-color:#60a5fa;background:rgba(96,165,250,.13)}
.route-chip.elective{border-color:#a78bfa;background:rgba(167,139,250,.12)}.route-chip.contingency{border-color:#f59e0b;background:rgba(245,158,11,.12)}
.route-chip.report{border-color:#94a3b8;background:rgba(148,163,184,.12)}.route-chip.locked{opacity:.65}
.card-meta-row{display:flex;flex-wrap:wrap;gap:.4rem;margin:.55rem 0}.card-meta-row small{padding:.25rem .5rem;border-radius:.55rem;background:#14213e;color:#c9d8ee}
.curricular-links{display:grid;gap:.55rem;margin:.8rem 0;padding:.8rem;border:1px solid #34415f;border-radius:.85rem;background:#0f1931}.curricular-links p{margin:0}
.choice-progress{display:grid;gap:.65rem}.choice-progress article,.calendar-windows article{padding:.8rem;border:1px solid #34415f;border-radius:.85rem;background:#101a34}
.choice-progress progress{width:100%;height:.75rem}.planner-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.7rem;margin:1rem 0}
.planner-summary article{padding:.8rem;border:1px solid #34415f;border-radius:.85rem;background:#101a34}.planner-summary strong{display:block;font-size:1.35rem;color:#7dd3fc}.planner-summary small{color:#c8d0e3}
.planner-summary .viable{border-color:#2dd4bf}.planner-summary .tight{border-color:#f59e0b}.planner-form{display:grid;gap:1rem}.planner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem}
.planner-form label{display:grid;gap:.35rem}.planner-form textarea{width:100%;resize:vertical}.calendar-windows{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}
.calendar-windows h3{margin:.1rem 0 .45rem}.calendar-windows p{margin:.2rem 0}.route-phase-status{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}
.mini-card[data-card].locked{opacity:.62}.mini-card[data-card].locked button,.mini-card.locked{cursor:not-allowed}.availability-reason{color:#fbbf24;font-size:.8rem}
.opportunity-label{color:#7dd3fc}.evidence-label{color:#86efac}.route-primary-stat{border-color:#2dd4bf!important}.route-secondary-stat{border-color:#64748b!important}
@media(max-width:680px){.head-actions{grid-template-columns:1fr;width:100%}.planner-grid,.calendar-windows{grid-template-columns:1fr}.route-phase-status{align-items:flex-start}.planner-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
.weekday-picker{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem;border:1px solid #405171;border-radius:.85rem}.weekday-picker legend{padding:0 .35rem;font-weight:800}.weekday-picker label{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .65rem;border-radius:.7rem;background:#101a34;cursor:pointer}.weekday-picker input{width:1.05rem;height:1.05rem}


/* V69.2.7 · Mi progreso unificado, Inicio simplificado e Historial filtrable */
.home-quick-actions{grid-template-columns:1fr 1fr;max-width:34rem;margin-inline:auto}
.home-progress-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;border-color:rgba(56,189,248,.42);background:linear-gradient(135deg,rgba(37,99,235,.13),rgba(16,185,129,.08))}
.home-progress-summary h2{margin:.15rem 0 .55rem}.home-progress-summary p{margin:.25rem 0}.home-progress-summary button{min-width:10rem}
.progress-jump-nav{position:sticky;top:3.35rem;z-index:30;display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem;margin:0 0 1rem;padding:.45rem;background:rgba(8,15,35,.94);border:1px solid rgba(148,163,184,.22);border-radius:1rem;backdrop-filter:blur(12px)}
.progress-jump-nav a{display:grid;place-items:center;min-height:42px;padding:.45rem;border-radius:.7rem;color:var(--text,#f8fafc);text-decoration:none;font-weight:800;font-size:.84rem}.progress-jump-nav a:focus,.progress-jump-nav a:hover{background:rgba(37,99,235,.28)}
.passport-identity .eyebrow{margin-bottom:.2rem}.passport-identity .row{margin-top:.75rem}
.history-screen-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.history-screen-filters label{margin:0}.history-criteria{display:flex;flex-wrap:wrap;gap:.35rem;margin:.45rem 0}.learning-history article[hidden]{display:none!important}
@media(max-width:620px){.home-progress-summary{grid-template-columns:1fr}.home-progress-summary button{width:100%}.progress-jump-nav{top:3.15rem}.progress-jump-nav a{font-size:.72rem;padding:.35rem .15rem}.history-screen-filters{grid-template-columns:1fr}}

/* V69.2.8 · Contexto de participación ligero y trazable */
.participation-option{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:.7rem;align-items:flex-start;margin:.55rem 0!important;padding:.75rem;border:1px solid #405171;border-radius:.85rem;background:#101a34;cursor:pointer}
.participation-option input{width:1.15rem;height:1.15rem;margin-top:.15rem}
.participation-option span{display:grid;gap:.2rem;min-width:0}.participation-option small{color:#c8d0e3;line-height:1.4}
.participation-gap{margin:1rem 0;padding:.8rem;border:1px solid rgba(245,158,11,.5);border-radius:.85rem;background:rgba(245,158,11,.08)}
.participation-gap>summary{cursor:pointer;font-weight:850}.participation-gap label{display:grid;gap:.35rem;margin-top:.75rem}
.participation-badges{display:flex;flex-wrap:wrap;gap:.35rem;margin:.55rem 0}.participation-context{border-color:#60a5fa!important;background:rgba(96,165,250,.13)!important}.participation-status{border-color:#2dd4bf!important;background:rgba(45,212,191,.12)!important}
.participation-register{border-color:rgba(96,165,250,.42);background:linear-gradient(135deg,rgba(37,99,235,.10),rgba(15,23,42,.55))}
.participation-summary .stats{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:620px){.participation-summary .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.participation-option{padding:.65rem}}

/* V69.2.9 · responsive navigation, compact planning and guided execution */
:root{--bottom-nav-safe:calc(7.6rem + env(safe-area-inset-bottom));}
html,body{max-width:100%;overflow-x:hidden;}
body{padding-bottom:var(--bottom-nav-safe);}
.view{padding-bottom:var(--bottom-nav-safe)!important;}
.bottom-nav{left:max(.75rem,env(safe-area-inset-left));right:max(.75rem,env(safe-area-inset-right));bottom:max(.55rem,env(safe-area-inset-bottom));display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:.18rem;padding:.45rem .28rem;min-height:5.55rem;}
.bottom-nav button{min-width:0!important;width:100%;padding:.35rem .08rem!important;font-size:clamp(.68rem,2.8vw,.82rem)!important;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bottom-nav button span{display:block;font-size:1.55rem;line-height:1.1;margin-bottom:.22rem;}
.active-session-bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem 1rem;background:#0b2441;border-bottom:1px solid #2d5b86;font-size:.86rem;}
.active-session-bar span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.progress-tabs,.adventure-view-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;position:sticky;top:.25rem;z-index:8;background:var(--bg,#071021);padding:.4rem;border-radius:1rem;margin-bottom:1rem;}
.adventure-view-tabs{grid-template-columns:repeat(2,minmax(0,1fr));}
.progress-tabs button,.adventure-view-tabs button{min-width:0;padding:.7rem .25rem;font-size:.82rem;white-space:normal;}
.progress-tabs button.active,.adventure-view-tabs button.active{background:#154e83;color:#fff;}
.progress-tab-content{min-height:45vh;}
.compact-passport,.compact-continuity,.compact-empty{min-height:0!important;}
.collection-stats,.progress-main-stats,.planner-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;}
.collection-stats>div:last-child:nth-child(odd){grid-column:1/-1;}
.planner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}
.compact-weekdays{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem;padding:.65rem!important;}
.compact-weekdays label{min-width:0;margin:0!important;}
.compact-weekdays span{display:grid;place-items:center;min-height:2.8rem;border-radius:.7rem;background:#0b1730;font-weight:800;}
.compact-weekdays input:checked+span{background:#174e82;color:#fff;outline:2px solid #6db7ff;}
.blocked-period-row{display:grid;grid-template-columns:minmax(7.8rem,.8fr) minmax(7.8rem,.8fr) minmax(10rem,1.4fr) auto;gap:.45rem;align-items:end;margin:.6rem 0;}
.custom-periods .blocked-period-row{grid-template-columns:minmax(7rem,.7fr) minmax(7.8rem,.9fr) minmax(7.8rem,.9fr) minmax(10rem,1.3fr) auto;}
.planner-final-actions,.stacked-actions,.report-actions{display:grid;gap:.65rem;}
.calendar-windows article{display:grid;grid-template-columns:1fr auto;gap:.25rem .75rem;}
.calendar-windows article p{grid-column:1/-1;margin:.35rem 0 0;}
.alternative-card-grid{display:grid;gap:.75rem;}
.alternative-card{display:grid;text-align:left;gap:.35rem;padding:1rem;border-radius:1rem;}
.training-executor{display:grid;gap:1rem;}
.executor-status{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;padding:.8rem;border:1px solid #31527a;border-radius:1rem;background:#0b1730;}
.executor-status b{grid-column:1/-1;color:#68ead9;font-size:1.15rem;}
.current-task{border:2px solid #1a8e84;border-radius:1.15rem;padding:1rem;background:#0d1a36;}
.executor-clock{display:grid;gap:.35rem;margin:1rem 0;padding:1rem;border:2px solid #e7a21a;border-radius:1rem;}
.executor-clock output{font-size:clamp(2.6rem,13vw,4.6rem);font-weight:900;line-height:1;color:#ffbf24;}
.executor-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:.8rem;}
.executor-controls button:only-child{grid-column:1/-1;}
.executor-result,.amrap-live-results{display:grid;gap:.35rem;margin-top:.75rem;}
.amrap-live-results{grid-template-columns:repeat(3,minmax(0,1fr));}
.next-task{padding:.8rem;border-radius:.85rem;background:#14233e;}
.exact-sequence{padding-left:1.5rem;}
.exact-sequence li{margin:.45rem 0;}
.training-executor details li.done{text-decoration:line-through;opacity:.7;}
.pending-results{display:grid;gap:.75rem;}
.global-elapsed{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 1rem;background:#0b1730;border-radius:.8rem;}
.global-elapsed b{font-variant-numeric:tabular-nums;}
.history-filter-panel>summary,.guide-hub summary{cursor:pointer;}
.surprise-collection-list{display:grid;gap:.5rem;max-height:55vh;overflow:auto;margin-top:1rem;}
.surprise-collection-row{display:grid;gap:.25rem;padding:.65rem;background:#0d1a36;border-radius:.7rem;}
@media(max-width:700px){
 .app-header .brand strong{font-size:clamp(.92rem,4.2vw,1.08rem);}
 .section-head h1{font-size:clamp(2rem,10vw,3.2rem)!important;line-height:1.02;overflow-wrap:anywhere;}
 .planner-grid,.blocked-period-row,.custom-periods .blocked-period-row{grid-template-columns:1fr;}
 .amrap-live-results{grid-template-columns:1fr;}
 .executor-controls{grid-template-columns:1fr;}
 .calendar-windows article{grid-template-columns:1fr;}
 .calendar-windows article p{grid-column:auto;}
 .planner-reading .feedback{display:block;width:100%;}
 .screen-actions{gap:.6rem;}
 .screen-actions button{min-width:0;flex:1;}
}
@media(max-width:390px){
 .bottom-nav button{font-size:.64rem!important;}
 .bottom-nav button span{font-size:1.35rem;}
 .progress-tabs button{font-size:.72rem;}
}


/* V69.3.0 · estabilización crítica de la barra inferior en Android */
.bottom-nav{
  left:max(.75rem,env(safe-area-inset-left))!important;
  right:max(.75rem,env(safe-area-inset-right))!important;
  width:auto!important;
  max-width:700px!important;
  margin-inline:auto!important;
  transform:none!important;
  min-width:0!important;
  overflow:hidden;
  contain:layout paint;
}
.bottom-nav button{min-inline-size:0!important;max-inline-size:100%;}
@media(max-width:360px){
  .bottom-nav{left:.4rem!important;right:.4rem!important;padding-inline:.18rem;}
  .bottom-nav button{font-size:.6rem!important;padding-inline:0!important;}
  .bottom-nav button span{font-size:1.25rem;}
}


/* V69.3.1 · navegación contextual, pestañas nativas, rúbricas claras y situaciones excepcionales */
.segmented-tabs{display:grid;gap:.35rem;padding:.38rem;background:rgba(8,15,35,.96);border:1px solid #34466b;border-radius:1.1rem;box-shadow:0 10px 28px rgba(0,0,0,.24);overflow:hidden;}
.progress-tabs{grid-template-columns:repeat(4,minmax(0,1fr));top:calc(64px + .35rem);}
.adventure-view-tabs{grid-template-columns:repeat(2,minmax(0,1fr));top:calc(64px + .35rem);}
.segmented-tabs button{display:flex;align-items:center;justify-content:center;gap:.35rem;min-width:0;min-height:46px;padding:.68rem .35rem;border:1px solid transparent;border-radius:.82rem;background:#111a32;color:#c5cfe3;font-size:clamp(.78rem,2.9vw,.96rem);font-weight:750;line-height:1;white-space:nowrap;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;}
.segmented-tabs button.active,.segmented-tabs button[aria-selected="true"]{color:#fff;background:linear-gradient(145deg,#174f83,#123a67);border-color:#47dcc2;box-shadow:inset 0 -3px 0 #47dcc2,0 0 0 1px rgba(71,220,194,.16),0 7px 20px rgba(13,91,142,.25);}
.segmented-tabs button:focus-visible{outline:3px solid #facc15;outline-offset:2px}.tab-icon{font-size:1rem;line-height:1}.progress-tab-content:focus{outline:none}
.rubric-link{width:100%;min-height:72px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem;align-items:center;margin:.55rem 0;padding:.85rem 1rem;border:1px solid #3b4b70;border-radius:.9rem;background:#101a33;color:var(--text);text-align:left;box-shadow:none;}
.rubric-link:hover,.rubric-link:focus-visible{border-color:#47dcc2;background:#12233f}.rubric-copy{display:grid;gap:.28rem;min-width:0}.rubric-copy b{font-size:1rem;line-height:1.25;overflow-wrap:anywhere}.rubric-state{display:block;color:#77ead4;font-weight:750;line-height:1.3}.rubric-action{display:flex;align-items:center;gap:.35rem;color:#c7d5ea;font-weight:800;white-space:nowrap}.rubric-action span{font-size:1.35rem;color:#47dcc2}
.exception-help{margin:0 0 1rem;padding:.75rem;border:1px solid #3b4b70;border-radius:.85rem;background:#101a33}.exception-help summary{cursor:pointer;font-weight:800}.exception-help ul{margin:.7rem 0 0;padding-left:1.25rem;color:var(--muted);line-height:1.55}.exception-status{display:grid;gap:.35rem}[data-exception-context][hidden],[data-absence-fields][hidden],[data-recovery-link][hidden]{display:none!important}.exception-preview{display:block;margin:.8rem 0 1rem;padding:.85rem;border-left:4px solid #47dcc2;border-radius:.65rem;background:#10253a;color:#e5f7f3;font-weight:700;line-height:1.45}.guide-hub details button{width:100%;margin-top:.7rem}
@media(max-width:390px){.segmented-tabs{gap:.22rem;padding:.28rem}.segmented-tabs button{font-size:.7rem;padding-inline:.15rem;gap:.2rem}.progress-tabs .tab-icon{display:none}.rubric-link{grid-template-columns:1fr;gap:.45rem}.rubric-action{justify-content:space-between;width:100%}}
@media(prefers-reduced-motion:reduce){.segmented-tabs button{transition:none}}
[data-gap-absence][hidden]{display:none!important;}


/* V69.3.2 · recuperación de modales críticos de Perfil y Fitness Race; sin cambios geométricos */

/* V69.3.3 · salida inequívoca, ruta explicada, planificador inferido y alternativas contextuales */
.close-fallback .row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;}
.close-fallback .row button{width:100%;}
.next-mission-card{border-color:rgba(71,220,194,.55);background:linear-gradient(145deg,rgba(18,65,92,.96),rgba(23,27,49,.98));}
.next-mission-card .primary{margin-top:.35rem;}
.first-route-tip{margin-top:.9rem;padding:.8rem;border:1px solid #3f5f7f;border-radius:.85rem;background:#0d1a36;}
.first-route-tip p{margin-bottom:.55rem;}
.route-explainer{display:block!important;}
.route-explainer>summary{cursor:pointer;font-size:1.12rem;font-weight:850;line-height:1.3;}
.route-type-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:1rem 0;}
.route-type-list article{padding:.75rem;border:1px solid #364b70;border-radius:.8rem;background:#0e1830;}
.route-type-list article p{margin:.35rem 0 0;font-size:.88rem;}
.route-state-legend{display:flex;flex-wrap:wrap;gap:.45rem;margin:.75rem 0;}
.route-state-legend span{padding:.45rem .65rem;border:1px solid #3b4b70;border-radius:999px;background:#111a32;color:#dbe7f6;font-weight:750;font-size:.82rem;}
.choice-progress{margin:.7rem 0;padding:.7rem;border-left:4px solid #60a5fa;border-radius:.6rem;background:#101a33;}
.choice-progress p{margin:.2rem 0;}
.mini-card{height:auto;min-height:86px;padding:.38rem .18rem;grid-template-rows:auto auto auto auto;gap:.05rem;}
.mini-card small{font-size:.67rem;font-weight:850;color:#d9e4f4;}
.mini-card em{font-style:normal;font-size:.58rem;color:#c5cfe3;line-height:1.05;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;}
.mini-card.locked{opacity:.72;cursor:pointer!important;}
.mini-card.route-choice{border-color:#60a5fa}.mini-card.route-contingency{border-color:#f59e0b}.mini-card.route-elective{border-color:#a78bfa}.mini-card.route-nonblocking-report{border-color:#7dd3fc}
.alternative-context-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:1rem;}
.alternative-context-form label{margin:0;}
.alternative-card{border:1px solid #3b4b70;background:linear-gradient(145deg,#121d38,#10172e);color:var(--text);}
.alternative-card h3{margin:.1rem 0 .35rem;font-size:1.12rem;}
.alternative-card p{margin:.25rem 0;}
.alternative-card .primary,.alternative-card .secondary{margin-top:.45rem;width:100%;}
.alternative-card.recommended{border-color:#47dcc2}.alternative-card.continuity{border-color:#60a5fa}
.alternative-type{color:#7debd7!important;text-transform:uppercase;letter-spacing:.06em;font-weight:850;font-size:.72rem;}
.surprise-also-available{border-color:#e7a21a;}
.alternative-steps{color:var(--muted);line-height:1.55;padding-left:1.35rem;}
.alternative-steps li{margin:.45rem 0;}
.planner-period{display:grid;gap:.15rem;padding:.8rem 1rem;border:1px solid #3b4b70;border-radius:.85rem;background:#101a33;}
.planner-period span{color:var(--muted);font-size:.85rem;}
.surprise-collection-row small{color:#79e5d1;font-weight:750;}
@media(max-width:620px){
 .close-fallback .row,.route-type-list,.alternative-context-form{grid-template-columns:1fr;}
 .card-strip{grid-template-columns:repeat(5,minmax(0,1fr));}
 .mini-card{min-width:0;}
}
@media(max-width:360px){.mini-card em{font-size:.52rem}.mini-card small{font-size:.6rem}.card-strip{gap:.35rem}}

/* V69.3.4 · guía alineada, Historial robusto y Alternativas con flujo cerrado */
.guide-summary{margin:.8rem 0;padding:.75rem .85rem;border-left:4px solid #47dcc2;border-radius:.65rem;background:#10233c;color:#eaf7f4;}
.guide-hub details ul{margin:.65rem 0;padding-left:1.25rem;color:var(--muted);line-height:1.55;}
.guide-hub details li{margin:.35rem 0;}
.guide-code-list{display:grid;gap:.45rem;margin:.8rem 0;}
.guide-code-list p{margin:0;padding:.65rem .75rem;border:1px solid #34496d;border-radius:.7rem;background:#0f1931;}
.alternative-context-summary{margin:.8rem 0 0;padding:.65rem .75rem;border:1px solid #3d5a7d;border-radius:.75rem;background:#10243b;color:#dff7f1;}
.alternative-results-group{display:grid;gap:.65rem;margin-top:1rem;}
.alternative-results-group>h2{margin:0 .15rem;font-size:1.15rem;}
.alternative-results-group>p{margin:0 .15rem;color:var(--muted);}
.alternative-card.route-compatible{border-color:#7486a8;}
.alternative-empty .row,.alternative-finish-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;}
.alternative-finish-actions .primary{grid-column:1/-1;}
.error-panel{border-color:#ef6262;}
@media(max-width:520px){.alternative-empty .row,.alternative-finish-actions{grid-template-columns:1fr}.alternative-finish-actions .primary{grid-column:auto}}


/* V69.3.5 · formulario de Alternativas preciso, adaptable y realmente contextual */
.alternative-context-form .field-wide{grid-column:1/-1;}
.alternative-duration-stepper{display:grid;grid-template-columns:3.2rem minmax(5.5rem,1fr) 3.2rem auto;align-items:center;gap:.45rem;margin-top:.35rem;}
.alternative-duration-stepper button{min-height:3rem;padding:.45rem;border:1px solid #42557b;border-radius:.8rem;background:#17223f;color:#fff;font-size:1.45rem;font-weight:900;}
.alternative-duration-stepper button:active{transform:translateY(1px);}
.alternative-duration-stepper input{min-width:0;text-align:center;font-size:1.2rem;font-weight:850;}
.alternative-duration-stepper span{color:var(--muted);font-weight:800;}
.alternative-context-placeholder{border-style:dashed;text-align:center;}
.alternative-context-placeholder h2{margin-bottom:.35rem;}
.alternative-card.near-match{border-color:#d59a32;background:linear-gradient(145deg,#251d19,#17192d);}
.alternative-results-group.near-options>p{color:#f4c979;}
.alternative-card .chips{align-items:flex-start;}
@media(max-width:620px){.alternative-context-form .field-wide{grid-column:auto}.alternative-duration-stepper{grid-template-columns:3.1rem minmax(0,1fr) 3.1rem auto}}

/* V69.4.0 · perfil obligatorio, validación pedagógica semántica y feedback explicable */
.bottom-nav button.profile-locked{opacity:.58;position:relative;}
.bottom-nav button.profile-locked small{position:absolute;top:.28rem;right:.42rem;font-size:.62rem;line-height:1;}
.semantic-validation-note{margin:.55rem 0 .2rem;padding:.55rem .65rem;border-left:3px solid #47dcc2;border-radius:.45rem;background:#10243b;color:#dff7f1;}
.evidence-verdict{display:grid;gap:.55rem;margin:1rem 0;padding:1rem;border:1px solid rgba(71,220,194,.5);border-radius:.9rem;background:rgba(15,42,55,.72);}
.evidence-verdict p{margin:0;}
.evidence-verdict details{margin-top:.2rem;padding:.65rem;border:1px solid #3a5474;border-radius:.7rem;background:#0d1930;}
.evidence-verdict summary{cursor:pointer;font-weight:850;}
.collection-status{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:1rem 0;padding:.85rem 1rem;border:1px solid #2f63cc;border-radius:.8rem;background:#11255b;}
.collection-status span{font-weight:850;color:#9ed5ff;}
.profile-differences{display:grid;gap:.65rem;margin:1rem 0;}
.profile-differences article{display:grid;gap:.25rem;padding:.75rem;border:1px solid #4b5f83;border-radius:.75rem;background:#111c36;}
.profile-differences article span{color:var(--muted);}
.stack-actions{display:grid;gap:.65rem;margin-top:1rem;}
.stack-actions button{width:100%;}
#participation-context-form [data-recovery-link][hidden]{display:none!important;}
#participation-context-form fieldset{display:grid;gap:.6rem;}
#participation-context-form .participation-option input:not(:checked)+span{opacity:.9;}
.surprise-feedback details{margin:.8rem 0;padding:.7rem;border:1px solid #3b4f78;border-radius:.7rem;background:#101a33;}
.surprise-feedback details summary{cursor:pointer;font-weight:850;}
@media(max-width:420px){.collection-status{align-items:flex-start;flex-direction:column;gap:.25rem;}}

/* V69.5.0 · recomendación por fase, revisión trazable, evidencias compactas y cierre motivador */
.parallel-route-note{margin:.75rem 0 0;padding:.7rem .8rem;border-left:4px solid #58a9ff;border-radius:.55rem;background:#10223c;color:#d9ebff;}
.phase-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:.65rem;margin-top:.85rem;}
.phase-choice-card{display:grid;gap:.2rem;min-height:7.25rem;padding:.8rem;text-align:left;border:1px solid #376ca9;border-radius:.85rem;background:#102444;color:#fff;}
.phase-choice-card b{font-size:1.02rem;}.phase-choice-card span{font-weight:800;line-height:1.25;}.phase-choice-card small{margin-top:auto;color:#a9c6e9;line-height:1.25;}
.phase-choice-card.recommended{border:2px solid #45dbc2;background:linear-gradient(145deg,#113d4c,#132b4b);box-shadow:0 0 0 3px rgba(69,219,194,.12);}
.phase-choice-card.parallel{border-color:#536b96;background:#121d37;}
.parallel-routes{margin-top:1rem;padding:.75rem;border:1px solid #3b557d;border-radius:.8rem;background:#0e1830;}
.parallel-routes summary{cursor:pointer;font-weight:900;}
.active-learning-phase{border-color:#45dbc2!important;box-shadow:0 0 0 2px rgba(69,219,194,.1);}
.mini-card.recommended-card{border-color:#45dbc2!important;background:linear-gradient(145deg,#124d53,#17355b)!important;}
.mini-card.parallel-card{border-color:#536b96!important;}
[data-adjustment-field][hidden]{display:none!important;}

.evidence-list.compact{display:grid;gap:.55rem;margin-top:.8rem;}
.compact-evidence-card{overflow:hidden;border:1px solid #394c70;border-radius:.8rem;background:#101a32;}
.compact-evidence-card>summary{display:grid;grid-template-columns:minmax(8.5rem,.85fr) minmax(0,1.7fr);gap:.7rem;align-items:center;padding:.75rem .85rem;cursor:pointer;list-style:none;}
.compact-evidence-card>summary::-webkit-details-marker{display:none;}
.compact-evidence-card>summary:after{content:'▸';justify-self:end;grid-column:3;color:#8fc7ff;font-weight:900;}
.compact-evidence-card[open]>summary:after{content:'▾';}
.compact-evidence-card summary>span:first-child{display:grid;gap:.12rem;min-width:0;}
.compact-evidence-card summary small{color:var(--muted);font-size:.78rem;}
.evidence-preview{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;color:#c8d1e6;line-height:1.35;}
.evidence-detail{display:grid;gap:.55rem;padding:.8rem .9rem 1rem;border-top:1px solid #344665;background:#0d172c;}
.evidence-detail p{margin:0;}
.evidence-pagination{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.9rem;}
.evidence-pagination button{flex:1 1 9rem;}

.scientific-explanation{border-color:#3b77bb!important;background:#0c213a!important;}
.scientific-explanation[open]{box-shadow:inset 3px 0 0 #45dbc2;}
.session-closure-summary{display:grid;gap:.85rem;}
.session-closure-summary .stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;}
.session-closure-summary .stats>div{display:grid;place-items:center;gap:.15rem;padding:.8rem;border:1px solid #3a567d;border-radius:.8rem;background:#0d1c36;}
.session-closure-summary .stats b{font-size:1.5rem;color:#67e2ca;}
.session-closure-summary .stats span{color:var(--muted);text-align:center;}
.session-closure-summary details{padding:.7rem;border:1px solid #3b4f78;border-radius:.7rem;background:#101a33;}
.session-closure-summary summary{cursor:pointer;font-weight:850;}

@media(max-width:620px){
 .phase-choice-grid{grid-template-columns:1fr;}
 .phase-choice-card{min-height:6.25rem;}
 .compact-evidence-card>summary{grid-template-columns:minmax(0,1fr) auto;gap:.35rem .55rem;}
 .compact-evidence-card>summary:after{grid-column:2;grid-row:1/3;}
 .evidence-preview{grid-column:1;}
 .session-closure-summary .stats{grid-template-columns:1fr 1fr;}
}

/* V70.1.0 · Sesiones unificadas, idiomas offline y evidencias compactas */
.session-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0 14px}.session-type-card{display:grid;align-content:start;gap:8px;text-align:left;min-height:190px;padding:18px;border-radius:18px;border:1px solid #2d5b86;background:linear-gradient(145deg,#172a46,#11182e);color:var(--text)}.session-type-card.alternative{border-color:#9a6a20;background:linear-gradient(145deg,#3a2a16,#171b31)}.session-type-card>span{font-size:2rem}.session-type-card>b{font-size:1.08rem}.session-type-card p{margin:0}.active-session-bar{top:64px}.active-session-bar.alternative{background:#3a2a16;border-color:#9a6a20}.active-session-bar .session-bar-main{display:grid;min-width:0;gap:2px}.active-session-bar small{color:#cbd5e1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.active-session-home{border-color:#2d5b86}.active-session-home.alternative-active{border-color:#9a6a20;background:linear-gradient(145deg,#3a2a16,#171b31)}.active-session-detail{display:grid;gap:8px}.alternative-context-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.alternative-context-form .field-wide,.alternative-context-form button{grid-column:1/-1}.alternative-plan-facts{display:grid;grid-template-columns:minmax(120px,.42fr) 1fr;gap:8px 12px;margin:14px 0}.alternative-plan-facts dt{font-weight:900;color:#fde68a}.alternative-plan-facts dd{margin:0;color:var(--muted)}.alternative-context-summary{padding:10px 12px;border-radius:12px;background:#3a2a16;border:1px solid #9a6a20}.evidence-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.evidence-filter-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;margin:10px 0;border-radius:14px;background:#11162b;border:1px solid var(--line)}.evidence-filter-form[hidden]{display:none}.evidence-filter-form .row{grid-column:1/-1}.evidence-count-line{font-size:.86rem}.compact-evidence-card{border:1px solid var(--line);border-radius:14px;background:#11162b;overflow:hidden}.compact-evidence-card+ .compact-evidence-card{margin-top:8px}.compact-evidence-card>summary{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;padding:12px;cursor:pointer;list-style:none}.compact-evidence-card>summary::-webkit-details-marker{display:none}.evidence-card-identity{display:grid;gap:4px}.evidence-card-identity small{display:flex;align-items:center;flex-wrap:wrap;gap:5px;color:var(--muted)}.evidence-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);font-size:.88rem;line-height:1.35}.evidence-open-label{font-size:.78rem;font-weight:850;color:#7dd3fc}.evidence-type-badge,.evidence-status-badge{display:inline-flex;border-radius:999px;padding:3px 7px;background:#102640;color:#bfe4ff;font-size:.72rem}.evidence-status-badge.status-valid,.evidence-status-badge.status-revised{background:#12372f;color:#d1fae5}.evidence-status-badge.status-pending_review{background:#4a2a14;color:#fde68a}.evidence-detail{padding:0 12px 12px;border-top:1px solid var(--line)}.evidence-detail p{margin:10px 0 0}.plan-outcome-choice{display:grid;gap:8px}.plan-maintained-summary{margin:0 0 12px}.session-closure-summary .stats{grid-template-columns:repeat(4,minmax(0,1fr))}.session-closure-summary details{margin:10px 0}.session-closure-summary li{color:var(--muted);margin-bottom:5px}
@media(max-width:620px){.session-type-grid{grid-template-columns:1fr}.session-type-card{min-height:0}.alternative-context-form,.evidence-filter-form{grid-template-columns:1fr}.alternative-context-form .field-wide,.alternative-context-form button,.evidence-filter-form .row{grid-column:1}.evidence-heading-row{display:grid}.session-closure-summary .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.alternative-plan-facts{grid-template-columns:1fr}.alternative-plan-facts dt{margin-top:6px}.active-session-bar{top:60px;padding:.55rem .7rem}.active-session-bar .small{font-size:0}.active-session-bar .small::after{content:'Ver';font-size:.8rem}}

/* V70.1.0 · permisos coherentes, sesiones guiadas y guía compacta */
.guide-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:.75rem 0}
.guide-status-grid p{margin:0;padding:.85rem;border:1px solid var(--line,#334155);border-radius:1rem;background:rgba(15,23,42,.55);display:flex;flex-direction:column;gap:.25rem}
.guide-status-grid span{font-size:.92rem;color:var(--muted,#cbd5e1)}
.guide-subaccordion{display:grid;gap:.65rem;margin-top:1rem}
.guide-subaccordion>details{border:1px solid var(--line,#334155);border-radius:1rem;padding:.15rem .9rem;background:rgba(15,23,42,.42)}
.guide-subaccordion>details>summary{padding:.8rem 0;font-weight:800;cursor:pointer}
.choice-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:.65rem 0 1rem}
.choice-card{position:relative;display:block;min-height:3.25rem;padding:.8rem;border:1px solid var(--line,#334155);border-radius:1rem;background:rgba(15,23,42,.6);cursor:pointer}
.choice-card input{position:absolute;opacity:0;pointer-events:none}
.choice-card span{display:flex;align-items:center;min-height:1.6rem;font-weight:700}
.choice-card:has(input:checked){border-color:#2dd4bf;box-shadow:0 0 0 2px rgba(45,212,191,.22) inset;background:rgba(20,83,78,.38)}
.alternative-context-form fieldset{border:0;padding:0;margin:0 0 1rem}
.alternative-context-form legend{font-weight:900;margin-bottom:.25rem}
.alternative-preview{margin:1rem 0;padding:.85rem 1rem;border-radius:1rem;border:1px solid #2563eb;background:rgba(30,64,175,.18);line-height:1.45}
.alternative-compatibility{border-left:4px solid #2dd4bf}
.alternative-compatibility.complementary{border-left-color:#60a5fa}
.session-type-card strong{display:block;margin-top:.75rem;color:#5eead4;font-size:.95rem}
.session-closure-summary>.primary{width:100%;margin:.9rem 0}
.session-closure-summary details{margin-top:.75rem}
@media(max-width:560px){.choice-card-grid,.guide-status-grid{grid-template-columns:1fr}.choice-card{min-height:3rem}.session-closure-summary .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V70.4.0 · Inicio compacto, condiciones progresivas, contexto de participación e idiomas verificables */
.welcome-screen-first{display:grid;gap:.85rem;padding-bottom:calc(7.4rem + env(safe-area-inset-bottom));}
.welcome-screen-first>.eyebrow{margin:.2rem 0 0;text-align:center;}
.welcome-lead{max-width:42rem;margin:0 auto .15rem;text-align:center;font-size:clamp(1.05rem,4.2vw,1.35rem);line-height:1.45;color:var(--muted);}
.welcome-profile-card,.welcome-guide-card{margin:0;}
.welcome-profile-card{display:grid;gap:.7rem;padding:1.1rem;}
.welcome-profile-card h2,.welcome-profile-card p,.welcome-guide-card h2{margin:0;}
.welcome-profile-card .primary{width:100%;}
.welcome-guide-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.1rem;}
.welcome-guide-card .secondary{flex:0 0 auto;}
.profile-privacy{margin:0 0 .85rem;padding:.65rem .8rem;border:1px solid var(--line);border-radius:.8rem;background:rgba(15,23,42,.5);}
.profile-privacy summary{cursor:pointer;font-weight:800;}
.profile-privacy p{margin:.55rem 0 0;color:var(--muted);font-size:.92rem;}

.modal{max-height:calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;}
.compact-condition-form{display:grid!important;grid-template-columns:1fr!important;gap:.65rem!important;}
.compact-condition-form>details{grid-column:1!important;margin:0;border:1px solid var(--line);border-radius:1rem;background:rgba(15,23,42,.48);overflow:hidden;}
.compact-condition-form>details>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:center;padding:.9rem 1rem;cursor:pointer;list-style:none;}
.compact-condition-form>details>summary::-webkit-details-marker{display:none;}
.compact-condition-form>details>summary::after{content:'▸';grid-column:3;color:#8fc7ff;font-weight:900;}
.compact-condition-form>details[open]>summary::after{content:'▾';}
.compact-condition-form>details>summary span{font-weight:850;}
.compact-condition-form>details>summary b{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;color:#5eead4;font-size:.9rem;}
.compact-condition-form>details[open]>summary{border-bottom:1px solid var(--line);}
.compact-condition-form>details>*:not(summary){margin:.75rem;}
.compact-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem!important;}
.compact-choice-grid .choice-card{min-height:3rem;padding:.7rem .8rem;}
.inline-stepper{display:grid;grid-template-columns:auto minmax(4.5rem,1fr) auto auto;align-items:center;gap:.5rem;max-width:22rem;}
.inline-stepper button{width:3rem;min-height:3rem;padding:.5rem;font-size:1.35rem;}
.inline-stepper input{margin:0;text-align:center;min-width:0;}
.inline-stepper span{font-weight:800;color:var(--muted);}
.sticky-condition-summary{position:sticky;bottom:0;z-index:2;margin:.2rem 0 0!important;box-shadow:0 -8px 18px rgba(5,10,25,.35);}
.session-segment-timeline{display:grid;gap:.6rem;margin:.7rem 0;padding-left:1.35rem;}
.session-segment-timeline li{display:grid;grid-template-columns:4rem minmax(0,1fr);gap:.55rem;align-items:start;}
.session-segment-timeline time{font-weight:850;color:#5eead4;}
.participation-context-note{padding:.65rem .75rem;border-left:3px solid #60a5fa;background:rgba(30,64,175,.14);border-radius:.35rem;}
.active-session-bar .session-bar-main b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

@media(max-width:620px){
 .welcome-screen-first{gap:.7rem;}
 .welcome-profile-card{padding:1rem;}
 .welcome-guide-card{display:grid;grid-template-columns:1fr auto;}
 .welcome-guide-card h2{font-size:1.05rem;}
 .compact-choice-grid{grid-template-columns:1fr;}
 .compact-condition-form>details>summary b{max-width:9.5rem;}
 .inline-stepper{grid-template-columns:auto minmax(4rem,1fr) auto auto;max-width:none;}
}


/* V70.4.0 · evidencias trazables, comba accionable y Mito/Realidad persistente */
.rope-feedback-result{margin:1rem 0;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:rgba(15,23,42,.4)}
.rope-feedback-result dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:.8rem 0}.rope-feedback-result dl>div{padding:.65rem;border-radius:.75rem;background:rgba(2,6,23,.28)}.rope-feedback-result dt{font-size:.78rem;color:var(--muted)}.rope-feedback-result dd{margin:.15rem 0 0;font-weight:800}.rope-feedback-result.full{border-color:#10b981}.rope-feedback-result.adapted{border-color:#f59e0b}.rope-feedback-result.pending{border-color:#3b82f6}
.session-activity-evidence-list{display:grid;gap:.65rem;padding-left:1.15rem}.session-activity-evidence-list li span{display:block;color:var(--muted);font-size:.9rem;margin-top:.2rem}.surprise-progress{margin:.25rem 0 .85rem;padding:.55rem .75rem;border-radius:.7rem;background:#102743;color:#99f6e4;font-weight:800}
@media(max-width:420px){.rope-feedback-result dl{grid-template-columns:1fr}.rope-feedback-result .row{display:grid;grid-template-columns:1fr}}


/* V70.5.0 · cambio de idioma atómico y canal privado de validación francesa */

/* V70.6.0 · continuidad persistente de Mito/Realidad */
.surprise-collection-row.in-progress{border-color:#38bdf8;background:linear-gradient(135deg,rgba(14,165,233,.15),rgba(15,23,42,.72));box-shadow:inset 3px 0 0 #38bdf8}
.surprise-collection-row.in-progress small{color:#bae6fd;font-weight:800}
.surprise-progress{position:relative;z-index:1}
#surprise-form textarea{scroll-margin-bottom:9rem}
@media(max-width:520px){.surprise-feedback .row{display:grid;grid-template-columns:1fr}.surprise-feedback .row button{width:100%}}

/* V70.6.5 · persistencia redundante, recuperación prudente y escala argumentativa */
.storage-safety-panel code{overflow-wrap:anywhere;color:var(--mint,#67e8d1)}
.file-action{display:flex;align-items:center;justify-content:center;cursor:pointer;text-align:center}

/* V70.7.2 · navegación garantizada y recuperación sin borrado */
.boot-recovery{width:min(680px,100%);margin:auto}.boot-recovery .boot-detail{padding:.8rem 1rem;border-left:4px solid #f59e0b;border-radius:.7rem;background:#2d2416}.boot-recovery .stack{margin:1rem 0}.boot-recovery .secondary{width:100%}
.danger-zone{margin-top:1rem;border-top:1px solid var(--line,#34405f);padding-top:.75rem}
.danger-zone summary{color:#fbbf24}
.recovery-form{display:grid;gap:1rem}
.recovery-form label{display:grid;gap:.4rem}
.argument-scale{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:.9rem 0}
.argument-scale article{display:grid;gap:.3rem;padding:.75rem;border:1px solid var(--line,#34405f);border-radius:.8rem;background:#10172d}
.argument-scale article.current{border-color:#2dd4bf;background:#123b38}
.argument-scale span{font-size:.82rem;line-height:1.35}
@media(max-width:620px){.argument-scale{grid-template-columns:1fr}.storage-safety-panel .stacked-actions>*{width:100%}}

/* V70.8.1 · arranque por fases + legibilidad reforzada y escala EFBoral visible */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;font-size:18px}
body{font-size:1rem;line-height:1.55}
h1{font-size:clamp(1.8rem,5vw,2.5rem)}
h2{font-size:clamp(1.28rem,3.8vw,1.55rem);line-height:1.2}
h3{font-size:clamp(1.08rem,3.2vw,1.28rem);line-height:1.25}
p,li,dt,dd,label,summary{font-size:1rem;line-height:1.55}
.brand strong{font-size:1.05rem}.brand span{font-size:.86rem;line-height:1.35}
.eyebrow{font-size:.88rem;line-height:1.35}
.stats span,.criterion p,.product p,.timeline time,.fitness-card span,.fitness-card i,.mission-cromos article span,.micro-help,.availability-reason,.planner-period span,.evidence-count-line,.evidence-preview,.active-session-bar,.route-type-list article p,.guide-status-grid span,.profile-privacy p,.session-activity-evidence-list li span{font-size:.92rem;line-height:1.45}
.small,.home-quick-actions button,.progress-tabs button,.adventure-view-tabs button,.progress-jump-nav a,.segmented-tabs button{font-size:.9rem}
.chip,.route-chip,.route-state-legend span,.learning-chain span,.history-summary span,.practice-round-heading>span,.evidence-open-label,.evidence-type-badge,.evidence-status-badge,.alternative-type,.rope-feedback-result dt,.argument-scale span{font-size:.86rem;line-height:1.35}
.mini-card small{font-size:.82rem}.mini-card em{font-size:.76rem;line-height:1.18}
.bottom-nav button{font-size:.78rem!important;line-height:1.15;min-height:52px;padding:7px 2px}.bottom-nav button span{font-size:1.25rem}
.rubric-state{font-size:.98rem}.rubric-copy b{font-size:1.06rem}.rubric-table article b{font-size:1.08rem}.rubric-table article p{font-size:1rem}
input,select,textarea,button{font-size:.98rem}
@media(max-width:620px){
 html{font-size:18px}
 .view{padding-left:14px;padding-right:14px}
 .brand span{font-size:.84rem}
 .bottom-nav button{font-size:.78rem!important}
 .progress-tabs button,.adventure-view-tabs button,.segmented-tabs button{font-size:.82rem}
 .progress-jump-nav a{font-size:.78rem}
 .active-session-bar .small::after{font-size:.86rem}
}
@media(max-width:390px){
 .bottom-nav button{font-size:.78rem!important}
 .mini-card small{font-size:.8rem}.mini-card em{font-size:.75rem}
 .segmented-tabs button{font-size:.78rem}
}

/* V70.8.1 · vigilancia de arranque no fatal */
.boot-delay-panel{position:absolute;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translate(-50%,18px);width:min(92vw,560px);padding:14px 16px;border-radius:18px;background:rgba(15,23,42,.97);border:1px solid rgba(94,234,212,.5);box-shadow:0 20px 60px rgba(0,0,0,.45);color:#fff;text-align:center;opacity:0;visibility:hidden;transition:.25s ease;z-index:2}.boot-delay-panel.visible{opacity:1;visibility:visible;transform:translate(-50%,0)}.boot-delay-panel p{margin:.25rem 0;line-height:1.4}.boot-delay-phase{color:#cbd5e1;font-size:.9rem}.boot-delay-actions{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.75rem}.boot-delay-actions button{min-height:48px;border:1px solid #465474;border-radius:14px;background:#202943;color:#fff;font:inherit;font-weight:800}.boot-delay-actions button:first-child{background:#25d6b4;color:#061713;border-color:#25d6b4}@media(max-width:460px){.boot-delay-panel{bottom:max(10px,env(safe-area-inset-bottom));padding:12px}.boot-delay-actions{grid-template-columns:1fr}}
