:root{--bg:#fffdf7;--fg:#1d1d1f;--mut:#5b5b66;--line:#e6e1d3;--acc:#c2410c;--acc2:#9a3412;--ok:#166534;--okb:#dcfce7;--wa:#854d0e;--wab:#fef3c7;--pr:#1e3a8a;--prb:#dbeafe;--bad:#991b1b;--badb:#fee2e2;--r:10px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--fg);background:var(--bg)}
a{color:var(--acc2)}a:hover{color:var(--acc)}
:focus-visible{outline:3px solid var(--acc);outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
.wrap{max-width:1100px;margin:0 auto;padding:0 16px}
header.site{border-bottom:1px solid var(--line);background:#fff}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;padding-bottom:10px}
.logo{display:inline-flex}.logo img{display:block;height:32px;width:auto}
nav a{margin-right:14px;font-size:.95rem}
main{padding:20px 0 40px}
h1{font-size:1.7rem;line-height:1.2;margin:.3em 0 .4em}h2{font-size:1.3rem;margin-top:1.6em}
.lead{font-size:1.08rem;color:var(--mut);max-width:70ch}
.note{background:var(--wab);border-left:4px solid var(--wa);padding:10px 14px;border-radius:6px;margin:16px 0;font-size:.95rem}
.filters{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0;padding:0;list-style:none}
.filters a{display:inline-block;padding:6px 12px;border:1px solid var(--line);border-radius:99px;text-decoration:none;color:var(--fg);background:#fff;font-size:.9rem}
.filters a[aria-current]{background:var(--fg);color:#fff;border-color:var(--fg)}
.badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:.78rem;font-weight:600;white-space:nowrap}
.b-pub{background:var(--okb);color:var(--ok)}.b-priv{background:var(--prb);color:var(--pr)}.b-pend{background:var(--wab);color:var(--wa)}.b-rev{background:var(--badb);color:var(--bad)}
table.promos{width:100%;border-collapse:collapse;font-size:.93rem;background:#fff}
.promos th,.promos td{text-align:left;vertical-align:top;padding:10px;border-bottom:1px solid var(--line)}
.promos th{background:#f6f2e6;font-size:.85rem}
.promos th button{font:inherit;font-weight:700;background:none;border:0;padding:0;cursor:pointer;color:inherit}
.promos th button::after{content:" ↕";color:var(--mut)}
.promos th[aria-sort=ascending] button::after{content:" ↑"}.promos th[aria-sort=descending] button::after{content:" ↓"}
.promos td .badge{margin:2px 4px 2px 0}
tr.stale td{background:#fffaf9}
.prog a{font-weight:700}
.small{font-size:.85rem;color:var(--mut)}
@media (max-width:760px){
 .promos thead{position:absolute;left:-9999px}
 .promos,.promos tbody,.promos tr,.promos td{display:block;width:100%}
 .promos tr{border:1px solid var(--line);border-radius:var(--r);margin-bottom:12px;padding:6px 0}
 .promos td{border:0;padding:4px 12px}
 .promos td[data-label]::before{content:attr(data-label);display:block;font-size:.75rem;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.03em}
}
dl.facts{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:8px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px}
dl.facts dt{font-weight:700}dl.facts dd{margin:0}
@media (max-width:560px){dl.facts{grid-template-columns:1fr}dl.facts dd{margin-bottom:8px}}
.crumbs{font-size:.88rem;color:var(--mut)}.crumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.crumbs li+li::before{content:"› ";}
footer.site{border-top:1px solid var(--line);background:#fff;padding:20px 0;font-size:.88rem;color:var(--mut)}
footer.site a{margin-right:12px}
.prose{max-width:75ch}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.hero{padding:8px 0 4px}.hl{background:linear-gradient(transparent 60%,#fed7aa 60%)}
.b-date{background:#f1f5f9;color:#334155}
.codebox{padding:12px 14px;border-radius:var(--r);border:1px dashed var(--line);background:#fff}
.codebox.priv{border-color:#93c5fd;background:#eff6ff}.codebox.pub{border-color:#86efac;background:#f0fdf4}.codebox.pend{border-color:#fcd34d;background:#fffbeb}
ul.plain{margin:0;padding-left:1.1em;word-break:break-word}
ul.cards{list-style:none;padding:0;display:grid;gap:12px}ul.cards li{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px}
.disclaimer{max-width:80ch}
blockquote{margin:1em 0;padding:.5em 1em;border-left:4px solid var(--line);color:var(--mut)}
pre{overflow:auto;background:#f6f2e6;padding:12px;border-radius:6px}
@media (min-width:761px){h1{font-size:2.1rem}}
table.md{border-collapse:collapse;width:100%;background:#fff;font-size:.93rem;margin:1em 0}table.md th,table.md td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}table.md th[scope=row]{background:#f6f2e6;width:34%}
.table-wrap{overflow-x:auto}
mark.verify{background:#fde68a;padding:0 3px;border-radius:3px;font-size:.9em}
.prose li{margin:.2em 0}.prose h2{border-top:1px solid var(--line);padding-top:.8em}
.cta-private{border:2px solid var(--acc);border-radius:var(--r);background:#fff7ed;padding:12px 14px;margin:1.2em 0}.cta-private p{margin:.4em 0}
[hidden]{display:none!important}

/* Enlaces y códigos largos (URLs de PDF) no deben ensanchar la página en móvil */
main a,main code,footer a{overflow-wrap:anywhere;word-break:break-word}
