/* ================================================================
   SellerForge · sf-fx.css — capa FORJA sobre sf-forge.css
   Negro puro, texto crema, un acento por paleta y un color fijo por categoría de módulo.
   Sin luces que sigan al ratón, sin desenfoques ni fondos animados (ligero en pantallas y en cámara).
   Se carga DESPUÉS de sf-forge.css. Motion (vendor local) + sf-fx.js animan solo transform/opacity.
   ================================================================ */
html{background:#000}
body{background:transparent!important}

/* Barra de progreso de scroll */
.fx-progress{position:fixed;left:0;top:0;height:2px;width:100%;z-index:400;transform-origin:0 50%;transform:scaleX(0)}

/* ---------- Tarjetas ---------- */
.db-card,.cx-card,.db-stats>div,.db-metrica,.db-inv-card,.db-plan,.pub-feat,.pub-plan,.pub-step,.lg-card,.fg-card,.fg-power,.db-estado,.db-tpl,.db-pers-panel,.db-voice-box,.db-alert-item{
  position:relative;border:1px solid var(--line)!important;transition:border-color .25s var(--ease)}
.db-card:hover,.db-stats>div:hover,.db-metrica:hover,.db-inv-card:hover,.pub-feat:hover,.pub-plan:hover,.pub-step:hover{border-color:var(--line-2)!important}

/* ---------- Tipografía ---------- */
.pub-eyebrow,.pub-kicker,.db-navlbl{letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-family:var(--font-m)}
.fx-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
.fx-word>span{display:inline-block;transform:translateY(110%);opacity:0}
.fx-in .fx-word>span,.fx-in.fx-split .fx-word>span{animation:fx-word .8s var(--ease) both;animation-delay:calc(var(--i,0)*55ms)}
@keyframes fx-word{from{transform:translateY(110%);opacity:0}to{transform:none;opacity:1}}

/* ---------- Botones y campos ---------- */
.pub-cta,.lg-btn.primary,.fg-btn.accent,.db-btn:not(.ghost):not(.danger){position:relative;border:0!important;transition:filter .2s,box-shadow .2s}
.lg-input,.db-in,.db-ta,.db-search input,input.db-in,select.db-in{background:rgba(255,255,255,.04)!important;border:1px solid var(--line-2)!important;color:var(--ink)!important}
.lg-input:focus,.db-in:focus,.db-ta:focus{border-color:var(--fx-a)!important;box-shadow:var(--foco)!important;outline:0}

/* ---------- Públicas ---------- */
.pub-top,.fg-top{border-bottom:1px solid var(--line)!important}
.pub-ticker{border-color:var(--line)!important}
.pub-footer{border-color:var(--line)!important}
.lg-scene-side{position:relative;overflow:hidden;background:transparent!important;border-right:1px solid var(--line)!important}
.lg-step.active{box-shadow:0 0 14px -4px var(--fx-a)}

/* ---------- Dashboard (cliente y admin) ---------- */
.db-rail{border-right:1px solid var(--line)!important}
.db-top{border-bottom:1px solid var(--line)!important}
.db-nav button{position:relative;transition:background .2s,color .2s}
.db-nav button:hover{background:rgba(255,255,255,.05)!important}
.db-nav button.on{color:var(--ink)!important}
.db-nav button.on::before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:3px;border-radius:3px}
.db-live{background:var(--fx-d)!important}
.db-pill{background:rgba(255,255,255,.05)!important;border:1px solid var(--line-2)!important;color:var(--ink)!important}
.db-table th{background:rgba(255,255,255,.035)!important;color:var(--muted)!important;letter-spacing:.08em;text-transform:uppercase;font-size:11px}
.db-table tbody tr{transition:background .15s}
.db-table tbody tr:hover{background:rgba(var(--fx-rgb),.06)!important}
.db-view.on.fx-pop>*{animation:fx-rise .55s var(--ease) both;animation-delay:calc(var(--i,0)*45ms)}
@keyframes fx-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.cs-search kbd,.cs-chip{white-space:nowrap}

/* Revelado: oculto solo con JS activo y sin reduce-motion */
html.fx-js [data-fx-r]:not(.fx-in){opacity:0;transform:translateY(26px)}
html.fx-js [data-fx-r].fx-in{animation:fx-rise .7s var(--ease) both;animation-delay:calc(var(--i,0)*60ms)}
html.fx-js [data-fx-r].fx-split:not(.fx-in){opacity:1;transform:none}
html.fx-js [data-fx-r].fx-split.fx-in{animation:none}

/* Scrollbars */
*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}

/* ---------- Movimiento reducido ---------- */
@media (prefers-reduced-motion:reduce){
  .db-live,.pub-title,.db-head h2,.lg-form-head h1,.lg-form-head h2,.pub-h2{animation:none!important}
  html.fx-js [data-fx-r]:not(.fx-in){opacity:1;transform:none}
  html.fx-js [data-fx-r].fx-in,.db-view.on.fx-pop>*,.fx-in .fx-word>span{animation:none!important;transform:none;opacity:1}
  .fx-word>span{transform:none;opacity:1}
  .fx-progress{display:none}
}

/* ================================================================
   CONSOLA DE ADMINISTRACIÓN (FASE 12 · A2-A8) — clases cs-*
   ================================================================ */
.cs-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.cs-grid>*{grid-column:span 12;min-width:0}
.cs-c4{grid-column:span 4!important}.cs-c5{grid-column:span 5!important}.cs-c7{grid-column:span 7!important}.cs-c12{grid-column:span 12!important}
@media (max-width:1000px){.cs-c4,.cs-c5,.cs-c7{grid-column:span 12!important}}
.cs-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.cs-kpis>div{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:rgba(255,255,255,.02)}
.cs-kpis .v{font:600 24px var(--font-m);color:var(--ink)}
.cs-kpis .lab{font-size:12px;color:var(--muted)}
.cs-search{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:8px;min-width:0;flex:0 1 340px;padding:7px 12px;border:1px solid var(--line-2);border-radius:10px;color:var(--muted);background:rgba(14,14,14,.45)}
.cs-search:hover{border-color:var(--fx-a);color:var(--ink)}
.cs-search:focus-visible{outline:2px solid var(--fx-a);outline-offset:2px}
.cs-search span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cs-search kbd{margin-left:auto}
.cs-search .ic{width:16px;height:16px;flex:none}
.cs-env{font:500 11px var(--font-m);letter-spacing:.14em;padding:5px 10px;border-radius:99px;background:rgba(var(--fx-rgb),.14);color:var(--fx-a);border:1px solid rgba(var(--fx-rgb),.35)}
.cs-banner{margin:0 0 14px;padding:12px 14px;border:1px solid rgba(var(--fx-rgb),.45);background:rgba(var(--fx-rgb),.09);border-radius:10px;color:var(--ink)}
.cs-banner[hidden]{display:none}
.cs-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.cs-chip{all:unset;box-sizing:border-box;cursor:pointer;padding:6px 12px;border:1px solid var(--line-2);border-radius:99px;color:var(--ink-2);font-size:12.5px}
.cs-chip b{font-family:var(--font-m);color:var(--muted);font-weight:500;margin-left:4px}
.cs-chip:hover{border-color:var(--fx-a)}
.cs-chip.on{background:rgba(var(--fx-rgb),.14);border-color:var(--fx-a);color:var(--ink)}
.cs-chip:focus-visible,.cs-click:focus-visible{outline:2px solid var(--fx-a);outline-offset:2px}
.cs-sel{width:auto!important;min-width:140px;flex:0 1 180px}
.cs-click{cursor:pointer}
.cs-matrix td,.cs-matrix th{text-align:center}.cs-matrix td:first-child,.cs-matrix th:first-child{text-align:left}
.cs-act{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:13px}
.cs-act:first-child{border-top:0}
.cs-act .mono{font-family:var(--font-m);color:var(--muted);flex:none}
.cs-h4{margin:18px 0 8px;font:500 11px var(--font-m);letter-spacing:.16em;text-transform:uppercase;color:var(--fx-a)}
.cs-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cs-crumb{font:500 10.5px var(--font-m);letter-spacing:.16em;color:var(--fx-a)}
.cs-drawer{position:fixed;top:3px;right:0;bottom:0;width:min(560px,100vw);z-index:350;background:linear-gradient(180deg,#080808,#040404);border-left:1px solid rgba(var(--fx-rgb),.3);padding:18px 20px 28px;overflow:auto;transform:translateX(100%);transition:transform .28s var(--ease);box-shadow:-30px 0 80px rgba(0,0,0,.6)}
.cs-drawer.on{transform:none}
.cs-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.cs-drawer-head h3{font-size:20px;word-break:break-all}
.cs-scrim{position:fixed;inset:0;z-index:340;background:rgba(2,2,2,.55)}
.cs-palette{position:fixed;inset:0;z-index:420;background:rgba(2,2,2,.6);display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 0}
.cs-palette[hidden],.cs-drawer[hidden],.cs-scrim[hidden]{display:none}
.cs-palette-box{width:min(560px,100%);background:#080808;border:1px solid var(--line-2);border-radius:14px;padding:12px;box-shadow:0 40px 100px rgba(0,0,0,.7)}
.cs-pal-list{display:flex;flex-direction:column;gap:2px;margin-top:8px;max-height:46vh;overflow:auto}
.cs-pal-item{all:unset;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:8px}
.cs-pal-item span{color:var(--muted);font-size:12px}
.cs-pal-item.on,.cs-pal-item:hover{background:rgba(var(--fx-rgb),.12)}
@media (prefers-reduced-motion:reduce){.cs-drawer{transition:none}}
@media (max-width:700px){.cs-search span{display:none}.cs-env{display:none}}

/* 13d-2: efectos de tienda */
.fx-odo{display:inline-flex;height:1.1em;overflow:hidden;line-height:1.1;vertical-align:bottom}
.fx-digit{display:inline-block;height:1.1em;overflow:hidden;position:relative}
.fx-col{display:block;transition:transform .9s cubic-bezier(.16,1,.3,1)}
.fx-col b{display:block;height:1.1em;font-weight:inherit}
.fx-spark{position:fixed;z-index:500;width:8px;height:8px;border-radius:50%;pointer-events:none}
.pub-steps{position:relative}
.pub-steps::before{content:"";position:absolute;left:6%;right:6%;top:34px;height:2px;background:linear-gradient(90deg,var(--fx-a),var(--fx-b),var(--fx-c));box-shadow:0 0 14px var(--fx-a);transform-origin:left;transform:scaleX(0);transition:transform 1.6s cubic-bezier(.65,0,.35,1);pointer-events:none}
.pub-steps.fx-in::before,.fx-in .pub-steps::before{transform:scaleX(1)}
@media (prefers-reduced-motion:reduce){.pub-steps::before{transform:none;transition:none}.fx-col{transition:none}}
@media (max-width:900px){.pub-steps::before{display:none}}

/* A6b: histórico de MRR */
.cs-hist svg{display:block;max-width:100%;height:auto}
.cs-hist text{fill:var(--muted);font:10.5px var(--font-m)}
.cs-hist .cs-grid-l{stroke:var(--line);stroke-width:1}
.cs-hist .cs-area{fill:rgba(var(--fx-rgb),.14)}
.cs-hist .cs-line{stroke:var(--fx-a);stroke-width:2;fill:none}
.cs-hist .cs-line.gap{stroke-dasharray:5 5;opacity:.7}
.cs-hist .cs-dot{fill:var(--fx-a);stroke:var(--bg);stroke-width:1.5}
.cs-hist .cs-dot.last{fill:var(--fx-b);stroke:var(--fx-a);stroke-width:2}
.cs-hist .cs-lbl{fill:var(--ink);font-weight:600;font-size:12px}

/* A8: avisos del administrador dentro de la app del cliente */
.sf-avisos{display:grid;gap:8px;padding:10px 24px 0}
.sf-avisos:empty{display:none}
.sf-aviso{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 14px;border:1px solid var(--line-2);border-radius:10px;background:rgba(var(--fx-rgb),.08);color:var(--ink)}
.sf-aviso.aviso{border-color:rgba(var(--fx-rgb),.55);background:rgba(var(--fx-rgb),.1)}
.sf-aviso b{margin-right:6px}

/* ================================================================
   13c — Iconos «Cristal» (estilo elegido por el dueño, 2026-10-28)
   ================================================================ */
svg.ic-cristal{width:42px;height:42px;flex:none;margin:-5px -2px -5px 0;overflow:visible;fill:none;vertical-align:middle;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.45));transition:transform .5s cubic-bezier(.16,1.4,.3,1)}
.db-nav button:hover svg.ic-cristal,.cx-card:hover svg.ic-cristal{transform:translateY(-3px) rotate(-3deg) scale(1.08)}
.db-nav button.on svg.ic-cristal{filter:drop-shadow(0 6px 14px rgba(var(--fx-rgb),.45))}
body.fx-admin .db-nav button.on svg.ic-cristal{filter:drop-shadow(0 6px 14px rgba(var(--fx-rgb),.5))}
.db-nav button{min-height:52px}
.cx-ico{width:60px;height:60px;background:none!important;border-radius:0}
.cx-ico svg.ic-cristal{width:60px;height:60px;margin:0}
@media (prefers-reduced-motion:reduce){svg.ic-cristal{transition:none}}
.db-nav button svg.ic.ic-cristal{width:44px;height:44px;margin:-6px 0 -6px -4px;color:inherit}
.db-nav button{gap:12px}
.db-nav button{grid-template-columns:44px minmax(0,1fr) auto;align-items:center}
.db-nav button>.ic-cristal{align-self:center}

/* ================================================================
   13d — Gráficas holográficas 3D (sf-holo.js)
   ================================================================ */
@property --h{syntax:"<length>";inherits:true;initial-value:0px}
.holo{position:relative;perspective:1100px;min-height:300px;display:grid;place-items:center;padding-top:34px;overflow:visible}
.holo-empty{color:var(--muted);margin:60px 0;text-align:center}
.holo-stage{position:relative;transform-style:preserve-3d;transform:rotateX(56deg) rotateZ(-26deg);animation:holo-sway 16s ease-in-out infinite alternate;margin:10px 0 30px}
@keyframes holo-sway{from{transform:rotateX(58deg) rotateZ(-32deg)}to{transform:rotateX(52deg) rotateZ(-18deg)}}
.holo-floor{position:absolute;inset:-14px -6%;border:1px solid var(--line-2);border-radius:14px;overflow:hidden;
  background:linear-gradient(var(--line) 1px,transparent 1px) 0 0/36px 36px,linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/36px 36px,
  radial-gradient(circle at 50% 55%,color-mix(in srgb,var(--fx-a,#FF5B1F) 24%,transparent),transparent 72%)}
.holo-floor::after{content:"";position:absolute;left:0;right:0;top:0;height:30%;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--fx-a,#FF5B1F) 38%,transparent),transparent);animation:holo-scan 3.8s linear infinite;mix-blend-mode:screen}
@keyframes holo-scan{from{transform:translateY(-100%)}to{transform:translateY(420%)}}
.hb{position:absolute;width:var(--w);height:var(--d);transform-style:preserve-3d;transition:transform .35s cubic-bezier(.16,1.3,.3,1),filter .3s}
.hb.hot{transform:translateZ(14px);filter:brightness(1.45) drop-shadow(0 0 14px var(--c))}
.hcub{position:absolute;inset:0;transform-style:preserve-3d;transition:--h 1.1s cubic-bezier(.16,1,.3,1)}
.hf{position:absolute;display:block}
.hf.top{width:var(--w);height:var(--d);left:0;top:0;transform:translateZ(var(--h));background:linear-gradient(135deg,#ffffffcc,var(--c));box-shadow:0 0 22px var(--c)}
.hf.front{width:var(--w);height:var(--h);left:0;top:var(--d);transform-origin:top;transform:rotateX(90deg);background:linear-gradient(180deg,var(--c),rgba(0,0,0,.4));opacity:.93}
.hf.right{width:var(--h);height:var(--d);left:var(--w);top:0;transform-origin:left top;transform:rotateY(-90deg);background:linear-gradient(180deg,color-mix(in srgb,var(--c) 70%,#000),rgba(0,0,0,.6));opacity:.9}
.holo-tip{position:absolute;z-index:3;pointer-events:none;transform:translateX(-50%);padding:5px 10px;border-radius:8px;font:500 12px var(--font-m);
  color:var(--ink);background:rgba(14,14,14,.9);border:1px solid var(--c,var(--fx-a));box-shadow:0 0 18px -4px var(--c,var(--fx-a));opacity:0;transition:opacity .15s;white-space:nowrap}
.holo-tip.on{opacity:1}
.holo-legend{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;width:min(92%,820px);margin-top:-12px;font-size:12px;color:var(--ink-2)}
.holo-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:middle}
@media (prefers-reduced-motion:reduce){.holo-stage{animation:none;transform:rotateX(55deg) rotateZ(-26deg)}.holo-floor::after{animation:none}.hcub{transition:none}}
@media (max-width:640px){.holo{min-height:240px}.holo-stage{transform:rotateX(50deg) rotateZ(-20deg)}}

/* ================================================================
   Imagen de portada propia (sf-hero.js): seis canales → un panel
   ================================================================ */
.pub-hero-visual.hv{position:relative;display:grid;gap:10px;padding:18px 16px 20px;border:1px solid var(--line-2);border-radius:20px;overflow:visible;
  background:linear-gradient(160deg,rgba(25,25,25,.6),rgba(8,8,8,.7));box-shadow:0 30px 80px -30px rgba(var(--fx-rgb),.35),0 0 0 1px rgba(255,255,255,.03) inset;
  animation:none}
.hv-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-height:92px}
.hv-t{position:relative;display:grid;justify-items:center;gap:2px;font:500 12px var(--font-d);color:var(--ink-2);opacity:0;transform:translateY(14px);animation:hv-in .8s cubic-bezier(.16,1.2,.3,1) forwards;animation-delay:calc(var(--i)*.12s + .1s)}
.hv-t svg.ic-cristal{width:68px;height:68px;margin:0}
.hv-tiles[data-row=bot] .hv-t{animation-delay:calc(var(--i)*.12s + .6s)}
.hv-t::after{content:"";position:absolute;left:50%;width:2px;height:24px;margin-left:-1px;background:linear-gradient(180deg,transparent,var(--fx-a),transparent);background-size:100% 200%;animation:hv-flow 1.8s linear infinite;opacity:.85}
.hv-tiles[data-row=top] .hv-t::after{bottom:-22px}
.hv-tiles[data-row=bot] .hv-t::after{top:-22px;animation-direction:reverse}
@keyframes hv-in{to{opacity:1;transform:none}}
@keyframes hv-flow{from{background-position:0 0}to{background-position:0 200%}}
.hv-panel{position:relative;padding:14px 16px 16px;border:1px solid var(--line-2);border-radius:16px;background:linear-gradient(160deg,rgba(11,11,11,.94),rgba(8,8,7,.94));
  box-shadow:0 0 50px -14px var(--fx-b),0 0 0 1px rgba(var(--fx-rgb),.18) inset}
.hv-head{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:14px}
.hv-dot{width:9px;height:9px;border-radius:50%;background:var(--fx-d);box-shadow:0 0 0 0 var(--fx-d);animation:fx-ping 2s infinite}
.hv-ex{margin-left:auto;font:500 10.5px var(--font-m);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px dashed var(--line-2);border-radius:99px;padding:2px 8px}
.hv-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hv-kpis div{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:rgba(255,255,255,.03)}
.hv-v{display:block;font:700 clamp(17px,2.2vw,22px) var(--font-d);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.hv-kpis small{color:var(--muted);font-size:11px}
.hv-chart.holo{min-height:200px;padding-top:6px;margin-top:2px}
.hv-chart .holo-stage{margin:0 0 6px;transform:rotateX(58deg) rotateZ(-24deg) scale(.82)}
.hv-daisy{display:flex;align-items:center;gap:10px;margin-top:6px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035);font-size:12.5px;color:var(--ink-2)}
.hv-spark svg.ic-cristal{width:38px;height:38px;margin:0;display:block}
.hv-pings{position:absolute;right:-14px;top:38%;display:grid;gap:8px;width:min(210px,52%);pointer-events:none;z-index:4}
.hv-ping{display:grid;grid-template-columns:1fr auto;gap:0 8px;padding:9px 12px;border:1px solid var(--line-2);border-radius:12px;background:rgba(14,14,14,.9);box-shadow:0 14px 30px -12px rgba(0,0,0,.7),0 0 22px -8px var(--fx-d);animation:hv-ping .6s cubic-bezier(.16,1.3,.3,1) both}
.hv-ping b{font-size:12.5px}.hv-ping small{grid-column:1;color:var(--muted);font-size:11px}.hv-ping span{grid-row:1/3;grid-column:2;align-self:center;font:600 14px var(--font-m);color:var(--fx-d)}
@keyframes hv-ping{from{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:none}}
@media (max-width:900px){.hv-pings{display:none}.hv-t svg.ic-cristal{width:56px;height:56px}.hv-tiles{min-height:80px}}
@media (prefers-reduced-motion:reduce){.hv-t{opacity:1;transform:none;animation:none}.hv-t::after{animation:none}.hv-dot{animation:none}.hv-ping{animation:none}}

/* ================================================================
   FASE 14 — FORJA: negro puro + crema + acento de paleta + color por categoría
   Sin azules, sin marrones (superficies neutras), sin degradados arcoíris.
   Color = significado (se mantiene en todas las pantallas):
     · Vender (resumen, inventario, ventas, campañas) ........ naranja  --cat-vender
     · Contenido (fotos, vídeos, galería) ................... violeta  --cat-crear
     · Canales (copys, mensajes, conexiones) ................ verde    --cat-canal
     · Cuenta (facturación) ................................. oro      --cat-cuenta
     · Texto de estado: bien = verde · aviso = ámbar · error = rojo · IA/Daisy = violeta
   El acento de paleta (--fx-a) solo pinta botones, enlaces y foco.
   ================================================================ */
:root,:root:not([data-theme=light]){
  color-scheme:dark;
  --bg:#000000; --surface:rgba(16,16,16,.92); --surface-2:rgba(22,22,22,.9); --sunken:rgba(6,6,6,.95); --fx-rgb:255,91,31;
  --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.2);
  --ink:#F3E6D6; --ink-2:#CDBFAF; --muted:#A8A39B; --faint:#77736D;
  --accent:#FF5B1F; --accent-ink:#FF8A5C; --accent-bg:rgba(var(--fx-rgb),.14);
  --fx-a:#FF5B1F; --fx-b:#E8A87C; --fx-c:#F4E3D0; --fx-d:#7FD99A;
  --sobre-acento:#080808; --foco:0 0 0 3px rgba(var(--fx-rgb),.38);
  --red-bg:rgba(255,91,91,.14); --red:#FF7A7A; --green-bg:rgba(61,220,151,.13); --green:#3DDC97;
  --yellow-bg:rgba(242,184,75,.14); --yellow:#F2B84B; --blue-bg:rgba(208,124,255,.14); --blue:#D07CFF;
  --sombra-2:0 18px 50px rgba(0,0,0,.6); --sombra-3:0 30px 90px rgba(0,0,0,.75);
  --radio-m:10px; --radio-l:16px; --radio-squircle:16px;
  --cat-vender:#FF7A3D; --cat-crear:#D07CFF; --cat-canal:#3DDC97; --cat-cuenta:#F2B84B; --cat-sistema:#FF7A7A;
  --cat:var(--cat-vender); --cat-rgb:255,122,61;
}
html:not([data-palette]) body.fx-admin{--accent:#F2B84B;--accent-ink:#F7D38A;--accent-bg:rgba(242,184,75,.14);--fx-a:#F2B84B;--fx-b:#FF5B1F;--fx-c:#F4E3D0;--fx-d:#7FD99A;--fx-rgb:242,184,75;--foco:0 0 0 3px rgba(242,184,75,.38)}

/* ----- Identidad por módulo (la vista activa y su entrada del menú comparten color) ----- */
#view-catalogo,#view-ventas,#view-campanas,#view-oportunidades,body:not(.fx-admin) #view-resumen{--cat:var(--cat-vender);--cat-rgb:255,122,61}
#view-fotos,#view-videos,#view-galeria{--cat:var(--cat-crear);--cat-rgb:208,124,255}
#view-publicar,#view-mensajes,#view-conexiones{--cat:var(--cat-canal);--cat-rgb:61,220,151}
#view-facturacion{--cat:var(--cat-cuenta);--cat-rgb:242,184,75}
body:not(.fx-admin) .db-nav button[data-view=resumen],.db-nav button[data-view=catalogo],.db-nav button[data-view=ventas],.db-nav button[data-view=campanas]{--cat:var(--cat-vender);--cat-rgb:255,122,61}
.db-nav button[data-view=fotos],.db-nav button[data-view=videos],.db-nav button[data-view=galeria]{--cat:var(--cat-crear);--cat-rgb:208,124,255}
.db-nav button[data-view=publicar],.db-nav button[data-view=mensajes],.db-nav button[data-view=conexiones]{--cat:var(--cat-canal);--cat-rgb:61,220,151}
.db-nav button[data-view=facturacion]{--cat:var(--cat-cuenta);--cat-rgb:242,184,75}
/* consola de administración: negocio · plataforma · seguridad */
body.fx-admin #view-resumen,#view-tenants,#view-ingresos{--cat:var(--cat-cuenta);--cat-rgb:242,184,75}
#view-integraciones,#view-sistema,#view-workers,#view-daisy{--cat:var(--cat-canal);--cat-rgb:61,220,151}
#view-usuarios,#view-sesiones,#view-gobierno{--cat:var(--cat-sistema);--cat-rgb:255,122,122}
.db-nav button[data-view=tenants],.db-nav button[data-view=ingresos]{--cat:var(--cat-cuenta);--cat-rgb:242,184,75}
.db-nav button[data-view=integraciones],.db-nav button[data-view=sistema],.db-nav button[data-view=workers],.db-nav button[data-view=daisy]{--cat:var(--cat-canal);--cat-rgb:61,220,151}
.db-nav button[data-view=usuarios],.db-nav button[data-view=sesiones],.db-nav button[data-view=gobierno]{--cat:var(--cat-sistema);--cat-rgb:255,122,122}

.db-nav button.on::before{background:var(--cat)}
.db-nav button.on{background:linear-gradient(90deg,rgba(var(--cat-rgb),.12),transparent)!important}
.db-nav button.on small{color:var(--cat)}
.db-view .db-head h2{position:relative;padding-left:16px}
.db-view .db-head h2::before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:4px;border-radius:4px;background:var(--cat)}
.db-view .db-head .eyebrow{color:var(--cat)}
.db-view .db-card,.db-view .db-stats>div,.db-view .db-metrica{border-top-color:rgba(var(--cat-rgb),.45)!important}
.db-view .ws-h,.db-view .cs-h4{color:var(--cat)}
.db-view .db-meter>i,.db-view .db-meter span{background:var(--cat)!important}

/* ----- Colores de texto con significado ----- */
.up,.ok,.mc-kpi-delta.up,.db-ok{color:var(--green)}
.down,.bad,.err,.mc-kpi-delta.down,.db-bad{color:var(--red)}
.warn,.db-warn{color:var(--yellow)}
.ia,.daisy-name,.daisy-head b{color:var(--cat-crear)}

/* ----- Superficies neutras (sin marrón) ----- */
html{background:#000}
.db-rail,.db-top,.pub-top,.fg-top{background:#000!important}
.db-card,.cx-card,.db-stats>div,.db-metrica,.db-inv-card,.db-plan,.pub-feat,.pub-plan,.pub-step,.lg-card,.fg-card,.fg-power,.db-estado,.db-tpl,.db-pers-panel,.db-voice-box,.db-alert-item{
  background:#0D0D0D!important;border-color:var(--line)!important;box-shadow:none!important}
.pub-footer,.pub-ticker{background:#000!important}

/* titulares: crema sólido, sin degradado */
.pub-title,.db-head h2,.lg-form-head h1,.lg-form-head h2,.pub-h2{background:none!important;-webkit-text-fill-color:currentColor;color:var(--ink)!important;animation:none!important;font-weight:700;letter-spacing:-.03em}
.pub-title em,.pub-h2 em,.lg-form-head em{color:var(--fx-a);font-style:normal}
.fx-split{color:var(--ink)!important}
.fx-split .fx-word>span{background:none;-webkit-text-fill-color:currentColor;color:inherit}
/* botones: acento sólido, texto oscuro */
.pub-cta,.lg-btn.primary,.fg-btn.accent,.db-btn:not(.ghost):not(.danger){background:var(--fx-a)!important;color:var(--sobre-acento)!important;box-shadow:none!important;font-weight:650}
.pub-cta:hover,.lg-btn.primary:hover,.fg-btn.accent:hover,.db-btn:not(.ghost):not(.danger):hover{filter:brightness(1.1)}
.pub-ghost,.db-btn.ghost,.lg-btn.ghost{background:transparent!important;border:1px solid var(--line-2)!important;color:var(--ink)!important}
.pub-ghost:hover,.db-btn.ghost:hover{border-color:var(--fx-a)!important;color:var(--ink)!important}
.fx-progress{background:var(--fx-a)}
.pub-eyebrow,.pub-kicker{color:var(--fx-a)!important}
.db-navlbl{color:var(--muted)!important}
.db-meter>i,.db-meter span{background:var(--fx-a)!important}
::selection{background:rgba(var(--fx-rgb),.45);color:#fff}

body.fx-admin .db-nav button[data-view=resumen]{--cat:var(--cat-cuenta);--cat-rgb:242,184,75}
/* ===== FORJA · landing (lp-*) ===== */
.lp .pub{position:relative}
.lp-login{color:var(--fx-a)!important;font-weight:600}
.lp-hero{padding:56px 0 24px;position:relative}
.lp-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:44px;align-items:center}
.lp-title{font-size:clamp(40px,6.4vw,84px);line-height:.98;letter-spacing:-.045em;margin:14px 0 20px;max-width:12ch;font-weight:750}
.lp-lede{font-size:clamp(16px,1.5vw,19px);color:var(--ink-2);max-width:52ch;line-height:1.55;margin:0 0 26px}
.lp-lede b{color:var(--ink)}
.lp-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.lp-actions .pub-cta,.lp-actions .pub-ghost{padding:14px 24px;border-radius:12px;font-size:15px;display:inline-flex;align-items:center}
.lp-assure{display:flex;gap:8px 18px;flex-wrap:wrap;list-style:none;margin:0;padding:0;color:var(--muted);font-size:13px}
.lp-assure li::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--fx-a);margin-right:8px;vertical-align:middle}
.lp-rail{display:flex;align-items:center;gap:14px;margin-top:34px;color:var(--muted);font:500 11px var(--font-m);letter-spacing:.2em;text-transform:uppercase}
.lp-rail i{display:block;width:92px;height:4px;background:var(--fx-a);box-shadow:0 0 14px var(--fx-a);transform-origin:left;animation:lp-rail 2.4s cubic-bezier(.65,0,.35,1) infinite alternate}
@keyframes lp-rail{from{transform:scaleX(.25)}to{transform:scaleX(1)}}
.lp-sec{padding:84px 0 0}
.lp-h2{font-size:clamp(30px,4.4vw,56px);line-height:1.02;letter-spacing:-.04em;margin:8px 0 28px;max-width:20ch;font-weight:740}
.lp-sub{color:var(--ink-2);max-width:56ch;margin:-12px 0 24px}
.lp-cards3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lp-card,.lp-step,.lp-tile,.lp-plan{position:relative;border:1px solid var(--line);border-radius:18px;padding:26px;background:linear-gradient(160deg,rgba(12,12,12,.9),rgba(7,7,7,.9));box-shadow:0 18px 40px -26px rgba(0,0,0,.7)}
.lp-card h3,.lp-step h3,.lp-tile h3{margin:10px 0 8px;font-size:20px;letter-spacing:-.02em;color:var(--ink)}
.lp-card p,.lp-step p,.lp-tile p{margin:0;color:var(--ink-2);line-height:1.55;font-size:15px}
.lp-num{font:500 12px var(--font-m);color:var(--fx-a);letter-spacing:.2em}
.lp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;position:relative}
.lp-steps::before{content:"";position:absolute;left:8%;right:8%;top:50px;height:2px;background:var(--fx-a);box-shadow:0 0 14px var(--fx-a);transform-origin:left;transform:scaleX(0);transition:transform 1.8s cubic-bezier(.65,0,.35,1);pointer-events:none;opacity:.8}
.lp-steps.fx-in::before{transform:scaleX(1)}
.lp-dot{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--fx-a);color:var(--sobre-acento);font-weight:800;font-size:18px;box-shadow:0 0 0 6px rgba(var(--fx-rgb),.18),0 0 24px rgba(var(--fx-rgb),.55);position:relative;z-index:1}
.lp-bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.lp-tile{grid-column:span 2;min-height:190px}
.lp-tile.lp-big{grid-column:span 4;grid-row:span 2;display:flex;flex-direction:column;justify-content:flex-start}
.lp-tile.lp-big h3{font-size:clamp(24px,3vw,38px);letter-spacing:-.03em}
.lp-tag{display:inline-block;font:500 11px var(--font-m);letter-spacing:.16em;text-transform:uppercase;color:var(--fx-a)}
.lp-demo{margin-top:auto;padding:14px 16px;border:1px solid var(--line-2);border-radius:12px;background:rgba(13,13,13,.6);color:var(--fx-c);font:500 14px var(--font-m);display:flex;align-items:center;gap:6px}
.lp-demo i{display:inline-block;width:2px;height:1.1em;background:var(--fx-a);animation:lp-blink 1s steps(2) infinite}
@keyframes lp-blink{50%{opacity:0}}
.lp-compare{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:rgba(22,22,22,.6)}
.lp-row{display:grid;grid-template-columns:.8fr 1fr 1.2fr;gap:0;border-top:1px solid var(--line)}
.lp-row:first-child{border-top:0}
.lp-row>span{padding:16px 20px;color:var(--ink-2);font-size:15px}
.lp-row>span:first-child{color:var(--ink);font-weight:600}
.lp-row>span.on{color:var(--ink);background:rgba(var(--fx-rgb),.1);border-left:2px solid var(--fx-a)}
.lp-headrow>span{font:500 11px var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lp-headrow>span.on{color:var(--fx-a)}
.lp-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;text-align:left;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);padding:34px 0;margin-top:84px}
.lp-facts>div{display:grid;gap:6px}
.lp-bignum{font:760 clamp(44px,6vw,80px) var(--font-d);letter-spacing:-.05em;color:var(--ink);line-height:1;font-variant-numeric:tabular-nums}
.lp-facts small{color:var(--muted);font-size:13.5px;max-width:20ch}
.lp-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.lp-plan{display:flex;flex-direction:column;gap:6px}
.lp-plan.pop{border-color:var(--fx-a);box-shadow:0 0 0 1px var(--fx-a),0 30px 70px -30px rgba(var(--fx-rgb),.55)}
.lp-plan h3{margin:4px 0 0;font-size:26px;letter-spacing:-.03em}
.lp-plan ul{list-style:none;margin:14px 0 20px;padding:0;display:grid;gap:8px;color:var(--ink-2);font-size:14.5px;flex:1}
.lp-plan li::before{content:"✓";color:var(--fx-a);font-weight:800;margin-right:8px}
.lp-plan .pub-price{font-size:44px;font-weight:760;letter-spacing:-.04em}
.lp-plan .pub-price small{font-size:15px;font-weight:400;color:var(--muted)}
.lp-flag{position:absolute;top:-12px;right:20px;background:var(--fx-a);color:var(--sobre-acento);font:700 11px var(--font-m);letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:99px}
.lp-plan .pub-cta,.lp-plan .pub-ghost{justify-content:center;display:flex;padding:12px 18px;border-radius:12px}
.lp-more{margin-top:18px}.lp-more a{color:var(--fx-a);font-weight:600;text-decoration:none}
.lp-faq{display:grid;gap:10px;max-width:860px}
.lp-faq details{border:1px solid var(--line);border-radius:14px;background:rgba(22,22,22,.6);padding:0 20px}
.lp-faq summary{cursor:pointer;padding:18px 0;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:14px;align-items:center}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary::after{content:"+";color:var(--fx-a);font-size:24px;line-height:1;transition:transform .3s}
.lp-faq details[open] summary::after{transform:rotate(45deg)}
.lp-faq p{margin:0 0 18px;color:var(--ink-2);line-height:1.6}
.lp-faq a{color:var(--fx-a)}
.lp-final{text-align:left;padding:84px 0 20px}
.lp-final .lp-h2{max-width:14ch}
@media (max-width:980px){
  .lp-hero-grid{grid-template-columns:1fr}.lp-cards3,.lp-steps,.lp-plans{grid-template-columns:1fr}.lp-steps::before{display:none}
  .lp-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-tile,.lp-tile.lp-big{grid-column:span 2;grid-row:auto}
  .lp-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-row{grid-template-columns:1fr}.lp-row>span.on{border-left:0;border-top:2px solid var(--fx-a)}
  .lp-headrow{display:none}.lp-sec{padding-top:60px}.lp-title{max-width:none}
}
@media (prefers-reduced-motion:reduce){.lp-rail i,.lp-demo i{animation:none}.lp-steps::before{transition:none;transform:scaleX(1)}}
.lp-hero-copy{min-width:0}
.lp-title em,.lp-h2 em,.fx-rot{font-style:normal;color:var(--fx-a)}

/* ===== FORJA · precios ===== */
.lp-phero{padding:70px 0 20px}
.lp-phero .lp-title{max-width:14ch}
.lp-tight{padding-top:28px}
.lp-save{color:var(--fx-a)}
.pub-toggle{display:inline-flex;align-items:center;gap:12px;margin-top:6px}
.lp-table{border:1px solid var(--line);border-radius:18px;overflow:auto;background:rgba(22,22,22,.6)}
.lp-trow{display:grid;grid-template-columns:1.3fr repeat(var(--c,3),minmax(0,1fr));border-top:1px solid var(--line);min-width:560px}
.lp-trow:first-child{border-top:0}
.lp-trow>span{padding:14px 18px;color:var(--ink-2);font-size:14.5px}
.lp-trow>span:first-child{color:var(--ink);font-weight:600}
.lp-trow>span.on{background:rgba(var(--fx-rgb),.08)}
.lp-trow>span.yes{color:var(--fx-a);font-weight:700}
.lp-trow>span.no{color:var(--faint)}
.lp-thead>span{font:500 11px var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lp-thead>span.on{color:var(--fx-a)}
.lp-twocol{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.lp-checks{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lp-checks li{color:var(--ink-2);font-size:16px;padding-left:30px;position:relative}
.lp-checks li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:rgba(var(--fx-rgb),.16);color:var(--fx-a);display:grid;place-items:center;font-weight:800;font-size:13px}
.lp-tokens p+p{margin-top:12px}
@media (max-width:900px){.lp-twocol{grid-template-columns:1fr}}

/* ===== FORJA · login ===== */
.lg-scene-side::before{display:none!important}
.lg-scene-side{border-right:1px solid var(--line-2)!important;background:linear-gradient(180deg,#121212,#0E0E0E)!important}
.lg-scene-copy h1{font-size:clamp(34px,4.4vw,60px);line-height:1;letter-spacing:-.04em;font-weight:750;color:var(--ink)!important;background:none!important;-webkit-text-fill-color:currentColor;max-width:13ch}
.lg-scene-copy h1 em{color:var(--fx-a);font-style:normal}
.lg-points{list-style:none;margin:18px 0 22px;padding:0;display:grid;gap:10px}
.lg-points li{position:relative;padding-left:26px;color:var(--ink-2);font-size:15px}
.lg-points li::before{content:"";position:absolute;left:0;top:.55em;width:14px;height:2px;background:var(--fx-a);box-shadow:0 0 10px var(--fx-a)}
.lg-new{margin-top:20px;color:var(--muted);font-size:14px}
.lg-new a{color:var(--fx-a);font-weight:600}
.lg-card,.fg-card{border-radius:20px!important}
.lg-step.active b,.lg-step.done b{background:var(--fx-a)!important;color:var(--sobre-acento)!important;box-shadow:0 0 14px rgba(var(--fx-rgb),.6)}

/* ===== FASE 14f · FORJA — Fotos y Vídeos como estudio limpio (sin aspecto de editor de código) ===== */
.ws{grid-template-columns:288px minmax(0,1fr) 340px;grid-template-rows:auto auto minmax(0,1fr) auto;
  grid-template-areas:"act act act" "exp tabs agent" "exp main agent" "exp con agent";border-radius:20px;border-color:var(--line-2);background:var(--surface)}
.ws.no-exp{grid-template-columns:0 minmax(0,1fr) 340px}
.ws.no-agent{grid-template-columns:288px minmax(0,1fr) 0}
.ws.no-exp.no-agent{grid-template-columns:0 minmax(0,1fr) 0}
.ws-act{flex-direction:row;align-items:center;gap:8px;padding:10px 14px;border-right:0;border-bottom:1px solid var(--line);background:transparent}
.ws-act .gap{flex:1}
.ws-act button{width:auto;height:34px;padding:0 14px 0 10px;gap:8px;display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:999px;font:500 13px var(--font-d);color:var(--ink-2)}
.ws-act button .lbl{font-size:13px}
.ws-act button[aria-pressed=true]{background:rgba(var(--fx-rgb),.14);border-color:var(--accent);color:var(--ink)}
.ws-act button:hover{border-color:var(--accent);color:var(--ink)}
.ws-exp,.ws-agent{background:transparent}
.ws-h{text-transform:none;font-size:12px;letter-spacing:.04em;color:var(--accent)}
.ws-tabs{background:transparent;border-bottom:1px solid var(--line);padding:8px 14px}
.ws-tab{background:transparent;border:0;border-radius:0;font-size:15px;font-weight:650;padding:6px 0;margin:0;color:var(--ink)}
.ws-main,.ws-canvas{background:transparent}
.ws-canvas .ed-stage{border-radius:16px;border:1px dashed var(--line-2)}
.ws-con{background:transparent;height:auto;max-height:230px}
.ws-con.tall{max-height:300px}
.ws-conhead button[aria-selected=true]{border-bottom-color:var(--accent)}
.ws-conbody{background:transparent;font-family:var(--font-d)}
.ws-conbody .hint::before{content:""}
.ws-chip{border-color:var(--line-2)}
.ws-chip:hover{border-color:var(--accent)}
@media (max-width:1100px){
  .ws,.ws.no-exp,.ws.no-agent,.ws.no-exp.no-agent{grid-template-columns:minmax(0,1fr);grid-template-areas:"act" "tabs" "exp" "main" "con" "agent";grid-template-rows:auto}
  .ws-act{flex-wrap:wrap}.ws-act .gap{display:none}
}

/* ===== FASE 14g · NEGRO INTENSO + 6 PALETAS (sin azules) — elegibles con el selector «Paleta» ===== */
:root[data-palette=brasa]:not([data-theme=light]){--accent:#FF4D5E;--accent-ink:#FF8A94;--accent-bg:rgba(255,77,94,.14);--fx-a:#FF4D5E;--fx-b:#FFB199;--fx-c:#F6DAD3;--fx-d:#7FD99A;--fx-rgb:255,77,94;--foco:0 0 0 3px rgba(255,77,94,.4)}
:root[data-palette=oro]:not([data-theme=light]){--accent:#F2B84B;--accent-ink:#F7D38A;--accent-bg:rgba(242,184,75,.14);--fx-a:#F2B84B;--fx-b:#FF8A3D;--fx-c:#F6E7C4;--fx-d:#7FD99A;--fx-rgb:242,184,75;--foco:0 0 0 3px rgba(242,184,75,.4)}
:root[data-palette=jade]:not([data-theme=light]){--accent:#2FD68B;--accent-ink:#7FE8B8;--accent-bg:rgba(47,214,139,.14);--fx-a:#2FD68B;--fx-b:#E8D27C;--fx-c:#D8F3E5;--fx-d:#2FD68B;--fx-rgb:47,214,139;--foco:0 0 0 3px rgba(47,214,139,.4)}
:root[data-palette=orquidea]:not([data-theme=light]){--accent:#E85BD6;--accent-ink:#F29CE6;--accent-bg:rgba(232,91,214,.14);--fx-a:#E85BD6;--fx-b:#FF9AA8;--fx-c:#F7DDF3;--fx-d:#7FD99A;--fx-rgb:232,91,214;--foco:0 0 0 3px rgba(232,91,214,.4)}
:root[data-palette=lima]:not([data-theme=light]){--accent:#C6F135;--accent-ink:#DDF97E;--accent-bg:rgba(198,241,53,.14);--fx-a:#C6F135;--fx-b:#F2B84B;--fx-c:#EEF8C8;--fx-d:#C6F135;--fx-rgb:198,241,53;--foco:0 0 0 3px rgba(198,241,53,.4)}
:root[data-palette]:not([data-theme=light]){--blue:var(--fx-c);--blue-bg:rgba(var(--fx-rgb),.12)}
.fx-pal{position:fixed;left:14px;bottom:14px;z-index:60;display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;background:rgba(10,10,9,.88);border:1px solid var(--line-2);}
.fx-pal>span{font:500 11px var(--font-m);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:0 4px 0 6px}
.fx-pal button{width:18px;height:18px;border-radius:50%;border:2px solid transparent;padding:0;cursor:pointer;background:var(--c);box-shadow:0 0 0 1px rgba(255,255,255,.12);transition:transform .2s}
.fx-pal button:hover{transform:scale(1.25)}
.fx-pal button[aria-pressed=true]{border-color:#fff}
@media (max-width:760px){.fx-pal{left:8px;bottom:68px;padding:4px 6px}.fx-pal>span{display:none}}
/* Galería Motion: marquesina de canales y realce al pasar */
.lp-marquee{overflow:hidden;border-block:1px solid var(--line);padding:16px 0;margin-top:56px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.lp-marquee-track{display:flex;gap:44px;width:max-content;animation:lp-marq 38s linear infinite;font:650 clamp(22px,3vw,36px) var(--font-d);letter-spacing:-.03em;color:var(--ink-2);white-space:nowrap}
.lp-marquee-track b{color:var(--fx-a);font-weight:650}
@keyframes lp-marq{to{transform:translateX(-50%)}}
.mo-lift:hover{border-color:rgba(var(--fx-rgb),.55)!important}
@media (prefers-reduced-motion:reduce){.lp-marquee-track{animation:none}}
/* 14g: márgenes de la landing y de precios (el contenido no puede tocar el borde de la pantalla) */
.lp .pub>main,.lp .pub>.pub-footer{width:100%;max-width:1240px;margin-inline:auto;padding-inline:clamp(16px,4vw,40px);box-sizing:border-box}
.lp .pub-top{padding-inline:clamp(16px,4vw,40px)}
.lp-marquee{margin-inline:calc(-1 * clamp(16px,4vw,40px))}
.fx-odo{gap:0;letter-spacing:-.06em}
.fx-digit{width:.58em;text-align:center}.fx-col b{text-align:center}
.lp-plan li::before{display:inline-block;font-size:13px}
.fx-pal.in-db{left:auto;right:84px;bottom:20px}
@media (max-width:760px){.fx-pal.in-db{right:76px;left:auto;bottom:20px}}

/* ===== Gestor de consentimiento (sf-consent.js) ===== */
.sf-cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:520;max-width:560px;margin-inline:auto;padding:16px 18px;background:#0D0D0D!important;border:1px solid var(--line-2)!important;border-radius:16px}
.sf-cookie p{margin:0;font-size:13.5px;color:var(--ink-2);line-height:1.5}.sf-cookie a{color:var(--fx-a)}
.sf-cookie-btns{display:flex;gap:8px;margin-top:12px}
.sf-cookie-btns button,.sfc-btns button{flex:1;padding:9px 14px;border:1px solid var(--line-2);border-radius:10px;background:transparent;color:var(--ink);font:600 13px var(--font-d);cursor:pointer}
.sf-cookie-btns button:hover,.sfc-btns button:hover{border-color:var(--fx-a)}
.sf-cookie-btns button.accent,.sfc-btns button.accent{background:var(--fx-a);border-color:var(--fx-a);color:var(--sobre-acento)}
.sfc-panel{position:fixed;inset:0;z-index:540;display:grid;place-items:center;padding:16px;background:rgba(0,0,0,.8)}
.sfc-panel[hidden]{display:none}
.sfc-box{width:min(560px,100%);max-height:92vh;overflow:auto;background:#0D0D0D;border:1px solid var(--line-2);border-radius:18px;padding:22px}
.sfc-box h2{margin:0 0 6px;font-size:20px;color:var(--ink)}
.sfc-lede{margin:0 0 14px;color:var(--ink-2);font-size:14px}
.sfc-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--line)}
.sfc-row b{display:block;color:var(--ink);font-size:14.5px}.sfc-row small{display:block;margin-top:3px;color:var(--muted);font-size:12.5px;line-height:1.45}
.sfc-fixed{flex:none;font:500 11px var(--font-m);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.sfc-sw{position:relative;flex:none;width:44px;height:26px}.sfc-sw input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0;z-index:1}
.sfc-sw i{position:absolute;inset:0;border-radius:99px;background:rgba(255,255,255,.14);transition:background .2s}
.sfc-sw i::after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}
.sfc-sw input:checked+i{background:var(--fx-a)}.sfc-sw input:checked+i::after{transform:translateX(18px)}
.sfc-sw input:focus-visible+i{outline:2px solid var(--fx-a);outline-offset:2px}.sfc-sw input:disabled+i{opacity:.4}
.sfc-btns{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
@media (max-width:520px){.sf-cookie-btns{flex-wrap:wrap}.sf-cookie-btns button{flex:1 1 30%}}

/* ===== Guardián de la cuenta ===== */
#mcGuardState[data-estado=en_riesgo]{color:var(--red,#FF7A7A)}
#mcGuardState[data-estado=vigilar]{color:var(--amber,#F2B84B)}
#mcGuardState[data-estado=saludable]{color:var(--green,#3DDC97)}
.mc-guard-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;align-items:end;margin-top:12px}
.mc-guard-form label{display:grid;gap:4px;font-size:12px;color:var(--muted)}
.mc-guard-form input{background:#000;border:1px solid var(--line-2);border-radius:8px;color:var(--ink);padding:8px 10px;font:inherit}
.mc-guard-form input:focus-visible{outline:2px solid var(--fx-a);outline-offset:1px}
.mc-guard-form small{grid-column:1/-1;color:var(--muted);font-size:11.5px}
#mcGuardList details{margin-top:6px;font-size:12.5px;color:var(--ink-2)}
#mcGuardList summary{cursor:pointer;color:var(--fx-a)}
#mcGuardList ol{margin:6px 0 0 18px;padding:0;line-height:1.5}

/* ===== Beneficio por producto ===== */
.ben-pos{color:var(--green,#3DDC97)}.ben-neg{color:var(--red,#FF7A7A)}
#benTabla code{display:block;color:var(--muted);font-size:11.5px}

/* ===== Próximos eventos ===== */
.mc-evento{padding:12px 0;border-top:1px solid var(--line)}
.mc-evento:first-child{border-top:0;padding-top:0}
.mc-evento header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.mc-evento header span,.ev-plazo{color:var(--muted);font-size:12.5px}
.ev-plazo label{display:inline-flex;gap:8px;align-items:center}
.ev-plazo input{background:#000;border:1px solid var(--line-2);border-radius:8px;color:var(--ink);padding:5px 8px;font:inherit}
.mc-evento details{margin-top:6px;font-size:12.5px;color:var(--ink-2)}
.mc-evento summary{cursor:pointer;color:var(--fx-a)}
.mc-evento ul{margin:6px 0 0 18px;padding:0;line-height:1.5}
.ev-urg{color:var(--amber,#F2B84B)}

/* ===== Cobertura de stock ===== */
.cov-crit{color:var(--red,#FF7A7A)}.cov-warn{color:var(--amber,#F2B84B)}.cov-ok{color:var(--green,#3DDC97)}
#covTabla code{display:block;color:var(--muted);font-size:11.5px}

/* ===== Primeros pasos ===== */
.mc-pasos{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.mc-pasos li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.mc-pasos li:first-child{border-top:0}
.mc-pasos small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.mc-pasos li.hecho b{color:var(--muted);text-decoration:line-through}
.mc-pasos li.hecho>span{color:var(--green,#3DDC97)}
.mc-pasos li.siguiente b{color:var(--fx-a)}

/* ===== Oportunidades ===== */
.opp-top{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}
#oppImport textarea,.opp-wide textarea,#oppForm textarea{width:100%;background:#000;border:1px solid var(--line-2);border-radius:8px;color:var(--ink);padding:8px 10px;font:inherit;resize:vertical}
#oppImport button{margin-top:10px}
.opp-wide{grid-column:1/-1}
.opp-acc{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}
.opp-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;align-items:start}
.opp-col h4{margin:0 0 8px;font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;display:flex;justify-content:space-between}
.opp-card{position:relative;display:grid;gap:4px;text-align:left;width:100%;margin-bottom:8px;padding:10px 44px 10px 12px;background:#0D0D0D;border:1px solid var(--line-2);border-radius:12px;color:var(--ink);cursor:pointer;font:inherit}
.opp-card:hover,.opp-card:focus-visible{border-color:var(--cat,var(--fx-a));outline:none}
.opp-card small{color:var(--muted);font-size:11.5px}
.opp-nota{position:absolute;right:10px;top:10px;min-width:30px;text-align:center;padding:2px 6px;border-radius:8px;font:600 12.5px var(--font-m);border:1px solid var(--line-2)}
.opp-buena{color:var(--green,#3DDC97);border-color:var(--green,#3DDC97)}.opp-moderada{color:var(--amber,#F2B84B);border-color:var(--amber,#F2B84B)}.opp-floja{color:var(--red,#FF7A7A);border-color:var(--red,#FF7A7A)}
.opp-tag{font-style:normal;font-size:11px;color:var(--cat,var(--fx-a))}
.opp-detalle header{display:flex;justify-content:space-between;align-items:center}
.opp-detalle header button{background:none;border:0;color:var(--muted);font-size:22px;cursor:pointer}
.opp-comp{list-style:none;margin:8px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.opp-comp li{display:grid;padding:8px 10px;border:1px solid var(--line);border-radius:10px}
.opp-comp small{color:var(--muted);font-size:11.5px}
.opp-borrador{margin-top:12px;padding:12px;border:1px solid var(--line-2);border-radius:10px;font-size:13.5px}
.opp-borrador ul{margin:6px 0 0 18px;padding:0}

/* ===== Editor de listings ===== */
.le-sec{margin:8px 0;border:1px solid var(--line);border-radius:12px;padding:6px 12px}
.le-sec summary{cursor:pointer;font-weight:600;padding:6px 0}.le-sec summary span{color:var(--muted);font-weight:400;font-size:12px}
.le-campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;padding:6px 0 10px}
.le-campo{display:grid;gap:4px;font-size:12.5px;color:var(--ink-2)}
.le-campo small{color:var(--muted);font-size:11.5px;line-height:1.35}
.le-campo input,.le-campo select,.le-campo textarea{background:#000;border:1px solid var(--line-2);border-radius:8px;color:var(--ink);padding:8px 10px;font:inherit;width:100%}
.le-campo input:focus-visible,.le-campo select:focus-visible,.le-campo textarea:focus-visible{outline:2px solid var(--fx-a);outline-offset:1px}
.le-req{color:var(--red,#FF7A7A)}.le-lim{color:var(--muted);font-style:normal;font-size:11px}
.le-err{color:var(--red,#FF7A7A)}.le-warn{color:var(--amber,#F2B84B)}.le-ok{color:var(--green,#3DDC97)}
.le-chip{background:transparent;border:1px solid var(--line-2);color:var(--ink);border-radius:99px;padding:3px 10px;cursor:pointer;font:inherit;font-size:12px}
