/* EquiiTrack customer palettes, loaded after theme.css and all page styles.
   Master-brand artwork and semantic success/warning/danger hues are not changed.
   Public pages keep the approved forest default until the user selects a palette. */
html[data-theme="light"][data-palette="slate"] {
 --burgundy:#375A7F;--burgundy2:#496D8D;--gold:#6B86A3;
 --cream:#F5EFE6;--cream2:#FFFDF9;--slate:#2F3742;
 --muted-brand:#637181;--brand-line:#DCE3E8;
}
html[data-theme="light"][data-palette="teal"] {
 --burgundy:#0F5D5B;--burgundy2:#247572;--gold:#4E8D8A;
 --cream:#E8EFF1;--cream2:#FFFFFF;--slate:#1F2937;
 --muted-brand:#63727B;--brand-line:#D5DFE2;
}
html[data-theme="light"][data-palette="aubergine"] {
 --burgundy:#5D3A56;--burgundy2:#784F6C;--gold:#A78B9C;
 --cream:#F8F5F1;--cream2:#FFFFFF;--slate:#2E2E2E;
 --muted-brand:#6E6470;--brand-line:#E8DEE4;
}
html[data-theme="light"][data-palette="terracotta"] {
 --burgundy:#9F4027;--burgundy2:#B95433;--gold:#CE7654;
 --cream:#F7F0E8;--cream2:#FFFCF8;--slate:#322C29;
 --muted-brand:#6B625D;--brand-line:#E9DDD4;
}
/* Alias tokens resolve after palette selection, even on legacy screens. */
html[data-theme="light"] {
 --navy:var(--slate);--teal:var(--burgundy);--teal2:var(--burgundy2);
 --pale:var(--cream);--pale2:var(--cream2);--line:var(--brand-line);--muted:var(--muted-brand);
}
html[data-theme="light"] body,
html[data-theme="light"] .app-shell {background:var(--cream);color:var(--navy)}
html[data-theme="light"] .screen {background:linear-gradient(160deg,var(--cream2),var(--cream))!important}
html[data-theme="light"] :is(.topbar,.desktop-sidebar,.bottom-nav,.global-bottom-nav,.horse-card,.boundary-card,.tracker-card,
.card,.info-card,.admin-kpi,.admin-table-wrap,.settings-list,.settings-profile-card,.plan-card,.product-grid a,
.alert-card,.device-hero,.chart,.map-location-card,.map-status-sheet) {
 background-color:var(--cream2)!important;
 border-color:var(--line)!important;
}
html[data-theme="light"] :is(.admin-tabs,.segmented,.settings-icon,.global-back,.avatar) {
 background:var(--cream)!important; color:var(--navy);
}
html[data-theme="light"] :is(.desktop-nav a.active,.bottom-nav a.active,.global-bottom-nav a.active,.admin-tabs button.selected) {
 background:var(--cream)!important;color:var(--teal)!important;
}
html[data-theme="light"] :is(p,small,.muted,.muted-note,.last-update,.updated) {color:var(--muted)}
html[data-theme="light"] .primary {background:linear-gradient(90deg,var(--teal),var(--teal2))!important;color:#fff!important}
/* Use palette-specific dark chrome, while preserving dark-mode semantic statuses. */
html[data-theme="dark"][data-palette="slate"] {
 --burgundy:#A9CEE9;--burgundy2:#7FA9CA;--gold:#D1B999;--teal:#A9CEE9;--teal2:#7FA9CA;
 --cream:#1B2633;--cream2:#273444;--slate:#EDF3FA;--navy:#EDF3FA;--muted:#BDC9D6;
 --line:#455568;--pale:#1B2633;--pale2:#273444;
 --dark-page:#121A24;--dark-panel:#1B2633;--dark-raised:#29384A;--dark-soft:#263547;
 --dark-text:#EDF3FA;--dark-muted:#BDC9D6;--dark-outline:#455568;
}
html[data-theme="dark"][data-palette="teal"] {
 --burgundy:#92DEDA;--burgundy2:#6CBFBB;--gold:#B4D6D0;--teal:#92DEDA;--teal2:#6CBFBB;
 --cream:#172C2D;--cream2:#203A3B;--slate:#EFF8F8;--navy:#EFF8F8;--muted:#B5D1CF;
 --line:#3A6262;--pale:#172C2D;--pale2:#203A3B;
 --dark-page:#101D1F;--dark-panel:#172C2D;--dark-raised:#274446;--dark-soft:#223C3E;
 --dark-text:#EFF8F8;--dark-muted:#B5D1CF;--dark-outline:#3A6262;
}
html[data-theme="dark"][data-palette="aubergine"] {
 --burgundy:#E8BBD8;--burgundy2:#C895BA;--gold:#D9C4D2;--teal:#E8BBD8;--teal2:#C895BA;
 --cream:#2B202B;--cream2:#392B38;--slate:#FBF2F8;--navy:#FBF2F8;--muted:#D6C0D0;
 --line:#665068;--pale:#2B202B;--pale2:#392B38;
 --dark-page:#1B151D;--dark-panel:#2B202B;--dark-raised:#453347;--dark-soft:#3B2C3E;
 --dark-text:#FBF2F8;--dark-muted:#D6C0D0;--dark-outline:#665068;
}
html[data-theme="dark"][data-palette="terracotta"] {
 --burgundy:#F4BA9C;--burgundy2:#DA9273;--gold:#E0BC99;--teal:#F4BA9C;--teal2:#DA9273;
 --cream:#30261F;--cream2:#403126;--slate:#FFF5EB;--navy:#FFF5EB;--muted:#DDC7B4;
 --line:#705B49;--pale:#30261F;--pale2:#403126;
 --dark-page:#211B18;--dark-panel:#30261F;--dark-raised:#493729;--dark-soft:#3E3028;
 --dark-text:#FFF5EB;--dark-muted:#DDC7B4;--dark-outline:#705B49;
}
html[data-theme="dark"][data-palette]:is(html) body,
html[data-theme="dark"][data-palette] .app-shell {background:var(--dark-page)!important;color:var(--dark-text)}
/* Preserve the existing forest-dark page gradient and the browser test's
   visual expectation; other palettes use their own equivalent dark gradients. */
html[data-theme="dark"][data-palette="forest"] {
 --dark-screen-top:#14231b;--dark-screen-bottom:#1b2a22;
}
html[data-theme="dark"][data-palette] :is(.screen,.auth-screen,.alerts-screen) {
 background:linear-gradient(160deg,var(--dark-screen-top,var(--dark-panel)),var(--dark-page) 64%,var(--dark-screen-bottom,var(--dark-panel)))!important;
 color:var(--dark-text);
}
@media(min-width:900px) {
 html[data-theme="dark"][data-palette] .desktop-sidebar,
 html[data-theme="dark"][data-palette] .screen>.topbar {background:var(--dark-page)!important}
}
html[data-theme="dark"][data-palette] :is(.primary,.button.primary,button.primary,.admin-add) {
 background:var(--dark-raised)!important;color:var(--teal)!important;border-color:var(--dark-outline)!important;
}
html[data-theme="dark"][data-palette] :is(.appearance-options button[aria-pressed="true"],.palette-options button[aria-pressed="true"]) {
 background:var(--dark-raised)!important;color:var(--teal)!important;border-color:var(--teal)!important;
}
/* Accessible, tappable palette samples on the settings page. */
.palette-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px;margin:12px 0}
.palette-options button{min-height:96px;padding:12px 10px;display:grid;gap:7px;align-content:start;text-align:left;border-radius:13px;border:2px solid var(--line);background:var(--cream2);color:var(--navy);font:inherit;cursor:pointer}
.palette-options button[aria-pressed="true"]{border-color:var(--teal);box-shadow:0 0 0 2px var(--cream)}
.palette-options button:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.palette-swatches{display:flex;gap:4px}
.palette-swatch{width:24px;height:24px;border-radius:6px;border:1px solid #7774;display:inline-block}
.palette-options button b{font-size:12px;line-height:1.3}
html[data-theme="dark"] .palette-options button{background:var(--dark-panel);color:var(--dark-text);border-color:var(--dark-outline)}
#appearance-sync-status{min-height:1.1em;font-size:12px;color:var(--muted)}
