:root {
  color-scheme: dark;

  /* Main backgrounds */
  --color-background: #070b12;
  --color-surface: #0d131d;
  --color-surface-raised: #121b28;
  --color-surface-hover: #182334;
  --color-surface-active: #1d2a3d;

  /* Borders */
  --color-border: #263348;
  --color-border-light: #34445e;
  --color-border-strong: #506584;

  /* Headliner DOJ accents */
  --color-primary: #d7a84b;
  --color-primary-hover: #ecc36d;
  --color-primary-muted: rgba(215, 168, 75, 0.14);
  --color-secondary: #7296c7;
  --color-secondary-muted: rgba(114, 150, 199, 0.14);

  /* Text */
  --color-text: #f3f6fa;
  --color-text-secondary: #aeb9c9;
  --color-text-muted: #718096;
  --color-text-dark: #111722;

  /* Status colors */
  --color-success: #63c58d;
  --color-warning: #e3ad52;
  --color-danger: #e26d73;
  --color-info: #6fa7df;

  /* Shadows */
  --shadow-small: 0 4px 12px rgba(0, 0, 0, 0.24);
  --shadow-medium: 0 10px 28px rgba(0, 0, 0, 0.34);
  --shadow-large: 0 18px 50px rgba(0, 0, 0, 0.44);

  /* Shape */
  --radius-small: 6px;
  --radius-medium: 10px;
  --radius-large: 14px;
  --radius-pill: 999px;

  /* Spacing */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 32px;
  --space-8: 40px;

  /* Typography */
  --font-family:
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  --font-mono:
    "Cascadia Code",
    "SFMono-Regular",
    Consolas,
    monospace;

  /* Application sizing */
  --header-height: 78px;
  --navigation-height: 52px;
  --footer-height: 34px;
  --content-max-width: 1920px;

  font-family: var(--font-family);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  min-width: 320px;
  height: 100%;
  margin: 0;
}

body {
  overflow: hidden;
  background:
    radial-gradient(
      circle at top left,
      rgba(114, 150, 199, 0.08),
      transparent 30%
    ),
    radial-gradient(
      circle at top right,
      rgba(215, 168, 75, 0.07),
      transparent 28%
    ),
    var(--color-background);

  color: var(--color-text);
  font-family: var(--font-family);
  -webkit-font-smoothing: antialiased;
}

button,
input,
select,
textarea {
  color: inherit;
  font: inherit;
}

button {
  border: 0;
}

button:not(:disabled) {
  cursor: pointer;
}

button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

h1,
h2,
h3,
h4,
p {
  margin-top: 0;
}

::selection {
  background: var(--color-primary);
  color: var(--color-text-dark);
}

:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}