/* Airut Design System: generated from tokens.json */
:root, [data-theme="light"] {
  --forest: #0B7C4A;
  --meadow: #1FA064;
  --signal: #33C47D;
  --brand-ink: #0E1612;
  --green-50: #ECFCF1;
  --green-100: #D7F8E2;
  --green-200: #B4F0CA;
  --green-300: #83E1A9;
  --green-400: var(--signal);
  --green-500: var(--meadow);
  --green-600: var(--forest);
  --green-700: #0E623B;
  --green-800: #0D4B2C;
  --green-900: #0D341F;
  --green-950: #082013;
  --neutral-0: #FFFFFF;
  --neutral-25: #F8FBF9;
  --neutral-50: #F2F5F3;
  --neutral-100: #E7EDEA;
  --neutral-200: #D7DEDB;
  --neutral-300: #BBC3BF;
  --neutral-400: #959E99;
  --neutral-500: #727C76;
  --neutral-600: #555F5A;
  --neutral-700: #3D4641;
  --neutral-800: #29312D;
  --neutral-850: #1B231E;
  --neutral-900: var(--brand-ink);
  --neutral-950: #070D0A;
  --surface: #F8FBF9;
  --surface-raised: #FFFFFF;
  --surface-sunken: #E7EDEA;
  --surface-inverse: #0E1612;
  --ink: #0E1612;
  --ink-muted: #555F5A;
  --ink-inverse: #F2F5F3;
  --line: #D7DEDB;
  --line-strong: #727C76;
  --accent: #0B7C4A;
  --accent-hover: #0E623B;
  --on-accent: #FFFFFF;
  --accent-text: #0B7C4A;
  --accent-soft: #D7F8E2;
  --presence: #1FA064;
  --focus-ring: #0B7C4A;
  --bubble-guest: #0B7C4A;
  --on-bubble-guest: #FFFFFF;
  --bubble-airut: #F2F5F3;
  --success: var(--accent-text);
  --success-soft: var(--accent-soft);
  --warning: #9A5B00;
  --warning-soft: #FFF1D6;
  --danger: #B42318;
  --danger-soft: #FDE7E4;
  --info: #1F5FAD;
  --info-soft: #E3EEFB;
  --scrim: rgba(14, 22, 18, 0.48);
  --shadow-1: 0 1px 2px rgba(14, 22, 18, 0.06), 0 1px 1px rgba(14, 22, 18, 0.04);
  --shadow-2: 0 12px 32px rgba(14, 22, 18, 0.12), 0 2px 6px rgba(14, 22, 18, 0.06);
}
[data-theme="dark"] {
  --forest: #0B7C4A;
  --meadow: #1FA064;
  --signal: #33C47D;
  --brand-ink: #0E1612;
  --green-50: #ECFCF1;
  --green-100: #D7F8E2;
  --green-200: #B4F0CA;
  --green-300: #83E1A9;
  --green-400: var(--signal);
  --green-500: var(--meadow);
  --green-600: var(--forest);
  --green-700: #0E623B;
  --green-800: #0D4B2C;
  --green-900: #0D341F;
  --green-950: #082013;
  --neutral-0: #FFFFFF;
  --neutral-25: #F8FBF9;
  --neutral-50: #F2F5F3;
  --neutral-100: #E7EDEA;
  --neutral-200: #D7DEDB;
  --neutral-300: #BBC3BF;
  --neutral-400: #959E99;
  --neutral-500: #727C76;
  --neutral-600: #555F5A;
  --neutral-700: #3D4641;
  --neutral-800: #29312D;
  --neutral-850: #1B231E;
  --neutral-900: var(--brand-ink);
  --neutral-950: #070D0A;
  --surface: #0E1612;
  --surface-raised: #1B231E;
  --surface-sunken: #070D0A;
  --surface-inverse: #F2F5F3;
  --ink: #EEF3F0;
  --ink-muted: #A3AEA8;
  --ink-inverse: #0E1612;
  --line: #29312D;
  --line-strong: #727C76;
  --accent: #33C47D;
  --accent-hover: #83E1A9;
  --on-accent: #0E1612;
  --accent-text: #56D493;
  --accent-soft: #0D341F;
  --presence: #33C47D;
  --focus-ring: #33C47D;
  --bubble-guest: #0D4B2C;
  --on-bubble-guest: #EEF3F0;
  --bubble-airut: #1B231E;
  --success: var(--accent-text);
  --success-soft: var(--accent-soft);
  --warning: #F2B544;
  --warning-soft: #3A2A08;
  --danger: #FF8A7A;
  --danger-soft: #3D1612;
  --info: #8DB8F2;
  --info-soft: #0F2440;
  --scrim: rgba(0, 0, 0, 0.64);
  --shadow-1: 0 1px 2px rgba(0, 0, 0, 0.40);
  --shadow-2: 0 12px 32px rgba(0, 0, 0, 0.55);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-pill: 999px;
  --control-sm: 32px;
  --control-md: 44px;
  --control-lg: 52px;
  --icon-sm: 16px;
  --icon-md: 20px;
  --icon-lg: 24px;
  --avatar-md: 36px;
  --stroke-hairline: 1px;
  --stroke-control: 1.5px;
  --stroke-icon: 2px;
  --font-sans: Figtree, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
}
.display-xl { font-family: var(--font-sans); font-size: 56px; line-height: 60px; font-weight: 700; letter-spacing: -0.02em; }
.display { font-family: var(--font-sans); font-size: 40px; line-height: 46px; font-weight: 700; letter-spacing: -0.015em; }
.title { font-family: var(--font-sans); font-size: 28px; line-height: 34px; font-weight: 600; letter-spacing: -0.01em; }
.heading { font-family: var(--font-sans); font-size: 20px; line-height: 28px; font-weight: 600; }
.body-lg { font-family: var(--font-sans); font-size: 17px; line-height: 26px; font-weight: 400; }
.body { font-family: var(--font-sans); font-size: 15px; line-height: 22px; font-weight: 400; }
.label { font-family: var(--font-sans); font-size: 14px; line-height: 20px; font-weight: 600; letter-spacing: 0.005em; }
.caption { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 0.02em; }
@font-face { font-family: "Figtree"; src: url("../fonts/Figtree-400.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Figtree"; src: url("../fonts/Figtree-500.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "Figtree"; src: url("../fonts/Figtree-600.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "Figtree"; src: url("../fonts/Figtree-700.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
