/* English · UNAH — chained course site. Palette: UNAH guidelines v1 (Paletas de colores). */
:root{
  --unah:#003772; --deep:#00264F; --gold:#F5A623; --bg:#F4F7FC; --card:#FFFFFF;
  --ink:#14213A; --muted:#4A5873; --line:#D6DFEC;
  --ura:#064A9B; --forum:#2F6FB5; --h5p:#0077B6; --task:#1A3E7A; --quiz:#4A5FC1;
  --ok:#0E7C5A; --warn:#B25E10; --err:#C8102E; --es:#0E7C5A;
  --radius:14px; --shadow:0 1px 2px rgba(0,38,79,.06),0 6px 18px rgba(0,38,79,.07);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0B1626; --card:#122238; --ink:#E8EEF8; --muted:#A9B7CC; --line:#24384F;
    --unah:#7FB2F0; --deep:#0A1A2E; --ura:#7FB2F0; --forum:#8DB8EA; --h5p:#6CC3EE; --task:#A9BEEA; --quiz:#A9B4F2;
    --ok:#55C49A; --warn:#F0A55A; --es:#55C49A;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 "Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2,h3{font-family:"Bricolage Grotesque",system-ui,sans-serif;line-height:1.2;margin:0 0 .4em}
h1{font-size:clamp(1.6rem,4.2vw,2.4rem)} h2{font-size:clamp(1.25rem,3vw,1.55rem)} h3{font-size:1.1rem}
a{color:var(--unah)} a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:6px}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:#fff;padding:8px;z-index:9}

/* Institutional header */
.inst{background:var(--deep);color:#fff;padding:18px 0 16px;border-bottom:4px solid var(--gold)}
.inst .u{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(1rem,2.6vw,1.3rem);letter-spacing:.01em}
.inst .f{opacity:.88;font-size:.92rem}
.inst a{color:#fff;text-decoration:none}
.crumbs{font-size:.88rem;margin-top:10px;display:flex;flex-wrap:wrap;gap:4px 8px;opacity:.95}
.crumbs a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.crumbs span[aria-hidden]{opacity:.6}

.hero{padding:28px 0 8px}
.hero .kicker{font:600 .8rem/1 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.hero p.lead{font-size:1.08rem;color:var(--muted);max-width:62ch}
main{padding-bottom:48px}
section{margin:28px 0}

/* Cards */
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;position:relative}
.card a.cover{position:absolute;inset:0;border-radius:var(--radius)}
.card:hover{border-color:var(--unah)}
.tag{display:inline-block;font:600 .74rem/1 "IBM Plex Mono",monospace;letter-spacing:.05em;text-transform:uppercase;padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--unah) 12%,transparent);color:var(--unah)}
.muted{color:var(--muted)}

/* Course cards on the root menu */
.course{padding:0;overflow:hidden;display:flex;flex-direction:column}
.course .band{height:118px;display:flex;align-items:flex-end;justify-content:space-between;padding:14px 18px;color:#fff;background:linear-gradient(135deg,var(--deep),var(--unah))}
.course .band b{font:800 3.2rem/1 "Bricolage Grotesque",sans-serif}
.course .band span{font:600 .8rem/1.3 "IBM Plex Mono",monospace;text-align:right;opacity:.92}
.course .stripe{height:6px;display:flex}.course .stripe i{flex:1}
.course .body{padding:16px 18px 18px}
.course h2{margin-bottom:.2em}
.course .go{font-weight:700;color:var(--unah)}

/* Units and lesson cards */
.unit{border-left:6px solid var(--unah);padding-left:14px;margin:30px 0 12px}
.unit h2{margin:0}.unit .pct{font-family:"IBM Plex Mono",monospace;color:var(--muted);font-size:.9rem}
.lesson-card h3{margin:.4em 0 .2em}
.lesson-card .can{font-size:.94rem;color:var(--muted);margin:0 0 10px}
.dots{display:flex;gap:6px;flex-wrap:wrap}
.dot{font:600 .72rem/1 "IBM Plex Mono",monospace;padding:5px 7px;border-radius:7px;color:#fff;position:relative;z-index:1;text-decoration:none}
.dot.done::after{content:"✓";margin-left:4px}

/* Type colours */
.t-ura{background:var(--ura)}.t-forum{background:var(--forum)}.t-h5p{background:var(--h5p)}.t-task{background:var(--task)}.t-quiz{background:var(--quiz)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .dot{color:#0B1626}}

/* Matrix view */
.matrix{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.matrix table{border-collapse:collapse;width:100%;min-width:680px;font-size:.9rem}
.matrix th,.matrix td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.matrix thead th{position:sticky;top:0;background:var(--card);font-family:"IBM Plex Mono",monospace;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em}
.matrix td a{text-decoration:none}

/* Pathway stepper */
.path{display:grid;grid-template-columns:repeat(var(--n,5),1fr);gap:8px;margin:18px 0 6px;counter-reset:s}
.path a{display:block;text-decoration:none;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 10px 9px;border-top:5px solid var(--c,var(--unah));min-height:74px}
.path a b{display:block;font-size:.86rem}.path a small{color:var(--muted);font-size:.76rem;line-height:1.3;display:block}
.path a[aria-current="step"]{outline:3px solid var(--gold);outline-offset:-1px}
.path a.done b::after{content:" ✓";color:var(--ok)}
@media (max-width:640px){.path{grid-template-columns:1fr 1fr}.path a{min-height:0}}

.step-head{display:flex;gap:14px;align-items:center;margin:18px 0 6px}
.step-icon{flex:0 0 52px;height:52px;border-radius:14px;display:grid;place-items:center;color:#fff;font:800 1.3rem/1 "Bricolage Grotesque",sans-serif}

/* Scaffold in / out */
.chain{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.chain .box{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px}
.chain .box .lbl{font:600 .74rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}
.chain .in{border-left:5px solid var(--muted)}.chain .out{border-left:5px solid var(--gold)}
@media (max-width:640px){.chain{grid-template-columns:1fr}}

.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin:16px 0;box-shadow:var(--shadow)}
.panel.model{border-left:5px solid var(--forum)}
.panel.rule{border-left:5px solid var(--ura)}
.panel.integrity{border-left:5px solid var(--warn)}
.panel.es{border-left:5px solid var(--es)}
table.g{border-collapse:collapse;width:100%;font-size:.95rem;margin:10px 0}
table.g th,table.g td{border:1px solid var(--line);padding:7px 9px;text-align:left}
table.g th{background:color-mix(in srgb,var(--unah) 9%,transparent)}
ul.tight{margin:.3em 0;padding-left:1.2em}

.btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:10px;padding:11px 16px;font:700 .95rem/1 "Atkinson Hyperlegible",sans-serif;cursor:pointer;text-decoration:none;color:#fff;background:var(--unah)}
.btn.ghost{background:transparent;color:var(--unah);border:2px solid var(--unah)}
.btn.gold{background:var(--gold);color:#1b1300}
.btns{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.pending{font-size:.85rem;color:var(--warn)}

/* Practice (H5P mirror) */
.q{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px;margin:10px 0}
.q fieldset{border:0;margin:0;padding:0}.q legend{font-weight:700;margin-bottom:8px}
.q label{display:flex;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:9px;margin:6px 0;cursor:pointer}
.q label.right{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)}
.q label.wrong{border-color:var(--err);background:color-mix(in srgb,var(--err) 8%,transparent)}
.q .fb{margin-top:6px;font-size:.92rem}
.score{font-weight:700}

.checklist label{display:flex;gap:10px;align-items:flex-start;padding:6px 0}
.mark{display:flex;gap:10px;align-items:center;margin:18px 0;padding:14px;border-radius:12px;background:color-mix(in srgb,var(--gold) 16%,transparent)}
.mark input{width:22px;height:22px}

.nav-steps{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:28px;padding-top:16px;border-top:1px solid var(--line)}
.nav-steps a{max-width:48%}
@media (max-width:640px){.nav-steps a{max-width:100%}}

details.teacher{margin:24px 0;background:var(--card);border:1px dashed var(--line);border-radius:12px;padding:12px 14px}
details.teacher summary{cursor:pointer;font-weight:700;color:var(--muted)}

footer{border-top:1px solid var(--line);padding:22px 0 40px;color:var(--muted);font-size:.86rem}

/* Announcements */
.announce{margin:18px 0 0}
.ann{position:relative;overflow:hidden;background:linear-gradient(120deg,#00264F 0%,#003772 45%,#0875A6 100%);color:#fff;border-radius:16px;padding:16px 18px 16px 64px;margin:8px 0;box-shadow:0 8px 24px rgba(0,38,79,.22);border:0}
.ann::before{content:"";position:absolute;left:16px;top:16px;width:34px;height:34px;border-radius:50%;background:#F5A623 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300264F' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11v2a1 1 0 0 0 1 1h2l5 4V6L6 10H4a1 1 0 0 0-1 1z'/%3E%3Cpath d='M15 9a3 3 0 0 1 0 6M18 6a7 7 0 0 1 0 12'/%3E%3C/svg%3E") center/20px no-repeat}
.ann::after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;border:16px solid rgba(245,166,35,.28)}
.ann b{margin-right:6px;color:#FFD58A;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}
.ann .muted{color:#DCE8F7}.ann a{color:#FFD58A}
.ann.warn{background:linear-gradient(120deg,#F5A623,#FFC861);color:#1b1300}.ann.warn b{color:#7A3E00}.ann.warn .muted{color:#3B2A00}.ann.warn::before{background-color:#00264F;filter:invert(1) hue-rotate(180deg)}
/* Submit panel */
.act-name{font-size:1.12rem}
/* Carousel */
.carousel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin:18px 0}
.carousel .slides{display:flex;transition:transform .35s ease}
.carousel .slide{flex:0 0 100%;min-width:0;padding:22px 22px 8px;min-height:260px;border-top:6px solid var(--h5p)}
.carousel .slide h3{font-size:1.3rem;color:var(--h5p)}
.carousel .big{font-size:1.25rem;font-weight:700}
.car-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px 14px}
.car-nav>button{width:44px;height:44px;border-radius:50%;border:2px solid var(--h5p);background:var(--card);color:var(--h5p);font-size:1.5rem;cursor:pointer}
.car-nav>button:disabled{opacity:.35;cursor:default}
.car-dots{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.car-dots button{width:12px;height:12px;border-radius:50%;border:0;background:var(--line);cursor:pointer;padding:0}
.car-dots button[aria-current="true"]{background:var(--h5p);width:28px;border-radius:6px}
.say-list{list-style:none;padding:0}.say-list li{display:flex;gap:10px;align-items:center;padding:6px 0}
.say{flex:0 0 36px;height:36px;border-radius:50%;border:0;background:var(--h5p);color:#fff;cursor:pointer}
li.now{font-weight:700}
.h5p-box{min-height:120px}
@media (prefers-reduced-motion:reduce){.carousel .slides{transition:none}}

/* Detailed class */
.mission{border-left:5px solid var(--h5p)}.mission h2{margin-bottom:.3em}
.slide-top{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.slide-n{font:600 .76rem/1 "IBM Plex Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--h5p)}
.campus-tag{font:600 .72rem/1 "IBM Plex Mono",monospace;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--gold) 22%,transparent);color:var(--ink)}
.carousel .slide{min-height:340px}
.tl{width:100%;max-width:640px;height:auto;color:var(--ink);margin:6px 0}
details.es{margin:10px 0;border-left:4px solid var(--es);padding:6px 10px;border-radius:6px;background:color-mix(in srgb,var(--es) 7%,transparent)}
details.es summary{cursor:pointer;font-weight:700;color:var(--es)}
.more{margin-top:10px;padding:10px 12px;border:1px dashed var(--line);border-radius:10px}
.all-slides summary{cursor:pointer;font-weight:700}
.tips{margin-top:10px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--h5p) 8%,transparent);border:1px solid var(--line)}
blockquote.model-q{margin:8px 0;padding:10px 14px;border-left:4px solid var(--forum);background:color-mix(in srgb,var(--forum) 7%,transparent);border-radius:6px}
.how{border-left:5px solid var(--gold)}.how ol{padding-left:1.3em}
.tags-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
ol.steps{padding-left:1.3em}ol.steps li{margin:6px 0}
.product{border-left:5px solid var(--task)}
.matrix td,.matrix th[scope=row]{font-size:.88rem}
.cc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cc-grid .panel{margin:0}
@media (max-width:760px){.cc-grid{grid-template-columns:1fr}}
.panel.career{border-left:5px solid var(--task)}.panel.culture{border-left:5px solid var(--gold)}
.video-how{border-left:5px solid var(--quiz)}
.teach{border-left:5px solid var(--ura)}.teach h4{margin:.2em 0 .5em;font-size:1rem}
.teach-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:760px){.teach-grid{grid-template-columns:1fr}}
.teach-grid>div{min-width:0}
.tuts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
a.tut{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card);text-decoration:none;color:var(--ink);border-top:4px solid var(--task)}
a.tut:hover{border-color:var(--unah)}a.tut span{color:var(--muted);font-size:.85rem}
.big-steps li{margin:10px 0}
/* Icons */
.ic{width:1.05em;height:1.05em;vertical-align:-.16em;flex:0 0 auto}
.ic.big{width:26px;height:26px}
.step-icon{flex-direction:column;gap:0;font-size:.8rem}.step-icon span{font:700 .72rem/1 "IBM Plex Mono",monospace;margin-top:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.dot{display:inline-flex;align-items:center;gap:4px}
/* Home flow, motivation, cultural calendar, teachers */
ol.flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;counter-reset:f}
ol.flow li{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
ol.flow li span{color:var(--muted);font-size:.86rem}ol.flow .ic{color:var(--unah)}
@media(max-width:760px){ol.flow{grid-template-columns:1fr 1fr}}
.motiv{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:center;border-left:5px solid var(--gold)}
@media(max-width:760px){.motiv{grid-template-columns:1fr}}
ol.lvl{list-style:none;padding:0;display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
ol.lvl li{flex:1;min-width:90px;padding:10px;border-radius:10px;border:2px solid var(--line);display:flex;flex-direction:column}
ol.lvl li span{font-size:.82rem;color:var(--muted)}ol.lvl li.done{border-color:var(--ok)}ol.lvl li.now{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,transparent)}
ol.lvl.big li{min-width:180px}
.pac-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.pac-tabs button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:7px 12px;cursor:pointer;font:600 .85rem/1 "Atkinson Hyperlegible",sans-serif}
.pac-tabs button[aria-selected="true"]{background:var(--unah);color:#fff;border-color:var(--unah)}
.ev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.ev{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:12px;border:1px solid var(--line);border-top:5px solid var(--t);background:var(--card)}
.ev p{margin:2px 0;font-size:.9rem}.ev-type{font:600 .7rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.05em;color:var(--t)}
.tcard .ic{color:var(--unah)}.why .why-ic{color:var(--unah)}
.icon-legend{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;padding:0}
.sw{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--c);vertical-align:-1px}
.lesson-row th{background:color-mix(in srgb,var(--unah) 8%,transparent);text-align:left}
tr.note td{font-style:italic;color:var(--muted)}td.num,th.num{text-align:right;white-space:nowrap}
.matrix.wide table{min-width:1100px;font-size:.84rem}
.keydates{border-left:5px solid var(--unah)}
.md h3{margin-top:1em}
@media print{
  .inst nav,.announce,footer,.btns,.mark,.nav-steps,details.teacher,.pac-tabs,.skip{display:none!important}
  body{background:#fff;color:#000;font-size:11pt}.panel,.card{box-shadow:none;break-inside:avoid}
  .matrix{overflow:visible;border:0}.matrix table,.matrix.wide table{min-width:0;font-size:8.5pt}
  details{display:block}details>*{display:block}a{color:#000;text-decoration:none}
  .inst{background:#fff!important;color:#003772!important;border-bottom:3px solid #003772}.inst a,.inst .u,.inst .f{color:#003772!important}
  tr{break-inside:avoid}
}
/* Formación docente: presentation deck (reuses the carousel) */
.tcard.feat{border:2px solid var(--gold);background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 16%,var(--card)),var(--card))}
.deck{position:relative;scroll-margin-top:12px}
.deck .slide{display:grid;grid-template-columns:190px 1fr;padding:0;min-height:520px;border-top:0}
.deck .side{background:linear-gradient(165deg,var(--acc),#00264F 92%);color:#fff;padding:24px 18px;display:flex;flex-direction:column;gap:18px;align-items:flex-start;position:relative;overflow:hidden}
.deck .side::after{content:"";position:absolute;right:-60px;bottom:-60px;width:180px;height:180px;border-radius:50%;border:18px solid rgba(245,166,35,.35)}
.deck .num{font:800 2.6rem/1 "Bricolage Grotesque",sans-serif;letter-spacing:-.02em}.deck .num small{font-size:.9rem;opacity:.8;margin-left:4px}
.deck .hero-ic{width:64px;height:64px;color:#fff}
.deck .kick{font:600 .78rem/1.3 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em;color:#FFD58A}
.deck .body{padding:26px 30px 18px;min-width:0;display:flex;flex-direction:column}
.deck .body h2{font-size:clamp(1.35rem,3vw,2rem);color:var(--ink);margin-bottom:.5em}
.deck .body h2::after{content:"";display:block;width:64px;height:5px;border-radius:3px;background:var(--gold);margin-top:10px}
.deck .links{margin-top:auto;padding-top:14px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.deck .links .see{font:600 .74rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-right:4px}
.deck .links .btn{padding:9px 13px;font-size:.88rem}
.deck .slide.cover .side{background:linear-gradient(165deg,#003772,#00264F)}
.deck .slide.cover .body{background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--gold) 18%,transparent),transparent 55%)}
.deck .lead-s{font-size:1.12rem;max-width:60ch}
.deck .stats{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:14px 0}
.deck .stats li{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px 10px;text-align:center;display:flex;flex-direction:column}
.deck .stats b{font:800 1.9rem/1 "Bricolage Grotesque",sans-serif;color:var(--unah)}.deck .stats span{font-size:.82rem;color:var(--muted)}
.deck ul.can{list-style:none;padding:0}.deck ul.can li{padding:8px 0 8px 34px;position:relative;border-bottom:1px dashed var(--line)}
.deck ul.can li::before{content:"✓";position:absolute;left:0;top:7px;width:24px;height:24px;border-radius:50%;background:var(--ok);color:#fff;text-align:center;font-weight:700;line-height:24px;font-size:.85rem}
.deck .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.deck .two>*{min-width:0}
.deck .pane{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--bg)}
.deck .pane p{margin:.3em 0 0}
.deck .note{border-left:5px solid var(--gold);background:color-mix(in srgb,var(--gold) 12%,transparent);padding:8px 12px;border-radius:8px}
.deck .role{border-left:5px solid var(--acc);background:color-mix(in srgb,var(--acc) 9%,transparent);padding:8px 12px;border-radius:8px;margin-top:10px}
.deck .mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0}
.deck .mini-grid>div{border:1px solid var(--line);border-top:4px solid var(--acc);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:4px;background:var(--bg)}
.deck .mini-grid span{font-size:.88rem;color:var(--muted)}
.deck ol.crumb-map{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}
.deck ol.crumb-map li{background:var(--unah);color:#fff;padding:7px 12px;border-radius:999px;font-weight:700;font-size:.9rem}
.deck ol.crumb-map li+li::before{content:"→ ";opacity:.8}
.deck ul.formats{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;margin:8px 0}
.deck ul.formats .ic{color:var(--acc)}
.deck .faq details{border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin:6px 0;background:var(--bg)}
.deck .faq summary{cursor:pointer;font-weight:700}
.deck .checklist{border:2px solid var(--gold);border-radius:12px;padding:10px 14px;margin-top:8px}
.deck .checklist ul{margin:.3em 0;padding-left:1.2em}
.dg{width:100%;max-width:640px;height:auto;margin:6px 0 10px;display:block}
.dg text{font:15px "Atkinson Hyperlegible",sans-serif}.dg .b{font-weight:700}.dg .xs{font-size:12.5px}.dg .s{font-size:12px}
.dg .w{fill:#fff}.dg .k{fill:#1b1300}.dg .t,.dg .s{fill:var(--ink)}
.dg .box{fill:var(--bg);stroke:var(--line);stroke-width:2}.dg .ar,.dg .ln{fill:none;stroke:var(--muted);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.deck-bar{height:5px;background:var(--line)}.deck-progress{display:block;height:100%;width:0;background:var(--gold);transition:width .35s ease}
.deck .car-nav .deck-count{font:600 .8rem/1 "IBM Plex Mono",monospace;color:var(--muted);white-space:nowrap}
.deck .car-nav>button.fs{font-size:1.15rem}
.deck:fullscreen{background:var(--bg);display:flex;flex-direction:column;border-radius:0;margin:0;overflow:hidden}
.deck:fullscreen .slides{flex:1;min-height:0}.deck:fullscreen .slide{min-height:0;height:100%;overflow:auto;font-size:1.18rem}
.deck:fullscreen .side{padding:40px 28px}.deck:fullscreen .body{padding:40px 52px 24px}.deck:fullscreen .dg{max-width:820px}
@media(max-width:760px){
  .deck .slide{grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:0}
  .deck .side{flex-direction:row;align-items:center;padding:14px 16px;gap:12px}.deck .side::after{display:none}
  .deck .num{font-size:1.6rem}.deck .hero-ic{width:34px;height:34px}
  .deck .body{padding:18px 16px 14px}
  .deck .stats{grid-template-columns:repeat(3,1fr)}.deck .two,.deck .mini-grid,.deck ul.formats{grid-template-columns:1fr}
  .deck .car-dots{display:none}
}
@media print{
  .deck{border:0;box-shadow:none}.deck .slides{display:block;transform:none!important}.deck .slide{break-after:page;break-inside:avoid;min-height:0;border:1px solid #ccc;border-radius:10px;margin-bottom:8mm}
  .deck .car-nav,.deck-bar,.deck .links .see{display:none!important}.deck .side{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
/* ── English UNAH v4: class + period picker, period navigation, Cultural Corner, double grade, two passports ── */
.home-hero h1{font-size:clamp(1.8rem,5vw,2.8rem)}
.picker{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:20px;margin:18px 0}
.pick-step h2{display:flex;align-items:center;gap:10px;font-size:1.2rem;margin:4px 0 12px}
.pick-step .num{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--gold);color:#1b1300;font-weight:800;flex:0 0 auto}
.pick-step+.pick-step{margin-top:18px;padding-top:16px;border-top:1px dashed var(--line)}
.pick-row{display:grid;gap:12px}.pick-row.courses{grid-template-columns:repeat(3,1fr)}.pick-row.pacs{grid-template-columns:repeat(3,1fr)}
@media(max-width:760px){.pick-row.courses,.pick-row.pacs{grid-template-columns:1fr}}
button.pick{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;border:2px solid var(--line);border-radius:16px;background:var(--bg);overflow:hidden;min-height:64px;position:relative}
button.pick:hover{border-color:var(--unah)}button.pick:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
button.pick[aria-pressed="true"]{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 40%,transparent);background:var(--card)}
button.pick[aria-pressed="true"]::after{content:"✓";position:absolute;top:8px;right:10px;width:26px;height:26px;border-radius:50%;background:var(--gold);color:#1b1300;display:grid;place-items:center;font-weight:800}
.course-pick .band{display:flex;align-items:center;gap:12px;background:linear-gradient(120deg,#00264F,#003772);color:#fff;padding:12px 14px}
.course-pick .band b{font:800 2rem/1 "Bricolage Grotesque",sans-serif;color:#F5A623}.course-pick .band span{font-size:.8rem;line-height:1.3}
.course-pick .stripe{display:flex;height:6px}.course-pick .stripe i{flex:1}
.pk-body{display:flex;flex-direction:column;gap:4px;padding:12px 14px}.pk-t{font-size:1.05rem;color:var(--ink)}.pk-p{font-size:.88rem;color:var(--ink)}
button.pac-pick{padding:14px 16px;gap:2px}.pac-pick b{font:800 1.3rem/1.1 "Bricolage Grotesque",sans-serif;color:var(--unah)}.pac-pick span{color:var(--muted)}
.now-badge{font-style:normal;font:600 .7rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.05em;background:var(--ok);color:#fff;border-radius:999px;padding:4px 8px;align-self:flex-start;margin-top:6px}
.result{background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 14%,var(--card)),var(--card));border-radius:14px;padding:14px;border:1px solid var(--line)}
.res-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}@media(max-width:760px){.res-steps{grid-template-columns:1fr 1fr}}
a.res-step{display:flex;flex-direction:column;gap:2px;padding:10px;border-radius:12px;border:1px solid var(--line);border-top:5px solid var(--c);background:var(--card);color:var(--ink);text-decoration:none}
a.res-step span{font-size:.82rem;color:var(--muted)}a.res-step .ic{color:var(--c)}a.res-step:hover{border-color:var(--c)}
details.all-links{margin-top:14px}details.all-links summary{cursor:pointer;font-weight:700;color:var(--unah)}
.two-pass{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}@media(max-width:760px){.two-pass{grid-template-columns:1fr}}
.pass-card{border-radius:18px;padding:20px;color:#fff;position:relative;overflow:hidden}
.pass-card.cult{background:linear-gradient(140deg,#0E7C5A,#065a41)}.pass-card.ling{background:linear-gradient(140deg,#003772,#00264F)}
.pass-card .pk{font:600 .8rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em;color:#FFD58A;display:flex;align-items:center;gap:8px}
.pass-card h2{color:#fff;margin-top:10px}.pass-card p{color:#EEF4FB}.pass-card .ic.big{color:#FFD58A}
.pass-card .btn.ghost{color:#fff;border-color:#fff}
.pac-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.pac-nav>span{font-weight:700;color:var(--muted);font-size:.9rem}
.pac-nav a{display:flex;flex-direction:column;padding:7px 14px;border-radius:999px;border:2px solid var(--line);background:var(--card);color:var(--ink);text-decoration:none;font-weight:700;line-height:1.15}
.pac-nav a small{font-weight:400;font-size:.72rem;color:var(--muted)}
.pac-nav a[aria-current="page"]{background:var(--unah);border-color:var(--unah);color:#fff}.pac-nav a[aria-current="page"] small{color:#DCE8F7}
.tag.pac{background:var(--gold);color:#1b1300}
.pac-card{border-top:6px solid var(--gold)}.pac-card h2{margin:.3em 0}.pac-card .go{font-weight:700;color:var(--unah)}.pac-card.now{box-shadow:0 0 0 3px var(--gold)}
.ev-line{font-size:.88rem;color:var(--ok);font-weight:700;margin:.2em 0}
.culture-card{border-left:6px solid var(--ok);background:linear-gradient(135deg,color-mix(in srgb,var(--ok) 7%,var(--card)),var(--card))}
.culture-card h3{color:var(--ok)}.cc-head{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.culture-card .angle{background:color-mix(in srgb,var(--gold) 16%,transparent);border-radius:10px;padding:8px 12px}
.culture-card .model-c{font-size:1.05rem}.culture-card .mirror{border-left:4px solid var(--unah);padding:6px 12px;background:color-mix(in srgb,var(--unah) 6%,transparent);border-radius:8px;margin:10px 0}
.cc-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cc-grid2>div{min-width:0}@media(max-width:760px){.cc-grid2{grid-template-columns:1fr}}
.cc-ican{font-weight:600;border-top:1px dashed var(--line);padding-top:8px}
li.cult-can{color:var(--ok);font-weight:700}
.opt{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--bg)}.opt.b{border-left:5px solid var(--ok)}
.grade2{border-left:6px solid var(--quiz)}.g2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.g2>div{min-width:0}@media(max-width:760px){.g2{grid-template-columns:1fr}}
ul.lvl7{list-style:none;padding:0;margin:0;display:grid;gap:3px;font-size:.9rem}ul.lvl7 li{padding:3px 8px;border-radius:6px}
ul.lvl7 li.no{background:color-mix(in srgb,var(--err) 8%,transparent)}ul.lvl7 li.ok{background:color-mix(in srgb,var(--ok) 12%,transparent)}
.car-title{background:linear-gradient(120deg,#00264F,#003772 60%,#0077B6);color:#fff;padding:16px 20px 14px;border-bottom:4px solid #F5A623}
.car-title .k{font:600 .76rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em;color:#FFD58A}
.car-title h2{color:#fff;margin:6px 0 0;font-size:clamp(1.25rem,3.4vw,1.75rem)}
/* Arts Corner */
.arts{border-left:6px solid var(--af,#6A3FA0);background:linear-gradient(135deg,color-mix(in srgb,var(--af,#6A3FA0) 8%,var(--card)),var(--card))}
.arts-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin-bottom:6px}
.arts-badge{display:inline-flex;align-items:center;gap:6px;font:700 .78rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--af,#6A3FA0);border-radius:999px;padding:6px 10px}
.arts h3{margin:.2em 0 0}.arts-mission{background:color-mix(in srgb,var(--gold) 16%,transparent);border-radius:10px;padding:8px 12px}
.learn-tag{font:600 .66rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;background:var(--ok);color:#fff;border-radius:999px;padding:3px 6px;margin-left:4px;vertical-align:1px}
.arts-line{font-size:.85rem;font-weight:700;color:var(--ink);margin:.15em 0}.arts-line .ic{color:var(--af)}
ul.arts-forms{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px 18px}
.inst.slim{padding:8px 0 12px;border-bottom:0}
.inst.slim .crumbs{margin-top:0}
[hidden]{display:none!important}

/* ───── Site search (header + /search/) ───── */
.site-search{position:relative;display:flex;align-items:center;gap:8px;margin-top:12px;max-width:520px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:4px 6px 4px 12px}
.site-search .ic{width:18px;height:18px;flex:0 0 18px;color:#fff;opacity:.9}
.site-search input{flex:1;min-width:0;border:0;background:transparent;color:#fff;font:400 .95rem/1.4 "Atkinson Hyperlegible",sans-serif;padding:6px 4px}
.site-search input::placeholder{color:rgba(255,255,255,.78)}
.site-search input:focus{outline:none}.site-search:focus-within{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold)}
.ss-res{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px rgba(0,38,79,.22);max-height:min(70vh,480px);overflow:auto;padding:6px}
.ss-res a,.search-out a.hit{display:block;padding:9px 11px;border-radius:10px;text-decoration:none;color:var(--ink)}
.ss-res a:hover,.ss-res a[aria-selected="true"],.search-out a.hit:hover{background:color-mix(in srgb,var(--unah) 9%,transparent)}
.ss-res b,.search-out a.hit b{display:block;color:var(--unah);font-size:.95rem}.ss-res small,.search-out small{display:block;color:var(--muted);font:600 .7rem/1.3 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.04em}
.ss-res span,.search-out a.hit span{display:block;font-size:.86rem;color:var(--muted);line-height:1.4}
.ss-res mark,.search-out mark{background:color-mix(in srgb,var(--gold) 45%,transparent);color:inherit;border-radius:3px;padding:0 1px}
.ss-res .more{font-weight:700;color:var(--unah);text-align:center}
.ss-res .none{padding:10px;color:var(--muted)}
.site-search.big{background:var(--card);border:2px solid var(--unah);max-width:none;margin:8px 0 18px}
.site-search.big input{color:var(--ink);font-size:1.05rem}.site-search.big input::placeholder{color:var(--muted)}
.search-out .hit{border:1px solid var(--line);background:var(--card);margin:8px 0}
.foot-links{margin:0 0 8px}.foot-links a{color:var(--unah);font-weight:700}

/* ───── Language Passport ───── */
.tag.gold{background:color-mix(in srgb,var(--gold) 30%,transparent);color:#6b4400}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .tag.gold{color:var(--gold)}}
.pp-cover{position:relative;overflow:hidden;margin:26px 0 14px;padding:28px 26px 22px;border-radius:20px;color:#fff;
  background:radial-gradient(120% 140% at 100% 0%,#0B5AA8 0%,transparent 55%),linear-gradient(140deg,#00264F 0%,#003772 60%,#064A9B 100%);
  border:3px solid var(--gold);box-shadow:inset 0 0 0 6px #00264F,inset 0 0 0 7px rgba(245,166,35,.55),var(--shadow)}
.pp-cover::after{content:"";position:absolute;right:-40px;bottom:-60px;width:260px;height:260px;border-radius:50%;border:2px dashed rgba(245,166,35,.35)}
.pp-cover h1,.pp-cover h2{color:#fff;margin:.15em 0}.pp-cover h1{font-size:clamp(2rem,6vw,3.2rem);letter-spacing:-.01em}
.pp-k{font:600 .76rem/1.3 "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.pp-sub{opacity:.92;margin:0 0 14px}.pp-auth{font-size:.85rem;opacity:.9;margin:12px 0 0;position:relative;z-index:1}
.pp-cover.small{padding:22px}.pp-cover .btn.ghost.light,.pp-final .btn.ghost.light{color:#fff;border-color:#fff}
.stamps{display:flex;gap:14px;flex-wrap:wrap;position:relative;z-index:1}
.stamp{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;align-content:center;text-align:center;border:3px double rgba(245,166,35,.7);background:rgba(255,255,255,.06);transform:rotate(-8deg);transition:background .3s}
.stamp:nth-child(2){transform:rotate(5deg)}.stamp:nth-child(3){transform:rotate(-3deg)}
.stamp b{font:800 1.45rem/1 "Bricolage Grotesque",sans-serif}.stamp small{font-size:.68rem;opacity:.9}.stamp span{font:600 .72rem/1 "IBM Plex Mono",monospace;color:var(--gold)}
.stamp.full{background:var(--gold);color:#1b1300;border-color:#fff}.stamp.full span{color:#1b1300}
.pp-tools{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 12px;margin:0 -4px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.pp-tools .btn{padding:9px 12px;font-size:.88rem}.pp-tools .btn .ic{width:16px;height:16px}
.pp-tools .saved{font:600 .74rem/1 "IBM Plex Mono",monospace;color:var(--ok);margin-right:auto}
.btn.danger{color:var(--err);border-color:color-mix(in srgb,var(--err) 60%,transparent)}.btn.file{cursor:pointer}
.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.82rem;font-weight:700}
.pill.no,.seg.no input:checked+span{background:color-mix(in srgb,var(--muted) 22%,transparent);color:var(--ink)}
.pill.help,.seg.help input:checked+span{background:color-mix(in srgb,var(--gold) 55%,transparent);color:#3d2700}
.pill.own,.seg.own input:checked+span{background:var(--ok);color:#fff}
.pp-parts,.ltabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.pp-parts a,.ltabs a{text-decoration:none;font-weight:700;padding:8px 14px;border-radius:999px;border:2px solid var(--unah);color:var(--unah);background:var(--card)}
.pp-part{margin:34px 0;scroll-margin-top:70px}
.pp-ph{display:flex;align-items:baseline;gap:12px;border-bottom:3px solid var(--gold);padding-bottom:6px;margin-bottom:6px}
.pp-ph span{font:600 .78rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em;background:var(--deep);color:#fff;padding:6px 9px;border-radius:8px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pp-ph span{background:var(--unah);color:#0B1626}}
.pp-ph h2{margin:0}
.pp-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pp-form .wide{grid-column:1/-1}
.pp-form label,.pp-reflect label,.pp-enc label{display:flex;flex-direction:column;gap:4px;font-weight:700;font-size:.92rem}
.pp input,.pp textarea,.pp select{font:400 .95rem/1.4 "Atkinson Hyperlegible",sans-serif;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:8px 10px;width:100%}
.pp input:focus,.pp textarea:focus,.pp select:focus{outline:2px solid var(--gold);outline-offset:1px}
@media (max-width:640px){.pp-form{grid-template-columns:1fr}}
.matrix table.langs,.matrix table.dossier{min-width:620px}.matrix table.sum{min-width:420px}
table.sum td{position:relative;min-width:90px}table.sum td i{position:absolute;left:0;top:0;bottom:0;width:0;background:color-mix(in srgb,var(--ok) 22%,transparent);transition:width .3s}
table.sum td span{position:relative;font:600 .85rem/1 "IBM Plex Mono",monospace}
.pp-level{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;margin:16px 0;box-shadow:var(--shadow);scroll-margin-top:70px;border-top:6px solid var(--unah)}
.pp-level:nth-of-type(2){border-top-color:#0875A6}.pp-level:nth-of-type(3){border-top-color:#527FAD}
.pp-lhead{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:6px}
.pp-lhead .kick{font:600 .74rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.pp-lhead h3{font-size:1.5rem;margin:.2em 0}
.pp-bar{position:relative;flex:0 0 220px;height:26px;border-radius:999px;background:color-mix(in srgb,var(--muted) 16%,transparent);overflow:hidden}
.pp-bar i{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,var(--gold),var(--ok));transition:width .35s}
.pp-bar span{position:relative;display:block;text-align:center;font:600 .8rem/26px "IBM Plex Mono",monospace}
.pp-group h4{margin:18px 0 6px;font-size:1rem;color:var(--unah)}
.pp-item{display:grid;grid-template-columns:1fr minmax(260px,330px);gap:10px 18px;padding:12px 0;border-top:1px solid var(--line);scroll-margin-top:80px}
.pp-item:target{background:color-mix(in srgb,var(--gold) 14%,transparent);border-radius:10px;padding:12px 10px}
.pp-txt p{margin:2px 0 6px}.pp-id{font:600 .68rem/1 "IBM Plex Mono",monospace;color:var(--muted)}
.star{color:#B8860B;font-weight:700}
.chips{display:flex;gap:5px;flex-wrap:wrap}.lchip{font:600 .7rem/1 "IBM Plex Mono",monospace;padding:4px 7px;border-radius:6px;background:color-mix(in srgb,var(--unah) 11%,transparent);color:var(--unah);text-decoration:none}
.segs{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:10px;padding:3px;margin:0 0 8px;gap:3px}
.seg{position:relative;cursor:pointer}.seg input{position:absolute;opacity:0;inset:0}
.seg span{display:block;text-align:center;padding:7px 4px;border-radius:7px;font-size:.82rem;font-weight:700;color:var(--muted)}
.seg input:focus-visible+span{outline:3px solid var(--gold)}
.pp-item.lv-own{box-shadow:inset 4px 0 0 var(--ok)}.pp-item.lv-help{box-shadow:inset 4px 0 0 var(--gold)}
.pp-ev{display:block}.pp-ev input{font-size:.85rem!important;padding:6px 9px!important}
@media (max-width:720px){.pp-item{grid-template-columns:1fr}.pp-bar{flex:1 1 100%}.pp-tools{position:static}.pp-level,.pp-part{scroll-margin-top:12px}}
.pp-reflect{margin-top:18px;padding:14px;border-radius:12px;background:color-mix(in srgb,var(--unah) 6%,transparent);display:grid;gap:10px}
.pp-reflect h4{margin:0}.pp-enc{display:grid;gap:10px}
.ev-list li{word-break:break-all}.pp-src{font-size:.85rem;margin-top:24px}
.pp-final .pp-cover,.pp-home .pp-cover{margin:30px 0}
.pp-final .pp-bar,.pp-home .pp-bar{max-width:360px;margin:10px 0;background:rgba(255,255,255,.2)}
.pp-final .pp-bar span{color:#fff}

/* Booster and Language bridge panels */
.panel.booster{border-left:5px solid var(--gold)}.booster .rule-line{background:color-mix(in srgb,var(--gold) 14%,transparent);padding:10px 12px;border-radius:10px}
.bcheck{margin-top:12px}.bcheck h4{margin:6px 0}
.bq{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:8px 0}.bq legend{font-weight:700;padding:0 4px}
.bq label{display:flex;gap:8px;align-items:center;padding:7px 9px;border:1px solid var(--line);border-radius:9px;margin:5px 0;cursor:pointer}
.bq label.right{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)}.bq label.wrong{border-color:var(--err);background:color-mix(in srgb,var(--err) 8%,transparent)}
.bq .fb{margin:4px 0 0;font-size:.9rem}
.pp-link{margin-top:12px;padding:10px 12px;border-radius:10px;border:1px dashed var(--gold)}
.panel.pluri{border-left:5px solid #0E7C5A}.panel.pluri h3 .ic{vertical-align:-3px}
.pgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:10px 0}
.pcard{border:1px solid var(--line);border-radius:12px;padding:12px;background:color-mix(in srgb,#0E7C5A 5%,var(--card))}
.pcard .ph{display:flex;gap:10px;align-items:center;margin-bottom:6px}.pcard .ph .ic{width:26px;height:26px;color:#0E7C5A;flex:0 0 26px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pcard .ph .ic{color:var(--ok)}}
.pcard .ph b{display:block}.pcard .ph small{display:block;color:var(--muted);font-size:.76rem}.pcard p{margin:0;font-size:.93rem}
.rep{font-size:.9rem;margin:6px 0 0}
.pp-list{list-style:none;padding:0;margin:8px 0}.pp-list li{margin:6px 0}.pp-list a{text-decoration:none}
.pp-list .sk{font:600 .66rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.04em;padding:3px 6px;border-radius:6px;background:color-mix(in srgb,var(--gold) 28%,transparent);color:var(--ink);margin-right:6px}

@media print{
  .site-search,.pp-tools,.pp-parts,.ltabs,.foot-links,.how-pp details,.bcheck button{display:none!important}
  .pp-cover{-webkit-print-color-adjust:exact;print-color-adjust:exact;box-shadow:none;border-width:2px;padding:18px}
  .pp-cover::after{display:none}.stamp{transform:none!important;width:86px;height:86px}
  .pp-level{box-shadow:none;border:1px solid #999;border-top:4px solid #003772;padding:10px}.pp-level+.pp-level{break-before:page}
  .pp .panel,.pp-level{break-inside:auto}.pp-ph,.pp-group h4,.pp-lhead{break-after:avoid}.matrix thead th{position:static}
  .pp-part{break-before:auto}#part2,#part3{break-before:page}
  .pp-item{grid-template-columns:1fr 230px;break-inside:avoid;padding:6px 0;box-shadow:none!important}
  .segs{border:0;padding:0}.seg span{border:1px solid #999;padding:3px 2px;font-size:8pt;color:#000}
  .seg input:checked+span{-webkit-print-color-adjust:exact;print-color-adjust:exact;border:2px solid #000}
  .seg input:checked+span::before{content:"✔ "}
  .pp input,.pp textarea,.pp select{border:0;border-bottom:1px solid #999;border-radius:0;background:#fff;padding:2px 0;font-size:9pt}
  .pp-ev input::placeholder,.pp input::placeholder{color:transparent}
  .chips,.pp-id{font-size:7pt}
  .pp-bar{-webkit-print-color-adjust:exact;print-color-adjust:exact;border:1px solid #999}
  table.sum td i{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
/* Calificación por competencias */
table.scale td,table.scale th{color:#14213A}.panel.decision{border-left:5px solid var(--gold)}
table.catalog{font-size:.82rem}table.catalog td{min-width:90px}table.catalog td:nth-child(5){min-width:360px}
code.cc{font-size:.72rem;color:var(--muted)}.num{white-space:nowrap}.reach{margin-top:6px}
@media print{details.cat>*{display:block}table.catalog{font-size:7pt}.scale tr,.catalog tr{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
@media print{main:has(table.catalog) .panel{break-inside:auto}main:has(table.catalog) .matrix table{min-width:0}main:has(table.catalog) h2{break-after:avoid}}
@media print{main:has(table.catalog){max-width:none}}

/* completion call-out (Linguistic Passport) */
.pass-done{margin:12px 0;background:#FFF4D6;color:#1b1300;border:2px solid #F5A623;border-radius:14px;padding:10px 14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
@media print{.pass-done{display:none!important}}
