/* ── Design tokens — all colors, spacing, and sizing ── */
/* Palette derived from the Airzimo logo: charcoal surfaces (#28292d),
   warm silver text (#aeada8), and the brand red airplane (#a41013). */
:root {
  --bg:          #1e1f22;
  --bg-sidebar:  #17181a;
  --bg-panel:    #26272b;
  --bg-card:     #2f3034;
  --bg-input:    #1a1b1d;
  --bg-hover:    #35363b;
  --border:      #3a3b40;
  --border-hi:   #4c4e54;
  --accent:      #cf4548;
  --accent-dark: #a41013;
  --accent-dim:  rgba(207,69,72,0.14);
  --accent-faint: rgba(207,69,72,0.08);
  --red:         #e04444;
  --red-dim:     rgba(224,68,68,0.14);
  --green:       #3dbd75;
  --green-dim:   rgba(61,189,117,0.12);
  --blue:        #4a9eda;
  --blue-dim:    rgba(74,158,218,0.14);
  --neutral-dim: rgba(100,120,140,0.1);
  --txt:         #cdccc7;
  --txt-muted:   #8e8d88;
  --txt-dim:     #5c5c58;
  --sidebar-w:   196px;
  --panel-sm:    720px;
  --panel-md:    960px;
  --panel-lg:   1200px;
  /* Core Tags is the one column sized by its contents rather than by taste:
     the 356px part form + the 20px .part-row gap + the 384px preview slot.
     Both flex children are `flex: 0 0` and must not shrink — the preview is a
     physical 4x6 label. Keep in sync with .part-form-card/.part-preview-slot. */
  --panel-tag:   760px;

  /* spacing scale */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 20px;
  --sp-6: 24px;

  /* type scale */
  --fs-xs:   10px;
  --fs-sm:   11px;
  --fs-base: 13px;
  --fs-md:   15px;
  --fs-lg:   18px;

  /* semantic borders / soft fills */
  --green-border:  rgba(61,189,117,0.28);
  --green-hover:   rgba(61,189,117,0.2);
  --red-border:    rgba(224,68,68,0.28);
  --accent-border: rgba(207,69,72,0.28);
  --blue-border:   rgba(74,158,218,0.25);

  /* radii */
  --radius-sm: 3px;
  --radius:    4px;
  --radius-lg: 6px;
}
