:root{
  --bg: #0a1324;
  --bg-elev: #0f1b33;
  --panel: #0c1e3a;
  --text: #e6edf7;
  --muted: #b8c3d9;
  --line: #1d314f;
  --brand: #1e66ff; /* trust blue */
  --accent: #22d37f; /* command green */
  --accent-2: #9ae6b4;
  --warn: #ffb454;

  --shadow: 0 1px 2px rgba(0,0,0,.25), 0 10px 30px rgba(2,12,27,.35);
  --radius: 12px;
  --radius-sm: 8px;
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-5: 3rem;
}

@media (prefers-color-scheme: light){
  :root{
    --bg: #f7f9fc;
    --bg-elev: #ffffff;
    --panel: #f2f6fb;
    --text: #0b1220;
    --muted: #3d4a63;
    --line: #dbe3f1;
    --brand: #1b4b91;
    --accent: #0fb36a;
    --accent-2: #2ee58b;
    --warn: #b76100;
    --shadow: 0 1px 2px rgba(0,0,0,.06), 0 6px 20px rgba(0,33,85,.12);
  }
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  padding:0;
  color:var(--text);
  background: linear-gradient(180deg,
    var(--bg) 0%,
    color-mix(in oklab, var(--bg) 75%, var(--bg-elev) 25%) 55%,
    var(--bg-elev) 100%);
  background-attachment: fixed;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Helvetica Neue", sans-serif;
  line-height: 1.55;
}

.mono{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}

.wrap{max-width:980px;margin:0 auto;padding:0 var(--space-2)}
.site-main{padding:var(--space-5) 0}

/* Skip link */
.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:var(--space-2);top:var(--space-2);width:auto;height:auto;background:var(--brand);color:#fff;padding:.5rem .75rem;border-radius:8px;z-index:1000}

/* Header */
.site-header{position:sticky;top:0;background:linear-gradient(180deg, rgba(12,30,58,.9), rgba(12,30,58,.7));backdrop-filter: blur(8px);border-bottom:1px solid var(--line);z-index:50}
.header-inner{display:flex;align-items:center;gap:var(--space-2);min-height:clamp(64px, 8vw, 96px)}
.brand{display:flex;align-items:center;gap:.75rem;color:var(--text);text-decoration:none}
.brand:hover .brand-text{opacity:.95}
.brand-mark svg{width:clamp(36px, 4.2vw, 56px);height:clamp(24px, 2.8vw, 40px);display:block}
.brand-mark .term{fill:transparent;stroke:var(--line);stroke-width:2}
.brand-mark .chev{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.brand-mark .cursor{fill:var(--brand)}
.brand-text{font-size:clamp(1.25rem, 2.8vw, 2.1rem);letter-spacing:.25px;color:#fff}

/* Footer */
.site-footer{border-top:1px solid var(--line);padding:var(--space-4) 0;background:linear-gradient(180deg, transparent, rgba(12,30,58,.25));}
.site-footer p{margin:.2rem 0;color:var(--muted)}

/* Typography */
h1{font-size:2rem;line-height:1.2;margin:0 0 var(--space-2)}
h2{font-size:1.4rem;margin:var(--space-3) 0 var(--space-1)}
p{margin:0 0 var(--space-2)}
.small{font-size:.92rem;color:var(--muted)}

/* Links */
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}

/* Panels / cards */
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-3)}

/* Horizontal rule */
hr{border:0;border-top:1px solid var(--line);margin:var(--space-3) 0}

/* Forms */
form{display:block}
fieldset{border:1px solid var(--line);padding:var(--space-2);margin:var(--space-3) 0;border-radius:var(--radius-sm);background:rgba(255,255,255,.02)}
legend{padding:0 .4rem;color:var(--muted);font-weight:600}
label{display:block;margin:.55rem 0}
input,select,textarea{width:100%;padding:.75rem .9rem;border:1px solid var(--line);border-radius:10px;background:var(--bg-elev);color:var(--text);box-shadow: inset 0 1px 0 rgba(255,255,255,.03)}
input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in oklab, var(--brand) 65%, white 35%);outline-offset:2px;border-color:transparent}

/* Radios */
input[type="radio"]{width:auto;margin-right:.4rem;accent-color: var(--accent)}
label input[type="radio"]{margin-right:.5rem}

/* Buttons */
button, .btn{appearance:none;padding:.85rem 1.2rem;border:1px solid transparent;border-radius:999px;background:linear-gradient(180deg, color-mix(in oklab, var(--brand) 92%, black 8%), color-mix(in oklab, var(--brand) 88%, black 12%));color:#fff;font-weight:600;cursor:pointer;box-shadow: 0 6px 18px rgba(30,102,255,.25)}
button:hover, .btn:hover{filter:brightness(1.05)}
button:active, .btn:active{transform:translateY(1px)}
button.secondary, .btn.secondary{background:transparent;border-color:var(--line);color:var(--text)}
button.accent, .btn.accent{background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 92%, black 8%), color-mix(in oklab, var(--accent) 88%, black 12%));box-shadow: 0 6px 18px rgba(34,211,127,.22)}

/* Utilities */
.grid{display:grid;gap:var(--space-3)}
.row{display:flex;gap:var(--space-2);flex-wrap:wrap}
.col{flex:1 1 280px}
.center{text-align:center}

/* Honeypot field */
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
