/* Kernel Init · Cursos · v7 */
@font-face{font-family:"Space Grotesk";src:url("fonts/space-grotesk.woff2") format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Inter";src:url("fonts/inter.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("fonts/jetbrains-mono.woff2") format("woff2");font-weight:100 800;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("fonts/instrument-serif.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("fonts/instrument-serif-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
:root{
 --bg:#F5F7F4;--surface:#FFFFFF;--surface-2:#EDF1EE;--line:#D5DDD9;--line-strong:#B4C1BB;
 --text:#0B1411;--muted:#4A5E57;--accent:#047857;--accent-strong:#065F46;--on-accent:#FFFFFF;--accent-tint:#E3F5EC;
 --amber:#A1470A;--amber-tint:#FDF3E7;--amber-line:#E9C9A6;
 --sem-v:#047857;--sem-a:#A1470A;--sem-r:#B91C1C;--focus:#047857;
 --shadow:0 1px 2px rgba(7,11,10,.05),0 14px 34px -20px rgba(7,11,10,.25);
 --f-display:"Space Grotesk",ui-sans-serif,system-ui,sans-serif;--f-body:"Inter",ui-sans-serif,system-ui,sans-serif;
 --f-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;--f-serif:"Instrument Serif",Georgia,serif;
 --t-xs:.75rem;--t-sm:.875rem;--t-base:1.0625rem;--t-md:1.25rem;--t-lg:1.5625rem;--t-xl:1.953rem;
 --t-2xl:clamp(1.953rem,1.5rem + 1.6vw,2.441rem);--t-3xl:clamp(2.35rem,1.5rem + 3.6vw,3.815rem);
 --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;
 --r-sm:6px;--r:10px;--r-lg:16px;--wrap:1160px;--measure:66ch;--ease:cubic-bezier(.2,.7,.2,1);
 color-scheme:light}
[data-theme="dark"]{--bg:#070B0A;--surface:#0D1412;--surface-2:#111A17;--line:#1F2D28;--line-strong:#364540;
 --text:#E6F1EC;--muted:#9AB2A9;--accent:#34D399;--accent-strong:#6EE7B7;--on-accent:#04110C;--accent-tint:#0D2A20;
 --amber:#F5B454;--amber-tint:#1E160B;--amber-line:#5A3F1A;
 --sem-v:#34D399;--sem-a:#F5B454;--sem-r:#F87171;--focus:#34D399;
 --shadow:0 0 0 1px rgba(230,241,236,.02),0 18px 40px -24px rgba(0,0,0,.8);color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:96px}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--t-base)/1.65 var(--f-body);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
h1,h2,h3,h4{font-family:var(--f-display);font-weight:600;letter-spacing:-.015em;line-height:1.2;margin:0;text-wrap:balance}
p{margin:0}p+p{margin-top:var(--s4)}
ul,ol{margin:0;padding:0}
a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}
strong{font-weight:600}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(20px,5vw,40px)}
.skip{position:absolute;left:12px;top:-100px;z-index:50;background:var(--text);color:var(--bg);padding:12px 16px;border-radius:var(--r-sm);font-weight:600}
.skip:focus{top:12px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ico{width:24px;height:24px;flex:none}
.ico-sm{width:18px;height:18px;flex:none}

/* header */
.hdr{border-bottom:1px solid var(--line);background:var(--bg)}
.hdr-in{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"brand seal theme" "nav nav nav";align-items:center;column-gap:var(--s3)}
.brand{grid-area:brand;display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;min-height:64px;min-width:0}
.brand svg{width:30px;height:30px;flex:none}
.brand-t{display:flex;flex-direction:column;line-height:1.1;min-width:0}
.brand-k{font:500 .6875rem/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.brand-n{font:600 1rem/1.25 var(--f-display);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.seal{grid-area:seal;display:inline-flex;align-items:center;gap:7px;font:500 .6875rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--amber);border:1px solid var(--amber-line);background:var(--amber-tint);border-radius:999px;padding:8px 11px 8px 10px;white-space:nowrap}
.seal::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.theme{grid-area:theme;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;transition:transform .2s var(--ease)}
.theme:hover{transform:translateY(-1px);border-color:var(--line-strong)}
.theme .i-sun{display:none}[data-theme="dark"] .theme .i-sun{display:block}[data-theme="dark"] .theme .i-moon{display:none}
.nav{grid-area:nav;border-top:1px solid var(--line);margin-inline:calc(-1 * clamp(20px,5vw,40px));padding-inline:clamp(20px,5vw,40px)}
.nav ul{list-style:none;display:flex;gap:4px}
.nav a{display:flex;align-items:center;min-height:48px;padding:0 10px;font:500 var(--t-sm)/1 var(--f-body);color:var(--muted);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.nav li:first-child a{padding-left:0}
.nav a:hover{color:var(--text)}
.nav a[aria-current="page"]{color:var(--text);border-bottom-color:var(--accent)}
@media (max-width:599px){.brand-n{display:none}.brand-k{font:600 .8125rem/1.25 var(--f-display);letter-spacing:0;text-transform:none;color:var(--text);max-width:8.5em}.seal{font:600 .75rem/1 var(--f-body);letter-spacing:0;text-transform:none;padding:8px 10px}}
@media (max-width:419px){.nav a{padding:0 7px}.nav .lg{display:none}.brand{gap:8px}.brand svg{width:28px;height:28px}}
@media (min-width:900px){
 .hdr{position:sticky;top:0;z-index:20}
 .hdr-in{grid-template-columns:auto 1fr auto auto;grid-template-areas:"brand nav seal theme";column-gap:var(--s5)}
 .brand{min-height:72px}
 .nav{border:0;margin:0;padding:0}
 .nav ul{gap:6px}
 .nav a{min-height:72px;padding:0 10px}
 .nav li:first-child a{padding-left:10px}
}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:var(--r);font:600 1rem/1 var(--f-display);letter-spacing:-.005em;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .2s var(--ease)}
.btn:hover{transform:translateY(-2px);text-decoration:none}
.btn:active{transform:translateY(0)}
.btn-p{background:var(--accent);color:var(--on-accent)}
.btn-p:hover{background:var(--accent-strong)}
.btn-s{background:var(--surface);color:var(--text);border-color:var(--line-strong)}
.btn-s:hover{border-color:var(--text)}
.btn .ico-sm{transition:transform .2s var(--ease)}
.btn:hover .ico-sm{transform:translateX(3px)}
.btns{display:flex;flex-wrap:wrap;gap:var(--s3)}

/* type helpers */
.eyebrow{font:500 var(--t-xs)/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lede{font-size:var(--t-md);line-height:1.55;color:var(--muted);max-width:58ch}
.small{font-size:var(--t-sm);line-height:1.55;color:var(--muted)}
.measure{max-width:var(--measure)}
.sec{padding-block:clamp(56px,9vw,104px)}
.sec-h{display:grid;gap:var(--s3);margin-bottom:clamp(32px,5vw,48px);max-width:60ch}
.sec-h h2{font-size:var(--t-2xl);letter-spacing:-.02em}
.alt{background:var(--surface);border-block:1px solid var(--line)}

/* hero */
.hero{padding-block:clamp(40px,8vw,96px) clamp(56px,9vw,104px);overflow:hidden}
.hero-g{display:grid;gap:clamp(40px,6vw,64px);align-items:center}
@media (min-width:960px){.hero-g{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}}
.hero h1{font-size:var(--t-3xl);line-height:1.04;letter-spacing:-.035em;font-weight:600;max-width:13ch;margin-top:var(--s4)}
.hero .lede{margin-top:var(--s5)}
.hero .btns{margin-top:var(--s6)}
.hero-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:var(--s5);font-size:var(--t-sm);color:var(--muted);list-style:none}
.hero-meta li{display:flex;align-items:center;gap:8px}
.hero-meta svg{color:var(--accent)}
/* composition */
.comp{position:relative;max-width:460px;width:100%;margin-inline:auto;padding:28px 20px 44px 8px}
.sheet{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px 22px 24px}
.sheet-b{position:absolute;inset:10px 0 30px 24px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);transform:rotate(3.2deg)}
.sheet-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px dashed var(--line-strong);margin-bottom:16px}
.sheet-top span{font:500 .6875rem/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.dots{display:flex;gap:5px}.dots i{width:7px;height:7px;border-radius:50%;background:var(--line-strong)}
.rows{list-style:none;display:grid;gap:12px}
.rows li{display:grid;grid-template-columns:86px 1fr;align-items:center;gap:12px}
.chip{font:500 .6875rem/1 var(--f-mono);letter-spacing:.04em;color:var(--text);background:var(--surface-2);border:1px solid var(--line);border-radius:6px;padding:7px 8px;text-align:center}
.bar{height:8px;border-radius:4px;background:var(--line)}
.bar.w1{width:78%}.bar.w2{width:94%}.bar.w3{width:64%}.bar.w4{width:84%}.bar.w5{width:56%}
.rows .vf{grid-template-columns:86px 1fr;margin-top:6px;padding-top:14px;border-top:1px dashed var(--line-strong)}
.vf .chip{color:var(--amber);border-color:var(--amber-line);background:var(--amber-tint)}
.vf .bar{background:var(--amber-line)}
.stamp{position:absolute;right:-6px;bottom:0;width:132px;height:132px;color:var(--amber);transform:rotate(-12deg)}
.stamp text{font:600 9.2px var(--f-mono);letter-spacing:0;fill:currentColor}
@media (max-width:420px){.stamp{width:108px;height:108px;right:-4px}}

/* journey */
.jr{display:grid;gap:var(--s4);padding:20px 22px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);margin-bottom:var(--s6)}
.jr-h{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;align-items:baseline}
.jr-h p:first-child{font:600 var(--t-sm)/1.3 var(--f-display)}
.jr-bar{list-style:none;display:grid;grid-template-columns:repeat(7,1fr) 28px;gap:6px;align-items:center}
.jr-bar li{height:10px;border-radius:5px;border:1px solid var(--line-strong);background:transparent}
.jr-bar .s0{background:var(--amber);border-color:var(--amber)}
.jr-bar .s1{background:repeating-linear-gradient(-45deg,var(--line-strong) 0 3px,transparent 3px 7px)}
.jr-bar .sc{height:14px;width:14px;justify-self:center;transform:rotate(45deg);border-radius:3px}
.jr-lg{list-style:none;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:var(--t-sm);color:var(--muted)}
.jr-lg li{display:flex;align-items:center;gap:8px}
.jr-lg i{width:18px;height:8px;border-radius:4px;border:1px solid var(--line-strong)}
.jr-lg .k0{background:var(--amber);border-color:var(--amber)}
.jr-lg .k1{background:repeating-linear-gradient(-45deg,var(--line-strong) 0 3px,transparent 3px 7px)}

/* level cards */
.cards{list-style:none;display:grid;gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.card{position:relative;display:flex;flex-direction:column;gap:var(--s3);padding:24px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);min-height:100%;transition:transform .25s var(--ease)}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.card-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--surface-2);color:var(--text);border:1px solid var(--line)}
.card .lvl{font:500 var(--t-xs)/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.card h3{font-size:var(--t-md);line-height:1.25}
.card .res{color:var(--muted);font-size:1rem;line-height:1.55}
.card .meta{margin-top:auto;padding-top:var(--s3);font-size:var(--t-xs);color:var(--muted);font-family:var(--f-mono);letter-spacing:.02em;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.pill{display:inline-flex;align-items:center;gap:6px;font:500 .75rem/1 var(--f-body);border-radius:999px;padding:6px 10px;white-space:nowrap;border:1px solid var(--line-strong);color:var(--muted)}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;border:1.5px solid currentColor}
.pill-rev{color:var(--amber);border-color:var(--amber-line);background:var(--amber-tint)}
.pill-rev::before{background:currentColor;border-color:currentColor}
.pill-bor{border-style:dashed;color:var(--text)}
.card-open{border-color:var(--line-strong);box-shadow:var(--shadow)}
.card-open .card-ic{background:var(--accent-tint);color:var(--accent);border-color:transparent}
.card-open:hover,.card-open:focus-within{transform:translateY(-4px)}
.card-open a.stretch{color:var(--text);text-decoration:none}
.card-open a.stretch::after{content:"";position:absolute;inset:0;border-radius:inherit}
.card-open a.stretch:focus-visible{outline:none}
.card-open:has(a.stretch:focus-visible){outline:3px solid var(--focus);outline-offset:3px}
.card-go{display:inline-flex;align-items:center;gap:8px;font:600 var(--t-sm)/1 var(--f-display);color:var(--accent)}
.card-go .ico-sm{transition:transform .2s var(--ease)}.card-open:hover .card-go .ico-sm{transform:translateX(4px)}
.card-soon{background:transparent;border-style:dashed;border-color:var(--line-strong)}
.card-soon .card-ic{background:transparent;color:var(--muted);border-style:dashed;border-color:var(--line-strong)}
.card-cons{border-color:var(--amber-line);background:var(--amber-tint)}
.card-cons .card-ic{color:var(--amber);background:transparent;border-color:var(--amber-line)}
.cards-more{margin-top:var(--s6);display:flex;flex-wrap:wrap;align-items:center;gap:var(--s4) var(--s5)}

/* inside nivel 0 overview list */
.steps{list-style:none;counter-reset:s;display:grid;gap:0;border-top:1px solid var(--line)}
.steps li{counter-increment:s;display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:var(--s4);padding:18px 0;border-bottom:1px solid var(--line)}
.steps li::before{content:counter(s,decimal-leading-zero);font:500 var(--t-sm)/1 var(--f-mono);color:var(--muted)}
.steps .t{font:500 var(--t-md)/1.3 var(--f-display)}
.steps .k{font:500 var(--t-xs)/1 var(--f-mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;text-align:right}
@media (max-width:600px){.steps li{grid-template-columns:40px 1fr}.steps .k{grid-column:2;text-align:left}.steps .t{font-size:1.0625rem}}
.split{display:grid;gap:var(--s7)}
@media (min-width:960px){.split{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s8)}}

/* notice line */
.av{display:flex;gap:10px;align-items:flex-start;font-size:var(--t-sm);line-height:1.5;color:var(--muted);padding:12px 14px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line)}
.av svg{margin-top:1px;color:var(--muted)}

/* footer · sobre */
.foot{border-top:1px solid var(--line);background:var(--surface);padding-block:clamp(48px,8vw,80px) 32px}
.about{display:grid;gap:var(--s6)}
@media (min-width:960px){.about{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--s8)}}
.about h2{font-size:var(--t-xl);letter-spacing:-.02em}
.about .key{font:400 var(--t-lg)/1.35 var(--f-serif);margin-top:var(--s4);max-width:30ch}
.about ul{list-style:none;display:grid;gap:0;border-top:1px solid var(--line)}
.about li{display:grid;grid-template-columns:24px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.55}
.about li svg{margin-top:2px;color:var(--muted)}
.foot-b{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:var(--s7);padding-top:var(--s5);border-top:1px solid var(--line);font-size:var(--t-sm);color:var(--muted)}
.foot-b nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:0 4px}
.foot-b nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;color:var(--muted)}
.foot-b nav li:first-child a{padding-left:0}

/* ---------- Nivel 0 ---------- */
.mhead{padding-block:clamp(36px,7vw,72px) clamp(32px,5vw,48px);border-bottom:1px solid var(--line)}
.crumb{list-style:none;display:flex;flex-wrap:wrap;gap:6px;font-size:var(--t-sm);color:var(--muted);margin-bottom:var(--s5)}
.crumb li+li::before{content:"/";margin-right:6px;color:var(--line-strong)}
.crumb li{display:flex;align-items:center}.crumb a{color:var(--muted);display:inline-flex;min-height:44px;align-items:center;margin-block:-10px}
.mhead h1{font-size:var(--t-3xl);letter-spacing:-.03em;line-height:1.05;max-width:18ch;margin-top:var(--s4)}
.mhead .lede{margin-top:var(--s4)}
.mmeta{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:var(--s5);font-size:var(--t-sm);color:var(--muted);align-items:center}
.mmeta li{display:flex;align-items:center;gap:8px}
.mhead .av{margin-top:var(--s5);max-width:var(--measure)}
.mlay{display:grid;gap:var(--s6);padding-block:clamp(32px,6vw,64px)}
@media (min-width:1040px){.mlay{grid-template-columns:240px minmax(0,1fr);gap:var(--s8)}}
.toc{display:none}
@media (min-width:1040px){.toc{display:block;position:sticky;top:104px;align-self:start}}
.toc p{margin-bottom:var(--s3)}
.toc ol{list-style:none;border-left:1px solid var(--line)}
.toc a{display:flex;align-items:center;min-height:44px;padding:4px 0 4px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:var(--t-sm);line-height:1.4;color:var(--muted);text-decoration:none}
.toc a:hover{color:var(--text)}
.toc a.on{color:var(--text);border-left-color:var(--accent);font-weight:500}
.mcol{min-width:0;max-width:760px;display:grid;gap:var(--s5)}
.scr{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,4vw,40px);min-width:0}
.scr-h{display:grid;gap:10px;margin-bottom:var(--s5)}
.scr-k{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:center}
.scr h2{font-size:var(--t-xl);letter-spacing:-.02em}
.scr h3{font-size:var(--t-md);margin:var(--s6) 0 var(--s3)}
.scr .body{max-width:var(--measure)}
.scr .body>p+p{margin-top:var(--s4)}
.scr .av{margin-top:var(--s6)}
.tag-mode{font:500 var(--t-xs)/1 var(--f-mono);letter-spacing:.04em;color:var(--muted);border:1px solid var(--line-strong);border-radius:6px;padding:6px 8px}
.ex{margin-top:var(--s5);padding:16px 18px;border-left:3px solid var(--amber);background:var(--amber-tint);border-radius:0 var(--r) var(--r) 0;max-width:var(--measure)}
.ex .eyebrow{color:var(--amber);margin-bottom:6px}
.two{display:grid;gap:var(--s4)}
@media (min-width:700px){.two{grid-template-columns:1fr 1fr}}
.box{border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;min-width:0;background:var(--bg)}
.box h3{margin:0 0 var(--s3);font-size:1.0625rem}
.ticks{list-style:none;display:grid;gap:10px}
.ticks li{display:grid;grid-template-columns:20px 1fr;gap:10px;line-height:1.5}
.ticks svg{margin-top:3px}
.t-ok svg{color:var(--sem-v)}.t-no svg{color:var(--sem-r)}
.quote{margin-top:var(--s5);font:400 var(--t-lg)/1.35 var(--f-serif);max-width:34ch}
.fn-ref{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 4px;margin-left:2px;font:600 .75rem/1 var(--f-mono);vertical-align:super;text-decoration:none;border-radius:4px;background:var(--accent-tint);color:var(--accent)}
.fns{list-style:none;margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line);font-size:var(--t-sm);color:var(--muted);display:grid;gap:8px}
.fns li{display:grid;grid-template-columns:24px 1fr;gap:6px}
.fns .n{font:600 .75rem/1.6 var(--f-mono);color:var(--accent)}
.pend{display:flex;gap:10px;align-items:flex-start;margin-top:var(--s4);padding:12px 14px;border:1px dashed var(--amber-line);border-radius:var(--r);font-size:var(--t-sm);line-height:1.5}
.pend svg{color:var(--amber);margin-top:1px}
.els{list-style:none;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr))}
.els li{border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;background:var(--bg);font-size:var(--t-sm);line-height:1.45;color:var(--muted)}
.els b{display:block;font:600 .9375rem/1.3 var(--f-display);color:var(--text);margin-bottom:4px}
.els .x{border-style:dashed}
.ped{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);overflow:hidden;min-width:0}
.ped>p.eyebrow{padding:12px 16px;border-bottom:1px solid var(--line)}
.ped .pt{padding:16px;font-family:var(--f-mono);font-size:.875rem;line-height:1.6}
.ped dl{margin:0;padding:6px 16px 14px}
.ped dt{font:500 var(--t-xs)/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:12px}
.ped dd{margin:4px 0 0;font-size:.9375rem;line-height:1.55}
.ped .xt dt{color:var(--amber)}
.resp{border:1px solid var(--line);border-radius:var(--r);min-width:0;background:var(--bg)}
.resp>.eyebrow{padding:12px 16px;border-bottom:1px solid var(--line)}
.rot{font:500 .75rem/1.5 var(--f-mono);color:var(--amber);padding:10px 16px;background:var(--amber-tint)}
.resp .rt{padding:16px;white-space:pre-line;font-size:.9375rem;line-height:1.6}
.resp ul{list-style:none;padding:12px 16px 16px;display:grid;gap:8px;border-top:1px solid var(--line);font-size:var(--t-sm);color:var(--muted)}
.resp li{display:grid;grid-template-columns:18px 1fr;gap:8px}
.resp li::before{content:"→";color:var(--muted)}
.note{margin-top:var(--s5);font-weight:500}
/* ordenar */
.frs{list-style:none;display:grid;gap:12px;counter-reset:f}
.fr{counter-increment:f;display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--r);background:var(--bg)}
@media (min-width:700px){.fr{grid-template-columns:1fr 210px;align-items:center}}
.fr p{font-size:.9688rem;line-height:1.55}
.fr p::before{content:"Fragmento " counter(f) " · ";font:500 .75rem var(--f-mono);color:var(--muted);letter-spacing:.04em}
.sel{display:grid;gap:4px}
.sel span{font:500 .75rem/1 var(--f-mono);color:var(--muted)}
select{appearance:none;width:100%;min-height:44px;padding:0 40px 0 12px;font:500 .9375rem var(--f-body);color:var(--text);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B8279' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center/16px;border:1px solid #6B8279;border-radius:8px;cursor:pointer}
.prop{grid-column:1/-1;display:flex;gap:8px;align-items:center;font-size:var(--t-sm);padding-top:10px;border-top:1px dashed var(--line-strong)}
.prop b{font-family:var(--f-display)}
.prop[hidden]{display:none}
.ordp{margin-top:var(--s4);padding:16px 18px;border:1px solid var(--line);border-radius:var(--r)}
.ordp[hidden]{display:none}
.ordp ol{padding-left:1.3em;display:grid;gap:6px;margin-top:8px;font-size:.9375rem}
.act{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:var(--s5)}
/* semáforo */
.sem{list-style:none;display:grid;gap:12px}
.sem>li{padding:18px;border:1px solid var(--line);border-radius:var(--r);background:var(--bg);display:grid;gap:14px}
.sem .q{font-weight:500;line-height:1.5}
.sem-b{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:420px}
.sb{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 6px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:600 .75rem/1 var(--f-body);letter-spacing:.02em;cursor:pointer;transition:transform .2s var(--ease)}
.sb:hover{transform:translateY(-2px)}
.sb i{width:10px;height:10px;border-radius:50%;flex:none}
.sb-v i{background:var(--sem-v)}.sb-a i{background:var(--sem-a)}.sb-r i{background:var(--sem-r)}
.sb[aria-pressed="true"]{border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}
.fb{font-size:var(--t-sm);line-height:1.55}
.fb:empty{display:none}
.fb p{padding:12px 14px;border-radius:8px;background:var(--surface-2)}
.fb .c{font-family:var(--f-mono);font-weight:600;letter-spacing:.04em}
/* cierre */
.cierre{background:var(--text);color:var(--bg);border-color:var(--text)}
.cierre .eyebrow,.cierre .scr-k .tag-mode{color:inherit}
.cierre .tag-mode{border-color:currentColor}
.cierre h2{font:400 clamp(2.2rem,1.4rem + 3.5vw,3.6rem)/1.05 var(--f-serif);letter-spacing:-.01em;margin-top:var(--s2)}
.cierre h2 em{font-style:italic}
.cierre .body{color:inherit}
.cierre .av{background:transparent;color:inherit;border-color:rgba(127,140,135,.5)}
.cierre .av svg{color:inherit}
.cierre a{color:inherit}
.nl{list-style:none;display:grid;gap:0;margin-top:var(--s5);border-top:1px solid rgba(127,140,135,.45)}
.nl li{display:grid;grid-template-columns:36px 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid rgba(127,140,135,.45);align-items:baseline;font-size:.9375rem}
.nl .n{font:500 .8125rem var(--f-mono)}
.nl small{display:block;font-size:.8125rem;line-height:1.45;margin-top:2px}
.nl .e{font:500 .75rem/1.2 var(--f-mono);text-align:right}
@media (max-width:600px){.nl li{grid-template-columns:28px 1fr}.nl .e{grid-column:2;text-align:left}}
.cierre .btns{margin-top:var(--s6)}
.cierre .btn-p{background:var(--bg);color:var(--text)}
.cierre .btn-s{background:transparent;color:inherit;border-color:currentColor}
/* acordeón */
.acc{border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:10px 0;cursor:pointer;font:500 1.0625rem/1.35 var(--f-display)}
.acc summary::-webkit-details-marker{display:none}
.chev{transition:transform .25s var(--ease);color:var(--muted)}
details[open]>summary .chev{transform:rotate(180deg)}
.acc .dd{padding:0 0 18px;max-width:var(--measure);color:var(--muted)}
.mitos{list-style:none;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.mitos li{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--bg)}
.mitos .m{padding:14px 16px;border-bottom:1px dashed var(--line-strong)}
.mitos .r{padding:14px 16px}
.mitos .eyebrow{margin-bottom:4px}
.mitos .m p:last-child{font-family:var(--f-display);font-weight:500;text-decoration:line-through;text-decoration-color:var(--sem-r);text-decoration-thickness:1.5px}
/* notas de curaduría */
.notas{border:1px dashed var(--amber-line);border-radius:var(--r-lg);background:var(--surface)}
.notas>summary{list-style:none;display:flex;align-items:center;gap:14px;min-height:64px;padding:16px 22px;cursor:pointer}
.notas>summary::-webkit-details-marker{display:none}
.notas>summary .ttl{display:grid;gap:2px;margin-right:auto}
.notas>summary b{font:600 1.0625rem/1.3 var(--f-display)}
.notas>summary span.s{font-size:var(--t-sm);color:var(--amber)}
.notas>summary>svg:first-child{color:var(--amber)}
.notas .in{padding:4px 22px 24px;display:grid;gap:var(--s5);max-width:calc(var(--measure) + 44px)}
.notas h3{font-size:1rem;margin:0 0 8px}
.notas ul{list-style:none;display:grid;gap:10px;font-size:.9375rem;line-height:1.55}
.notas li{padding-left:16px;border-left:2px solid var(--amber-line)}
.notas .src{display:block;margin-top:4px;font-size:var(--t-sm);color:var(--muted)}
.nv{display:inline-block;font:500 .6875rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--amber);border:1px solid var(--amber-line);border-radius:4px;padding:3px 5px;margin-left:4px;vertical-align:1px}

/* ---------- niveles ---------- */
.lv{display:grid;gap:var(--s5)}
.lvc{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:clamp(22px,4vw,40px);min-width:0;display:grid;gap:var(--s5)}
.lvc.soon{background:transparent;border-style:dashed;border-color:var(--line-strong)}
.lvc-h{display:grid;grid-template-columns:auto 1fr;gap:16px 18px;align-items:start}
.lvc-h .card-ic{width:52px;height:52px}
.lvc.soon .card-ic{background:transparent;border-style:dashed;color:var(--muted)}
.lvc h2{font-size:var(--t-xl);letter-spacing:-.02em;margin-top:6px}
.lvc-k{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.lvc .obj{font-size:var(--t-md);line-height:1.5;max-width:60ch}
.lvc-g{display:grid;gap:var(--s5)}
@media (min-width:900px){.lvc-g{grid-template-columns:1fr 1fr;gap:var(--s5) var(--s7)}}
.fld .eyebrow{margin-bottom:6px}
.fld ul{list-style:none;display:grid;gap:6px}
.fld li{display:grid;grid-template-columns:18px 1fr;gap:8px}
.fld li svg{margin-top:4px;color:var(--muted)}
.mods{list-style:none;border-top:1px solid var(--line)}
.mods li{display:grid;grid-template-columns:52px 1fr;gap:4px 14px;padding:14px 0;border-bottom:1px solid var(--line)}
.mods .id{font:500 .8125rem/1.5 var(--f-mono);color:var(--muted)}
.mods .tt{font:500 1rem/1.4 var(--f-display)}
.mods .d{grid-column:2;font-size:var(--t-sm);color:var(--muted);line-height:1.5}
.mods .du{font-family:var(--f-mono);font-size:.75rem}
.var{display:grid;gap:10px}
@media (min-width:700px){.var{grid-template-columns:1fr 1fr}}
.var>div{border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;font-size:.9375rem}
.var .eyebrow{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;flex-wrap:wrap}
.lvnav{list-style:none;display:flex;gap:8px;flex-wrap:wrap;margin-top:var(--s5)}
.lvnav a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;font:500 var(--t-sm) var(--f-display);color:var(--text);text-decoration:none;background:var(--surface);transition:transform .2s var(--ease)}
.lvnav a:hover{transform:translateY(-2px);border-color:var(--line-strong)}
.cons{display:grid;gap:var(--s6);border:1px solid var(--amber-line);background:var(--amber-tint);border-radius:var(--r-lg);padding:clamp(22px,4vw,40px)}
@media (min-width:960px){.cons{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
.cons h2{font-size:var(--t-xl);margin-top:8px}
.doc{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px;box-shadow:var(--shadow);position:relative}
.doc::before{content:"";position:absolute;inset:8px;border:1px solid var(--line);border-radius:6px;pointer-events:none}
.doc blockquote{margin:0;font:400 1.1875rem/1.5 var(--f-serif);position:relative}
.doc .eyebrow{margin-bottom:12px;position:relative}
.neg{list-style:none;display:grid;gap:10px;margin-top:var(--s4)}
.neg li{display:grid;grid-template-columns:20px 1fr;gap:10px;line-height:1.5}
.neg svg{color:var(--amber);margin-top:3px}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
 .card-open:hover,.card-open:focus-within,.btn:hover,.sb:hover,.lvnav a:hover,.theme:hover{transform:none}}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media print{.hdr,.toc,.theme{display:none}}

.fr p.prop::before{content:none}
[id]{scroll-margin-top:24px}
@media (min-width:900px){[id]{scroll-margin-top:96px}}

.fn-ref::after{content:"";position:absolute;inset:-10px}
/* v8: rutas */
.nav ul{flex-wrap:wrap}
.rsels{margin-top:24px}
.rsel{min-height:44px}
.rutas{display:grid;gap:clamp(32px,5vw,48px)}
.rutas:has(.ruta:target) .ruta:not(:target){display:none}
.ruta{scroll-margin-top:96px}
.ruta-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}
.ruta-h h3{font-size:var(--t-xl)}
.ruta>.small{margin-top:8px;color:var(--muted)}
.rls{list-style:none;display:grid;gap:var(--s4);margin-top:var(--s5);padding:0}
.rl{padding:20px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.rl-h{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.rl h4{font-size:var(--t-md);margin-top:8px}
.rl h4 a{color:var(--text)}
.rd{margin-top:12px}
.rd>summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:44px;cursor:pointer;font-weight:600;list-style:none}
.rd>summary::-webkit-details-marker{display:none}
.rd>summary .chev{margin-left:auto;transition:transform .2s}
.rd[open]>summary .chev{transform:rotate(180deg)}
.cases{list-style:none;padding:0;display:grid;gap:10px;margin-top:8px}
.cs{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:start;padding:12px 0;border-top:1px solid var(--line)}
.cs-t{font-weight:600;overflow-wrap:anywhere}
.cs-d{grid-column:1;color:var(--muted);font-size:.95rem;line-height:1.5}
.cs .pill{grid-column:2;grid-row:1}
@media (max-width:419px){.cs{grid-template-columns:1fr}.cs .pill{grid-column:1;grid-row:auto;justify-self:start}}
.ph{font-family:var(--f-mono);color:var(--amber);font-weight:700}
.cs-g{padding-top:12px;border-top:1px solid var(--line)}
.rd.legal{border:1px dashed var(--line-strong);border-radius:var(--r-lg);padding:4px 16px 12px}
.sub-h{margin-top:var(--s6);font-size:var(--t-md)}
