/* Final palette layer: every admin accent reads the selected hue token. */

/* Table header controls use CSS shapes, avoiding unreliable encoded glyphs. */
.column-sort{gap:6px!important}.column-sort .sort-indicator{position:relative;display:inline-block;width:10px;height:15px;font-size:0!important;opacity:.62}.column-sort .sort-indicator:before,.column-sort .sort-indicator:after{content:'';position:absolute;left:1px;border-left:4px solid transparent;border-right:4px solid transparent}.column-sort .sort-indicator:before{top:1px;border-bottom:5px solid currentColor}.column-sort .sort-indicator:after{bottom:1px;border-top:5px solid currentColor}.column-sort.is-asc .sort-indicator:after,.column-sort.is-desc .sort-indicator:before{opacity:.22}.column-filter-trigger{width:27px!important;height:27px!important;margin-left:6px!important;border-radius:8px!important;display:inline-grid!important;place-items:center!important;vertical-align:middle;transition:transform 150ms ease,background-color 150ms ease,border-color 150ms ease,box-shadow 150ms ease}.column-filter-trigger:hover{border-color:var(--accent)!important;transform:translateY(-1px);box-shadow:0 5px 12px color-mix(in srgb,var(--accent) 18%,transparent)}.column-filter-trigger:active{transform:scale(.96)}.filter-chevron{width:8px;height:8px;margin-top:-3px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform 150ms ease}.column-filter-trigger[aria-expanded="true"] .filter-chevron{margin-top:3px;transform:rotate(225deg)}.column-filter-list label{padding:7px 6px!important;border-radius:7px}.column-filter-list input{appearance:none;width:17px;height:17px;margin:0;border:1px solid color-mix(in srgb,var(--text) 45%,var(--line));border-radius:5px;background:var(--bg);display:grid;place-content:center;flex:none;cursor:pointer}.column-filter-list input:checked{background:var(--accent-1);border-color:var(--accent-1)}.column-filter-list input:checked:after{content:'✓';font-size:12px;font-weight:900;color:#fff}

/* SVG is used here so the controls remain crisp across every browser encoding. */
.column-sort .sort-indicator{display:inline-flex!important;align-items:center;justify-content:center;width:12px!important;height:16px!important;opacity:1!important;color:var(--accent-2)}.column-sort .sort-indicator:before,.column-sort .sort-indicator:after{display:none!important}.column-sort .sort-indicator svg{display:block;width:12px;height:16px;fill:currentColor}.column-sort .sort-indicator .sort-up,.column-sort .sort-indicator .sort-down{opacity:.48}.column-sort.is-asc .sort-indicator .sort-up,.column-sort.is-desc .sort-indicator .sort-down{opacity:1}.column-sort.is-asc .sort-indicator .sort-down,.column-sort.is-desc .sort-indicator .sort-up{opacity:.2}.column-filter-trigger{background:color-mix(in srgb,var(--panel) 72%,var(--accent-soft))!important;color:var(--accent-2)!important}.filter-chevron{display:block!important;width:14px!important;height:14px!important;margin:0!important;border:0!important;transform:none!important}.filter-chevron svg{display:block;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform 150ms ease}.column-filter-trigger[aria-expanded="true"] .filter-chevron{margin:0!important;transform:none!important}.column-filter-trigger[aria-expanded="true"] .filter-chevron svg{transform:rotate(180deg)}.column-filter-list input:checked:after{content:''!important;width:7px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);margin-top:-2px}

/* Consistent motion layer: small, purposeful feedback without delaying work. */
:root{--motion-fast:150ms;--motion-base:250ms;--motion-ease:cubic-bezier(.2,.78,.24,1)}
.sidebar,.app-shell{transition:width var(--motion-base) var(--motion-ease),margin-left var(--motion-base) var(--motion-ease),transform var(--motion-base) var(--motion-ease)}
.sidebar-toggle,.button,.icon-button,.subnav a,.sidebar nav a,.sidebar-tree>summary,.sidebar-tree-items a,.choice-row,.zone-chip,.target-card,.select-picker summary,.pic-picker summary,.theme-modes button,.profile-dropdown>a,.profile-dropdown form button,.legacy-data-table tbody tr{transition:transform var(--motion-fast) var(--motion-ease),background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,opacity var(--motion-fast) ease}
.button:hover,.icon-button:hover,.sidebar-toggle:hover{transform:translateY(-1px)}
.button:active,.icon-button:active,.sidebar-toggle:active{transform:translateY(0) scale(.975)}
.sidebar nav a:hover,.sidebar-tree-items a:hover,.choice-row:hover,.zone-chip:hover,.target-card:hover{transform:translateX(2px)}
.profile-trigger .chevron{transition:transform var(--motion-fast) var(--motion-ease)}
.profile-trigger[aria-expanded="true"] .chevron{transform:rotate(180deg)}
.profile-dropdown{display:block;opacity:0;pointer-events:none;transform:translateY(-8px) scale(.975);transform-origin:top right;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) var(--motion-ease)}
.profile-dropdown.is-open{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
.profile-dropdown.is-closing{opacity:0;pointer-events:none;transform:translateY(-6px) scale(.98)}
.select-picker[open] .select-picker-menu,.pic-picker[open] .picker-popover,.column-filter-panel{animation:sto-pop-in var(--motion-fast) var(--motion-ease) both;transform-origin:top center}
.flash-message{animation:sto-slide-down 300ms var(--motion-ease) both}
dialog[open],.upload-dialog[open],.loading-confirm-dialog[open]{animation:sto-dialog-in 220ms var(--motion-ease) both}
dialog[open]::backdrop,.upload-dialog[open]::backdrop,.loading-confirm-dialog[open]::backdrop{animation:sto-fade-in 180ms ease both}
.legacy-data-table tbody tr{animation:sto-row-in 220ms var(--motion-ease) both}
.legacy-data-table tbody tr:nth-child(2){animation-delay:20ms}.legacy-data-table tbody tr:nth-child(3){animation-delay:40ms}.legacy-data-table tbody tr:nth-child(4){animation-delay:60ms}.legacy-data-table tbody tr:nth-child(5){animation-delay:80ms}
@keyframes sto-pop-in{from{opacity:0;transform:translateY(-7px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes sto-dialog-in{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes sto-fade-in{from{opacity:0}to{opacity:1}}
@keyframes sto-slide-down{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@keyframes sto-row-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
:root{
  --maroon:var(--accent-2);--maroon-deep:var(--accent-deep);
  --maroon-soft:color-mix(in srgb,var(--accent-soft) 70%,var(--panel));
}
/* The selected hue also owns the large surfaces, not only accents. */
:root[data-hue="indigo"]{--bg:#f5f6fc;--panel:#fcfcff;--text:#20243a;--muted:#626982;--line:#dbe0f0;--sidebar:#171923;--sidebar-text:#eef0ff}
:root[data-hue="emerald"]{--bg:#f4f8f6;--panel:#fbfefc;--text:#1d3029;--muted:#60776d;--line:#d6e5de;--sidebar:#131d19;--sidebar-text:#eaf7f0}
:root[data-hue="amber"]{--bg:#faf7f2;--panel:#fffdf9;--text:#342719;--muted:#7b6b57;--line:#eadfce;--sidebar:#211910;--sidebar-text:#fff4e3}
:root[data-hue="maroon"]{--bg:#f8f4f5;--panel:#fffafb;--text:#291d22;--muted:#765964;--line:#ead8de;--sidebar:#21161b;--sidebar-text:#f8e9ee}
:root[data-theme="dark"][data-hue="indigo"]{--bg:#14151d;--panel:#1d1f2a;--text:#f3f4ff;--muted:#c4c8df;--line:#3a3e58;--sidebar:#101117;--sidebar-text:#edf0ff}
:root[data-theme="dark"][data-hue="emerald"]{--bg:#141917;--panel:#1b2520;--text:#effaf4;--muted:#bfd4c8;--line:#385348;--sidebar:#101511;--sidebar-text:#ecf9f1}
:root[data-theme="dark"][data-hue="amber"]{--bg:#1a1713;--panel:#272019;--text:#fff7ec;--muted:#dfccb4;--line:#5b4733;--sidebar:#17120d;--sidebar-text:#fff5e6}
:root[data-theme="dark"][data-hue="maroon"]{--bg:#191719;--panel:#241c1f;--text:#fff7f8;--muted:#d7bec6;--line:#54343e;--sidebar:#171113;--sidebar-text:#fff4f6}
@media(prefers-color-scheme:dark){
  :root[data-theme="system"][data-hue="indigo"]{--bg:#14151d;--panel:#1d1f2a;--text:#f3f4ff;--muted:#c4c8df;--line:#3a3e58;--sidebar:#101117;--sidebar-text:#edf0ff}
  :root[data-theme="system"][data-hue="emerald"]{--bg:#141917;--panel:#1b2520;--text:#effaf4;--muted:#bfd4c8;--line:#385348;--sidebar:#101511;--sidebar-text:#ecf9f1}
  :root[data-theme="system"][data-hue="amber"]{--bg:#1a1713;--panel:#272019;--text:#fff7ec;--muted:#dfccb4;--line:#5b4733;--sidebar:#17120d;--sidebar-text:#fff5e6}
  :root[data-theme="system"][data-hue="maroon"]{--bg:#191719;--panel:#241c1f;--text:#fff7f8;--muted:#d7bec6;--line:#54343e;--sidebar:#171113;--sidebar-text:#fff4f6}
}
body{background:radial-gradient(82% 90% at 100% 100%,var(--accent-glow),transparent 62%),var(--bg)}
.sidebar{background:radial-gradient(95% 70% at 100% 100%,var(--accent-deep) 0%,transparent 66%),linear-gradient(180deg,color-mix(in srgb,var(--panel) 96%,#090709),#100c0e)}
.brand-mark{background:linear-gradient(135deg,var(--accent-1),var(--accent-2))}
.sidebar nav a:hover,.sidebar nav a.active{background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 72%,transparent),transparent);box-shadow:inset 3px 0 var(--blue-2)}
.sidebar nav a span,.nav-label,.sidebar nav a small,.brand small{color:color-mix(in srgb,var(--blue-2) 63%,white)}
.sidebar-foot{color:color-mix(in srgb,var(--blue-2) 60%,white)}
.avatar{background:var(--accent-soft);color:var(--accent-2)}
.theme-switch,.icon-button,.hue-select-wrap{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--panel) 86%,transparent)}
.hue-select-wrap{display:flex;align-items:center;gap:7px;border:1px solid;border-radius:10px;padding:8px 10px;font-weight:700}.hue-select-wrap select{appearance:auto;border:0;background:transparent;color:var(--text);font:inherit;outline:0;cursor:pointer}.hue-select-wrap option{background:var(--panel);color:var(--text)}
.button,.progress-track span,.filter-row .button,.subnav a.active{background:linear-gradient(135deg,var(--accent-1),var(--accent-2));border-color:var(--accent-1);color:#fff;box-shadow:0 9px 20px var(--accent-glow)}
.button.secondary{background:color-mix(in srgb,var(--panel) 90%,transparent);border-color:color-mix(in srgb,var(--accent) 35%,var(--line));color:var(--text);box-shadow:none}
.subnav a.active{box-shadow:0 10px 24px var(--accent-glow)}
.mini-progress span,.hero-track span{background:linear-gradient(90deg,var(--accent-1),var(--accent-2))}
.status-pill.is-nok{background:color-mix(in srgb,var(--accent-soft) 85%,var(--panel));color:var(--accent-2)}
.card,.admin-summary .card,.admin-data-card{background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 96%,transparent),color-mix(in srgb,var(--panel) 84%,var(--accent-soft)))}
.progress-total-card,.progress-info-card{background:radial-gradient(85% 120% at 100% 0%,var(--accent-glow),transparent 72%),linear-gradient(135deg,color-mix(in srgb,var(--panel) 96%,#000),color-mix(in srgb,var(--panel) 80%,var(--accent-deep)))}
.loading-switch-card{padding:28px}.loading-source-form{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(190px,1fr) minmax(160px,.8fr) auto;align-items:end;gap:14px;padding:18px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));border-radius:16px;background:linear-gradient(110deg,color-mix(in srgb,var(--accent-soft) 50%,var(--panel)),var(--panel))}.loading-source-form h2{font-size:18px;margin:3px 0 0}.loading-source-form label,.capacity-field,.loading-submit-bar label{display:grid;gap:7px;font-size:12px;font-weight:800;color:var(--muted)}.step-kicker{display:block;color:var(--accent-2);font-size:11px;font-weight:900;letter-spacing:.1em}.loading-summary{display:flex;align-items:center;gap:22px;margin:20px 0;padding:14px 18px;border-radius:14px;background:color-mix(in srgb,var(--accent-soft) 45%,var(--panel));border-left:4px solid var(--accent)}.loading-summary div{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:center}.loading-summary span,.loading-summary small{font-size:12px;color:var(--muted)}.loading-summary b{grid-row:span 2;font-size:29px;color:var(--text)}.loading-summary p{margin:0;color:var(--muted)}.loading-workspace{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:14px}.loading-panel{padding:18px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 90%,var(--accent-soft))}.loading-panel h3{margin:5px 0 14px;font-size:16px}.choice-row{display:flex;gap:10px;align-items:flex-start;padding:9px 7px;border-radius:9px;cursor:pointer}.choice-row:hover{background:color-mix(in srgb,var(--accent-soft) 55%,transparent)}.choice-row input{margin-top:3px}.choice-row span{display:grid;gap:2px}.choice-row small,.target-card small{color:var(--muted);font-size:12px}.zone-chip-grid{display:flex;flex-wrap:wrap;gap:7px;padding:4px 7px 10px}.zone-chip{display:flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid var(--line);border-radius:999px;font-size:12px;cursor:pointer}.zone-chip b{color:var(--accent-2)}.target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:250px;overflow:auto;padding-right:4px}.target-card{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid var(--line);border-radius:11px;cursor:pointer}.target-card:hover{border-color:var(--accent)}.target-card>span:last-child{display:grid;min-width:0}.target-card b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.target-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent-2);font-weight:900}.capacity-field{margin:11px 7px 0}.loading-submit-bar{display:flex;align-items:end;gap:14px;margin:16px 0;padding:16px;border-radius:14px;background:color-mix(in srgb,var(--panel) 82%,var(--accent-soft))}.loading-submit-bar>div{flex:1}.loading-submit-bar input{width:100%}.takeover-confirm{max-width:250px}.loading-submit-bar .button{white-space:nowrap}.loading-table-head{display:flex;justify-content:space-between;align-items:end;margin:22px 0 10px}.loading-table-head h3{margin:4px 0 0}.select-page{font-size:13px;font-weight:700}.zone-badge{padding:4px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent-2);font-weight:800}.loading-empty{display:grid;gap:6px;min-height:180px;place-content:center;text-align:center;color:var(--muted)}@media(max-width:1050px){.loading-source-form,.loading-workspace{grid-template-columns:1fr 1fr}.loading-source-form>div{grid-column:span 2}.loading-panel:last-child{grid-column:span 2}.loading-submit-bar{flex-wrap:wrap}}@media(max-width:650px){.loading-switch-card{padding:16px}.loading-source-form,.loading-workspace{grid-template-columns:1fr}.loading-source-form>div,.loading-panel:last-child{grid-column:auto}.target-grid{grid-template-columns:1fr}.loading-summary,.loading-submit-bar{align-items:stretch;flex-direction:column}.loading-submit-bar .button{width:100%}}
.loading-source-form select,.loading-source-form input,.loading-submit-bar input,.capacity-field input{min-height:42px;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line));border-radius:10px;background:var(--bg);color:var(--text);padding:0 12px;font:inherit}.pic-picker{position:relative}.pic-picker summary{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:0 13px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:11px;background:var(--bg);cursor:pointer;list-style:none}.pic-picker summary::-webkit-details-marker{display:none}.pic-picker summary:after{content:'⌄';margin-left:10px;color:var(--accent-2);font-size:18px}.pic-picker[open] summary{border-color:var(--accent);border-bottom-left-radius:0;border-bottom-right-radius:0}.picker-label{font-weight:750}.picker-count{font-size:12px;color:var(--accent-2)}.picker-popover{position:absolute;z-index:20;top:100%;left:0;right:0;padding:10px;border:1px solid var(--accent);border-top:0;border-radius:0 0 11px 11px;background:var(--panel);box-shadow:0 18px 35px rgba(0,0,0,.35)}.picker-search{width:100%;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text)}.picker-options{display:grid;gap:5px;max-height:230px;overflow:auto;margin-top:8px}.picker-options .target-card{background:color-mix(in srgb,var(--panel) 92%,var(--accent-soft))}.picker-options .target-card[hidden]{display:none}.sto-pagination{margin:16px 0!important}.sto-pagination nav{gap:6px!important}.sto-pagination .page-arrow,.sto-pagination .page-number{width:34px!important;height:34px!important;min-width:34px!important;font-size:14px!important;border-radius:8px!important}.sto-pagination .page-arrow{font-size:24px!important;line-height:30px!important}
.loading-panel{background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 95%,#fff 5%),color-mix(in srgb,var(--panel) 86%,var(--accent-soft)))!important}.loading-panel,.loading-panel .meta,.loading-panel small{color:color-mix(in srgb,var(--text) 85%,#fff)!important}.choice-row{border:1px solid transparent}.choice-row:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.choice-row input,.zone-chip input,.target-card input,.takeover-confirm input,.select-page input,.switch-item{appearance:none;width:17px;height:17px;margin:0;border:1px solid color-mix(in srgb,var(--text) 45%,var(--line));border-radius:5px;background:var(--bg);display:grid;place-content:center;flex:none;cursor:pointer}.choice-row input{border-radius:50%;margin-top:2px}.choice-row input:checked:after{content:'';width:7px;height:7px;border-radius:50%;background:var(--accent-2)}.zone-chip input:checked:after,.target-card input:checked:after,.takeover-confirm input:checked:after,.select-page input:checked:after,.switch-item:checked:after{content:'✓';font-size:12px;font-weight:900;color:#fff}.zone-chip input:checked,.target-card input:checked,.takeover-confirm input:checked,.select-page input:checked,.switch-item:checked{background:var(--accent-1);border-color:var(--accent-1)}.switch-item:disabled{opacity:.35;cursor:not-allowed}.select-picker{position:relative}.select-picker summary{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 12px;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line));border-radius:10px;background:var(--bg);color:var(--text);cursor:pointer;list-style:none;font-size:13px}.select-picker summary::-webkit-details-marker{display:none}.select-picker summary:after{content:'⌄';color:var(--accent-2);font-size:18px}.select-picker[open] summary{border-color:var(--accent);border-bottom-left-radius:0;border-bottom-right-radius:0}.select-picker-menu{position:absolute;z-index:30;top:100%;left:0;right:0;display:grid;gap:4px;padding:8px;border:1px solid var(--accent);border-top:0;border-radius:0 0 10px 10px;background:var(--panel);box-shadow:0 18px 32px rgba(0,0,0,.4)}.select-picker-menu input{min-height:34px!important;margin-bottom:4px}.select-picker-menu button{display:grid;gap:2px;width:100%;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.select-picker-menu button:hover{background:color-mix(in srgb,var(--accent-soft) 60%,transparent)}.select-picker-menu button span{font-size:11px;color:var(--muted)}
.zone-chip.is-disabled,.target-card.is-disabled,.select-page.is-disabled,.capacity-field.is-disabled{opacity:.38;filter:saturate(.25);pointer-events:none}.loading-table-search{display:flex;gap:8px}.loading-table-search input{min-height:34px;width:230px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text)}.loading-table-search .button{min-height:34px;padding:0 13px}.legacy-data-table thead a{color:inherit;text-decoration:none}.legacy-data-table thead a:hover{color:var(--accent-2)}@media(max-width:800px){.loading-table-head{align-items:stretch;flex-direction:column}.loading-table-search input{width:100%}}
.select-picker-menu button[hidden]{display:none!important}
.loading-confirm-dialog{width:min(440px,calc(100vw - 32px));padding:28px;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line));border-radius:20px;background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 82%,var(--accent-soft)));color:var(--text);box-shadow:0 28px 70px rgba(0,0,0,.55)}.loading-confirm-dialog::backdrop{background:rgba(8,5,8,.7);backdrop-filter:blur(3px)}.loading-confirm-dialog h2{margin:8px 0;font-size:24px}.loading-confirm-dialog p{margin:0 0 24px;color:var(--muted);line-height:1.55}.confirm-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--accent-soft);color:var(--accent-2);font-size:26px;font-weight:900}.loading-confirm-dialog .dialog-actions{display:flex;justify-content:flex-end;gap:10px}.loading-confirm-dialog .button{min-width:120px}
.loading-error-dialog{border-color:#c85a70}.loading-error-dialog .confirm-icon{background:rgba(200,90,112,.16);color:#f19aaa}
.loading-workspace{grid-template-columns:1.05fr .9fr 1fr 1.2fr}.loading-panel.is-disabled{opacity:.4;filter:saturate(.2);pointer-events:none}
@media(max-width:760px){.loading-switch-card{padding:14px}.loading-source-form{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:15px}.loading-source-form>div{width:100%}.loading-source-form h2{font-size:17px}.loading-source-form label{width:100%}.loading-source-form .button{width:100%;min-height:44px}.loading-summary{display:grid;gap:12px;margin:14px 0;padding:14px}.loading-summary div{width:max-content}.loading-summary p{font-size:13px;line-height:1.45}.loading-workspace{grid-template-columns:1fr!important;gap:12px}.loading-panel{padding:16px}.loading-panel:last-child{grid-column:auto}.zone-chip-grid{gap:6px}.zone-chip{min-height:34px;padding:6px 9px}.pic-picker summary,.select-picker summary{min-height:46px}.picker-popover,.select-picker-menu{max-height:calc(100vh - 160px);overflow:auto}.picker-options{max-height:calc(100vh - 260px)}.loading-submit-bar{display:grid;gap:12px;margin:14px 0;padding:14px}.loading-submit-bar>div,.takeover-confirm{max-width:none;width:100%}.loading-submit-bar .button{width:100%;min-height:45px}.loading-table-head{gap:10px;margin-top:18px}.loading-table-search{width:100%}.loading-table-search input{width:100%;min-width:0}.select-page{padding:8px 0}.legacy-data-table{border-radius:10px}.legacy-data-table .table{min-width:680px}.loading-confirm-dialog{padding:22px}.loading-confirm-dialog h2{font-size:21px}.loading-confirm-dialog .dialog-actions{display:grid;grid-template-columns:1fr}.loading-confirm-dialog .button{width:100%;min-height:43px}.sto-pagination{align-items:flex-start!important;flex-direction:column;gap:10px}.sto-pagination nav{flex-wrap:wrap}.sto-pagination p{margin:0;font-size:12px}}
.select-picker summary:after,.pic-picker summary:after{content:''!important;width:8px;height:8px;margin:0 3px 4px 12px;border-right:2px solid var(--accent-2);border-bottom:2px solid var(--accent-2);transform:rotate(45deg);transition:transform .16s ease}.select-picker[open] summary:after,.pic-picker[open] summary:after{margin-bottom:-4px;transform:rotate(225deg)}
.master-upload-status{margin-top:20px}.master-upload-ok,.master-upload-missing{display:grid;gap:5px;padding:14px 16px;border-radius:12px}.master-upload-ok{border:1px solid color-mix(in srgb,#4caf72 55%,var(--line));background:color-mix(in srgb,#4caf72 13%,var(--panel))}.master-upload-missing{border:1px solid color-mix(in srgb,#e7a84d 58%,var(--line));background:color-mix(in srgb,#e7a84d 12%,var(--panel))}.master-upload-ok b{color:#65c98b}.master-upload-missing b{color:#e7ae5b}.master-upload-ok span,.master-upload-missing span{color:var(--muted);font-size:13px}
.master-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.master-status-grid article{display:grid;gap:8px}.master-status-title{display:flex;align-items:center;justify-content:space-between;padding:0 3px}.master-status-title a{font-size:13px;font-weight:800;color:var(--accent-2)}.master-upload-auto{display:grid;gap:5px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent-soft) 38%,var(--panel))}.master-upload-auto b{color:var(--accent-2)}.master-upload-auto span{color:var(--muted);font-size:13px}@media(max-width:850px){.master-status-grid{grid-template-columns:1fr}}
.progress-total-card .big-percent,.progress-quantity-card .big-quantity{color:var(--text)}
.progress-count{color:var(--muted)}
.legacy-data-table .table th{background:color-mix(in srgb,var(--accent-soft) 52%,var(--panel));color:var(--accent-2)}
.legacy-data-table .table tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 54%,transparent)}
.upload-dialog::backdrop{background:color-mix(in srgb,var(--accent-deep) 35%,#080609 65%)}

/* Dark cards retain high contrast without falling back to maroon. */
:root[data-theme="dark"] .progress-total-card,:root[data-theme="dark"] .progress-info-card{background:radial-gradient(85% 120% at 100% 0%,var(--accent-glow),transparent 72%),linear-gradient(135deg,color-mix(in srgb,#171216 88%,var(--accent-deep)),color-mix(in srgb,#171216 72%,var(--accent-deep)))}
@media(prefers-color-scheme:dark){:root[data-theme="system"] .progress-total-card,:root[data-theme="system"] .progress-info-card{background:radial-gradient(85% 120% at 100% 0%,var(--accent-glow),transparent 72%),linear-gradient(135deg,color-mix(in srgb,#171216 88%,var(--accent-deep)),color-mix(in srgb,#171216 72%,var(--accent-deep)))}}

/* ITD-style admin header: controls live inside the profile menu. */
.topbar{height:78px;padding:0 30px;background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(18px)}
.topbar-start,.topbar-actions{display:flex;align-items:center}.topbar-start{gap:16px}.sidebar-toggle{width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 82%,transparent);display:grid;align-content:center;gap:4px;padding:0 11px;cursor:pointer}.sidebar-toggle span{height:2px;border-radius:99px;background:var(--text);display:block}.profile-menu{position:relative}.profile-trigger{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--text);padding:5px 0 5px 8px;cursor:pointer;text-align:left}.profile-copy b,.profile-copy small{display:block}.profile-copy b{font-size:14px}.profile-copy small{color:var(--muted);font-size:11px;text-transform:capitalize}.profile-trigger .chevron{font-size:18px;color:var(--muted);margin-left:2px}.profile-dropdown{position:absolute;right:0;top:calc(100% + 12px);z-index:30;width:280px;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--panel) 94%,#111 6%);box-shadow:0 20px 48px #0004;backdrop-filter:blur(20px)}.profile-dropdown[hidden]{display:none}.theme-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:8px;border-bottom:1px solid var(--line)}.theme-modes button{border:0;border-radius:11px;background:transparent;color:var(--muted);font-size:22px;padding:10px;cursor:pointer}.theme-modes button:hover,.theme-modes button.active{background:color-mix(in srgb,var(--accent-soft) 55%,transparent);color:var(--accent-1)}.profile-settings{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:700}.hue-picker{position:relative;min-width:142px}.hue-trigger{width:100%;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:color-mix(in srgb,var(--bg) 88%,transparent);color:var(--text);font:700 13px inherit;cursor:pointer;transition:border-color .18s,box-shadow .18s,background .18s}.hue-trigger:hover,.hue-trigger[aria-expanded="true"]{border-color:var(--accent-1);background:color-mix(in srgb,var(--accent-soft) 30%,var(--bg));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-1) 14%,transparent)}.hue-trigger i{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .18s}.hue-trigger[aria-expanded="true"] i{transform:rotate(225deg) translate(-1px,-1px)}.hue-options{position:absolute;z-index:5;right:0;top:calc(100% + 7px);width:100%;padding:6px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 97%,#111 3%);box-shadow:0 16px 32px #0005}.hue-options[hidden]{display:none}.hue-options button{width:100%;display:flex;align-items:center;gap:8px;border:0;border-radius:8px;padding:8px;background:transparent;color:var(--text);font:600 12px inherit;text-align:left;cursor:pointer}.hue-options button:hover,.hue-options button.selected{background:color-mix(in srgb,var(--accent-soft) 48%,transparent);color:var(--accent-1)}.hue-dot{width:9px;height:9px;border-radius:99px;background:var(--accent-1);box-shadow:0 0 0 2px #fff3}.hue-dot.maroon{background:#a84463}.hue-dot.indigo{background:#5963be}.hue-dot.violet{background:#8e58bf}.hue-dot.emerald{background:#268b6b}.hue-dot.teal{background:#268e9a}.hue-dot.amber{background:#c47b22}.hue-dot.rose{background:#c45175}.profile-dropdown>a,.profile-dropdown form button{width:100%;display:flex;align-items:center;gap:12px;padding:14px 19px;border:0;background:transparent;color:var(--text);font:600 14px inherit;text-decoration:none;text-align:left;cursor:pointer}.profile-dropdown>a:hover,.profile-dropdown form button:hover{background:color-mix(in srgb,var(--accent-soft) 48%,transparent)}.profile-dropdown a span,.profile-dropdown form button span{font-size:21px;color:var(--accent-1)}

/* A sidebar stays legible in light mode; only its content area is light. */
.sidebar{background:radial-gradient(100% 80% at 100% 100%,var(--accent-deep),transparent 70%),linear-gradient(180deg,#302027,#171216)!important;color:#fff7fa}.sidebar .brand,.sidebar nav a{color:#fff7fa}.sidebar .brand small,.sidebar .nav-label,.sidebar nav a span,.sidebar nav a small,.sidebar-foot{color:color-mix(in srgb,var(--accent-soft) 68%,white)}.sidebar nav a.active,.sidebar nav a:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--accent-1) 78%,transparent),transparent)}
body.sidebar-collapsed .sidebar{width:76px}body.sidebar-collapsed .app-shell{margin-left:76px}body.sidebar-collapsed .brand{padding:15px 19px}body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .sidebar nav em,body.sidebar-collapsed .sidebar nav small,body.sidebar-collapsed .nav-label,body.sidebar-collapsed .full-only{display:none}body.sidebar-collapsed .sidebar nav{padding:10px 12px}body.sidebar-collapsed .sidebar nav a{justify-content:center;padding:12px 6px}body.sidebar-collapsed .sidebar nav a span{font-size:18px}.sidebar nav em{font-style:normal}

.flash-message{margin:0 0 18px;border:1px solid var(--line);border-radius:12px;padding:12px 15px;font-weight:700}.flash-message.success{background:color-mix(in srgb,#62bc8d 17%,var(--panel));color:var(--text)}.flash-message.warning{background:color-mix(in srgb,#e8ac53 16%,var(--panel));color:var(--text)}.profile-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:980px}.profile-card{padding:26px}.profile-card h2{margin:0 0 6px;font-size:21px}.profile-readonly{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0}.profile-readonly div{padding:12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--bg) 75%,transparent)}.profile-readonly dt{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted)}.profile-readonly dd{margin:5px 0 0;font-weight:800;text-transform:capitalize}.profile-form{display:grid;gap:14px}.profile-form .button{justify-self:start}.field>span{font-weight:700;font-size:12px}.field-error{margin:-6px 0 0;color:#c35464;font-size:12px}.eyebrow{font-size:11px;letter-spacing:1.4px;font-weight:800;color:var(--accent-1);margin:0 0 4px}

/* Extra hue choices. Every option changes accents and core surfaces. */
:root[data-hue="violet"]{--accent:#8060b5;--blue:#8060b5;--blue-2:#9a7cd0;--accent-1:#8b6ac1;--accent-2:#593d8b;--accent-deep:#432d68;--accent-soft:#ebe2f8;--accent-glow:#8367b755;--bg:#f7f5fb;--panel:#fefcff;--text:#2c2438;--muted:#716583;--line:#e5dff0;--sidebar:#21182d;--sidebar-text:#f5efff}
:root[data-hue="teal"]{--accent:#267d80;--blue:#267d80;--blue-2:#4ba4a6;--accent-1:#358f91;--accent-2:#185c60;--accent-deep:#174a4d;--accent-soft:#d9f0f0;--accent-glow:#338e9055;--bg:#f3f8f8;--panel:#fbfefe;--text:#1c3032;--muted:#5d7475;--line:#d5e7e7;--sidebar:#112323;--sidebar-text:#e8f9f9}
:root[data-hue="rose"]{--accent:#b25072;--blue:#b25072;--blue-2:#d17894;--accent-1:#bf5f80;--accent-2:#873750;--accent-deep:#69293c;--accent-soft:#f8e0e8;--accent-glow:#b9537355;--bg:#fcf5f7;--panel:#fffafd;--text:#39212a;--muted:#825f6b;--line:#efdbe2;--sidebar:#2b151d;--sidebar-text:#fff0f5}
:root[data-theme="dark"][data-hue="violet"]{--bg:#18151e;--panel:#251e2e;--text:#faf5ff;--muted:#d7c8e8;--line:#514064;--sidebar:#130f18;--sidebar-text:#f7efff}:root[data-theme="dark"][data-hue="teal"]{--bg:#121a1a;--panel:#1b2929;--text:#effcfc;--muted:#bdd6d6;--line:#365252;--sidebar:#0d1414;--sidebar-text:#efffff}:root[data-theme="dark"][data-hue="rose"]{--bg:#1b1517;--panel:#2a1d22;--text:#fff5f8;--muted:#e2bec9;--line:#633946;--sidebar:#160d10;--sidebar-text:#fff1f5}
@media(prefers-color-scheme:dark){:root[data-theme="system"][data-hue="violet"]{--bg:#18151e;--panel:#251e2e;--text:#faf5ff;--muted:#d7c8e8;--line:#514064;--sidebar:#130f18;--sidebar-text:#f7efff}:root[data-theme="system"][data-hue="teal"]{--bg:#121a1a;--panel:#1b2929;--text:#effcfc;--muted:#bdd6d6;--line:#365252;--sidebar:#0d1414;--sidebar-text:#efffff}:root[data-theme="system"][data-hue="rose"]{--bg:#1b1517;--panel:#2a1d22;--text:#fff5f8;--muted:#e2bec9;--line:#633946;--sidebar:#160d10;--sidebar-text:#fff1f5}}
@media(max-width:900px){.sidebar-toggle{display:grid!important}.profile-copy{display:none}.profile-page-grid{grid-template-columns:1fr}.sidebar{width:258px;z-index:40;box-shadow:18px 0 42px #0007}.nav-open .sidebar{transform:translateX(0)}body.sidebar-collapsed .app-shell{margin-left:0}body.sidebar-collapsed .sidebar{width:258px}.topbar{padding:0 16px}.nav-open:before{content:'';position:fixed;z-index:35;inset:0;background:#0008;backdrop-filter:blur(2px)}}

.role-matrix{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-top:16px}.role-matrix article{border:1px solid var(--line);border-radius:14px;padding:14px;background:color-mix(in srgb,var(--bg) 70%,transparent)}.role-matrix b,.role-matrix span{display:block}.role-matrix b{margin-bottom:6px;color:var(--accent-2)}.role-matrix span{font-size:12px;color:var(--muted)}.users-card{margin-top:20px}.user-role-form,.quantity-edit-form{display:flex;align-items:center;gap:7px}.user-role-form select,.quantity-edit-form input{min-width:115px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text)}.quantity-edit-form input{min-width:76px;width:80px}.user-role-form .button,.quantity-edit-form .button{padding:8px 10px;white-space:nowrap}@media(max-width:900px){.role-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.role-matrix{grid-template-columns:1fr}}
.create-user-card{margin-top:20px}.create-user-form{display:grid;grid-template-columns:1fr 1.4fr 170px 170px auto;gap:12px;align-items:end}.create-user-form label{display:grid;gap:6px;font-size:12px;font-weight:700;color:var(--muted)}.create-user-form input,.create-user-form select{min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--text);font:inherit}.create-user-form .button{min-height:42px}.user-actions{display:flex;flex-wrap:wrap;gap:7px}.button.danger{background:linear-gradient(135deg,#a94457,#72283a);border-color:#a94457;color:#fff}.button.danger:hover{filter:brightness(1.1)}@media(max-width:1100px){.create-user-form{grid-template-columns:repeat(2,minmax(0,1fr))}.create-user-form .button{grid-column:1/-1}}@media(max-width:540px){.create-user-form{grid-template-columns:1fr}.create-user-form .button{grid-column:auto}}
.user-inline-input{width:100%;min-width:140px;padding:8px 9px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font:inherit}.user-inline-input:hover,.user-inline-input:focus{border-color:var(--line);background:var(--bg);outline:none}.user-inline-input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}

/* Main Count's upper navigation is a single horizontal, scrollable button row. */
.subnav{max-width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.subnav a{flex:0 0 auto;white-space:nowrap}.subnav.subnav-children{margin-top:-12px;margin-bottom:22px;padding:9px 0 4px 18px;border-left:3px solid color-mix(in srgb,var(--accent-1) 62%,transparent)}.subnav.subnav-children a{padding:8px 12px;font-size:13px}@media(max-width:540px){.subnav.subnav-children{margin-top:-12px;padding-left:12px}}
.sidebar-tree{margin:2px 0}.sidebar-tree summary{list-style:none;display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;color:#fff7fa;cursor:pointer;font:inherit}.sidebar-tree summary::-webkit-details-marker{display:none}.sidebar-tree summary span{color:color-mix(in srgb,var(--accent-soft) 68%,white)}.sidebar-tree summary em{font-style:normal;flex:1}.sidebar-tree summary small{color:color-mix(in srgb,var(--accent-soft) 68%,white)}.sidebar-tree summary.active,.sidebar-tree summary:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--accent-1) 78%,transparent),transparent)}.sidebar-tree-items{display:grid;margin:2px 0 7px 41px;border-left:1px solid color-mix(in srgb,var(--accent-soft) 45%,transparent)}.sidebar-tree-items a,.sidebar-tree-items .disabled{padding:8px 12px!important;border-radius:0!important;font-size:13px;opacity:.92}.sidebar-tree-items .disabled{color:color-mix(in srgb,var(--accent-soft) 55%,white);cursor:not-allowed}@media(max-width:900px){.sidebar-tree-items{margin-left:41px}}body.sidebar-collapsed .sidebar-tree summary em,body.sidebar-collapsed .sidebar-tree summary small,body.sidebar-collapsed .sidebar-tree-items{display:none}body.sidebar-collapsed .sidebar-tree summary{justify-content:center;padding:12px 6px}
.sidebar-tree{margin:6px 0 10px!important;padding:0 4px;overflow:hidden}.sidebar-tree>summary{width:100%;list-style:none!important;display:flex!important;align-items:center!important;gap:10px!important;min-height:44px;padding:10px 11px!important;border:1px solid transparent;border-radius:12px!important;color:#fff7fa!important;cursor:pointer;user-select:none;transition:background .18s,border-color .18s}.sidebar-tree>summary::-webkit-details-marker{display:none!important}.sidebar-tree>summary::marker{content:''}.sidebar-tree>summary .tree-symbol{display:grid!important;place-items:center;width:25px!important;height:25px;border-radius:8px;background:color-mix(in srgb,var(--accent-1) 58%,#fff 6%);color:#fff!important;font-size:14px!important;line-height:1}.sidebar-tree>summary em{flex:1;font-style:normal;font-weight:750;letter-spacing:.1px}.sidebar-tree>summary .tree-chevron{display:block!important;width:auto!important;color:color-mix(in srgb,var(--accent-soft) 75%,white)!important;font-size:17px!important;line-height:1;transition:transform .18s}.sidebar-tree[open]>summary .tree-chevron{transform:rotate(180deg)}.sidebar-tree>summary:hover,.sidebar-tree>summary.active{border-color:color-mix(in srgb,var(--accent-1) 46%,transparent);background:linear-gradient(100deg,color-mix(in srgb,var(--accent-1) 60%,transparent),color-mix(in srgb,var(--accent-1) 8%,transparent))!important;box-shadow:inset 3px 0 color-mix(in srgb,var(--accent-soft) 90%,white),0 8px 18px #0002}.sidebar-tree-items{position:relative;display:grid!important;gap:3px;margin:7px 0 2px 23px!important;padding:3px 0 4px 16px;border-left:1px solid color-mix(in srgb,var(--accent-soft) 44%,transparent)!important}.sidebar-tree-items:before{content:'';position:absolute;left:-3px;top:14px;width:5px;height:5px;border-radius:50%;background:var(--accent-1);box-shadow:0 40px 0 var(--accent-1),0 80px 0 color-mix(in srgb,var(--accent-soft) 36%,transparent)}.sidebar-tree-items a,.sidebar-tree-items .disabled{display:flex!important;align-items:center;gap:9px;min-height:34px;margin:0!important;padding:7px 10px!important;border-radius:8px!important;color:color-mix(in srgb,var(--accent-soft) 78%,white)!important;font-size:13px!important;text-decoration:none;box-shadow:none!important}.sidebar-tree-items a i,.sidebar-tree-items .disabled i{display:block;width:5px;height:5px;border-radius:999px;background:currentColor;opacity:.55}.sidebar-tree-items a:hover,.sidebar-tree-items a.active{background:color-mix(in srgb,var(--accent-1) 42%,transparent)!important;color:#fff!important}.sidebar-tree-items a.active{font-weight:800;box-shadow:inset 2px 0 color-mix(in srgb,var(--accent-soft) 90%,white)!important}.sidebar-tree-items .disabled{opacity:.48;cursor:not-allowed}.sidebar-tree-items .disabled small{margin-left:auto;font-size:9px;text-transform:uppercase;letter-spacing:.5px}body.sidebar-collapsed .sidebar-tree>summary .tree-symbol{display:grid!important}body.sidebar-collapsed .sidebar-tree>summary em,body.sidebar-collapsed .sidebar-tree>summary .tree-chevron,body.sidebar-collapsed .sidebar-tree-items{display:none!important}
