/* Culltron Web design tokens: one source of colour, type, radius, motion and focus
   for every surface (landing, checkout, hosting, operator, panel).
   Dark is the default; light follows the OS or [data-theme="light"]. */
:root{
  color-scheme:dark;
  --surface-0:#060d14;--surface-1:#0a1620;--surface-2:#0f1e2a;--surface-3:#172b3a;
  --glass:rgba(15,30,42,.66);--field:rgba(4,10,16,.72);--hairline:rgba(255,255,255,.06);
  --line:#22384a;--line-strong:#355166;--accent-line:#2f6f7a;
  --text:#eef6fc;--text-2:#9cb1c1;--text-3:#7690a2;
  --accent:#49e0e8;--accent-soft:rgba(73,224,232,.10);--on-accent:#04161a;
  --violet:#9b6bff;--violet-bg:#221c30;--violet-line:#6f5f8d;
  --ok:#5ff2a8;--ok-bg:rgba(95,242,168,.10);--warn:#ffc19e;--warn-bg:#3a2522;--warn-line:#a6604c;
  --danger:#ff8a73;--danger-bg:rgba(255,120,90,.12);
  --glow-1:rgba(73,224,232,.16);--glow-2:rgba(155,107,255,.18);--glow-3:rgba(95,242,168,.08);
  --shadow:0 1px 0 var(--hairline) inset,0 20px 50px -24px rgba(0,0,0,.8);
  --font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --r-sm:8px;--r:12px;--r-lg:16px;--ease:cubic-bezier(.2,.8,.2,1);
  /* legacy aliases kept so older selectors keep working */
  --bg:var(--surface-0);--panel:var(--surface-2);--edge:var(--line);--muted:var(--text-2);--cyan:var(--accent);--green:var(--ok);--ink:var(--on-accent);--r16:var(--r-lg)
}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){
  color-scheme:light;
  --surface-0:#f5f7fa;--surface-1:#ffffff;--surface-2:#ffffff;--surface-3:#eef2f6;
  --glass:rgba(255,255,255,.82);--field:#ffffff;--hairline:rgba(11,22,32,.06);
  --line:#dde4eb;--line-strong:#c4cfda;--accent-line:#8fcdd2;
  --text:#0b1620;--text-2:#475a6b;--text-3:#617384;
  --accent:#067a83;--accent-soft:rgba(6,122,131,.08);--on-accent:#ffffff;
  --violet:#6b3fd6;--violet-bg:#f3eefc;--violet-line:#c9b6ef;
  --ok:#11743f;--ok-bg:#e8f6ee;--warn:#97450f;--warn-bg:#fff2e9;--warn-line:#efc2a5;
  --danger:#b4321c;--danger-bg:#fdecea;
  --glow-1:rgba(6,122,131,.10);--glow-2:rgba(107,63,214,.08);--glow-3:rgba(17,116,63,.05);
  --shadow:0 1px 2px rgba(11,22,32,.06),0 12px 32px -18px rgba(11,22,32,.22)
}}
:root[data-theme="light"]{
  color-scheme:light;
  --surface-0:#f5f7fa;--surface-1:#ffffff;--surface-2:#ffffff;--surface-3:#eef2f6;
  --glass:rgba(255,255,255,.82);--field:#ffffff;--hairline:rgba(11,22,32,.06);
  --line:#dde4eb;--line-strong:#c4cfda;--accent-line:#8fcdd2;
  --text:#0b1620;--text-2:#475a6b;--text-3:#617384;
  --accent:#067a83;--accent-soft:rgba(6,122,131,.08);--on-accent:#ffffff;
  --violet:#6b3fd6;--violet-bg:#f3eefc;--violet-line:#c9b6ef;
  --ok:#11743f;--ok-bg:#e8f6ee;--warn:#97450f;--warn-bg:#fff2e9;--warn-line:#efc2a5;
  --danger:#b4321c;--danger-bg:#fdecea;
  --glow-1:rgba(6,122,131,.10);--glow-2:rgba(107,63,214,.08);--glow-3:rgba(17,116,63,.05);
  --shadow:0 1px 2px rgba(11,22,32,.06),0 12px 32px -18px rgba(11,22,32,.22)
}
/* Shared base components */
html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
body{font-family:var(--font);background:var(--surface-0);color:var(--text)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
::selection{background:var(--accent);color:var(--on-accent)}
input,select,textarea{background:var(--field);color:var(--text);border:1px solid var(--line);border-radius:var(--r-sm)}
input::placeholder,textarea::placeholder{color:var(--text-3)}
input:hover,select:hover,textarea:hover{border-color:var(--line-strong)}
input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}
.theme-toggle{display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;flex:0 0 auto}
.theme-toggle:hover{border-color:var(--accent)}.theme-toggle svg{width:18px;height:18px}
.skip-link{position:absolute;inset-inline-start:12px;top:-60px;z-index:100;background:var(--accent);color:var(--on-accent);padding:10px 14px;border-radius:var(--r-sm);font-weight:700}
.skip-link:focus{top:12px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
