/* Approved 2026-10-02. Palette copied exactly from 122700126a97b79ce555c1356a420df5d58dde1b5fc308a3a5b1cf4abf2d9ad6.
 * Integration tokens only: no product layout, persistence or bootstrap JS.
 * See ../THEME_BEHAVIOR.md. Keep assets/fonts and its license with this file. */
@font-face {
  font-family: 'NanumSquareRound';
  src: url('./assets/fonts/NanumSquareRoundR.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'NanumSquareRound';
  src: url('./assets/fonts/NanumSquareRoundB.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: 'NanumSquareRound';
  src: url('./assets/fonts/NanumSquareRoundEB.woff2') format('woff2');
  font-style: normal;
  font-weight: 800;
  font-display: swap;
}

:root {
  color-scheme: light;
  --dk-page: #fafaf7;
  --dk-surface: #fffefa;
  --dk-soft: #eeeee6;
  --dk-field: #ffffff;
  --dk-text: #263238;
  --dk-muted: #626a6a;
  --dk-line: #dedfd9;
  --dk-control: #7b8582;
  --dk-action: #263238;
  --dk-on-action: #fffefa;
  --dk-action-hover: #36484e;
  --dk-hover: #f1f2ec;
  --dk-accent-ink: #9e4a09;
  --dk-selected: #fff0df;
  --dk-income: #236b45;
  --dk-income-bg: #e8f3ec;
  --dk-expense: #9a4d3e;
  --dk-expense-bg: #f9ece8;
  --dk-warning: #875a0a;
  --dk-warning-bg: #fff2d8;
  --dk-error: #b52e37;
  --dk-error-bg: #fdecee;
  --dk-info: #245d8c;
  --dk-info-bg: #e8f1f8;
  --dk-disabled: #e8eae5;
  --dk-disabled-text: #626a6a;
  --dk-accent: #ff9b42;
  --dk-font-body: 'NanumSquareRound', 'Malgun Gothic', sans-serif;
  --dk-font-brand: 'Segoe UI', sans-serif;
  --dk-weight-regular: 400;
  --dk-weight-bold: 700;
  --dk-weight-title: 800;
  --dk-size-input: 16px;
  --dk-size-button: 14px;
  --dk-control-min-height: 48px;
  --dk-radius-card: 16px;
  --dk-radius-feature: 20px;
  --dk-radius-control: 8px;
  --dk-radius-status: 6px;
}

/* System fallback applies only until a deliberate root theme exists. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    color-scheme: dark;
    --dk-page: #1f272a;
    --dk-surface: #273236;
    --dk-soft: #303b3d;
    --dk-field: #202a2e;
    --dk-text: #f1f3ef;
    --dk-muted: #b6bfbc;
    --dk-line: #485255;
    --dk-control: #87958f;
    --dk-action: #e2e9e3;
    --dk-on-action: #243034;
    --dk-action-hover: #f1f3ef;
    --dk-hover: #344347;
    --dk-accent-ink: #ffb571;
    --dk-selected: #483526;
    --dk-income: #8fd3a8;
    --dk-income-bg: #243e32;
    --dk-expense: #edac99;
    --dk-expense-bg: #49312b;
    --dk-warning: #e8c272;
    --dk-warning-bg: #443b25;
    --dk-error: #ffb0b7;
    --dk-error-bg: #492d34;
    --dk-info: #a0c9f1;
    --dk-info-bg: #293b4c;
    --dk-disabled: #344145;
    --dk-disabled-text: #b6bfbc;
    --dk-accent: #ff9b42;
  }
}

:root[data-theme='dark'] {
  color-scheme: dark;
  --dk-page: #1f272a;
  --dk-surface: #273236;
  --dk-soft: #303b3d;
  --dk-field: #202a2e;
  --dk-text: #f1f3ef;
  --dk-muted: #b6bfbc;
  --dk-line: #485255;
  --dk-control: #87958f;
  --dk-action: #e2e9e3;
  --dk-on-action: #243034;
  --dk-action-hover: #f1f3ef;
  --dk-hover: #344347;
  --dk-accent-ink: #ffb571;
  --dk-selected: #483526;
  --dk-income: #8fd3a8;
  --dk-income-bg: #243e32;
  --dk-expense: #edac99;
  --dk-expense-bg: #49312b;
  --dk-warning: #e8c272;
  --dk-warning-bg: #443b25;
  --dk-error: #ffb0b7;
  --dk-error-bg: #492d34;
  --dk-info: #a0c9f1;
  --dk-info-bg: #293b4c;
  --dk-disabled: #344145;
  --dk-disabled-text: #b6bfbc;
  --dk-accent: #ff9b42;
}
