/* ══════════════════════════════════════════════════════════════
   NSS · Estilos para páginas de documento (legales)
   Misma identidad que la landing: Unbounded + Space Mono + Inter
   ══════════════════════════════════════════════════════════════ */
:root{
  --azul:#2D6BFF; --violeta:#7B3FE4; --magenta:#C13FE4;
  --tinta:#0E1116; --surf:#12151B; --linea:#22262F; --linea-2:#2A3140;
  --texto:#F2F4F7; --texto-2:#B7BEC9; --texto-3:#8A93A6;
  --grad:linear-gradient(95deg,#2D6BFF,#7B3FE4,#C13FE4);
  --display:'Unbounded',sans-serif; --mono:'Space Mono',monospace; --body:'Inter',sans-serif;
  --max:820px; --pad:40px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--tinta);color:var(--texto);font-family:var(--body);line-height:1.75;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:var(--magenta);text-decoration:none;}
a:hover{color:#D46BF0;text-decoration:underline;}
img{max-width:100%;display:block;}

/* ── Nav ── */
.nav{position:sticky;top:0;z-index:50;background:rgba(14,17,22,.85);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--linea);}
.nav-in{max-width:1200px;margin:0 auto;padding:16px var(--pad);display:flex;align-items:center;
  justify-content:space-between;gap:20px;}
.brand{display:flex;align-items:center;gap:13px;}
.brand img.ic{width:38px;height:38px;border-radius:10px;}
.brand img.wm{height:30px;width:auto;}
.nav-back{font-family:var(--mono);font-size:13px;letter-spacing:.5px;color:var(--texto-2);}
.nav-back:hover{color:var(--texto);text-decoration:none;}

/* ── Cabecera del documento ── */
.doc-head{max-width:var(--max);margin:0 auto;padding:72px var(--pad) 0;}
.doc-head .eyebrow{font-family:var(--mono);font-size:13px;letter-spacing:2px;color:var(--magenta);margin-bottom:16px;}
.doc-head h1{font-family:var(--display);font-weight:700;font-size:clamp(30px,5.2vw,46px);
  letter-spacing:-1.5px;line-height:1.08;}
.doc-head .meta{font-family:var(--mono);font-size:12.5px;color:var(--texto-3);margin-top:18px;letter-spacing:.5px;}
.rule{height:3px;width:70px;border-radius:3px;background:var(--grad);margin:26px 0 0;}

/* ── Cuerpo ── */
.doc{max-width:var(--max);margin:0 auto;padding:40px var(--pad) 90px;}
.doc h2{font-family:var(--display);font-weight:700;font-size:clamp(19px,2.6vw,24px);letter-spacing:-.6px;
  margin:52px 0 16px;padding-top:22px;border-top:1px solid var(--linea);}
.doc h2:first-of-type{border-top:none;padding-top:0;margin-top:34px;}
.doc h3{font-family:var(--display);font-weight:600;font-size:17px;letter-spacing:-.3px;margin:28px 0 10px;}
.doc p{color:var(--texto-2);margin-bottom:16px;font-size:15.5px;}
.doc ul,.doc ol{color:var(--texto-2);margin:0 0 18px 22px;font-size:15.5px;}
.doc li{margin-bottom:9px;}
.doc strong{color:var(--texto);font-weight:600;}
.doc .idx{font-family:var(--mono);font-size:12px;color:var(--magenta);letter-spacing:1px;display:block;margin-bottom:6px;}

/* ── Avisos ── */
.callout{border:1px solid var(--linea-2);border-radius:16px;padding:22px 24px;margin:26px 0;background:var(--surf);}
.callout .t{font-family:var(--display);font-weight:700;font-size:15px;margin-bottom:8px;}
.callout p:last-child{margin-bottom:0;}
.callout.warn{border-color:rgba(251,191,36,.4);background:rgba(251,191,36,.07);}
.callout.warn .t{color:#FBBF24;}
.callout.med{border-color:rgba(193,63,228,.4);background:rgba(193,63,228,.08);}
.callout.med .t{color:var(--magenta);}

/* ── Marcador de dato pendiente ── */
.todo{background:rgba(251,191,36,.16);border:1px dashed rgba(251,191,36,.55);color:#FBBF24;
  font-family:var(--mono);font-size:13px;padding:2px 8px;border-radius:6px;white-space:nowrap;}

/* ── Tabla ── */
.tbl{width:100%;border-collapse:collapse;margin:20px 0 24px;font-size:14.5px;}
.tbl th,.tbl td{border:1px solid var(--linea);padding:12px 14px;text-align:left;vertical-align:top;}
.tbl th{background:var(--surf);font-family:var(--mono);font-size:12px;letter-spacing:.5px;
  text-transform:uppercase;color:var(--texto);font-weight:700;}
.tbl td{color:var(--texto-2);}
.tbl-wrap{overflow-x:auto;}

/* ── Footer ── */
.foot{border-top:1px solid var(--linea);}
.foot-in{max-width:1200px;margin:0 auto;padding:36px var(--pad);display:flex;justify-content:space-between;
  gap:20px;flex-wrap:wrap;font-family:var(--mono);font-size:12.5px;color:var(--texto-3);}
.foot-in a{color:var(--texto-2);}

@media(max-width:640px){
  :root{--pad:20px;}
  .doc-head{padding-top:48px;}
  .doc{padding-bottom:64px;}
  .brand img.wm{height:24px;}
  .doc h2{margin-top:40px;}
}
