/* Isoland design tokens — generated from tokens.json. Themes: light, dark (default: light).
   Switch theme with <html data-theme="dark">. */
:root, [data-theme="light"] {
  --ground: #e6f0f1;
  --ground-line: #cfdfe3;
  --ink: #15233a;
  --ink-soft: #475a6d;
  --surface: #ffffff;
  --surface-sunk: #d9e6ec;
  --shade: #12304f;
  --shadow: #183e6229;
  --sky: #5ac6f2;
  --grass: #72d47c;
  --sun: #ffd447;
  --coral: #ff7d6e;
  --lilac: #b8a4ff;
  --on-color: #15233a;
  --link: #0a64a0;
  --danger-ink: #b3301f;
  --focus: #3d5afe;
  --shadow-cast-sm: 6px 3px 0 0 #183e6229;
  --shadow-cast-md: 14px 7px 0 0 #183e6229;
  --shadow-cast-lg: 24px 12px 0 0 #183e6224;
  --shadow-recess: inset 3px 3px 0 0 #12304f1f;
  --shadow-recess-deep: inset 5px 5px 0 0 #12304f24;
  color-scheme: light;
}
[data-theme="dark"] {
  --ground: #171a33;
  --ground-line: #252a50;
  --ink: #f4f2ff;
  --ink-soft: #b7bad8;
  --surface: #323771;
  --surface-sunk: #22264b;
  --shade: #06071a;
  --shadow: #00000066;
  --sky: #55bdf0;
  --grass: #62c870;
  --sun: #ffcb3d;
  --coral: #ff7466;
  --lilac: #ab96ff;
  --on-color: #15233a;
  --link: #8fd3ff;
  --danger-ink: #ffa094;
  --focus: #ffd447;
  --shadow-cast-sm: 6px 3px 0 0 #00000066;
  --shadow-cast-md: 14px 7px 0 0 #00000066;
  --shadow-cast-lg: 24px 12px 0 0 #0000005c;
  --shadow-recess: inset 3px 3px 0 0 #00000059;
  --shadow-recess-deep: inset 5px 5px 0 0 #00000066;
  color-scheme: dark;
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --radius-none: 0px;
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-round: 9999px;
  --depth-1: 3px;
  --depth-2: 6px;
  --depth-3: 10px;
  --depth-4: 16px;
  --dur-press: 90ms;
  --dur-lift: 200ms;
  --dur-slide: 280ms;
  --dur-rise: 560ms;
  --dur-grow: 760ms;
  --dur-drop: 620ms;
  --dur-stagger: 60ms;
  --ease-rise: cubic-bezier(.22, 1.4, .42, 1);
  --ease-lift: cubic-bezier(.2, .8, .25, 1.18);
  --ease-sink: cubic-bezier(.3, .6, .4, 1);
  --ease-slide: cubic-bezier(.36, 1.3, .5, 1);
  --ease-out: cubic-bezier(.5, 0, .9, .4);
  --font-display: "Dela Gothic One", "Arial Black", system-ui, sans-serif;
  --font-body: Manrope, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --type-display-xl-family: var(--font-display);
  --type-display-xl-size: 56px;
  --type-display-xl-line: 60px;
  --type-display-xl-weight: 400;
  --type-display-xl-tracking: -0.01em;
  --type-display-family: var(--font-display);
  --type-display-size: 36px;
  --type-display-line: 42px;
  --type-display-weight: 400;
  --type-title-family: var(--font-display);
  --type-title-size: 22px;
  --type-title-line: 28px;
  --type-title-weight: 400;
  --type-number-family: var(--font-display);
  --type-number-size: 30px;
  --type-number-line: 34px;
  --type-number-weight: 400;
  --type-number-tracking: 0.01em;
  --type-heading-family: var(--font-body);
  --type-heading-size: 17px;
  --type-heading-line: 24px;
  --type-heading-weight: 800;
  --type-body-family: var(--font-body);
  --type-body-size: 15px;
  --type-body-line: 23px;
  --type-body-weight: 500;
  --type-small-family: var(--font-body);
  --type-small-size: 13px;
  --type-small-line: 19px;
  --type-small-weight: 600;
  --type-label-family: var(--font-body);
  --type-label-size: 11px;
  --type-label-line: 14px;
  --type-label-weight: 800;
  --type-label-tracking: 0.1em;
}
/* Type styles as utility classes (optional) */
.type-display-xl { font-family: var(--type-display-xl-family); font-size: var(--type-display-xl-size); line-height: var(--type-display-xl-line); font-weight: var(--type-display-xl-weight); letter-spacing: var(--type-display-xl-tracking); }
.type-display { font-family: var(--type-display-family); font-size: var(--type-display-size); line-height: var(--type-display-line); font-weight: var(--type-display-weight); }
.type-title { font-family: var(--type-title-family); font-size: var(--type-title-size); line-height: var(--type-title-line); font-weight: var(--type-title-weight); }
.type-number { font-family: var(--type-number-family); font-size: var(--type-number-size); line-height: var(--type-number-line); font-weight: var(--type-number-weight); letter-spacing: var(--type-number-tracking); }
.type-heading { font-family: var(--type-heading-family); font-size: var(--type-heading-size); line-height: var(--type-heading-line); font-weight: var(--type-heading-weight); }
.type-body { font-family: var(--type-body-family); font-size: var(--type-body-size); line-height: var(--type-body-line); font-weight: var(--type-body-weight); }
.type-small { font-family: var(--type-small-family); font-size: var(--type-small-size); line-height: var(--type-small-line); font-weight: var(--type-small-weight); }
.type-label { font-family: var(--type-label-family); font-size: var(--type-label-size); line-height: var(--type-label-line); font-weight: var(--type-label-weight); letter-spacing: var(--type-label-tracking); }
