/* ═══ Rush · páginas legales · new-rush-design-system ═══ */
:root{
  color-scheme:light;
  --c-page:#FFFFFF; --c-surface:#FFFFFF; --c-glass:rgba(255,255,255,.72);
  --c-sunk:#F5F6F6; --c-sunk2:#F1F3F4;
  --c-ink:#151D1E; --c-body:#596366; --c-muted:#697276;
  --c-line:#E4E8EB;
  --c-blue-bg:#EDF4FE; --c-blue-bg2:#DBEAFE;
  --blue-500:#0277FA; --blue-550:#0261CE;
  --ease:cubic-bezier(.2,0,0,1);
}
html[data-theme="dark"]{
  color-scheme:dark;
  --c-page:#0F1516; --c-surface:#1A2224; --c-glass:rgba(26,34,36,.80);
  --c-sunk:#131B1D; --c-sunk2:#1F282B;
  --c-ink:#F5F6F6; --c-body:#A6AEB1; --c-muted:#8A9498;
  --c-line:rgba(255,255,255,.10);
  --c-blue-bg:rgba(2,119,250,.16); --c-blue-bg2:rgba(2,119,250,.22);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
body{
  font-family:'Geist',-apple-system,BlinkMacSystemFont,sans-serif;
  background:var(--c-page); color:var(--c-ink);
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img{display:block;}
a{color:var(--c-ink);text-decoration:none;}
main a{color:var(--blue-550);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;}
html[data-theme="dark"] main a{color:#7FB4FC;}

/* ── Cabecera sobre el gradiente azul ── */
.top{position:relative;overflow:hidden;background:var(--c-page);}
.glow{
  position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;
  background:
    radial-gradient(55% 80% at -8% 55%, rgba(2,119,250,.75) 0%, rgba(2,119,250,.38) 40%, rgba(102,169,252,.12) 68%, rgba(255,255,255,0) 100%),
    radial-gradient(55% 80% at 108% 60%, rgba(2,119,250,.75) 0%, rgba(2,119,250,.38) 40%, rgba(102,169,252,.12) 68%, rgba(255,255,255,0) 100%),
    radial-gradient(90% 55% at 50% 112%, rgba(2,97,206,.85) 0%, rgba(2,119,250,.40) 45%, rgba(255,255,255,0) 80%);
}
.glow{-webkit-mask-image:linear-gradient(to bottom,#000 55%,transparent 100%);
      mask-image:linear-gradient(to bottom,#000 55%,transparent 100%);}
html[data-theme="dark"] .glow{opacity:.28;}

header{
  position:relative;z-index:2;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  max-width:1180px;margin:0 auto;padding:28px 32px 0;
}
.logo{height:26px;width:auto;display:block;}
.logo-dark{display:none;}
html[data-theme="dark"] .logo-light{display:none;}
html[data-theme="dark"] .logo-dark{display:block;}
.hdr-right{display:flex;align-items:center;gap:10px;}
.lang{
  display:inline-flex;align-items:center;height:38px;padding:3px;border-radius:999px;
  background:var(--c-surface);box-shadow:inset 0 0 0 1px var(--c-line);
}
.lang a{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:34px;height:32px;padding:0 9px;border-radius:999px;
  font-size:12px;line-height:16px;font-weight:600;letter-spacing:.02em;
  color:var(--c-muted);text-decoration:none;transition:background 120ms var(--ease),color 120ms var(--ease);
}
.lang a:hover{color:var(--c-ink);}
.lang a[aria-current="true"]{background:var(--c-sunk);color:var(--c-ink);}
html[data-theme="dark"] .lang a[aria-current="true"]{background:var(--c-sunk2);}

.theme{
  all:unset;cursor:pointer;width:38px;height:38px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--c-body);background:var(--c-surface);
  box-shadow:inset 0 0 0 1px var(--c-line);
  transition:background 120ms var(--ease);
}
.theme:hover{background:var(--c-sunk);}
.theme .moon{display:block;} .theme .sun{display:none;}
html[data-theme="dark"] .theme .moon{display:none;}
html[data-theme="dark"] .theme .sun{display:block;}
.back{
  display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
  font-size:13.5px;line-height:20px;color:var(--c-ink);
  background:var(--c-surface);border-radius:999px;padding:8px 15px;
  box-shadow:inset 0 0 0 1px var(--c-line);
  transition:background 120ms var(--ease);
}
.back:hover{background:var(--c-sunk);text-decoration:none;}

.lede{position:relative;z-index:2;max-width:860px;margin:0 auto;padding:56px 32px 72px;}
.badge{
  display:inline-flex;align-items:center;
  background:var(--c-blue-bg);border-radius:999px;padding:6px 16px;
  font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;
  line-height:18px;color:var(--blue-550);
}
html[data-theme="dark"] .badge{color:#7FB4FC;}
h1{
  font-size:clamp(34px,5vw,52px);line-height:1.06;letter-spacing:-.027em;
  font-weight:600;margin:18px 0 10px;
}
.updated{font-size:14px;color:var(--c-body);}

/* ── Cuerpo ── */
main{max-width:860px;margin:0 auto;padding:8px 32px 88px;}
main > p:first-of-type{font-size:17px;line-height:1.65;color:var(--c-body);}
h2{
  font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.3px;
  margin:44px 0 12px;color:var(--c-ink);
}
p,li{font-size:15.5px;line-height:1.68;color:var(--c-body);}
p{margin:0 0 12px;}
strong{color:var(--c-ink);font-weight:600;}
ul,ol{padding-left:22px;margin:0 0 12px;}
li{margin:5px 0;}

.toc{
  background:var(--c-sunk);border:1px solid var(--c-line);border-radius:18px;
  padding:22px 26px;margin:32px 0 8px;
}
.toc ol{margin:0;padding-left:20px;font-size:14.5px;}
.toc li{margin:4px 0;color:var(--c-body);}

table{
  width:100%;border-collapse:separate;border-spacing:0;margin:16px 0;font-size:14px;
  border:1px solid var(--c-line);border-radius:14px;overflow:hidden;
}
th,td{text-align:left;padding:12px 14px;vertical-align:top;color:var(--c-body);
  border-bottom:1px solid var(--c-line);}
tr:last-child td{border-bottom:0;}
th{background:var(--c-sunk);color:var(--c-ink);font-weight:600;}

.tablewrap{
  overflow-x:auto;
  /* el borde derecho se difumina para que se vea que hay mas tabla */
  background:
    linear-gradient(to right, var(--c-page) 30%, rgba(255,255,255,0)) left center / 40px 100% no-repeat local,
    linear-gradient(to left,  var(--c-page) 30%, rgba(255,255,255,0)) right center / 40px 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%, rgba(21,29,30,.16), rgba(21,29,30,0)) left center / 14px 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%, rgba(21,29,30,.16), rgba(21,29,30,0)) right center / 14px 100% no-repeat scroll;
}
.tablewrap td:first-child,.tablewrap th:first-child{white-space:nowrap;}
/* sin ancho minimo la tabla colapsaba a una palabra por linea en el movil */
.tablewrap table{min-width:520px;}

footer{
  background:var(--c-page);border-top:1px solid var(--c-line);
  padding:28px 32px;display:flex;flex-wrap:wrap;gap:12px 24px;
  align-items:center;justify-content:space-between;
  font-size:12.5px;color:var(--c-body);
}
footer nav{display:flex;gap:20px;}
footer a{color:var(--c-body);}
footer a:hover{color:var(--c-ink);text-decoration:none;}

@media (max-width:767px){
  header{padding:20px 20px 0;}
  .lede{padding:40px 20px 52px;}
  main{padding:8px 20px 64px;}
  h2{margin:34px 0 10px;}
  footer{justify-content:center;text-align:center;padding:24px 20px;}
  footer nav a{padding:6px 2px;}
  .theme{width:44px;height:44px;}
  .back{padding:11px 15px;}
}

/* el pie mantiene su ancho de contenido aunque la cabecera vaya a 1180 */
footer{max-width:1180px;margin:0 auto;}
/* indice navegable: son documentos de hasta 14 secciones */
html{scroll-behavior:smooth;}
h2{scroll-margin-top:24px;}
.toc a,html[data-theme="dark"] .toc a{color:var(--c-body);text-decoration:none;}
.toc a:hover{color:var(--c-ink);text-decoration:underline;}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto;}}

caption{caption-side:top;text-align:left;font-size:13px;color:var(--c-muted);padding:0 0 8px;}

/* al final a proposito: ".theme{all:unset}" borra el anillo del navegador */
:focus-visible{outline:2px solid var(--blue-500);outline-offset:2px;border-radius:4px;}
html[data-theme="dark"] :focus-visible{outline-color:#7FB4FC;}
