/* App colors only. Classic uses the original styles; shared reports keep
   their own --report-* / --poster-* variables and data-theme choices. */
:root[data-palette="bluecream"]{
  color-scheme:dark; --bg:#0d1723;
}
:root[data-palette="bluecream"][data-theme="light"]{
  color-scheme:light; --bg:#f2f7fa;
}
/* Keep shared table border variables inside app surfaces. Report templates
   also inherit global table rules, so recoloring them at :root leaks in. */
:root[data-palette="bluecream"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --bg:#0d1723; --panel:#142333; --panel-2:#1a2d3f; --panel-deep:#11202e;
  --line:#2b4357; --line-soft:#263d50; --text:#e8f1f8; --text-dim:#9db1c2; --placeholder:#8ca3b6;
  --green:#67dfa6; --green-dim:#416e64; --amber:#efbc76; --danger:#f08b85;
  --rst-q4:#70c8f0; --green-solid:#4cda94; --amber-solid:#f0b450;
  --palette-card-shadow:0 6px 22px rgba(0,0,0,.1);
  --palette-heading-wash:linear-gradient(100deg,#1a2d3f,#1f2c37);
  --palette-row-tint:#172839; --palette-active-tint:#1b3939;
}
:root[data-palette="bluecream"][data-theme="light"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --bg:#f2f7fa; --panel:#fff; --panel-2:#edf4f7; --panel-deep:#e5eef4;
  --line:#d1dfe8; --line-soft:#dfe8ee; --text:#18334b; --text-dim:#587287; --placeholder:#728897;
  --green:#167b53; --green-dim:#7fb59e; --amber:#ad5b15; --danger:#c44343;
  --rst-q4:#167cad;
  --palette-card-shadow:0 5px 20px rgba(25,55,82,.035);
  --palette-heading-wash:linear-gradient(100deg,#f2f8fc,#fffdf8);
  --palette-row-tint:#f6f9fb; --palette-active-tint:#e7f4ee;
}
:root[data-palette="slateamber"]{
  color-scheme:dark; --bg:#141a23;
  --palette-ambient-start:rgba(89,111,145,.2); --palette-ambient-end:rgba(204,148,62,.1);
  --palette-focus-ring:rgba(242,189,96,.18);
}
:root[data-palette="slateamber"][data-theme="light"]{
  color-scheme:light; --bg:#f5f6f8;
  --palette-ambient-start:rgba(191,205,225,.25); --palette-ambient-end:rgba(248,213,155,.28);
  --palette-focus-ring:rgba(139,86,11,.14);
}
:root[data-palette="slateamber"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --panel:#1b2430; --panel-2:#243141; --panel-deep:#17202a;
  --line:#3b4c60; --line-soft:#304052; --text:#edf2f8; --text-dim:#adbaca; --placeholder:#93a4b8;
  --green:#f2bd60; --green-dim:#8d6d3d; --amber:#f5a86b; --danger:#f38e88; --rst-q4:#82cdf8;
  --green-solid:#f2bd60; --amber-solid:#eab270; --palette-success:#70d69b;
  --palette-card-shadow:0 6px 22px rgba(0,0,0,.1);
  --palette-heading-wash:linear-gradient(100deg,#243141,#2b2b28);
  --palette-row-tint:#202b38; --palette-active-tint:#3d3322;
}
:root[data-palette="slateamber"][data-theme="light"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --panel:#fff; --panel-2:#eef1f5; --panel-deep:#e6ebf0;
  --line:#cbd3de; --line-soft:#dce2e9; --text:#253247; --text-dim:#59697d; --placeholder:#68788b;
  --green:#8b560b; --green-dim:#bc955e; --amber:#a65317; --danger:#bc3f3a; --rst-q4:#126d9c; --palette-success:#1a7b49;
  --palette-card-shadow:0 5px 20px rgba(37,50,71,.04);
  --palette-heading-wash:linear-gradient(100deg,#eef2f7,#fff8eb);
  --palette-row-tint:#f7f8fa; --palette-active-tint:#fbefd9;
}
:root[data-palette="forestivory"]{
  color-scheme:dark; --bg:#101d18;
  --palette-ambient-start:rgba(61,123,84,.18); --palette-ambient-end:rgba(164,140,78,.1);
  --palette-focus-ring:rgba(139,213,168,.18);
}
:root[data-palette="forestivory"][data-theme="light"]{
  color-scheme:light; --bg:#faf8f1;
  --palette-ambient-start:rgba(197,220,188,.28); --palette-ambient-end:rgba(245,225,181,.25);
  --palette-focus-ring:rgba(35,98,63,.13);
}
:root[data-palette="forestivory"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --panel:#182b22; --panel-2:#20382d; --panel-deep:#14241c;
  --line:#355444; --line-soft:#2d473c; --text:#eaf4ec; --text-dim:#a8bfaf; --placeholder:#91ae9c;
  --green:#8bd5a8; --green-dim:#4f7d60; --amber:#e7bc72; --danger:#f18f85; --rst-q4:#78c8de;
  --green-solid:#8bd5a8; --amber-solid:#e9bd74; --palette-success:#8bd5a8;
  --palette-card-shadow:0 6px 22px rgba(0,0,0,.1);
  --palette-heading-wash:linear-gradient(100deg,#20382d,#2d3528);
  --palette-row-tint:#1c3027; --palette-active-tint:#274737;
}
:root[data-palette="forestivory"][data-theme="light"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --panel:#fffef9; --panel-2:#f0f2e6; --panel-deep:#e5ecdf;
  --line:#cad7c5; --line-soft:#dde4d5; --text:#223d30; --text-dim:#5c705d; --placeholder:#6b7d68;
  --green:#23623f; --green-dim:#86a88c; --amber:#975e1b; --danger:#bc443d; --rst-q4:#1a748e; --palette-success:#23623f;
  --palette-card-shadow:0 5px 20px rgba(34,61,48,.04);
  --palette-heading-wash:linear-gradient(100deg,#eff3e7,#fffbef);
  --palette-row-tint:#f8f9f0; --palette-active-tint:#e7efdf;
}
:root[data-palette="indigopearl"]{
  color-scheme:dark; --bg:#17182b;
  --palette-ambient-start:rgba(108,110,206,.2); --palette-ambient-end:rgba(167,122,201,.12);
  --palette-focus-ring:rgba(180,181,255,.18);
}
:root[data-palette="indigopearl"][data-theme="light"]{
  color-scheme:light; --bg:#f7f7fc;
  --palette-ambient-start:rgba(208,207,250,.28); --palette-ambient-end:rgba(235,214,241,.2);
  --palette-focus-ring:rgba(80,80,169,.14);
}
:root[data-palette="indigopearl"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --panel:#22243a; --panel-2:#2d3049; --panel-deep:#1d1f34;
  --line:#424969; --line-soft:#353c57; --text:#f0efff; --text-dim:#b5b7d4; --placeholder:#a0a4c5;
  --green:#b4b5ff; --green-dim:#6b6eaa; --amber:#eec381; --danger:#f3939f; --rst-q4:#85cff0;
  --green-solid:#b4b5ff; --amber-solid:#edc587; --palette-success:#79d8ac;
  --palette-card-shadow:0 6px 22px rgba(0,0,0,.1);
  --palette-heading-wash:linear-gradient(100deg,#2d3049,#332d48);
  --palette-row-tint:#272941; --palette-active-tint:#35355b;
}
:root[data-palette="indigopearl"][data-theme="light"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --panel:#fff; --panel-2:#efeffa; --panel-deep:#e8e8f5;
  --line:#d0d0e7; --line-soft:#e1e1f0; --text:#2c2e57; --text-dim:#66688a; --placeholder:#747697;
  --green:#5050a9; --green-dim:#9a9bcf; --amber:#98611c; --danger:#bf4058; --rst-q4:#216eab; --palette-success:#207c53;
  --palette-card-shadow:0 5px 20px rgba(44,46,87,.04);
  --palette-heading-wash:linear-gradient(100deg,#f0f0fd,#faf4fc);
  --palette-row-tint:#f8f8fd; --palette-active-tint:#eae9fb;
}
:root[data-palette="graphitecyan"]{
  color-scheme:dark; --bg:#101b20;
  --palette-ambient-start:rgba(38,143,167,.2); --palette-ambient-end:rgba(95,115,143,.14);
  --palette-focus-ring:rgba(114,220,233,.18);
}
:root[data-palette="graphitecyan"][data-theme="light"]{
  color-scheme:light; --bg:#f3f7f8;
  --palette-ambient-start:rgba(164,224,233,.25); --palette-ambient-end:rgba(208,220,232,.24);
  --palette-focus-ring:rgba(8,107,128,.14);
}
:root[data-palette="graphitecyan"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --panel:#18282f; --panel-2:#20363e; --panel-deep:#142229;
  --line:#35545f; --line-soft:#2c454f; --text:#e8f4f7; --text-dim:#a4bec7; --placeholder:#8eacb8;
  --green:#72dce9; --green-dim:#437d88; --amber:#efbd75; --danger:#f19088; --rst-q4:#9ac9ff;
  --green-solid:#72dce9; --amber-solid:#edbf77; --palette-success:#7cdbad;
  --palette-card-shadow:0 6px 22px rgba(0,0,0,.1);
  --palette-heading-wash:linear-gradient(100deg,#20363e,#24323d);
  --palette-row-tint:#1c2e36; --palette-active-tint:#21464e;
}
:root[data-palette="graphitecyan"][data-theme="light"] :is(#appRoot,.page-bg,#bottomNav,#loginScreen,.station-history-dialog,.toast,.update-banner,.staging-banner){
  --panel:#fff; --panel-2:#eaf3f5; --panel-deep:#e0ebef;
  --line:#c7dbe0; --line-soft:#d9e6ea; --text:#223e49; --text-dim:#56737e; --placeholder:#6a828d;
  --green:#086b80; --green-dim:#7aafb9; --amber:#9b601c; --danger:#bf423e; --rst-q4:#286fae; --palette-success:#1a7d52;
  --palette-card-shadow:0 5px 20px rgba(34,62,73,.04);
  --palette-heading-wash:linear-gradient(100deg,#edf8fa,#f4f6fa);
  --palette-row-tint:#f6fafb; --palette-active-tint:#def1f4;
}
/* Shared presentation for the optional palettes. Classic remains untouched. */
:root[data-palette]:not([data-palette="classic"]) body{
  background:radial-gradient(ellipse at 0 0,var(--palette-ambient-start,rgba(32,99,132,.2)),transparent 55%),
    radial-gradient(ellipse at 100% 12%,var(--palette-ambient-end,rgba(143,106,61,.1)),transparent 50%),var(--bg);
  background-attachment:fixed;
}
:root[data-palette]:not([data-palette="classic"])[data-theme="light"] body{
  background:radial-gradient(ellipse at 0 0,var(--palette-ambient-start,rgba(176,216,243,.35)),transparent 55%),
    radial-gradient(ellipse at 100% 12%,var(--palette-ambient-end,rgba(255,220,168,.3)),transparent 50%),var(--bg);
  background-attachment:fixed;
}
:root[data-palette]:not([data-palette="classic"]) :is(.panel,.stat){
  border-style:solid; box-shadow:var(--palette-card-shadow);
}
:root[data-palette]:not([data-palette="classic"]) :is(.panel h2,.page-hdr h3){ color:var(--text); }
:root[data-palette]:not([data-palette="classic"]) :is(#checkinEntryPanel .panel-hdr,#todayLogPanel>h2){
  background:var(--palette-heading-wash); border-radius:var(--radius) var(--radius) 0 0;
}
:root[data-palette]:not([data-palette="classic"]) .checkin-field input:focus{
  background:var(--panel-2); box-shadow:0 0 0 3px var(--palette-focus-ring,rgba(66,159,131,.13));
}
:root[data-palette]:not([data-palette="classic"]) .log-table td{ border-bottom-style:solid; }
:root[data-palette]:not([data-palette="classic"]) .log-table tbody tr:nth-child(even){ background:var(--palette-row-tint); }
:root[data-palette]:not([data-palette="classic"]) .nav-btn.active{ background:var(--palette-active-tint); }
:root[data-palette]:not([data-palette="classic"]) .bottom-nav{
  background:var(--panel); border-color:var(--line); box-shadow:var(--palette-card-shadow);
}
:root[data-palette]:not([data-palette="classic"]) :is(.desktop-sidebar-brand>svg,.desktop-sidebar-repeater,.stat-top-icon){
  background:var(--panel-2);
}
/* The new palettes use their own accent on controls while keeping signal
   quality and connectivity green. These selectors stay outside reports. */
:root:is([data-palette="slateamber"],[data-palette="forestivory"],[data-palette="indigopearl"],[data-palette="graphitecyan"]) .hdr{ --header-ink:var(--text); --header-art:var(--text-dim); background:var(--palette-heading-wash); }
:root:is([data-palette="slateamber"],[data-palette="forestivory"],[data-palette="indigopearl"],[data-palette="graphitecyan"]) :is(#appRoot,.page-bg,.station-history-dialog) .rst-q5{ color:var(--palette-success); }
:root:is([data-palette="slateamber"],[data-palette="forestivory"],[data-palette="indigopearl"],[data-palette="graphitecyan"]) .conn-badge:not(.offline)::before{ background:var(--palette-success); }
:root:is([data-palette="slateamber"],[data-palette="forestivory"],[data-palette="indigopearl"],[data-palette="graphitecyan"]) .btn-primary{ background:var(--green-solid); box-shadow:var(--palette-card-shadow); }
:root:is([data-palette="slateamber"],[data-palette="forestivory"],[data-palette="indigopearl"],[data-palette="graphitecyan"]) :is(.btn-primary,.btn-log){ color:#15232d; }
:root:is([data-palette="slateamber"],[data-palette="forestivory"],[data-palette="indigopearl"],[data-palette="graphitecyan"]) :is(.qbox.active,.suggest .opt.hover,.suggest .opt:active){ background:var(--palette-active-tint); }
:root:is([data-palette="slateamber"],[data-palette="forestivory"],[data-palette="indigopearl"],[data-palette="graphitecyan"]) .nav-btn.active{ box-shadow:inset 0 0 0 1px var(--green-dim); }
:root:is([data-palette="slateamber"],[data-palette="forestivory"],[data-palette="indigopearl"],[data-palette="graphitecyan"]) .btn-lookup-pill{ border-color:var(--green-dim); }
/* Give Share a distinct color from the primary Log QSO action. */
:root[data-palette="bluecream"] #appRoot .btn-share{ background:#78bce6; color:#102b40; }
:root[data-palette="bluecream"][data-theme="light"] #appRoot .btn-share{ background:#25658e; color:#fff; }
:root[data-palette="slateamber"] #appRoot .btn-share{ background:#435773; color:#fff; }
@media(max-width:1023px){
  :root[data-palette]:not([data-palette="classic"]) #checkinEntryPanel .panel-hdr{ margin:-14px -14px 12px; padding:14px; }
  :root[data-palette]:not([data-palette="classic"]) #todayLogPanel>h2{ margin:-14px -14px 0; padding:14px; border-bottom:1px solid var(--line); }
}
