/* =====================================================================
   DIVE BASE — DESIGN TOKENS  ·  GENERATED by Style Dictionary
   Single source of truth: design/tokens/*.json  ·  DO NOT EDIT BY HAND
   Run: cd design/tooling && npm run tokens
   Themes: :root (light) · [data-theme="dark|deck|night"]
   ===================================================================== */

:root {
  --p-abyss-50: #EAF6F9;
  --p-abyss-100: #CFEAF1;
  --p-abyss-200: #9AD7E4;
  --p-abyss-300: #5BC0D6;
  --p-abyss-400: #1FA9C0;
  --p-abyss-500: #157C9F;
  --p-abyss-600: #0E6285;
  --p-abyss-700: #0B4F6C;
  --p-abyss-800: #084056;
  --p-abyss-900: #06303F;
  --p-coral-50: #FFF3F0;
  --p-coral-100: #FFE7E1;
  --p-coral-200: #FFC9BD;
  --p-coral-300: #FFA593;
  --p-coral-400: #FF8771;
  --p-coral-500: #FF6B53;
  --p-coral-600: #E85A43;
  --p-coral-700: #C8412C;
  --p-coral-800: #9E3120;
  --p-ink-50: #F2F5F7;
  --p-ink-100: #E6ECEF;
  --p-ink-200: #CCD6DC;
  --p-ink-300: #A6B4BE;
  --p-ink-400: #8194A0;
  --p-ink-500: #5C7480;
  --p-ink-600: #44555F;
  --p-ink-700: #2A3A44;
  --p-ink-800: #14242E;
  --p-ink-900: #0B1A22;
  --p-sand-50: #FBFAF8;
  --p-sand-100: #F4EFE9;
  --p-sand-200: #E8E2DA;
  --p-aink-300: #314259;
  --p-aink-400: #26344A;
  --p-aink-500: #1E2A3C;
  --p-aink-600: #172234;
  --p-aink-700: #141E2E;
  --p-aink-800: #0E1726;
  --p-aink-900: #0A1019;
  --p-electric: #FF5A4D;
  --p-glacier: #5BC0EB;
  --p-mist: #EAF1F8;
  --p-status-success: #1A9E54;
  --p-status-success-soft: #E3F6EC;
  --p-status-success-dk: #33C06B;
  --p-status-warning: #E0A100;
  --p-status-warning-soft: #FFF4D6;
  --p-status-warning-dk: #F5B301;
  --p-status-danger: #D5402B;
  --p-status-danger-soft: #FCE7E2;
  --p-status-danger-dk: #FF6B5B;
  --p-status-info: #157C9F;
  --p-status-info-soft: #E3F1F6;
  --space-0: 0px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --radius-xs: 6px;
  --radius-sm: 10px;
  --radius-md: 14px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --radius-full: 999px;
  --font-ui: 'Inter','Noto Sans','Noto Sans Arabic','Noto Sans Thai','Noto Sans SC',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --font-display: 'Sora','Inter','Noto Sans',sans-serif;
  --font-num: 'Inter',ui-monospace,'SF Mono',monospace;
  --text-2xs: 11px;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 15px;
  --text-md: 17px;
  --text-lg: 20px;
  --text-xl: 24px;
  --text-2xl: 30px;
  --text-3xl: 38px;
  --text-4xl: 48px;
  --lh-2xs: 14px;
  --lh-xs: 16px;
  --lh-sm: 18px;
  --lh-base: 22px;
  --lh-md: 24px;
  --lh-lg: 28px;
  --lh-xl: 30px;
  --lh-2xl: 36px;
  --lh-3xl: 44px;
  --lh-4xl: 54px;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;
  --target-deck: 56px;
  --target-min: 44px;
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 320ms;
  --ease-standard: cubic-bezier(0.2,0,0,1);
  --ease-emphasized: cubic-bezier(0.2,0,0,1.2);
  --ease-exit: cubic-bezier(0.4,0,1,1);
  --surface: #FFFFFF;
  --surface-raised: #FFFFFF;
  --text-on-brand: #FFFFFF;
  --overlay: rgba(11,26,34,0.45);
  --shadow-sm: 0 1px 2px rgba(11,26,34,0.06), 0 1px 3px rgba(11,26,34,0.10);
  --shadow-md: 0 4px 12px rgba(11,26,34,0.08), 0 2px 4px rgba(11,26,34,0.06);
  --shadow-lg: 0 18px 40px rgba(11,26,34,0.16);
  --type-scale: 1;
  --bg: var(--p-sand-50);
  --surface-sunk: var(--p-ink-50);
  --text: var(--p-abyss-900);
  --text-muted: var(--p-ink-500);
  --text-subtle: var(--p-ink-400);
  --text-on-accent: var(--p-abyss-900);
  --border: var(--p-sand-200);
  --border-strong: var(--p-ink-200);
  --divider: var(--p-ink-100);
  --brand: var(--p-abyss-700);
  --brand-strong: var(--p-abyss-900);
  --brand-soft: var(--p-abyss-50);
  --link: var(--p-abyss-600);
  --accent: var(--p-coral-500);
  --accent-hover: var(--p-coral-400);
  --accent-press: var(--p-coral-600);
  --accent-soft: var(--p-coral-100);
  --accent-solid: var(--p-coral-700);
  --success: var(--p-status-success);
  --success-soft: var(--p-status-success-soft);
  --warning: var(--p-status-warning);
  --warning-soft: var(--p-status-warning-soft);
  --danger: var(--p-status-danger);
  --danger-soft: var(--p-status-danger-soft);
  --info: var(--p-status-info);
  --info-soft: var(--p-status-info-soft);
  --focus-ring: var(--p-coral-500);
}

[data-theme="dark"] {
  --target-min: 44px;
  --text-muted: #94A6B8;
  --text-subtle: #6F8194;
  --text-on-accent: #FFFFFF;
  --brand-strong: #8AD4F2;
  --brand-soft: #16263A;
  --accent-hover: #FF6E63;
  --accent-press: #E84A3E;
  --accent-soft: #3A2320;
  --success-soft: #10301F;
  --warning-soft: #332804;
  --danger-soft: #3A1714;
  --info-soft: #13283A;
  --overlay: rgba(0,0,0,0.6);
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.4);
  --shadow-md: 0 6px 16px rgba(0,0,0,0.5);
  --shadow-lg: 0 24px 50px rgba(0,0,0,0.6);
  --type-scale: 1;
  --bg: #0E1726;
  --surface: #172234;
  --surface-raised: #1E2A3C;
  --surface-sunk: #0A1019;
  --text: #EAF1F8;
  --text-on-brand: #0A1019;
  --border: #26344A;
  --border-strong: #314259;
  --divider: #1E2A3C;
  --brand: #5BC0EB;
  --link: #5BC0EB;
  --accent: #FF5A4D;
  --accent-solid: #FF5A4D;
  --success: #33C06B;
  --warning: #F5B301;
  --danger: #FF6B5B;
  --info: #5BC0EB;
  --focus-ring: #5BC0EB;
}

[data-theme="deck"] {
  --target-min: 56px;
  --bg: #FFFFFF;
  --surface: #FFFFFF;
  --surface-raised: #FFFFFF;
  --surface-sunk: #FFFFFF;
  --text: #000000;
  --text-muted: #161616;
  --text-subtle: #2A2A2A;
  --text-on-accent: #FFFFFF;
  --text-on-brand: #FFFFFF;
  --border: #000000;
  --border-strong: #000000;
  --divider: #000000;
  --brand: #000000;
  --brand-strong: #000000;
  --brand-soft: #F2F2F2;
  --accent: #000000;
  --accent-hover: #161616;
  --accent-press: #000000;
  --accent-soft: #EDEDED;
  --success: #0A6E33;
  --success-soft: #D7F0DF;
  --warning: #7A5800;
  --warning-soft: #FFE9A8;
  --danger: #9E1B0A;
  --danger-soft: #FBD9D2;
  --info-soft: #DCEAF0;
  --focus-ring: #000000;
  --overlay: rgba(0,0,0,0.5);
  --shadow-sm: none;
  --shadow-md: 0 2px 0 #000000;
  --shadow-lg: 0 4px 0 #000000;
  --type-scale: 1.18;
  --link: #06303F;
  --accent-solid: #C8412C;
  --info: #06303F;
}

[data-theme="night"] {
  --target-min: 44px;
  --bg: #140A0A;
  --surface: #1E0E0C;
  --surface-raised: #2A1311;
  --surface-sunk: #0C0606;
  --text: #F0C9C2;
  --text-muted: #C99B92;
  --text-subtle: #9E726B;
  --text-on-accent: #1A0907;
  --text-on-brand: #1A0907;
  --border: #3A1E1A;
  --border-strong: #52302A;
  --divider: #2A1311;
  --brand: #FF9C8C;
  --brand-strong: #FFB3A5;
  --brand-soft: #2A1311;
  --link: #FF9C8C;
  --accent: #B5503E;
  --accent-hover: #C76050;
  --accent-press: #9E4030;
  --accent-soft: #3A1E1A;
  --accent-solid: #B5503E;
  --success: #C98A6E;
  --success-soft: #2A1611;
  --warning: #D9A05C;
  --warning-soft: #2E1D0E;
  --danger: #FF7A66;
  --danger-soft: #3A1714;
  --info: #D89A8E;
  --info-soft: #2A1611;
  --focus-ring: #FF9C8C;
  --overlay: rgba(0,0,0,0.7);
  --shadow-sm: none;
  --shadow-md: 0 4px 14px rgba(0,0,0,0.6);
  --shadow-lg: 0 18px 40px rgba(0,0,0,0.7);
  --type-scale: 1;
}

/* ---- RTL: drive with dir="rtl" + lang on <html> ---- */
[dir="rtl"] .icon-chevron,
[dir="rtl"] .icon-back,
[dir="rtl"] .icon-progress { transform: scaleX(-1); }
[dir="rtl"] .num { direction: ltr; unicode-bidi: embed; }
