@font-face{font-family:'IBM Plex Sans';src:url('assets/ibm-plex-sans.ttf') format('truetype');font-weight:100 700;font-style:normal;font-display:swap}
@font-face{font-family:'Space Grotesk';src:url('assets/space-grotesk.ttf') format('truetype');font-weight:300 700;font-style:normal;font-display:swap}
:root{color-scheme:light;--ink:#282345;--muted:#514963;--paper:#bdf3df;--panel:#fffdf7;--surface-soft:#e5def8;--surface-strong:#5142ab;--accent:#5142ab;--accent-hover:#3a2a8b;--button-ink:#ffffff;--line:#a79cbe;--scrim:rgba(35,24,66,.38);--font:'IBM Plex Sans','Segoe UI',sans-serif;--intro:#d0f8e8}
body{--purple:var(--accent);--purple-dark:var(--accent-hover);--sky:var(--surface-soft);--lilac:var(--surface-soft);--yellow:#ffe49a;--pink:#ffd4c8;--green:#bdf3df;color:var(--ink);background:var(--paper);font-family:var(--font);transition:background-color .25s ease}
body[data-stage="algoritmos"]{--paper:#c5e7ff;--intro:#d7efff}
body[data-stage="personalizacion"]{--paper:#ded0ff;--intro:#e9deff}
body[data-stage="verificacion"]{--paper:#ffe49a;--intro:#fff0bc}
body[data-stage="practica"]{--paper:#ffcbb8;--intro:#ffe0cc}
body[data-stage="fuentes"]{--paper:#b6eee2;--intro:#d0f7ed}
body[data-stage="actualidad"]{--paper:#ffd9e6;--intro:#ffe5ed}
h1,h2,h3,h4,.hero>h1,.page-intro h1,.news-story h2,.brand-copy strong{font-family:'Space Grotesk','Segoe UI',sans-serif;font-weight:600;letter-spacing:-.025em;text-wrap:balance}
p,li,button,input,textarea,select{font-family:var(--font)}
.hero>h1,.page-intro h1{font-weight:600;line-height:1.08}
.site-header{background:#fffdf7;border-bottom-color:var(--line)}.header-context span{color:var(--muted)}
.sidebar{background:var(--panel)}.station-list a[aria-current="page"]{background:var(--surface-soft);color:var(--ink);box-shadow:none}
.station-marker,.route-dot{color:var(--ink)}.station-list a[aria-current="page"] .station-marker{border-color:var(--surface-soft)}
.home-context,.content-section,.site-footer{background:transparent}
.site-footer{border-color:var(--line)}.node-background{opacity:.18}
.hero-copy{background:transparent}
body[data-stage="inicio"] .hero{min-height:0;padding:42px 24px 12px;background:transparent;overflow:visible;gap:24px}
body[data-stage="inicio"] .hero:after{display:none}
body[data-stage="inicio"] .hero>h1{font-size:clamp(2.7rem,6vw,5.6rem);max-width:18ch;margin:0;line-height:1.06}
body[data-stage="inicio"] .hero-copy{max-width:62ch}
body[data-stage="inicio"] .hero-copy p{color:var(--muted);font-size:1.125rem;line-height:1.65}
.home-people{display:flex;align-items:center;justify-content:center;width:min(100%,980px);margin:0 auto;position:relative;gap:8px}
.home-people .student-portrait{width:31%;flex:none}
.home-context{padding-top:46px}
.page-intro{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(230px,1fr);gap:20px 32px;align-items:center;overflow:visible;max-width:none;padding:36px;border:0;border-radius:16px;background:var(--intro);margin:18px 0 44px;min-height:310px}
body[data-stage="algoritmos"] .page-intro{text-align:left;max-width:none}
.page-intro h1{grid-column:1;max-width:20ch;font-size:clamp(2.2rem,4vw,3.8rem);margin:0;align-self:end}
.page-intro>p{grid-column:1;max-width:66ch;padding:0;margin:0;align-self:start;line-height:1.7;color:var(--muted);background:none}
.page-intro .section-illustration{grid-column:2;grid-row:1/3;position:relative;width:100%;align-self:center}
.student-portrait{width:100%;aspect-ratio:1;background-image:url('assets/estudiantes-periodismo.webp');background-size:300% 200%;background-repeat:no-repeat;transform-origin:50% 85%;animation:read-phone 2200ms ease-in-out 2;pointer-events:none}
.scene-0{background-position:0 0}.scene-1{background-position:50% 0;animation-name:listen-phone}.scene-2{background-position:100% 0;animation-name:inspect-phone}.scene-3{background-position:0 100%;animation-name:read-phone}.scene-4{background-position:50% 100%;animation-name:listen-phone}.scene-5{background-position:100% 100%;animation-name:inspect-phone}
@keyframes read-phone{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-6px) rotate(-1.2deg)}70%{transform:translateY(-2px) rotate(.8deg)}}
@keyframes listen-phone{0%,100%{transform:rotate(0)}30%{transform:rotate(1.5deg)}70%{transform:rotate(-1deg)}}
@keyframes inspect-phone{0%,100%{transform:translateX(0)}35%{transform:translateX(-5px) rotate(-1deg)}70%{transform:translateX(5px) rotate(1deg)}}
.replay-illustration{position:absolute;right:2px;bottom:2px;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--accent)}
.replay-illustration:hover{background:var(--surface-soft)}.replay-illustration svg{width:20px;height:20px;fill:currentColor;stroke:none}
.button:not(.secondary),button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.button:not(.secondary):hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.button.dark{background:var(--accent);color:white}.button.dark:hover{background:var(--accent-hover)}
.button.secondary{background:var(--panel);color:var(--ink)}.button.secondary:hover{background:var(--surface-soft)}
.chapter-button,.download-feature .button,.practice-banner .button{background:var(--accent);color:white}
.lesson-index button,.quiz-source a,.quiz-evidence summary,.text-button,.comment-status{color:var(--accent)}
.sim-feed li:before,.step-list li:before,.misinformation-types h3:before{color:var(--accent)}
.signal-controls button[aria-pressed=true]{background:var(--accent);color:white}
.lesson-block,.quiz-panel,.lesson-index,.simulator,.diet-builder,.news-discussion{background:var(--panel);border-color:var(--line)}
.quiz-situation,.quiz-option:has(input:checked),.sim-feed li,.diet-summary{background:var(--surface-soft)}
.quiz-feedback{background:#d2f4e8;color:var(--ink);border:1px solid #458575}.quiz-feedback.incorrect{background:#ffe0d4;border-color:#b66a4c}.quiz-error{color:#9a253b}
.relation-diagram,.intent-scale,.compass-panel{background:#f9f6ff;border-color:var(--line)}
.relation-axes,.relation-map h3{color:var(--ink)}.relation-map p{color:var(--muted)}
.relation-map>svg{fill:rgba(101,75,180,.08);stroke:#8170b1}
.relation-map .relation-intersection{background:#ded4f6;border-color:#8170b1}
.native-types li,.report-cover{background:#f4efff;border-color:var(--line)}.type-symbol{stroke:var(--accent)}
.native-types h3:before,.report-cover>span{color:var(--accent)}
.intent-track{background:linear-gradient(90deg,#d3c3f4,#6844ae)}.intent-scale>div:first-child>span:nth-child(2){color:var(--accent)}
.concept-flow li{border-color:#8170b1;background:var(--panel)}.concept-flow ol:before,.relation-map:before{background:#8170b1}
.check-compass text{font-family:'Space Grotesk',sans-serif;fill:var(--ink)}.check-compass polygon{fill:#ded4f6;stroke:#6844ae}.check-compass circle{fill:#eee7ff;stroke:#8170b1}.check-compass>circle:first-child{fill:none}.check-compass>circle:nth-last-child(9){fill:#6844ae}.check-compass path{stroke:#8170b1}
.comment-form input:not([type=checkbox]),.comment-form textarea{background:#fff;border-color:#9182ac;color:var(--ink)}
input,textarea,select{caret-color:var(--accent);accent-color:var(--accent)}
a{text-underline-offset:.22em}::selection{background:#ffcb78;color:#282345}*{scrollbar-color:#8170b1 var(--paper)}:focus-visible{outline-color:var(--accent)}
@media(max-width:760px){.page-intro{grid-template-columns:1fr;padding:26px 20px 12px;gap:18px;margin-block:12px 32px;min-height:0}.page-intro h1{font-size:clamp(2rem,8.5vw,3rem)}.page-intro h1,.page-intro>p{max-width:100%}.page-intro .section-illustration{grid-column:1;grid-row:auto;width:min(100%,270px);justify-self:center}.page-intro .student-portrait{margin-top:-8px}.home-people{gap:0;flex-wrap:wrap;width:100%;padding-bottom:22px}.home-people .student-portrait{width:49%}.home-people .student-portrait:last-of-type{display:none}body[data-stage="inicio"] .hero{padding:20px 0 0;gap:24px;min-height:0}body[data-stage="inicio"] .hero>h1{font-size:clamp(2.4rem,10.4vw,4rem);max-width:16ch}body[data-stage="inicio"] .hero-copy p{font-size:1.0625rem}.home-context{padding-top:28px}.relation-map>div{background:#f4efff;border-color:var(--line)}.relation-map .relation-intersection{background:#ded4f6;border-color:#8170b1}.node-background{opacity:.12}}
@media(prefers-reduced-motion:reduce){body{transition:none}.student-portrait{animation:none}.replay-illustration{display:none}}
@media print{body{--paper:white;--ink:#282345;--muted:#514963}.section-illustration{display:none}.page-intro{display:block;background:white}.page-intro>p{margin-top:20px}}
main:focus{outline:none}
html{background:#bdf3df;scrollbar-color:#8170b1 #e5def8}
.check-compass>circle:not(:first-child){fill:var(--accent);stroke:var(--accent)}
