/* GENERATED by scripts/build_tokens_css.py from kb/tokens.json. Do not hand-edit. */
/* Source: SimpleTherapy Product Design System (GYnLrUPU83asetKN0g0j7u), read 24 Aug 2026 */
:root {
  --color-black: #001b36;
  --color-white: #ffffff;
  --color-grey-0: #3d4f62;
  --color-grey-1: #526376;
  --color-grey-2: #8496a8;
  --color-grey-3: #c7cfd9;
  --color-grey-4: #ecf2f6;
  --color-grey-5: #f6f9fb;
  --color-grey-6: #fafafa;
  --color-dark05: rgba(0, 27, 54, 0.05);
  --color-dark10: rgba(0, 27, 54, 0.1);
  --color-dark60: rgba(0, 27, 54, 0.6);
  --color-blue: #1ea5de;
  --color-light-blue: #e9f6fc;
  --color-purple: #814adf;
  --color-light-purple: #f2edfc;
  --color-dark-green: #06845a;
  --color-green: #2eb695;
  --color-light-green: #ebf8f5;
  --color-dark-red: #c83739;
  --color-red: #ff7678;
  --color-light-red: #fff1f2;
  --color-orange: #ff790c;
  --color-special-orange-button-1: #ec6950;
  --color-special-orange-button-2-hover: #ff7156;
  --color-special-blue-button-1: #242778;
  --color-special-blue-button-2-hover: #2f349e;
  --color-special-purple-button-1: #673467;
  --color-special-purple-button-2-hover: #8c478c;
  --color-special-green-button-1: #17723c;
  --color-special-green-button-2-hover: #1f9951;
  --gradient-brand: linear-gradient(135deg, #1ea5de 0%, #2eb695 100%);

  --shadow-above-low: 0 -2px 4px rgba(0,0,0,0.08);
  --shadow-below-low: 0 2px 4px rgba(0,0,0,0.10);
  --shadow-below-medium: 0 2px 8px rgba(0,0,0,0.10);
  --shadow-below-high: 0 2px 16px rgba(0,0,0,0.10);
  --shadow-above-medium: 0 -2px 8px rgba(0,0,0,0.08);
  --shadow-above-high: 0 -2px 16px rgba(0,0,0,0.08);
  --shadow-border-default-1-5px: 0 0 0 2px #c7cfd9, 0 2px 4px rgba(0,27,54,0.10);
  --shadow-border-selected-1-5px-blue: 0 0 0 2px #1ea5de, 0 2px 4px rgba(0,27,54,0.10);
  --shadow-border-selected-1-5px-orange: 0 0 0 2px #ff790c, 0 2px 4px rgba(0,27,54,0.10);
  --shadow-border-selected-3px: 0 0 0 3px #1ea5de, 0 2px 8px rgba(0,27,54,0.10);
  --shadow-border-disabled-1-5px: 0 0 0 2px #ecf2f6, 0 2px 4px rgba(0,27,54,0.10);

  --font-sans: "Avenir Next", "Avenir Next LT Pro", Avenir, "Nunito Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
  --type-desktop-header-h1-size: 64px;
  --type-desktop-header-h1-weight: 700;
  --type-desktop-header-h1-lh: 1.1;
  --type-desktop-header-h2-size: 40px;
  --type-desktop-header-h2-weight: 600;
  --type-desktop-header-h2-lh: 1.1;
  --type-desktop-header-h3-size: 24px;
  --type-desktop-header-h3-weight: 600;
  --type-desktop-header-h3-lh: 1.1;
  --type-mobile-header-h1-size: 36px;
  --type-mobile-header-h1-weight: 600;
  --type-mobile-header-h1-lh: 1.1;
  --type-mobile-header-h2-size: 28px;
  --type-mobile-header-h2-weight: 600;
  --type-mobile-header-h2-lh: 1.1;
  --type-mobile-header-h3-size: 24px;
  --type-mobile-header-h3-weight: 600;
  --type-mobile-header-h3-lh: 1.1;
  --type-mobile-header-h4-size: 20px;
  --type-mobile-header-h4-weight: 600;
  --type-mobile-header-h4-lh: 1.1;
  --type-universal-p1-regular-size: 18px;
  --type-universal-p1-regular-weight: 500;
  --type-universal-p1-regular-lh: 1.4;
  --type-universal-p1-semibold-size: 18px;
  --type-universal-p1-semibold-weight: 600;
  --type-universal-p1-semibold-lh: 1.4;
  --type-universal-p2-regular-size: 16px;
  --type-universal-p2-regular-weight: 500;
  --type-universal-p2-regular-lh: 1.4;
  --type-universal-p2-semibold-size: 16px;
  --type-universal-p2-semibold-weight: 600;
  --type-universal-p2-semibold-lh: 1.4;
  --type-universal-p3-regular-size: 14px;
  --type-universal-p3-regular-weight: 500;
  --type-universal-p3-regular-lh: 1.4;
  --type-universal-p3-semibold-size: 14px;
  --type-universal-p3-semibold-weight: 600;
  --type-universal-p3-semibold-lh: 1.4;
  --type-universal-caption-c1-regular-size: 12px;
  --type-universal-caption-c1-regular-weight: 500;
  --type-universal-caption-c1-regular-lh: 1.4;
  --type-universal-caption-c1-semibold-size: 12px;
  --type-universal-caption-c1-semibold-weight: 600;
  --type-universal-caption-c1-semibold-lh: 1.4;
  --type-universal-caption-c1-cap-size: 12px;
  --type-universal-caption-c1-cap-weight: 500;
  --type-universal-caption-c1-cap-lh: 1.4;
  --type-universal-button-b1-size: 16px;
  --type-universal-button-b1-weight: 600;
  --type-universal-button-b1-lh: 1.0;
  --type-universal-button-b2-size: 14px;
  --type-universal-button-b2-weight: 600;
  --type-universal-button-b2-lh: 1.0;
  --type-universal-button-b3-size: 12px;
  --type-universal-button-b3-weight: 600;
  --type-universal-button-b3-lh: 1.0;
  --type-universal-tag-t1-size: 14px;
  --type-universal-tag-t1-weight: 500;
  --type-universal-tag-t1-lh: 1.0;
  --type-universal-tag-t2-size: 12px;
  --type-universal-tag-t2-weight: 500;
  --type-universal-tag-t2-lh: 1.0;

  --bp-mobile: 375px;
  --bp-desktop: 1440px;
  --mobile-min-height: 812px;
}

.t-desktop-header-h1 {
  font-family: var(--font-sans);
  font-size: var(--type-desktop-header-h1-size);
  font-weight: var(--type-desktop-header-h1-weight);
  line-height: var(--type-desktop-header-h1-lh);
  letter-spacing: -0.02em;
}
.t-desktop-header-h2 {
  font-family: var(--font-sans);
  font-size: var(--type-desktop-header-h2-size);
  font-weight: var(--type-desktop-header-h2-weight);
  line-height: var(--type-desktop-header-h2-lh);
  letter-spacing: -0.02em;
}
.t-desktop-header-h3 {
  font-family: var(--font-sans);
  font-size: var(--type-desktop-header-h3-size);
  font-weight: var(--type-desktop-header-h3-weight);
  line-height: var(--type-desktop-header-h3-lh);
  letter-spacing: -0.02em;
}
.t-mobile-header-h1 {
  font-family: var(--font-sans);
  font-size: var(--type-mobile-header-h1-size);
  font-weight: var(--type-mobile-header-h1-weight);
  line-height: var(--type-mobile-header-h1-lh);
  letter-spacing: -0.02em;
}
.t-mobile-header-h2 {
  font-family: var(--font-sans);
  font-size: var(--type-mobile-header-h2-size);
  font-weight: var(--type-mobile-header-h2-weight);
  line-height: var(--type-mobile-header-h2-lh);
  letter-spacing: -0.02em;
}
.t-mobile-header-h3 {
  font-family: var(--font-sans);
  font-size: var(--type-mobile-header-h3-size);
  font-weight: var(--type-mobile-header-h3-weight);
  line-height: var(--type-mobile-header-h3-lh);
  letter-spacing: -0.02em;
}
.t-mobile-header-h4 {
  font-family: var(--font-sans);
  font-size: var(--type-mobile-header-h4-size);
  font-weight: var(--type-mobile-header-h4-weight);
  line-height: var(--type-mobile-header-h4-lh);
  letter-spacing: -0.02em;
}
.t-universal-p1-regular {
  font-family: var(--font-sans);
  font-size: var(--type-universal-p1-regular-size);
  font-weight: var(--type-universal-p1-regular-weight);
  line-height: var(--type-universal-p1-regular-lh);
  letter-spacing: -0.02em;
}
.t-universal-p1-semibold {
  font-family: var(--font-sans);
  font-size: var(--type-universal-p1-semibold-size);
  font-weight: var(--type-universal-p1-semibold-weight);
  line-height: var(--type-universal-p1-semibold-lh);
  letter-spacing: -0.02em;
}
.t-universal-p2-regular {
  font-family: var(--font-sans);
  font-size: var(--type-universal-p2-regular-size);
  font-weight: var(--type-universal-p2-regular-weight);
  line-height: var(--type-universal-p2-regular-lh);
  letter-spacing: -0.02em;
}
.t-universal-p2-semibold {
  font-family: var(--font-sans);
  font-size: var(--type-universal-p2-semibold-size);
  font-weight: var(--type-universal-p2-semibold-weight);
  line-height: var(--type-universal-p2-semibold-lh);
  letter-spacing: -0.02em;
}
.t-universal-p3-regular {
  font-family: var(--font-sans);
  font-size: var(--type-universal-p3-regular-size);
  font-weight: var(--type-universal-p3-regular-weight);
  line-height: var(--type-universal-p3-regular-lh);
  letter-spacing: -0.02em;
}
.t-universal-p3-semibold {
  font-family: var(--font-sans);
  font-size: var(--type-universal-p3-semibold-size);
  font-weight: var(--type-universal-p3-semibold-weight);
  line-height: var(--type-universal-p3-semibold-lh);
  letter-spacing: -0.02em;
}
.t-universal-caption-c1-regular {
  font-family: var(--font-sans);
  font-size: var(--type-universal-caption-c1-regular-size);
  font-weight: var(--type-universal-caption-c1-regular-weight);
  line-height: var(--type-universal-caption-c1-regular-lh);
  letter-spacing: -0.02em;
}
.t-universal-caption-c1-semibold {
  font-family: var(--font-sans);
  font-size: var(--type-universal-caption-c1-semibold-size);
  font-weight: var(--type-universal-caption-c1-semibold-weight);
  line-height: var(--type-universal-caption-c1-semibold-lh);
  letter-spacing: -0.02em;
}
.t-universal-caption-c1-cap {
  font-family: var(--font-sans);
  font-size: var(--type-universal-caption-c1-cap-size);
  font-weight: var(--type-universal-caption-c1-cap-weight);
  line-height: var(--type-universal-caption-c1-cap-lh);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.t-universal-button-b1 {
  font-family: var(--font-sans);
  font-size: var(--type-universal-button-b1-size);
  font-weight: var(--type-universal-button-b1-weight);
  line-height: var(--type-universal-button-b1-lh);
  letter-spacing: -0.02em;
}
.t-universal-button-b2 {
  font-family: var(--font-sans);
  font-size: var(--type-universal-button-b2-size);
  font-weight: var(--type-universal-button-b2-weight);
  line-height: var(--type-universal-button-b2-lh);
  letter-spacing: -0.02em;
}
.t-universal-button-b3 {
  font-family: var(--font-sans);
  font-size: var(--type-universal-button-b3-size);
  font-weight: var(--type-universal-button-b3-weight);
  line-height: var(--type-universal-button-b3-lh);
  letter-spacing: -0.02em;
}
.t-universal-tag-t1 {
  font-family: var(--font-sans);
  font-size: var(--type-universal-tag-t1-size);
  font-weight: var(--type-universal-tag-t1-weight);
  line-height: var(--type-universal-tag-t1-lh);
  letter-spacing: -0.02em;
}
.t-universal-tag-t2 {
  font-family: var(--font-sans);
  font-size: var(--type-universal-tag-t2-size);
  font-weight: var(--type-universal-tag-t2-weight);
  line-height: var(--type-universal-tag-t2-lh);
  letter-spacing: -0.02em;
}
