.subjects-nav{margin:20px 0 24px}.subjects-nav h2,.nav-group h2{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 12px 10px}
.subject-switcher{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.subject-choice{position:relative;display:grid;grid-template-columns:8px minmax(0,1fr);gap:5px 9px;align-content:center;padding:12px;min-height:72px;border:1px solid var(--line);border-radius:9px;background:var(--paper);text-decoration:none;color:var(--ink)}
.subject-choice strong{font-size:13px;font-weight:650;line-height:1.5;align-self:center;min-width:0;overflow-wrap:anywhere;hyphens:auto}.subject-choice small{grid-column:2;font-size:11px;color:var(--muted)}.subject-dot{width:7px;height:7px;margin-top:5px;background:var(--course);border-radius:50%}
.subject-choice.active{border-color:var(--accent);background:var(--soft);box-shadow:inset 0 -3px var(--accent)}.subject-choice:hover{border-color:var(--accent)}
.nav-group{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.nav-group .nav-link{width:100%;border:0;background:transparent;justify-content:flex-start;text-align:left;font-weight:400;min-height:43px}.nav-group .nav-link.active{background:var(--soft);font-weight:650}.nav-group .nav-link svg{height:18px;width:18px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.nav-version{font-size:12px!important}
.contents-trigger{width:100%;display:grid;grid-template-columns:1fr 20px;gap:3px;text-align:left;justify-items:start;padding:12px;margin-top:10px;font-size:12px;background:var(--soft)}.contents-trigger span{grid-column:1/-1;font-weight:400;color:var(--muted);font-size:10px}.contents-trigger svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;fill:none}
#contents-block{width:100%;margin:10px 0 14px}#contents-topics .topic-list{max-height:55vh;overflow:auto;padding:0}#contents-topics a{padding:12px;font-size:14px}.topic-list .pill{font-size:11px;white-space:nowrap}
.home-welcome{display:block;margin-bottom:22px}.home-welcome h1{font-size:clamp(30px,3.5vw,45px);max-width:650px}.home-welcome p{max-width:580px}.home-count{font-size:13px;letter-spacing:.02em;color:var(--muted)}
.teacher-portrait{margin:0}.teacher-portrait img{display:block;width:154px;height:190px;object-fit:cover;object-position:50% 17%;border-radius:18px;margin:auto;border:1px solid var(--line)}.teacher-portrait figcaption{text-align:center;font-size:12px;line-height:1.5;margin-top:12px}.teacher-portrait figcaption strong{font-weight:600}.teacher-portrait figcaption span{display:block;color:var(--muted);font-size:11px}
.lesson-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.lesson-actions .topic-action{position:relative;min-width:43px;min-height:43px;padding:10px;gap:7px;font-size:13px;line-height:1}.topic-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.topic-action.is-active{background:var(--soft);color:var(--accent);border-color:var(--accent)}.topic-action[data-action=favorite].is-active svg{fill:var(--accent);fill-opacity:.18}
.topic-action:hover::after,.topic-action:focus-visible::after{content:attr(data-tip);position:absolute;z-index:10;top:calc(100% + 7px);left:50%;transform:translateX(-50%);max-width:180px;width:max-content;padding:7px 10px;background:var(--ink);color:var(--paper);border-radius:6px;font-size:12px;font-weight:400;line-height:1.4;pointer-events:none}
.lesson-actions .topic-action:first-child::after{left:0;transform:none}.lesson-actions .topic-action:last-child::after{left:auto;right:0;transform:none}
.personal-records{margin-top:26px}.highlight-quote{border-left:3px solid var(--accent);padding:10px 14px;margin:12px 0;background:var(--soft);white-space:pre-wrap}.annotation-note{white-space:pre-wrap}.board-scope{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:15px}.board-scope label{flex:1;min-width:180px}.board-scope select{width:100%;margin-top:6px}.board-scope .small{flex-basis:100%;margin:0}
.highlight-quote[data-color=yellow]{border-color:#a78510;background:#f7eab966}.highlight-quote[data-color=pink]{border-color:#bd568e;background:#eeb4d033}.highlight-quote[data-color=blue]{border-color:#4d8bb7;background:#9dcbea33}.highlight-quote[data-color=green]{border-color:#44875d;background:#a4d5b433}.hint-panel p{white-space:pre-line}.topic-action{touch-action:manipulation}
.board-dialog{width:min(1200px,96vw);max-width:96vw}.board-dialog #dialog-content{padding:24px}.board-dialog .dialog-title{padding-right:50px}.board-dialog .whiteboard{max-height:none}.print-summary{display:none}
@media(max-width:560px){.home-welcome{display:block}.home-welcome h1{font-size:29px;margin-top:9px}.home-welcome p{font-size:15px}.home-welcome .eyebrow{font-size:10px}.teacher-portrait img{width:100px;height:138px;border-radius:12px}.teacher-portrait figcaption{font-size:10px}.teacher-portrait figcaption span{font-size:10px}.home-count{grid-column:1/-1}.lesson-actions .topic-action{padding:10px;min-width:43px;font-size:12px}.board-dialog #dialog-content{padding:16px}.board-scope{margin-top:12px}.board-dialog .whiteboard{max-height:none}}
@media print{.subjects-nav,.lesson-actions,.annotation-toolbar,.annotation-panel,.board-toolbar,.board-options{display:none!important}.print-summary{display:block}.teacher-portrait img{width:95px;height:125px}.home-welcome{grid-template-columns:1fr 110px}}
@media print{body[data-theme],body[data-accent]{--bg:#fff;--paper:#fff;--ink:#111;--muted:#444;--line:#ccc;--accent:#222;--soft:#f4f4f4;--code:#f3f3f3;--code-ink:#111}button.term{display:inline;padding:0;min-height:0;border:0;background:none;color:inherit;text-decoration:none}button.term::after{display:none}.guide button:not(.term),.dictionary-entry .row{display:none!important}#storage-warning{display:none!important}}
@media(max-width:560px){.lesson-actions{gap:6px}.lesson-actions .topic-action{padding:9px;min-width:40px;min-height:43px}}

.teacher-profile{display:grid;grid-template-columns:210px minmax(0,1fr);gap:32px;align-items:start;margin-top:22px}
.teacher-media{min-width:0}.teacher-profile .teacher-portrait img{width:180px;height:236px;border-radius:16px;object-fit:cover;object-position:50% 17%;margin:0 auto}
.teacher-contact{font-style:normal;display:grid;gap:7px;margin-top:16px}.teacher-contact a{display:flex;flex-direction:column;justify-content:center;min-height:54px;padding:8px 10px;border-radius:8px;background:var(--bg);text-decoration:none;min-width:0;overflow-wrap:anywhere}.teacher-contact a:hover{text-decoration:underline}.teacher-contact span{font-size:12px;color:var(--muted)}.teacher-contact strong{font-size:14px;line-height:1.5;font-weight:600}.teacher-description{min-width:0}.teacher-description h3{margin-top:24px}
@media(max-width:980px){.teacher-profile{grid-template-columns:190px minmax(0,1fr);gap:24px}.teacher-profile .teacher-portrait img{width:164px;height:218px}}
@media(max-width:600px){.teacher-profile{grid-template-columns:minmax(0,1fr);gap:24px}.teacher-profile .teacher-media{display:grid;grid-template-columns:125px minmax(0,1fr);gap:16px;align-items:center}.teacher-profile .teacher-portrait img{width:125px;height:169px}.teacher-contact{margin-top:0}.teacher-contact a{padding:8px;min-height:56px}.teacher-contact strong{font-size:13px}}
@media(max-width:400px){.teacher-profile .teacher-media{grid-template-columns:minmax(0,1fr);gap:12px}.teacher-profile .teacher-portrait img{margin:0;width:145px;height:190px}.teacher-contact{max-width:250px}}
@media print{.teacher-profile{grid-template-columns:120px 1fr;gap:20px}.teacher-profile .teacher-portrait img{width:105px;height:135px}.teacher-contact strong{font-size:9pt}.teacher-contact a{padding:3px;min-height:0}}

body[data-theme=dark] .course-card .eyebrow{color:var(--ink)}

/* 0.4.2 · Unidades, catálogos y acciones junto a la lectura. */
.unit-grid,.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.unit-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink);overflow-wrap:anywhere}
.unit-card:hover{border-color:var(--accent);background:var(--soft)}.unit-card h3{font-size:20px;margin:0;line-height:1.4}.unit-card-open{margin-top:auto;padding-top:8px;font-size:14px;font-weight:600;color:var(--accent)}
.resource-grid .activity-card,.resource-grid .dictionary-card{margin:0;min-width:0;display:flex;flex-direction:column;padding:22px;overflow-wrap:anywhere}
.resource-grid h2,.resource-grid h3{font-size:21px;line-height:1.4;margin:14px 0 12px}.resource-grid .dictionary-card h2{margin-top:8px}.resource-grid .dictionary-card p{margin-bottom:0}
.card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:8px}.card-actions small{font-size:12px}.catalog-filters input{flex:1;min-width:180px}.catalog-group{margin-top:28px}.catalog-group h2{margin-top:0}
.dictionary-card{position:relative}.dictionary-card h2 a::after{content:'';position:absolute;inset:0;border-radius:12px}.dictionary-card:focus-within{outline:3px solid var(--accent);outline-offset:3px}.dictionary-card:hover{border-color:var(--accent)}.dictionary-card h2 a:focus-visible{outline:none}
.lesson-actions{position:sticky;top:78px;z-index:15;padding:9px 0;margin:0;background:var(--bg);border-bottom:1px solid var(--line)}.lesson-actions .topic-action{min-width:44px;min-height:44px}.lesson-head{padding-bottom:18px;margin-bottom:0}.lesson-pagination a{min-width:0;overflow-wrap:anywhere}.lesson-body :is(p,h2,h3,h4,li){scroll-margin-top:160px}.present .lesson-actions{display:none}
.topic-action[data-action=highlight].is-active{background:#fff2b3;color:#564006;border-color:#977923}.board-surface-options{margin-bottom:18px}.unit-picker select{width:100%}
@media(min-width:1500px){.unit-grid,.dictionary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px) and (min-width:821px){.resource-grid,.unit-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:820px){.lesson-actions{top:68px}}
@media(max-width:600px){.resource-grid,.unit-grid{grid-template-columns:minmax(0,1fr)}.unit-card,.resource-grid .activity-card,.resource-grid .dictionary-card{padding:18px}.lesson-actions{gap:4px}.lesson-actions .topic-action{min-width:44px;min-height:44px;padding:10px}.lesson-actions .topic-action span{display:none}.lesson-body :is(p,h2,h3,h4,li){scroll-margin-top:185px}.catalog-filters input{min-width:0}}
@media print{.resource-grid,.unit-grid{display:block}.unit-card,.resource-grid .activity-card,.resource-grid .dictionary-card{break-inside:avoid;margin:12px 0}}

html{scroll-padding-top:146px}@media(max-width:600px){html{scroll-padding-top:185px}}
.catalog-filters,.filters:has(#dict-search){position:sticky;top:78px;z-index:6;background:var(--bg);padding:10px 0}
@media(max-width:820px){.catalog-filters,.filters:has(#dict-search){top:68px}}
@media print{.catalog-filters,.filters:has(#dict-search){position:static}}

/* Lectura ordenada y consulta de fuentes · 0.5 */
.reading-section{margin:1.8rem 0}.reading-section>h2{font-size:1.35em;margin:1.5rem 0 .75rem}.reading-section>p:first-child{margin-top:0}.reading-section ol li{margin:.7rem 0}.reading-section .figure{margin:1.25rem 0}.unit-introduction{border-bottom:1px solid var(--line);padding-bottom:1.5rem;margin-bottom:2rem}.unit-introduction section+section{margin-top:2rem}.unit-introduction h2{font-size:1.45em}.unit-introduction h3{font-size:1.08em}.unit-introduction p,.unit-introduction li{line-height:1.8}.references-grid .resource-card{margin:0;min-width:0;overflow-wrap:anywhere}.references-grid h3{margin-top:1rem}.references-grid .resource-card:focus{outline:3px solid var(--accent);outline-offset:3px}.topic-id{display:block;font-size:.76em;color:var(--muted);margin-top:.25rem}.guide-sources{border-block:1px solid var(--line);padding:1rem 0;margin:1.5rem 0}#refs-kind{max-width:20rem}
