/* brand.css — shared design language for Portal Assist.
   Linked from every page BEFORE its page-specific <style>.
   Page-specific token overrides (e.g. a different --radius) may be
   re-declared in that page's own :root, after this file loads. */
:root{
  --navy:#080B42; --accent:#5927ff; --accent-ink:#4c1fd6;
  /* Accent aligned to Portal Networks brand violet (#5927ff). Formerly coral. */
  --warm:#5927ff; --warm-ink:#4c1fd6; --warm-tint:#efeaff;
  --bg:#f7f6f3; --card:#fff; --ink:#0d1033; --muted:#596273; --line:#e7eaf2;
  --radius:16px;
  --shadow:0 1px 2px rgba(8,11,66,.04),0 10px 30px rgba(8,11,66,.07);
  --shadow-hover:0 6px 14px rgba(8,11,66,.08),0 18px 44px rgba(8,11,66,.12);
  /* Status colors darkened to clear WCAG AA (4.5:1) as small bold text on light
     chip tints (green/amber/red/grey were 2.5–3.4:1). Used for both text and dots. */
  --pos:#0b6b43; --neg:#b81d34; --neu:#5f6675;
  --green:#0b6b43; --amber:#8a5300; --red:#b81d34;
  --grad:linear-gradient(120deg,#08DCFC,#2764FD,#7714FD,#C121F3,#FD3290,#FD7A45);
  --font:'Montserrat',Arial,Helvetica,sans-serif;
  --t-fast:.16s ease; --t-base:.22s ease;
}
*{box-sizing:border-box}
a{color:inherit}
.gradtext{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.10em;text-transform:uppercase;color:var(--warm-ink)}
.btn{display:inline-block;background:var(--accent);color:#fff;border:0;border-radius:11px;padding:14px 26px;font:inherit;font-weight:800;cursor:pointer;text-decoration:none;box-shadow:0 8px 20px rgba(89,39,255,.28);transition:transform var(--t-fast),box-shadow var(--t-fast)}
.btn:hover{transform:translateY(-1px)}
.btn.lg{padding:16px 32px;font-size:16px}
.btn.ghost{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}
.btn.ghost:hover{border-color:var(--warm);color:var(--warm-ink)}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}
