/* Theme controls are shared; dark overrides leave the original light palette intact. */
/* Expense editors use the selected palette for the frame and all control states. */
html:root[data-theme] body :is(.record-editor, .shared-expense-editor-dialog, .quick-expense-dialog) {
  border: 1px solid var(--theme-line, #d9e5df);
}
html:root[data-theme] body :is(.record-editor, .shared-expense-editor-dialog, .quick-expense-dialog) :is(input:not([type=checkbox]):not([type=radio]), select, textarea, .app-control-trigger, .amount-input-wrap) {
  border-color: var(--theme-line, #d9e5df);
  background-color: var(--theme-panel, #fff);
  color: var(--theme-ink, #293c33);
}
html:root[data-theme] body :is(.record-editor, .shared-expense-editor-dialog, .quick-expense-dialog) :is(input:not([type=checkbox]):not([type=radio]), select, textarea, .app-control-trigger):is(:focus, :focus-visible) {
  border-color: var(--theme-accent, #28765e);
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-accent, #28765e) 18%, transparent);
}
html:root[data-theme] body :is(.record-editor, .shared-expense-editor-dialog, .quick-expense-dialog) :is(input:not([type=checkbox]):not([type=radio]), select, textarea)[aria-invalid="true"] {
  border-color: var(--theme-danger, var(--danger, #b84c5d));
}
.theme-menu-icon svg { display: block; width: 22px; height: 22px; }
.theme-dialog { width: min(440px, calc(100% - 28px)); max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: hidden; border: 1px solid #e0e8e3; border-radius: 20px; background: #fff; color: #293c33; box-shadow: 0 20px 64px color-mix(in srgb, var(--theme-shadow-ink,rgb(22 45 33)) 15%, transparent); }
.theme-dialog[open] { display: flex; flex-direction: column; }
.theme-dialog-body { min-height: 0; overflow: auto; overscroll-behavior: contain; padding: 0 22px 22px; }
.theme-dialog::backdrop { background: rgb(12 22 18 / 45%); }
.theme-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; }
.theme-dialog-header h2 { margin: 0; font-size: 18px; font-weight: 650; }
.theme-dialog .theme-dialog-close { display: grid; place-items: center; flex: 0 0 44px; width: 44px; min-width: 44px; height: 44px; min-height: 44px; padding: 0; border: 0; border-radius: 50%; background: #f4f7f5; color: #718178; font-size: 25px; line-height: 1; }
.theme-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; border: 0; }
.theme-option { position: relative; display: grid; gap: 14px; padding: 12px; border: 1px solid #dfe7e1; border-radius: 14px; background: #fff; color: #45584b; cursor: pointer; }
.theme-option:has(input:checked) { border-color: var(--theme-accent,#28765e); box-shadow: inset 0 0 0 1px var(--theme-accent,#28765e); background: #f4faf6; }
.theme-option input { position: absolute; right: 12px; bottom: 15px; width: 18px; min-width: 18px; height: 18px; min-height: 18px; margin: 0; padding: 0; accent-color: #28765e; }
.theme-option:has(input:focus-visible) { outline: 2px solid var(--theme-accent,#28765e); outline-offset: 3px; }
.theme-option-label { padding-right: 24px; font-size: 14px; line-height: 24px; font-weight: 600; }
.theme-preview { position: relative; display: grid; gap: 8px; min-height: 106px; padding: 13px; overflow: hidden; border: 1px solid #e5eae7; border-radius: 8px; background: #f6f8f7; }
.theme-preview > span { width: 48%; height: 8px; border-radius: 3px; background: #a4b5ac; }
.theme-preview > i { display: block; height: 10px; border-radius: 3px; background: #dde7e1; }
.theme-preview > i:last-of-type { width: 70%; }
.theme-preview > img { position: absolute; right: 8px; bottom: 8px; width: 42px; height: 42px; object-fit: contain; }
.theme-preview--dark { border-color: #353f43; background: #151a1d; }
.theme-preview--dark > span { background: #78cbb2; }
.theme-preview--dark > i { background: #343f43; }
.theme-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
body.app-shell-page .records-toolbar .records-view-toggle button[aria-pressed="false"] { color: var(--theme-muted, #68756e); }

html:root[data-theme="dark"] {
  color-scheme: dark;
  --theme-canvas: #151a1d;
  --theme-panel: #1e2529;
  --theme-raised: #283136;
  --theme-hover: #303b3f;
  --theme-ink: #e8edeb;
  --theme-muted: #a5b2ad;
  --theme-line: #37433f;
  --theme-accent: #8bd7be;
  --theme-accent-ink: #102e25;
  --theme-accent-soft: #243d34;
  --theme-danger: #f09a9f;
  --theme-danger-soft: #422c31;
  --theme-blue: #92c9ef;
  --theme-gold: #eac780;
  --kkaebu-mint: var(--theme-accent);
  --kkaebu-mint-soft: var(--theme-accent-soft);
  --kkaebu-deep-mint: var(--theme-accent);
  --kkaebu-mint-action: var(--theme-accent);
  --kkaebu-blue-deep: var(--theme-blue);
  --kkaebu-blue-soft: #273945;
  --kkaebu-lavender-soft: #353249;
  --kkaebu-gold-soft: #413923;
  --kkaebu-eggshell: var(--theme-panel);
  --app-canvas: var(--theme-canvas);
  --kkaebu-surface: var(--theme-panel);
  --kkaebu-surface-muted: var(--theme-raised);
  --kkaebu-ink: var(--theme-ink);
  --kkaebu-muted: var(--theme-muted);
  --kkaebu-line: var(--theme-line);
  --surface-line: var(--theme-line);
  --kkaebu-shadow: 0 18px 48px rgb(0 0 0 / 18%);
  --navy: var(--theme-accent);
  --blue: var(--theme-accent);
  --blue-soft: var(--theme-accent-soft);
  --ink: var(--theme-ink);
  --muted: var(--theme-muted);
  --line: var(--theme-line);
  --danger: var(--theme-danger);
  --danger-soft: var(--theme-danger-soft);
  --success: var(--theme-accent);
  --success-soft: var(--theme-accent-soft);
  background: var(--theme-canvas);
  color: var(--theme-ink);
  scrollbar-color: #64766e var(--theme-canvas);
}
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body { background: var(--theme-canvas); color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.assets-page-body { background: var(--theme-canvas); color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) ::selection { background: #456f5e; color: #fff; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(input, select, textarea) { color-scheme: dark; accent-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(input[type=checkbox], input[type=radio]) { background-color: var(--theme-raised); border-color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(input:where(:not([type=checkbox], [type=radio])), select, textarea, .app-control-trigger, .app-control-popover) { background-color: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(input, textarea)::placeholder { color: #9ba9a2; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(input, select, textarea, button, a):focus-visible { outline-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.card, .expense-card, .review-card, .records-card, .settings-dialog, .record-editor-dialog, .confirm-dialog, .codef-link-dialog, .app-context-dialog, .theme-dialog) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) dialog { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) dialog::backdrop { background: rgb(0 0 0 / 60%); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.dialog-header, .settings-dialog-header, .record-editor-header, .app-context-dialog > header) { border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.primary-button, .submit-button, .confirm-dialog-confirm, .launch-primary) { background: var(--theme-accent); color: var(--theme-accent-ink); border-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.primary-button, .submit-button, .launch-primary):hover { background: #a0e4cd; color: var(--theme-accent-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.secondary-button, .ghost-button, .dialog-close, .settings-dialog-close, .record-editor-close, .app-context-dialog > header button, .theme-dialog .theme-dialog-close) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.error, .status-error, .field-error, .danger-button, .is-error, [data-error="true"]) { color: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.commerce-footer, .commerce-footer--site, .launch-footer) { color: var(--theme-muted); border-color: var(--theme-line); background: transparent; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.commerce-footer a, .commerce-footer strong, .commerce-footer__contact) { color: var(--theme-muted); }

/* The shared shell, menus and mobile safe-area bar. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .app-header.app-header--simple { background: var(--theme-canvas); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .app-header-heading h1 { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page :is(.nav-menu-button, .app-mobile-settings, .app-context-settings, .records-view-settings, .goals-budget-settings) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .app-header.nav-menu-ready .app-nav { background: var(--theme-panel); border-color: var(--theme-line); box-shadow: 0 12px 36px #0005; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .app-nav .nav-link { color: var(--theme-muted); background: transparent; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .app-nav .nav-link:is(.active, :hover) { color: var(--theme-accent); background: var(--theme-accent-soft); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.has-mobile-navigation .app-bottom-nav { background: var(--theme-canvas); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-bottom-nav > a { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-bottom-nav > a[aria-current="page"] { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page :is(.nav-menu-button, .app-mobile-settings, .app-context-settings, .records-view-settings, .goals-budget-settings):hover { background: var(--theme-raised); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page :is(.app-page-menu-actions button, .app-page-menu-actions a) { background: var(--theme-raised); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-page-menu-actions, .app-header-context) { color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page :is(.nav-menu-review-count, .nav-family-request-count, .app-bottom-nav .nav-review-count) { border-color: var(--theme-canvas); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .quick-actions-trigger { background: var(--theme-accent); color: var(--theme-accent-ink); border-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.quick-actions-menu, .quick-actions-popover) { background: var(--theme-panel); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.quick-actions-menu button, .quick-actions-menu a) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.count-badge, .settings-menu-icon, .settings-menu-value, .settings-menu-chevron) { background-color: transparent; color: var(--theme-muted); }

/* Settings and theme selection. */
/* The settings index stays open to the canvas; dialogs keep their own panels. */
html:root[data-theme]:not([data-theme="light"]) body.settings-index-page .settings-page > .settings-menu-list {
  background: transparent;
  border: 0;
  box-shadow: none;
}
html:root[data-theme]:not([data-theme="light"]) body.settings-index-page .settings-page > .settings-menu-list > .settings-menu-row {
  background: transparent;
}
html:root[data-theme]:not([data-theme="light"]) body.settings-index-page .settings-page > .settings-menu-list > .settings-menu-row > .settings-menu-icon {
  background: transparent !important;
}
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.settings-menu-list, .settings-menu-row, .settings-row, .settings-row-editor) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.settings-menu-row:hover, .settings-row-trigger:hover) { background: var(--theme-raised); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.settings-menu-copy strong, .settings-row-title, .settings-dialog h2, .settings-dialog h3, .settings-group-label) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.settings-menu-copy > span, .settings-row-summary, .settings-dialog-description, .settings-group-label) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .settings-menu-row .settings-menu-icon { background: var(--theme-raised); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.theme-option, .theme-dialog) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .theme-option:has(input:checked) { background: var(--theme-accent-soft); border-color: var(--theme-accent); box-shadow: inset 0 0 0 1px var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .theme-option input { accent-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .theme-option:has(input:focus-visible) { outline-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.family-room, .family-room-scene, .family-character-option, .user-card, .family-member-card) { background-color: var(--theme-raised); color: var(--theme-ink); border-color: var(--theme-line); }

/* Ledger, calendar, review and entry editor. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-toolbar, .records-section-heading, .records-table, .records-table th, .records-table td, .records-list, .records-day, .records-day-heading, .records-mobile-item, .review-workspace, .review-list, .review-item, .expense-form, .entry-form, .record-editor-form) { color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-table th, .records-day-heading, .records-summary, .review-summary, .entry-type-tabs, .entry-type-switch, .records-view-toggle, .review-filter-tabs) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-view-toggle button, .review-filter-tabs button, .entry-type-toggle, .records-filter-button, .records-month-button) { background: transparent; color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-view-toggle button[aria-pressed="true"], .records-view-toggle button.active, .review-filter-tabs button.active, .entry-type-tabs button.active) { background: var(--theme-panel); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-details strong, .records-cost, .records-section-heading h2, .records-day-total, .records-calendar-heading, .review-item strong, .review-card strong, .expense-form label, .record-editor-dialog label) { color: var(--theme-ink); }
/* Keep the records heading on the canvas; only the view switch has a surface. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body .records-date-heading .app-control-trigger { background: var(--theme-accent-soft); color: var(--theme-accent); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .records-toolbar { background: transparent; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .records-toolbar h2 { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-toolbar .records-view-toggle { background: var(--theme-panel); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-toolbar .records-view-toggle button[aria-pressed="true"] { background: var(--theme-accent-soft); color: var(--theme-accent); box-shadow: none; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .records-view-settings.has-selection { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-date, .records-category, .records-mobile-classification, .records-detail-badge, .records-owner, .records-note, .records-empty, .review-empty, .review-card small, .review-meta, .form-help) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-detail-badge, .records-category-badge, .records-filter-chip, .review-source-badge, .record-editor-summary, .entry-success-summary) { background: var(--theme-raised); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-summary, .records-list-summary, .records-category) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar, .records-calendar-grid, .records-calendar-day, .records-calendar-detail, .records-calendar-day-panel, .records-calendar-detail-item, .records-calendar-details, .records-calendar-empty, .records-month-menu, .entry-category-option, .category-picker, .category-picker-popover, .expense-editor-panel, .record-editor-panel, .review-detail-panel) { background-color: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-day:hover, .records-calendar-day.is-selected, .records-calendar-day[aria-selected="true"], .records-calendar-day[aria-pressed="true"]) { background: var(--theme-accent-soft); border-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-weekdays, .records-calendar-weekday, .records-calendar-date, .records-calendar-day-number, .records-calendar-detail-date, .records-calendar-display-settings) { color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-expense, .records-calendar-total, .records-calendar-detail-amount, .records-calendar-detail-description, .records-calendar-day-panel h3) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-day.is-today, .records-calendar-today) { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-layout-option, .records-calendar-detail-filter) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-layout-option:has(input:checked) { background: var(--theme-accent-soft); color: var(--theme-accent); border-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-control, .app-control-popover) { --control-line: var(--theme-line); --control-text: var(--theme-ink); --control-muted: var(--theme-muted); --control-hover: var(--theme-raised); --control-selected: var(--theme-accent-soft); --control-shadow: 0 16px 38px #0005; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-control-option, .app-control-calendar, .app-control-date-header, .app-control-date-footer) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-control-option:is(:hover, [aria-selected="true"]) { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-cost.is-income, .records-calendar-income, .records-calendar-detail-income, .income-amount, .financial-activity-amount[data-direction="credit"]) { color: var(--theme-accent); }

/* Shared category views and the independent budget category selector. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) h2 { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) header button { background: var(--theme-raised); color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) :is(.kb-filter-modes, .kb-view-name-form button) { background: var(--theme-raised); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) :is(.kb-filter-modes button, .kb-filter-body > p, .kb-view-name-form label, .records-category-options-heading, .budget-category-status) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) :is(.kb-filter-option, .kb-view-name-form input) { color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) .kb-view-name-form input { background: var(--theme-panel); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) :is(.kb-filter-modes button[aria-pressed="true"], .kb-filter-option:has(input:checked)) { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) .kb-filter-tools button { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#kkaebu-analysis-pages .category-view-dialog, .category-view-dialog) .budget-category-status.is-error { color: var(--theme-danger); }

/* Accounts, cards and their transaction details retain institution artwork. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.assets-page-body { --assets-text: var(--theme-ink); --assets-muted: var(--theme-muted); --assets-line: var(--theme-line); --assets-accent: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .assets-page-body :is(.assets-type-tabs, #financial-access-list, .connections-asset-page, .financial-access-item, .financial-activity-row) { background: transparent; border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .assets-page-body :is(.assets-summary h2, .assets-summary-details, .assets-total-note, .assets-list-footnote, .assets-sort select, .assets-type-tabs > button, .assets-type-tabs > button > span, .financial-detail-name h3, .financial-asset-masked, .financial-asset-sync-state, .asset-empty p, .connections-detail-tabs button) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .assets-page-body :is(.assets-type-tabs > button[aria-selected="true"], .asset-account-row .settings-menu-copy strong, .asset-account-row .settings-menu-value, .asset-empty h3) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .assets-page-body .asset-account-row .settings-menu-value[data-known="false"] { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .assets-page-body .financial-access-item .financial-asset-balance { color: var(--theme-ink) !important; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .assets-page-body .asset-account-row:hover { background: var(--theme-panel); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .assets-page-body :is(.assets-search input, .assets-sort select, .financial-activity-period .app-control-trigger) { background: transparent; color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.asset-empty-icon, .asset-institution:not(.has-logo)) { background: var(--theme-raised); color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.financial-activity-description > strong, .financial-activity-amount, .financial-asset-management, .financial-asset-management label) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.financial-activity-meta, .financial-activity-balance, .financial-activity-day > h4, .financial-activity-note, .financial-activity-period, .financial-activity-search label, .financial-activity-directions button, .financial-activity-search-toggle, .financial-activity-pagination) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.financial-activity-search input, .financial-activity-search select, .financial-activity-search button, .financial-activity-pagination button, .financial-activity-filters button, .financial-asset-actions button, .financial-asset-row-action, .card-management-panel, .card-management-row) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.financial-activity-directions button[aria-pressed="true"], .financial-activity-filters button.active) { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .financial-activity-amount[data-direction="in"] { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.financial-activity-search, .financial-activity-row, .financial-activity-day, .financial-asset-management, .card-management-settings-section) { border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.asset-attention, .asset-sync-date[data-warning="true"], .card-billing-summary.warning, .financial-activity-pending) { color: var(--theme-gold); }

/* Goals share the analysis tab palette. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .goals-page { --goals-accent: var(--theme-accent); --goals-accent-soft: var(--theme-accent-soft); --goals-purple: #c4b4ed; --goals-danger: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .goals-tabs { background: var(--theme-accent-soft); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .goals-tabs button { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.app-shell-page .goals-tabs button[aria-selected="true"] { background: var(--theme-panel); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.goals-total-card, .goals-card, .goals-history-summary, .goal-detail-summary, .goal-ledger, .goal-editor-dialog, .goal-detail-dialog, .goal-ledger-row) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.goals-total-amount, .goals-card-numbers strong, .goals-history-summary strong, .goal-detail-summary strong) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.goals-month-label, .goals-card-progress-copy, .goals-card-numbers > span, .goal-detail-summary span, .goal-ledger-row small) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.goals-kind-badge, .goals-add-button, .goals-empty-add, .goals-segments span, .goals-progress, .goals-progress-native, .goal-detail-close, .goal-editor-close) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .goals-progress-native::-webkit-progress-bar { background: var(--theme-raised); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .goals-segments span.filled { background: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .goals-segments span.filled.over { background: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.goals-total-amount.is-over, .goals-card.is-over .goals-card-numbers em, .goal-detail-summary em.is-over) { color: var(--theme-danger); }

/* Analysis tokens also cover SVG chart labels, grids and custom presets. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages {
  color-scheme: dark;
  --kb-paper: var(--theme-canvas); --kb-panel: var(--theme-panel); --kb-ink: var(--theme-ink);
  --kb-muted: var(--theme-muted); --kb-line: var(--theme-line); --kb-green: var(--theme-accent);
  --kb-green-ink: var(--theme-accent-ink); --kb-deep: var(--theme-accent); --kb-mint: var(--theme-accent-soft);
  --kb-ghost: var(--theme-raised); --kb-previous: color-mix(in srgb, var(--theme-accent) 45%, var(--theme-muted)); --kb-negative: var(--theme-danger);
  --kb-shadow: 0 2px 8px rgb(0 0 0 / 4%); color: var(--theme-ink); background: transparent;
}
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-window, .kb-workspace) { background: transparent; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-overview, .kb-panel, .kb-change-section, .kb-records, .kb-periodrail, .kb-insight, .kb-empty, .kb-appbar) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-graphfilters, .kb-segment, .kb-iconbutton, .kb-pagenav, .kb-filter-modes) { background: var(--theme-raised); border-color: var(--theme-line); color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-pagenav button, .kb-pagenav a) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages .kb-pagenav [aria-selected="true"] { background: var(--theme-panel); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-pagenav [aria-current], .kb-pagenav [aria-pressed="true"]) { background: var(--theme-panel); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages .km-pagenav { background: var(--theme-accent-soft); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages .km-pagenav a[aria-current] { background: var(--theme-panel); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages .kb-meter { background: var(--theme-raised); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-categoryrow:hover, .kb-categoryrow[aria-pressed="true"], .kb-chartdays button[aria-pressed="true"], .kb-record:hover) { background: var(--theme-accent-soft); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-panelhead .kb-kicker, .kb-record-action) { color: var(--theme-blue); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages .kb-plot text { fill: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-gridline, .kb-axis line) { stroke: var(--theme-line); }

/* Preparation pages, imports, authentication and help use the same surfaces. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-banner, .launch-trial-benefit, .launch-register, .launch-preview-result) { background: var(--theme-accent-soft); color: var(--theme-accent); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-preview, .launch-form-card, .launch-grid article, .launch-paid-options article, .launch-admin-stats article, .launch-admin table, .launch-admin-pager button, .launch-screen-frame, .codef-link-panel, .codef-step, .codef-institution-option, .bank-files-upload, .bank-file-card, .login-card, .invite-card, .plan-card) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-scene, .launch-progress, .codef-institution-grid, .bank-files-preview, .plan-feature-list) { background: var(--theme-raised); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-lead, .launch-small, .launch-kicker, .launch-grid p, .launch-paid-options article p, .launch-screens-copy > p, .launch-form-card form > p, .launch-faq p, .launch-screen-frame figcaption, .launch-offer) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-offer strong, .launch-label, .launch-preview-tag, .launch-hero h1 em, .launch-trial-benefit > strong) { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-label, .launch-preview-tag) { background: var(--theme-accent-soft); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-benefits, .launch-faq details, .launch-paid, .launch-admin th, .launch-admin td, .launch-preview-row) { border-color: var(--theme-line); }
/* Brand assets (including Kakao and bank marks) keep their original colors. */

/* Stateful surfaces from the calendar, review gestures and secondary screens. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-header, .app-header::before, .records-calendar-day-panel, .records-category-filter-panel, .review-expense-block, .category-sheet-panel, .manual-category-group, .kb-view-dialog) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-header strong, .records-calendar-header button, .review-expense-block strong) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-list-summary small, .records-calendar-summary-item small, .review-instruction, .review-expense-block small, .review-manual-button, .review-product-name, .review-product-category) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-list-summary .expense strong, .records-calendar-summary-item.expense strong, .records-calendar-day-total.expense) { color: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-list-summary .income strong, .records-calendar-summary-item.income strong, .records-calendar-day-total.income) { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-weekdays > :first-child,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day.is-sunday .records-calendar-day-number { color: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-weekdays > :last-child,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day.is-saturday .records-calendar-day-number { color: var(--theme-blue); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active .records-calendar-day-panel { background: var(--theme-panel); color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-day-empty, .records-calendar-day-item, .records-calendar-day-memo-display, .records-calendar-day-memo-form, .review-skip-button, .category-option) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day-actions button { background: var(--theme-accent-soft); color: var(--theme-accent); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day-item :is(strong, b) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day-item.income b { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day-item :is(small, .records-memo) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .review-swipe-zone { background: var(--theme-raised); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .review-choice-left { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .review-choice-right { background: var(--theme-raised); color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .review-choice-detail { background: var(--theme-panel); color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.review-empty-state strong, .expense-card label, .entry-card label, .entry-form label, .form-field > label) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.review-empty-state p, .review-empty-state > span) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.nav-review-count, .nav-family-request-count, .nav-menu-review-count) { background: #ae4c58; color: #fff; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #open-plan-settings-link .settings-menu-icon { background: #353249; color: #cec0f4; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .settings-menu-list .settings-menu-row:hover { background: var(--theme-raised); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.assets-page-body .assets-attention { color: var(--theme-gold); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .financial-activity-amount.income { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.kb-view-settings, .km-memo-heading button, .km-memo-actions button, .km-chart-controls, .km-ledger-row button, .km-status, .kr-rule-card, .kr-summary-card, .kb-view-dialog > header button) { background: var(--theme-raised); color: var(--theme-accent); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages :is(.km-bar-button[aria-pressed=true], .km-history-row[aria-pressed=true], .kb-view-settings.has-filter, .km-memo-badge) { background: var(--theme-accent-soft); color: var(--theme-accent); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages .km-status.km-current { background: #413923; color: var(--theme-gold); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-note, .launch-screens li, .launch-paid > p, .launch-trial-benefit p, .launch-register > div > p, .bank-files-back, .bank-files-note, .bank-files-daily-usage, .plans-policy-summary, .plan-current-copy, .plan-usage-list dt, .plan-comparison-plan small, .plan-comparison-kicker) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.launch-preview-row b, .launch-paid-options article > span, .plans-policy-summary a) { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.plan-current-card, .plan-usage-list > div, .plan-comparison-scroll, .plan-comparison-table th, .plan-comparison-table td, .plan-product-detail, .plan-sync-explainer > div, .plan-payment-notice, .bank-files-picker) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.plan-comparison-table tbody th, .plan-price, .plan-settings-back-link, .plan-no-ads-badge, .plan-current-badge, .plan-current-state, .plan-comparison-status) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .plan-comparison-benefit-row > * { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.plan-comparison-plan strong, .plan-current-heading h2, .bank-files-page h1, .bank-files-header h1) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.plan-comparison-status.is-included, .plan-comparison-plan--pro .plan-price, .plan-comparison-plan--plus .plan-price) { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .plan-comparison-status.is-unavailable { background: var(--theme-raised); color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .bank-files-picker span { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.field-group > label, .review-expense-block > span, .plan-payment-notice strong, .plan-usage-list dd) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body #records-calendar-day-add,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body #records-calendar-day-memo-action { background: var(--theme-accent-soft); color: var(--theme-accent); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .category-view-dialog .records-calendar-display-settings legend { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .category-view-dialog .records-calendar-display-options label { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .category-view-dialog .records-calendar-display-options label:has(input:checked) { background: var(--theme-accent-soft); color: var(--theme-accent); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .plan-comparison-table .plan-comparison-benefit-row > * { background: var(--theme-accent-soft); color: var(--theme-accent); }

/* Settings editors share surfaces while keeping action and status colors distinct. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.category-settings-dialog-header, .category-settings-dialog-scroll, .category-settings-dialog-actions, .recurring-assignment-transactions, .deleted-expenses-list, .income-sources-list, .spending-goal-presets, .spending-goal-list-section, .record-editor-section, .record-editor-actions) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #family-management-dialog :is(.category-settings-dialog-header, .category-settings-dialog-scroll) { background: var(--theme-panel); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.category-settings-dialog, .settings-editor-dialog, .record-editor) :is(h2, h3, label, legend, label > span, label small) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.category-settings-dialog, .settings-editor-dialog, .record-editor) :is(p, small, summary, .amount-unit, .app-control-value) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body .category-settings-dialog-header > button { background: var(--theme-raised); color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.category-settings-note, .spending-goals-intro, .spending-goal-preview, .family-room-welcome) { background: var(--theme-accent-soft); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.category-settings-note > span, .category-settings-note > p) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.backup-actions button, .backup-badge, .category-add-button, .recurring-transfer-add-button, .recurring-assignment-reset, .spending-goal-preset, .spending-goal-preset > span, .spending-goal-limit-unit, .family-share-choice, .family-learning-metrics article, .family-learning-coverage-track, .amount-input-wrap, .app-confirm-cancel, .recurring-reassignment-transaction, .recurring-reassignment-current) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.family-share-choice:has(input:checked), .spending-goal-preset:hover, .spending-goal-kind-option:has(input:checked)) { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.account-deletion-link-copy, .family-room-description, .family-learning-metrics article > span, .recurring-assignment-selection-heading > strong, .recurring-assignment-selected-count, .spending-goal-section-heading > span, .spending-goal-count) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.app-confirm-submit.danger, .danger-button.primary-button) { background: var(--theme-danger); color: #35151b; border-color: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#open-account-deletion-button, #cancel-account-deletion-reason, #cancel-recurring-reassignment, #open-manual-recurring-transfer, #reset-recurring-assignment-filters, #add-recurring-rule-card, #add-income-source-button) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#personal-classification-instructions, #runtime-prompt-text) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body .learning-recurring-feedback-count { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body .deleted-expenses-note { background: var(--theme-danger-soft); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-header::before { background: var(--theme-panel); }

/* Image entry uses the same palette for its surface, picker and result states. */
html:root[data-theme] body .quick-image-expense-dialog {
  background: var(--theme-panel, #fff);
  color: var(--theme-ink, #293c33);
  border: 1px solid var(--theme-line, #d9e5df);
}
html:root[data-theme] body .quick-image-expense-dialog :is(.quick-action-image-icon, .quick-card-submit) {
  background: var(--theme-accent, #23766a);
  color: var(--theme-accent-ink, #fff);
}
html:root[data-theme] body .quick-image-expense-dialog :is(.quick-image-upload-picker, .quick-image-expense-result) {
  background: var(--theme-raised, #f2f9f6);
  color: var(--theme-ink, #293c33);
  border-color: var(--theme-line, #91c4b8);
}
html:root[data-theme] body .quick-image-expense-dialog .quick-image-upload-picker:hover {
  background: var(--theme-hover, #eaf6f1);
}
html:root[data-theme] body .quick-image-expense-dialog :is(.quick-image-upload-picker-copy small, .quick-image-expense-result li small, .quick-card-status) {
  color: var(--theme-muted, #65738a);
}
html:root[data-theme] body .quick-image-expense-dialog :is(.quick-image-expense-result > strong, .quick-card-status[data-kind="success"]) {
  color: var(--theme-accent, #167047);
}
html:root[data-theme] body .quick-image-expense-dialog .quick-card-status[data-kind="error"] {
  color: var(--theme-danger, #b33b3b);
}
html:root[data-theme] body .quick-image-expense-dialog .quick-image-installment-link {
  background: var(--theme-accent-soft, #f2f9f6);
  color: var(--theme-accent, #23766a);
  border-color: var(--theme-line, #91c4b8);
}

/* Quick entry and bank/card linking dialogs. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.quick-expense-dialog h2, .quick-install-dialog h2, .quick-asset-type-dialog h2, .quick-card-dialog h2, .codef-link-dialog h2, .codef-discovery-dialog h2) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.quick-card-field, .quick-card-field > span, .quick-expense-amount-control > span, .quick-install-dialog-lead, .quick-card-security-note, .quick-asset-type-option small, .assets-dialog-lead, .assets-method small, .assets-dialog-note, .assets-method-arrow, .codef-link-heading, .codef-link-lead, .codef-link-search, .codef-link-institution-label small) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.quick-install-dialog-close, .quick-asset-type-option, .quick-card-security-note, .assets-method-icon, .codef-link-types, .codef-link-heading button) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.quick-asset-type-option:hover, .assets-method:hover) { background: var(--theme-hover); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.assets-method, .assets-dialog-note) { border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.codef-link-types button[aria-pressed=true], .codef-link-institutions button) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .codef-link-institutions button:hover { background: var(--theme-accent-soft); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .codef-link-eyebrow { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #recurring-assignment-dialog .recurring-assignment-heading strong,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #family-management-dialog h3,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #leave-category-dialog .family-share-choice strong,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #learning-profile-dialog label { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #recurring-assignment-selected-count { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #income-sources-dialog .income-sources-list { background: var(--theme-panel); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .spending-goal-choice-options label > span { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .spending-goal-choice-options label:has(input:checked) > span { background: var(--theme-accent-soft); color: var(--theme-accent); border-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .manual-recurring-money-input > span { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .quick-expense-submit,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .quick-expense-submit > span { background: var(--theme-accent); color: var(--theme-accent-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .connections-back { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .financial-activity-extra :is(dt, dd),
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .financial-activity-status { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .financial-activity-status.included { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .financial-activity-status.pending { color: var(--theme-gold); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-nav { background: var(--theme-panel); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-nav .nav-link { background: transparent; color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-nav .nav-link:is(.active, :hover) { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.quick-action-option-copy small, .records-memo) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .quick-action-option:is(:hover, :focus-visible) { background: var(--theme-raised); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .assets-dialog-heading .assets-icon-button { background: var(--theme-raised); color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.codef-discovery-scope, .codef-link-note, .codef-link-security, .codef-link-consent) { background: var(--theme-accent-soft); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.codef-discovery-scope > strong, .codef-discovery-alternative) { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.codef-discovery-scope details, .codef-discovery-certificate-help, .codef-link-status, .codef-link-field, .codef-link-consent span, .codef-link-label) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .codef-discovery-footer { background: var(--theme-panel); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages .kb-categoryicon { color: var(--theme-ink); }

/* Expanded consumption details use the same palette as the current analysis. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content :is(h2, h3, strong, .analytics-breakdown-detail-label) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content :is(p, small, .breakdown-description, .analytics-breakdown-row-meta, .analytics-breakdown-row-meta span, .analytics-breakdown-row-meta b) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content :is(.analytics-breakdown-detail-toggle, .analytics-view-toggle, .analytics-breakdown-forecast, .analytics-breakdown-track, .trend-driver-item, .ranked-insight-list li > span) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content .analytics-view-toggle button[aria-pressed=true] { background: var(--theme-accent); color: var(--theme-accent-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content :is(.increased, .is-over) { color: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content .decreased { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content .reduction-card :is(strong, p, small) { color: var(--theme-muted); }

/* Authentication, legal copy and connection guides retain their content. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body .app-header { background: var(--theme-panel); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body .brand { background: transparent; color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #google-login-button { background: #fff; color: #263833; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .google-mark { color: #4285f4; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page :is(.policy-section, .policy-support-card) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page :is(.policy-product-card, .policy-rule-grid article, .policy-privacy-grid article, .policy-fact-list > div, .policy-callout, .policy-security-list > div > span, .policy-anchor-nav a, .policy-support-card) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page :is(h1, h2, h3, strong, dd) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page :is(p, small, dt, .policy-step-list span) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page :is(a, .eyebrow) { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page .policy-setup-notice { background: #413923; color: var(--theme-gold); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page .policy-setup-notice > span { background: #54482b; color: var(--theme-gold); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page .plan-purchase-button { background: var(--theme-accent); color: var(--theme-accent-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .certificate-guide-page :is(a, .certificate-guide-eyebrow) { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .certificate-guide-page :is(.certificate-guide-section, .certificate-guide-options a) { background: var(--theme-panel); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .certificate-guide-page :is(.certificate-guide-tip, .certificate-guide-source) { background: var(--theme-raised); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .certificate-guide-page :is(p, small, dd, .quick-bank-preparation, .certificate-guide-options a > span:first-child, .certificate-guide-footer) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .certificate-guide-page :is(h1, h2, strong, dt) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.family-share-choice strong, .invite-card label) { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.family-share-choice small, .invite-card li) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #launch-status { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #launch-status[data-error=true] { color: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page :is(.purchase-info-hero, .policy-section--seller, .seller-information-list > div) { background: var(--theme-panel); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page .seller-information-list { background: var(--theme-line); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page :is(.policy-effective-date, .policy-product-heading strong) { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page .policy-bullet-list li { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.family-invite-steps li, .family-code-form > label) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content .ranked-insight-list span { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content .trend-driver-list article { background: var(--theme-raised); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content .reduction-list article > div span { background: #413923; color: var(--theme-gold); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #ai-insights-content .analytics-breakdown-detail-toggle:hover { background: var(--theme-hover); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .purchase-info-page .policy-security-list > div { background: var(--theme-raised); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .family-invite-steps li > span { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.codef-link-file-picker, .codef-link-methods button, .codef-link-quick-help, .codef-link-certificate-help, .codef-auth-pending) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .codef-link-file-picker > span { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-entry-kind { background: var(--theme-raised); color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-table[data-records-mode="income"] .records-cost,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .combined-income-row .records-cost { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-entry-kind.income { background: var(--theme-accent-soft); color: var(--theme-accent); }

/* Portalled controls live under body or a dialog, outside their field wrapper. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-floating-panel {
  --control-line: var(--theme-line); --control-text: var(--theme-ink); --control-muted: var(--theme-muted);
  --control-hover: var(--theme-hover); --control-selected: var(--theme-accent-soft); --control-shadow: 0 16px 38px #0006;
  background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line);
}
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-dropdown-option { background: transparent; color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-dropdown-option:is(:hover, :focus-visible, [aria-selected="true"]) { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-dropdown-group, .app-calendar-weekdays, .app-calendar-weekdays span, .app-calendar-nav) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-dropdown-option:disabled { color: var(--theme-muted); opacity: .5; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-control-arrow { border-color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-calendar-icon svg { stroke: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-control-trigger:is(:hover, :focus-visible) { background: var(--theme-raised); border-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-control.is-open .app-control-trigger { box-shadow: 0 0 0 2px color-mix(in srgb, var(--theme-accent) 25%, transparent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-calendar-header strong, .app-calendar-heading-button, .app-calendar-day, .app-month-option, .app-year-option) { color: var(--theme-ink); background: transparent; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-calendar-nav, .app-calendar-heading-button, .app-calendar-day, .app-month-option, .app-year-option):is(:hover, :focus-visible) { color: var(--theme-accent); background: var(--theme-accent-soft); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-calendar-day.is-outside { color: var(--theme-muted); opacity: .55; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-calendar-day.is-today, .app-month-option.is-current) { box-shadow: inset 0 0 0 1px var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-calendar-day.is-selected, .app-month-option.is-selected, .app-year-option[aria-selected="true"]) { color: var(--theme-accent-ink); background: var(--theme-accent); box-shadow: none; opacity: 1; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.app-calendar-day, .app-month-option, .app-year-option):disabled { color: var(--theme-muted); background: transparent; opacity: .4; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-calendar-footer { border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-calendar-footer button { color: var(--theme-accent); background: var(--theme-accent-soft); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-calendar-footer button:is(:hover, :focus-visible) { background: var(--theme-hover); outline-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .app-calendar-footer button:disabled { color: var(--theme-muted); background: var(--theme-raised); opacity: .5; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .record-editor-source-note { color: var(--theme-muted); background: var(--theme-raised); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-row:is(:hover, :focus, :focus-within) > td { background: var(--theme-hover); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-row:focus:not(:focus-visible) { outline: none; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-row:focus-visible { outline: 2px solid var(--theme-accent); outline-offset: -2px; }

/* The ledger calendar marks a date with a circle and keeps transaction rows flat. */
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active .records-calendar-day,
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active .records-calendar-day:is(.has-records, .has-incomes, .has-expenses, .is-today, .is-outside, .is-selected, :hover, :focus-visible) { background: transparent; border: 0; box-shadow: none; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active .records-calendar-day.is-selected .records-calendar-day-number { background: var(--theme-accent); color: var(--theme-accent-ink); box-shadow: none; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active .records-calendar-day.is-today:not(.is-selected) .records-calendar-day-number { color: var(--theme-accent); box-shadow: inset 0 0 0 1px var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active .records-calendar-day:focus-visible { outline: none; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active .records-calendar-day:focus-visible .records-calendar-day-number { outline: 2px solid var(--theme-accent); outline-offset: 2px; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active .records-calendar-day-item { background: transparent; color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.records-calendar-active button.records-calendar-day-item:is(:hover, :focus-visible) { background: var(--theme-hover); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(#records-calendar-day-close, .records-calendar-day-navigation-button) { background: var(--theme-raised); color: var(--theme-muted); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-day-details, .records-calendar-day-actions, .records-calendar-day-navigation, .records-calendar-day-panel > header, .records-calendar-day-memo-heading) { border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day-swipe-hint { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.records-calendar-day-memo-display p, .records-calendar-day-memo-heading label, .records-calendar-day-memo-heading strong, .records-calendar-day-memo-footer small) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day-memo-heading span { background: var(--theme-accent-soft); color: var(--theme-accent); }

/* Touch screens should scroll without selecting interface copy. Editing stays native. */
@container kkaebu (max-width: 599px){
  body, body * { -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
  body :is(input, textarea, [contenteditable]:not([contenteditable="false"])),
  body :is([contenteditable]:not([contenteditable="false"])) * { -webkit-user-select: text; user-select: text; -webkit-touch-callout: default; }
  body img { -webkit-user-drag: none; }
}@media (hover: none) and (pointer: coarse){
  body, body * { -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
  body :is(input, textarea, [contenteditable]:not([contenteditable="false"])),
  body :is([contenteditable]:not([contenteditable="false"])) * { -webkit-user-select: text; user-select: text; -webkit-touch-callout: default; }
  body img { -webkit-user-drag: none; }
}

/* Collectible stationery themes share the application's semantic color tokens. */
html:root:is([data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) {
  color-scheme: light;
  --kkaebu-mint: var(--theme-accent);
  --kkaebu-mint-soft: var(--theme-accent-soft);
  --kkaebu-deep-mint: var(--theme-accent);
  --kkaebu-mint-action: var(--theme-accent);
  --kkaebu-blue-deep: var(--theme-blue);
  --kkaebu-blue-soft: var(--theme-raised);
  --kkaebu-lavender-soft: var(--theme-raised);
  --kkaebu-gold-soft: var(--theme-raised);
  --kkaebu-eggshell: var(--theme-panel);
  --app-canvas: var(--theme-canvas);
  --kkaebu-surface: var(--theme-panel);
  --kkaebu-surface-muted: var(--theme-raised);
  --kkaebu-ink: var(--theme-ink);
  --kkaebu-muted: var(--theme-muted);
  --kkaebu-line: var(--theme-line);
  --surface-line: var(--theme-line);
  --kkaebu-shadow: 0 18px 48px rgb(90 62 50 / 8%);
  --navy: var(--theme-accent);
  --blue: var(--theme-accent);
  --blue-soft: var(--theme-accent-soft);
  --ink: var(--theme-ink);
  --muted: var(--theme-muted);
  --line: var(--theme-line);
  --danger: var(--theme-danger);
  --danger-soft: var(--theme-danger-soft);
  --success: var(--theme-accent);
  --success-soft: var(--theme-accent-soft);
  background: var(--theme-canvas); color: var(--theme-ink);
  scrollbar-color: var(--theme-muted) var(--theme-canvas);
}
html:root[data-theme="paper"] {
  --theme-canvas: #fff8ef; --theme-panel: #fffdf8; --theme-raised: #f7eddf;
  --theme-hover: #f0e0c8; --theme-ink: #493a2d; --theme-muted: #75624e;
  --theme-line: #e5d4bb; --theme-accent: #80552d; --theme-accent-ink: #fffdf8;
  --theme-accent-soft: #f6e6cf; --theme-danger: #a43d49; --theme-danger-soft: #fce9e9;
  --theme-blue: #376d83; --theme-gold: #7c5c20; --theme-stamp: '\273f';
}
html:root[data-theme="ribbon"] {
  --theme-canvas: #faf2fc; --theme-panel: #fffbff; --theme-raised: #f1e5f5;
  --theme-hover: #e9d8ef; --theme-ink: #49354f; --theme-muted: #786080;
  --theme-line: #e3cfe9; --theme-accent: #80508f; --theme-accent-ink: #fffbff;
  --theme-accent-soft: #efdef4; --theme-danger: #a43c58; --theme-danger-soft: #fce9ef;
  --theme-blue: #436c9d; --theme-gold: #7f5a25; --theme-stamp: '\1f380';
}
html:root[data-theme="paper"] body:is(.app-shell-page, :has(> .bank-files-page)) {
  background-image: linear-gradient(#d8c3a322 1px, transparent 1px), linear-gradient(90deg,#d8c3a322 1px,transparent 1px);
  background-size: 22px 22px;
}
html:root[data-theme="ribbon"] body:is(.app-shell-page, :has(> .bank-files-page)) {
  background-image: url("/static/theme-pattern-ribbon-v2.svg");
  background-size: 1320px 1060px;
}
html:root:is([data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.primary-button,.submit-button,.launch-primary):hover {
  background: var(--theme-ink); color: var(--theme-accent-ink);
}
html:root:is([data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.card,.records-card,.settings-dialog,.theme-dialog) {
  box-shadow: 0 8px 30px color-mix(in srgb, var(--theme-shadow-ink,rgb(90 62 90)) 5%, transparent);
}
html:root[data-theme="paper"] :is(.records-calendar,.settings-menu-list) { border-style: dashed; }
html:root[data-theme="ribbon"] :is(.records-calendar,.card:not(.settings-menu-list)) { border-radius: 22px; }
html:root:is([data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) .records-calendar-day.is-selected {
  box-shadow: inset 0 0 0 1px var(--theme-accent), 0 3px 0 var(--theme-line);
}
html:root:is([data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(#open-plan-settings-link .settings-menu-icon,.km-status.km-current,.policy-setup-notice,.reduction-list article > div span) {
  background: var(--theme-raised); color: var(--theme-muted);
}
html:root:is([data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body :is(.app-confirm-submit.danger,.danger-button.primary-button) {
  color: #fff; background: var(--theme-danger);
}
html:root:is([data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(.theme-preview--light,.theme-preview--dark,.theme-preview--paper,.theme-preview--ribbon) { color-scheme: light; }
.theme-option-label { display: block; }
.theme-option.is-locked { position:relative; }
.theme-option.is-locked .theme-preview { opacity:.65; }
.theme-option.is-locked .theme-preview::before { content:'잠김'; position:absolute; z-index:2; top:7px; right:7px; padding:3px 6px; border-radius:6px; background:var(--theme-panel,#fff); color:var(--theme-muted,#66756d); font-size:10px; }
.theme-unlock-link { display:block; margin-top:5px; color:var(--theme-accent,#23766a); font-size:11px; text-decoration:underline; text-underline-offset:3px; }
.theme-unlock-link[hidden] { display:none; }
.theme-preview--paper { position: relative; border-color: #dfccb0; color: #80552d; background-color: #fff8ef; background-image: linear-gradient(#dec8a744 1px,transparent 1px),linear-gradient(90deg,#dec8a744 1px,transparent 1px); background-size: 10px 10px; }
.theme-preview--paper > span { background: #b79468; }
.theme-preview--paper > i { background: #e9d9c1; }
.theme-preview--ribbon { position: relative; border-color: #d9bde3; color: #80508f; background-color: #faf2fc; background-image: url("/static/theme-pattern-ribbon-v2.svg"); background-size: 660px auto; }
.theme-preview--ribbon > span { background: #b28abd; }
.theme-preview--ribbon > i { background: #e5cfea; border-radius: 8px; }
.theme-option input { appearance: none; border: 1.5px solid var(--theme-muted,#718178); border-radius: 50%; background: transparent; box-shadow: none; }
.theme-option input:checked { border-color: var(--theme-accent,#28765e); background: radial-gradient(circle,var(--theme-accent,#28765e) 0 45%,transparent 50%); }
@container kkaebu (max-width: 359px){ .theme-dialog-body { padding: 0 16px 16px; } .theme-option { padding: 10px; } .theme-option-label { display: flex; align-items: center; min-height: 48px; font-size: 12px; } }


/* Seasonal skins use the same semantic tokens, in the app and their previews. */
html:root[data-theme="spring"], .theme-preview--spring {
  --theme-canvas: #fff4f6; --theme-panel: #fffcfd; --theme-raised: #f9e8ed;
  --theme-hover: #f3dbe3; --theme-ink: #503541; --theme-muted: #7b5c6a;
  --theme-line: #e9cdd7; --theme-accent: #a04468; --theme-accent-ink: #fffcfd;
  --theme-accent-soft: #f9e1e9; --theme-danger: #a63c4e; --theme-danger-soft: #fce6eb;
  --theme-blue: #4e6a8d; --theme-gold: #806026; --theme-stamp: '\1f338';
  --theme-pattern: url("/static/theme-pattern-spring-v2.svg");
  --theme-pattern-size: 1440px 1080px;
}
html:root[data-theme="summer"], .theme-preview--summer {
  --theme-canvas: #effaf9; --theme-panel: #fbfefd; --theme-raised: #def1ef;
  --theme-hover: #cce8e5; --theme-ink: #244b50; --theme-muted: #506f74;
  --theme-line: #bddedb; --theme-accent: #176b78; --theme-accent-ink: #fbfefd;
  --theme-accent-soft: #d6eeed; --theme-danger: #a64150; --theme-danger-soft: #fce9eb;
  --theme-blue: #2d6797; --theme-gold: #7a6022; --theme-stamp: '\1f30a';
  --theme-pattern: url("/static/theme-pattern-summer-v2.svg");
  --theme-pattern-size: 1512px 1128px;
}
html:root[data-theme="autumn"], .theme-preview--autumn {
  --theme-canvas: #fff5ec; --theme-panel: #fffcf7; --theme-raised: #f7e7d8;
  --theme-hover: #efd7c0; --theme-ink: #533c30; --theme-muted: #79604f;
  --theme-line: #e6cdb6; --theme-accent: #98502f; --theme-accent-ink: #fffcf7;
  --theme-accent-soft: #f6dfcc; --theme-danger: #a33f49; --theme-danger-soft: #fbe6e7;
  --theme-blue: #426f80; --theme-gold: #7e5d1f; --theme-stamp: '\1f341';
  --theme-pattern: url("/static/theme-pattern-autumn-v2.svg");
  --theme-pattern-size: 1408px 1104px;
}
html:root[data-theme="winter"], .theme-preview--winter {
  --theme-canvas: #f1f6fc; --theme-panel: #fcfdff; --theme-raised: #e2ebf6;
  --theme-hover: #d3e1f0; --theme-ink: #334862; --theme-muted: #53657c;
  --theme-line: #cbd9e9; --theme-accent: #3e608f; --theme-accent-ink: #fcfdff;
  --theme-accent-soft: #dce8f7; --theme-danger: #a33d58; --theme-danger-soft: #fbe7ee;
  --theme-blue: #366b96; --theme-gold: #7d6029; --theme-stamp: '\2744';
  --theme-pattern: url("/static/theme-pattern-winter-v3.svg");
  --theme-pattern-size: 80px 90px;
}
html:root[data-theme="winter"] body.app-shell-page .app-header.app-header--simple { background: transparent; }
html:root:is([data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body:is(.app-shell-page, :has(> .bank-files-page)) {
  background-image: var(--theme-pattern); background-size: var(--theme-pattern-size);
}
html:root:is([data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(input, select, textarea, #kkaebu-analysis-pages) { color-scheme: light; }
html:root:is([data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(input, textarea)::placeholder { color: var(--theme-muted); }
.theme-preview--season {
  position: relative; color-scheme: light; border-color: var(--theme-line);
  background-color: var(--theme-canvas); background-image: var(--theme-pattern); background-size: 640px auto;
}
.theme-preview--winter { background-size: 80px 90px; }
.theme-preview--season > span { background: var(--theme-accent); }
.theme-preview--season > i { background: var(--theme-accent-soft); }
html:root:is([data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) #kkaebu-analysis-pages .km-status.km-current {
  color: var(--theme-accent); background: var(--theme-accent-soft);
}
html:root:is([data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) :is(#ai-insights-content .reduction-list article > div span, .purchase-info-page .policy-setup-notice, .purchase-info-page .policy-setup-notice > span) {
  color: var(--theme-accent); background: var(--theme-accent-soft);
}
html:root:is([data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) ::selection { background: var(--theme-accent); color: var(--theme-accent-ink); }
/* Only the theme list scrolls; no card can appear above its heading. */
.theme-dialog-header { position: relative; flex: 0 0 auto; z-index: 2; margin: 0; padding: 22px 22px 18px; background: var(--theme-panel, #fff); }
@container kkaebu (max-width: 359px){ .theme-dialog-header { padding: 16px 16px 14px; } }

/* Quick actions keep their glow, icons and focus ring in the active palette. */
.quick-actions-trigger { box-shadow: 0 10px 24px color-mix(in srgb, var(--theme-accent, #23766a) 28%, transparent), inset 0 1px 0 rgb(255 255 255 / 25%); }
.quick-actions-trigger:hover { box-shadow: 0 13px 28px color-mix(in srgb, var(--theme-accent, #23766a) 32%, transparent), inset 0 1px 0 rgb(255 255 255 / 28%); }
.quick-actions-trigger:active { box-shadow: 0 6px 16px color-mix(in srgb, var(--theme-accent, #23766a) 24%, transparent), inset 0 2px 4px rgb(0 0 0 / 12%); }
.quick-actions-trigger:focus-visible { outline-color: color-mix(in srgb, var(--theme-accent, #23766a) 45%, transparent); }
.quick-action-option-icon { background: var(--theme-accent, #23766a); color: var(--theme-accent-ink, #fff); box-shadow: 0 4px 10px color-mix(in srgb, var(--theme-accent, #23766a) 20%, transparent); }
.quick-action-option:focus-visible { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--theme-accent, #23766a) 30%, transparent); }

/* Review surfaces use the selected palette while exclude actions retain their meaning. */
html:root[data-theme="light"] body.review-page-body :is(#review-count, .review-instruction, .review-expense-block small, .review-financial-source, .review-manual-button, .recurring-review-transaction small, .recurring-review-transaction em, .recurring-review-choice small, .duplicate-entry-classification .records-detail-badge) { color: #586b61; }
html:root[data-theme="light"] body.review-page-body .review-choice-left { background: #e8f0fc; color: #244f91; }
html:root[data-theme="light"] body.review-page-body .review-choice-right { background: #e3f2e9; color: #24664c; }
html:root[data-theme="light"] body.review-page-body .review-choice-target.financial-choice-exclude { background: #fbe9ec; color: #993c4b; }
html:root[data-theme="light"] body.review-page-body .review-choice-detail { background: #fff; color: #293c33; }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .duplicate-delete-confirmation .danger-button { border: 1px solid var(--theme-danger); border-radius: 10px; background: var(--theme-danger-soft); color: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .review-expense-block:focus-visible { outline-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .review-choice-target.financial-choice-exclude { background: var(--theme-danger-soft); color: var(--theme-danger); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .review-choice-target.financial-choice-include { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body :is(.recurring-review-transaction, .review-product-category, .review-split-button, .category-sheet-close) { background: var(--theme-raised); color: var(--theme-accent); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body :is(.recurring-review-choice, .recurring-review-not-matched) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .recurring-review-transaction strong { color: var(--theme-ink); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body :is(.recurring-review-transaction small, .recurring-review-transaction em, .recurring-review-choice small, .review-financial-source, .category-sheet-description) { color: var(--theme-muted); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .recurring-review-transaction > span { color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .recurring-review-choice > span:first-child { background: var(--theme-accent-soft); color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body :is(.recurring-review-choice, .recurring-review-not-matched, .review-manual-button, .category-sheet-close):is(:hover, :focus-visible) { background: var(--theme-hover); color: var(--theme-ink); border-color: var(--theme-accent); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .review-purchase-table :is(th, td) { background: var(--theme-panel); color: var(--theme-ink); border-color: var(--theme-line); }
html:root:is([data-theme="dark"], [data-theme="paper"], [data-theme="ribbon"], [data-theme="spring"], [data-theme="summer"], [data-theme="autumn"], [data-theme="winter"], [data-theme="chocolate"], [data-theme="christmas"], [data-theme="newyear"], [data-theme="seollal"], [data-theme="chuseok"]) body.review-page-body .review-purchase-table th { background: var(--theme-raised); color: var(--theme-muted); }

/* Summary dividers follow the same palette in list and calendar views. */
.records-calendar-summary-item + .records-calendar-summary-item { border-left-color: var(--theme-line, #dce4e2); }

/* Consistent controls, including mobile dialogs and secondary pages. */
html:root body.app-shell-page .records-list-controls { gap:8px; flex-wrap:nowrap; }
html:root body.app-shell-page .records-list-controls .app-control { flex:0 0 120px; }
html:root body.app-shell-page .records-list-controls .app-control-trigger { height:36px; min-height:36px; padding:0 28px 0 10px; border:1px solid var(--theme-line,#d4dedb); border-radius:8px; background:var(--theme-accent-soft,#e8faf5); color:var(--theme-accent,#15584f); font-size:12px; font-weight:650; line-height:1.25; transition:none; }
html:root[data-theme] body #kkaebu-analysis-pages .kb-flow .kb-compare-month .app-control-trigger { transition:none; }
html:root body.app-shell-page .records-list-controls > .records-search-panel { position:static; inset:auto; display:grid; grid-template-columns:15px minmax(0,1fr); flex:1 1 0; min-width:0; width:auto; height:36px; margin:0; padding:0 8px; gap:6px; border:1px solid var(--theme-line,#d4dedb); border-radius:8px; background:var(--theme-panel,#fff); color:var(--theme-muted,#66757a); box-shadow:none; transition:none; }
html:root body.app-shell-page .records-list-controls > .records-search-panel[hidden] { display:none; }
html:root body.app-shell-page .records-list-controls .records-search-panel input { min-width:0; width:100%; height:34px; min-height:34px; padding:0; border:0; border-radius:0; outline:0; background:transparent; color:var(--theme-ink,#1f2a2e); font-size:12px; }
html:root body.app-shell-page .records-list-controls .records-search-panel:focus-within { border-color:var(--theme-accent,#23766a); box-shadow:0 0 0 2px color-mix(in srgb,var(--theme-accent,#23766a) 12%,transparent); }
html:root body.app-shell-page .records-search-toggle:is(:hover,.is-open) { background:var(--theme-accent-soft,#e8faf5); color:var(--theme-accent,#23766a); }
html:root body #records-scroll-top { background:var(--theme-accent,#23766a); color:var(--theme-accent-ink,#fff); border-color:var(--theme-accent,#23766a); box-shadow:0 6px 18px color-mix(in srgb,var(--theme-accent,#23766a) 20%,transparent); }
html:root body.assets-page-body .connections-asset-list .asset-account-row { border:1px solid var(--theme-line,#d4dedb); border-radius:14px; padding:14px 12px; margin-bottom:8px; background:var(--theme-panel,#fff); box-shadow:none; transition:none; }
html:root body :is(.financial-refresh-dialog,.connection-refresh-panel) { background:var(--theme-panel,#fff); color:var(--theme-ink,#1f2a2e); border-color:var(--theme-line,#d4dedb); }
html:root body .financial-refresh-dialog [data-close] { display:grid; place-items:center; flex:0 0 40px; width:40px; height:40px; padding:0; border:0; border-radius:10px; background:var(--theme-raised,#f4f8f7); color:var(--theme-muted,#66757a); font-size:26px; line-height:1; }
html:root body :is(.bankapi-refresh-account,.financial-refresh-automatic,.bankapi-refresh-help) { border-color:var(--theme-line,#d4dedb); background:var(--theme-raised,#f4f8f7); color:var(--theme-ink,#1f2a2e); }
html:root body .bankapi-refresh-account :is(strong,small,span,label) { color:inherit; }
html:root body .bankapi-refresh-password input { background:var(--theme-panel,#fff); color:var(--theme-ink,#1f2a2e); border:1px solid var(--theme-line,#d4dedb); transition:none; }
html:root body .bankapi-refresh-password input::placeholder { color:var(--theme-muted,#66757a); }
html:root body .financial-activity .financial-activity-review { border:1px solid var(--theme-line,#d4dedb); background:var(--theme-accent-soft,#e8faf5); color:var(--theme-accent,#23766a); }
html:root body :is(.goal-category-option,.goal-subcategory-option,#budget-category-dialog) input[type=checkbox] { appearance:none; -webkit-appearance:none; display:inline-grid; place-items:center; flex:0 0 18px; width:18px; height:18px; min-height:18px; padding:0; border:1.5px solid var(--theme-accent,#23766a); border-radius:5px; background:var(--theme-panel,#fff); color:var(--theme-accent-ink,#fff); transition:none; }
html:root body :is(.goal-category-option,.goal-subcategory-option,#budget-category-dialog) input[type=checkbox]:checked { background:var(--theme-accent,#23766a); }
html:root body :is(.goal-category-option,.goal-subcategory-option,#budget-category-dialog) input[type=checkbox]:checked::after { content:''; width:8px; height:4px; border-left:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-1px) rotate(-45deg); }
html:root body :is(.goal-category-option,.goal-subcategory-option,#budget-category-dialog) input[type=checkbox]:disabled { opacity:.45; }
html:root[data-theme] body #kkaebu-analysis-pages :is(.km-memo-heading button,.km-memo-actions button,.km-memo-badge,.km-ledger-open) { border-color:var(--kb-line); background:var(--kb-mint); color:var(--kb-deep); }
html:root[data-theme] body #kkaebu-analysis-pages .km-memo-actions .km-memo-save { background:var(--kb-green); color:var(--kb-green-ink); border-color:var(--kb-green); }
html:root[data-theme] body #kkaebu-analysis-pages .km-memo textarea { background:var(--kb-panel); color:var(--kb-ink); border-color:var(--kb-line); transition:none; }
html:root[data-theme] body #kkaebu-analysis-pages .km-ledger-row { background:var(--kb-panel); color:var(--kb-ink); border-color:var(--kb-line); }
html:root[data-theme] body #kkaebu-analysis-pages :is(.km-ledger-month-line h3,.km-ledger-metric strong,.km-ledger-result strong) { color:var(--kb-ink); }
html:root[data-theme] body #kkaebu-analysis-pages :is(.km-ledger-result,.km-ledger-metric) { background:var(--kb-ghost); border-color:var(--kb-line); }
html:root[data-theme] body #kkaebu-analysis-pages .km-ledger-metric-income strong { color:var(--kb-green); }
html:root[data-theme] body #kkaebu-analysis-pages .km-ledger-result-negative strong { color:var(--kb-negative); }
html:root[data-theme] body #kkaebu-analysis-pages .km-history-row { cursor:default; background:var(--kb-panel); border-color:var(--kb-line); color:var(--kb-ink); }
html:root[data-theme] body #kkaebu-analysis-pages .reduction-list article { background:var(--kb-panel); border:1px solid var(--kb-line); color:var(--kb-ink); }
html:root[data-theme] body #kkaebu-analysis-pages .reduction-list article :is(strong,h3,p) { color:var(--kb-ink); }
html:root[data-theme] body #kkaebu-analysis-pages .reduction-list article :is(small,span) { color:var(--kb-muted); }
html:root[data-theme] body #kkaebu-analysis-pages .reduction-list article > div span { background:var(--kb-mint); color:var(--kb-deep); }
html:root[data-theme] body #kkaebu-analysis-pages .kr-trend { grid-template-columns:repeat(6,minmax(72px,1fr)); overflow-x:auto; padding-bottom:5px; }
html:root[data-theme] body #kkaebu-analysis-pages .kr-trend-month > strong { white-space:nowrap; overflow-wrap:normal; min-height:16px; font-size:11px; letter-spacing:-.4px; }

/* Family billing: usage first, payment history folded away below plan details. */
html:root body.plans-page-body .plans-intro { margin:8px 0 20px; }
html:root body.plans-page-body .plans-intro h2 { margin:0 0 8px; color:var(--theme-ink,#1f2a2e); font-size:22px; line-height:1.4; }
html:root body.plans-page-body :is(.intro-copy,.plans-policy-summary,.plan-current-copy,.plan-payment-notice) { color:var(--theme-muted,#66757a); font-size:13px; line-height:1.7; }
html:root body.plans-page-body :is(.plan-current-card,.plan-comparison-scroll,.billing-history,.billing-consent-dialog) { background:var(--theme-panel,#fff); color:var(--theme-ink,#1f2a2e); border:1px solid var(--theme-line,#d4dedb); border-radius:18px; box-shadow:none; }
html:root body.plans-page-body .plan-current-card { padding:22px; margin:20px 0 28px; }
html:root body.plans-page-body .plan-current-heading { align-items:flex-start; gap:16px; }
html:root body.plans-page-body .plan-current-heading h2 { display:flex; align-items:center; flex-wrap:wrap; gap:8px; font-size:24px; color:var(--theme-ink,#1f2a2e); }
html:root body.plans-page-body .eyebrow { display:none; }
html:root body.plans-page-body :is(.plan-current-state,.plan-current-badge,.plan-no-ads-badge) { background:var(--theme-accent-soft,#e8faf5); color:var(--theme-accent,#23766a); border-color:var(--theme-line,#d4dedb); }
html:root body.plans-page-body .plan-usage-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; border:0; margin:20px 0 0; }
html:root body.plans-page-body .plan-usage-list > div { display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:14px; min-width:0; border:1px solid var(--theme-line,#d4dedb); border-radius:12px; background:var(--theme-raised,#f4f8f7); }
html:root body.plans-page-body .plan-usage-list dt { color:var(--theme-muted,#66757a); font-size:12px; }
html:root body.plans-page-body .plan-usage-list dd { color:var(--theme-ink,#1f2a2e); margin:0; font-size:17px; font-weight:650; }
html:root body.plans-page-body :is(.plan-comparison-table th,.plan-comparison-table td) { background:var(--theme-panel,#fff); color:var(--theme-ink,#1f2a2e); border-color:var(--theme-line,#d4dedb); }
html:root body.plans-page-body .plan-comparison-table thead th { background:var(--theme-raised,#f4f8f7); }
html:root body.plans-page-body .plan-comparison-table [data-plan-card].is-current { background:var(--theme-accent-soft,#e8faf5); }
html:root body.plans-page-body :is(.plan-comparison-table small,.plan-comparison-kicker,.plan-product-detail,.plan-current-copy,.plan-payment-notice p) { color:var(--theme-muted,#66757a); }
html:root body.plans-page-body :is(.plan-comparison-table strong,.plan-price,.plans-section h2,.plan-payment-notice strong) { color:var(--theme-ink,#1f2a2e); }
html:root body.plans-page-body :is(.plan-purchase-button,.billing-consent-submit) { background:var(--theme-accent,#23766a); color:var(--theme-accent-ink,#fff); border-color:var(--theme-accent,#23766a); }
html:root body.plans-page-body :is(.plan-payment-notice,.billing-consent-price-card,.billing-consent-check) { background:var(--theme-raised,#f4f8f7); border-color:var(--theme-line,#d4dedb); color:var(--theme-muted,#66757a); }
html:root body.plans-page-body :is(.billing-cancel-button,.plan-settings-back-link,.billing-dialog-close) { background:var(--theme-raised,#f4f8f7); color:var(--theme-accent,#23766a); border:1px solid var(--theme-line,#d4dedb); border-radius:9px; padding:8px 12px; font-size:12px; }
html:root body.plans-page-body .billing-history { padding:0 20px; margin:24px 0; }
html:root body.plans-page-body .billing-history > summary { display:flex; justify-content:space-between; align-items:center; padding:18px 0; color:var(--theme-ink,#1f2a2e); font-size:15px; font-weight:650; cursor:pointer; list-style:none; }
html:root body.plans-page-body .billing-history > summary::after { content:'+'; color:var(--theme-muted,#66757a); font-size:22px; }
html:root body.plans-page-body .billing-history[open] > summary::after { content:'−'; }
html:root body.plans-page-body .billing-history-list { display:grid; gap:0; margin:0; padding:0; list-style:none; }
html:root body.plans-page-body .billing-history-item { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:14px 0; border-top:1px solid var(--theme-line,#d4dedb); background:transparent; }
html:root body.plans-page-body .billing-history-summary { color:var(--theme-muted,#66757a); font-size:12px; line-height:1.7; }
html:root body.plans-page-body .billing-history-item :is(button,a) { flex:none; white-space:nowrap; }
html:root body.plans-page-body .plan-purchase-help { display:block; padding:14px 18px; border-radius:12px; }
html:root body.plans-page-body .plan-purchase-help summary { color:var(--theme-muted,#66757a); font-size:13px; cursor:pointer; }
@container kkaebu (max-width:599px){
  html:root body.plans-page-body .plan-current-card { padding:18px; }
  html:root body.plans-page-body .plan-usage-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html:root body.plans-page-body .plan-current-heading { flex-wrap:wrap; }
  html:root body.plans-page-body .plan-comparison-table :is(th,td) { padding:12px 10px; }
  html:root body.plans-page-body .plans-intro h2 { font-size:19px; }
  html:root body.plans-page-body .billing-history-item { align-items:flex-start; }
}

html:root[data-theme="chocolate"], .theme-preview--chocolate {
  --theme-canvas: #fff7ef; --theme-panel: #fffcf8; --theme-raised: #f5e7d9; --theme-hover: #ecdbca; --theme-ink: #4b362e; --theme-muted: #796053; --theme-line: #dfc6af; --theme-accent: #80533f; --theme-accent-ink: #fffaf5; --theme-accent-soft: #f2ddc9; --theme-blue: #426b78; --theme-gold: #8b6a30;
  --theme-danger:#a54254; --theme-danger-soft:#fbe7ed; --theme-stamp:"✦";
  --theme-pattern:url("/static/theme-pattern-chocolate-v2.svg"); --theme-pattern-size:144px 256px;
}

html:root[data-theme="christmas"], .theme-preview--christmas {
  --theme-canvas: #fff5f2; --theme-panel: #fffcf9; --theme-raised: #f6e5df; --theme-hover: #edd4cb; --theme-ink: #50363a; --theme-muted: #7e5d61; --theme-line: #e6c8c1; --theme-accent: #9d4054; --theme-accent-ink: #fffaf5; --theme-accent-soft: #f3dce0; --theme-blue: #396b60; --theme-gold: #8e6d32;
  --theme-danger:#a54254; --theme-danger-soft:#fbe7ed; --theme-stamp:"✦";
  --theme-pattern:url("/static/theme-pattern-christmas-v2.svg"); --theme-pattern-size:144px 256px;
}

html:root[data-theme="newyear"], .theme-preview--newyear {
  --theme-canvas: #fff9e8; --theme-panel: #fffdf6; --theme-raised: #f7edcc; --theme-hover: #efe0ae; --theme-ink: #4a402d; --theme-muted: #78674b; --theme-line: #e2d0a0; --theme-accent: #856222; --theme-accent-ink: #fffdf6; --theme-accent-soft: #f3e4b8; --theme-blue: #4a7186; --theme-gold: #8c641e;
  --theme-danger:#a54254; --theme-danger-soft:#fbe7ed; --theme-stamp:"✦";
  --theme-pattern:url("/static/theme-pattern-newyear-v2.svg"); --theme-pattern-size:144px 256px;
}

html:root[data-theme="seollal"], .theme-preview--seollal {
  --theme-canvas: #fff4f0; --theme-panel: #fffdfa; --theme-raised: #f7e4dd; --theme-hover: #edcfc5; --theme-ink: #533c38; --theme-muted: #7e6159; --theme-line: #e5c7bc; --theme-accent: #9a5147; --theme-accent-ink: #fffdfa; --theme-accent-soft: #f3d9d0; --theme-blue: #42756a; --theme-gold: #8b6830;
  --theme-danger:#a54254; --theme-danger-soft:#fbe7ed; --theme-stamp:"✦";
  --theme-pattern:url("/static/theme-pattern-seollal-v2.svg"); --theme-pattern-size:144px 256px;
}

html:root[data-theme="chuseok"], .theme-preview--chuseok {
  --theme-canvas: #f5f1fc; --theme-panel: #fdfbff; --theme-raised: #eae2f4; --theme-hover: #ded2ec; --theme-ink: #443650; --theme-muted: #71607f; --theme-line: #d5c6e4; --theme-accent: #71548d; --theme-accent-ink: #fdfbff; --theme-accent-soft: #e6d9f1; --theme-blue: #496c8b; --theme-gold: #876935;
  --theme-danger:#a54254; --theme-danger-soft:#fbe7ed; --theme-stamp:"✦";
  --theme-pattern:url("/static/theme-pattern-chuseok-v1.svg"); --theme-pattern-size:112px 128px;
}

.theme-preview--event { background-color:var(--theme-canvas); background-image:var(--theme-pattern); background-size:var(--theme-pattern-size); border-color:var(--theme-line); }
.theme-preview--event > span { background:var(--theme-accent); }
.theme-preview--event > i { background:var(--theme-line); }
.theme-event-label { grid-column:1/-1; margin:12px 0 0; color:var(--theme-muted,#68756e); font-size:12px; font-weight:600; }
.theme-option.is-seasonal .theme-option-label { font-size:12px; }

.theme-option[hidden], .theme-event-label[hidden] { display:none !important; }

/* Frames and interaction effects belong to the selected palette too. */
html:root[data-theme] {
  --theme-focus-ring: color-mix(in srgb, var(--theme-accent, #23766a) 24%, transparent);
  --theme-shadow-ink: var(--theme-ink, #1f2a2e);
}
html:root[data-theme=dark] { --theme-shadow-ink: #000; }
html:root[data-theme] body :is(input, select, textarea):where(:not([type=checkbox], [type=radio], [type=range], [type=color])) {
  border-color: var(--theme-line, #d7e0dd);
}
html:root[data-theme] body :is(input, select, textarea, .app-control-trigger):where(:not([type=checkbox], [type=radio], [type=range], [type=color])):is(:focus, :focus-visible),
html:root[data-theme] body #kkaebu-analysis-pages :is(input, select, textarea, .app-control-trigger):where(:not([type=checkbox], [type=radio], [type=range], [type=color])):is(:focus, :focus-visible) {
  border-color: var(--theme-accent, #23766a);
  box-shadow: 0 0 0 3px var(--theme-focus-ring);
}
html:root[data-theme] body :is(button, a, summary, [tabindex]):focus-visible {
  outline-color: var(--theme-accent, #23766a);
}
html:root[data-theme] body :is(input, select, textarea, .app-control-trigger)[aria-invalid=true],
html:root[data-theme] body #kkaebu-analysis-pages :is(input, select, textarea, .app-control-trigger)[aria-invalid=true] {
  border-color: var(--theme-danger, #a54254);
}
html:root[data-theme] body :is(input, select, textarea, .app-control-trigger)[aria-invalid=true]:focus,
html:root[data-theme] body #kkaebu-analysis-pages :is(input, select, textarea, .app-control-trigger)[aria-invalid=true]:focus {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-danger, #a54254) 24%, transparent);
}

/* The goal amount is one control, with its ring on the enclosing field. */
html:root[data-theme] body .goal-limit-field > div {
  border-color: var(--theme-line, #d7e0dd);
  background: var(--theme-panel, #fff);
}
html:root[data-theme] body .goal-limit-field > div:focus-within {
  border-color: var(--theme-accent, #23766a);
  box-shadow: 0 0 0 3px var(--theme-focus-ring);
}
html:root[data-theme] body .goal-limit-field input:is(:focus, :focus-visible) {
  box-shadow: none;
  outline: 0;
}
html:root[data-theme] body :is(.goal-field > span, .goal-choice-field legend, .goal-category-field legend) {
  color: var(--theme-ink, #344b44);
}
html:root[data-theme] body :is(.goal-keyword-field > p, .goal-category-field > p, .goal-category-field legend small, .goal-limit-field strong) {
  color: var(--theme-muted, #75837e);
}
html:root[data-theme] body .goal-segmented-control {
  background: var(--theme-raised, #e9eeec);
}
html:root[data-theme] body .goal-segmented-control span {
  color: var(--theme-muted, #6d7b76);
}
html:root[data-theme] body .goal-segmented-control input:checked + span {
  background: var(--theme-panel, #fff);
  color: var(--theme-accent, #23766a);
}
html:root[data-theme] body .goal-segmented-control input:focus-visible + span {
  outline: 2px solid var(--theme-accent, #23766a);
  outline-offset: 2px;
}
html:root[data-theme] body .goal-keyword-tags button {
  background: var(--theme-accent-soft, #eeeaf7);
  color: var(--theme-accent, #68598f);
}

html:root[data-theme] .purchase-info-page .policy-step-list li::before {
  color: var(--theme-accent, #27735f);
  background: var(--theme-accent-soft, #e3f5ee);
}
html:root[data-theme] .purchase-info-page .policy-step-list strong {
  color: var(--theme-ink, #34485d);
}
html:root[data-theme] body :is(.bank-files-picker, .quick-image-upload-picker):is(:hover, :focus-within) {
  border-color: var(--theme-accent, #23766a);
}
html:root[data-theme] body .plan-purchase-button {
  border-color: var(--theme-accent, #23766a);
}
html:root[data-theme] body .auth-brand { border-color: var(--theme-line, #cde6e0); }
html:root[data-theme] body .records-search-icon {
  color: var(--theme-muted, #5d6c83);
  border-color: currentColor;
}
html:root[data-theme] body .records-search-icon::after { background: currentColor; }
html:root[data-theme] body :is(.backup-section, #csv-import-card, .family-learning-recurring-feedback, #deleted-expenses-list, #income-sources-list) {
  border-color: var(--theme-line, #dce4df);
}
