/* ============================================================
   IDENTITY — paneles: descubrir, ranking, analytics, IA, precios
   ============================================================ */

.page{
  max-width:var(--maxw);
  margin-inline:auto;
  padding:clamp(28px,4.5vw,52px) var(--pad) clamp(64px,8vw,104px);
}
.page__head{ margin-bottom:clamp(24px,3.5vw,36px); }

/* ---- buscador y filtros -------------------------------------- */
.search{
  display:flex; align-items:center; gap:var(--s3);
  padding:11px var(--s4);
  border:1px solid var(--border-strong);
  border-radius:100px;
  background:var(--bg-secondary);
  max-width:520px;
  transition:border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.search:focus-within{ border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft); }
.search svg{ width:16px; height:16px; color:var(--text-muted); flex:none; }
.search input{
  flex:1; min-width:0; border:0; background:transparent; outline:none;
  font-size:14px; color:var(--text-primary);
}
.search input::placeholder{ color:var(--text-faint); }
.search input::-webkit-search-cancel-button{ filter:invert(.6); }

.chips{ display:flex; flex-wrap:wrap; gap:6px; margin-top:var(--s4); }
.chip{
  padding:7px 14px;
  border:1px solid var(--border);
  border-radius:100px;
  background:var(--bg-secondary);
  font-size:13px;
  color:var(--text-secondary);
  cursor:pointer;
  transition:all var(--transition-fast);
}
.chip:hover{ color:var(--text-primary); border-color:var(--border-strong); }
.chip.on{
  background:var(--accent);
  color:var(--accent-ink);
  border-color:var(--accent);
  font-weight:500;
}

/* ---- rejilla de perfiles --------------------------------------- */
.grid-p{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(214px,1fr));
  gap:var(--s3);
}

.pcard{
  position:relative;
  display:flex; flex-direction:column;
  padding:var(--s5) var(--s4) var(--s4);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface);
  overflow:hidden;
  transition:transform var(--transition-normal), border-color var(--transition-normal);
}
.pcard::before{
  content:"";
  position:absolute; inset:0 0 auto 0; height:88px;
  background:linear-gradient(180deg, var(--pc-tint,rgba(255,255,255,.06)), transparent);
  transition:opacity var(--transition-normal);
}
.pcard:hover{ transform:translateY(-3px); border-color:var(--border-strong); }
.pcard > *{ position:relative; }

.pcard__av{
  width:52px; height:52px;
  border-radius:var(--radius-md);
  display:grid; place-items:center;
  font-size:21px; font-weight:600;
  border:2px solid var(--pc-ring,var(--border-strong));
  background:var(--surface-2);
  overflow:hidden;
  margin-bottom:var(--s3);
}
.pcard__av img{ width:100%; height:100%; object-fit:cover; }
.pcard__name{
  font-size:15.5px; font-weight:600; letter-spacing:-.025em;
  display:flex; align-items:center; gap:5px;
}
.pcard__v{ font-style:normal; font-size:10px; color:var(--accent); }
.pcard__at{ font-size:12px; color:var(--text-muted); margin-top:1px; }
.pcard__role{
  font-size:13px; color:var(--text-secondary);
  margin-top:var(--s2); min-height:2.4em; line-height:1.35;
}
.pcard__bd{ display:flex; gap:4px; margin-top:var(--s2); font-size:13px; }
.pcard__foot{
  margin-top:var(--s4); padding-top:var(--s3);
  border-top:1px solid var(--border);
  display:flex; align-items:center; justify-content:space-between;
  font-size:11.5px; color:var(--text-muted);
  font-variant-numeric:tabular-nums;
}
.pcard__views{ color:var(--text-primary); font-weight:500; }

.empty{
  grid-column:1/-1;
  padding:56px 20px; text-align:center;
  color:var(--text-muted); font-size:13.5px; line-height:1.7;
  border:1px dashed var(--border-strong);
  border-radius:var(--radius-lg);
}
.empty b{ color:var(--text-secondary); }

/* ---- ranking: podio ---------------------------------------------- */
.podium{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--s3);
  align-items:end;
  margin-bottom:var(--s5);
}
@media (max-width:700px){
  .podium{ grid-template-columns:1fr; align-items:stretch; }
}

.pod{
  position:relative;
  display:flex; flex-direction:column; align-items:center;
  text-align:center;
  padding:var(--s5) var(--s4);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface);
  overflow:hidden;
  transition:transform var(--transition-normal), border-color var(--transition-normal);
}
.pod::before{
  content:"";
  position:absolute; inset:0;
  background:radial-gradient(100% 80% at 50% 0%, var(--pod-tint,rgba(255,255,255,.07)), transparent 70%);
  pointer-events:none;
}
.pod > *{ position:relative; }
.pod:hover{ transform:translateY(-4px); border-color:var(--border-strong); }

/* el primer puesto es más alto y más luminoso */
.pod--1{
  padding-block:var(--s7) var(--s5);
  border-color:var(--border-loud);
  background:linear-gradient(180deg,var(--surface-2),var(--surface));
}
.pod--1 .pod__av{ width:76px; height:76px; font-size:30px; }
.pod--1 .pod__name{ font-size:19px; }
.pod--1 .pod__v{ font-size:28px; }

.pod__medal{
  width:26px; height:26px;
  display:grid; place-items:center;
  border-radius:50%;
  background:var(--surface-3);
  border:1px solid var(--border-strong);
  font-size:12px; font-weight:600;
  margin-bottom:var(--s3);
  font-variant-numeric:tabular-nums;
}
.pod--1 .pod__medal{ background:var(--accent); color:var(--accent-ink); border-color:var(--accent); }

.pod__av{
  width:60px; height:60px;
  border-radius:var(--radius-md);
  display:grid; place-items:center;
  font-size:24px;
  background:var(--surface-2);
  border:1px solid var(--border-strong);
  overflow:hidden;
  margin-bottom:var(--s3);
}
.pod__av img{ width:100%; height:100%; object-fit:cover; }
.pod__name{ font-size:16px; font-weight:600; letter-spacing:-.025em; }
.pod__at{ font-size:12px; color:var(--text-muted); margin-top:1px; }
.pod__v{
  font-size:22px; font-weight:600; letter-spacing:-.03em;
  margin-top:var(--s3);
  font-variant-numeric:tabular-nums;
}
.pod__u{ font-size:11px; color:var(--text-muted); }

/* ---- ranking: lista ---------------------------------------------- */
.lb{
  list-style:none; margin:0; padding:0;
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  overflow:hidden;
  background:var(--surface);
}
.lb li + li .lb__row{ border-top:1px solid var(--border); }
.lb__row{
  display:grid;
  grid-template-columns:44px 36px 1fr auto;
  align-items:center; gap:var(--s4);
  padding:var(--s3) var(--s5);
  transition:background var(--transition-fast);
}
.lb__row:hover{ background:var(--surface-hover); }
.lb__rank{
  font-size:14px; font-weight:500;
  color:var(--text-faint);
  font-variant-numeric:tabular-nums;
  text-align:center;
}
.lb__av{
  width:34px; height:34px;
  border-radius:var(--radius-sm);
  display:grid; place-items:center; overflow:hidden;
  background:var(--surface-2); border:1px solid var(--border);
  font-size:14px;
}
.lb__av img{ width:100%; height:100%; object-fit:cover; }
.lb__id{ min-width:0; }
.lb__n{
  font-size:14px; font-weight:500;
  display:flex; align-items:center; gap:5px;
}
.lb__n i{ font-style:normal; font-size:9px; color:var(--accent); }
.lb__h{
  font-size:11.5px; color:var(--text-muted);
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.lb__v{
  font-size:14px; font-weight:500; text-align:right;
  font-variant-numeric:tabular-nums;
}
.lb__v small{ display:block; font-size:10.5px; font-weight:400; color:var(--text-muted); }
@media (max-width:600px){
  .lb__row{ grid-template-columns:34px 30px 1fr auto; gap:var(--s3); padding-inline:var(--s4); }
}

/* ---- analytics ----------------------------------------------------- */
.stats-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(164px,1fr));
  gap:var(--s3);
}
.stat{
  padding:var(--s5);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface);
}
.stat__l{ font-size:11.5px; color:var(--text-muted); }
.stat__n{
  font-size:clamp(22px,3vw,28px); font-weight:600;
  margin-top:6px; letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;
}
.stat__d{ font-size:12px; margin-top:4px; color:var(--text-muted); }
.up{ color:var(--online); } .down{ color:var(--dnd); }

.split{
  display:grid; grid-template-columns:1fr 1fr;
  gap:var(--s3); margin-top:var(--s3);
}
@media (max-width:860px){ .split{ grid-template-columns:1fr; } }

.panel{
  padding:var(--s5);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface);
  min-width:0;
}
.panel__h{
  display:flex; align-items:center; justify-content:space-between;
  gap:var(--s4); margin-bottom:var(--s5);
}
.panel__t{ font-size:12.5px; font-weight:500; color:var(--text-secondary); }

.seg{
  display:flex; gap:2px; padding:2px;
  background:var(--bg-primary);
  border-radius:100px;
  border:1px solid var(--border);
}
.seg button{
  padding:5px 12px; border:0; border-radius:100px;
  background:transparent;
  font-size:12px; color:var(--text-muted); cursor:pointer;
  transition:all var(--transition-fast);
}
.seg button.on{ background:var(--surface-3); color:var(--text-primary); }

canvas.chart{ width:100%; display:block; }

.barlist{ display:grid; gap:var(--s4); }
.barlist__row{
  display:grid; grid-template-columns:1fr auto;
  gap:6px; font-size:13.5px;
}
.barlist__t{ display:flex; align-items:center; gap:7px; min-width:0; }
.barlist__v{
  font-size:12.5px; color:var(--text-muted);
  font-variant-numeric:tabular-nums;
}
.barlist__bar{
  grid-column:1/-1; height:4px; border-radius:100px;
  background:var(--surface-3); overflow:hidden;
}
.barlist__bar i{
  display:block; height:100%; border-radius:100px;
  background:var(--accent);
  animation:fill 900ms var(--ease-out) both;
}
.barlist__bar.alt i{ background:var(--text-muted); }
@keyframes fill{ from{ width:0; } }

/* ---- generador ------------------------------------------------------ */
.ai-grid{
  display:grid; grid-template-columns:1fr minmax(320px,400px);
  gap:var(--s5);
}
@media (max-width:1000px){ .ai-grid{ grid-template-columns:1fr; } }

.prompt{
  width:100%;
  min-height:132px;
  padding:var(--s4);
  border:1px solid var(--border-strong);
  border-radius:var(--radius-md);
  background:var(--bg-secondary);
  color:var(--text-primary);
  font-size:14.5px; line-height:1.6;
  resize:vertical; outline:none;
  transition:border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.prompt:focus{ border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft); }
.prompt::placeholder{ color:var(--text-faint); }

.ai-out{
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface);
  padding:var(--s4) var(--s5);
}
.ai-line{
  display:flex; justify-content:space-between; gap:var(--s4);
  padding:9px 0;
  border-bottom:1px solid var(--border);
  font-size:13px;
}
.ai-line:last-child{ border-bottom:0; }
.ai-line span{ color:var(--text-muted); }
.ai-line b{ font-weight:500; text-align:right; }

/* ---- precios --------------------------------------------------------- */
.tiers{
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:var(--s3); margin-top:var(--s6);
}
@media (max-width:880px){ .tiers{ grid-template-columns:1fr; } }

.tier{
  position:relative;
  padding:var(--s6) var(--s5);
  border:1px solid var(--border);
  border-radius:var(--radius-xl);
  background:var(--surface);
  display:flex; flex-direction:column;
}
.tier--hot{
  border-color:var(--border-loud);
  background:linear-gradient(180deg,var(--surface-2),var(--surface) 45%);
}
.tier__tag{
  position:absolute; top:0; right:var(--s5);
  padding:4px 11px;
  border-radius:0 0 var(--radius-sm) var(--radius-sm);
  background:var(--accent); color:var(--accent-ink);
  font-size:11px; font-weight:600;
}
.tier__n{ font-size:13px; color:var(--text-secondary); font-weight:500; }
.tier__p{
  font-size:36px; font-weight:600;
  letter-spacing:-.04em; margin-top:var(--s3); line-height:1;
}
.tier__p small{
  font-size:12px; font-weight:400; color:var(--text-muted);
  letter-spacing:0; display:block; margin-top:6px;
}
.tier__sub{ color:var(--text-secondary); font-size:13.5px; margin:var(--s3) 0 0; }
.tier ul{ list-style:none; margin:var(--s5) 0 var(--s6); padding:0; display:grid; gap:10px; }
.tier li{
  display:flex; gap:10px; align-items:flex-start;
  font-size:13.5px; color:var(--text-secondary);
}
.tier li::before{
  content:"";
  width:5px; height:5px; border-radius:50%;
  background:var(--text-faint);
  flex:none; margin-top:8px;
}
.tier--hot li::before{ background:var(--accent); }
.tier li b{ color:var(--text-primary); font-weight:500; }
.tier .btn{ margin-top:auto; }

.market{
  display:grid; grid-template-columns:repeat(auto-fill,minmax(186px,1fr));
  gap:var(--s3); margin-top:var(--s5);
}
.mitem{
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  background:var(--surface);
  overflow:hidden;
  transition:transform var(--transition-normal), border-color var(--transition-normal);
}
.mitem:hover{ transform:translateY(-3px); border-color:var(--border-strong); }
.mitem__pre{ height:88px; }
.mitem__b{
  padding:var(--s3) var(--s4);
  display:flex; justify-content:space-between; align-items:center; gap:var(--s2);
}
.mitem__t{ font-size:13.5px; font-weight:500; }
.mitem__a{ font-size:11.5px; color:var(--text-muted); }
.mitem__p{ font-size:14px; font-weight:600; font-variant-numeric:tabular-nums; }

/* ---- nota honesta ---------------------------------------------------- */
.note{
  margin-top:var(--s6);
  padding:var(--s4) var(--s5);
  border:1px solid var(--border);
  border-left:2px solid var(--border-loud);
  border-radius:var(--radius-sm);
  background:var(--bg-secondary);
  font-size:13px;
  line-height:1.65;
  color:var(--text-secondary);
}
.note b{ color:var(--text-primary); font-weight:600; }
.note code{
  font-family:"JetBrains Mono", ui-monospace, monospace;
  font-size:12px;
  background:var(--surface-2);
  padding:2px 6px; border-radius:5px;
  color:var(--text-primary);
}

/* ============================================================
   PLANTILLAS
   Cada miniatura es un perfil real renderizado y escalado, no
   una captura: lo que ves es exactamente lo que se aplica.
   ============================================================ */

.tpl__top{
  display:flex; align-items:flex-start; justify-content:space-between;
  gap:var(--s5); flex-wrap:wrap;
}
.tpl__bar{
  display:flex; gap:var(--s3); margin-top:var(--s4);
  flex-wrap:wrap; align-items:center;
}
.tpl__bar .search{ flex:1; min-width:220px; max-width:none; }

.tplgrid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(258px,1fr));
  gap:var(--s3);
  margin-top:var(--s5);
}

.tpl{
  position:relative;
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface);
  overflow:hidden;
  transition:transform var(--transition-normal), border-color var(--transition-normal);
}
.tpl:hover{ transform:translateY(-3px); border-color:var(--border-strong); }

/* --- miniatura --- */
.tpl__pre{
  position:relative;
  height:172px;
  overflow:hidden;
  background:var(--bg-primary);
  border-bottom:1px solid var(--border);
  pointer-events:none;          /* la miniatura no se toca: para eso está "Ver" */
}
.tpl__scale{
  width:860px;
  height:540px;
  transform:scale(.325);
  transform-origin:top left;
}
/* .pf-hero mide 100vh y dentro de
   una miniatura eso es la ventana, no la tarjeta */
.tpl__scale .pf{ min-height:0; padding:0; }
.tpl__scale .pf-hero{ min-height:540px; padding:36px 28px; }
.tpl__scale .pf-scroll{ display:none; }

.tpl__fav{
  position:absolute; top:10px; right:10px;
  z-index:2;
  width:30px; height:30px;
  display:grid; place-items:center;
  border-radius:var(--radius-sm);
  border:1px solid var(--border-strong);
  background:rgba(5,5,5,.62);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  color:var(--text-secondary);
  cursor:pointer;
  transition:color var(--transition-fast), transform var(--transition-fast);
}
.tpl__fav svg{ width:15px; height:15px; }
.tpl__fav:hover{ transform:scale(1.08); color:var(--text-primary); }
.tpl__fav.on{ color:#FFC24B; }
.tpl__fav.on svg{ fill:#FFC24B; }

.tpl__b{ padding:var(--s4); }
.tpl__id{ display:flex; align-items:baseline; gap:var(--s2); }
.tpl__n{ font-size:14.5px; font-weight:500; letter-spacing:-.02em; }
.tpl__a{ font-size:12px; color:var(--text-muted); }
.tpl__meta{
  display:flex; gap:var(--s3);
  margin-top:5px;
  font-size:11.5px; color:var(--text-muted);
  font-variant-numeric:tabular-nums;
}
.tpl__tags{ display:flex; flex-wrap:wrap; gap:4px; margin-top:var(--s3); }
.tpl__tag{
  padding:3px 8px;
  border-radius:100px;
  background:var(--surface-2);
  border:1px solid var(--border);
  font-size:10.5px;
  color:var(--text-secondary);
}
.tpl__acts{ display:flex; gap:6px; margin-top:var(--s4); }
.tpl__acts .btn:first-child{ flex:1; }

/* --- vista previa a pantalla completa --- */
.tplmodal{
  position:fixed; inset:0;
  z-index:1000;
  display:grid; place-items:center;
  padding:clamp(12px,3vw,36px);
  background:rgba(3,3,3,.78);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  animation:fade var(--transition-normal) both;
}
.tplmodal__box{
  width:min(460px,100%);
  max-height:100%;
  display:flex; flex-direction:column;
  border:1px solid var(--border-strong);
  border-radius:var(--radius-xl);
  background:var(--bg-primary);
  overflow:hidden;
  box-shadow:var(--shadow-lg);
  animation:rise var(--transition-large) both;
}
.tplmodal__bar{
  display:flex; align-items:center; gap:var(--s3);
  padding:var(--s3) var(--s4);
  border-bottom:1px solid var(--border);
  flex:none;
}
.tplmodal__bar b{ font-size:14px; font-weight:500; }

/* ---- guardar como plantilla ----------------------------------
   Dos columnas: a la izquierda lo que se va a guardar, a la derecha
   como se va a llamar. Nombrar algo a ciegas es como se publican
   plantillas que nadie reconoce despues. */
.tplmodal__box--form{ max-width:760px; }
.tplform{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,300px); }
.tplform__pre{
  position:relative;
  min-height:300px;
  overflow:hidden;
  background:var(--bg-primary);
  border-right:1px solid var(--border);
}
.tplform__f{ padding:20px; }
.tplform__acts{ display:flex; gap:8px; margin-top:20px; }

@media (max-width:720px){
  .tplform{ grid-template-columns:1fr; }
  .tplform__pre{ min-height:180px; border-right:0; border-bottom:1px solid var(--border); }
}
.tplmodal__bar span{ font-size:12px; color:var(--text-muted); }
.tplmodal__bar .btn{ margin-left:auto; }
.tplmodal__view{
  flex:1;
  overflow-y:auto;
  scrollbar-width:none;
}
.tplmodal__view::-webkit-scrollbar{ display:none; }
.tplmodal__view .pf{ min-height:100%; padding:var(--s6) var(--s4); }


/* ============================================================
   ENTRAR / CREAR CUENTA
   ============================================================ */
.page--corta{ max-width:520px; margin:0 auto; }
.auth{ display:flex; justify-content:center; padding:clamp(20px,6vw,56px) 0; }
.auth__caja{
  width:100%; background:var(--p-surface, rgba(255,255,255,.03));
  border:1px solid var(--p-line, rgba(255,255,255,.1));
  border-radius:16px; padding:clamp(22px,5vw,34px);
}
.auth__t{ font-size:clamp(22px,4vw,27px); margin:0 0 8px; letter-spacing:-.02em; }
.auth__d{ color:var(--p-dim); margin:0 0 22px; font-size:14.5px; line-height:1.55; }

.auth__prov{ display:grid; gap:10px; }
.btn--prov{
  display:flex; align-items:center; justify-content:center; gap:10px;
  width:100%; padding:12px 16px; font-weight:600;
  background:var(--p-surface-2, rgba(255,255,255,.06));
  border:1px solid var(--p-line, rgba(255,255,255,.12));
}
.btn--prov:hover{ border-color:var(--p-primary); }
.auth__pico{ display:inline-flex; }

.auth__o{
  display:flex; align-items:center; gap:12px;
  margin:20px 0 16px; color:var(--p-dim); font-size:12.5px;
}
.auth__o::before, .auth__o::after{
  content:""; flex:1; height:1px; background:var(--p-line, rgba(255,255,255,.1));
}

.auth__f .inp{ width:100%; }
.auth__legal{
  display:flex; gap:9px; align-items:flex-start;
  margin-top:14px; font-size:13px; color:var(--p-dim); line-height:1.5;
}
.auth__legal input{ margin-top:3px; flex:none; }

.auth__aviso{
  margin:14px 0 0; padding:11px 13px; border-radius:9px; font-size:13.5px;
  background:color-mix(in srgb, var(--p-primary) 12%, transparent);
  border:1px solid color-mix(in srgb, var(--p-primary) 40%, transparent);
  line-height:1.5;
}
.auth__aviso.is-mal{
  background:rgba(248,81,73,.12); border-color:rgba(248,81,73,.5); color:#ffb4ae;
}

.auth__cambio{ margin:18px 0 0; text-align:center; font-size:13.5px; color:var(--p-dim); }
.lnk{
  background:none; border:0; padding:0; cursor:pointer; font:inherit;
  color:var(--p-primary); text-decoration:underline; text-underline-offset:2px;
}
.auth__acts{ display:grid; gap:10px; }


/* ============================================================
   DOCUMENTOS LEGALES
   Se leen, no se ojean: columna estrecha y mucho aire.
   ============================================================ */
.lg{ max-width:760px; margin:0 auto; }
.lg__tabs{
  display:flex; gap:6px; flex-wrap:wrap;
  margin:0 0 28px; padding:0 0 14px;
  border-bottom:1px solid var(--p-line, rgba(255,255,255,.1));
}
.lg__tabs a{
  padding:7px 13px; border-radius:8px; font-size:13.5px;
  color:var(--p-dim); text-decoration:none;
}
.lg__tabs a:hover{ background:var(--p-surface-2, rgba(255,255,255,.05)); }
.lg__tabs a.on{
  background:var(--p-surface-2, rgba(255,255,255,.07));
  color:var(--p-text);
}

.lg__doc{ font-size:15px; line-height:1.72; }
.lg__doc h2{ font-size:clamp(21px,3.4vw,26px); margin:38px 0 12px; letter-spacing:-.02em; }
.lg__doc h2:first-child{ margin-top:0; }
.lg__doc h3{ font-size:18px; margin:30px 0 10px; }
.lg__doc h4{ font-size:15.5px; margin:22px 0 8px; color:var(--p-dim); }
.lg__doc p{ margin:0 0 14px; }
.lg__doc ul, .lg__doc ol{ margin:0 0 16px; padding-left:1.3em; }
.lg__doc li{ margin:6px 0; }
.lg__doc a{ color:var(--p-primary); text-underline-offset:2px; }
.lg__doc hr{
  border:0; height:1px; margin:34px 0;
  background:var(--p-line, rgba(255,255,255,.1));
}
.lg__doc blockquote{
  margin:18px 0; padding:12px 16px;
  border-left:2px solid var(--p-primary);
  background:var(--p-surface-2, rgba(255,255,255,.04));
  color:var(--p-dim); font-size:14px;
}
.lg__doc blockquote p{ margin:0; }
.lg__doc code{
  background:var(--p-surface-2, rgba(255,255,255,.07));
  padding:1px 5px; border-radius:4px; font-size:.9em;
}

/* Las tablas se desplazan solas: en un movil una tabla de tres
   columnas no cabe, y sin esto empuja la pagina entera de lado. */
.lg__tabla{ overflow-x:auto; margin:0 0 20px; }
.lg__doc table{ width:100%; border-collapse:collapse; font-size:14px; min-width:420px; }
.lg__doc th, .lg__doc td{
  text-align:left; padding:9px 12px;
  border-bottom:1px solid var(--p-line, rgba(255,255,255,.09));
  vertical-align:top;
}
.lg__doc th{ color:var(--p-dim); font-weight:600; font-size:12.5px;
  text-transform:uppercase; letter-spacing:.05em; }

.lg__cargando, .lg__err{ color:var(--p-dim); padding:40px 0; }

/* La frase de aceptacion: dos piezas, casilla y texto. Nada mas. */
.auth__legal > span{ flex:1; }


/* ---- ajustes de cuenta: separadores y zona de peligro -------- */
.auth__sep{
  height:1px; margin:26px 0 22px;
  background:var(--p-line, rgba(255,255,255,.1));
}
.auth__h2{ font-size:16px; margin:0 0 6px; letter-spacing:-.01em; }
.auth__h2.is-peligro{ color:#ff9a90; }
.btn--peligro{
  background:rgba(248,81,73,.14);
  border:1px solid rgba(248,81,73,.55);
  color:#ffb4ae;
}
.btn--peligro:hover{ background:rgba(248,81,73,.24); border-color:rgba(248,81,73,.85); }
