/* tokens_v1.css — generated from global.json (Figma Tokens Studio) */
:root {
  --font-family: 'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --color-background-base: rgb(243,244,246);
  --color-border-base: rgb(229,231,235);
  --color-border-muted: rgba(17,24,39,0.122);
  --color-feedback-error: rgb(220,38,38);
  --color-feedback-success: rgb(22,163,74);
  --color-feedback-warning: rgb(250,135,21);
  --color-primary-base: rgb(32,53,113);
  --color-primary-dark: rgb(11,29,66);
  --color-primary-disabled: rgba(0,59,188,0.400);
  --color-primary-soft: rgb(219,234,254);
  --color-surface-base: rgb(255,255,255);
  --color-text-disabled: rgba(17,24,39,0.502);
  --color-text-onprimary: rgb(255,255,255);
  --color-text-primary: rgb(17,24,39);
  --color-text-secondary: rgb(107,114,128);
  --sp-4: 4px;
  --sp-8: 8px;
  --sp-12: 12px;
  --sp-16: 16px;
  --sp-24: 24px;
  --sp-32: 32px;
  --sp-40: 40px;
  --sp-48: 48px;
  --radius-8: 8px;
  --radius-12: 12px;
  --radius-16: 16px;
  --radius-pill: 999px;
  --shadow-card: 0px 4px 4px 0px rgba(0,0,0,0.102);
  --height-chip: 40px;
  --height-row: 56px;
  --height-button: 48px;
  --height-header: 72px;
  --text-body-14-reg-font-size: 14px;
  --text-body-14-reg-font-weight: 400;
  --text-body-14-reg-letter-spacing: 0%;
  --text-body-14-reg-line-height: 18px;
  --text-body-14-sb-font-size: 14px;
  --text-body-14-sb-font-weight: 600;
  --text-body-14-sb-letter-spacing: 0%;
  --text-body-14-sb-line-height: 18px;
  --text-button-14-med-font-size: 14px;
  --text-button-14-med-font-weight: 500;
  --text-button-14-med-letter-spacing: 0%;
  --text-button-14-med-line-height: 18px;
  --text-caption-12-reg-font-size: 12px;
  --text-caption-12-reg-font-weight: 400;
  --text-caption-12-reg-letter-spacing: 0%;
  --text-caption-12-reg-line-height: 16px;
  --text-h1-24-sb-font-size: 24px;
  --text-h1-24-sb-font-weight: 600;
  --text-h1-24-sb-letter-spacing: 0%;
  --text-h1-24-sb-line-height: 26px;
  --text-h2-18-sb-font-size: 18px;
  --text-h2-18-sb-font-weight: 600;
  --text-h2-18-sb-letter-spacing: 0%;
  --text-h2-18-sb-line-height: 22px;
}

/* Semantic aliases (optional) */
:root {
  --color-primary: var(--color-primary-base);
  --color-on-primary: var(--color-text-onprimary);
  --color-bg: var(--color-background-base);
  --color-surface: var(--color-surface-base);
  --color-border: var(--color-border-base);
  --color-text: var(--color-text-primary);
  --color-text-muted: var(--color-text-secondary);
}

body { font-family: var(--font-family); color: var(--color-text); background: var(--color-bg); }

/* Typography helper classes (optional) */
.text-h1-24-sb { font-family: var(--font-family); font-size: 24px; line-height: 26px; font-weight: 600; letter-spacing: 0%; }
.text-h2-18-sb { font-family: var(--font-family); font-size: 18px; line-height: 22px; font-weight: 600; letter-spacing: 0%; }
.text-body-14-reg { font-family: var(--font-family); font-size: 14px; line-height: 18px; font-weight: 400; letter-spacing: 0%; }
.text-body-14-sb { font-family: var(--font-family); font-size: 14px; line-height: 18px; font-weight: 600; letter-spacing: 0%; }
.text-caption-12-reg { font-family: var(--font-family); font-size: 12px; line-height: 16px; font-weight: 400; letter-spacing: 0%; }
.text-button-14-med { font-family: var(--font-family); font-size: 14px; line-height: 18px; font-weight: 500; letter-spacing: 0%; }

/* Optional primitives */
.btn{height:var(--height-button);border-radius:var(--radius-12);padding:0 var(--sp-16,16px);
display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-8,8px);cursor:pointer;
font-family:var(--font-family);font-size:var(--text-button-14-med-font-size,14px);font-weight:var(--text-button-14-med-font-weight,500);
line-height:var(--text-button-14-med-line-height,18px);letter-spacing:var(--text-button-14-med-letter-spacing,0);}

.btn--primary{background:var(--color-primary-base);color:var(--color-text-onprimary);border:0;}
.btn--secondary{background:transparent;color:var(--color-primary-base);border:2px solid var(--color-primary-base);}
.btn:disabled{background:var(--color-primary-disabled);color:var(--color-text-disabled);border-color:var(--color-border-muted);cursor:not-allowed;}

.chip{height:var(--height-chip);border-radius:var(--radius-pill);padding:0 var(--sp-16,16px);
display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--color-primary-base);
background:var(--color-surface-base);color:var(--color-primary-base);font-family:var(--font-family);
font-size:var(--text-body-14-sb-font-size,14px);font-weight:var(--text-body-14-sb-font-weight,600);line-height:var(--text-body-14-sb-line-height,18px);}

.chip--selected{background:var(--color-primary-base);color:var(--color-text-onprimary);border-color:var(--color-primary-base);}
.chip--disabled{background:var(--color-background-base);color:var(--color-text-disabled);border-color:var(--color-border-muted);}

.card{background:var(--color-surface-base);border-radius:var(--radius-16);box-shadow:var(--shadow-card);
border:1px solid var(--color-border-base);padding:var(--sp-16,16px);}
