/* ============================================================
   Lexicon Watchdog — shared dashboard styles
   Dark mode, EZ Blue primary, hi-vis orange for violations
   ============================================================ */
@font-face{
  font-family:"FF Good Pro X Cond";
  src:url("fonts/FFGoodProXCond-Ultra.ttf") format("truetype");
  font-weight:900;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Basis Grotesque Pro";
  src:url("fonts/BasisGrotesque-Medium-Pro.ttf") format("truetype");
  font-weight:500;font-style:normal;font-display:swap;
}

:root{
  /* brand */
  --ez-blue:#0057B8; --ez-blue-deep:#003F87; --ez-blue-dark:#002A5C;
  --ez-blue-tint:#0E2A4A;
  --ez-black:#0A0A0A; --ez-white:#FFFFFF;

  /* asphalt (dark-mode reinterpretation: deeper, slightly cooler) */
  --bg:#0E1115;             /* page bg */
  --bg-alt:#15191F;         /* surface */
  --bg-card:#1A1F26;        /* raised card */
  --bg-elev:#22282F;        /* hover */
  --bg-tab:#0A0D11;         /* sticky chrome */
  --border:#262C35;
  --border-strong:#3A424D;
  --rule:#2F353D;

  /* type */
  --fg:#EAECEE;
  --fg-mid:#9AA1AB;
  --fg-low:#5F6772;
  --fg-on-blue:#FFFFFF;

  /* signals */
  --orange:#E8561C; --orange-dim:#A03D14; --orange-tint:#3A1A0D;
  --yellow:#F5C518; --yellow-tint:#3A2E08;
  --green:#1F8F4E;
  --blue-link:#7AB8FF;

  --font-display:"FF Good Pro X Cond","Impact","Oswald",sans-serif;
  --font-body:"Basis Grotesque Pro",-apple-system,"Helvetica Neue",Arial,sans-serif;
  --font-mono:ui-monospace,"SF Mono","Menlo","Consolas",monospace;

  --ease-out:cubic-bezier(0.22,1,0.36,1);
  --ease-in-out:cubic-bezier(0.65,0,0.35,1);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);
  font-family:var(--font-body);font-size:14px;line-height:1.5;
  -webkit-font-smoothing:antialiased;}
a{color:var(--blue-link);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
button{font-family:inherit;cursor:pointer}
::selection{background:var(--ez-blue);color:#fff}

/* utility */
.display{font-family:var(--font-display);font-weight:900;
  text-transform:uppercase;letter-spacing:-0.01em;line-height:0.92;}
.eyebrow{font-family:var(--font-body);font-weight:500;
  text-transform:uppercase;letter-spacing:0.12em;font-size:11px;color:var(--fg-mid)}
.mono{font-family:var(--font-mono);font-size:12px}

/* shared severity colors */
.sev-high   {color:var(--orange)}
.sev-medium {color:var(--yellow)}
.sev-low    {color:var(--fg-mid)}
.bg-sev-high   {background:var(--orange);color:#0A0A0A}
.bg-sev-medium {background:var(--yellow);color:#0A0A0A}
.bg-sev-low    {background:#3A424D;color:var(--fg)}

/* tag/chip */
.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;
  border:1px solid var(--border);background:transparent;color:var(--fg-mid);
  font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;
  border-radius:2px;cursor:pointer;transition:all 120ms var(--ease-out);
  white-space:nowrap;}
.chip:hover{border-color:var(--border-strong);color:var(--fg)}
.chip.active{background:var(--ez-blue);border-color:var(--ez-blue);color:#fff}
.chip.sev-h.active{background:var(--orange);border-color:var(--orange);color:#0A0A0A}
.chip.sev-m.active{background:var(--yellow);border-color:var(--yellow);color:#0A0A0A}
.chip.count{padding:2px 6px;font-size:10px;background:var(--bg-elev);
  border-radius:999px;border:none;color:var(--fg)}

/* status dot */
.dot{display:inline-block;width:8px;height:8px;border-radius:999px;flex:none;}

/* logo block — square badge motif */
.logo-badge{display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;background:var(--ez-blue);
  border:3px solid var(--ez-black);
  font-family:var(--font-display);font-weight:900;font-size:14px;
  color:#fff;letter-spacing:-0.02em;line-height:1;}
.logo-row{display:flex;align-items:center;gap:14px}
.logo-row .lw{font-family:var(--font-display);font-weight:900;font-size:16px;
  text-transform:uppercase;letter-spacing:0.02em;line-height:1;color:#fff;}
.logo-row .lw small{display:block;font-family:var(--font-body);font-weight:500;
  font-size:10px;letter-spacing:0.14em;color:var(--fg-mid);margin-top:3px;}

/* button */
.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;
  font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;
  border-radius:2px;border:1px solid var(--border-strong);
  background:transparent;color:var(--fg);cursor:pointer;
  transition:all 120ms var(--ease-out);}
.btn:hover{background:var(--bg-elev);border-color:var(--fg-mid)}
.btn-primary{background:var(--ez-blue);border-color:var(--ez-blue);color:#fff;}
.btn-primary:hover{background:var(--ez-blue-deep);border-color:var(--ez-blue-deep)}
.btn-ghost{border:none;color:var(--fg-mid);padding:9px 10px}
.btn-ghost:hover{color:var(--fg);background:var(--bg-elev)}

/* form */
input[type="text"],input[type="search"]{
  background:var(--bg-tab);border:1px solid var(--border);color:var(--fg);
  padding:9px 12px 9px 36px;border-radius:2px;font:inherit;font-size:13px;
  width:100%;transition:border-color 120ms var(--ease-out);}
input[type="text"]:focus,input[type="search"]:focus{
  outline:none;border-color:var(--ez-blue);}

/* lightbox shared */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,0.92);
  display:none;align-items:center;justify-content:center;z-index:1000;padding:32px;}
.lightbox.open{display:flex}
.lightbox img{max-width:100%;max-height:100%;box-shadow:0 24px 64px rgba(0,0,0,0.6);}
.lightbox .lb-close{position:absolute;top:20px;right:24px;color:#fff;
  background:transparent;border:1px solid #fff;padding:8px 14px;
  font-size:11px;letter-spacing:0.1em;text-transform:uppercase;}
.lightbox .lb-meta{position:absolute;top:20px;left:24px;color:#fff;
  font-size:11px;letter-spacing:0.12em;text-transform:uppercase;opacity:0.85;}

/* scrollbar (dark) */
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--bg-elev);border-radius:0}
::-webkit-scrollbar-thumb:hover{background:#3A424D}
