:root, [data-bs-theme="light"] {
    color-scheme: light;
    --admin-ink: #253047;
    --admin-text: var(--admin-ink);
    --admin-muted: #56657c;
    --admin-accent: #365d9e;
    --admin-primary: var(--admin-accent);
    --admin-accent-soft: #edf2fa;
    --admin-line: #e1e7ef;
    --admin-border: var(--admin-line);
    --admin-canvas: #f1f5fa;
    --admin-canvas-gradient: radial-gradient(ellipse at 5% 0%, #dceafb 0%, transparent 42%), radial-gradient(ellipse at 100% 20%, #eeeafa 0%, transparent 39%), linear-gradient(145deg, #f5f8fc 0%, #edf3f9 58%, #f7f5fb 100%);
    --admin-shell-gradient: linear-gradient(155deg, #ffffff 0%, #f7f9fd 100%);
    --admin-surface: #fff;
    --admin-soft: #f1f5fa;
    --admin-hover: #f5f7fc;
    --admin-success: #16663a;
    --admin-success-soft: #e8f7ef;
    --admin-danger: #a63343;
    --admin-danger-soft: #fff1f3;
    --admin-warning: #984512;
    --admin-warning-soft: #fff1e8;
    --admin-info: #205e78;
    --admin-info-soft: #e7f4fb;
    --admin-shadow: 0 12px 36px #17233d0d;
    --admin-control-border: #a0aaba;
    --admin-chart-1: #c63d68;
    --admin-chart-2: #307db8;
    --admin-chart-3: #ad7b16;
    --admin-chart-4: #28877f;
    --admin-chart-5: #8465ca;
    --admin-chart-6: #bd6226;
    --admin-chart-7: #a64f9b;
    --admin-chart-8: #6c7d91;
    --admin-chart-income: #28875d;
    --admin-chart-expenses: #c84940;
    --admin-chart-savings: #307db8;
    --bs-body-color: var(--admin-ink);
    --bs-body-bg: var(--admin-canvas);
    --bs-secondary-color: var(--admin-muted);
    --bs-border-color: var(--admin-line);
    --bs-tertiary-bg: var(--admin-soft);
}
[data-bs-theme="dark"] {
    color-scheme: dark;
    accent-color: #8eb6f3;
    --admin-ink: #f5f5f5;
    --admin-text: var(--admin-ink);
    --admin-muted: #b3b3b3;
    --admin-accent: #a7c5ff;
    --admin-primary: var(--admin-accent);
    --admin-accent-soft: #203044;
    --admin-line: #394552;
    --admin-border: var(--admin-line);
    --admin-canvas: #090d13;
    --admin-canvas-gradient: radial-gradient(ellipse at 5% 0%, #172433 0%, transparent 43%), radial-gradient(ellipse at 100% 18%, #1b2026 0%, transparent 40%), linear-gradient(145deg, #0d1723 0%, #090d13 58%, #11151b 100%);
    --admin-shell-gradient: linear-gradient(155deg, #18212c 0%, #10141a 100%);
    --admin-surface: #1a2029;
    --admin-soft: #262e3a;
    --admin-hover: #303b49;
    --admin-success: #9bd5b5;
    --admin-success-soft: #1c3027;
    --admin-danger: #f0a7b1;
    --admin-danger-soft: #38242a;
    --admin-warning: #e5c084;
    --admin-warning-soft: #352d1e;
    --admin-info: #93ccdc;
    --admin-info-soft: #1d3036;
    --admin-control-border: #788594;
    --admin-chart-1: #83aef3;
    --admin-chart-2: #88c5a3;
    --admin-chart-3: #e3ba78;
    --admin-chart-4: #b59cde;
    --admin-chart-5: #df98aa;
    --admin-chart-6: #8bc6d5;
    --admin-chart-7: #c5c9d0;
    --admin-chart-8: #caa88a;
    --admin-chart-income: #8cc9a7;
    --admin-chart-expenses: #e4a1ac;
    --admin-chart-savings: #8fbaef;
    --auth-focus: #a7c5ff33;
    --admin-shadow: 0 12px 36px #0003;
    --bs-body-color: var(--admin-ink);
    --bs-body-bg: var(--admin-canvas);
    --bs-body-color-rgb: 245,245,245;
    --bs-body-bg-rgb: 9,13,19;
    --bs-emphasis-color: #fafafa;
    --bs-emphasis-color-rgb: 250,250,250;
    --bs-secondary-color: var(--admin-muted);
    --bs-secondary-bg: var(--admin-surface);
    --bs-secondary-bg-rgb: 26,32,41;
    --bs-tertiary-bg: var(--admin-soft);
    --bs-tertiary-bg-rgb: 38,46,58;
    --bs-secondary-color-rgb: 179,179,179;
    --bs-tertiary-color: #a3a3a3;
    --bs-tertiary-color-rgb: 163,163,163;
    --bs-border-color: var(--admin-line);
    --bs-primary-rgb: 167,197,255;
    --bs-primary: #a7c5ff;
    --bs-secondary: #b3b3b3;
    --bs-success: #9bd5b5;
    --bs-info: #93ccdc;
    --bs-warning: #e5c084;
    --bs-danger: #f0a7b1;
    --bs-secondary-rgb: 179,179,179;
    --bs-success-rgb: 155,213,181;
    --bs-danger-rgb: 240,167,177;
    --bs-warning-rgb: 229,192,132;
    --bs-info-rgb: 147,204,220;
    --bs-link-color: var(--admin-accent);
    --bs-link-color-rgb: 167,197,255;
    --bs-link-hover-color: #d4e2ff;
    --bs-link-hover-color-rgb: 212,226,255;
    --bs-primary-text-emphasis: #a7c5ff;
    --bs-secondary-text-emphasis: #d4d4d4;
    --bs-success-text-emphasis: #9bd5b5;
    --bs-info-text-emphasis: #93ccdc;
    --bs-warning-text-emphasis: #e5c084;
    --bs-danger-text-emphasis: #f0a7b1;
    --bs-primary-bg-subtle: #203044;
    --bs-secondary-bg-subtle: #262626;
    --bs-success-bg-subtle: #1c3027;
    --bs-info-bg-subtle: #1d3036;
    --bs-warning-bg-subtle: #352d1e;
    --bs-danger-bg-subtle: #38242a;
    --bs-primary-border-subtle: #4b6590;
    --bs-secondary-border-subtle: #525252;
    --bs-success-border-subtle: #4b7960;
    --bs-info-border-subtle: #476f7c;
    --bs-warning-border-subtle: #846a3c;
    --bs-danger-border-subtle: #8c5963;
    --bs-focus-ring-color: #a7c5ff33;
    --bs-code-color: #dedede;
    --bs-highlight-bg: #3b3b3b;
    --bs-highlight-color: #fafafa;
    --bs-border-color-translucent: #ffffff26;
}
/* Restrained semantic accents extend across Bootstrap pages. */
[data-bs-theme="dark"] .btn-primary {
    --bs-btn-color: #ffffff;
    --bs-btn-bg: #315fa8;
    --bs-btn-border-color: #7197cf;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-bg: #3d72c8;
    --bs-btn-hover-border-color: #a7c5ff;
    --bs-btn-active-color: #ffffff;
    --bs-btn-active-bg: #244a86;
    --bs-btn-active-border-color: #a7c5ff;
    --bs-btn-disabled-color: #ffffff;
    --bs-btn-disabled-bg: #315fa8;
    --bs-btn-disabled-border-color: #7197cf;
    --bs-btn-focus-shadow-rgb: 167,197,255;
}
[data-bs-theme="dark"] .btn:is(.btn-secondary, .btn-dark, .btn-light) {
    --bs-btn-color: #f5f5f5;
    --bs-btn-bg: #2c2c2c;
    --bs-btn-border-color: #737373;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-bg: #3b3b3b;
    --bs-btn-hover-border-color: #a3a3a3;
    --bs-btn-active-color: #ffffff;
    --bs-btn-active-bg: #444444;
    --bs-btn-active-border-color: #b3b3b3;
    --bs-btn-disabled-color: #b3b3b3;
    --bs-btn-disabled-bg: #222222;
    --bs-btn-disabled-border-color: #525252;
    --bs-btn-focus-shadow-rgb: 255,255,255;
}
[data-bs-theme="dark"] .btn-success { --admin-button-bg: #2b6a4c; --admin-button-hover: #347c59; --admin-button-ink: #ffffff; --admin-button-border: #79b190; }
[data-bs-theme="dark"] .btn-info { --admin-button-bg: #2d6576; --admin-button-hover: #37788a; --admin-button-ink: #ffffff; --admin-button-border: #7bb2c1; }
[data-bs-theme="dark"] .btn-warning { --admin-button-bg: #c19448; --admin-button-hover: #d5a75c; --admin-button-ink: #171717; --admin-button-border: #e5c084; }
[data-bs-theme="dark"] .btn-danger { --admin-button-bg: #874350; --admin-button-hover: #a1505f; --admin-button-ink: #ffffff; --admin-button-border: #ce8c99; }
[data-bs-theme="dark"] .btn:is(.btn-success, .btn-info, .btn-warning, .btn-danger) {
    --bs-btn-color: var(--admin-button-ink);
    --bs-btn-bg: var(--admin-button-bg);
    --bs-btn-border-color: var(--admin-button-border);
    --bs-btn-hover-color: var(--admin-button-ink);
    --bs-btn-hover-bg: var(--admin-button-hover);
    --bs-btn-hover-border-color: var(--admin-button-border);
    --bs-btn-active-color: var(--admin-button-ink);
    --bs-btn-active-bg: var(--admin-button-bg);
    --bs-btn-active-border-color: var(--admin-button-border);
    --bs-btn-disabled-color: var(--admin-button-ink);
    --bs-btn-disabled-bg: var(--admin-button-bg);
    --bs-btn-disabled-border-color: var(--admin-button-border);
    --bs-btn-focus-shadow-rgb: 167,197,255;
}
[data-bs-theme="dark"] .btn-outline-primary { --admin-outline-tone: var(--admin-accent); }
[data-bs-theme="dark"] .btn-outline-secondary, [data-bs-theme="dark"] .btn-outline-dark { --admin-outline-tone: var(--admin-muted); }
[data-bs-theme="dark"] .btn-outline-success { --admin-outline-tone: var(--admin-success); }
[data-bs-theme="dark"] .btn-outline-info { --admin-outline-tone: var(--admin-info); }
[data-bs-theme="dark"] .btn-outline-warning { --admin-outline-tone: var(--admin-warning); }
[data-bs-theme="dark"] .btn-outline-danger { --admin-outline-tone: var(--admin-danger); }
[data-bs-theme="dark"] .btn-outline-light { --admin-outline-tone: var(--admin-ink); }
[data-bs-theme="dark"] .btn:is(.btn-outline-primary, .btn-outline-secondary, .btn-outline-success, .btn-outline-info, .btn-outline-warning, .btn-outline-danger, .btn-outline-light, .btn-outline-dark) {
    --bs-btn-color: var(--admin-outline-tone);
    --bs-btn-border-color: var(--admin-outline-tone);
    --bs-btn-hover-color: #111111;
    --bs-btn-hover-bg: var(--admin-outline-tone);
    --bs-btn-hover-border-color: var(--admin-outline-tone);
    --bs-btn-active-color: #111111;
    --bs-btn-active-bg: var(--admin-outline-tone);
    --bs-btn-active-border-color: var(--admin-outline-tone);
    --bs-btn-disabled-color: #a3a3a3;
    --bs-btn-disabled-border-color: #525252;
    --bs-btn-focus-shadow-rgb: 255,255,255;
}
[data-bs-theme="dark"] :is(.form-control, .form-select, .input-group-text, .form-check-input) { border-color: var(--admin-control-border); }
[data-bs-theme="dark"] :is(.form-control, .form-select, .form-check-input):focus { border-color: var(--admin-accent); box-shadow: 0 0 0 .2rem #a7c5ff26; }
[data-bs-theme="dark"] .form-check-input:is(:checked, :indeterminate) { background-color: #315fa8; border-color: #8eb6f3; }
[data-bs-theme="dark"] .form-check-input[type="checkbox"]:checked { --bs-form-check-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23f5f5f5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='m3.5 8 3 3 6-6'/%3E%3C/svg%3E"); }
[data-bs-theme="dark"] .form-check-input[type="radio"]:checked, [data-bs-theme="dark"] .form-switch .form-check-input:checked { --bs-form-check-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3' fill='%23f5f5f5'/%3E%3C/svg%3E"); }
[data-bs-theme="dark"] .form-check-input[type="checkbox"]:indeterminate { --bs-form-check-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath stroke='%23f5f5f5' stroke-width='2' stroke-linecap='round' d='M4 8h8'/%3E%3C/svg%3E"); }
[data-bs-theme="dark"] .form-select { --bs-form-select-bg-img: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23b3b3b3' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m4 6 4 4 4-4'/%3E%3C/svg%3E"); }
[data-bs-theme="dark"] :is(.is-invalid, .was-validated :invalid) { --bs-form-invalid-color: var(--admin-danger); --bs-form-invalid-border-color: var(--admin-danger); }
[data-bs-theme="dark"] { --bs-form-invalid-color: var(--admin-danger); --bs-form-invalid-border-color: var(--admin-danger); --bs-form-valid-color: var(--admin-success); --bs-form-valid-border-color: var(--admin-success); }
[data-bs-theme="dark"] .invalid-feedback { color: var(--admin-danger); }
[data-bs-theme="dark"] .valid-feedback { color: var(--admin-success); }
[data-bs-theme="dark"] :is(.form-control, .form-select).is-valid, [data-bs-theme="dark"] .was-validated :is(.form-control, .form-select):valid { border-color: var(--admin-success); }
[data-bs-theme="dark"] :is(.form-control, .form-select).is-valid:focus, [data-bs-theme="dark"] .was-validated :is(.form-control, .form-select):valid:focus { border-color: var(--admin-success); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--admin-success) 18%, transparent); }
[data-bs-theme="dark"] :is(.form-control, .form-select).is-invalid, [data-bs-theme="dark"] .was-validated :is(.form-control, .form-select):invalid { border-color: var(--admin-danger); }
[data-bs-theme="dark"] :is(.form-control, .form-select).is-invalid:focus, [data-bs-theme="dark"] .was-validated :is(.form-control, .form-select):invalid:focus { border-color: var(--admin-danger); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--admin-danger) 18%, transparent); }
[data-bs-theme="dark"] :is(.form-control.is-invalid, .was-validated .form-control:invalid) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='6' fill='none' stroke='%23ededed'/%3E%3Cpath stroke='%23ededed' stroke-linecap='round' d='M8 4.5v4M8 11v.1'/%3E%3C/svg%3E"); }
[data-bs-theme="dark"] :is(.form-control.is-valid, .was-validated .form-control:valid) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ededed' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='m3.5 8 3 3 6-6'/%3E%3C/svg%3E"); }
[data-bs-theme="dark"] .form-range::-webkit-slider-thumb { background: var(--admin-accent); }
[data-bs-theme="dark"] .form-range::-moz-range-thumb { background: var(--admin-accent); }
[data-bs-theme="dark"] .progress { --bs-progress-bg: #333333; --bs-progress-bar-bg: #dedede; --bs-progress-bar-color: #111111; }
[data-bs-theme="dark"] .text-bg-primary { color: var(--admin-accent) !important; background-color: var(--admin-accent-soft) !important; }
[data-bs-theme="dark"] .text-bg-success { color: var(--admin-success) !important; background-color: var(--admin-success-soft) !important; }
[data-bs-theme="dark"] .text-bg-info { color: var(--admin-info) !important; background-color: var(--admin-info-soft) !important; }
[data-bs-theme="dark"] .text-bg-warning { color: var(--admin-warning) !important; background-color: var(--admin-warning-soft) !important; }
[data-bs-theme="dark"] .text-bg-danger { color: var(--admin-danger) !important; background-color: var(--admin-danger-soft) !important; }
[data-bs-theme="dark"] :is(.text-bg-secondary, .text-bg-light, .text-bg-dark) { color: var(--admin-ink) !important; background-color: var(--admin-soft) !important; }
[data-bs-theme="dark"] :is(.table-primary, .table-secondary, .table-success, .table-info, .table-warning, .table-danger, .table-dark) { --bs-table-color: var(--admin-ink); --bs-table-bg: var(--admin-soft); --bs-table-border-color: var(--admin-line); --bs-table-striped-bg: var(--admin-hover); --bs-table-striped-color: var(--admin-ink); --bs-table-hover-bg: var(--admin-hover); --bs-table-hover-color: var(--admin-ink); }
[data-bs-theme="dark"] :is(.admin-header-context > i, .nav-chevron, .admin-action-trailing, .admin-sidebar .nav-link > i) { color: var(--admin-muted); }
[data-bs-theme="dark"] .admin-sidebar .nav-link:is(:hover, .active) > i { color: var(--admin-accent); }
[data-bs-theme="dark"] .admin-sidebar .nav-link:hover { background: var(--admin-hover); }
[data-bs-theme="dark"] .admin-sidebar:hover .admin-sidebar-scroll { scrollbar-color: #737373 transparent; }
[data-bs-theme="dark"] .admin-sidebar:hover .admin-sidebar-scroll::-webkit-scrollbar-thumb { background: #737373; }
[data-bs-theme="dark"] .admin-rail-tooltip { color: #fafafa; background: #333333; border: 1px solid var(--admin-line); }
[data-bs-theme="dark"] :is(.admin-profile-menu, .admin-rail-flyout) { box-shadow: 0 16px 48px #00000066; }
[data-bs-theme="dark"] .admin-sidebar.show { box-shadow: 0 15px 55px #00000080; }
[data-bs-theme="dark"] .catalog-panel { box-shadow: var(--admin-shadow); }
[data-bs-theme="dark"] .sidebar-backdrop, [data-bs-theme="dark"] .admin-message-dialog::backdrop { background: #00000099; }
[data-bs-theme="dark"] .admin-auth-page { background-color: var(--admin-canvas); background-image: var(--admin-canvas-gradient); }
[data-bs-theme="dark"] .auth-brand-mark { color: #ffffff; background: linear-gradient(135deg, #315fa8, #6f50a8); box-shadow: 0 .5rem 1.1rem #00000033; }
[data-bs-theme="dark"] .auth-primary-button { color: #ffffff; background: linear-gradient(135deg, #315fa8, #6f50a8); box-shadow: 0 .7rem 1.4rem #00000033; }
[data-bs-theme="dark"] .auth-primary-button:is(:hover, :focus) { color: #ffffff; background: linear-gradient(135deg, #244a86, #593d8e); }
[data-bs-theme="dark"] .admin-pagination .page-link { border-color: var(--admin-control-border); }
[data-bs-theme="dark"] .dropdown-menu { --bs-dropdown-link-color: #f5f5f5; --bs-dropdown-link-hover-color: #ffffff; --bs-dropdown-link-hover-bg: #2c2c2c; --bs-dropdown-link-active-color: #111111; --bs-dropdown-link-active-bg: #ededed; --bs-dropdown-link-disabled-color: #b3b3b3; }
[data-bs-theme="dark"] .list-group { --bs-list-group-active-color: #f5f5f5; --bs-list-group-active-bg: #2b2b2b; --bs-list-group-active-border-color: #737373; --bs-list-group-action-hover-color: #f5f5f5; --bs-list-group-action-hover-bg: #2c2c2c; }
[data-bs-theme="dark"] .nav-pills { --bs-nav-pills-link-active-color: #111111; --bs-nav-pills-link-active-bg: #ededed; }
[data-bs-theme="dark"] .accordion { --bs-accordion-btn-focus-box-shadow: 0 0 0 .2rem #ffffff26; }
[data-bs-theme="dark"] ::selection { color: #171717; background: #dedede; }
body { background-color: var(--admin-canvas); background-image: var(--admin-canvas-gradient); color: var(--admin-ink); }
.admin-header, .admin-sidebar, .admin-profile-toggle, .admin-profile-menu, .admin-rail-flyout, .admin-rail-flyout-header { background: var(--admin-surface); }
.admin-header, .admin-sidebar { background: var(--admin-shell-gradient); }
[data-bs-theme="dark"] :is(.admin-sidebar .nav-label, .admin-sidebar .admin-nav-caption, .admin-sidebar .admin-submenu-heading, .admin-sidebar-mobile-head .admin-brand-label strong, .admin-rail-flyout .nav-label, .admin-rail-flyout .admin-submenu-heading, .admin-rail-flyout-header strong, .admin-header-context > span) { color: #fff; }
[data-bs-theme="dark"] #contentWrapper :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .dashboard-kpi__label, .catalog-lifecycle-heading) { color: #fff !important; }
[data-bs-theme="dark"] .admin-auth-page :is(h1, h2, h3, h4, h5, h6) { color: #fff; }
.admin-profile-action, .admin-icon-button, .admin-sidebar .nav-link { color: var(--admin-muted); }
.admin-submenu { border-inline-start-color: var(--admin-line); }
.admin-submenu-link { color: var(--admin-muted); }
.admin-icon-button:hover, .admin-profile-toggle:hover, .admin-profile-toggle[aria-expanded="true"] { border-color: var(--admin-line); background: var(--admin-hover); }
.admin-submenu-link:hover { background: var(--admin-hover); }
.admin-profile-logout:hover { color: var(--admin-danger); background: var(--admin-danger-soft); }
.admin-avatar { border-color: var(--admin-line); }
.admin-profile-toggle { padding-inline: 7px 10px; }
.admin-preferences { display: flex; align-items: center; flex-shrink: 0; gap: 8px; }
.admin-preferences .admin-preference-button { position: relative; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border: 1px solid transparent; border-radius: 50%; color: var(--admin-ink); background: transparent; isolation: isolate; transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms var(--admin-ease); }
.admin-preferences .admin-preference-button:is(:hover, :focus-visible) { color: var(--admin-accent); border-color: var(--admin-accent); background: var(--admin-hover); box-shadow: 0 0 0 4px color-mix(in srgb, var(--admin-accent) 8%, transparent); }
.admin-preferences .admin-preference-button:active { transform: scale(.93); }
.admin-preference-symbol { display: block; width: 24px; height: 24px; overflow: visible; transform-origin: center; transition: transform 260ms var(--admin-ease); pointer-events: none; }
.admin-locale-button:hover .admin-locale-symbol { transform: rotate(-6deg) scale(1.05); }
.admin-preference-button:hover .admin-theme-symbol { transform: rotate(12deg) scale(1.08); }
.admin-theme-sun, .admin-theme-moon, .admin-theme-rays { transform-box: view-box; transform-origin: 12px 12px; transition: opacity 220ms ease, transform 340ms var(--admin-ease); }
.admin-theme-sun { opacity: 0; transform: rotate(-70deg) scale(.45); }
.admin-theme-moon { opacity: 1; transform: rotate(0) scale(1); }
[data-bs-theme="dark"] .admin-theme-sun { opacity: 1; transform: rotate(0) scale(1); }
[data-bs-theme="dark"] .admin-theme-moon { opacity: 0; transform: rotate(70deg) scale(.45); }
.admin-preference-button:hover .admin-theme-rays { transform: rotate(35deg); }
.admin-icon-button:disabled { opacity: .55; cursor: progress; }
.admin-icon-button:focus-visible { outline: 3px solid var(--admin-accent); outline-offset: 3px; }
.admin-auth-preferences { position: absolute; inset-block-start: 16px; inset-inline-end: 20px; z-index: 2; }
.card { --bs-card-bg: var(--admin-surface); --bs-card-border-color: var(--admin-line); --bs-card-cap-bg: var(--admin-soft); color: var(--admin-ink); }
.card, .modal-content, .dropdown-menu, .list-group-item, .popover { color: var(--admin-ink); background-color: var(--admin-surface); border-color: var(--admin-line); }
.card-header { color: var(--admin-ink); border-color: var(--admin-line); }
.table { --bs-table-bg: transparent; --bs-table-color: var(--admin-ink); --bs-table-border-color: var(--admin-line); --bs-table-striped-bg: var(--admin-soft); --bs-table-striped-color: var(--admin-ink); --bs-table-hover-bg: var(--admin-hover); --bs-table-hover-color: var(--admin-ink); }
.form-control, .form-select, .input-group-text { color: var(--admin-ink); background-color: var(--admin-surface); border-color: var(--admin-line); }
.form-control:focus, .form-select:focus { color: var(--admin-ink); background-color: var(--admin-surface); border-color: var(--admin-accent); }
.form-control::placeholder { color: var(--admin-muted); opacity: 1; }
.form-control:disabled, .form-control[readonly], .form-select:disabled { background-color: var(--admin-soft); color: var(--admin-muted); }
.text-muted, .text-secondary, .text-gray-600, .text-gray-700 { color: var(--admin-muted) !important; }
.text-gray-800, .text-gray-900 { color: var(--admin-ink) !important; }
.text-primary { color: var(--admin-accent) !important; }
.text-success { color: var(--admin-success) !important; }
.text-info { color: var(--admin-info) !important; }
.text-warning { color: var(--admin-warning) !important; }
.text-danger { color: var(--admin-danger) !important; }
.card:is(.shadow, .shadow-sm, .shadow-lg) { box-shadow: var(--admin-shadow) !important; }
.border-start-primary { border-inline-start: .25rem solid var(--admin-accent) !important; }
.border-start-success { border-inline-start: .25rem solid var(--admin-success) !important; }
.border-start-info { border-inline-start: .25rem solid var(--admin-info) !important; }
.border-start-warning { border-inline-start: .25rem solid var(--admin-warning) !important; }
.border-start-danger { border-inline-start: .25rem solid var(--admin-danger) !important; }
[data-bs-theme="dark"] :is(.bg-white, .bg-light, .table-light) { background-color: var(--admin-soft) !important; color: var(--admin-ink); }
[data-bs-theme="dark"] :is(.text-dark, .text-black, .text-gray-900) { color: var(--admin-ink) !important; }
[data-bs-theme="dark"] .table-light { --bs-table-bg: var(--admin-soft); --bs-table-color: var(--admin-ink); --bs-table-border-color: var(--admin-line); }
[data-bs-theme="light"] :is(.bg-info, .bg-warning).text-white { color: #17233d !important; }
[data-bs-theme="dark"] .bg-primary { color: var(--admin-accent) !important; background-color: var(--admin-accent-soft) !important; }
[data-bs-theme="dark"] .bg-success { color: var(--admin-success) !important; background-color: var(--admin-success-soft) !important; }
[data-bs-theme="dark"] .bg-info { color: var(--admin-info) !important; background-color: var(--admin-info-soft) !important; }
[data-bs-theme="dark"] .bg-warning { color: var(--admin-warning) !important; background-color: var(--admin-warning-soft) !important; }
[data-bs-theme="dark"] .bg-danger { color: var(--admin-danger) !important; background-color: var(--admin-danger-soft) !important; }
[data-bs-theme="dark"] .bg-primary .text-white { color: var(--admin-accent) !important; }
[data-bs-theme="dark"] .bg-success .text-white { color: var(--admin-success) !important; }
[data-bs-theme="dark"] .bg-info .text-white { color: var(--admin-info) !important; }
[data-bs-theme="dark"] .bg-warning .text-white { color: var(--admin-warning) !important; }
[data-bs-theme="dark"] .bg-danger .text-white { color: var(--admin-danger) !important; }
[data-bs-theme="dark"] .card-header.bg-primary { color: #edf3ff !important; background-color: #294d80 !important; }
[data-bs-theme="dark"] .card-header.bg-success { color: #def5e7 !important; background-color: #234a36 !important; }
[data-bs-theme="dark"] .card-header.bg-info { color: #def3f8 !important; background-color: #214f60 !important; }
[data-bs-theme="dark"] .card-header.bg-warning { color: #fff0d4 !important; background-color: #5e461f !important; }
[data-bs-theme="dark"] .card-header.bg-danger { color: #ffe0e6 !important; background-color: #5b2c35 !important; }
[data-bs-theme="dark"] .card-header:is(.bg-primary, .bg-success, .bg-info, .bg-warning, .bg-danger) :is(h1, h2, h3, h4, h5, h6) { color: inherit !important; }
[data-bs-theme="dark"] .bg-dark { background-color: #0c0c0c !important; }
.catalog-shell { --catalog-ink: var(--admin-ink); --catalog-muted: var(--admin-muted); --catalog-border: var(--admin-line); --catalog-surface: var(--admin-surface); --catalog-soft: var(--admin-soft); }
.catalog-table thead th, .catalog-health, .catalog-key, .catalog-hash { color: var(--admin-ink); }
.catalog-table tbody td { border-color: var(--admin-line); }
.catalog-page-title i, .catalog-eyebrow, .catalog-back-link, .catalog-locale { color: var(--admin-accent); }
.catalog-locale { background: var(--admin-accent-soft); }
.catalog-status--published { color: var(--admin-success); background: var(--admin-success-soft); border-color: var(--admin-line); }
.catalog-status--draft { color: var(--admin-accent); background: var(--admin-accent-soft); border-color: var(--admin-line); }
.catalog-status--inactive { color: var(--admin-muted); background: var(--admin-soft); border-color: var(--admin-line); }
.catalog-status--archived { color: var(--admin-warning); background: var(--admin-warning-soft); border-color: var(--admin-line); }
.catalog-health--complete, .catalog-health--healthy { color: var(--admin-success); }
.catalog-health--incomplete, .catalog-health--missing { color: var(--admin-danger); }
.catalog-action-form--danger { background: var(--admin-danger-soft); border-color: var(--admin-line); }
.catalog-media-fallback { border-color: var(--admin-line); }
.admin-auth-page { --auth-ink: var(--admin-ink); --auth-muted: var(--admin-muted); --auth-border: var(--admin-line); --auth-primary: var(--admin-accent); --auth-primary-strong: var(--admin-accent); background-color: var(--admin-canvas); background-image: var(--admin-canvas-gradient); }
.auth-card { background: var(--admin-surface); border-color: var(--admin-line); box-shadow: var(--admin-shadow); }
.auth-primary-button { background: linear-gradient(135deg, #315fa8, #6f50a8); }
.auth-primary-button:is(:hover, :focus) { background: linear-gradient(135deg, #244a86, #593d8e); }
.admin-auth-page .form-label { color: var(--admin-ink); }
.auth-password-toggle:is(:hover, :focus, :active) { background: var(--admin-hover); }
.auth-password-group .form-control { border-start-start-radius: .75rem; border-end-start-radius: .75rem; border-start-end-radius: 0; border-end-end-radius: 0; }
.auth-password-toggle { border-start-start-radius: 0; border-end-start-radius: 0; border-start-end-radius: .75rem; border-end-end-radius: .75rem; }
.auth-password-group { border: 1px solid var(--admin-control-border); border-radius: .75rem; background: var(--admin-surface); overflow: hidden; }
.auth-password-group:focus-within { border-color: var(--admin-accent); box-shadow: 0 0 0 .2rem var(--auth-focus); }
.auth-password-group > .form-control, .auth-password-group > .auth-password-toggle { border: 0; box-shadow: none; }
.auth-password-group > .form-control:focus, .auth-password-group > .auth-password-toggle:focus { border: 0; box-shadow: none; }
.auth-password-group > .auth-password-toggle:focus-visible { outline-offset: -4px; }
.auth-password-group:has(.is-invalid), .was-validated .auth-password-group:has(input:invalid) { border-color: var(--bs-form-invalid-border-color); }
.auth-password-group:has(.is-invalid):focus-within, .was-validated .auth-password-group:has(input:invalid):focus-within { border-color: var(--bs-form-invalid-border-color); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--bs-form-invalid-border-color) 18%, transparent); }
.auth-input, .auth-password-toggle, .auth-input-group, .auth-input-wrap { background-color: var(--admin-surface); color: var(--admin-ink); }
.admin-message-dialog { width: min(440px, calc(100vw - 32px)); padding: 1.5rem; color: var(--admin-ink); background: var(--admin-surface); border: 1px solid var(--admin-line); border-radius: 1rem; box-shadow: 0 24px 80px #0004; }
.admin-message-dialog::backdrop { background: #07101f88; backdrop-filter: blur(3px); }
.admin-message-dialog h2 { font-size: 1.2rem; margin-block-end: .9rem; }
.admin-message-dialog p { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.75; }
.admin-message-actions { display: flex; justify-content: flex-end; gap: .65rem; margin-block-start: 1.5rem; }
html[dir="rtl"] :is(.admin-brand-label, .admin-nav-caption, .admin-menu-eyebrow, .catalog-eyebrow, .catalog-page-title, .auth-eyebrow) { letter-spacing: normal; }
html[dir="rtl"] .admin-header-context > i { transform: rotate(180deg); }
html[dir="rtl"] .admin-sidebar-toggle > i { rotate: 180deg; }
html[dir="rtl"] :is(.fa-arrow-left, .fa-arrow-right, .fa-chevron-left, .fa-chevron-right):not([data-no-rtl]) { scale: -1 1; }
html[dir="rtl"] .admin-sidebar-scroll { padding: 20px 12px 20px 4px; }
@media (min-width: 992px) { html[dir="rtl"][data-admin-sidebar="collapsed"] .admin-sidebar-scroll { padding-inline: 14px; } }
@media (max-width: 575px) {
    .admin-header-context { display: none; }
    .admin-header-brand .admin-brand-label { display: none; }
    .admin-header-brand { min-width: 60px; }
    .admin-preferences { gap: 6px; }
    .admin-profile { margin-inline: 4px 8px; }
}
::view-transition-old(root), ::view-transition-new(root) { animation: none; mix-blend-mode: normal; }
::view-transition-new(root) { z-index: 2; }
::view-transition-old(root) { z-index: 1; }
@media (prefers-reduced-motion: reduce) {
    ::view-transition-group(root) { animation-duration: 0s; }
    .admin-preferences * { transition: none !important; }
    .admin-preferences .admin-preference-button:active, .admin-preference-button:hover .admin-preference-symbol, .admin-preference-button:hover .admin-theme-rays { transform: none; }
}

[data-admin-filter-clear][hidden], [data-admin-filter-submit][hidden] { display: none !important; }
.catalog-list-image { object-fit: contain; border-radius: .5rem; background: var(--admin-soft); }
.catalog-audit-diff { min-width: 0; }
.catalog-audit-diff pre { white-space: pre-wrap; overflow-wrap: anywhere; max-width: 55ch; color: var(--admin-ink); background: var(--admin-soft); padding: .6rem; border-radius: .4rem; }
