/* Brand authority: index.html. Keep these values in sync. */
:root{
  --void:#050A0F;
  --void-2:#070D14;
  --panel:rgba(255,255,255,.022);
  --line:rgba(120,220,235,.16);
  --line-soft:rgba(255,255,255,.07);
  --ink:#E9F1F7;
  --muted:#93A3B4;
  --muted-2:#6F8092;
  --cyan:#3ADBE8;
  --cyan-deep:#16A9BF;
  --coral:#FF8A6B;
  --coral-2:#FF6E8A;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,"JetBrains Mono",Menlo,Consolas,monospace;
}

*{box-sizing:border-box}
html{color-scheme:dark;-webkit-text-size-adjust:100%}
body{background:var(--void);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
::selection{background:rgba(58,219,232,.28)}
.cem-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);flex-shrink:0}
.cem-brand .brand-mark{width:30px;height:30px;flex-shrink:0}
.cem-brand .brand-text{display:flex;flex-direction:column;line-height:1.05}
.cem-brand .brand-word{font-size:19px;font-weight:600;letter-spacing:.20em}
.cem-brand .brand-sub{font:8.5px var(--mono);letter-spacing:.19em;color:var(--muted-2);text-transform:uppercase;margin-top:5px}
button,input,select,textarea{font:inherit}
a,button,input,select,textarea{transition:color .16s,background-color .16s,border-color .16s,box-shadow .16s,transform .16s}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
button:active:not(:disabled){transform:translateY(1px)}
button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
input::placeholder,textarea::placeholder{color:var(--muted-2)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
