/* Signal Boost brand tokens */
@font-face { font-family: 'Space Grotesk'; src: url('/assets/fonts/SpaceGrotesk-Regular.ttf') format('truetype');  font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Space Grotesk'; src: url('/assets/fonts/SpaceGrotesk-Medium.ttf') format('truetype');   font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Space Grotesk'; src: url('/assets/fonts/SpaceGrotesk-SemiBold.ttf') format('truetype'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Space Grotesk'; src: url('/assets/fonts/SpaceGrotesk-Bold.ttf') format('truetype');     font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/assets/fonts/Inter-Regular.ttf') format('truetype');        font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/assets/fonts/Inter-Medium.ttf') format('truetype');         font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/assets/fonts/Inter-SemiBold.ttf') format('truetype');       font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/assets/fonts/Inter-Bold.ttf') format('truetype');           font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/assets/fonts/Inter-Italic.ttf') format('truetype');         font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/assets/fonts/Inter-MediumItalic.ttf') format('truetype');   font-weight: 500; font-style: italic; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/assets/fonts/Inter-BoldItalic.ttf') format('truetype');     font-weight: 700; font-style: italic; font-display: swap; }

:root {
  /* Colours */
  --brand-primary:       #001FCC;
  --brand-primary-dark:  #0018A6;
  --brand-danger:        #C8322B;
  --brand-success:       #0F8F5A;

  /* Neutral palette */
  --bg-1:      #FFFFFF;
  --bg-2:      #F6F7F9;
  --fg-1:      #0A0A0F;
  --fg-2:      #4A4F5C;
  --fg-3:      #6E7381;
  --border-1:  #DFE2E8;

  /* Typography */
  --font-display: 'Space Grotesk', 'Helvetica Neue', Arial, sans-serif;
  --font-body:    'Inter', 'Helvetica Neue', Arial, sans-serif;
  --font-mono:    'JetBrains Mono', 'IBM Plex Mono', ui-monospace, Menlo, monospace;

  /* Shadows */
  --shadow-modal: 0 12px 32px rgba(10,10,15,.10), 0 2px 4px rgba(10,10,15,.04);
  --shadow-1:     0 1px 2px rgba(10,10,15,.06), 0 1px 1px rgba(10,10,15,.04);

  /* Radii */
  --radius-xxs: 4px;

  /* Brand name shown in UI */
  --brand-name: "Signal Boost";

  /* Existing component aliases. */
  --sb-blue:        var(--brand-primary);
  --sb-blue-bright: #4964FC;
  --sb-blue-800:    var(--brand-primary-dark);
  --sb-blue-50:     #EEF1FF;
  --sb-blue-100:    #DCE2FF;
  --sb-blue-200:    #B8C4FF;
  --sb-grey-50:     #F6F7F9;
  --sb-grey-100:    #EDEFF3;
  --sb-grey-200:    #DFE2E8;
  --sb-grey-300:    #C7CCD5;
  --sb-grey-400:    #9AA0AC;
  --sb-grey-500:    #6E7381;
  --sb-grey-600:    #4A4F5C;
  --sb-grey-700:    #2F3340;
  --sb-grey-800:    #1A1D26;
  --sb-grey-900:    #0F1118;
  --border-2:       #C7CCD5;
  --fg-link:        var(--brand-primary);
  --success:        var(--brand-success);
  --warning:        #D08700;
  --danger:         var(--brand-danger);
  --shadow-2:       0 4px 12px rgba(10,10,15,.08), 0 1px 2px rgba(10,10,15,.04);
  --shadow-3:       0 12px 32px rgba(10,10,15,.10), 0 2px 4px rgba(10,10,15,.04);
  --shadow-brand:   0 10px 32px rgba(0,31,204,.22);
  --ease-out:       cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-inout:     cubic-bezier(0.4, 0, 0.2, 1);
  --dur-1:          120ms;
  --dur-2:          200ms;
  --dur-3:          320ms;
  --sb-primary:     var(--brand-primary);
  --sb-primary-dark: var(--brand-primary-dark);
}
