/* GENERATED by scripts/build_ds.js from marketing/design_system/tokens.css. Do not edit: change the source and run node scripts/build_ds.js (KAN-1744). */
/* Self-hosted IBM Plex Sans Arabic (SIL OFL 1.1, licence: /ds/ibm-plex-sans-arabic-OFL.txt). */
@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:400;font-display:optional;src:url("/fonts/ibm-plex-sans-arabic-v1005-400.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:500;font-display:optional;src:url("/fonts/ibm-plex-sans-arabic-v1005-500.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:600;font-display:optional;src:url("/fonts/ibm-plex-sans-arabic-v1005-600.woff2") format("woff2")}
/* Metric-matched fallbacks: when Plex is not ready at first paint (font-display:optional keeps the fallback for that page view), the text keeps Plex's width and line box. */
@font-face{font-family:"Nabras Fallback Geeza";font-style:normal;font-weight:400;src:local("Geeza Pro Regular"),local("GeezaPro");size-adjust:103.5%;ascent-override:104.83%;descent-override:40.1%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Geeza";font-style:normal;font-weight:600;src:local("Geeza Pro Bold"),local("GeezaPro-Bold");size-adjust:93.82%;ascent-override:115.65%;descent-override:44.23%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Segoe";font-style:normal;font-weight:400;src:local("Segoe UI"),local("SegoeUI");size-adjust:91.3%;ascent-override:118.84%;descent-override:45.45%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Segoe";font-style:normal;font-weight:600;src:local("Segoe UI Semibold"),local("SegoeUI-Semibold");size-adjust:91.3%;ascent-override:118.84%;descent-override:45.45%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Naskh";font-style:normal;font-weight:400;src:local("Noto Naskh Arabic UI"),local("NotoNaskhArabicUI-Regular"),local("Noto Naskh Arabic"),local("NotoNaskhArabic-Regular");size-adjust:102.92%;ascent-override:105.42%;descent-override:40.32%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Naskh";font-style:normal;font-weight:600;src:local("Noto Naskh Arabic UI Bold"),local("NotoNaskhArabicUI-Bold"),local("Noto Naskh Arabic Bold"),local("NotoNaskhArabic-Bold");size-adjust:104.46%;ascent-override:103.87%;descent-override:39.73%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Noto Sans";font-style:normal;font-weight:400;src:local("Noto Sans Arabic"),local("NotoSansArabic-Regular"),local("Noto Sans Arabic UI"),local("NotoSansArabicUI-Regular");size-adjust:93.5%;ascent-override:116.04%;descent-override:44.39%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Noto Sans";font-style:normal;font-weight:600;src:local("Noto Sans Arabic SemiBold"),local("NotoSansArabic-SemiBold"),local("Noto Sans Arabic UI SemiBold"),local("NotoSansArabicUI-SemiBold"),local("Noto Sans Arabic Bold"),local("NotoSansArabic-Bold");size-adjust:92.98%;ascent-override:116.69%;descent-override:44.63%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Roboto";font-style:normal;font-weight:400;src:local("Roboto"),local("Roboto-Regular");unicode-range:U+0000-00FF,U+2000-206F,U+2212;size-adjust:104.81%;ascent-override:103.52%;descent-override:39.6%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Roboto";font-style:normal;font-weight:600;src:local("Roboto Bold"),local("Roboto-Bold"),local("Roboto Medium"),local("Roboto-Medium");unicode-range:U+0000-00FF,U+2000-206F,U+2212;size-adjust:104.06%;ascent-override:104.27%;descent-override:39.88%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Tahoma";font-style:normal;font-weight:400;src:local("Tahoma");size-adjust:88.89%;ascent-override:122.06%;descent-override:46.69%;line-gap-override:0%}
@font-face{font-family:"Nabras Fallback Tahoma";font-style:normal;font-weight:600;src:local("Tahoma Bold"),local("Tahoma-Bold");size-adjust:82.08%;ascent-override:132.19%;descent-override:50.56%;line-gap-override:0%}
/* Nabras — generated from tokens.json */
:root,[data-theme="light"]{--canvas:#FFFFFF;--surface:#FFFFFF;--surface-sunken:#EDF1F3;--section-alt:#F3F6F8;--ink:#0B1220;--ink-secondary:#2C3A47;--ink-muted:#56636F;--hairline:#DCE3E8;--border-strong:#7D8A95;--brand:#0891B2;--action:#0E7490;--action-pressed:#155E75;--on-action:#FFFFFF;--brand-tint:#E3F4F8;--deep:#0B3B44;--on-deep:#F2F8F9;--correct:#047857;--correct-tint:#E3F5EC;--wrong:#B42318;--wrong-tint:#FCEBEA;--caution:#9A4B06;--caution-tint:#FDF1E1;--spectrum-teal:#0891B2;--spectrum-sky:#38BDF8;--spectrum-amber:#F5B83D;--spectrum-coral:#F0645A;--lm-highlight:#FDE68A;--lm-ink:#134E4A;--lm-chosen:#B45309;--logo-tile:#0891B2;--logo-flame:#FFFFFF;--logo-core:#7DD3E8;--scrim:rgba(11,18,32,0.48);--shadow-raised:0 1px 2px rgba(11,18,32,0.06), 0 8px 24px -12px rgba(11,18,32,0.16);--shadow-overlay:0 24px 64px -24px rgba(11,18,32,0.32);color-scheme:light}
[data-theme="dark"]{--canvas:#0A1014;--surface:#111A21;--surface-sunken:#0D151B;--section-alt:#0D151B;--ink:#ECF2F5;--ink-secondary:#C3CED6;--ink-muted:#93A1AC;--hairline:#24323C;--border-strong:#5B6B77;--brand:#22B3D3;--action:#38C3DE;--action-pressed:#67D3E8;--on-action:#04222A;--brand-tint:#0F2E37;--correct:#3DD68C;--correct-tint:#0F2A20;--wrong:#FF7A70;--wrong-tint:#331716;--caution:#F5B83D;--caution-tint:#2E2210;--lm-chosen:#F59E0B;--scrim:rgba(0,0,0,0.6);--shadow-raised:0 1px 2px rgba(0,0,0,0.4), 0 8px 24px -12px rgba(0,0,0,0.6);--shadow-overlay:0 24px 64px -24px rgba(0,0,0,0.8);color-scheme:dark}
@media print{[data-theme="dark"]{--canvas:#FFFFFF;--surface:#FFFFFF;--surface-sunken:#EDF1F3;--section-alt:#F3F6F8;--ink:#0B1220;--ink-secondary:#2C3A47;--ink-muted:#56636F;--hairline:#DCE3E8;--border-strong:#7D8A95;--brand:#0891B2;--action:#0E7490;--action-pressed:#155E75;--on-action:#FFFFFF;--brand-tint:#E3F4F8;--correct:#047857;--correct-tint:#E3F5EC;--wrong:#B42318;--wrong-tint:#FCEBEA;--caution:#9A4B06;--caution-tint:#FDF1E1;--lm-chosen:#B45309;--scrim:rgba(11,18,32,0.48);--shadow-raised:0 1px 2px rgba(11,18,32,0.06), 0 8px 24px -12px rgba(11,18,32,0.16);--shadow-overlay:0 24px 64px -24px rgba(11,18,32,0.32);color-scheme:light}}
: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-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:999px;--tap-min:44px;--control-h:48px;--content-max:1120px;--reading-max:680px;--reading-measure:31em;--font-sans:"IBM Plex Sans Arabic", "Nabras Fallback Geeza", "Nabras Fallback Segoe", "Nabras Fallback Naskh", "Nabras Fallback Noto Sans", "Nabras Fallback Roboto", "Nabras Fallback Tahoma", "Geeza Pro", "Segoe UI", Tahoma, sans-serif;}
.display{font-family:var(--font-sans);font-size:48px;line-height:60px;font-weight:600;letter-spacing:-0.5px;}
.numeral{font-family:var(--font-sans);font-size:44px;line-height:48px;font-weight:600;}
.title-1{font-family:var(--font-sans);font-size:32px;line-height:44px;font-weight:600;}
.title-2{font-family:var(--font-sans);font-size:24px;line-height:34px;font-weight:600;}
.title-3{font-family:var(--font-sans);font-size:19px;line-height:28px;font-weight:600;}
.body-lg{font-family:var(--font-sans);font-size:18px;line-height:30px;font-weight:400;}
.body{font-family:var(--font-sans);font-size:16px;line-height:27px;font-weight:400;}
.label{font-family:var(--font-sans);font-size:15px;line-height:22px;font-weight:500;}
.caption{font-family:var(--font-sans);font-size:13px;line-height:20px;font-weight:400;}
.overline{font-family:var(--font-sans);font-size:13px;line-height:18px;font-weight:600;letter-spacing:0.2px;}
@media (max-width:600px){.display{font-size:36px;line-height:46px}.title-1{font-size:28px;line-height:38px}}
@media (max-width:374.98px){.display{font-size:32px;line-height:42px}}
@media (min-width:1600px){:root{--content-max:1200px}.display{font-size:56px;line-height:70px}.title-1{font-size:36px;line-height:48px}}
