:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#2f54eb;--color-primary-hover:#476ef0;--color-primary-active:#2342c4;--color-primary-bg:#eef2ff;--color-primary-bg-hover:#e0e7ff;--color-primary-border:#b8c7fa;--color-text:#1d2129;--color-text-secondary:#4e5969;--color-text-tertiary:#6b7686;--color-text-disabled:#a9b0bc;--color-text-on-primary:#fff;--bg-app:#f5f7fa;--bg-surface:#fff;--bg-surface-alt:#f7f8fa;--bg-surface-hover:#f2f4f8;--bg-elevated:#fff;--bg-mask:#0f172a73;--bg-sider:#1d2129;--bg-sider-submenu:#191d24;--bg-sider-hover:#ffffff14;--bg-sider-selected:var(--color-primary);--color-sider-text:#ffffffb8;--color-sider-text-active:#fff;--color-sider-text-muted:#ffffff73;--border-color:#e8ebf0;--border-color-secondary:#f0f2f5;--split-color:#1d212914;--color-success:#52c41a;--color-warning:#faad14;--color-danger:#ff4d4f;--color-success-bg:#52c41a1f;--color-success-border:#52c41a59;--color-warning-bg:#faad141f;--color-warning-border:#faad1459;--color-danger-bg:#ff4d4f1f;--color-danger-border:#ff4d4f59;--shadow-xs:0 1px 2px #0f172a0a;--shadow-card:0 1px 2px #0f172a0a, 0 1px 4px #0f172a0d;--shadow-raised:0 6px 20px #1f2a5e1a;--shadow-overlay:0 12px 32px #0f172a29;--shadow-header:0 1px 0 #0f172a0d;--shadow-sider:1px 0 0 #0f172a0a;--radius-sm:6px;--radius:8px;--radius-lg:10px;--radius-xl:14px;--scrollbar-track:#86909c29;--scrollbar-thumb:#86909c6b;--scrollbar-thumb-hover:#6b76869e;--focus-ring:0 0 0 2px #2f54eb2e;--layout-header-h:56px;--layout-sider-w:256px;--layout-sider-collapsed:72px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-primary:#5b7cfa;--color-primary-hover:#748efb;--color-primary-active:#4868d8;--color-primary-bg:#5b7cfa29;--color-primary-bg-hover:#5b7cfa3d;--color-primary-border:#5b7cfa66;--color-text:#ffffffeb;--color-text-secondary:#ffffffad;--color-text-tertiary:#ffffff80;--color-text-disabled:#ffffff4d;--color-text-on-primary:#fff;--bg-app:#17181c;--bg-surface:#1e2026;--bg-surface-alt:#23262d;--bg-surface-hover:#2a2e37;--bg-elevated:#26282f;--bg-mask:#0009;--bg-sider:#14161a;--bg-sider-submenu:#181b21;--bg-sider-hover:#ffffff0f;--bg-sider-selected:var(--color-primary);--color-sider-text:#ffffffad;--color-sider-text-active:#fff;--color-sider-text-muted:#fff6;--border-color:#ffffff17;--border-color-secondary:#ffffff0f;--split-color:#ffffff14;--color-success:#6abf40;--color-warning:#d8b014;--color-danger:#e8605c;--color-success-bg:#6abf402e;--color-success-border:#6abf4066;--color-warning-bg:#d8b0142e;--color-warning-border:#d8b0146b;--color-danger-bg:#e8605c2e;--color-danger-border:#e8605c66;--shadow-xs:0 1px 2px #00000040;--shadow-card:0 1px 2px #00000040, 0 2px 8px #0000002e;--shadow-raised:0 8px 24px #00000061;--shadow-overlay:0 12px 36px #00000080;--shadow-header:0 1px 0 #0000004d;--shadow-sider:1px 0 0 #0000004d;--scrollbar-track:#ffffff14;--scrollbar-thumb:#ffffff47;--scrollbar-thumb-hover:#ffffff73;--focus-ring:0 0 0 2px #5b7cfa52}:root{--bg-sider-panel:#10131a;--sider-panel-border:#ffffff12;--sider-panel-shadow:0 12px 32px #00000052;--sider-brand-gradient:linear-gradient(135deg, #22d3ee 0%, #3b82f6 100%);--sider-brand-shadow:0 6px 16px #22d3ee47;--sider-avatar-gradient:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--sider-item-hover:#ffffff0d;--sider-item-selected:#6366f12e;--sider-item-selected-ring:#818cf84d;--sider-search-bg:#ffffff0d;--sider-search-border:#ffffff14;--sider-group-label:#ffffff57;--sider-divider:#ffffff1f}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{color:var(--color-text);background:var(--bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;transition:background-color .2s,color .2s}a{text-decoration:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.ant-table-body::-webkit-scrollbar{height:10px}.ant-table-content::-webkit-scrollbar{height:10px}.ant-table-cell{word-break:break-word;white-space:normal}.ant-drawer .ant-drawer-section{overflow:hidden}.ant-drawer-right .ant-drawer-section{border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.ant-drawer-left .ant-drawer-section{border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.ant-drawer-top .ant-drawer-section{border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.ant-drawer-bottom .ant-drawer-section{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.admin-layout{height:100vh}.admin-sider{z-index:20;height:100vh;box-shadow:none;transition:width .2s,min-width .2s,max-width .2s,flex .2s;position:sticky;top:0;background:0 0!important}.admin-sider .ant-layout-sider-children{height:100%}.sider-panel{background:var(--bg-sider-panel);border:1px solid var(--sider-panel-border);height:calc(100vh - 24px);box-shadow:var(--sider-panel-shadow);border-radius:16px;flex-direction:column;margin:12px;display:flex;overflow:hidden}.sider-brand{white-space:nowrap;align-items:center;gap:12px;padding:18px 16px 14px;display:flex;overflow:hidden}.sider-brand-mark{border-radius:11px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;overflow:hidden}.sider-brand-logo{object-fit:cover;width:100%;height:100%;display:block}.sider-brand-text{flex-direction:column;gap:2px;min-width:0;display:flex}.sider-brand-title{color:#fff;font-size:15px;font-weight:700;line-height:1.3}.sider-brand-sub{letter-spacing:.16em;color:#ffffff61;font-size:9.5px;font-weight:500}.sider-search{color:#fff;background:var(--sider-search-bg);border:1px solid var(--sider-search-border);width:calc(100% - 24px);height:38px;box-shadow:none;border-radius:12px;align-items:center;margin:0 12px 8px;transition:border-color .18s,box-shadow .18s,background .18s;display:flex}.sider-search .ant-input{flex:1;min-width:0}.sider-search .ant-input-suffix{flex:none;margin-inline-start:6px}.sider-search:hover{background:#ffffff12;border-color:#ffffff24}.sider-search:focus,.sider-search-focused,.sider-search.ant-input-affix-wrapper-focused{background:#ffffff12;border-color:#3b82f68c;box-shadow:0 0 0 3px #3b82f62e}.sider-search input{color:#fff;background:0 0}.sider-search input::placeholder{color:#ffffff57}.sider-search .ant-input-prefix .anticon{color:#ffffff73}.sider-search .ant-input-clear-icon{color:#fff6}.sider-search .ant-input-clear-icon:hover{color:#ffffffbf}.sider-search-kbd{color:#ffffff73;background:#ffffff14;border:1px solid #ffffff1a;border-radius:6px;flex:none;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.5}.sider-search-icon-btn{color:#ffffffa6;background:var(--sider-search-bg);border:1px solid var(--sider-search-border);cursor:pointer;border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;margin:0 auto 8px;font-size:17px;transition:background .18s,color .18s,border-color .18s;display:flex}.sider-search-icon-btn:hover{color:#fff;background:var(--sider-item-hover);border-color:#ffffff24}.sider-menu-wrap{flex:1;min-height:0;padding:2px 0 8px;overflow:hidden auto}.sider-menu-empty{text-align:center;color:var(--sider-group-label);padding:24px 16px;font-size:12px}.admin-sider .ant-menu{background:0 0;border-inline-end:0!important}.admin-sider .ant-menu-item-group>.ant-menu-item-group-title{letter-spacing:.05em;color:var(--sider-group-label);padding:14px 22px 6px;font-size:12px;font-weight:500}.admin-sider .ant-menu-item,.admin-sider .ant-menu-submenu-title{width:calc(100% - 24px);height:44px;color:var(--color-sider-text);border-radius:12px;margin-inline:12px;font-size:14px}.admin-sider .ant-menu-item .ant-menu-item-icon,.admin-sider .ant-menu-submenu-title .ant-menu-item-icon,.admin-sider .ant-menu-item .anticon,.admin-sider .ant-menu-submenu-title .anticon{font-size:17px}.admin-sider .ant-menu-item:hover,.admin-sider .ant-menu-submenu-title:hover{color:#fff;background:var(--sider-item-hover)!important}.admin-sider .ant-menu-submenu-selected>.ant-menu-submenu-title{color:#fff}.admin-sider .ant-menu-dark .ant-menu-item-selected,.admin-sider .ant-menu-dark .ant-menu-item-selected:hover,.admin-sider .ant-menu-dark .ant-menu-submenu-inline>.ant-menu-submenu-title.ant-menu-item-selected{color:#fff;box-shadow:inset 0 0 0 1px var(--sider-item-selected-ring);font-weight:600;background:var(--sider-item-selected)!important}.admin-sider .ant-menu-item-selected .ant-menu-item-icon,.admin-sider .ant-menu-item-selected .anticon{color:#fff}.admin-sider .ant-menu-inline .ant-menu-item:after,.admin-sider .ant-menu-inline .ant-menu-submenu-title:after{display:none}.ant-menu-dark.sider-menu .ant-menu-submenu-popup .ant-menu-sub{background:#171b24;border-radius:10px}.admin-sider.ant-layout-sider-collapsed .sider-brand{justify-content:center;padding:18px 0 14px}.admin-sider.ant-layout-sider-collapsed .ant-menu-item,.admin-sider.ant-layout-sider-collapsed .ant-menu-submenu-title{width:44px;margin-inline:auto;padding-inline:0!important}.admin-sider.ant-layout-sider-collapsed .ant-menu-item-group>.ant-menu-item-group-title{display:none}.admin-sider.ant-layout-sider-collapsed .ant-menu-item-group:not(:first-child){margin-top:4px}.admin-sider.ant-layout-sider-collapsed .ant-menu-item-group:before{content:"";background:var(--sider-divider);width:24px;height:1px;margin:10px auto 6px;display:block}.admin-sider.ant-layout-sider-collapsed .ant-menu-item-group:first-child:before{display:none}.sider-user-card{cursor:pointer;background:#ffffff0b;border:1px solid #ffffff12;border-radius:14px;align-items:center;gap:10px;margin:8px 12px 12px;padding:9px 10px;transition:background .18s,border-color .18s;display:flex;position:relative}.sider-user-card:hover{background:#ffffff14;border-color:#ffffff1f}.sider-user-avatar{background:var(--sider-avatar-gradient);flex:none}.sider-user-meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sider-user-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sider-user-role{color:#fff6;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.sider-collapse-btn{border-radius:8px;flex:none;width:28px;height:28px;color:#ffffff8c!important}.sider-collapse-btn:hover{color:#fff!important;background:#ffffff1a!important}.admin-sider.ant-layout-sider-collapsed .sider-user-card{background:0 0;border-color:#0000;justify-content:center;width:44px;margin:8px auto 12px;padding:6px 0}.admin-sider.ant-layout-sider-collapsed .sider-user-card:hover{background:var(--sider-item-hover);border-color:#0000}.admin-sider.ant-layout-sider-collapsed .sider-user-meta,.admin-sider.ant-layout-sider-collapsed .sider-collapse-btn{display:none}.admin-header{height:var(--layout-header-h);border:1px solid var(--border-color-secondary);box-shadow:var(--shadow-card);z-index:30;border-radius:16px;justify-content:space-between;align-items:center;margin:12px 12px 0;padding:0 14px;transition:background-color .2s,border-color .2s;display:flex;position:sticky;top:12px;background:var(--bg-surface)!important}.admin-header-left{align-items:center;gap:8px;min-width:0;display:flex}.admin-header-right{flex:none;align-items:center;gap:4px;display:flex}.header-icon-btn{border-radius:10px;width:38px;height:38px;color:var(--color-text-secondary)!important}.header-icon-btn:hover{background:var(--bg-surface-hover)!important;color:var(--color-primary)!important}.admin-breadcrumb{white-space:nowrap;font-size:13px;overflow:hidden}.header-user-btn{border-radius:999px;align-items:center;gap:8px;font-weight:500;display:inline-flex;height:38px!important;color:var(--color-text)!important;padding:0 12px 0 4px!important}.header-user-btn:hover{background:var(--bg-surface-hover)!important}.header-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.admin-tabs-bar{background:0 0;border-bottom:none;padding:10px 12px 0;transition:background-color .2s,border-color .2s}.admin-tabs-bar .ant-tabs-nav{margin:0}.admin-tabs-bar .ant-tabs-nav:before{border:none!important}.admin-tabs-bar .ant-tabs-tab{color:var(--color-text-secondary);border-radius:6px;align-items:center;transition:background-color .18s,color .18s;display:inline-flex;background:0 0!important;border:none!important}.admin-tabs-bar .ant-tabs-tab:hover{color:var(--color-text);background:var(--bg-surface-hover)!important}.admin-tabs-bar .ant-tabs-tab-active{background:var(--color-primary-bg)!important}.admin-tabs-bar .ant-tabs-tab-active .ant-tabs-tab-btn{text-shadow:none;font-weight:500;color:var(--color-primary)!important}.admin-tabs-bar .ant-tabs-tab+.ant-tabs-tab{margin-inline-start:4px!important}.admin-tabs-bar .ant-tabs-tab .ant-tabs-tab-remove{color:var(--color-text-tertiary);margin-inline-start:6px}.admin-tabs-bar .ant-tabs-tab .ant-tabs-tab-remove:hover{color:var(--color-text);background:var(--bg-surface-hover)}.admin-tabs-bar .ant-tabs-ink-bar,.admin-tabs-bar .ant-tabs-nav-operations{display:none!important}.admin-content{background:var(--bg-surface);border:1px solid var(--border-color-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);min-height:calc(100vh - var(--layout-header-h) - 42px - 24px);margin:12px;padding:20px;transition:background-color .2s,border-color .2s;overflow:auto}.admin-content.no-padding{box-shadow:none;background:0 0;border-color:#0000;padding:0}.crud-filter-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.crud-toolbar{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.crud-toolbar .toolbar-left,.crud-toolbar .toolbar-right{align-items:center;gap:8px;display:flex}.page-tree-sider{background:var(--bg-surface);border:1px solid var(--border-color-secondary);border-radius:var(--radius-lg);padding:12px 8px;overflow:auto}[role=button]:focus-visible,.home-kpi-card:focus-visible,.home-quick-item:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
