/* The app's design values, made from its own files on every build (website/src/design/app-values.ts). */
:root {
  color-scheme: light dark;
  --color-primary: #D4243A;
  --color-primary-light: #E8354F;
  --color-primary-dark: #9A1830;
  --color-navy: #0F1B2D;
  --color-navy-light: #1A2940;
  --color-navy-medium: #253650;
  --color-surface: #F6F8FC;
  --color-surface-dark: #1A2940;
  --color-card: #FFFFFF;
  --color-card-dark: #112035;
  --color-text: #0F1B2D;
  --color-text-secondary: #5A6B80;
  --color-text-light: #7B8A99;
  --color-text-on-dark: #FFFFFF;
  --color-text-on-dark-secondary: #A8B5C4;
  --color-border: #E2E6EC;
  --color-border-dark: #2A3D57;
  --color-success: #16A34A;
  --color-warning: #F59E0B;
  --color-error: #EF4444;
  --color-accent: #3B82F6;
  --color-accent-light: #60A5FA;
  --color-focus-blue: #1A5CFF;
  --color-growth-green: #1DB954;
  --color-wrong-slate: #64748B;
  --color-energy-amber: #F59E0B;
  --color-math: #7C3AED;
  --color-science: #0891B2;
  --color-english: #D97706;
  --color-french: #3B82F6;
  --color-social: #EC4899;
  --color-input-bg: #F0F4F8;
  --color-surface-alt: #E8ECF0;
  --color-dark-page: #0E1524;
  --color-dark-inset: #141F32;
  --color-dark-card: #19253A;
  --color-dark-panel: #1C283B;
  --type-caption-size: 0.75rem;
  --type-caption-line: 1rem;
  --type-caption-family: var(--font-ui);
  --type-caption-weight: 500;
  --type-label-size: 0.8125rem;
  --type-label-line: 1.125rem;
  --type-label-family: var(--font-ui);
  --type-label-weight: 600;
  --type-body-size: 0.9375rem;
  --type-body-line: 1.375rem;
  --type-body-family: var(--font-body);
  --type-body-weight: 400;
  --type-body-strong-size: 0.9375rem;
  --type-body-strong-line: 1.375rem;
  --type-body-strong-family: var(--font-ui);
  --type-body-strong-weight: 600;
  --type-body-large-size: 1.0625rem;
  --type-body-large-line: 1.5625rem;
  --type-body-large-family: var(--font-body);
  --type-body-large-weight: 400;
  --type-title-size: 1.125rem;
  --type-title-line: 1.5rem;
  --type-title-family: var(--font-ui);
  --type-title-weight: 600;
  --type-heading-size: 1.5rem;
  --type-heading-line: 1.875rem;
  --type-heading-family: var(--font-display);
  --type-heading-weight: 700;
  --type-display-size: 1.875rem;
  --type-display-line: 2.25rem;
  --type-display-family: var(--font-display);
  --type-display-weight: 700;
  --space-xxs: 4px;
  --space-xs: 8px;
  --space-s: 12px;
  --space-m: 16px;
  --space-l: 24px;
  --space-xl: 32px;
  --space-xxl: 48px;
  --radius-s: 8px;
  --radius-m: 12px;
  --radius-l: 16px;
  --radius-xl: 22px;
  --radius-pill: 999px;
  --touch: 44px;
  --motion-quick: 150ms;
  --motion-base: 240ms;
  --motion-slow: 360ms;
  --sidebar-condensed: 72px;
  --sidebar-narrowest: 176px;
  --sidebar-normal: 248px;
  --sidebar-widest: 420px;
  --content-max: 1100px;
  --content-min: 600px;
  --page-max: 820px;
  --page-gutter: 16px;
  --web-top-inset: 16px;
  --glass-size: 44px;
  --glass-icon: 22px;
  --glass-pill-pad-x: 18px;
  --glass-pill-pad-y: 4px;
  --glass-title-line: 1.25rem;
  --glass-bar-top: 6px;
  --glass-bar-bottom: 8px;
  --glass-gap: 8px;
  --glass-pressed-scale: 0.94;
  --glass-disabled-opacity: 0.5;
  --header-space: 82px;
  --glow-inset: 6px;
  --glow-icon-glow-radius: 8px;
  --glow-pressed-scale: 0.94;
  --glow-disabled-opacity: 0.4;
  --seg-pad: 3px;
  --seg-gap: 2px;
  --seg-m-height: 38px;
  --seg-m-pad-x: 16px;
  --seg-s-height: 32px;
  --seg-s-pad-x: 12px;
  --seg-inner-gap: 6px;
  --seg-more-trim: 2px;
  --seg-more-icon: 14px;
  --seg-on-weight: 600;
  --seg-off-weight: 500;
  --pop-width: 240px;
  --pop-gap: 6px;
  --pop-radius: 16px;
  --pop-pad-y: 4px;
  --pop-item-min: 48px;
  --pop-item-pad-x: 16px;
  --pop-item-pad-y: 8px;
  --pop-item-gap: 12px;
  --pop-icon: 18px;
  --pop-grow-ms: 170ms;
  --pop-on-weight: 600;
  --pop-off-weight: 500;
  --pop-family: var(--font-ui);
  --switch-h: 20px;
  --switch-w: 40px;
  --switch-track-h: 14px;
  --switch-thumb-shadow: 0px 1px 3px rgba(0,0,0,0.5);
  --switch-focus-ring: 0 0 0 10px rgba(0,0,0,0.1);
  --switch-ms: 100ms;
  --spinner-small: 20px;
  --spinner-large: 36px;
  --spinner-turn-ms: 750ms;
  --spinner-track-opacity: 0.2;
  --modal-slide-ms: 250ms;
  --modal-slide-opening: cubic-bezier(0.215, 0.61, 0.355, 1);
  --modal-slide-closing: cubic-bezier(0.47, 0, 0.745, 0.715);
  --panel-sidebar-dim: rgba(4, 10, 20, 0.08);
  --sb-width-ms: 180ms;
  --sb-brand-pad-x: 16px;
  --sb-brand-pad-top: 24px;
  --sb-brand-pad-bottom: 18px;
  --sb-brand-gap: 10px;
  --sb-brand-logo: 34px;
  --sb-brand-logo-button: 46px;
  --sb-brand-title: 1.125rem;
  --sb-brand-title-tracking: -0.3px;
  --sb-brand-title-font-family: var(--font-ui);
  --sb-brand-title-font-weight: 700;
  --sb-brand-sub: 0.6875rem;
  --sb-brand-sub-gap: 2px;
  --sb-brand-sub-font-family: var(--font-ui);
  --sb-brand-sub-font-weight: 400;
  --sb-brand-collapse: 34px;
  --sb-menu-mark-long: 18px;
  --sb-menu-mark-short: 12px;
  --sb-menu-mark-height: 14px;
  --sb-menu-mark-bar: 2px;
  --sb-logo-badge-size: 1rem;
  --sb-logo-badge-ring: 2px;
  --sb-logo-badge-icon: 10px;
  --sb-group-pad-x: 10px;
  --sb-group-pad-top: 10px;
  --sb-row-gap: 11px;
  --sb-row-pad-x: 13px;
  --sb-row-pad-y: 10px;
  --sb-row-radius: 10px;
  --sb-row-between: 2px;
  --sb-row-icon: 20px;
  --sb-row-label: 0.875rem;
  --sb-row-icons-only-width: 44px;
  --sb-row-icons-only-height: 40px;
  --sb-row-font-family: var(--font-ui);
  --sb-row-font-weight: 500;
  --sb-row-active-font-family: var(--font-ui);
  --sb-row-active-font-weight: 600;
  --sb-section-label-size: 0.6875rem;
  --sb-section-label-tracking: 0.1px;
  --sb-section-label-opacity: 1;
  --sb-section-label-pad-x: 13px;
  --sb-section-label-below: 4px;
  --sb-section-label-above: 14px;
  --sb-section-label-font-family: var(--font-ui);
  --sb-section-label-font-weight: 600;
  --sb-footer-pad-x: 10px;
  --sb-footer-pad-top: 10px;
  --sb-footer-pad-bottom: 16px;
  --sb-handle-width: 10px;
  --sb-handle-line: 2px;
  --sb-handle-grip-width: 10px;
  --sb-handle-grip-height: 32px;
  --sb-handle-grip-dot: 4px;
  --sb-handle-grip-gap: 3px;
  --sb-tip-pad-x: 8px;
  --sb-tip-pad-y: 5px;
  --sb-tip-gap: 8px;
  --panel-dim: rgba(4,10,20,0.45);
  --panel-wide-dim: rgba(4,10,20,0.4);
  --panel-radius: 16px;
  --panel-shadow: 0px 8px 24px rgba(0,0,0,0.22);
  --panel-close-size: 30px;
  --panel-close-icon: 18px;
  --panel-gap: 8px;
  --panel-placed-max: 60dvh;
  --panel-centred-max: 80dvh;
  --panel-quiz-w: 460px;
  --panel-study-w: 480px;
  --panel-drawer-ratio: 0.56;
  --panel-drawer-min: 480px;
  --panel-drawer-max: 760px;
  --sheet-radius: 22px;
  --sheet-shadow: 0px -4px 18px rgba(0,0,0,0.18);
  --sheet-grab-zone: 26px;
  --sheet-grab-w: 38px;
  --sheet-grab-h: 5px;
  --sheet-grab-radius: 3px;
  --cb-radius: 24px;
  --cb-pad: 6px;
  --cb-gap: 4px;
  --cb-border: 1px;
  --cb-border-focused: 1.5px;
  --cb-button: 36px;
  --cb-plus-icon: 22px;
  --cb-send-icon: 20px;
  --cb-input-min: 36px;
  --cb-input-max: 136px;
  --cb-input-pad-x: 8px;
  --cb-pending-pad: 6px;
  --cb-pending-thumb-w: 72px;
  --cb-pending-thumb-h: 56px;
  --cb-pending-icon: 22px;
  --cb-pending-remove: 20px;
  --plus-tile-icon: 52px;
  --plus-icon: 22px;
  --plus-tile-gap: 6px;
  --plus-tile-width: 25%;
  --plus-panel-width: 360px;
  --plus-disabled-opacity: 0.4;
  --tray-size: 64px;
  --tray-gap: 10px;
  --tray-pad-top: 10px;
  --tray-pad-bottom: 8px;
  --tray-pad-end: 6px;
  --tray-radius: 12px;
  --tray-border: 1px;
  --tray-remove-icon: 22px;
  --tray-remove-out: 8px;
  --tray-badge-icon: 12px;
  --tray-badge-gap: 3px;
  --tray-badge-pad-x: 5px;
  --tray-badge-pad-y: 3px;
  --tray-badge-text: 0.65625rem;
  --nb-bubble: 72px;
  --nb-life: 56px;
  --bg: #EEF3FB;
  --card: #FFFFFF;
  --inset: #F2F5FB;
  --line: rgba(15,27,45,0.07);
  --ink: #0F1B2D;
  --sub: #5A6B80;
  --faint: #8593A6;
  --blue: #1A5CFF;
  --blue-ink: #1A5CFF;
  --blue-soft: rgba(26,92,255,0.09);
  --green: #1DB954;
  --green-ink: #15803D;
  --green-soft: rgba(29,185,84,0.10);
  --amber: #F59E0B;
  --amber-ink: #B45309;
  --amber-soft: rgba(245,158,11,0.12);
  --choice-line: #D7DCE4;
  --slate: #64748B;
  --slate-ink: #606F85;
  --slate-soft: rgba(100,116,139,0.10);
  --red-ink: #B91C1C;
  --switch-off: #C3CCD9;
  --shadow: 0px 1px 2px rgba(15,27,45,0.05), 0px 8px 24px rgba(15,27,45,0.06);
  --glass-fill: rgba(255,255,255,0.66);
  --glass-tint: rgba(249,249,249,0.312);
  --glass-filter: saturate(180%) blur(8px);
  --glass-shadow: 0px 4px 14px rgba(15,27,45,0.10);
  --glass-edge: inset 0 0 0 1px rgba(15,27,45,0.08);
  --glow-blue-face: #EAF0FF;
  --glow-blue-ink: #1A5CFF;
  --glow-blue-depth: 3px 4px 9px rgba(15,27,45,0.13);
  --glow-blue-depth-opacity: 0.35;
  --glow-blue-fill: #1A5CFF59;
  --glow-blue-light: 0 0 9px 2px #1A5CFF88, 0 0 17px 4px #1A5CFF40;
  --glow-blue-ring: #1A5CFF4D;
  --glow-blue-icon-glow: #1A5CFFAA;
  --sb-bg: #FFFFFF;
  --sb-border: #E2E6EC;
  --sb-text: #0F1B2D;
  --sb-muted: #5A6B80;
  --sb-hover: rgba(0,0,0,0.04);
  --sb-active: #1A5CFF12;
  --sb-active-ink: #1A5CFF;
  --sb-active-text: #1A5CFF;
  --sb-badge: #E7ECF5;
  --sb-badge-ink: #1A5CFF;
  --sb-tip: #0F1B2D;
  --panel-bg: #FFFFFF;
  --panel-ink: #0F1B2D;
  --panel-sub: #5A6B80;
  --panel-grab: rgba(15,27,45,0.22);
  --panel-line: rgba(15,27,45,0.08);
  --cb-card: #FFFFFF;
  --cb-line: #E2E6EC;
  --cb-focus: #1A5CFF;
  --cb-plus-bg: rgba(15,27,45,0.06);
  --cb-send-on: #1A5CFF;
  --cb-send-off: #E2E6EC;
  --cb-ink: #0E1A2B;
  --cb-sub: #5C6B80;
  --plus-hover: rgba(15,27,45,0.04);
  --tray-border-color: #DCE3EE;
  --tray-doc-color: #F1F4F9;
  --tray-badge-color: rgba(255,255,255,0.92);
  --tray-ink-color: #1F2A3D;
  --tray-badge-icon-color: #1A5CFF;
  --tray-sending-color: rgba(10,19,34,0.45);
  --pop-panel-color: #FFFFFF;
  --pop-ink-color: #0F1B2D;
  --pop-sub-color: #5A6B80;
  --pop-on-color: #1A5CFF;
  --pop-line-color: rgba(15,27,45,0.07);
  --pop-hover-color: rgba(15,27,45,0.04);
  --pop-lift-color: 0px 12px 32px rgba(15,27,45,0.16), 0px 2px 6px rgba(15,27,45,0.08);
  --seg-track: #E8EDF6;
  --seg-idle: #5A6B80;
  --seg-hover: rgba(15,27,45,0.05);
  --seg-choice-on: #FFFFFF;
  --seg-choice-ink: #0F1B2D;
  --seg-choice-lift: 0px 1px 2px rgba(15,27,45,0.12), 0px 1px 1px rgba(15,27,45,0.04);
  --seg-nav-on: #1A5CFF;
  --seg-nav-ink: #FFFFFF;
  --seg-badge: #1A5CFF;
  --seg-badge-on-nav: rgba(255,255,255,0.25);
  --seg-badge-ink: #FFFFFF;
  --cb-pad-screen: #E9EDF3;
  --cb-pad-spinner: #1A5CFF;
  --nb-bg-top: #EDE9FF;
  --nb-bg-mid: #F0EEFF;
  --nb-bg-bottom: #E2DBFC;
  --nb-hud: rgba(255,255,255,0.52);
  --nb-hud-line: rgba(30,27,75,0.10);
  --nb-ink: #1E1B4B;
  --nb-sub: rgba(30,27,75,0.55);
  --nb-level: #7C3AED;
  --nb-timer-track: rgba(30,27,75,0.12);
  --nb-timer-text: rgba(30,27,75,0.45);
  --nb-heart-off: rgba(30,27,75,0.18);
  --nb-exit: rgba(30,27,75,0.12);
  --nb-exit-ink: #3B1C8C;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0E1524;
    --card: #19253A;
    --inset: #141F32;
    --line: rgba(255,255,255,0.07);
    --ink: #FFFFFF;
    --sub: #A8B5C4;
    --faint: #7C8BA1;
    --blue: #1A5CFF;
    --blue-ink: #8FB0FF;
    --blue-soft: rgba(26,92,255,0.18);
    --green: #1DB954;
    --green-ink: #4ADE80;
    --green-soft: rgba(29,185,84,0.16);
    --amber: #F59E0B;
    --amber-ink: #FBBF24;
    --amber-soft: rgba(245,158,11,0.16);
    --choice-line: #2E4058;
    --slate: #64748B;
    --slate-ink: #96A0B0;
    --slate-soft: rgba(100,116,139,0.18);
    --red-ink: #FCA5A5;
    --switch-off: #3A4A61;
    --shadow: 0px 1px 0px rgba(255,255,255,0.03) inset;
    --glass-fill: rgba(26,37,56,0.66);
    --glass-tint: rgba(25,25,25,0.234);
    --glass-filter: saturate(180%) blur(6px);
    --glass-shadow: 0px 4px 16px rgba(0,0,0,0.45);
    --glass-edge: inset 0px 1px 0px rgba(255,255,255,0.07);
    --glow-blue-face: #0E2251;
    --glow-blue-ink: #719AFF;
    --glow-blue-depth: 5px 7px 18px rgba(0,0,0,0.5);
    --glow-blue-depth-opacity: 0.6;
    --glow-blue-fill: #1A5CFF40;
    --glow-blue-light: 0 0 10px 0px #719AFF70, 0 0 24px 2px #719AFF30;
    --glow-blue-ring: #1A5CFF38;
    --glow-blue-icon-glow: #719AFFAA;
    --sb-bg: #0F1B2D;
    --sb-border: #2A3D57;
    --sb-text: #FFFFFF;
    --sb-muted: #A8B5C4;
    --sb-hover: rgba(255,255,255,0.05);
    --sb-active: rgba(26,92,255,0.16);
    --sb-active-ink: #1A5CFF;
    --sb-active-text: #8FB0FF;
    --sb-badge: #2A3A55;
    --sb-badge-ink: #FFFFFF;
    --sb-tip: #22304A;
    --panel-bg: #1C283B;
    --panel-ink: #FFFFFF;
    --panel-sub: #A8B5C4;
    --panel-grab: rgba(255,255,255,0.28);
    --panel-line: rgba(255,255,255,0.08);
    --cb-card: #19253A;
    --cb-line: #2A3D57;
    --cb-focus: #1A5CFF;
    --cb-plus-bg: rgba(255,255,255,0.07);
    --cb-send-on: #1A5CFF;
    --cb-send-off: #253650;
    --cb-ink: #FFFFFF;
    --cb-sub: #AEB9C9;
    --plus-hover: rgba(255,255,255,0.05);
    --tray-border-color: #2A3953;
    --tray-doc-color: #16243A;
    --tray-badge-color: rgba(10,19,34,0.86);
    --tray-ink-color: #E6ECF5;
    --tray-badge-icon-color: #1A5CFF;
    --tray-sending-color: rgba(10,19,34,0.45);
    --pop-panel-color: #1B2638;
    --pop-ink-color: #FFFFFF;
    --pop-sub-color: #A8B5C4;
    --pop-on-color: #8FB0FF;
    --pop-line-color: rgba(255,255,255,0.07);
    --pop-hover-color: rgba(255,255,255,0.05);
    --pop-lift-color: 0px 12px 32px rgba(0,0,0,0.5);
    --seg-track: #141F32;
    --seg-idle: #A8B5C4;
    --seg-hover: rgba(255,255,255,0.05);
    --seg-choice-on: #24324A;
    --seg-choice-ink: #FFFFFF;
    --seg-choice-lift: 0px 1px 2px rgba(0,0,0,0.4);
    --seg-nav-on: #1A5CFF;
    --seg-nav-ink: #FFFFFF;
    --seg-badge: #1A5CFF;
    --seg-badge-on-nav: rgba(255,255,255,0.25);
    --seg-badge-ink: #FFFFFF;
    --cb-pad-screen: #0B1220;
    --cb-pad-spinner: #1A5CFF;
    --nb-bg-top: #241257;
    --nb-bg-mid: #180936;
    --nb-bg-bottom: #0E0424;
    --nb-hud: rgba(12,6,34,0.34);
    --nb-hud-line: rgba(255,255,255,0.10);
    --nb-ink: #FFFFFF;
    --nb-sub: rgba(255,255,255,0.55);
    --nb-level: #C4B5FD;
    --nb-timer-track: rgba(255,255,255,0.10);
    --nb-timer-text: rgba(255,255,255,0.5);
    --nb-heart-off: rgba(255,255,255,0.2);
    --nb-exit: rgba(255,255,255,0.18);
    --nb-exit-ink: #FFFFFF;
  }
}
.type-caption {
  font-family: var(--type-caption-family);
  font-weight: var(--type-caption-weight);
  font-size: var(--type-caption-size);
  line-height: var(--type-caption-line);
}
.type-label {
  font-family: var(--type-label-family);
  font-weight: var(--type-label-weight);
  font-size: var(--type-label-size);
  line-height: var(--type-label-line);
}
.type-body {
  font-family: var(--type-body-family);
  font-weight: var(--type-body-weight);
  font-size: var(--type-body-size);
  line-height: var(--type-body-line);
}
.type-body-strong {
  font-family: var(--type-body-strong-family);
  font-weight: var(--type-body-strong-weight);
  font-size: var(--type-body-strong-size);
  line-height: var(--type-body-strong-line);
}
.type-body-large {
  font-family: var(--type-body-large-family);
  font-weight: var(--type-body-large-weight);
  font-size: var(--type-body-large-size);
  line-height: var(--type-body-large-line);
}
.type-title {
  font-family: var(--type-title-family);
  font-weight: var(--type-title-weight);
  font-size: var(--type-title-size);
  line-height: var(--type-title-line);
}
.type-heading {
  font-family: var(--type-heading-family);
  font-weight: var(--type-heading-weight);
  font-size: var(--type-heading-size);
  line-height: var(--type-heading-line);
}
.type-display {
  font-family: var(--type-display-family);
  font-weight: var(--type-display-weight);
  font-size: var(--type-display-size);
  line-height: var(--type-display-line);
}
.plus-tile-camera { --tile: #0891B2; --tile-tint: #0891B216; }
.plus-tile-photos { --tile: #0891B2; --tile-tint: #0891B216; }
.plus-tile-files { --tile: #0891B2; --tile-tint: #0891B216; }
.plus-tile-draw { --tile: #0891B2; --tile-tint: #0891B216; }
.plus-tile-calculator { --tile: #1A5CFF; --tile-tint: #1A5CFF16; }
.plus-tile-notes { --tile: #1A5CFF; --tile-tint: #1A5CFF16; }
.plus-tile-highlighter { --tile: #1A5CFF; --tile-tint: #1A5CFF16; }
.plus-tile-equation { --tile: #7C3AED; --tile-tint: #7C3AED16; }
.plus-tile-shapes { --tile: #7C3AED; --tile-tint: #7C3AED16; }
@media (prefers-color-scheme: dark) {
  .plus-tile-camera { --tile: #0891B2; --tile-tint: #0891B22A; }
  .plus-tile-photos { --tile: #0891B2; --tile-tint: #0891B22A; }
  .plus-tile-files { --tile: #0891B2; --tile-tint: #0891B22A; }
  .plus-tile-draw { --tile: #0891B2; --tile-tint: #0891B22A; }
  .plus-tile-calculator { --tile: #1A5CFF; --tile-tint: #1A5CFF2A; }
  .plus-tile-notes { --tile: #1A5CFF; --tile-tint: #1A5CFF2A; }
  .plus-tile-highlighter { --tile: #1A5CFF; --tile-tint: #1A5CFF2A; }
  .plus-tile-equation { --tile: #7C3AED; --tile-tint: #7C3AED2A; }
  .plus-tile-shapes { --tile: #7C3AED; --tile-tint: #7C3AED2A; }
}


:root {
  --site-wide: 900px;
  --site-narrow: 760px;
  --site-gutter: clamp(1rem, 0.25rem + 3vw, 3rem);
  --site-section: clamp(5rem, 3rem + 4.5vw, 8rem);
  --site-head-gap: 1rem;
  --site-content-gap: clamp(2.5rem, 1.75rem + 2vw, 3.5rem);
  --site-hero-size: clamp(2.75rem, 1.4rem + 4.2vw, 4.5rem);
  --site-hero-line: 1.0;
  --site-hero-tagline: clamp(1.375rem, 1rem + 1.2vw, 2rem);
  --site-hero-tracking: -0.035em;
  --site-h2-size: clamp(2.125rem, 1.35rem + 2.6vw, 3.5rem);
  --site-h2-line: 1.05;
  --site-h3-size: clamp(1.1875rem, 1rem + 0.5vw, 1.375rem);
  --site-h3-line: 1.2;
  --site-h3-tracking: -0.015em;
  --site-display-tracking: -0.03em;
  --site-lead-size: clamp(1.0625rem, 0.95rem + 0.4vw, 1.25rem);
  --site-lead-line: 1.5;
  --site-post-title-size: clamp(2rem, 1.35rem + 2.2vw, 3rem);
  --site-post-title-line: 1.1;
  --site-post-h2-size: clamp(1.5rem, 1.3rem + 0.7vw, 1.875rem);
  --site-post-h2-line: 1.2;
  --site-read-quote-size: clamp(1.1875rem, 1.05rem + 0.5vw, 1.375rem);
  --site-read-size: clamp(1.0625rem, 1rem + 0.25vw, 1.125rem);
  --site-read-line: 1.65;
  --site-read-para: 1.2em;
  --site-read-column: 40rem;
  --site-read-side: 12rem;
  --site-eyebrow-size: 0.8125rem;
  --site-eyebrow-line: 1.2;
  --site-eyebrow-tracking: 0.08em;
  --site-weight-display: 600;
  --site-weight-eyebrow: 600;
  --site-tool-size: 0.9375rem;
  --site-tool-line: 1.4;
  --site-tool-weight: 500;
  --site-r-tool: 28px;
  --site-r-card: 18px;
  --site-r-control: 12px;
  --site-tool-pad: clamp(1.25rem, 0.75rem + 1.5vw, 2rem);
  --site-hero-min: min(calc(100svh - 12rem), 46rem);
  --cta-red: #D4243A;
  --cta-red-hover: #9A1830;
  --cta-red-ink: #FFFFFF;
  --cta-height: 3.25rem;
  --cta-grad-a: #D4243A;
  --cta-grad-b: #1A5CFF;
  --cta-radius: 16px;
  --cta-shadow: 0 10px 22px rgba(58,43,224,0.5);
  --cta-shadow-hover: 0 12px 26px rgba(58,43,224,0.6);
  --cta-sheen-a: rgba(255,255,255,0.32);
  --cta-sheen-b: rgba(255,255,255,0.05);
  --cta-sweep: rgba(255,255,255,0.18);
  --cta-sweep-ms: 4400ms;
  --cta-tall: 3.625rem;
  --show-title-a: clamp(1rem, 0.75rem + 1vw, 1.5rem);
  --show-title-b: clamp(2.75rem, min(1.4rem + 5.4vw, 9.5svh), 5.75rem);
  --show-title-line: 1.02;
  --show-title-tracking: -0.01em;
  --show-weight: 800;
  --show-frame: 2px;
  --show-halo: 1.75rem;
  --show-q-size: clamp(1.375rem, 0.85rem + 2.1cqi, 2.625rem);
  --show-q-line: 1.2;
  --show-q-short: min(clamp(1.375rem, 0.85rem + 2.1cqi, 2.625rem), 1.625rem);
  --show-title-b-phone: 2.25rem;
  --show-q-phone: 1.25rem;
  --show-title-b-tiny: 2rem;
  --show-q-tiny: 1.125rem;
  --show-answer-size: clamp(1rem, 0.8rem + 0.9cqi, 1.375rem);
  --show-answer-full: clamp(1.125rem, 0.6rem + 1.3cqi, 1.875rem);
  --show-q-full: clamp(1.75rem, 0.75rem + 2.8cqi, 3.75rem);
  --show-score-size: clamp(3.5rem, 1.5rem + 9cqi, 7.5rem);
  --show-score-of: 0.6em;
  --show-buzzer: clamp(3.3rem, 2.4rem + 3cqi, 4.5rem);
  --show-min: clamp(20rem, 100svh - 24rem, 31rem);
  --show-spin-ms: 9000ms;
  --show-open-ms: 900ms;
  --show-open-swell: 300;
  --show-shimmer-ms: 6000ms;
  --show-pulse-ms: 1600ms;
  --show-sweep-ms: 7000ms;
  --show-ease: cubic-bezier(0.65, 0, 0.35, 1);
  --show-screen: #0A121D;
  --show-glass: rgba(255,255,255,0.05);
  --show-glass-hover: rgba(255,255,255,0.09);
  --show-glass-line: rgba(255,255,255,0.13);
  --show-beam: rgba(255,255,255,0.1);
  --show-dot: rgba(255,255,255,0.16);
  --show-shade: rgba(15,27,45,0.55);
  --show-white-glow: rgba(255,255,255,0.22);
  --show-right-glow: rgba(29,185,84,0.5);
  --show-hot-a: #F59E0B;
  --show-hot-b: #EC4899;
  --show-hot-glow: rgba(236,72,153,0.5);
  --neon-math: rgba(124,58,237,0.55);
  --neon-science: rgba(8,145,178,0.55);
  --neon-english: rgba(217,119,6,0.55);
  --neon-french: rgba(59,130,246,0.55);
  --neon-social: rgba(236,72,153,0.55);
  --neon-green: rgba(29,185,84,0.55);
  --blitz-band-top: #241257;
  --blitz-band-mid: #180936;
  --blitz-band-bottom: #0E0424;
  --blitz-band-ink: #FFFFFF;
  --blitz-band-sub: rgba(255,255,255,0.74);
  --blitz-band-level: #C4B5FD;
  --blitz-band-line: rgba(255,255,255,0.12);
  --blitz-band-shadow: rgba(14,4,36,0.6);
  --blitz-band-glow: rgba(124,58,237,0.38);
  --blitz-shine: rgba(255,255,255,0.45);
  --nb-d0: #F59E0B;
  --nb-d1: #38BDF8;
  --nb-d2: #7C3AED;
  --nb-d3: #FB923C;
  --nb-d4: #EC4899;
  --nb-d5: #1DB954;
  --nb-d6: #06B6D4;
  --nb-d7: #F472B6;
  --nb-d8: #F97316;
  --nb-d9: #84CC16;
  --blitz-drift-ms: 5200ms;
  --blitz-window-w: 28rem;
  --blitz-window-h: 50rem;
  --blitz-title-glow: rgba(124,58,237,0.8);
  --blitz-banner-sub: rgba(255,255,255,0.78);
  --blitz-chip: rgba(0,0,0,0.35);
  --net-facebook: #1877F2;
  --net-instagram: radial-gradient(circle at 30% 107%, #FDF497 0%, #FD5949 45%, #D6249F 60%, #285AEB 90%);
  --net-black: #000000;
  --net-whatsapp: #25D366;
  --net-reddit: #FF4500;
  --net-pinterest: #E60023;
  --net-email: #0F1B2D;
  --net-icon: #FFFFFF;
  --site-reveal-ms: 450ms;
  --site-leaf-ms: 18000ms;
  --site-leaf-drop: calc(100svh + 6rem);
  --site-bar-h: 4px;
  --site-neu-glow: 10px;
  --closing-ring: 1.5px;
  --closing-spin-ms: 8000ms;
  --site-reveal-step-ms: 80ms;
  --site-reveal-rise: 1.25rem;
  --site-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --lead-math: #7C3AED;
  --lead-math-ink: #7C3AED;
  --lead-math-tint: #E6E6FA;
  --lead-math-soft: #EFE7FD;
  --lead-math-line: #CAB8F7;
  --lead-math-glow: rgba(124,58,237,0.12);
  --lead-math-on-navy: #9B69F1;
  --lead-science: #0891B2;
  --lead-science-ink: #066E87;
  --lead-science-tint: #DEECF6;
  --lead-science-soft: #E1F2F6;
  --lead-science-line: #A4D4E4;
  --lead-science-glow: rgba(8,145,178,0.12);
  --lead-science-on-navy: #0891B2;
  --lead-english: #D97706;
  --lead-english-ink: #9C5604;
  --lead-english-tint: #EDEAEA;
  --lead-english-soft: #FAEFE1;
  --lead-english-line: #E7CBAD;
  --lead-english-glow: rgba(217,119,6,0.12);
  --lead-english-on-navy: #D97706;
  --lead-french: #3B82F6;
  --lead-french-ink: #2D63BB;
  --lead-french-tint: #E1EBFB;
  --lead-french-soft: #E7F0FE;
  --lead-french-line: #B5CFF9;
  --lead-french-glow: rgba(59,130,246,0.12);
  --lead-french-on-navy: #3B82F6;
  --lead-social: #EC4899;
  --lead-social-ink: #B33774;
  --lead-social-tint: #EEE7F4;
  --lead-social-soft: #FDE9F3;
  --lead-social-line: #EDBCDC;
  --lead-social-glow: rgba(236,72,153,0.12);
  --lead-social-on-navy: #EC4899;
  --lead-green: #1DB954;
  --lead-green-ink: #137636;
  --lead-green-tint: #DFEFEF;
  --lead-green-soft: #E4F7EA;
  --lead-green-line: #ABE0C6;
  --lead-green-glow: rgba(29,185,84,0.12);
  --lead-green-on-navy: #1DB954;
  --site-edge: rgba(15,27,45,0.08);
  --site-edge-strong: rgba(15,27,45,0.14);
  --site-lift-1: 0 1px 2px rgba(15,27,45,0.05), 0 2px 8px rgba(15,27,45,0.04);
  --site-lift-2: 0 1px 2px rgba(15,27,45,0.04), 0 8px 24px -6px rgba(15,27,45,0.08), 0 24px 56px -16px rgba(15,27,45,0.14);
  --site-lift-hover: 0 2px 4px rgba(15,27,45,0.05), 0 12px 28px -6px rgba(15,27,45,0.12);
  --site-mark-bg: #FFFFFF;
  --site-watermark-opacity: 0.18;
  --site-neu-bg: #FFFFFF;
  --site-neu-groove: inset 3px 3px 8px rgba(15,27,45,0.10), inset -3px -3px 8px rgba(255,255,255,0.9);
  --site-neu-raise: -3px -3px 8px rgba(255,255,255,0.95), 3px 4px 10px rgba(15,27,45,0.13);
  --site-neu-raise-hover: -3px -3px 8px rgba(255,255,255,1), 4px 5px 12px rgba(15,27,45,0.18);
  --site-neu-blue-soft: #DFE8FF;
  --site-neu-blue-ink: #1958F5;
  --site-neu-blue-glow: rgba(26,92,255,0.25);
  --site-neu-green-soft: #DFF5E7;
  --site-neu-green-ink: #147E39;
  --site-neu-green-glow: rgba(29,185,84,0.25);
  --site-neu-purple-soft: #EDE3FC;
  --site-neu-purple-ink: #7C3AED;
  --site-neu-purple-glow: rgba(124,58,237,0.25);
  --site-heading-ink: #122B62;
  --site-leaf-red: #D4243A;
  --site-leaf-amber: #F59E0B;
  --site-leaf-orange: #E56123;
  --site-leaf-opacity: 0.5;
  --site-show-blue: #487DFF;
  --site-show-sky: #A8C1FF;
  --site-white: #FFFFFF;
  --band-alt: #FFFFFF;
  --blitz-scrim-top: rgba(10,3,40,0.80);
  --blitz-scrim-mid: rgba(10,3,40,0.56);
  --site-mark-lift: 0 1px 2px rgba(15,27,45,0.08), 0 4px 12px rgba(15,27,45,0.1);
  --band-navy: #0F1B2D;
  --band-navy-ink: #FFFFFF;
  --band-navy-sub: #A8B5C4;
  --band-navy-line: rgba(255,255,255,0.12);
  --band-navy-card: #1D293A;
  --show-score-red: #DE5969;
}

@media (prefers-color-scheme: dark) {
  :root {
    --lead-math: #7C3AED;
    --lead-math-ink: #AF87F4;
    --lead-math-tint: #171834;
    --lead-math-soft: #2F2A61;
    --lead-math-line: #40267E;
    --lead-math-glow: rgba(124,58,237,0.16);
    --lead-math-on-navy: #A171F2;
    --lead-science: #0891B2;
    --lead-science-ink: #4DB0C8;
    --lead-science-tint: #0E1F2F;
    --lead-science-soft: #153D54;
    --lead-science-line: #0B4D64;
    --lead-science-glow: rgba(8,145,178,0.16);
    --lead-science-on-navy: #1C9AB8;
    --lead-english: #D97706;
    --lead-english-ink: #E19238;
    --lead-english-tint: #1E1D22;
    --lead-english-soft: #43372F;
    --lead-english-line: #694117;
    --lead-english-glow: rgba(217,119,6,0.16);
    --lead-english-on-navy: #D97706;
    --lead-french: #3B82F6;
    --lead-french-ink: #72A5F9;
    --lead-french-tint: #121E35;
    --lead-french-soft: #203963;
    --lead-french-line: #224683;
    --lead-french-glow: rgba(59,130,246,0.16);
    --lead-french-on-navy: #4B8CF7;
    --lead-social: #EC4899;
    --lead-social-ink: #F17BB6;
    --lead-social-tint: #20192D;
    --lead-social-soft: #472D4F;
    --lead-social-line: #722C59;
    --lead-social-glow: rgba(236,72,153,0.16);
    --lead-social-on-navy: #ED4F9D;
    --lead-green: #1DB954;
    --lead-green-ink: #38C169;
    --lead-green-tint: #0F2228;
    --lead-green-soft: #1A4640;
    --lead-green-line: #155F3A;
    --lead-green-glow: rgba(29,185,84,0.16);
    --lead-green-on-navy: #1DB954;
    --site-edge: rgba(255,255,255,0.08);
    --site-edge-strong: rgba(255,255,255,0.14);
    --site-lift-1: inset 0 1px 0 rgba(255,255,255,0.04), 0 1px 2px rgba(0,0,0,0.3), 0 4px 12px rgba(0,0,0,0.22);
    --site-lift-2: inset 0 1px 0 rgba(255,255,255,0.05), 0 1px 2px rgba(0,0,0,0.3), 0 12px 32px -8px rgba(0,0,0,0.45), 0 32px 64px -24px rgba(0,0,0,0.5);
    --site-lift-hover: inset 0 1px 0 rgba(255,255,255,0.06), 0 2px 4px rgba(0,0,0,0.3), 0 12px 28px -6px rgba(0,0,0,0.45);
    --site-mark-bg: #FFFFFF;
    --site-watermark-opacity: 0.24;
    --site-neu-bg: #19253A;
    --site-neu-groove: inset 4px 4px 12px rgba(0,0,0,0.45), inset -3px -3px 10px rgba(255,255,255,0.035);
    --site-neu-raise: -4px -4px 14px rgba(255,255,255,0.035), 5px 7px 18px rgba(0,0,0,0.5);
    --site-neu-raise-hover: -4px -4px 14px rgba(255,255,255,0.05), 6px 8px 20px rgba(0,0,0,0.55);
    --site-neu-blue-soft: #19336D;
    --site-neu-blue-ink: #769DFF;
    --site-neu-blue-glow: rgba(26,92,255,0.35);
    --site-neu-green-soft: #1A4B41;
    --site-neu-green-ink: #4AC776;
    --site-neu-green-glow: rgba(29,185,84,0.35);
    --site-neu-purple-soft: #332A69;
    --site-neu-purple-ink: #B089F4;
    --site-neu-purple-glow: rgba(124,58,237,0.35);
    --site-heading-ink: #FFFFFF;
    --site-leaf-red: #E16675;
    --site-leaf-amber: #F59E0B;
    --site-leaf-orange: #EA814F;
    --site-leaf-opacity: 0.45;
    --site-show-blue: #5A8AFF;
    --site-show-sky: #A8C1FF;
    --site-white: #FFFFFF;
    --band-alt: #141F32;
    --blitz-scrim-top: rgba(6,8,20,0.80);
    --blitz-scrim-mid: rgba(6,8,20,0.54);
    --site-mark-lift: 0 1px 2px rgba(0,0,0,0.35), 0 4px 12px rgba(0,0,0,0.3);
    --band-navy: #1A2536;
    --band-navy-ink: #FFFFFF;
    --band-navy-sub: #A8B5C4;
    --band-navy-line: rgba(255,255,255,0.10);
    --band-navy-card: #283242;
    --show-score-red: #E26A79;
  }
}
