/* NOVALINK 12 — tema NOVA (identidad NOVASOFT, la misma familia visual que NOVAFUNDING).
   Un solo aspecto (data-skin="nova") con dos modos (data-theme): oscuro por defecto y claro.
   theme.js los fija antes del primer pintado y site.js cambia el modo en caliente (Ajustes).
   Los componentes y las animaciones viven en nova.css. Fuentes propias (CSP font-src 'self'). */
@font-face{font-family:'Sora';font-style:normal;font-weight:100 800;font-display:swap;src:url(sora-latin.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(inter-latin.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 800;font-display:swap;src:url(jetbrains-mono-latin.woff2) format('woff2')}

/* los controles nativos y las barras de desplazamiento siguen al tema de la app, no al del sistema */
:root[data-theme="light"]{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}

/* ---------- NOVA: forma común ---------- */
:root[data-skin="nova"]{
  --ff:'Inter','Segoe UI',system-ui,-apple-system,Roboto,sans-serif;
  --fh:'Sora','Inter','Segoe UI',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'Cascadia Mono',Consolas,Menlo,monospace;
  --r-xs:10px; --r-sm:12px; --r-md:18px; --r-lg:22px;
  --ease-out:cubic-bezier(.16,1,.3,1);
  /* paleta NOVASOFT (iguales en los dos modos; el texto usa las variantes legibles de abajo) */
  --nv-cyan:#14D6E6; --nv-cyan-2:#62F1F9; --nv-cyan-3:#A6F8FF;
  --nv-green:#00F5A0; --nv-green-2:#3FF0C0;
  --nv-orange:#FF9A2E; --nv-orange-2:#FFB46B; --nv-orange-3:#FF6C12;
  --nv-red:#FF6B7A;
  --nv-grad:linear-gradient(100deg,#A6F8FF 0%,#45E8F5 16%,#14D6E6 32%,#8EF2F8 46%,#FFD9AD 60%,#FFA142 78%,#FF6C12 100%);
  --nv-grad-cool:linear-gradient(135deg,#62F1F9,#14D6E6 60%,#00F5A0);
  --nv-grad-warm:linear-gradient(135deg,#FFC27A 0%,#FF9A2E 45%,#FF6C12 100%);
}

/* ---------- NOVA oscuro (predeterminado) ---------- */
:root[data-skin="nova"][data-theme="dark"]{
  --bg:#060A15; --bg-2:#0A1020;
  --ink:#F2F6FB; --ink-2:#C3CFDC; --muted:#93A4BA; --on-ink:#060A15;
  --line:rgba(140,200,240,.16); --hairline:rgba(140,200,240,.10);
  --accent:#14D6E6; --accent-2:#62F1F9; --accent-deep:#0B8F9C; --accent-ink:#04121A;
  --accent-tint:rgba(20,214,230,.14); --accent-line:rgba(98,241,249,.40);
  --accent-text:#62F1F9; --ring:rgba(20,214,230,.40); --focus:#62F1F9;
  --ok:#00F5A0; --ok-tint:rgba(0,245,160,.12); --ok-line:rgba(0,245,160,.34); --ok-text:#3FF0C0;
  --bad:#FF6B7A; --bad-tint:rgba(255,107,122,.12); --bad-line:rgba(255,107,122,.38); --bad-text:#FF9AA5;
  --warn:#FF9A2E; --warn-tint:rgba(255,154,46,.12); --warn-line:rgba(255,154,46,.38); --warn-text:#FFB46B;
  --surface:rgba(15,24,43,.80); --surface-2:rgba(6,10,21,.62); --surface-solid:#0D1628; --nav-bg:rgba(8,13,27,.86);
  --glassline:rgba(140,200,240,.16); --spec:rgba(255,255,255,.06); --blur:blur(16px) saturate(1.4);
  --e1:0 18px 36px -24px rgba(0,0,0,.95);
  --e2:0 30px 60px -32px rgba(0,0,0,.9);
  --e3:0 40px 90px rgba(0,0,0,.72);
  --gain:#3FF0C0; --loss:#FFB46B;
  --nv-card:linear-gradient(165deg,rgba(22,34,58,.82),rgba(9,14,26,.90));
  --nv-card-top:rgba(255,255,255,.06);
  --nv-glow:rgba(20,214,230,.45);
  --nv-amb:1;
}

/* ---------- NOVA claro ---------- */
:root[data-skin="nova"][data-theme="light"]{
  --bg:#EEF3F8; --bg-2:#E2EAF3;
  --ink:#0B1426; --ink-2:#2A3A52; --muted:#4F6079; --on-ink:#F4F8FC;
  --line:#CFDBE7; --hairline:rgba(11,20,38,.08);
  --accent:#0FC2D3; --accent-2:#3FD8E6; --accent-deep:#08788A; --accent-ink:#04121A;
  --accent-tint:rgba(15,194,211,.14); --accent-line:rgba(8,120,138,.40);
  --accent-text:#006F80; --ring:rgba(15,194,211,.45); --focus:#006F80;
  --ok:#00A870; --ok-tint:rgba(0,168,112,.12); --ok-line:rgba(0,140,94,.38); --ok-text:#006B47;
  --bad:#E0384D; --bad-tint:rgba(224,56,77,.10); --bad-line:rgba(224,56,77,.36); --bad-text:#B01F33;
  --warn:#E57A00; --warn-tint:rgba(229,122,0,.12); --warn-line:rgba(190,100,0,.40); --warn-text:#8F4700;
  --surface:rgba(255,255,255,.82); --surface-2:rgba(255,255,255,.62); --surface-solid:#FFFFFF; --nav-bg:rgba(255,255,255,.90);
  --glassline:rgba(11,20,38,.09); --spec:rgba(255,255,255,.75); --blur:blur(16px) saturate(1.5);
  --e1:0 1px 2px rgba(11,20,38,.04),0 10px 24px -14px rgba(11,20,38,.18);
  --e2:0 1px 2px rgba(11,20,38,.04),0 22px 44px -26px rgba(11,20,38,.28);
  --e3:0 34px 80px rgba(11,20,38,.24);
  --gain:#00875A; --loss:#B85000;
  --nv-card:linear-gradient(165deg,rgba(255,255,255,.92),rgba(246,250,253,.86));
  --nv-card-top:rgba(255,255,255,.9);
  --nv-glow:rgba(15,194,211,.30);
  --nv-amb:.55;
}

/* ---------- Ajustes ---------- */
.aj-h{margin:0 0 var(--sp-3);font-size:var(--fs-xs);font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.aj-h.aj-sec{margin-top:var(--sp-5)}
.modal h2 + .aj-h{margin-top:var(--sp-4)}
.aj-modes{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;background:var(--surface-2);
  border:1px solid var(--line);border-radius:var(--r-pill)}
.aj-mode{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;font-weight:800;
  font-size:var(--fs-sm);color:var(--ink-2);border-radius:var(--r-pill)}
.aj-mode svg{width:16px;height:16px}
.aj-mode[aria-checked="true"]{background:var(--nv-grad-cool);color:var(--accent-ink);box-shadow:0 10px 26px -12px var(--nv-glow)}
.aj-mode[disabled]{opacity:.6}
.aj-auto{margin-top:var(--sp-3)}
