/*
 * MATEMATICAMENTE · identidad azul, rojo y blanco
 *
 * Esta capa es deliberadamente independiente de la logica pedagogica.
 * Se carga despues de las hojas funcionales para retirar la identidad
 * negro/dorado sin tocar motores, bancos, estados ni componentes JS.
 */

:root{
  --mm-ink:#142238;
  --mm-muted:#44546a;
  --mm-paper:#f7f7f6;
  --mm-paper-2:#edf3f8;
  --mm-surface:#ffffff;
  --mm-line:#d7e0e9;
  --mm-navy:#142238;
  --mm-navy-2:#214e78;
  --mm-blue:#2f6fa6;
  --mm-blue-2:#214e78;
  --mm-blue-soft:#dceaf5;
  --mm-red:#c04a50;
  --mm-red-2:#832e35;
  --mm-red-soft:#f8e9ea;
  --mm-cyan:#5ea2c4;
  --mm-cyan-soft:#e5f2f7;
  --mm-ok:#207a4b;
  --mm-ok-soft:#e3f5e9;
  --mm-shadow:0 24px 70px rgba(7,27,58,.12);

  /* Compatibilidad con las variables historicas del portal. */
  --ink:var(--mm-ink);
  --ink-soft:var(--mm-muted);
  --muted:var(--mm-muted);
  --paper:var(--mm-paper);
  --paper-2:var(--mm-paper-2);
  --surface:var(--mm-surface);
  --line:var(--mm-line);
  --petrol:var(--mm-blue);
  --petrol-soft:var(--mm-blue-soft);
  --green:var(--mm-blue);
  --mint:var(--mm-blue-soft);
  --gold:var(--mm-red);
  --gold-dark:var(--mm-red);
  --focus:var(--mm-blue);
  --ok:var(--mm-ok);
  --error:var(--mm-red);
  --danger:var(--mm-red);
  --soft:var(--mm-surface);
  --shadow:var(--mm-shadow);
}

html{color-scheme:light}
body{background:var(--mm-paper);color:var(--mm-ink)}

/* Acceso global claro: ambos colores quedan como una firma breve. */
.global-products{
  border-bottom-color:#d7e0e9!important;
  background:rgba(255,255,255,.97)!important;
  color:var(--mm-ink)!important;
  box-shadow:0 6px 22px rgba(20,34,56,.055)!important;
}
.global-products::before{color:#647084!important}
.global-products a{color:#44546a!important}
.global-products .gp-short{display:none!important}
.global-products a::before{background:#a65a5f!important;box-shadow:0 0 0 3px rgba(166,90,95,.08)!important}
.global-products a:hover,.global-products a:focus-visible{
  color:#214e78!important;border-color:#bdcad7!important;background:#edf3f8!important;
}
.global-products a[aria-current]{color:#214e78!important;background:#edf3f8!important;border-color:#bdcad7!important;box-shadow:inset 0 -2px 0 #a65a5f!important}
.global-products a[aria-current]::before{background:#315f84!important;box-shadow:none!important}

.topbar{
  border-bottom-color:#d7e0e9!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--mm-ink)!important;
  box-shadow:0 8px 24px rgba(20,34,56,.045)!important;
}
.topbar .brand,.topbar .home-link{color:var(--mm-ink)!important}
.topbar .brand span{color:#832e35!important}
.topbar .portal-nav a,.topbar .thematic-menu summary{color:#44546a!important}
.topbar .portal-nav a:hover,.topbar .portal-nav a[aria-current=page],.topbar .portal-nav a[aria-current=location],.topbar .thematic-menu[open] summary{
  color:#214e78!important;border-bottom-color:#a65a5f!important;background:transparent!important;
}
.topbar .home-link{border-bottom-color:#a65a5f!important}
.thematic-menu-panel{border-color:#bdcad7!important;background:#fff!important;box-shadow:var(--mm-shadow)!important}
.portal-nav .thematic-menu-panel a{border-color:#d7e0e9!important;background:#fff!important;color:#44546a!important}
.portal-nav .thematic-menu-panel a:hover,.portal-nav .thematic-menu-panel a:focus-visible{border-color:#2f6fa6!important;background:#edf3f8!important;color:#214e78!important}

:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid var(--mm-blue)!important;
  outline-offset:3px;
}

.kicker,.eyebrow,.panel-label,.stage-kicker,.toolbar-label,.scope-tag,.unit-area{color:var(--mm-red)!important}
.primary,.year-btn.active,.launch-btn,.teacher-toggle[aria-pressed=true],.program-year.active,.stage-tab.active,.session-button.primary{
  border-color:var(--mm-blue)!important;background:var(--mm-blue)!important;color:#fff!important;
}
.primary:hover,.launch-btn:hover{border-color:var(--mm-blue-2)!important;background:var(--mm-blue-2)!important;color:#fff!important}
.secondary{border-color:#9ab4d2!important;background:#fff!important;color:var(--mm-blue)!important}
.quiet,.side-link,.area-route{color:var(--mm-blue)!important}

/* Portada: fondo tecnico propio, sin utileria fotografica ni oro. */
.math-landing{
  --landing-bg:var(--mm-paper);
  --landing-panel:var(--mm-surface);
  --landing-panel-2:var(--mm-blue-soft);
  --landing-line:var(--mm-line);
  --landing-text:var(--mm-ink);
  --landing-muted:var(--mm-muted);
  --landing-accent:var(--mm-red);
  background:var(--mm-paper)!important;color:var(--mm-ink)!important;
}
.math-landing .portal-hero{
  border-bottom-color:var(--mm-line)!important;
  background:
    radial-gradient(circle at 88% 16%,rgba(47,111,166,.09) 0 10%,transparent 10.4%),
    radial-gradient(circle at 75% 78%,rgba(192,74,80,.045) 0 15%,transparent 15.4%),
    linear-gradient(145deg,#fff 0%,#edf3f8 100%)!important;
}
.math-landing .portal-hero::before{
  content:"";position:absolute;z-index:2;left:clamp(22px,3vw,42px);right:auto;top:0;width:76px;height:2px;
  border-radius:999px;background:linear-gradient(90deg,#315f84 0 68%,transparent 68% 77%,#a65a5f 77% 100%);
  pointer-events:none;
}
.math-landing .portal-hero::after{border-color:rgba(255,129,119,.34)!important}
.math-landing .portal-hero h1,.math-landing .portal-hero .portal-strap{color:#fff!important}
.math-landing .hero-primary>p,.math-landing .hero-support>p{color:#d8e7f8!important}
.math-landing .hero-primary>.kicker,.math-landing .hero-foundations{color:#8fdcff!important}
.math-landing .hero-foundations{text-decoration-color:rgba(255,129,119,.64)}
.math-landing .access-state{border-color:rgba(255,255,255,.22);color:#d8e7f8}
.math-landing .access-state strong,.math-landing .access-state span::before,.math-landing .access-state a{color:#8fdcff}
.math-landing .access-state button{border-color:#8fdcff;background:rgba(143,220,255,.1);color:#fff}

.math-atmosphere span{color:var(--mm-blue)!important;opacity:.1;text-shadow:0 0 26px rgba(23,92,211,.24)!important}
.math-atmosphere span:nth-child(3n+2){color:var(--mm-red-2)!important;text-shadow:0 0 24px rgba(217,45,32,.22)!important}
.math-atmosphere span:nth-child(3n){color:var(--mm-cyan)!important;text-shadow:0 0 24px rgba(34,184,207,.24)!important}

.math-landing .start-orientation{
  border-color:#b8cbe1;background:#fff;color:var(--mm-ink);
  box-shadow:0 30px 90px rgba(3,21,48,.3);
}
.start-orientation-head>.kicker,.start-number{color:var(--mm-blue)!important}
.start-orientation-head h2,.start-card-heading h3,.start-assisted h3{color:var(--mm-ink)}
.start-orientation-head p,.start-card-heading p,.start-assisted p{color:var(--mm-muted)!important}
.math-landing .portal-hero .start-orientation-head p{color:var(--mm-muted)!important;font-size:15px!important}
.math-landing .portal-hero .start-card-heading p,.math-landing .portal-hero .start-assisted p{color:var(--mm-muted)!important;font-size:13px!important}
.start-known{border-top-color:var(--mm-line)}
.math-landing .start-orientation .path-card{border-color:#c6d5e6!important;background:#fff!important;color:var(--mm-ink)!important}
.math-landing .start-orientation .path-card:nth-child(n){border-top:1px solid var(--mm-line)!important}
.math-landing .start-orientation .path-card:hover{border-color:var(--mm-blue)!important;background:var(--mm-blue-soft)!important}
.math-landing .start-orientation .path-card .num,.math-landing .start-orientation .path-card .go{color:var(--mm-blue)!important}
.math-landing .start-orientation .path-card h3{color:var(--mm-ink)!important}
.math-landing .start-orientation .path-card p{color:var(--mm-muted)!important}
.start-assisted{border-color:#a9c5e4;background:var(--mm-blue-soft);color:var(--mm-ink)}
.start-assisted.start-photo{border-color:#efb2ad;background:var(--mm-red-soft)}
.start-assisted .start-number,.start-assisted>strong{color:var(--mm-blue)}
.start-assisted.start-photo .start-number,.start-assisted.start-photo>strong{color:var(--mm-red)}
.start-assisted:hover{border-color:var(--mm-blue);box-shadow:0 14px 35px rgba(23,92,211,.12)}
.start-assisted.start-photo:hover{border-color:var(--mm-red)}

.thinking-manifesto{border-color:rgba(255,255,255,.16);background:var(--mm-navy)}
.thinking-manifesto .kicker{color:#8fdcff!important}
.thinking-manifesto h2,.thinking-steps strong{color:#fff}
.thinking-manifesto header p,.thinking-steps p{color:#c6d7eb}
.thinking-steps{border-color:rgba(255,255,255,.18)}
.thinking-steps li{border-color:rgba(255,255,255,.14);background:#0a2852}
.thinking-steps li:nth-child(3n+1) span{color:#7bb5ff}
.thinking-steps li:nth-child(3n+2) span{color:#ff8177}
.thinking-steps li:nth-child(3n) span{color:#6edff0}
.manifesto-close{color:#e7f2ff}

.math-landing .portal-main{background:var(--mm-paper)!important;color:var(--mm-ink)!important}
.offer-overview,.math-landing .section-intro,.math-landing .path-grid,.math-landing .coverage-strip{border-color:var(--mm-line)!important}
.offer-overview h2,.offer-grid strong,.math-landing .section-intro h2,.math-landing .coverage-strip h2,.method-flow strong{color:var(--mm-ink)!important}
.offer-grid{border-color:var(--mm-line);background:var(--mm-line)}
.offer-grid article,.method-support article,.inventory-grid span,.math-landing .path-card{
  border-color:var(--mm-line)!important;background:#fff!important;color:var(--mm-ink)!important;
}
.offer-grid article:nth-child(n){box-shadow:none}
.offer-grid article>span,.math-landing .path-card .num,.method-flow li>span{color:var(--mm-blue)!important}
.offer-grid p,.math-landing .path-card p,.method-flow p,.method-support span,.inventory-grid span,.inventory-note,.method-tools p{color:var(--mm-muted)!important}
.method-support,.inventory-grid{border-color:var(--mm-line);background:var(--mm-line)}
.method-support strong{color:var(--mm-ink)!important}
.inventory-grid strong{color:var(--mm-ink)}
.method-tools{border-color:var(--mm-line)}
.method-tools strong{color:var(--mm-red)}
.math-landing .program-feature{
  border:1px solid var(--mm-line)!important;border-radius:18px!important;
  background:linear-gradient(135deg,#fff,#f7fafc)!important;color:var(--mm-ink)!important;
  box-shadow:var(--mm-shadow)!important;
}
.math-landing .program-feature:nth-of-type(even){border-color:var(--mm-line)!important;background:linear-gradient(135deg,#fff,#f7fafc)!important}
.math-landing .program-feature:hover{background:#fff!important;border-color:var(--mm-blue)!important}
.math-landing .program-feature h2{color:var(--mm-ink)!important}
.math-landing .program-feature p{color:var(--mm-muted)!important}
.math-landing .program-go{border-top-color:var(--mm-line)!important;color:var(--mm-blue)!important}
.math-landing .site-footer{border-top-color:rgba(255,255,255,.16)!important;background:var(--mm-navy)!important;color:#c6d7eb!important}
.math-landing .site-footer a:hover{color:#8fdcff!important}

/* Portada serena: papel, tinta y una firma cromática breve. */
.math-landing .global-products{
  border-bottom-color:#d7e0e9!important;
  background:rgba(255,255,255,.97)!important;
  color:var(--mm-ink)!important;
  box-shadow:none!important;
}
.math-landing .global-products::before{color:#647084!important}
.math-landing .global-products a{color:#44546a!important}
.math-landing .global-products a::before{background:#a65a5f!important;box-shadow:none!important}
.math-landing .global-products a:hover,.math-landing .global-products a:focus-visible{color:#214e78!important;border-color:#bdcad7!important;background:#edf3f8!important}
.math-landing .global-products a[aria-current]{color:#214e78!important;background:#edf3f8!important;border-color:#bdcad7!important;box-shadow:inset 0 -2px 0 #a65a5f!important}
.math-landing .global-products a[aria-current]::before{background:#315f84!important}
.math-landing .topbar{border-bottom-color:#d7e0e9!important;background:rgba(255,255,255,.97)!important;color:var(--mm-ink)!important}
.math-landing .topbar .brand,.math-landing .topbar .home-link{color:var(--mm-ink)!important}
.math-landing .topbar .brand span{color:#832e35!important}
.math-landing .topbar .portal-nav a{color:#44546a!important}
.math-landing .topbar .portal-nav a:hover,.math-landing .topbar .portal-nav a[aria-current=page]{color:#214e78!important;border-bottom-color:#a65a5f!important;background:#edf3f8!important}
.math-landing .topbar .home-link{border-bottom-color:#a65a5f!important}
.math-landing .portal-hero{
  border-bottom-color:#d7e0e9!important;
  background:
    radial-gradient(circle at 88% 16%,rgba(47,111,166,.09) 0 10%,transparent 10.4%),
    radial-gradient(circle at 75% 78%,rgba(192,74,80,.045) 0 15%,transparent 15.4%),
    linear-gradient(145deg,#fff 0%,#edf3f8 100%)!important;
}
.math-landing .portal-hero::before{right:auto!important;left:clamp(22px,3vw,42px)!important;width:76px!important;height:2px!important;border-radius:999px;background:linear-gradient(90deg,#315f84 0 68%,transparent 68% 77%,#a65a5f 77% 100%)!important}
.math-landing .portal-hero::before{content:none!important}
.math-landing .portal-hero::after{border-color:rgba(47,111,166,.14)!important}
.math-landing .portal-hero h1{color:var(--mm-ink)!important}
.math-landing .portal-hero .portal-strap{max-width:880px;color:#44546a!important}
.math-landing .portal-hero .portal-strap span{display:block;margin-top:15px;color:#667578;font:650 13px/1.45 var(--sans);letter-spacing:.02em}
.math-landing .hero-primary>.kicker{color:#832e35!important}
.math-landing .math-atmosphere span{color:#315f84!important;opacity:.06!important;text-shadow:none!important}
.math-landing .math-atmosphere span:nth-child(3n+2){color:#a65a5f!important;text-shadow:none!important}
.math-landing .math-atmosphere span:nth-child(3n){color:#647084!important;text-shadow:none!important}
.math-landing .start-orientation{border-color:#bdcad7;background:rgba(255,255,255,.94);box-shadow:0 24px 65px rgba(20,34,56,.1)}
.math-landing .start-orientation-head>.kicker,.math-landing .start-number{color:#832e35!important}
.math-landing .start-orientation .path-card{border-color:#d7e0e9!important;background:#fff!important}
.math-landing .start-orientation .path-card:nth-child(n){border-top:1px solid #d7e0e9!important}
.math-landing .start-orientation .path-card:hover{border-color:#2f6fa6!important;background:#edf3f8!important}
.math-landing .start-orientation .path-card .num,.math-landing .start-orientation .path-card .go{color:#214e78!important}
.math-landing .start-orientation .path-card h3{font-size:clamp(25px,2vw,31px)!important;line-height:1.04!important}
.math-landing .start-assisted{border-color:#bdcad7;background:#edf3f8}
.math-landing .start-assisted.start-photo{border-color:#e4c9cb;background:#f8e9ea}

.portal-lab-demo{border-color:rgba(255,255,255,.16);background:linear-gradient(135deg,var(--mm-navy),var(--mm-navy-2));color:#fff}
.portal-lab-demo .kicker{color:#173f78!important}
.portal-lab-demo header p,.demo-reading{color:#c6d7eb}
.demo-lab{border-color:rgba(34,184,207,.44);background:#0a2852}
.demo-control label,.demo-results strong,.demo-lab>a{color:#8fdcff}
.demo-control input{accent-color:var(--mm-blue)}
.demo-data span,.demo-results article{border-color:rgba(255,255,255,.18);background:#071f43}
.demo-data span:last-child{border-color:#ff8177;color:#ff8177}
.demo-results span,.demo-results small{color:#b9cae0}

/* Superficies comunes de practica: claras, legibles y con estados de color utiles. */
.section-heading{background:linear-gradient(135deg,#fff,var(--mm-blue-soft));border-bottom:1px solid var(--mm-line)}
.section-heading h1,.section-heading p{color:var(--mm-ink)!important}
.sidepanel,.practice,.rightpanel,.placement-card,.launch-card,.roadmap-item,.olympic-menu,.olympic-stage,.source-band,.modal,.teacher-panel,.domain-lab,.result-receiver{
  border-color:var(--mm-line)!important;background:#fff!important;color:var(--mm-ink)!important;
}
.choice,.answer-input,.equation-tools button,.mark-tools button,.subportal-math-pad button,.step-entry input,.polya-grid label,.polya-grid textarea,.problem-help summary,.teacher-panel textarea,.teacher-panel input,.teacher-panel select,.teacher-actions button,.teacher-panel details button,.proof-box{
  border-color:#b8c9dc!important;background:#fff!important;color:var(--mm-ink)!important;
}
.choice:hover,.choice.selected,.task-option.selected{border-color:var(--mm-blue)!important;background:var(--mm-blue-soft)!important}
.year-btn.active,.mark-tools button.active,.league-btn.active{border-color:var(--mm-blue)!important;background:var(--mm-blue)!important;color:#fff!important}
.active-statement,.geometry-readout span,.geometry-readout strong,.source-band nav a,.tool-tag{border-color:var(--mm-line)!important;background:var(--mm-paper-2)!important;color:var(--mm-ink)!important}
.visual-wrap,.geometry-board,.quadratic-board,.data-simulation{background:#fff!important;color:var(--mm-ink)!important}
.feedback.ok,.task-feedback.ok{background:var(--mm-ok-soft)!important;color:#145b37!important}
.feedback.error,.feedback.bad,.task-feedback.try{background:var(--mm-red-soft)!important;color:#8f1d1d!important}
.feedback.explain,.concept-explanation,.task-feedback.explain{border-color:#a9c5e4!important;background:var(--mm-blue-soft)!important;color:var(--mm-ink)!important}
.feedback.explain p b,.concept-explanation p b,.task-feedback.explain p b,.olympic-explanation strong{color:var(--mm-blue)!important}
.placement-feedback{color:var(--mm-red)}
.stat,.olympic-solution{border-color:var(--mm-line)!important;background:#fff!important;color:var(--mm-ink)!important}
.olympic-solution p{color:var(--mm-muted)!important}
.olympic-explanation{border-color:#a9c5e4!important;background:var(--mm-blue-soft)!important;color:var(--mm-ink)!important}
.teacher-toggle{border-color:var(--mm-blue)!important;background:#fff!important;color:var(--mm-blue)!important}
.section-offer{border-color:var(--mm-line);background:var(--mm-line)}
.section-offer span{background:#fff;color:var(--mm-muted)}
.section-offer strong{color:var(--mm-ink)}
.teacher-tools-entry{border-color:#8eb5e5!important;background:var(--mm-blue-soft)!important;color:var(--mm-blue)!important}
.teacher-tools-entry:hover{border-color:var(--mm-blue)!important;background:#dceaff!important}
.teacher-tools-entry:focus-visible{outline-color:var(--mm-blue)!important}
.site-footer{border-color:var(--mm-line);background:var(--mm-navy);color:#c6d7eb}
.site-footer a:hover{color:#8fdcff}

/* Programa completo. */
.program-hero{background:linear-gradient(135deg,#fff,var(--mm-blue-soft));border-bottom:1px solid var(--mm-line)}
.program-hero h1,.program-promise strong{color:var(--mm-ink)}
.program-hero p,.program-promise span,.program-access-state{color:var(--mm-muted)!important}
.program-promise{border-left-color:var(--mm-red)}
.program-today{border:1px solid rgba(255,255,255,.18);background:linear-gradient(125deg,var(--mm-navy),var(--mm-navy-2));color:#fff}
.program-today h2,.program-today strong{color:#fff}
.program-today p,.program-today .today-reason{color:#c6d7eb!important}
.program-today .secondary{border-color:#8fdcff!important;background:transparent!important;color:#fff!important}
.program-year{border-color:var(--mm-line);background:#fff;color:var(--mm-muted)}
.program-year.active,.stage-tab.active{border-color:var(--mm-blue)!important;background:var(--mm-blue)!important;color:#fff!important}
.stage-tab.active span{color:#fff!important}
.support-select{border-color:var(--mm-line);background:#fff;color:var(--mm-ink)}
.program-storage-notice{border-color:#8eb5e5;background:var(--mm-blue-soft);color:var(--mm-ink)}
.unit-map,.learning-compass,.lesson-stage{border-color:var(--mm-line);background:#fff}
.unit-button.active,.unit-button.recommended,.unit-button.recomendado,.unit-button.next,.unit-button[data-status="recommended"],.unit-button[data-status="recomendado"]{background:var(--mm-blue-soft)!important;box-shadow:inset 3px 0 0 var(--mm-blue)!important;color:var(--mm-ink)!important}
.unit-status{border-color:#9fb3ca}.unit-button.done .unit-status{background:var(--mm-ok);border-color:var(--mm-ok);color:#fff}
.concept-panel,.stage-tab{border-color:var(--mm-line);background:var(--mm-paper)}
.worked-example{border-left-color:var(--mm-red);background:var(--mm-red-soft)}
.manipulative{border-color:#a8c3df;background:var(--mm-blue-soft)}
.model-output,.task-option,.task-input{border-color:var(--mm-line);background:#fff;color:var(--mm-ink)}
.task-grade{border-color:#efaaa4;color:var(--mm-red)}
.guided-support{border-left-color:var(--mm-blue);background:var(--mm-blue-soft);color:var(--mm-muted)}
.guided-support strong{color:var(--mm-blue-2)}
.compass-stat div{background:var(--mm-paper-2)}
.compass-stat strong{color:var(--mm-ink)}
.compass-stat span{color:var(--mm-muted)}
.evaluation-review article,.diagnostic-route{border-color:var(--mm-line);background:#fff}
.gradation-distribution b,.branch-levels strong,.evaluation-review article strong{color:var(--mm-blue)!important}
.unit-group.suggested-group{border-color:#a9c5e4!important;background:var(--mm-blue-soft)!important}
.unit-group.suggested-group .unit-group-title{color:var(--mm-blue)!important}
.unit-group.suggested-group .unit-button:first-of-type{background:#fff!important;box-shadow:inset 3px 0 0 var(--mm-blue)!important;color:var(--mm-ink)!important}
.unit-button.review,.unit-button.revisar,.unit-button[data-status="review"],.unit-button[data-status="revisar"]{background:var(--mm-red-soft)!important}
.unit-button.review .unit-status,.unit-button.revisar .unit-status,.unit-button[data-status="review"] .unit-status,.unit-button[data-status="revisar"] .unit-status{border-color:var(--mm-red)!important;color:var(--mm-red)!important}
.status-pill.recommended,.status-pill.recomendado,.unit-state.recommended,.unit-state.recomendado{border-color:#8eb5e5!important;background:var(--mm-blue-soft)!important;color:var(--mm-blue)!important}
.status-pill.review,.status-pill.revisar,.unit-state.review,.unit-state.revisar{border-color:#efaaa4!important;background:var(--mm-red-soft)!important;color:var(--mm-red)!important}
.reason-review-rubric,.evaluation-rubric{border-color:#a9c5e4!important;background:var(--mm-blue-soft)!important}
.bar-part.alt{border-color:var(--mm-red)!important;background:var(--mm-red-soft)!important}
.today-card,.today-panel,.continue-card,.continue-panel,.next-step-card,.session-card,[data-ux="today"],[data-ux="continue"]{border-color:#a9c5e4!important;background:linear-gradient(135deg,var(--mm-blue-soft),#fff)!important}
.program-today+.portal-main .program-feature{border-color:var(--mm-line)!important;background:linear-gradient(145deg,#fff,#f7fafc)!important;color:var(--mm-ink)!important;box-shadow:var(--mm-shadow)!important}
.program-today+.portal-main .program-feature:nth-child(even){border-color:var(--mm-line)!important;background:linear-gradient(145deg,#fff,#f7fafc)!important}
.program-today+.portal-main .program-feature h2{color:var(--mm-ink)!important}
.program-today+.portal-main .program-feature p{color:var(--mm-muted)!important}
.program-today+.portal-main .program-go{color:var(--mm-blue)!important;border-top-color:var(--mm-line)!important}

/* Manual interactivo. */
.manual-hero{background:linear-gradient(135deg,#fff,var(--mm-blue-soft));border-color:var(--mm-line)}
.manual-hero h1,.manual-hero aside strong{color:var(--mm-ink)}
.manual-hero p,.manual-hero aside span{color:var(--mm-muted)}
.manual-hero aside{border-left-color:var(--mm-red)}
.manual-controls{border-color:var(--mm-line);background:rgba(245,248,252,.96)}
.manual-controls button{border-color:var(--mm-blue);background:var(--mm-blue);color:#fff}
.manual-controls .manual-explore,.micro-plan-toggle{color:var(--mm-blue)}
.manual-lesson,.manual-map,.manual-compass,.task-card,.worked-card,.prerequisite-card{border-color:var(--mm-line);background:#fff;color:var(--mm-ink)}
.manual-lab{border-color:var(--mm-line);background:linear-gradient(145deg,var(--mm-blue-soft),#fff)}
.manual-lab-controls button[aria-pressed=true]{border-color:var(--mm-blue);background:var(--mm-blue);color:#fff}
.manual-lab-result{border-left-color:var(--mm-red);background:var(--mm-red-soft)}
.lab-sentence [data-part].active{background:var(--mm-cyan-soft);color:var(--mm-ink)}
.prerequisite-warning{border-color:#efaaa4;background:var(--mm-red-soft)}
.solution-card{background:var(--mm-red-soft)!important;color:var(--mm-ink)!important}
.solution-card span{color:var(--mm-red)!important}
.help-ladder{background:var(--mm-blue-soft)!important}

/* Practica breve, juegos y orientacion: fondos tecnicos azules. */
.brief-practice-page{
  --bp-bg:var(--mm-navy);--bp-panel:#0a2852;--bp-panel-2:#10386d;
  --bp-line:rgba(255,255,255,.18);--bp-line-strong:rgba(255,129,119,.54);
  --bp-text:#f7fbff;--bp-muted:#c6d7eb;--bp-gold:#ff8177;--bp-gold-soft:rgba(217,45,32,.16);
  background:var(--mm-navy);color:#f7fbff;
}
.brief-practice-page :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline-color:#8fdcff!important}
.games-page{
  --game-gold:#ff8177;--game-panel:#0a2852;--game-line:rgba(255,255,255,.18);--game-muted:#c6d7eb;
  background:var(--mm-navy);color:#f7fbff;
}
.games-page main{background:radial-gradient(circle at 84% 2%,rgba(217,45,32,.22),transparent 24%),linear-gradient(135deg,var(--mm-navy),var(--mm-navy-2))}
.games-hero h1,.game-menu h2,.challenge-card h2,.game-finish h2{color:#f7fbff!important}
.games-hero>div>p,.challenge-story,.game-feedback{color:#d8e7f8!important}
.games-hero aside,.game-help.visible{border-color:rgba(34,184,207,.48);background:rgba(34,184,207,.09)}
.games-hero aside strong,.room-number,.back-games{color:#8fdcff}
.games-hero aside b,.game-help strong,.room-status{color:#8fdcff!important}
.room-card,.challenge-card{border-color:rgba(255,255,255,.18);background:#0a2852;color:#fff}
.room-card:hover,.room-card:focus-visible{border-color:#ff8177}
.game-option{border-color:rgba(255,255,255,.22);background:#10386d;color:#fff}
.game-option.selected{border-color:#8fdcff;background:rgba(34,184,207,.15);color:#fff}
.guide-page{
  --guide-bg:var(--mm-navy);--guide-surface:#0a2852;--guide-surface-2:#10386d;
  --guide-line:rgba(255,255,255,.18);--guide-gold:#ff8177;--guide-gold-2:#8fdcff;
  --guide-text:#f7fbff;--guide-muted:#c6d7eb;--guide-petrol:#22b8cf;
  background:var(--mm-navy);color:#f7fbff;
}
.guide-page .guide-hero{background:radial-gradient(42% 80% at 86% 18%,rgba(217,45,32,.2),transparent 72%),radial-gradient(36% 60% at 8% 96%,rgba(34,184,207,.16),transparent 75%),linear-gradient(135deg,var(--mm-navy),var(--mm-navy-2))!important}
.guide-page .guide-hero::before{color:rgba(34,184,207,.1)}

/* Razonamiento, proyectos y trayectoria. */
.reasoning-page{
  --reasoning-bg:var(--mm-navy);--reasoning-panel:#0a2852;--reasoning-line:rgba(255,255,255,.18);--reasoning-gold:#ff8177;
  --ink:var(--mm-ink);--ink-soft:var(--mm-muted);--line:var(--mm-line);--petrol:var(--mm-blue);--gold:var(--mm-red);
  background:var(--mm-paper);color:var(--mm-ink);
}

.reasoning-hero{background:radial-gradient(circle at 88% 16%,rgba(217,45,32,.24),transparent 24%),linear-gradient(125deg,var(--mm-navy),var(--mm-navy-2))!important}
.reasoning-hero .kicker{color:#8fdcff!important}
.projects-page{
  --ink:var(--mm-ink);--ink-soft:var(--mm-muted);--paper:var(--mm-paper);--paper-2:var(--mm-paper-2);
  --surface:#fff;--line:var(--mm-line);--petrol:var(--mm-blue);--petrol-soft:var(--mm-blue-soft);
  --gold:var(--mm-red);--focus:var(--mm-blue);--shadow:var(--mm-shadow);
  background:var(--mm-paper);color:var(--mm-ink);
}
.projects-hero{background:linear-gradient(135deg,#fff,var(--mm-blue-soft));border-bottom:1px solid var(--mm-line)}
.projects-scale{border-left-color:var(--mm-red)}
.graduation-guide{border-color:#a9c5e4;background:linear-gradient(145deg,var(--mm-blue-soft),#fff)}
.projects-controls,.project-card,.project-stage{border-color:var(--mm-line);background:#fff}
.trajectory-page{
  --tr-bg:var(--mm-navy);--tr-surface:#0a2852;--tr-surface-2:#10386d;
  --tr-ink:#f7fbff;--tr-muted:#c6d7eb;--tr-gold:#ff8177;
  --tr-line:rgba(255,255,255,.2);--tr-covered:#69d69c;--tr-partial:#6edff0;--tr-pending:#aebed2;
  background:var(--mm-navy);color:#f7fbff;
}
.trajectory-hero::before{border-color:rgba(34,184,207,.28);box-shadow:0 0 0 80px rgba(34,184,207,.025),0 0 0 160px rgba(217,45,32,.018)}
.mastery{background:var(--mm-red);color:#fff}
.mastery .eyebrow,.mastery>header p,.mastery-cycle p,.mastery-rule span{color:#fff!important}

/* Calidad, fundamentos y modo sin conexion, que usan hojas autonomas. */
body>main>.hero,.foundation-page .hero{background:linear-gradient(135deg,#fff,var(--mm-blue-soft))}
body>main>.hero h1,body>main>.hero h2,.hero-copy h1{color:var(--mm-ink)}
.hero h1 em{color:var(--mm-red)!important}
.status-band .eyebrow,.records .eyebrow{color:#832e35!important}
.status-band .status-grid article[data-paid-only]>p,
.status-band .status-grid article:nth-child(3)>p,
.status-band .status-grid article:nth-child(4)>p{color:#c6d7eb!important}
.opening .section-label{color:#832e35!important}
.formula blockquote{color:#173f78!important}
.brief-practice-page .practice-contract dt{color:#44546a!important}
.brief-practice-page .practice-contract dd{color:#f7fbff!important}
body main .program-lab-directory summary>span{color:#fbebba!important}
body main .program-lab-directory summary>small{color:#c6d7eb!important}
.trajectory-page .immediate-route .eyebrow,.trajectory-page .sources .eyebrow{color:#832e35!important}
.trajectory-page .immediate-route .route-number{color:#214e78!important}
.trajectory-page .roadmap .stage-index{color:#832e35!important}
.state.internal{color:#ff8177!important}
.assurance-grid .limit{border-left-color:var(--mm-red)!important}
.metrics{background:var(--mm-paper-2)!important}
.roadmap article>span,.family-card a,.assurance-grid a{color:var(--mm-red)!important}
.status-band,.principles,.benchmarks,.family,.assurance,.metrics,.open-work,.records,.opening,.capabilities,.chapter,.international,.translation,.published,.learning,.argentina,.formula,.sources{
  border-color:var(--mm-line);
}
.hero-thesis{border-color:#a9c5e4;background:#fff}
body:has(>main>nav[aria-label="Opciones sin conexion"]),body:has(>main>nav[aria-label="Opciones sin conexión"]){background:var(--mm-navy);color:#fff}
body:has(>main>nav[aria-label="Opciones sin conexion"])>main,body:has(>main>nav[aria-label="Opciones sin conexión"])>main{border-color:rgba(255,255,255,.2);background:#0a2852;color:#fff}
body:has(>main>nav[aria-label="Opciones sin conexion"])>main>span,body:has(>main>nav[aria-label="Opciones sin conexión"])>main>span{color:#8fdcff}
body:has(>main>nav[aria-label="Opciones sin conexion"])>main>p,body:has(>main>nav[aria-label="Opciones sin conexión"])>main>p{color:#c6d7eb}
body>main>nav[aria-label="Opciones sin conexion"] a,body>main>nav[aria-label="Opciones sin conexión"] a{border-color:#8fdcff;color:#fff}
body>main>nav[aria-label="Opciones sin conexion"] a:first-child,body>main>nav[aria-label="Opciones sin conexión"] a:first-child{background:var(--mm-blue);color:#fff}

/* Senales matematicas que se encienden con el desplazamiento. Son decorativas. */
:is(.section-heading,.program-hero,.manual-hero,.practice-hero,.games-hero,.projects-hero,.reasoning-hero,.trajectory-hero,.guide-hero,body:not(.math-landing) main>.hero){
  position:relative;isolation:isolate;overflow:hidden;
}
:is(.section-heading,.program-hero,.manual-hero,.practice-hero,.games-hero,.projects-hero,.reasoning-hero,.trajectory-hero,.guide-hero,body:not(.math-landing) main>.hero)::after{
  content:"Σ   x²   π   f(x)   √n";
  position:absolute;z-index:0;right:clamp(-34px,2vw,24px);top:clamp(18px,5vw,72px);
  color:var(--mm-blue);opacity:.07;white-space:nowrap;pointer-events:none;
  font:500 clamp(46px,9vw,138px)/1 var(--display,Georgia,serif);letter-spacing:.08em;
  transform:translate3d(6%,18px,0);
}
:is(.section-heading,.program-hero,.manual-hero,.practice-hero,.games-hero,.projects-hero,.reasoning-hero,.trajectory-hero,.guide-hero,body:not(.math-landing) main>.hero)>*{position:relative;z-index:1}

@keyframes mm-signal-pulse{
  0%{opacity:.035;color:var(--mm-blue);transform:translate3d(8%,18px,0)}
  42%{opacity:.22;color:var(--mm-cyan);transform:translate3d(0,0,0)}
  72%{opacity:.17;color:var(--mm-red-2);transform:translate3d(-2%,0,0)}
  100%{opacity:.035;color:var(--mm-blue);transform:translate3d(-5%,-8px,0)}
}
@keyframes mm-symbol-pulse{
  0%,100%{opacity:.035;filter:none;transform:translate3d(0,8px,0)}
  48%{opacity:.42;filter:drop-shadow(0 0 12px currentColor);transform:translate3d(0,0,0)}
}

@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    :is(.section-heading,.program-hero,.manual-hero,.practice-hero,.games-hero,.projects-hero,.reasoning-hero,.trajectory-hero,.guide-hero,body:not(.math-landing) main>.hero)::after{
      animation:mm-signal-pulse linear both;
      animation-timeline:view(block);
      animation-range:entry 0% exit 100%;
    }
    .math-atmosphere span{
      animation:mm-symbol-pulse linear both;
      animation-timeline:view(block);
      animation-range:entry 0% exit 100%;
    }
  }
}

@media(max-width:760px){
  .global-products{background:rgba(255,255,255,.97)!important}
  .global-products .gp-full{display:none!important}
  .global-products .gp-short{display:inline!important}
  .math-landing .portal-hero{background:radial-gradient(circle at 94% 8%,rgba(192,74,80,.055) 0 8%,transparent 8.5%),linear-gradient(145deg,#fff,#edf3f8)!important}
  :is(.section-heading,.program-hero,.manual-hero,.practice-hero,.games-hero,.projects-hero,.reasoning-hero,.trajectory-hero,.guide-hero,body:not(.math-landing) main>.hero)::after{font-size:54px;right:-54px;top:28px;opacity:.055}
}

@media(max-width:760px){
  .math-landing .global-products{background:rgba(255,255,255,.97)!important}
  .math-landing .portal-hero{
    background:
      radial-gradient(circle at 91% 12%,rgba(47,111,166,.08) 0 9%,transparent 9.5%),
      radial-gradient(circle at 79% 76%,rgba(192,74,80,.04) 0 14%,transparent 14.5%),
      linear-gradient(145deg,#fff 0%,#edf3f8 100%)!important;
  }
}

@media(max-width:580px){
  .math-landing .start-orientation .path-grid{grid-template-columns:1fr!important}
  .math-landing .start-orientation .path-card{min-height:118px!important}
  .math-landing .start-orientation .path-card h3{font-size:23px!important;overflow-wrap:anywhere}
}

@media(prefers-reduced-motion:reduce){
  .math-atmosphere span,
  :is(.section-heading,.program-hero,.manual-hero,.practice-hero,.games-hero,.projects-hero,.reasoning-hero,.trajectory-hero,.guide-hero,body:not(.math-landing) main>.hero)::after{
    animation:none!important;transition:none!important;filter:none!important;transform:none!important;opacity:.055!important;
  }
}

@media print{
  .global-products,.topbar,.math-atmosphere{display:none!important}
  html{color-scheme:light}
  body{background:#fff!important;color:#111!important}
  :is(.section-heading,.program-hero,.manual-hero,.practice-hero,.games-hero,.projects-hero,.reasoning-hero,.trajectory-hero,.guide-hero,body:not(.math-landing) main>.hero)::after{display:none!important}
}

/* Portada compacta 2026-08-13: inventario y cuatro puertas en la apertura. */
.math-landing .portal-hero{gap:18px!important;padding-top:32px!important;background:linear-gradient(145deg,#fff 0%,#edf3f8 100%)!important}
.math-landing .hero-primary{max-width:1404px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 28px;align-items:end}
.math-landing .hero-primary>.kicker{grid-column:1/-1}.math-landing .hero-primary h1{margin:4px 0 0!important;font-size:clamp(48px,6.6vw,86px)!important}.math-landing .hero-primary .portal-strap{margin:0!important;font-size:clamp(23px,2.6vw,35px)!important}
.math-landing .portal-overview{width:100%;margin:0}.math-landing .portal-overview .kicker{color:#832e35!important}
.math-landing .start-orientation{padding:22px!important;border-color:#bdcad7!important;border-radius:18px!important;background:#fff!important;box-shadow:0 12px 36px rgba(20,34,56,.07)!important}
.math-landing .start-orientation-head{grid-template-columns:minmax(150px,.28fr) minmax(0,1fr);gap:5px 24px}.math-landing .start-orientation-head h2{font-size:clamp(30px,3.6vw,46px)!important}.math-landing .start-known{margin-top:15px;padding-top:14px}.math-landing .start-card-heading{display:none}.math-landing .start-orientation .path-card{min-height:132px!important;padding:15px!important}.math-landing .start-orientation .path-card h3{font-size:clamp(21px,1.8vw,27px)!important}.math-landing .start-orientation .path-card p{font-size:11px!important}.math-landing .start-orientation .path-card .go{margin-top:9px!important}.math-landing .assisted-entry{background:#fff}.math-landing .hero-support{display:none}
@media(max-width:760px){.math-landing .hero-primary{grid-template-columns:1fr}.math-landing .hero-primary h1{font-size:clamp(42px,13vw,66px)!important}.math-landing .hero-primary .portal-strap{font-size:22px!important}.math-landing .portal-overview{width:100%}.math-landing .start-orientation-head{grid-template-columns:1fr}.math-landing .start-orientation .path-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.math-landing .start-orientation .path-card{min-height:112px!important;padding:11px!important}.math-landing .start-orientation .path-card h3{font-size:20px!important}.math-landing .start-orientation .path-card p{display:none}.math-landing .start-orientation .path-card .go{font-size:10px!important}.math-landing .assisted-entry{width:100%}}

/* Paleta de referencia 2026-08-13: azul marino adulto, blanco y rojo profundo. */
.global-products,.math-landing .global-products{border-bottom-color:var(--mm-line)!important;background:rgba(255,255,255,.97)!important;color:var(--mm-ink)!important;box-shadow:none!important}
.global-products::before,.math-landing .global-products::before{color:#647084!important}
.global-products a,.math-landing .global-products a{color:var(--mm-muted)!important}
.global-products a::before,.math-landing .global-products a::before{background:var(--mm-red)!important;box-shadow:none!important}
.global-products a:hover,.global-products a:focus-visible,.math-landing .global-products a:hover,.math-landing .global-products a:focus-visible{color:var(--mm-blue-2)!important;border-color:#bdcad7!important;background:var(--mm-paper-2)!important}
.global-products a[aria-current],.math-landing .global-products a[aria-current]{color:#fff!important;background:var(--mm-navy-2)!important;border-color:var(--mm-navy-2)!important;box-shadow:none!important}
.global-products .gp-services>summary{border-color:#bdcad7!important;background:var(--mm-paper-2)!important;color:var(--mm-blue-2)!important}
.global-products .gp-services-panel a{color:var(--mm-ink)!important;background:#fff!important}
.global-products .gp-services-panel a:hover,.global-products .gp-services-panel a:focus-visible{color:var(--mm-blue-2)!important;background:var(--mm-paper-2)!important}
.topbar,.math-landing .topbar{border-bottom-color:var(--mm-line)!important;background:rgba(255,255,255,.97)!important;color:var(--mm-ink)!important}
.topbar .brand,.topbar .home-link,.math-landing .topbar .brand,.math-landing .topbar .home-link{color:var(--mm-ink)!important}
.topbar .brand span,.math-landing .topbar .brand span{color:var(--mm-red-2)!important}
.topbar .portal-nav a,.math-landing .topbar .portal-nav a{color:var(--mm-muted)!important}
.topbar .portal-nav a:hover,.topbar .portal-nav a[aria-current=page],.math-landing .topbar .portal-nav a:hover,.math-landing .topbar .portal-nav a[aria-current=page]{color:var(--mm-blue-2)!important;border-bottom-color:var(--mm-red)!important;background:var(--mm-paper-2)!important}
.math-landing .portal-hero{border-bottom-color:var(--mm-line)!important;background:#fff!important}
.math-landing .portal-hero h1{color:var(--mm-ink)!important}
.math-landing .portal-hero .portal-strap{color:var(--mm-muted)!important}
.math-landing .hero-primary>.kicker,.math-landing .start-orientation-head>.kicker,.math-landing .start-number{color:var(--mm-red-2)!important}
.math-landing .math-atmosphere span{color:var(--mm-blue)!important}.math-landing .math-atmosphere span:nth-child(3n+2){color:var(--mm-red)!important}.math-landing .math-atmosphere span:nth-child(3n){color:#647084!important}
.math-landing .math-atmosphere span:nth-child(10){color:#173f78!important;opacity:.65!important}
.math-landing .start-orientation{border-color:#bdcad7!important;background:rgba(255,255,255,.96)!important;box-shadow:0 20px 55px rgba(18,23,39,.09)!important}
.math-landing .start-orientation .path-card:hover{border-color:var(--mm-blue)!important;background:var(--mm-blue-soft)!important}
.math-landing .start-orientation .path-card .num,.math-landing .start-orientation .path-card .go{color:var(--mm-blue-2)!important}

/* Contraste del panel de práctica breve */
.brief-practice-page{
  --bp-ink:#f7f7f6;
  --bp-ink-soft:#c9d6e4;
  color:var(--bp-ink);
}
.brief-practice-page h1,
.brief-practice-page h2,
.brief-practice-page h3,
.brief-practice-page h4,
.brief-practice-page p,
.brief-practice-page li,
.brief-practice-page label,
.brief-practice-page legend,
.brief-practice-page summary,
.brief-practice-page dt,
.brief-practice-page dd,
.brief-practice-page th,
.brief-practice-page td,
.brief-practice-page a{
  color:var(--bp-ink);
}
.brief-practice-page small,
.brief-practice-page figcaption,
.brief-practice-page .muted{
  color:var(--bp-ink-soft);
}
.brief-practice-page input,
.brief-practice-page textarea,
.brief-practice-page select{
  background:var(--bp-panel);
  color:var(--bp-ink);
  border:1px solid rgba(255,255,255,.28);
}
.brief-practice-page input::placeholder,
.brief-practice-page textarea::placeholder{
  color:var(--bp-ink-soft);
  opacity:1;
}
