/* Whole-site palettes: all public surfaces share the same small set of tokens. */

:root, [data-theme="sage"] {
  --theme-ink: #163c35;
  --theme-text: #36564b;
  --theme-muted: #526d62;
  --theme-accent: #007b65;
  --theme-accent-hover: #00614f;
  --theme-page: #fbfdfb;
  --theme-catalog: #f0f7f2;
  --theme-soft: #edf6f0;
  --theme-card-band: #e2f0e7;
  --theme-card-soft: #f6faf8;
  --theme-card-footer: #f5faf6;
  --theme-line: #dce8df;
  --theme-highlight: #d8eee1;
  --theme-surface: #fff;
}

[data-theme="pearl"] {
  --theme-ink: #1c2e50;
  --theme-text: #3d5172;
  --theme-muted: #5c6f8a;
  --theme-accent: #3657d6;
  --theme-accent-hover: #2844b7;
  --theme-page: #fcfdff;
  --theme-catalog: #f3f5fa;
  --theme-soft: #eef2fa;
  --theme-card-band: #e6ecf7;
  --theme-card-soft: #f6f8fc;
  --theme-card-footer: #f6f8fc;
  --theme-line: #dfe5ef;
  --theme-highlight: #e4eafa;
  --theme-surface: #fff;
}

[data-theme="sand"] {
  --theme-ink: #44342c;
  --theme-text: #675249;
  --theme-muted: #7d6559;
  --theme-accent: #a7472a;
  --theme-accent-hover: #87381f;
  --theme-page: #fdfbf8;
  --theme-catalog: #f7f1e8;
  --theme-soft: #f5eee3;
  --theme-card-band: #f1e6d7;
  --theme-card-soft: #faf6f1;
  --theme-card-footer: #faf6f1;
  --theme-line: #e8ddd0;
  --theme-highlight: #f1ddcb;
  --theme-surface: #fff;
}

[data-theme="lavender"] {
  --theme-ink: #302343;
  --theme-text: #55456e;
  --theme-muted: #716080;
  --theme-accent: #6d43c5;
  --theme-accent-hover: #5832ab;
  --theme-page: #fdfcff;
  --theme-catalog: #f5f1fb;
  --theme-soft: #f2ecfb;
  --theme-card-band: #eae1f7;
  --theme-card-soft: #f8f6fd;
  --theme-card-footer: #f7f4fc;
  --theme-line: #e3dced;
  --theme-highlight: #e8defb;
  --theme-surface: #fff;
}

[data-theme="ocean"] {
  --theme-ink: #173e4c;
  --theme-text: #355c69;
  --theme-muted: #50717d;
  --theme-accent: #007796;
  --theme-accent-hover: #005e79;
  --theme-page: #fbfdfe;
  --theme-catalog: #eef6f9;
  --theme-soft: #eaf4f7;
  --theme-card-band: #dfedf3;
  --theme-card-soft: #f4fafb;
  --theme-card-footer: #f3f9fb;
  --theme-line: #d8e6ed;
  --theme-highlight: #d9edf4;
  --theme-surface: #fff;
}

[data-theme="powder"] {
  --theme-ink: #4c2e3c;
  --theme-text: #6c4c5b;
  --theme-muted: #806372;
  --theme-accent: #a33e68;
  --theme-accent-hover: #873056;
  --theme-page: #fffdfd;
  --theme-catalog: #fbf1f5;
  --theme-soft: #f8edf2;
  --theme-card-band: #f1e0e8;
  --theme-card-soft: #fcf6f8;
  --theme-card-footer: #faf4f7;
  --theme-line: #eadce3;
  --theme-highlight: #f4dce7;
  --theme-surface: #fff;
}

[data-theme="graphite"] {
  --theme-ink: #252d34;
  --theme-text: #46525c;
  --theme-muted: #626e77;
  --theme-accent: #384c5a;
  --theme-accent-hover: #283a47;
  --theme-page: #fcfcfb;
  --theme-catalog: #f0f2f1;
  --theme-soft: #eef1ef;
  --theme-card-band: #e3e8e5;
  --theme-card-soft: #f6f8f7;
  --theme-card-footer: #f5f7f6;
  --theme-line: #dce1dd;
  --theme-highlight: #e0e7e2;
  --theme-surface: #fff;
}

[data-theme="champagne"] {
  --theme-ink: #3e3527;
  --theme-text: #625644;
  --theme-muted: #7a6b55;
  --theme-accent: #80602c;
  --theme-accent-hover: #62471c;
  --theme-page: #fdfcf9;
  --theme-catalog: #f8f3e9;
  --theme-soft: #f7f0e2;
  --theme-card-band: #efe5d1;
  --theme-card-soft: #fbf8f0;
  --theme-card-footer: #f9f6ee;
  --theme-line: #e8decd;
  --theme-highlight: #f0e1be;
  --theme-surface: #fff;
}

[data-theme="midnight"] {
  --theme-ink: #1d2c43;
  --theme-text: #40516a;
  --theme-muted: #5c6c84;
  --theme-accent: #284568;
  --theme-accent-hover: #1b314e;
  --theme-page: #fcfcfe;
  --theme-catalog: #f0f3f8;
  --theme-soft: #edf1f7;
  --theme-card-band: #e1e8f2;
  --theme-card-soft: #f6f8fb;
  --theme-card-footer: #f4f7fa;
  --theme-line: #dce3ed;
  --theme-highlight: #dee7f6;
  --theme-surface: #fff;
}


[data-theme] {
  --ink: var(--theme-ink); --text: var(--theme-text); --muted: var(--theme-muted);
  --green: var(--theme-accent); --green-dark: var(--theme-accent-hover);
  --lime: var(--theme-highlight); --paper: var(--theme-page); --white: var(--theme-surface);
  --soft: var(--theme-soft); --catalog: var(--theme-catalog);
  --radius-xl: 22px; --radius-lg: 18px; --radius-md: 14px; --radius-sm: 10px;
  --shadow: 0 8px 30px color-mix(in srgb, var(--theme-ink) 7%, transparent);
}
body { background: var(--theme-page); color: var(--theme-ink); }
.site-header, .site-footer { background: var(--theme-surface); }
.site-header { box-shadow: 0 1px 0 var(--theme-line); }
.brand-word, .brand-word>span { color: var(--theme-ink); }
.brand-mark { color: var(--theme-accent); }
.brand-symbol { display:block; width:100%; height:100%; }
.brand-symbol .brand-symbol-field { fill: var(--theme-accent); }
.brand-symbol .brand-symbol-letter { fill: #fff; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible,
.market-body :is(a,button,input,select,summary):focus-visible { outline-color: var(--theme-accent); }
:is(.offers-section,.guides-section) { background: var(--theme-catalog); }
:is(.finder-card,.guide-card,.faq-list,.content-panel,.article-content,.market-card,.directory-card,.directory-profile) { background:var(--theme-surface); }
:is(.finder-symbol,.eyebrow-line,.filter-pill.is-active) { background:var(--theme-accent); }
.finder-symbol { color:#fff; }
:is(.amount-control,.term-control select,.filter-pill:not(.is-active),.sort-control select,.directory-filters,.directory-country-form,.directory-advanced-fields,.directory-language summary) { background:var(--theme-soft); }
:is(.amount-range,.directory-filters input,.directory-country-form select,.directory-filters select) { accent-color:var(--theme-accent); }
:is(.amount-range)::-webkit-slider-thumb { background:var(--theme-accent); border-color:var(--theme-surface); box-shadow:0 0 0 1px var(--theme-accent); }
:is(.amount-range)::-moz-range-thumb { background:var(--theme-accent); border-color:var(--theme-surface); }
.button-primary, .button-offer, .offer-card>.offer-cta, .directory-card-actions .button { background:var(--theme-accent); color:#fff; }
.button-primary:hover, .button-offer:hover, .offer-card>.offer-cta:hover, .directory-card-actions .button:hover { background:var(--theme-accent-hover); }
.filter-pill.is-active { color:#fff; }
:is(.filter-pill:hover,.filter-pill[aria-pressed=true]:not(.is-active),.directory-language nav a:hover,.directory-language nav a[aria-current]) { background:var(--theme-highlight); color:var(--theme-ink); }
:is(.telegram-helper,.notice,.notice-box,.contact-option,.resource-card,.finance-card,.product-card,.contact-note,.responsible-note,.directory-notice,.directory-promotion,.market-iso,.market-languages a,.directory-profile .directory-type,.offer-promotion,.example-summary div) { background:var(--theme-soft); color:var(--theme-ink); }
:is(.step-number,.empty-icon,.guide-illustration,.illustration-compare,.illustration-rate,.illustration-plan) { background:var(--theme-card-band); color:var(--theme-accent); }
:is(.guide-illustration span,.guide-illustration i,.rate-caption,.large-percent) { color:var(--theme-accent); }
.illustration-compare span { background:var(--theme-surface); }
:is(.hero-proof .icon,.offer-promotion strong,.offer-tag,.tag-partner,.tag-soft,.offer-verified,.directory-intermediary) { color:var(--theme-accent); }
.offer-tag { background:var(--theme-soft); }
:is(.compare-tray,.compare-dialog,.finder-help .period-hint,.mobile-menu,.directory-language nav) { background:var(--theme-surface); color:var(--theme-ink); }
.compare-tray { border-color:var(--theme-line); }
.compare-table-scroll th { background:var(--theme-soft); }
.compare-table-scroll th,.compare-table-scroll td { color:var(--theme-ink); border-color:var(--theme-line); }
:is(.checkbox-visual,.compare-table-scroll td:first-child) { background:var(--theme-soft); }
.compare-toggle input:checked+.checkbox-visual { background:var(--theme-accent); }
:is(.content-panel td,.content-panel th,.article-content td,.article-content th,.directory-card-facts dl>div) { border-color:var(--theme-line); }
.directory-card-head { background:var(--theme-card-band); }
.directory-card-copy .directory-promotion { background:var(--theme-soft); color:var(--theme-accent); }
.directory-card-facts dd,.directory-card-headline strong { color:var(--theme-ink); }
.market-card:hover { box-shadow:var(--shadow); }
/* Compact reading sizes shared by the full offer view and the comparison table. */
.offer-detail-page .article-header>p:not(.article-meta),
.offer-detail-financial :is(p,li,dt,dd,strong,em,small,abbr),
.offer-detail-financial :is(#key-terms,#promotion h2,#short-example h2,.detail-disclosure summary),
.compare-table-scroll th,.compare-table-scroll td { font-size:16px; color:var(--theme-ink); }
.lender-disclosures a { color:var(--theme-muted); }
/* Current theme is immediately visible in the owner's preview without saving. */
.appearance-preview { color:var(--theme-ink); background:var(--theme-catalog); }


.theme-preview-banner { padding:11px 24px; background:var(--theme-soft); color:var(--theme-ink); font-size:14px; text-align:center; }
.theme-preview-banner a { display:inline-flex; align-items:center; min-height:32px; font-weight:650; color:var(--theme-accent); }
