/* Account appearance tokens. Only these five trusted palettes can be selected. */
:root,[data-admin-theme=lavender]{
 --canvas:#f1eef5;--surface:#fff;--raised:#eae5f1;--ink:#25222d;--muted:#6d657a;--line:#e5dfed;--blue:#624b94;--selected:#eee7fb;
 --primary:#29262e;--primary-hover:#453c53;--on-primary:#fff;--soft:#f8f5fb;--field:#fbfafd;
 --rail:#29262e;--rail-text:#d9d1e2;--rail-hover:#3e3748;--rail-selected:#d7c8f1;--rail-selected-ink:#30223d;
 --focus:#76529f;--selection:#cfc0ed;--selection-ink:#21172e;--icon:#81659f;
 --banner-start:#d3c5eb;--banner-end:#e7d7ed;--banner-ink:#30243c;--banner-muted:#564264;
 --chart-primary:#9273b9;--chart-secondary:#c775a8;--chart-draft:#9e7ba9;--chart-ready:#6f9b83;--chart-neutral:#96909f;--chart-grid:#f0edf4;--chart-track:#eeeaf2;
 --danger:#a7334b;--success:#246a49;--warning:#8b5b16;--danger-soft:#fde8ed;--success-soft:#e9f5ed;--warning-soft:#fff2cc;
 --metric-tint:#e8e0f2;--metric-pink:#f3e5f0;--scroll-thumb:#b5aabc;--bloom-hue:0deg;--logo-filter:brightness(0);
 color-scheme:light;
}
[data-admin-theme=ocean]{
 --canvas:#edf3f7;--surface:#fff;--raised:#dfeaf1;--ink:#1e2e3c;--muted:#526a7a;--line:#dce5ed;--blue:#245e8b;--selected:#e1effa;
 --primary:#18364f;--primary-hover:#294d6c;--soft:#f2f7fb;--field:#f8fbfd;
 --rail:#172c3d;--rail-text:#d0e0ec;--rail-hover:#29485e;--rail-selected:#c4e1f5;--rail-selected-ink:#18364f;
 --focus:#276e9f;--selection:#bdddf3;--selection-ink:#12364e;--icon:#457697;
 --banner-start:#c0dced;--banner-end:#dfedf6;--banner-ink:#18364f;--banner-muted:#36586e;
 --chart-primary:#4c89b5;--chart-secondary:#49a5ac;--chart-draft:#7c92bd;--chart-ready:#558c75;--chart-neutral:#879ba7;--chart-grid:#edf3f7;--chart-track:#e2edf3;
 --metric-tint:#dfedf8;--metric-pink:#e3f2f1;--scroll-thumb:#a2bdce;--bloom-hue:285deg;
}
[data-admin-theme=sage]{
 --canvas:#eef3ef;--surface:#fff;--raised:#e0ebe3;--ink:#25372b;--muted:#586c5e;--line:#dce6df;--blue:#316346;--selected:#e2efe5;
 --primary:#254632;--primary-hover:#3a5e46;--soft:#f3f7f3;--field:#fafcf9;
 --rail:#21392b;--rail-text:#d6e5d8;--rail-hover:#35513e;--rail-selected:#c9e2c9;--rail-selected-ink:#1d3c27;
 --focus:#36714d;--selection:#c6e0cb;--selection-ink:#203d29;--icon:#5a7b61;
 --banner-start:#c9deca;--banner-end:#e5eddb;--banner-ink:#29422e;--banner-muted:#485e45;
 --chart-primary:#6c9777;--chart-secondary:#b09d61;--chart-draft:#8caa8a;--chart-ready:#3d7660;--chart-neutral:#8f9b90;--chart-grid:#edf3ee;--chart-track:#e2ece3;
 --metric-tint:#e1eee3;--metric-pink:#eff0dc;--scroll-thumb:#a5bdab;--bloom-hue:160deg;
}
[data-admin-theme=sand]{
 --canvas:#f6f0e7;--surface:#fffcf7;--raised:#ede3d7;--ink:#3d3026;--muted:#796451;--line:#e9dfd1;--blue:#8a482e;--selected:#f6e5d6;
 --primary:#56372b;--primary-hover:#73503c;--soft:#faf4eb;--field:#fffcf7;
 --rail:#3f3028;--rail-text:#ead9c8;--rail-hover:#5b4335;--rail-selected:#eed1b3;--rail-selected-ink:#4c2d1c;
 --focus:#a55835;--selection:#ebceb1;--selection-ink:#472c1b;--icon:#966e4b;
 --banner-start:#e8cdb0;--banner-end:#f2dfca;--banner-ink:#50301c;--banner-muted:#725137;
 --chart-primary:#b27c52;--chart-secondary:#bc826f;--chart-draft:#b39b70;--chart-ready:#7e976b;--chart-neutral:#a69789;--chart-grid:#f4ece1;--chart-track:#eee4d8;
 --metric-tint:#f2e3d0;--metric-pink:#f6e5dc;--scroll-thumb:#c8b198;--bloom-hue:95deg;
}
[data-admin-theme=midnight]{
 --canvas:#18171e;--surface:#24222d;--raised:#322e3e;--ink:#f1edf8;--muted:#b7aec8;--line:#443d52;--blue:#c4a9ee;--selected:#3d3252;
 --primary:#d2b9f5;--primary-hover:#e2cef9;--on-primary:#251a35;--soft:#2c2836;--field:#1d1b25;
 --rail:#100f16;--rail-text:#c9bfd7;--rail-hover:#30283e;--rail-selected:#bd9fe4;--rail-selected-ink:#251a35;
 --focus:#d2b3ff;--selection:#675084;--selection-ink:#fff;--icon:#bea4dc;
 --banner-start:#48355d;--banner-end:#3b2f4b;--banner-ink:#f5ecff;--banner-muted:#d8c7ec;
 --chart-primary:#ba94e4;--chart-secondary:#e4a4cb;--chart-draft:#9e91cf;--chart-ready:#8bbca0;--chart-neutral:#9c94aa;--chart-grid:#322d3c;--chart-track:#3b3448;
 --danger:#ffadb9;--success:#9ee0b6;--warning:#f5cd82;--danger-soft:#4a2834;--success-soft:#253e32;--warning-soft:#443825;
 --metric-tint:#352b45;--metric-pink:#402c3d;--scroll-thumb:#655872;--bloom-hue:0deg;--logo-filter:none;color-scheme:dark;
}
html{scrollbar-color:var(--scroll-thumb) var(--canvas)}
.control-brand img{filter:var(--logo-filter)}
.control-header nav{background:var(--rail);border-color:var(--rail)}
.control-header nav button:hover:not(:disabled){color:var(--rail-text)}
.control-header nav button[aria-current=page]:hover:not(:disabled){background:var(--rail-selected);color:var(--rail-selected-ink)}
button.primary,.team-banner button,.skip-link,.queue-dates .is-today,.queue-dates [aria-current=date],#toast:not(:empty){color:var(--on-primary)}
button.primary:hover:not(:disabled),.team-banner button:hover:not(:disabled){color:var(--on-primary)}
.banner-art img{filter:hue-rotate(var(--bloom-hue))}
.control-header nav [data-area=settings]{margin-top:auto}
.appearance-panel{max-width:1080px;background:var(--surface);border-radius:22px;padding:28px}
.appearance-panel h2{font-size:20px;margin:0 0 7px;letter-spacing:-.025em;font-weight:600}
.appearance-panel>p{color:var(--muted);font-size:13px;margin:0 0 26px}
#theme-options{padding:0;margin:0;border:0;min-width:0}
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.theme-choice{position:relative;display:block;cursor:pointer;margin:0;min-width:0;border-radius:16px}
.theme-choice input{position:absolute;top:12px;right:12px;width:19px;height:19px;min-height:19px;margin:0;z-index:1;accent-color:var(--blue)}
.theme-swatch{display:flex;gap:10px;height:134px;background:var(--canvas);padding:12px;border:2px solid var(--line);border-radius:16px;overflow:hidden;transition:border-color .18s ease-out}
.swatch-rail{display:block;width:17px;flex:none;border-radius:9px;background:var(--rail)}
.swatch-work{display:grid;gap:8px;flex:1;min-width:0}
.swatch-banner{display:block;width:82%;border-radius:6px;background:var(--banner-start)}
.swatch-cards{display:flex;gap:6px}
.swatch-cards i{flex:1;background:var(--surface);border-radius:5px}
.swatch-cards i:nth-child(2){background:var(--metric-tint)}
.swatch-cards i:nth-child(3){background:var(--metric-pink)}
.swatch-chart{display:flex;align-items:end;gap:7px;background:var(--surface);padding:6px 10px 0;border-radius:5px}
.swatch-chart i{flex:1;background:var(--chart-primary);height:80%;border-radius:3px 3px 0 0}
.swatch-chart i:nth-child(2){height:40%}.swatch-chart i:nth-child(3){height:65%;background:var(--chart-secondary)}.swatch-chart i:nth-child(4){height:90%}.swatch-chart i:nth-child(5){height:55%}
.theme-choice:hover .theme-swatch{border-color:var(--blue)}
.theme-choice:has(input:checked) .theme-swatch{outline:2px solid var(--blue);outline-offset:2px}
.theme-choice:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:6px}
.theme-name{display:flex;align-items:center;gap:8px;margin-top:13px;font-size:14px;font-weight:550;color:var(--ink)}
.theme-check{display:none;color:var(--blue)}.theme-check .staff-icon{width:16px;height:16px}
.theme-choice:has(input:checked) .theme-check{display:inline-flex}
.theme-description{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:4px}
#theme-options:disabled .theme-choice{cursor:wait}
.theme-save{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:26px;min-height:44px}
#theme-status{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted);margin:0}
#theme-status[data-error=true]{color:var(--danger)}
#theme-status[data-busy=true]::before{content:"";width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:theme-saving .7s linear infinite;flex:none}
@keyframes theme-saving{to{transform:rotate(360deg)}}
@media(max-width:760px){.appearance-panel{padding:22px}.theme-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px}.theme-swatch{height:116px}.control-header nav [data-area=settings]{margin-top:0}}
@media(max-width:380px){.theme-options{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){#theme-status[data-busy=true]::before{animation:none;border-right-color:currentColor}}
