/* Byte-Via design tokens — shared by the public site, installer and dashboard */
:root{
  color-scheme:light;
  --brand:#C11E22; --brand-rgb:193,30,34; --brand-hover:#9E171B; --brand-soft:#FBEAEA; --brand-ink:#fff;
  --brand-dark:#E65C60; --brand-dark-rgb:230,92,96; --grey:#8D8988;
  --ink:#15171C; --ink-2:#2B2F36; --text:#4A4F57; --muted:#6A6F77;
  --line:#E6E3E1; --line-strong:#D2CECB;
  --bg:#FFFFFF; --bg-alt:#F7F5F4; --surface:#FFFFFF; --surface-2:#FBFAF9;
  --band:#15171C; --on-band:#fff; --on-band-muted:rgba(255,255,255,.7); --band-line:rgba(255,255,255,.12);
  --brand-text:var(--brand); --glow:rgba(var(--brand-rgb),.09); --grid:rgba(21,23,28,.055);
  --ok:#0E7C3A; --warn:#B45309; --info:#1D5FB8;
  --r-sm:6px; --r-md:8px; --r-lg:10px;
  --shadow-1:0 1px 2px rgba(21,23,28,.05);
  --shadow-2:0 2px 4px rgba(21,23,28,.04),0 12px 28px -14px rgba(21,23,28,.22);
  --font:'Cairo',system-ui,-apple-system,'Segoe UI',Tahoma,Arial,sans-serif;
  --ease:cubic-bezier(.2,.7,.3,1);
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --brand-soft:rgba(var(--brand-dark-rgb),.14); --brand-text:var(--brand-dark);
  --ink:#ECEBEA; --ink-2:#D9D6D3; --text:#B9B6B3; --muted:#9A9794;
  --line:#2A2E33; --line-strong:#3A3F45;
  --bg:#0F1113; --bg-alt:#14171A; --surface:#171A1D; --surface-2:#1C2024;
  --band:#1A1D21; --glow:rgba(var(--brand-dark-rgb),.12); --grid:rgba(255,255,255,.045);
  --ok:#3CC47C; --warn:#F2A650; --info:#7AAFFF;
  --shadow-1:0 1px 2px rgba(0,0,0,.4);
  --shadow-2:0 2px 4px rgba(0,0,0,.3),0 12px 28px -14px rgba(0,0,0,.6);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.85;overflow-x:hidden;-webkit-font-smoothing:antialiased}
::selection{background:var(--brand);color:#fff}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{color:var(--ink);font-weight:800;line-height:1.3}
:focus-visible{outline:2px solid var(--brand-text);outline-offset:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--font);font-weight:700;font-size:.95rem;line-height:1.3;
  padding:.72rem 1.35rem;border-radius:var(--r-sm);border:1px solid transparent;cursor:pointer;transition:background-color .18s,border-color .18s,color .18s,transform .18s}
.btn-primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}
.btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}
.btn-outline{background:transparent;color:var(--ink);border-color:var(--line-strong)}
.btn-outline:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.btn-ghost{background:transparent;color:var(--ink-2)}
.btn-ghost:hover{background:var(--bg-alt);color:var(--ink)}
.btn-sm{padding:.45rem .9rem;font-size:.85rem}
.btn-danger{background:transparent;color:#C11E22;border-color:var(--line-strong)}
.btn-danger:hover{background:#C11E22;color:#fff;border-color:#C11E22}
/* forms */
.field{display:grid;gap:.35rem;margin-bottom:1rem}
.field label{font-weight:700;font-size:.88rem;color:var(--ink-2)}
.field input,.field select,.field textarea{width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:.65rem .85rem;transition:border-color .15s,box-shadow .15s}
.field textarea{min-height:120px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.15)}
.field .err{color:var(--brand-text);font-size:.8rem}
.field .hint{color:var(--muted);font-size:.8rem}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:640px){.row2{grid-template-columns:1fr}}
.alert{padding:.8rem 1rem;border-radius:var(--r-md);border:1px solid var(--line);border-inline-start:3px solid var(--ok);background:var(--surface-2);margin-bottom:1rem;color:var(--ink-2)}
.alert.error{border-inline-start-color:var(--brand)}
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
