/* SUPRHELD Afterlight v1.3. Rebuild from tokens.json with tools/build-layouts.py. */
@font-face { font-family: "Noto Sans"; src: url("../fonts/NotoSans-Regular.ttf") format("truetype"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "Noto Sans"; src: url("../fonts/NotoSans-Medium.ttf") format("truetype"); font-style: normal; font-weight: 500; font-display: swap; }
@font-face { font-family: "Noto Sans Mono"; src: url("../fonts/NotoSansMono-Regular.ttf") format("truetype"); font-style: normal; font-weight: 400; font-display: swap; }
:root {
  color-scheme: dark;
  --sh-canvas: #07131D;
  --sh-surface: #0D1D29;
  --sh-raised: #142735;
  --sh-input: #0A1823;
  --sh-text: #F1EFE8;
  --sh-secondary: #BCC6C4;
  --sh-muted: #A8B2AE;
  --sh-accent: #79B9B3;
  --sh-accent-hover: #91CCC5;
  --sh-on-accent: #07131D;
  --sh-border: #334956;
  --sh-control-border: #607884;
  --sh-focus: #9AD6CE;
  --sh-success: #8AC4A1;
  --sh-warning: #E4C38C;
  --sh-danger: #E9A4A1;
  --sh-info: #A8BEDD;
  --sh-sand: #D8CDBD;
  --sh-space-4: 4px;
  --sh-space-8: 8px;
  --sh-space-12: 12px;
  --sh-space-16: 16px;
  --sh-space-24: 24px;
  --sh-space-32: 32px;
  --sh-space-48: 48px;
  --sh-space-64: 64px;
  --sh-space-96: 96px;
  --sh-type-caption: 0.875rem;
  --sh-type-body: 1rem;
  --sh-type-lead: 1.25rem;
  --sh-type-heading-small: 1.5rem;
  --sh-type-heading: 2rem;
  --sh-type-title: 3rem;
  --sh-type-display: 5rem;
  --sh-radius-control: 0px;
  --sh-radius-panel: 0px;
  --sh-sans: "Noto Sans", system-ui, sans-serif;
  --sh-mono: "Noto Sans Mono", monospace;
  --sh-max-width: 1200px;
  --sh-target: 44px;
  --sh-duration: 120ms;
}
.sh-theme { background: var(--sh-canvas); color: var(--sh-text); font-family: var(--sh-sans); font-size: var(--sh-type-body); line-height: 1.6; font-synthesis: none; }
.sh-theme *, .sh-theme *::before, .sh-theme *::after { box-sizing: border-box; }
.sh-theme :is(h1,h2,h3,h4) { font-weight: 500; line-height: 1.15; text-wrap: balance; }
.sh-theme :is(button,input,select,textarea) { font: inherit; }
.sh-theme a { color: var(--sh-accent); text-underline-offset: .2em; }
.sh-theme :focus-visible { outline: 2px solid var(--sh-focus); outline-offset: 3px; }
.sh-theme ::selection { background: var(--sh-accent); color: var(--sh-on-accent); }
.sh-container { width: min(calc(100% - 48px), var(--sh-max-width)); margin-inline: auto; }
.sh-display { font-size: clamp(2.75rem, 6vw, 5rem); font-weight: 500; line-height: 1.12; letter-spacing: -.025em; }
.sh-secondary { color: var(--sh-secondary); }
.sh-meta { color: var(--sh-muted); font: .875rem/1.5 var(--sh-mono); }
/* Use the original raster for campaigns; this is a lightweight UI approximation. */
.sh-afterlight { background-color: var(--sh-canvas); background-image: radial-gradient(ellipse 45% 28% at 0% 105%, rgba(174,123,96,.38), transparent 100%), radial-gradient(ellipse 50% 26% at 48% 108%, rgba(85,158,150,.34), transparent 100%), radial-gradient(ellipse 40% 26% at 100% 110%, rgba(92,125,151,.30), transparent 100%); }
@media (min-width: 900px) { .sh-container { width: min(calc(100% - 96px), var(--sh-max-width)); } }
@media (prefers-reduced-motion: reduce) { :root { --sh-duration: 0ms; } .sh-theme *, .sh-theme *::before, .sh-theme *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

/* CORE: current-app blue-black surfaces and matched panel/button colours. */
.sh-core {
  --sh-canvas: #071018;
  --sh-surface: #0E1922;
  --sh-surface-alternate: #0C1922;
  --sh-raised: #1A2C37;
  --sh-input: #111E28;
  --sh-text: #F1EFE8;
  --sh-secondary: #A2B2B8;
  --sh-muted: #9AAFB7;
  --sh-border: #22343E;
  --sh-control-border: #647F8D;
  --sh-button: #101D27;
  --sh-button-text: #E6ECE9;
  --sh-button-border: #30414C;
  --sh-button-hover: #1A2C37;
  --sh-accent: #79B9B3;
  --sh-accent-hover: #A0D2CB;
  --sh-focus: #BCE3DB;
  --sh-radius-control: 0px;
  --sh-radius-panel: 0px;
  --sh-source-wiki: #79B9B3;
  --sh-source-meetings: #D8A76B;
  --sh-source-documents: #D8CDBD;
  --sh-source-claude: #A8BEDD;
  --sh-source-codex: #AFA4D7;
  --sh-source-projects: #9DBB8D;
  --sh-source-skills: #D58D9F;
}
.sh-core .sh-afterlight, .sh-core.sh-afterlight { background-image: none; }
.sh-core :is(h1,h2) { letter-spacing: 0; }
.sh-core .sh-topnav { display: flex; align-items: center; min-height: 44px; gap: 24px; padding-inline: 24px; border-bottom: 1px solid var(--sh-border); }
.sh-core .sh-topnav a { display: inline-flex; align-items: center; min-height: 44px; color: var(--sh-muted); text-decoration: none; }
.sh-core .sh-topnav a[aria-current=page] { color: var(--sh-text); text-decoration: underline; text-decoration-color: var(--sh-accent); text-underline-offset: 15px; }
.sh-core .sh-topnav .sh-help-link { margin-inline-start: auto; }
.sh-core .sh-topnav .sh-brand-logo { display: block; height: 28px; width: auto; flex: none; }

