:root {
    --bs-primary: #54aeb2;
    --bs-primary-hover: #399599;
    --bs-primary-active: #2a898d;
    --bs-primary-disabled: #a7cbcd;
    --bs-primary-contrast: #000000;
    --bs-primary-rgb: 84, 174, 178;
    --primary-light: #7cd4d8;
    --primary-dark: #318f93;
    --primary-bg: #e6f2f2;
    --bs-secondary: #a893cd;
    --bs-accent: #d28a7d;
    --bs-light: #fbfcff;
    --bs-dark: #1d2433;
    --bs-white: #ffffff;
    --bs-black: #000000;
    --bs-dark-rgb: 29, 36, 51;
    --bs-light-rgb: 251, 252, 255;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-success: #799950;
    --bs-warning: #dc8f4e;
    --bs-danger: #a73c48;
    --bs-info: #00a2c2;
    --bs-success-rgb: 121, 153, 80;
    --bs-warning-rgb: 220, 143, 78;
    --bs-danger-rgb: 167, 60, 72;
    --bs-info-rgb: 0, 162, 194;
    --bs-body-bg: #e5f3f3;
    --bs-body-color: #172033;
    --bs-secondary-color: #586177;
    --bs-border-color: #e4e8f0;
    --bs-form-border-color: #586177;
    --secondary-light: #ceb8f5;
    --secondary-dark: #8a74ad;
    --secondary-bg: #f8f6f8;
    --accent-light: #f3a99b;
    --accent-dark: #b16c60;
    --accent-bg: #f1edea;
    --gray-50: #fbfcff;
    --gray-100: #e4e5ea;
    --gray-200: #cdcfd6;
    --gray-300: #b7bac2;
    --gray-400: #a1a4ae;
    --gray-500: #8c909b;
    --gray-600: #777b88;
    --gray-700: #636876;
    --gray-800: #4f5564;
    --gray-900: #3c4253;
    --gray-950: #2a3142;
    --bs-border-radius: 0;
    --bs-border-radius-sm: 0;
    --bs-border-radius-lg: 0;
    --bs-shadow: 0 22px 60px rgba(var(--bs-dark-rgb), .13);
    --bs-shadow-float: 0 28px 80px rgba(var(--bs-dark-rgb), .20);
    --bs-body-font-family: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
    --bs-headings-font-family: "Noto Serif JP", "Hiragino Mincho ProN", serif;
    --bs-monospace-font-family: "Fira Code", monospace;
    --tv2-bg: var(--bs-body-bg);
    --tv2-surface: rgba(var(--bs-white-rgb), .78);
    --tv2-surface-solid: var(--bs-white);
    --tv2-ink: var(--bs-body-color);
    --tv2-muted: var(--bs-secondary-color);
    --tv2-line: var(--bs-border-color);
    --tv2-brand: var(--bs-primary);
    --tv2-brand-hover: var(--bs-primary-hover);
    --tv2-accent: var(--bs-accent);
    --tv2-accent-soft: var(--accent-bg);
    --tv2-violet: var(--bs-secondary);
    --tv2-radius: var(--bs-border-radius);
    --tv2-shadow: var(--bs-shadow);
    --tv2-shadow-float: var(--bs-shadow-float);
    --tv2-font-body: var(--bs-body-font-family);
    --tv2-font-display: var(--bs-headings-font-family);
}
