/* auto-generated from design_tokens.json. Do not edit by hand. */

:root {
  --spacing-xxs: 2px;
  --spacing-xs: 4px;
  --spacing-s: 8px;
  --spacing-m: 16px;
  --spacing-l: 24px;
  --spacing-xl: 32px;
  --spacing-xxl: 48px;
  --radius-s: 6px;
  --radius-m: 12px;
  --radius-l: 20px;
  --radius-pill: 999px;
  --shadow-subtle: 0 1px 2px rgba(0,0,0,0.04);
  --shadow-card: 0 2px 8px rgba(0,0,0,0.06);
  --shadow-modal: 0 16px 40px rgba(0,0,0,0.12);
  --typography-family-ja: 'Hiragino Sans', 'Yu Gothic', 'Noto Sans JP', system-ui, sans-serif;
  --typography-family-serif: 'Yu Mincho', 'Noto Serif JP', serif;
  --typography-size-xs: 11px;
  --typography-size-s: 13px;
  --typography-size-m: 15px;
  --typography-size-l: 18px;
  --typography-size-xl: 22px;
  --typography-size-xxl: 28px;
  --typography-weight-regular: 400;
  --typography-weight-medium: 500;
  --typography-weight-bold: 700;
  --typography-leading-tight: 1.3;
  --typography-leading-normal: 1.6;
  --typography-leading-loose: 1.8;
  --motion-duration-instant: 100ms;
  --motion-duration-quick: 180ms;
  --motion-duration-normal: 280ms;
  --motion-duration-slow: 480ms;
  --motion-ease-standard: cubic-bezier(0.4, 0.0, 0.2, 1);
  --motion-ease-out: cubic-bezier(0.0, 0.0, 0.2, 1);
  --motion-ease-bounce: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

:root[data-theme='yume'] {
  --primary: #F8C8D4;
  --secondary: #E8B4D6;
  --neutral: #FFF4E6;
  --accent: #C8E8D4;
  --line: #8C5F6F;
  --text: #5A3A40;
  --text-muted: #8C5F6F;
  --bg: #FFFAF4;
  --bg-soft: #FDF1F5;
  --danger: #E8857F;
  --warning: #E8B14A;
  --success: #7DBF95;
  --family-display: 'Zen Maru Gothic', 'Hiragino Sans', serif;
  --family-body: 'Hiragino Sans', 'Yu Gothic', sans-serif;
  --ui-button-bg: #F8C8D4;
  --ui-button-text: #5A3A40;
  --ui-button-bg-hover: #F0B5C5;
  --ui-header-bg: #FFF4E6;
  --ui-card-bg: #FFFAF4;
  --ui-border: #E8B4D6;
  --ui-link: #8C5F6F;
  --ui-input-bg: #FFFFFF;
  --ui-input-border: #E8B4D6;
}

:root[data-theme='kusumi'] {
  --primary: #D4A8B0;
  --secondary: #B896A8;
  --neutral: #F4EFE8;
  --accent: #A8BBA8;
  --line: #4A4A4A;
  --text: #2A2A2A;
  --text-muted: #6A6A6A;
  --bg: #FBF8F3;
  --bg-soft: #F4EFE8;
  --danger: #B87A7A;
  --warning: #B89A5A;
  --success: #8FA890;
  --family-display: 'Noto Serif JP', 'Yu Mincho', serif;
  --family-body: 'Hiragino Sans', 'Yu Gothic', sans-serif;
  --ui-button-bg: #D4A8B0;
  --ui-button-text: #2A2A2A;
  --ui-button-bg-hover: #C49298;
  --ui-header-bg: #F4EFE8;
  --ui-card-bg: #FBF8F3;
  --ui-border: #B896A8;
  --ui-link: #4A4A4A;
  --ui-input-bg: #FFFFFF;
  --ui-input-border: #B8A89A;
}

:root[data-theme='wa'] {
  --primary: #2C4E70;
  --secondary: #FADADD;
  --neutral: #F5F0E6;
  --accent: #E8A87C;
  --line: #3A3A3A;
  --text: #2A2A2A;
  --text-muted: #6A6A6A;
  --bg: #FBF8F1;
  --bg-soft: #F5F0E6;
  --danger: #B84A4A;
  --warning: #E8A87C;
  --success: #A8C890;
  --family-display: 'Yu Mincho', 'Noto Serif JP', serif;
  --family-body: 'Yu Mincho', 'Noto Serif JP', serif;
  --ui-button-bg: #2C4E70;
  --ui-button-text: #F5F0E6;
  --ui-button-bg-hover: #1E3A55;
  --ui-header-bg: #F5F0E6;
  --ui-card-bg: #FBF8F1;
  --ui-border: #2C4E70;
  --ui-link: #2C4E70;
  --ui-input-bg: #FFFFFF;
  --ui-input-border: #3A3A3A;
}

:root[data-theme='mori'] {
  --primary: #A89A8B;
  --secondary: #C9A678;
  --neutral: #F4EFE8;
  --accent: #6B8E6F;
  --line: #4A3A2A;
  --text: #2A2A2A;
  --text-muted: #6A6A6A;
  --bg: #FAF6EF;
  --bg-soft: #F4EFE8;
  --danger: #B86B4A;
  --warning: #C9A678;
  --success: #6B8E6F;
  --family-display: 'Zen Maru Gothic', serif;
  --family-body: 'Hiragino Sans', sans-serif;
  --ui-button-bg: #A89A8B;
  --ui-button-text: #F4EFE8;
  --ui-button-bg-hover: #927F6B;
  --ui-header-bg: #F4EFE8;
  --ui-card-bg: #FAF6EF;
  --ui-border: #6B8E6F;
  --ui-link: #4A3A2A;
  --ui-input-bg: #FFFFFF;
  --ui-input-border: #A89A8B;
}

:root[data-theme='yozora'] {
  /* yozora is a dark theme. --primary must be LIGHT to stand out on dark bg
     (it's used everywhere as the highlight/accent color — hero date digit,
     active nav label, focus outlines, etc.). We use a moonlight-lavender.
     The original #3B2E52 is kept as the secondary tint (card accents). */
  --primary: #C8B4DC;
  --primary-deep: #3B2E52;
  --secondary: #8A7BA8;
  --neutral: #B8A8C8;
  --accent: #D4AF37;
  --line: #C8C8C8;
  --text: #F5F5FA;
  --text-muted: #B8A8C8;
  --bg: #1B2838;
  --bg-soft: #2C3E60;
  --danger: #E87A7A;
  --warning: #D4AF37;
  --success: #A8C8B8;
  --family-display: 'Noto Serif JP', serif;
  --family-body: 'Hiragino Sans', sans-serif;
  --ui-button-bg: #C8B4DC;
  --ui-button-text: #1B2838;
  --ui-button-bg-hover: #B89CCF;
  --ui-header-bg: #2C3E60;
  --ui-card-bg: #2C3E60;
  --ui-border: rgba(200, 180, 220, 0.3);
  --ui-link: #D4AF37;
  --ui-input-bg: #2C3E60;
  --ui-input-border: rgba(200, 180, 220, 0.4);
}

