/* 1.7.0: one component system, four complete palettes. No external assets. */
:root {
  --bg:#0c0b13; --bg2:#12101e; --panel:#171421; --panel2:#211b2e;
  --text:#f4f1fb; --text-soft:#cdc5db; --muted:#a59bb6; --text-faint:#a59bb6;
  --accent:#bc9afa; --accent-strong:#d5c0ff; --button-bg:#9b6ae2; --button-text:#140922;
  --accent-rgb:174,126,249; --secondary-rgb:214,108,213;
  --line:rgba(212,195,245,.12); --line-strong:rgba(212,195,245,.25);
  --header:rgba(12,11,19,.94); --glass:rgba(23,20,33,.86); --glass-strong:#1d182b;
  --hero-start:#211832; --hero-end:#101018; --stage:#110e19;
  --surface:#171421; --surface-soft:#211b2e; --surface-elevated:#272031;
  --image-stage:#f3f3f6; --image-stage-soft:#f3f3f6;
  --overlay:rgba(3,3,9,.78); --soft:rgba(195,158,252,.035);
  --danger:#ff99a9; --emerald:#80d8b4; --warning:#efca88; --silver:#c3c7d9;
  --shadow:0 22px 64px rgba(0,0,0,.35); --shadow-card:0 10px 30px rgba(0,0,0,.14); --shadow-soft:0 5px 24px rgba(0,0,0,.12);
  --radius:18px; --radius-sm:12px; --radius-lg:24px;
  --ease-out:cubic-bezier(.22,1,.36,1); --motion-fast:160ms; --motion-base:240ms;
  --cyan:var(--accent); --cyan-ink:var(--button-text); --violet:var(--accent);
  --theme-glow-a:rgba(var(--accent-rgb),.13); --theme-glow-b:rgba(var(--secondary-rgb),.06);
  color-scheme:dark;
}
:root[data-skin='midnight'] {
  --bg:#080f18; --bg2:#0d1721; --panel:#111d29; --panel2:#172635;
  --text:#f1f7fc; --text-soft:#c1d2e1; --muted:#97b0c5; --text-faint:#97b0c5;
  --accent:#6bdbed; --accent-strong:#a2eeff; --button-bg:#71daec; --button-text:#06222c;
  --accent-rgb:56,193,224; --secondary-rgb:62,102,222;
  --line:rgba(147,190,218,.13); --line-strong:rgba(147,190,218,.27);
  --header:rgba(8,15,24,.94); --glass:rgba(17,29,41,.86); --glass-strong:#172735;
  --hero-start:#132b3a; --hero-end:#0a121e; --stage:#091722;
  --surface:#111d29; --surface-soft:#172635; --surface-elevated:#1d3041; --soft:rgba(107,219,237,.03);
}
:root[data-skin='crimson'] {
  --bg:#130c10; --bg2:#1c1117; --panel:#21161c; --panel2:#2d1d25;
  --text:#fcf2f5; --text-soft:#dcc4ce; --muted:#bba0ac; --text-faint:#bba0ac;
  --accent:#ff98a9; --accent-strong:#ffc1cc; --button-bg:#bd2949; --button-text:#fff;
  --accent-rgb:243,86,117; --secondary-rgb:238,128,91;
  --line:rgba(244,181,199,.12); --line-strong:rgba(244,181,199,.25);
  --header:rgba(19,12,16,.94); --glass:rgba(33,22,28,.86); --glass-strong:#302028;
  --hero-start:#361823; --hero-end:#180f14; --stage:#1c0f16;
  --surface:#21161c; --surface-soft:#2d1d25; --surface-elevated:#37232d; --soft:rgba(255,152,169,.03);
}
:root[data-skin='ice'] {
  --bg:#f1f4f8; --bg2:#e9eef4; --panel:#fff; --panel2:#f5f7fa;
  --text:#18283e; --text-soft:#40546c; --muted:#536880; --text-faint:#536880;
  --accent:#315d92; --accent-strong:#1e4474; --button-bg:#243f61; --button-text:#fff;
  --accent-rgb:82,122,181; --secondary-rgb:135,164,209;
  --line:rgba(38,65,99,.12); --line-strong:rgba(38,65,99,.26);
  --header:rgba(246,248,251,.95); --glass:rgba(255,255,255,.9); --glass-strong:#fff;
  --hero-start:#e2ebf5; --hero-end:#f8fbfd; --stage:#dbe6f1;
  --surface:#fff; --surface-soft:#f5f7fa; --surface-elevated:#fff;
  --image-stage:#f3f5f8; --image-stage-soft:#f3f5f8; --overlay:rgba(13,29,50,.56); --soft:rgba(45,77,123,.025);
  --danger:#b72c4b; --emerald:#19785a; --warning:#856019; --silver:#617084;
  --shadow:0 22px 60px rgba(24,47,76,.15); --shadow-card:0 10px 30px rgba(24,47,76,.045); --shadow-soft:0 5px 24px rgba(24,47,76,.05);
  color-scheme:light;
}
