/* ================================================================
   sf-mate.css — Tema OSCURO MATE (2026-10-31), activación por PARTES
   PARTES: 1 Dashboard · 2 Login · 3 Landing · 4 Precios · 5 Registro
   HOJA ACTIVA: SOLO PARTE 1 (DASHBOARD). Las públicas llegan en su parte.
   Se carga EL ULTIMO en cada plantilla. Cristal/liquid glass conservados
   sobre fondo oscuro mate. Motion solo transform/opacity + reduced-motion.
   ================================================================ */

/* ---------- PARTE 1: DASHBOARD (body.sf-taller[data-cintas="panel"]) ---------- */
html.sf-seda:has(body.sf-taller[data-cintas="panel"]){background:#0F1116!important}

html.sf-seda body.sf-taller[data-cintas="panel"]{
  --lg-ink:#EDEFF4; --lg-soft:#C7CCD7;
  --ink:#EDEFF4; --ink-2:#C7CCD7; --muted:#9AA2B1; --faint:#6E7686;
  --line:rgba(255,255,255,.12); --line-2:rgba(255,255,255,.22);
  --accent:#6EA8FF; --accent-ink:#9DC3FF; --fx-rgb:110,168,255; --fx-a:#6EA8FF; --fx-b:#0A84FF; --fx-c:#00B8A9; --fx-d:#A855F7;
  --lg-fill:linear-gradient(150deg,rgba(255,255,255,.10),rgba(255,255,255,.04) 55%,rgba(255,255,255,.07));
  --lg-fill-2:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  --lg-edge:rgba(255,255,255,.16);
  color-scheme:dark;
  background:
    radial-gradient(58% 48% at 10% 5%,rgba(0,184,169,.12),rgba(0,184,169,0) 60%),
    radial-gradient(52% 44% at 94% 3%,rgba(255,90,95,.10),rgba(255,90,95,0) 60%),
    radial-gradient(58% 54% at 92% 98%,rgba(168,85,247,.13),rgba(168,85,247,0) 60%),
    radial-gradient(52% 48% at 4% 97%,rgba(245,180,0,.10),rgba(245,180,0,0) 60%),
    linear-gradient(165deg,#14171E 0%,#0F1218 52%,#13121C 100%)!important;
  color:var(--ink)!important}

html.sf-seda body.sf-taller[data-cintas="panel"]>.lq-grano{opacity:.10!important;mix-blend-mode:soft-light!important}

/* Superficies: cristal oscuro con luz de borde y sombra profunda */
html.sf-seda body.sf-taller[data-cintas="panel"] :is(
  .db-rail,.db-top,.db-card,.mc-card,.mc-kpis,.mc-chart-card,.mc-health,.mc-channels,
  .mc-tablewrap,.db-details,.db-modal>*,.ws-pane,.sf-ws,.ws-con,.ws-agent,.ws-canvas,
  .db-split>*,.sf-ficha,.msg-card,.db-empty,.mc-welcome,.gen-card,.db-plan){
  background:linear-gradient(150deg,rgba(255,255,255,.10),rgba(255,255,255,.035) 55%,rgba(255,255,255,.07))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 24px 50px -28px rgba(0,0,0,.72),
    0 8px 18px -12px rgba(0,0,0,.5)!important;
  backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);
  color:var(--ink)!important}

html.sf-seda body.sf-taller[data-cintas="panel"] :is(.gen-card,.db-card,.mc-card):hover{
  transform:translateY(-3px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 34px 64px -30px rgba(0,0,0,.8),0 10px 22px -12px rgba(0,0,0,.55)!important}

html.sf-seda body.sf-taller[data-cintas="panel"] .db-rail{
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04))!important;
  border-right:1px solid rgba(255,255,255,.12)!important;
  box-shadow:14px 0 40px -30px rgba(0,0,0,.7)}
html.sf-seda body.sf-taller[data-cintas="panel"] .db-top{
  background:rgba(20,23,30,.72)!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 14px 34px -30px rgba(0,0,0,.7)}

html.sf-seda body.sf-taller[data-cintas="panel"] :is(.db-nav button:hover,.db-nav button.on){background:rgba(255,255,255,.09)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(.db-nav button>.ic,.gen-ico,.db-brand .sf-logo){filter:drop-shadow(0 6px 10px rgba(0,0,0,.5))}

@media (prefers-reduced-motion:reduce){
  html.sf-seda body.sf-taller[data-cintas="panel"] :is(.gen-card,.db-card,.mc-card):hover{transform:none}
}

/* ---------- PARTE 2: LOGIN (body.lc-body.lq-body sin .lc-registro) ---------- */
html.sf-seda:has(body.lc-body.lq-body:not(.lc-registro)){background:#0F1116!important}
html.sf-seda body.lc-body.lq-body:not(.lc-registro){
  --lc-ink:#EDEFF4; --lq-ink:#EDEFF4; --lq-soft:#AEB6C6;
  --ink:#EDEFF4; --ink-2:#C7CCD7; --muted:#9AA2B1; --faint:#6E7686;
  color-scheme:dark;
  background:#0F1116!important;
  color:var(--ink)!important}

/* Panel: superficie oscura solida (FASE 19: sin desenfoque de fondo) */
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel{
  background:linear-gradient(150deg,rgba(26,30,39,.78),rgba(16,18,24,.62) 55%,rgba(22,24,32,.72))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 34px 80px -34px rgba(0,0,0,.85)!important}
html.sf-seda:has(body.lc-body.lq-body:not(.lc-registro)) .lc-panel::before{
  background:linear-gradient(270deg,rgba(18,21,28,.86) 0,rgba(18,21,28,.72) 46%,rgba(18,21,28,.28) 68%,rgba(18,21,28,0) 88%)!important;
  -webkit-mask:linear-gradient(270deg,transparent 0,#000 9%,#000 50%,rgba(0,0,0,.7) 72%,transparent 100%),linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)!important;
  mask:linear-gradient(270deg,transparent 0,#000 9%,#000 50%,rgba(0,0,0,.7) 72%,transparent 100%),linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)!important}

/* Texto claro */
html.sf-seda body.lc-body.lq-body:not(.lc-registro) :is(.lc-h1,.lg-panel-title,.lc-panel .fg-brand,.lc-panel .lg-alt){color:var(--lq-ink)}
html.sf-seda body.lc-body.lq-body:not(.lc-registro) :is(.lc-sub,.lg-panel-hint,.lc-panel .fg-back,.lc-panel .lg-copy,.lc-panel .fg-legal a,.lc-panel .lg-step i,.lc-panel .lg-field label){color:var(--lq-soft)!important}

/* Campos y botones */
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel :is(.lg-input,.lg-pass-wrap){
  background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.18)!important;color:var(--lq-ink)!important}
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel :is(.lg-input,.lg-pass-wrap) :is(input,.lg-eye){
  color:var(--lq-ink)!important}
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel .lg-input::placeholder{color:#7C8698!important}
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel .lg-btn.ghost{
  background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.18)!important;color:var(--lq-ink)!important}
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel .lg-step b{
  background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.20)!important;color:var(--lq-ink)!important}
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel .lg-step i{color:var(--lq-soft)!important}
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel .lg-btn.primary{
  box-shadow:inset 0 1.5px 0 rgba(255,255,255,.28),0 16px 34px -16px rgba(47,123,255,.55)!important}

/* ---------- PARTE 3: LANDING (body[data-mate-page="landing"]) ---------- */
html.sf-seda:has(body[data-mate-page="landing"]){background:#0F1116!important}
html.sf-seda body[data-mate-page="landing"]{
  --bg:#12141A; --surface:#1A1D25; --surface-2:#20242E; --sunken:#0E1015;
  --line:rgba(255,255,255,.12); --line-2:rgba(255,255,255,.22);
  --ink:#EDEFF4; --ink-2:#C7CCD7; --muted:#9AA2B1; --faint:#6E7686;
  --accent:#6EA8FF; --accent-ink:#9DC3FF; --accent-bg:#1A2536;
  --red-bg:#3A1E1F; --red:#F19A97; --blue-bg:#16283A; --blue:#8CC4EA;
  --green-bg:#1C2B1D; --green:#8FCB93; --yellow-bg:#352A10; --yellow:#E8BE63;
  --fx-rgb:110,168,255; --fx-a:#6EA8FF; --fx-b:#0A84FF; --fx-c:#00B8A9; --fx-d:#A855F7;
  color-scheme:dark;
  background:#0F1116!important;
  color:var(--ink)!important}

/* Barra superior y pie: opacos (sin desenfoque no hay nada que difuminar) */
html.sf-seda body[data-mate-page="landing"] :is(.pub-top,.pub-footer){
  background:#0F1116!important;
  border-color:rgba(255,255,255,.12)!important}

/* Superficies: vidrio oscuro con sombra de profundidad */
html.sf-seda body[data-mate-page="landing"] :is(.lp-card,.lp-step,.lp-tile,.pub-feat,.pub-plan,.lp-plan,.pub-cta-solo,.pub-hero-visual){
  background:linear-gradient(150deg,rgba(255,255,255,.10),rgba(255,255,255,.035) 55%,rgba(255,255,255,.07))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 26px 54px -28px rgba(0,0,0,.8)!important}
html.sf-seda body[data-mate-page="landing"] .lp-plan.pop{
  background:linear-gradient(160deg,rgba(255,255,255,.16),rgba(110,168,255,.10))!important;
  border-color:rgba(110,168,255,.42)!important}
html.sf-seda body[data-mate-page="landing"] :is(.lp-demo,.lp-plan .pub-ghost,.pub-ghost,.fg-power){
  background:rgba(255,255,255,.07)!important;color:var(--ink)!important;border-color:rgba(255,255,255,.20)!important}
html.sf-seda body[data-mate-page="landing"] .lp-collage .ph{background:#1B1F27}
html.sf-seda body[data-mate-page="landing"] .lp-chip{
  background:rgba(18,21,28,.92)!important;border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 18px 40px -22px rgba(0,0,0,.8)!important}

/* ---------- PARTE 4: PRECIOS (body[data-mate-page="precios"]) ---------- */
html.sf-seda:has(body[data-mate-page="precios"]){background:#0F1116!important}
html.sf-seda body[data-mate-page="precios"]{
  --bg:#12141A; --surface:#1A1D25; --surface-2:#20242E; --sunken:#0E1015;
  --line:rgba(255,255,255,.12); --line-2:rgba(255,255,255,.22);
  --ink:#EDEFF4; --ink-2:#C7CCD7; --muted:#9AA2B1; --faint:#6E7686;
  --accent:#6EA8FF; --accent-ink:#9DC3FF; --accent-bg:#1A2536;
  --red-bg:#3A1E1F; --red:#F19A97; --blue-bg:#16283A; --blue:#8CC4EA;
  --green-bg:#1C2B1D; --green:#8FCB93; --yellow-bg:#352A10; --yellow:#E8BE63;
  --fx-rgb:110,168,255; --fx-a:#6EA8FF; --fx-b:#0A84FF; --fx-c:#00B8A9; --fx-d:#A855F7;
  color-scheme:dark;
  background:#0F1116!important;
  color:var(--ink)!important}

/* Barra superior y pie: opacos */
html.sf-seda body[data-mate-page="precios"] :is(.pub-top,.pub-footer){
  background:#0F1116!important;
  border-color:rgba(255,255,255,.12)!important}

/* Planes: superficie oscura con sombra de profundidad */
html.sf-seda body[data-mate-page="precios"] :is(.pub-plan,.lp-plan){
  background:linear-gradient(150deg,rgba(255,255,255,.10),rgba(255,255,255,.035) 55%,rgba(255,255,255,.07))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 26px 54px -28px rgba(0,0,0,.8)!important;
  color:var(--ink)!important}
html.sf-seda body[data-mate-page="precios"] :is(.pub-plan.pop,.lp-plan.pop){
  background:linear-gradient(160deg,rgba(255,255,255,.16),rgba(110,168,255,.10))!important;
  border-color:rgba(110,168,255,.42)!important}
html.sf-seda body[data-mate-page="precios"] :is(.pub-switch,.pub-toggle,.pub-eyebrow,.pub-ghost,.fg-power,.pub-note,.pub-meta){
  background:rgba(255,255,255,.07)!important;color:var(--ink)!important;border-color:rgba(255,255,255,.20)!important}
html.sf-seda body[data-mate-page="precios"] .pub-switch.on{background:var(--accent-bg)!important;border-color:var(--accent)!important}
html.sf-seda body[data-mate-page="precios"] :is(.pub-price,.pub-per,.pub-kicker){color:var(--ink)!important}
html.sf-seda body[data-mate-page="precios"] .pub-cta.accent{color:var(--sobre-acento)!important}

/* ---------- PARTE 5: CREAR CUENTA / REGISTRO (body.lc-registro) ---------- */
html.sf-seda:has(body.lc-registro){background:#0F1116!important}
/* Selector con clase extra: sf-login-liquid.css pone body{background:#fff!important}
   con especificidad (0,3,2); esta regla necesita superarla (0,4,2). */
html.sf-seda body.lc-body.lq-body.lc-registro{
  --lc-ink:#EDEFF4; --lq-ink:#EDEFF4; --lq-soft:#AEB6C6;
  --ink:#EDEFF4; --ink-2:#C7CCD7; --muted:#9AA2B1; --faint:#6E7686;
  --line:rgba(255,255,255,.12); --line-2:rgba(255,255,255,.22);
  color-scheme:dark;
  background:#0F1116!important;
  color:var(--ink)!important}

html.sf-seda body.lc-registro .lc-panel{
  background:linear-gradient(150deg,rgba(26,30,39,.78),rgba(16,18,24,.62) 55%,rgba(22,24,32,.72))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 34px 80px -34px rgba(0,0,0,.85)!important}
html.sf-seda:has(body.lc-registro) .lc-panel::before{
  background:linear-gradient(270deg,rgba(18,21,28,.86) 0,rgba(18,21,28,.72) 46%,rgba(18,21,28,.28) 68%,rgba(18,21,28,0) 88%)!important;
  -webkit-mask:linear-gradient(270deg,transparent 0,#000 9%,#000 50%,rgba(0,0,0,.7) 72%,transparent 100%),linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)!important;
  mask:linear-gradient(270deg,transparent 0,#000 9%,#000 50%,rgba(0,0,0,.7) 72%,transparent 100%),linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)!important}

/* Textos claros */
html.sf-seda body.lc-registro :is(.fg-step h1,.fg-brand,.fg-back,.fg-pill){color:var(--lq-ink)}
html.sf-seda body.lc-registro :is(.fg-sub,.fg-field label,.fg-legal a,.fg-status,.fg-chk,.fg-link){color:var(--lq-soft)!important}

/* Campos y controles */
html.sf-seda body.lc-registro .lc-panel :is(.fg-input,.fg-coderow){
  background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.18)!important;color:var(--lq-ink)!important}
html.sf-seda body.lc-registro .lc-panel .fg-input::placeholder{color:#7C8698!important}
html.sf-seda body.lc-registro .lc-panel .fg-power{
  background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.18)!important;color:var(--lq-ink)!important}
html.sf-seda body.lc-registro .lc-panel .fg-power.on{
  background:rgba(110,168,255,.14)!important;border-color:rgba(110,168,255,.55)!important}
html.sf-seda body.lc-registro .lc-panel .fg-btn:not(.accent){
  background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.18)!important;color:var(--lq-ink)!important}
html.sf-seda body.lc-registro .lc-panel .fg-btn.accent{
  box-shadow:inset 0 1.5px 0 rgba(255,255,255,.28),0 16px 34px -16px rgba(47,123,255,.55)!important}
html.sf-seda body.lc-registro .lc-panel .fg-step b{
  background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.20)!important;color:var(--lq-ink)!important}

/* ================================================================
   FASE 18d (2026-10-31) — CONTRASTE DEL CRISTAL EN OSCURO MATE
   El cristal se ve "todo blanco" y el texto se perdia. Causas reales
   detectadas con scripts/audit_contraste.py (contraste calculado en el
   navegador, no a ojo):
     1) Tokens claros heredados (--surface, --faint, --accent, semanticos).
     2) Superficies blancas con !important (chips, cabeceras de tabla).
     3) Fallback sin backdrop-filter / reduced-transparency: #F6F8FC (blanco).
     4) Enlaces y badges con color fijo de la version clara.
   Regla: el cristal usa background-COLOR oscuro translucido + una capa
   de luz (background-image). Asi el texto siempre tiene contraste real.
   ================================================================ */

/* ---------- 1) Tokens oscuros completos (los 5 ambitos del producto) ---------- */
html.sf-seda body.sf-taller[data-cintas="panel"],
html.sf-seda body[data-mate-page],
html.sf-seda body.lc-body.lq-body:not(.lc-registro){
  --bg:#0F1218; --surface:rgba(22,26,34,.86); --surface-2:rgba(28,33,42,.92); --sunken:#0B0E13;
  --line:rgba(255,255,255,.14); --line-2:rgba(255,255,255,.24);
  --ink:#F2F4F8; --ink-2:#CBD1DC; --muted:#A6ADBB; --faint:#8E97A7;
  --accent:#6EA8FF; --accent-ink:#9DC3FF; --accent-bg:rgba(110,168,255,.16);
  --sobre-acento:#0B0E13;
  --red:#F19A97; --red-bg:rgba(241,154,151,.14);
  --green:#8FCB93; --green-bg:rgba(143,203,147,.14);
  --yellow:#E8BE63; --yellow-bg:rgba(232,190,99,.14);
  --blue:#8CC4EA; --blue-bg:rgba(140,196,234,.14);
  --glass:rgba(255,255,255,.06); --glass-2:rgba(255,255,255,.09); --campo:rgba(255,255,255,.05);
  --hueso:var(--ink); --hueso-2:var(--ink-2); --hueso-3:var(--muted);
  --chispa:var(--ink); --chispa-ink:var(--accent-ink); --chispa-dim:rgba(255,255,255,.08);
  --bien:var(--green); --bien-ink:var(--green);
  --mal:var(--red); --mal-ink:var(--red);
  --aviso:var(--yellow); --aviso-ink:var(--yellow);
  --punto-cian:var(--accent); --punto-naranja:var(--yellow); --punto-rojo:var(--red); --pico-cian:var(--accent);
  --fx-a:#6EA8FF; --fx-b:#0A84FF; --fx-c:#00B8A9; --fx-d:#A855F7; --fx-rgb:110,168,255;
  --lc-ink:#F2F4F8; --lq-ink:#F2F4F8; --lq-soft:#B3BBC9;
  --holo-glass:linear-gradient(160deg,rgba(30,35,45,.82),rgba(13,15,21,.92));
  --holo-glow:0 24px 60px -28px rgba(var(--fx-rgb),.30),0 1px 0 rgba(255,255,255,.06) inset;
  --foco:0 0 0 3px rgba(110,168,255,.40);
  color-scheme:dark}

/* ---------- 2) Cristal con base oscura: el texto nunca se pierde ---------- */
html.sf-seda body.sf-taller[data-cintas="panel"] :is(
  .db-rail,.db-top,.db-card,.mc-card,.mc-kpis,.mc-chart-card,.mc-health,.mc-channels,
  .mc-tablewrap,.db-details,.db-modal>*,.ws-pane,.sf-ws,.ws-con,.ws-agent,.ws-canvas,
  .db-split>*,.sf-ficha,.msg-card,.db-empty,.mc-welcome,.gen-card,.db-plan,.db-tpl,.db-estado,
  .cx-card,.db-stats>div,.db-metrica,.db-inv-card,.db-alert-item,.db-voice-box,.opp-card,.sfc-box),
html.sf-seda body[data-mate-page] :is(
  .lp-card,.lp-step,.lp-tile,.pub-feat,.pub-plan,.lp-plan,.pub-cta-solo,.pub-hero-visual,
  .fg-card,.fg-power,.lp-demo,.sf-cookie),
html.sf-seda body.lc-body.lq-body:not(.lc-registro) :is(.lc-panel,.lg-card,.fg-card){
  background-color:rgba(17,20,26,.74)!important;
  background-image:linear-gradient(150deg,rgba(255,255,255,.05),rgba(255,255,255,.015) 55%,rgba(255,255,255,.03))!important;
  border-color:rgba(255,255,255,.16)!important}

/* ---------- 3) Cabeceras de tabla, chips y badges ---------- */
html.sf-seda body.sf-taller[data-cintas="panel"] :is(.mc-table,.db-table) thead th{
  background:rgba(255,255,255,.045)!important;color:var(--muted)!important;
  border-bottom-color:var(--line)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(.mc-table,.db-table) tbody tr:hover{
  background:rgba(255,255,255,.05)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(.ws-chip,.mc-count,.sf-sug,.mc-badge-health){
  background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.18)!important;
  color:var(--ink)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .mc-badge-health{color:var(--green)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .mc-badge-health.warn{color:var(--yellow)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .mc-badge-health.bad{color:var(--red)!important}

/* ---------- 4) Enlaces, skip y cookie banner ---------- */
html.sf-seda body.sf-taller[data-cintas="panel"] a{color:var(--accent-ink)}
html.sf-seda body[data-mate-page] a,
html.sf-seda body.lc-body.lq-body:not(.lc-registro) a{color:var(--accent-ink)}
html.sf-seda .sf-skip{background:var(--ink)!important;color:var(--bg)!important}
html.sf-seda .sf-cookie{
  background-color:#10131A!important;background-image:none!important;
  border-color:rgba(255,255,255,.18)!important;color:var(--ink)!important;box-shadow:var(--holo-glow)!important}
html.sf-seda .sf-cookie p{color:var(--ink-2)!important}
html.sf-seda .sf-cookie a{color:var(--accent-ink)!important}
html.sf-seda .sf-cookie-btns button{color:var(--ink)!important;border-color:rgba(255,255,255,.24)!important}
html.sf-seda .sf-cookie-btns button.accent{background:var(--accent)!important;color:#0B0E13!important;border-color:var(--accent)!important}

/* ---------- 5) Botones deshabilitados: texto legible, no negro sobre negro ---------- */
html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel .lg-btn.primary:disabled,
html.sf-seda body.lq-body.lc-registro .lc-panel .fg-btn.accent:disabled{
  background:rgba(255,255,255,.10)!important;color:var(--muted)!important;box-shadow:none!important;opacity:1!important}

/* sf-login-liquid.css fija #2B3347 y #4C3E58 (negros del tema claro) con
   especificidad (0,4,2)/(0,5,2): hay que superarla con la misma clase de cuerpo. */
html.sf-seda body.lq-body.lc-registro .lc-panel :is(.fg-back,.fg-copy,.fg-legal a,.fg-sub,.fg-field label,.fg-status,.fg-chk,.fg-link){
  color:var(--lq-soft)!important}
html.sf-seda body.lq-body.lc-registro .lc-panel :is(.fg-brand,.fg-step h1,.fg-pill){color:var(--lq-ink)!important}
html.sf-seda body.lq-body.lc-registro .lc-panel .lg-step i{color:var(--lq-soft)!important}

/* sf-login-liquid.css (0,5,2) pone campos y plan cards con degradado blanco:
   hay que usar el mismo selector de cuerpo para ganar el pulso. */
html.sf-seda body.lq-body.lc-registro .lc-panel :is(.fg-input,.fg-coderow,.fg-power){
  background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.18)!important;
  border-radius:16px!important;color:var(--lq-ink)!important}
html.sf-seda body.lq-body.lc-registro .lc-panel :is(.fg-input,.fg-coderow)::placeholder{color:#8E97A7!important}
html.sf-seda body.lq-body.lc-registro .lc-panel .fg-power.on{
  background:rgba(110,168,255,.14)!important;border-color:rgba(110,168,255,.55)!important}
html.sf-seda body.lq-body.lc-registro .lc-panel .fg-btn.accent:disabled{
  background:rgba(255,255,255,.10)!important;color:var(--muted)!important;
  box-shadow:none!important;opacity:1!important}
html.sf-seda body.lq-body .lc-panel .lg-card .lg-btn.primary:disabled{
  background:rgba(255,255,255,.10)!important;color:var(--muted)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;text-shadow:none!important}

/* ---------- 6) Sin soporte de cristal: fondo oscuro opaco, nunca blanco ---------- */
@media (prefers-reduced-transparency:reduce){
  html.sf-seda body.sf-taller[data-cintas="panel"] :is(
    .db-rail,.db-top,.db-card,.mc-card,.mc-kpis,.mc-tablewrap,.db-details,.sf-ws,.ws-con,
    .ws-pane,.ws-canvas,.db-modal>*,.msg-card,.mc-welcome,[role=dialog],[role=menu]),
  html.sf-seda body[data-mate-page] :is(.lp-card,.lp-step,.lp-tile,.pub-feat,.pub-plan,.lp-plan,.fg-card,.sf-cookie),
  html.sf-seda body.lc-body.lq-body:not(.lc-registro) :is(.lc-panel,.lg-card),
  html.sf-seda body.lc-registro :is(.lc-panel,.fg-card){
    background-color:#141821!important;background-image:none!important;
    -webkit-backdrop-filter:none;backdrop-filter:none}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  html.sf-seda body.sf-taller[data-cintas="panel"] :is(
    .db-rail,.db-top,.db-card,.mc-card,.mc-kpis,.mc-tablewrap,.sf-ws,.msg-card,.mc-welcome),
  html.sf-seda body[data-mate-page] :is(.lp-card,.lp-step,.lp-tile,.pub-feat,.pub-plan,.lp-plan,.fg-card),
  html.sf-seda body.lc-body.lq-body:not(.lc-registro) .lc-panel,
  html.sf-seda body.lc-registro .lc-panel{
    background-color:#141821!important;background-image:none!important;
    -webkit-backdrop-filter:none;backdrop-filter:none}
}

/* ---------- 7) Cristal oscuro real: cada superficie clara del dashboard
       (liquid glass de fondo claro) se invierte a vidrio oscuro ---------- */
html.sf-seda body.sf-taller[data-cintas="panel"] :is(
  .db-btn,.mc-btn,.mc-btn-ghost,.db-iconbtn,.ws-tab-ghost,.mc-linkbtn,.sf-ws-plus,.sf-asin-go,.sf-ws-asin){
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05))!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:inset 0 1.5px 0 rgba(255,255,255,.14),0 10px 22px -14px rgba(0,0,0,.65)!important;
  color:var(--ink)!important}

html.sf-seda body.sf-taller[data-cintas="panel"] :is(
  .db-in,.db-ta,.mc-guard-form input,.mc-guard-form select,.mc-guard-form textarea,
  .sf-asin-in,.sf-ws textarea,.sf-ws input[type=text],select.db-in,.msg-input){
  background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;color:var(--ink)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(
  .db-in,.db-ta,.sf-asin-in,.sf-ws textarea,.msg-input)::placeholder{color:#8E97A7!important}

html.sf-seda body.sf-taller[data-cintas="panel"] :is(.db-tabs,.ws-tabs,.db-range,.mc-range,.msg-filtros){
  background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:none!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(
  .db-tab.on,.ws-tab.on,.db-range button.on,.mc-range button.on,
  .mc-range button[aria-pressed=true],.msg-filtros button.on,.db-tab[aria-selected=true]){
  background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.26)!important;color:var(--ink)!important}

html.sf-seda body.sf-taller[data-cintas="panel"] .db-nav button:hover{
  background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.20)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .db-nav button.on{
  background:linear-gradient(150deg,rgba(255,255,255,.14),rgba(255,255,255,.04))!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:inset 4px 0 0 var(--vc,#6EA8FF),0 14px 24px -16px rgba(0,0,0,.70)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .db-navlbl{color:var(--faint)!important}

html.sf-seda body.sf-taller[data-cintas="panel"] .mc-q{
  background:linear-gradient(150deg,rgba(255,255,255,.10),rgba(255,255,255,.03))!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:inset 0 3px 0 var(--q),0 16px 28px -20px rgba(0,0,0,.80)!important}

html.sf-seda body.sf-taller[data-cintas="panel"] :is(.db-card,.mc-card,.sf-ws,.ws-con,.db-details) :is(
  .db-card,.mc-card,.ws-sec,.ws-grp,.mc-empty,.db-details){border-color:rgba(255,255,255,.14)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(.db-plan,.db-me){border-color:rgba(255,255,255,.16)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .db-ava{border-color:rgba(255,255,255,.30)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(.db-card,.mc-card,.mc-kpis,.sf-ws,.mc-welcome)::after{
  background:radial-gradient(90% 55% at 6% -12%,rgba(255,255,255,.16),rgba(255,255,255,0) 55%)}

/* Mensajes */
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-list{background:rgba(255,255,255,.04)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-item:hover{background:rgba(255,255,255,.08)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-item.on{background:rgba(255,255,255,.14)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-thread{background:rgba(255,255,255,.04)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-thread-header{background:rgba(255,255,255,.06)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-composer{background:rgba(255,255,255,.06)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-vacio-ico{
  background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.16)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-sep{
  background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.16)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .msg-row.them .msg-bubble{
  background:rgba(30,35,45,.92)!important;border-color:rgba(255,255,255,.14)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(.msg-ok,.msg-no){
  background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.18)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .db-gal figure{
  background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.14)!important}

/* ---------- 8) Sin blancos translucidos (lavan el contenido y rompen el texto) ----------
   sf-seda.css pone .sf-mas/.mc-guard-form/.opp-borrador con rgba(255,255,255,.5)
   y --blanco:#FAF7F1 en botones de la barra de trabajo. En oscuro: cristal oscuro. */
html.sf-seda body.sf-taller[data-cintas="panel"] :is(.sf-mas,.opp-borrador,.mc-guard-form){
  background-color:rgba(17,20,26,.72)!important;
  background-image:linear-gradient(150deg,rgba(255,255,255,.05),rgba(255,255,255,.015))!important;
  border-color:rgba(255,255,255,.16)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] :is(
  .sf-ws-asin,.sf-ws-plus,.sf-ws-bar,.sf-chip,.sf-sug,.gal-selectall,.gal-check){
  background-color:rgba(255,255,255,.08)!important;background-image:none!important;
  border-color:rgba(255,255,255,.18)!important;color:var(--ink)!important}

/* sf-seda.css fija #7A4A06 (marrón del tema claro) en .db-st.warn */
html.sf-seda body.sf-taller[data-cintas="panel"] .db-st.warn{color:var(--yellow)!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .db-st.ok{color:var(--green)!important}

/* ================================================================
   PARTE 6 · FASE 19 (2026-11-01) — FONDO SOLIDO, SIN RUIDO NI BLUR
   Las 4 páginas públicas (landing, precios, registro, acceso) se
   retratan en un fondo SOLIDO obsidiana (#0F1116):
     - fuera el lienzo de cintas, el grano, el velo y la refracción;
     - fuera el desenfoque de fondo: sobre un color plano no aporta
       nada visual, cuesta GPU y ensucia los bordes del texto;
     - la barra superior y el pie quedan opacos (sin desenfoque no
       hay nada que difuminar y el contenido no debe verse al pasar);
     - fuera la malla animada de sf-seda.css (radios naranja/teal).
   El dashboard (PARTE 1) no se toca: ahí el cristal sigue siendo
   cristal porque hay contenido real detrás.
   ================================================================ */

/* 1) Sin desenfoque en ninguna superficie pública */
html.sf-seda body.lq-body *,
html.sf-seda body[data-mate-page] *{
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important}

/* 2) Fuera la malla animada de fondo de sf-seda.css */
html.sf-seda body.lq-body::before,
html.sf-seda body[data-mate-page]::before{display:none!important}

/* 3) Suelo sólido: el fondo no tiene degradado ni textura */
html.sf-seda:has(body.lq-body){background:#0F1116!important}
html.sf-seda body.lc-body.lq-body,
html.sf-seda body.lq-pub{background:#0F1116!important}

/* 4) Barra y pie opacos en las 4 públicas */
html.sf-seda body.lq-body :is(.pub-top,.pub-footer),
html.sf-seda body[data-mate-page] :is(.pub-top,.pub-footer){
  background:#0F1116!important;border-color:rgba(255,255,255,.12)!important}

/* 5) Campos de acceso: cajas oscuras con borde (sin el subrayado de la hoja clara) */
html.sf-seda body.lc-body.lq-body .lc-panel :is(.lg-input,.fg-input){
  border:1px solid rgba(255,255,255,.18)!important;border-radius:16px!important;
  background:rgba(255,255,255,.06)!important;color:var(--lq-ink)!important;box-shadow:none!important;
  padding:0 16px!important}

/* 6) Anillo de foco en los campos: sin desenfoque, el foco tiene que verse */
html.sf-seda body.lc-body.lq-body .lc-panel :is(.lg-input,.fg-input):focus,
html.sf-seda body.lc-body.lq-body .lc-panel :is(.lg-input,.fg-input):focus-visible{
  border-color:var(--accent)!important;box-shadow:var(--foco)!important;outline:0}

/* 7) CTA de acceso con los tokens del tema oscuro (nada de paleta clara heredada) */
html.sf-seda body.lc-body.lq-body .lc-panel .lg-btn.primary,
html.sf-seda body.lc-body.lq-body.lc-registro .lc-panel .fg-btn.accent{
  background:linear-gradient(135deg,var(--accent),var(--fx-b))!important;color:#fff!important;
  box-shadow:inset 0 1.5px 0 rgba(255,255,255,.28),0 16px 34px -16px rgba(110,168,255,.55)!important}
html.sf-seda body.lc-body.lq-body .lc-panel .lg-step[aria-current="step"] b,
html.sf-seda body.lc-body.lq-body.lc-registro .fg-pill{
  background:linear-gradient(135deg,var(--accent),var(--fx-b))!important;color:#fff!important}
html.sf-seda body.sf-taller[data-cintas="panel"] .db-st{background:var(--red-bg)!important;color:var(--red)!important}

/* ================================================================
   PARTE 7 · FASE 19 (2026-11-02) — LANDING: ESCENA DE PRODUCTO Y COPY
   La portada pasa a vender una promesa concreta: titular corto, un solo
   texto de CTA ("Empieza gratis 7 días"), la escena del panel marcada
   «Ejemplo» y los beneficios antes que las características.
   Reglas: superficies PLANAS (sin degradado ni halo decorativo), fotos
   sin lavado de color, chips sin arcoíris y los canales que no están
   disponibles atenuados y etiquetados «en camino».
   ================================================================ */

/* 1) Titular y entradilla: una promesa, legible de un vistazo */
html.sf-seda body[data-mate-page="landing"] .lp-title{
  font-size:clamp(34px,4.8vw,62px)!important;line-height:1.03!important;
  max-width:18ch!important;letter-spacing:-.035em!important}
html.sf-seda body[data-mate-page="landing"] .lp-lede{max-width:48ch!important;font-size:18px!important;line-height:1.55!important}

/* 2) CTA de la cabecera: el mismo botón, sin el subrayado de enlace */
html.sf-seda body[data-mate-page="landing"] .pub-nav .pub-nav-cta{
  background:var(--accent)!important;background-image:none!important;border-color:var(--accent)!important;
  color:var(--sobre-acento)!important;padding:9px 16px!important;border-radius:12px!important;font-weight:650!important}
html.sf-seda body[data-mate-page="landing"] .pub-nav .pub-nav-cta:hover{
  background:var(--accent-ink)!important;border-color:var(--accent-ink)!important;filter:none!important}

/* 3) Canales: los de hoy y los que están en camino, dicho sin adornos */
html.sf-seda body[data-mate-page="landing"] .pub-proof{
  margin:16px 0 0!important;color:var(--muted)!important;font-size:13.5px!important;line-height:1.5!important;letter-spacing:0!important}

/* 4) Escena de producto: superficie plana, sin degradados ni halos */
html.sf-seda body[data-mate-page="landing"] .pub-hero-visual.hv{
  background:#141821!important;border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 26px 54px -32px rgba(0,0,0,.9)!important}
html.sf-seda body[data-mate-page="landing"] .hv-panel{
  background:#10131A!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:none!important}
html.sf-seda body[data-mate-page="landing"] .hv-t::after{
  background:var(--line-2)!important;background-image:none!important;animation:none!important;opacity:1!important}
html.sf-seda body[data-mate-page="landing"] .hv-dot{box-shadow:none!important}
html.sf-seda body[data-mate-page="landing"] .hv-kpis div{
  background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.12)!important}
html.sf-seda body[data-mate-page="landing"] .hv-daisy{
  background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.12)!important}
html.sf-seda body[data-mate-page="landing"] .hv-ping{
  background:#151922!important;border-color:rgba(255,255,255,.14)!important;box-shadow:none!important}
html.sf-seda body[data-mate-page="landing"] .hv-ping span{color:var(--green)!important}
html.sf-seda body[data-mate-page="landing"] .hv-ex{color:var(--ink-2)!important;border-color:rgba(255,255,255,.24)!important}

/* 5) Canales que aún no están disponibles: atenuados y etiquetados */
html.sf-seda body[data-mate-page="landing"] .hv-t.off svg.ic-cristal{opacity:.55;filter:grayscale(.5)}
html.sf-seda body[data-mate-page="landing"] .hv-t.off span{color:var(--muted)!important}
html.sf-seda body[data-mate-page="landing"] .hv-off{
  font:500 10px var(--font-m);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
html.sf-seda body[data-mate-page="landing"] .hv-tiles[data-row=top]{grid-template-columns:repeat(2,minmax(0,1fr))}
html.sf-seda body[data-mate-page="landing"] .hv-tiles[data-row=bot]{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){
  html.sf-seda body[data-mate-page="landing"] .hv-tiles[data-row=top]{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.sf-seda body[data-mate-page="landing"] .hv-tiles[data-row=bot]{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.sf-seda body[data-mate-page="landing"] .hv-t svg.ic-cristal{width:52px;height:52px}
}

/* 6) Beneficios: titulares contenidos, fotos sin lavado y chips planos */
html.sf-seda body[data-mate-page="landing"] .lp-cap h3{
  font-size:clamp(26px,3vw,40px)!important;line-height:1.08!important;letter-spacing:-.03em!important}
html.sf-seda body[data-mate-page="landing"] .lp-cap p{font-size:17px!important}
html.sf-seda body[data-mate-page="landing"] .lp-cap-foto::after{display:none!important}
html.sf-seda body[data-mate-page="landing"] .lp-cap-foto{
  box-shadow:0 34px 70px -40px rgba(0,0,0,.9)!important}
html.sf-seda body[data-mate-page="landing"] .lp-pills span{
  background:rgba(255,255,255,.06)!important;color:var(--ink-2)!important;
  border:1px solid rgba(255,255,255,.14)!important}

/* 7) Pasos: tarjetas planas y números sin halo */
html.sf-seda body[data-mate-page="landing"] .lp-step{
  background-color:#141821!important;background-image:none!important;
  border-color:rgba(255,255,255,.14)!important;box-shadow:none!important}
html.sf-seda body[data-mate-page="landing"] .lp-dot{
  background:var(--accent)!important;color:var(--sobre-acento)!important;box-shadow:none!important}
html.sf-seda body[data-mate-page="landing"] .lp-steps::before{
  background:var(--line-2)!important;box-shadow:none!important}

/* 8) Pie: descripción del producto legible y a la izquierda */
html.sf-seda body[data-mate-page="landing"] .pub-footer .pub-note{
  text-align:left!important;color:var(--muted)!important;font-size:13px!important;line-height:1.55!important;margin:0!important}
html.sf-seda body[data-mate-page="landing"] .pub-footer .row>div span{color:var(--muted);font-size:13px}

/* ================================================================
   PARTE 8 · FASE 19 (2026-11-02) — PRECIOS: EL PRECIO MANDA
   En /pricing el precio grande es el protagonista: el total anual y
   el ahorro se ven siempre (calculados con los precios reales de la
   API), el plan destacado se marca como "Recomendada" (no "Más
   elegido": no hay datos de clientes que lo respalden) y el CTA de
   la cabecera es el mismo que el de la landing.
   ================================================================ */

/* 1) Titular del hero: una promesa corta */
html.sf-seda body[data-mate-page="precios"] .lp-title{
  font-size:clamp(34px,4.8vw,58px)!important;line-height:1.04!important;
  max-width:20ch!important;letter-spacing:-.035em!important}
html.sf-seda body[data-mate-page="precios"] .lp-lede{max-width:50ch!important;font-size:18px!important;line-height:1.55!important}

/* 2) CTA de la cabecera: el mismo botón que en la landing */
html.sf-seda body[data-mate-page="precios"] .pub-nav .pub-nav-cta{
  background:var(--accent)!important;background-image:none!important;border-color:var(--accent)!important;
  color:var(--sobre-acento)!important;padding:9px 16px!important;border-radius:12px!important;font-weight:650!important}
html.sf-seda body[data-mate-page="precios"] .pub-nav .pub-nav-cta:hover{
  background:var(--accent-ink)!important;border-color:var(--accent-ink)!important;filter:none!important}

/* 2b) El interruptor de periodo se ve como un control (no como texto suelto) */
html.sf-seda body[data-mate-page="precios"] .pub-toggle{
  display:inline-flex!important;align-items:center!important;gap:12px!important;
  padding:9px 16px!important;border:1px solid rgba(255,255,255,.16)!important;
  border-radius:999px!important;background:rgba(255,255,255,.04)!important;
  font-size:14px!important;color:var(--ink-2)!important}
html.sf-seda body[data-mate-page="precios"] .pub-toggle #lblM{color:var(--ink)!important;font-weight:600!important}
html.sf-seda body[data-mate-page="precios"] .pub-toggle .lp-save{color:var(--green)!important;font-weight:700!important}

/* 3) El precio grande manda; debajo, el total anual y el ahorro */
html.sf-seda body[data-mate-page="precios"] .lp-plan .pub-price{
  font-size:clamp(42px,4.6vw,58px)!important;font-weight:760!important;letter-spacing:-.04em!important;
  line-height:1!important;color:var(--ink)!important;margin-top:2px!important}
html.sf-seda body[data-mate-page="precios"] .lp-plan .pub-price small{
  font-size:16px!important;font-weight:500!important;color:var(--muted)!important}
html.sf-seda body[data-mate-page="precios"] .lp-plan .pub-alt{
  font-size:14px!important;line-height:1.45!important;color:var(--ink-2)!important;margin-top:8px!important}
html.sf-seda body[data-mate-page="precios"] .lp-plan .pub-save{
  font-size:13px!important;line-height:1.45!important;font-weight:600!important;color:var(--green)!important}
html.sf-seda body[data-mate-page="precios"] .lp-plan .pub-per{margin-top:2px!important}

/* 4) Plan destacado: se marca, no se inventa */
html.sf-seda body[data-mate-page="precios"] .lp-plan.pop{
  border-color:var(--accent)!important;box-shadow:0 30px 64px -44px rgba(255,91,31,.55)!important}
html.sf-seda body[data-mate-page="precios"] .lp-flag{
  background:var(--accent)!important;color:var(--sobre-acento)!important}

/* 5) Enlace «Ver <plan>» de la sección «¿Cuál es el mío?» */
html.sf-seda body[data-mate-page="precios"] .pub-plan-link{
  color:var(--accent-ink)!important;font-size:14px!important;font-weight:650!important;
  text-decoration:none!important;border-bottom:1px solid rgba(255,91,31,.4)!important;margin-top:4px!important}
html.sf-seda body[data-mate-page="precios"] .pub-plan-link:hover{border-bottom-color:var(--accent-ink)!important}

/* ================================================================
   PARTE 9 · FASE 19 (2026-11-02) — ALTA: MEDIDOR DE CONTRASEÑA
   El alta pide dos campos (correo y contraseña). La contraseña lleva
   un medidor en vivo con las tres reglas reales del servidor
   (8 caracteres, 1 mayúscula, 1 símbolo): barra de tres tramos y la
   lista de requisitos que se van ticking. Sin adornos: si cumple,
   verde y listo.
   ================================================================ */

html.sf-seda body[data-mate-page="registro"] .fg-meter{margin-top:12px!important}
html.sf-seda body[data-mate-page="registro"] .fg-meter-bar i{
  background:rgba(255,255,255,.16)!important;height:5px!important}
html.sf-seda body[data-mate-page="registro"] .fg-meter-bar i.on{background:var(--green)!important}
html.sf-seda body[data-mate-page="registro"] .fg-meter-list li{
  color:var(--muted)!important;font-size:13px!important;line-height:1.4!important}
html.sf-seda body[data-mate-page="registro"] .fg-meter-list li.ok{color:var(--green)!important}
html.sf-seda body[data-mate-page="registro"] .fg-meter.full .fg-meter-bar i{background:var(--green)!important}
