:root {
    --bs-primary: #005aa9;
    --bs-primary-hover: #004290;
    --bs-primary-active: #003783;
    --bs-primary-disabled: #6180a4;
    --bs-primary-contrast: #ffffff;
    --bs-primary-rgb: 0, 90, 169;
    --primary-light: #347fd1;
    --primary-dark: #003c89;
    --primary-bg: #bdcad2;
    --bs-secondary: #5b73ab;
    --bs-accent: #a43a00;
    --bs-light: #fafafa;
    --bs-dark: #1f1f1f;
    --bs-white: #ffffff;
    --bs-black: #000000;
    --bs-dark-rgb: 31, 31, 31;
    --bs-light-rgb: 250, 250, 250;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-success: #6eb55c;
    --bs-warning: #ee6700;
    --bs-danger: #c16c78;
    --bs-info: #00758c;
    --bs-success-rgb: 110, 181, 92;
    --bs-warning-rgb: 238, 103, 0;
    --bs-danger-rgb: 193, 108, 120;
    --bs-info-rgb: 0, 117, 140;
    --bs-body-bg: #cad1d5;
    --bs-body-color: #171717;
    --bs-secondary-color: #525252;
    --bs-border-color: #e5e5e5;
    --bs-form-border-color: #525252;
    --secondary-light: #7e97d2;
    --secondary-dark: #40568c;
    --secondary-bg: #e2e7eb;
    --accent-light: #c65a2c;
    --accent-dark: #821800;
    --accent-bg: #cebfb7;
    --gray-50: #fafafa;
    --gray-100: #e3e3e3;
    --gray-200: #cccccc;
    --gray-300: #b5b5b5;
    --gray-400: #9f9f9f;
    --gray-500: #8a8a8a;
    --gray-600: #757575;
    --gray-700: #616161;
    --gray-800: #4d4d4d;
    --gray-900: #3b3b3b;
    --gray-950: #292929;
    --bs-border-radius: .75rem;
    --bs-border-radius-sm: .5rem;
    --bs-border-radius-lg: 1rem;
    --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 Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
    --bs-monospace-font-family: "IBM Plex Mono", 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);
    --jrn-paper: var(--bs-body-bg);
    --jrn-paper-deep: var(--bs-light);
    --jrn-ink: var(--bs-body-color);
    --jrn-muted: var(--bs-secondary-color);
    --jrn-line: rgba(var(--bs-primary-rgb), .16);
    --jrn-brand: var(--bs-primary);
    --jrn-brand-hover: var(--bs-primary-hover);
    --jrn-max: 1080px;
    --jrn-measure: 62ch;
    --jrn-font-display: var(--bs-headings-font-family);
    --jrn-font-body: var(--bs-body-font-family);
    --jrn-font-ui: var(--bs-body-font-family);
}
