.pwa-install-banner{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1050;max-width:520px;width:calc(100% - 48px);animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.pwa-install-content{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:linear-gradient(135deg,#1e3a8a,#1d4ed8,#3b82f6);border-radius:12px;box-shadow:0 10px 40px #3b82f64d,0 4px 12px #00000026;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pwa-install-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.pwa-install-icon{font-size:28px;color:#fff;flex-shrink:0}.pwa-install-text{display:flex;flex-direction:column;gap:2px;min-width:0}.pwa-install-title{color:#fff!important;font-size:14px;line-height:1.4}.pwa-install-desc{color:#ffffffbf!important;font-size:12px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pwa-install-actions{flex-shrink:0}.pwa-install-actions .ant-btn-primary{background:#fff;color:#1d4ed8;border:none;font-weight:500}.pwa-install-actions .ant-btn-primary:hover{background:#ffffffe6;color:#1e3a8a}.pwa-dismiss-btn{color:#fff9!important}.pwa-dismiss-btn:hover{color:#fff!important;background:#ffffff1a!important}.pwa-update-banner{position:fixed;top:0;left:0;right:0;z-index:1100;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.pwa-update-content{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 20px;background:linear-gradient(90deg,#059669,#10b981);color:#fff}.pwa-update-icon{font-size:16px}.pwa-update-text{color:#fff!important;font-size:13px}.pwa-update-content .ant-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.pwa-update-content .ant-btn:hover{background:#ffffff4d;border-color:#ffffff80}.pwa-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.pwa-status.online{background:#10b9811a;color:#059669}.pwa-status.offline{background:#ef44441a;color:#dc2626}.pwa-status .offline-dot{width:8px;height:8px;background:#dc2626;border-radius:50%;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pwa-status .status-text{line-height:1}@media (max-width: 600px){.pwa-install-banner{bottom:16px;width:calc(100% - 32px)}.pwa-install-content{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px}.pwa-install-actions{display:flex;justify-content:flex-end}.pwa-install-desc{white-space:normal}}[data-theme=dark] .pwa-install-content{background:linear-gradient(135deg,#1e293b,#334155,#475569);border:1px solid rgba(255,255,255,.1)}[data-theme=dark] .pwa-install-actions .ant-btn-primary{background:#3b82f6;color:#fff}[data-theme=dark] .pwa-install-actions .ant-btn-primary:hover{background:#60a5fa}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}:root{--color-primary: #6366f1;--color-primary-hover: #818cf8;--color-primary-active: #4f46e5;--color-primary-bg: #e0e7ff;--color-primary-light: #eef2ff;--color-primary-dark: #4338ca;--color-success: #10b981;--color-success-hover: #059669;--color-success-bg: #d1fae5;--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-warning-bg: #fef3c7;--color-error: #ef4444;--color-error-hover: #dc2626;--color-error-bg: #fee2e2;--color-info: #3b82f6;--color-info-hover: #2563eb;--color-info-bg: #dbeafe;--color-text-primary: #1e293b;--color-text-secondary: #64748b;--color-text-tertiary: #94a3b8;--color-text-disabled: #cbd5e1;--color-text-inverse: #ffffff;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-border-dark: #cbd5e1;--color-divider: #f1f5f9;--color-bg-base: #f8fafc;--color-bg-container: #ffffff;--color-bg-elevated: #ffffff;--color-bg-layout: #f8fafc;--color-bg-hover: #f1f5f9;--color-bg-active: #e2e8f0;--sidebar-bg: #0f172a;--sidebar-width: 250px;--sidebar-collapsed-width: 80px;--header-bg: rgba(255, 255, 255, .9);--header-height: 64px;--header-z-index: 1000;--sidebar-z-index: 1001;--spacing-0: 0;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--spacing-xxxl: 64px;--font-family-base: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--font-family-mono: "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-xxl: 20px;--font-size-xxxl: 24px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--radius-none: 0;--radius-sm: 4px;--radius-base: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-base: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-md: 0 6px 12px -2px rgba(0, 0, 0, .1), 0 3px 6px -1px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-glow: 0 0 20px rgba(99, 102, 241, .3);--shadow-glow-lg: 0 0 40px rgba(99, 102, 241, .4);--gradient-primary: linear-gradient(135deg, var(--color-primary) 0%, #818cf8 100%);--gradient-primary-dark: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 100%);--gradient-dark: linear-gradient(-45deg, #0f172a, #1e3a5f, #312e81, #1e1b4b);--gradient-card: linear-gradient(145deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .05));--gradient-success: linear-gradient(135deg, var(--color-success) 0%, #34d399 100%);--gradient-error: linear-gradient(135deg, var(--color-error) 0%, #f87171 100%);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .1);--glass-blur: blur(20px);--glass-blur-sm: blur(10px);--glass-blur-lg: blur(30px);--transition-base: all .3s cubic-bezier(.645, .045, .355, 1);--transition-fast: all .2s ease-in-out;--transition-slow: all .5s cubic-bezier(.645, .045, .355, 1);--transition-bounce: all .4s cubic-bezier(.68, -.55, .265, 1.55);--transition-spring: all .5s cubic-bezier(.34, 1.56, .64, 1);--z-index-base: 1;--z-index-dropdown: 1000;--z-index-sticky: 1020;--z-index-fixed: 1030;--z-index-modal-backdrop: 1040;--z-index-modal: 1050;--z-index-popover: 1060;--z-index-tooltip: 1070;--breakpoint-xs: 480px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}[data-theme=dark]{--color-text-primary: rgba(255, 255, 255, .9);--color-text-secondary: rgba(255, 255, 255, .65);--color-text-tertiary: rgba(255, 255, 255, .45);--color-text-disabled: rgba(255, 255, 255, .25);--color-text-inverse: #1e293b;--color-border: rgba(255, 255, 255, .1);--color-border-light: rgba(255, 255, 255, .05);--color-border-dark: rgba(255, 255, 255, .15);--color-divider: rgba(255, 255, 255, .08);--color-bg-base: #0f172a;--color-bg-container: #1e293b;--color-bg-elevated: #334155;--color-bg-layout: #0f172a;--color-bg-hover: rgba(255, 255, 255, .05);--color-bg-active: rgba(255, 255, 255, .1);--header-bg: rgba(15, 23, 42, .8);--sidebar-bg: #0a0f1c;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-base: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -2px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px rgba(99, 102, 241, .5);--glass-bg: rgba(0, 0, 0, .2);--glass-border: rgba(255, 255, 255, .05)}@media (prefers-reduced-motion: reduce){:root{--transition-base: none;--transition-fast: none;--transition-slow: none;--transition-bounce: none;--transition-spring: none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){:root{--color-border: #000000;--color-border-dark: #000000;--shadow-base: 0 2px 4px rgba(0, 0, 0, .3)}}*,*:before,*:after{box-sizing:border-box}:root{font-family:var(--font-family-base);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal);color-scheme:light dark;color:var(--color-text-primary);background-color:var(--color-bg-base);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4}body{margin:0;min-width:320px;min-height:100vh;line-height:inherit}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text-primary)}h1{font-size:var(--font-size-xxxl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-xxl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5{font-size:var(--font-size-base)}h6{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs);line-height:var(--line-height-normal)}.text-sm{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.text-base{font-size:var(--font-size-base);line-height:var(--line-height-normal)}.text-lg{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}.text-xl{font-size:var(--font-size-xl);line-height:var(--line-height-relaxed)}.text-xxl{font-size:var(--font-size-xxl);line-height:var(--line-height-tight)}.text-xxxl{font-size:var(--font-size-xxxl);line-height:var(--line-height-tight)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-disabled{color:var(--color-text-disabled)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.text-primary-color{color:var(--color-primary)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-underline{text-decoration:underline}.text-line-through{text-decoration:line-through}.text-no-underline{text-decoration:none}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.text-ellipsis-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}code,kbd,samp,pre{font-family:var(--font-family-mono);font-size:.9em}code{padding:2px 6px;background:var(--color-bg-hover);border-radius:var(--radius-sm);color:var(--color-error)}pre{padding:var(--spacing-md);background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:var(--radius-base);overflow-x:auto}pre code{padding:0;background:transparent;color:inherit}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--color-primary-bg);color:var(--color-primary-dark)}::-moz-selection{background:var(--color-primary-bg);color:var(--color-primary-dark)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#9ca3af80;border-radius:3px;transition:all .3s}::-webkit-scrollbar-thumb:hover{background:#9ca3afcc}.ant-table-wrapper .ant-table{border-radius:var(--radius-lg);overflow:hidden}.ant-table-wrapper .ant-table-thead>tr>th{background:linear-gradient(180deg,var(--color-bg-container) 0%,var(--color-bg-layout) 100%);font-weight:600;color:var(--color-text-primary);border-bottom:2px solid var(--color-border);padding:14px 16px}.ant-table-wrapper .ant-table-tbody>tr>td{padding:12px 16px;transition:background .2s ease}.table-striped .ant-table-tbody>tr:nth-child(2n){background:#f8fafc80}.ant-table-wrapper .ant-table-tbody>tr:hover>td{background:#6366f10a!important}.ant-table-wrapper .ant-table-tbody>tr.ant-table-row-selected>td{background:#6366f114}.form-full-width{width:100%}.form-no-margin-bottom{margin-bottom:0}.form-section-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--color-border);position:relative}.form-section-title:after{content:"";position:absolute;left:0;bottom:-2px;width:40px;height:2px;background:var(--gradient-primary);border-radius:1px}.form-extra-error{color:var(--color-error);font-size:12px;margin-top:4px}.form-extra-info{color:var(--color-text-secondary);font-size:12px;margin-top:4px}.ant-form-item-label>label{font-weight:500;color:var(--color-text-primary)}.ant-input,.ant-input-affix-wrapper,.ant-select-selector,.ant-picker{border-radius:var(--radius-base)!important;transition:var(--transition-base)!important}.ant-input:focus,.ant-input-affix-wrapper-focused,.ant-select-focused .ant-select-selector,.ant-picker-focused{box-shadow:0 0 0 3px #6366f11a!important}.ant-btn{border-radius:var(--radius-base);font-weight:500;transition:var(--transition-base)}.ant-btn-primary{box-shadow:0 2px 8px #6366f140}.ant-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #6366f159}.ant-btn-primary:active:not(:disabled){transform:translateY(0)}.page-card{background:var(--color-bg-container);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:var(--transition-base)}.page-card:hover{box-shadow:0 8px 24px -4px #00000014;border-color:var(--color-primary-bg)}.page-card .ant-card-head{border-bottom:1px solid var(--color-border);padding:16px 20px}.page-card .ant-card-body{padding:20px}.ant-modal-content{border-radius:var(--radius-lg);overflow:hidden}.ant-modal-header{border-bottom:1px solid var(--color-border);padding:16px 24px}.ant-modal-body{padding:24px}.ant-tag{border-radius:6px;font-weight:500;padding:2px 10px}.ant-descriptions-bordered .ant-descriptions-item-label{background:var(--color-bg-layout);font-weight:500}.ant-breadcrumb{font-size:13px}.ant-breadcrumb a{color:var(--color-text-secondary);transition:color .2s ease}.ant-breadcrumb a:hover{color:var(--color-primary)}.ant-empty{padding:40px 0}.ant-empty-description{color:var(--color-text-tertiary)}.ant-spin-dot-item{background-color:var(--color-primary)}.ant-dropdown-menu{border-radius:var(--radius-base);padding:4px;box-shadow:0 6px 16px #0000001f}.ant-dropdown-menu-item{border-radius:6px;transition:background .2s ease}.ant-tooltip-inner{border-radius:var(--radius-base)}.ant-popover-inner{border-radius:var(--radius-lg);box-shadow:0 6px 20px #0000001a}.ant-message-notice-content{border-radius:var(--radius-base);box-shadow:0 4px 12px #0000001a}.ant-notification-notice{border-radius:var(--radius-lg);box-shadow:0 6px 20px #0000001f}.ant-collapse{border-radius:var(--radius-lg);overflow:hidden}.ant-collapse-header{font-weight:500}[data-theme=dark] .ant-table-wrapper .ant-table{background:var(--color-bg-container);color:var(--color-text-primary)}[data-theme=dark] .ant-table-wrapper .ant-table-thead>tr>th{background:var(--color-bg-elevated);color:var(--color-text-primary);border-bottom-color:var(--color-border)}[data-theme=dark] .ant-table-wrapper .ant-table-tbody>tr>td{border-bottom-color:var(--color-border)}[data-theme=dark] .ant-table-wrapper .ant-table-tbody>tr:hover>td{background:var(--color-bg-hover)!important}[data-theme=dark] .ant-table-wrapper .ant-table-tbody>tr.ant-table-row-selected>td{background:#6366f126}[data-theme=dark] .page-card{background:var(--color-bg-container);border-color:var(--color-border)}[data-theme=dark] .page-card:hover{border-color:var(--color-primary)}[data-theme=dark] .ant-input,[data-theme=dark] .ant-input-affix-wrapper,[data-theme=dark] .ant-select-selector,[data-theme=dark] .ant-picker{background:var(--color-bg-elevated);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .ant-input::placeholder,[data-theme=dark] .ant-input-affix-wrapper input::placeholder{color:var(--color-text-tertiary)}[data-theme=dark] .ant-input:focus,[data-theme=dark] .ant-input-affix-wrapper-focused,[data-theme=dark] .ant-select-focused .ant-select-selector,[data-theme=dark] .ant-picker-focused{border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f133!important}[data-theme=dark] .ant-form-item-label>label{color:var(--color-text-primary)}[data-theme=dark] .ant-btn-default{background:var(--color-bg-container);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .ant-btn-default:hover{background:var(--color-bg-hover);border-color:var(--color-primary);color:var(--color-primary)}[data-theme=dark] .ant-modal-content{background:var(--color-bg-container);color:var(--color-text-primary)}[data-theme=dark] .ant-modal-header{background:var(--color-bg-container);border-bottom-color:var(--color-border)}[data-theme=dark] .ant-modal-title{color:var(--color-text-primary)}[data-theme=dark] .ant-modal-close{color:var(--color-text-secondary)}[data-theme=dark] .ant-modal-close:hover{color:var(--color-text-primary)}[data-theme=dark] .ant-dropdown-menu{background:var(--color-bg-container);border-color:var(--color-border)}[data-theme=dark] .ant-dropdown-menu-item:hover{background:var(--color-bg-hover)}[data-theme=dark] .ant-tooltip-inner{background:var(--color-bg-elevated);color:var(--color-text-primary)}[data-theme=dark] .ant-popover-inner{background:var(--color-bg-container);color:var(--color-text-primary)}[data-theme=dark] .ant-popover-title{color:var(--color-text-primary);border-bottom-color:var(--color-border)}[data-theme=dark] .ant-message-notice-content{background:var(--color-bg-container);color:var(--color-text-primary);border-color:var(--color-border)}[data-theme=dark] .ant-notification-notice{background:var(--color-bg-container);color:var(--color-text-primary)}[data-theme=dark] .ant-notification-notice-message{color:var(--color-text-primary)}[data-theme=dark] .ant-breadcrumb a{color:var(--color-text-secondary)}[data-theme=dark] .ant-breadcrumb a:hover{color:var(--color-primary)}[data-theme=dark] .ant-breadcrumb-separator,[data-theme=dark] .ant-empty-description{color:var(--color-text-tertiary)}[data-theme=dark] .ant-tag{background:var(--color-bg-hover);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .ant-descriptions-bordered .ant-descriptions-item-label{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border)}[data-theme=dark] .ant-descriptions-bordered .ant-descriptions-item-content{border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .ant-collapse{background:var(--color-bg-container);border-color:var(--color-border)}[data-theme=dark] .ant-collapse-header{color:var(--color-text-primary)}[data-theme=dark] .ant-collapse-content{background:var(--color-bg-container);color:var(--color-text-primary);border-top-color:var(--color-border)}:root{--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--sidebar-bg: linear-gradient(180deg, #0f0f23 0%, #1a1a2e 50%, #16213e 100%);--sidebar-glass: rgba(15, 15, 35, .85);--sidebar-border: rgba(139, 92, 246, .12);--sidebar-glow: rgba(139, 92, 246, .2);--menu-item-height: 44px;--menu-item-radius: 10px;--accent-primary: #a78bfa;--accent-secondary: #818cf8;--accent-tertiary: #c084fc;--text-primary: rgba(248, 250, 252, .95);--text-secondary: rgba(203, 213, 225, .7);--text-muted: rgba(148, 163, 184, .5)}.main-sider{position:fixed!important;left:0;top:0;bottom:0;z-index:1001;height:100vh;overflow:hidden;background:var(--sidebar-bg)!important;border-right:1px solid var(--sidebar-border);transition:width .28s cubic-bezier(.4,0,.2,1);will-change:width}.main-sider:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(ellipse at 30% 20%,rgba(139,92,246,.08) 0%,transparent 50%);pointer-events:none;z-index:0}.main-sider:after{content:"";position:absolute;bottom:0;left:0;right:0;height:120px;background:linear-gradient(to top,rgba(0,0,0,.3),transparent);pointer-events:none;z-index:0}.main-sider .ant-layout-sider-children{overflow-y:auto;overflow-x:hidden;height:100%;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:rgba(139,92,246,.2) transparent}.main-sider .ant-layout-sider-children::-webkit-scrollbar{width:4px}.main-sider .ant-layout-sider-children::-webkit-scrollbar-track{background:transparent}.main-sider .ant-layout-sider-children::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--accent-primary),var(--accent-secondary));border-radius:2px}.logo-container{height:64px;margin:16px;padding:0 12px;display:flex;align-items:center;gap:12px;position:relative;z-index:1;overflow:hidden;border-radius:12px;background:#8b5cf60d;border:1px solid rgba(139,92,246,.08);transition:all .25s ease}.logo-container:hover{background:#8b5cf614;border-color:#8b5cf626}.logo-container:after{display:none}.logo-icon{font-size:28px;color:var(--accent-primary);filter:drop-shadow(0 0 8px rgba(139,92,246,.5));flex-shrink:0;animation:logoGlow 3s ease-in-out infinite}@keyframes logoGlow{0%,to{filter:drop-shadow(0 0 8px rgba(139,92,246,.5))}50%{filter:drop-shadow(0 0 16px rgba(139,92,246,.8))}}.logo-text{font-size:18px;font-weight:700;letter-spacing:1px;background:linear-gradient(135deg,#fff 0%,var(--accent-primary) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;white-space:nowrap;opacity:1;transform:translate(0);transition:opacity .2s ease,transform .2s ease}.logo-container.collapsed{margin:16px 8px;padding:0;justify-content:center}.logo-container.collapsed .logo-text{opacity:0;transform:translate(-8px);position:absolute}.main-sider .ant-menu.ant-menu-dark{background:transparent!important;padding:8px 12px;position:relative;z-index:1;flex:1}.main-sider .ant-menu,.main-sider .ant-menu *{transition:none!important}.main-sider.ant-layout-sider-collapsed .ant-menu{opacity:0;pointer-events:none}.main-sider:not(.ant-layout-sider-collapsed) .ant-menu{opacity:1;pointer-events:auto}.main-sider .ant-menu-dark .ant-menu-item{height:var(--menu-item-height);line-height:var(--menu-item-height);margin:2px 0;padding:0 12px!important;border-radius:var(--menu-item-radius);color:var(--text-secondary);font-size:13.5px;font-weight:450;position:relative;overflow:hidden;transition:background .15s ease,color .15s ease!important}.main-sider .ant-menu-dark .ant-menu-item .anticon{font-size:17px;color:var(--text-secondary);transition:color .15s ease,transform .15s ease!important;margin-right:10px}.main-sider .ant-menu-dark .ant-menu-item:hover{background:#8b5cf61a;color:var(--text-primary)}.main-sider .ant-menu-dark .ant-menu-item:hover .anticon{color:var(--accent-primary);transform:scale(1.05)}.main-sider .ant-menu-dark .ant-menu-item-selected{background:linear-gradient(90deg,#8b5cf633,#8b5cf614)!important;color:#fff!important;font-weight:500}.main-sider .ant-menu-dark .ant-menu-item-selected .anticon{color:var(--accent-primary)!important}.main-sider .ant-menu-dark .ant-menu-item-selected:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:linear-gradient(180deg,var(--accent-tertiary) 0%,var(--accent-primary) 50%,var(--accent-secondary) 100%);border-radius:0 4px 4px 0;box-shadow:0 0 12px var(--accent-primary)}.main-sider .ant-menu-dark .ant-menu-submenu-title{height:var(--menu-item-height);line-height:var(--menu-item-height);margin:2px 0;padding:0 12px!important;border-radius:var(--menu-item-radius);color:var(--text-secondary);font-size:13.5px;font-weight:500;transition:background .15s ease,color .15s ease!important}.main-sider .ant-menu-dark .ant-menu-submenu-title .anticon{font-size:17px;color:var(--text-secondary);margin-right:10px;transition:color .15s ease!important}.main-sider .ant-menu-dark .ant-menu-submenu-title:hover{background:#8b5cf61a;color:var(--text-primary)}.main-sider .ant-menu-dark .ant-menu-submenu-title:hover .anticon{color:var(--accent-primary)}.main-sider .ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title{color:var(--text-primary);background:#8b5cf614}.main-sider .ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title .anticon{color:var(--accent-primary)}.main-sider .ant-menu-dark .ant-menu-submenu-arrow{color:var(--text-muted);transition:color .15s ease,transform .2s ease!important}.main-sider .ant-menu-dark .ant-menu-submenu-title:hover .ant-menu-submenu-arrow,.main-sider .ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title .ant-menu-submenu-arrow{color:var(--accent-primary)}.main-sider .ant-menu-dark .ant-menu-sub{background:#00000026!important;border-radius:8px;padding:4px;margin:4px 0 4px 20px;border-left:2px solid rgba(139,92,246,.15)}.main-sider .ant-menu-dark .ant-menu-sub .ant-menu-item{height:38px;line-height:38px;margin:1px 0;padding:0 12px!important;font-size:13px;font-weight:400;color:var(--text-secondary);border-radius:6px}.main-sider .ant-menu-dark .ant-menu-sub .ant-menu-item:hover{background:#8b5cf61a;color:var(--text-primary)}.main-sider .ant-menu-dark .ant-menu-sub .ant-menu-item-selected{background:#8b5cf626!important;color:#fff!important}.main-sider .ant-menu-dark .ant-menu-sub .ant-menu-item-selected:before{display:none}.sider-hover-overlay{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);z-index:1200;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);box-shadow:8px 0 32px #0006,4px 0 16px #8b5cf61a;transform:translate3d(-100%,0,0);transition:transform .22s cubic-bezier(.4,0,.2,1);will-change:transform;contain:layout paint style;overflow:hidden;pointer-events:none}.sider-hover-overlay.open{transform:translateZ(0);pointer-events:auto}.sider-hover-overlay .ant-menu,.sider-hover-overlay .ant-menu *{transition:none!important}.sider-hover-overlay-content{height:100%;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.sider-hover-overlay .logo-container{flex-shrink:0}.sider-hover-overlay .ant-menu{flex:1;min-height:0}.sider-hover-overlay .ant-menu.ant-menu-dark{background:transparent!important;padding:8px 12px}.sider-hover-overlay .ant-menu-dark .ant-menu-item:hover,.sider-hover-overlay .ant-menu-dark .ant-menu-submenu-title:hover{background:#8b5cf61f!important}.main-sider.ant-layout-sider-collapsed .ant-menu-item{padding:0!important;text-align:center;margin:4px 8px;border-radius:10px}.main-sider.ant-layout-sider-collapsed .ant-menu-item .anticon{margin:0;font-size:20px}.main-sider.ant-layout-sider-collapsed .ant-menu-submenu-title{padding:0!important;text-align:center;margin:4px 8px;border-radius:10px}.main-sider.ant-layout-sider-collapsed .ant-menu-submenu-title .anticon{margin:0;font-size:20px}.main-sider.ant-layout-sider-collapsed .ant-menu-dark .ant-menu-item span,.main-sider.ant-layout-sider-collapsed .ant-menu-dark .ant-menu-submenu-title span{opacity:0}.main-sider:not(.ant-layout-sider-collapsed) .ant-menu-dark .ant-menu-item span,.main-sider:not(.ant-layout-sider-collapsed) .ant-menu-dark .ant-menu-submenu-title span{opacity:1}.ant-menu-inline-collapsed-tooltip .ant-tooltip-inner{background:linear-gradient(135deg,#1e1b4b,#0f172a);border-radius:8px;padding:8px 14px;font-weight:500;font-size:13px;color:#fff;box-shadow:0 4px 16px #0000004d;border:1px solid rgba(139,92,246,.2)}.ant-menu-inline-collapsed-tooltip .ant-tooltip-arrow:before{background:linear-gradient(135deg,#1e1b4b,#0f172a)}.main-sider.ant-layout-sider-collapsed .ant-menu-submenu-title,.main-sider.ant-layout-sider-collapsed .ant-menu-item{overflow:visible!important}.main-content-layout{transition:margin-left .28s cubic-bezier(.4,0,.2,1);background:var(--color-bg-layout);will-change:margin-left}.main-header{padding:0 20px;background:#fffffff2!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:1000;height:60px;box-shadow:0 1px 2px #00000008;border-bottom:1px solid rgba(0,0,0,.04)}.trigger-btn{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;color:var(--color-text-secondary);transition:all .2s ease}.trigger-btn:hover{color:var(--accent-primary);background:#8b5cf614}.header-right{display:flex;align-items:center;gap:12px}.theme-toggle-btn{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;color:var(--color-text-secondary);transition:all .2s ease}.theme-toggle-btn:hover{color:#f59e0b;background:#f59e0b1a}.user-dropdown{cursor:pointer;display:flex;align-items:center;padding:4px 10px 4px 4px;border-radius:24px;transition:all .2s ease;border:1px solid transparent}.user-dropdown:hover{background:#00000005;border-color:#0000000f}.user-avatar{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);margin-right:8px;box-shadow:0 2px 6px #8b5cf64d;border:2px solid #fff}.user-name{margin-right:4px;font-weight:500;color:var(--color-text-primary);font-size:13px}.main-content{margin:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;height:calc(100vh - 106px)}.content-wrapper{padding:20px;flex:1;min-height:0;background:var(--color-bg-container);border-radius:12px;margin:12px;box-shadow:0 1px 2px #00000005;border:1px solid var(--color-border);width:calc(100% - 24px);box-sizing:border-box;display:flex;flex-direction:column;overflow-y:auto}.user-menu-name{font-weight:600;color:var(--color-text-primary);font-size:14px;margin-bottom:2px}[data-theme=dark] .main-header{background:#1e293bf2!important;border-bottom-color:#47556966}[data-theme=dark] .trigger-btn{color:#94a3b8}[data-theme=dark] .trigger-btn:hover{color:var(--accent-primary);background:#8b5cf61f}[data-theme=dark] .theme-toggle-btn{color:#94a3b8}[data-theme=dark] .theme-toggle-btn:hover{color:#fbbf24;background:#fbbf241f}[data-theme=dark] .user-dropdown:hover{background:#ffffff0d;border-color:#ffffff1a}[data-theme=dark] .user-name{color:#e2e8f0}[data-theme=dark] .content-wrapper{background:#1e293b;border-color:#334155}[data-theme=dark] .user-menu-name{color:#e2e8f0}[data-theme=dark] .user-menu-email{color:#94a3b8}[data-theme=dark] .ant-menu-inline-collapsed-tooltip .ant-tooltip-inner{background:linear-gradient(135deg,#334155,#1e293b);border-color:#8b5cf64d}[data-theme=dark] .ant-menu-inline-collapsed-tooltip .ant-tooltip-arrow:before{background:#334155}.main-header{padding:0 24px;background:#ffffffe6!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:1000;box-shadow:0 1px 3px #0000000a;border-bottom:1px solid rgba(0,0,0,.04);height:64px}.trigger-btn{font-size:18px;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:all .3s;cursor:pointer;color:var(--color-text-secondary)}.trigger-btn:hover{color:var(--color-primary);background:#6366f114;transform:scale(1.05)}.trigger-btn:active{transform:scale(.95)}.header-right{display:flex;align-items:center;gap:16px}.user-dropdown{cursor:pointer;display:flex;align-items:center;padding:4px 12px 4px 4px;border-radius:28px;transition:all .3s;border:1px solid transparent}.user-dropdown:hover{background:#fff;box-shadow:0 4px 12px #00000014;border-color:#6366f126}.user-avatar{background:linear-gradient(135deg,#6366f1,#818cf8);margin-right:10px;box-shadow:0 2px 8px #6366f159;border:2px solid white}.user-name{margin-right:6px;font-weight:500;color:var(--color-text-primary);font-size:14px}.global-search-input{width:240px;transition:all .3s cubic-bezier(.4,0,.2,1);background:#00000008!important;border-radius:10px!important;height:38px!important}.global-search-input:hover{background:#0000000d!important}.global-search-input:focus-within{width:320px;background:#fff!important;box-shadow:0 0 0 3px #6366f11f}.global-search-input .ant-select-selector{height:38px!important;padding:0 14px!important;border-radius:10px!important}.global-search-input .ant-select-selection-placeholder{line-height:38px!important;font-size:13px;color:var(--color-text-tertiary)}.global-search-input .ant-select-selection-search-input{height:38px!important}.user-menu-profile{padding:8px 4px;min-width:140px}.user-menu-name{font-weight:600;color:var(--color-text-primary);margin-bottom:2px;font-size:14px}.user-menu-email{font-size:12px;color:var(--color-text-secondary)}.main-content-layout{transition:var(--transition-base);background:var(--color-bg-layout)}.main-content{margin:0;overflow:initial;display:flex;flex-direction:column}.content-wrapper{padding:24px;min-height:360px;background:var(--color-bg-container);border-radius:var(--radius-lg);margin:16px;box-shadow:0 1px 3px #0000000a;border:1px solid var(--color-border);animation:contentFadeIn .3s ease-out}@keyframes contentFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.main-layout{min-height:100vh}.page-container{display:flex;flex-direction:column;gap:var(--spacing-md);height:100%;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.page-header-left{display:flex;flex-direction:column;gap:4px}.page-title{font-size:22px;font-weight:700;color:var(--color-text-primary);margin:0;background:linear-gradient(135deg,var(--color-text-primary) 0%,var(--color-primary) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em}.page-extra{display:flex;gap:var(--spacing-sm);align-items:center}.page-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:24px}.page-card{background:var(--color-bg-container);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--color-border);transition:var(--transition-base);width:100%;box-sizing:border-box}.page-card-outer{background:#fafafa!important;border:1px solid var(--color-border);border-radius:var(--radius-lg)}[data-theme=dark] .page-card-outer{background:var(--color-bg-layout)!important}.page-card-inner{background:var(--color-bg-container)!important;box-shadow:0 1px 4px #00000014!important}.page-card-inner:hover{box-shadow:0 2px 8px #0000001f!important}.page-card:hover{box-shadow:0 8px 24px -4px #0000000f;border-color:#6366f133}[data-theme=dark] .page-card:hover{box-shadow:0 8px 24px -4px #0000004d;border-color:#818cf84d}.page-container .ant-breadcrumb{font-size:13px}.page-container .ant-breadcrumb-link{color:var(--color-text-tertiary);transition:color .2s ease}.page-container .ant-breadcrumb-link:hover{color:var(--color-primary)}.page-container .ant-breadcrumb-separator{color:var(--color-text-tertiary)}.page-container .ant-breadcrumb li:last-child .ant-breadcrumb-link{color:var(--color-text-secondary);font-weight:500}.page-actions{display:flex;gap:8px;align-items:center}.page-stats{display:flex;gap:16px;margin-bottom:16px}.page-stat-item{background:var(--color-bg-container);border-radius:var(--radius-base);padding:16px 20px;border:1px solid var(--color-border);min-width:140px}.page-stat-value{font-size:24px;font-weight:700;color:var(--color-text-primary);line-height:1.2}.page-stat-label{font-size:13px;color:var(--color-text-secondary);margin-top:4px}@media (max-width: 768px){.page-header{flex-direction:column}.page-title{font-size:18px}.page-extra{width:100%;justify-content:flex-start}.page-stats{flex-wrap:wrap}.page-stat-item{min-width:auto;flex:1}}.multi-tabs-wrapper{position:sticky;top:64px;z-index:999;background:var(--color-bg-layout)}.multi-tabs-wrapper .ant-tabs-nav{margin:0!important;background:var(--color-bg-layout);padding:8px 16px 0;border-bottom:1px solid var(--color-border)}.multi-tabs-wrapper .ant-tabs-tab{background:transparent!important;border:none!important;border-radius:10px 10px 0 0!important;margin-right:4px!important;padding:10px 18px!important;transition:all .3s cubic-bezier(.645,.045,.355,1)!important;color:var(--color-text-secondary);position:relative}.multi-tabs-wrapper .ant-tabs-tab:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:100%;height:2px;background:var(--gradient-primary);border-radius:2px 2px 0 0;transition:transform .3s ease}.multi-tabs-wrapper .ant-tabs-tab:hover{background:#6366f10a!important;color:var(--color-text-primary)}.multi-tabs-wrapper .ant-tabs-tab:hover:before{transform:translate(-50%) scaleX(.5)}.multi-tabs-wrapper .ant-tabs-tab-active{background:var(--color-bg-container)!important;color:var(--color-primary)!important;font-weight:500;box-shadow:0 -2px 8px #0000000a}.multi-tabs-wrapper .ant-tabs-tab-active:before{transform:translate(-50%) scaleX(1)}.multi-tabs-wrapper .ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--color-primary)!important}.multi-tabs-wrapper .ant-tabs-ink-bar{display:none!important}.multi-tabs-wrapper .ant-tabs-content-holder{background:var(--color-bg-layout)}.tab-label-container{display:inline-flex;align-items:center;gap:6px;width:100%;height:100%;-webkit-user-select:none;user-select:none}.multi-tabs-wrapper .ant-tabs-tab-remove{margin-left:6px;color:var(--color-text-tertiary);transition:all .2s ease;border-radius:4px;padding:2px}.multi-tabs-wrapper .ant-tabs-tab-remove:hover{color:var(--color-error);background:#ef44441a}.multi-tabs-wrapper .ant-tabs-nav-add{border-radius:8px!important;transition:all .2s ease!important}.multi-tabs-wrapper .ant-tabs-nav-add:hover{color:var(--color-primary)!important;background:#6366f114!important}.ant-dropdown-menu{padding:4px}.ant-dropdown-menu-item{border-radius:6px;margin:2px 0;transition:all .2s ease}.ant-dropdown-menu-item:hover{background:#6366f10f}.multi-tabs-wrapper .ant-tabs-nav-more{border-radius:8px;transition:all .2s ease}.multi-tabs-wrapper .ant-tabs-nav-more:hover{background:#0000000a;color:var(--color-primary)}@media (max-width: 768px){.multi-tabs-wrapper .ant-tabs-tab{padding:8px 12px!important;font-size:13px}}[data-theme=dark] .multi-tabs-wrapper .ant-tabs-nav{background:var(--color-bg-layout);border-bottom-color:var(--color-border)}[data-theme=dark] .multi-tabs-wrapper .ant-tabs-tab{color:var(--color-text-secondary)}[data-theme=dark] .multi-tabs-wrapper .ant-tabs-tab:hover{background:#818cf81a!important;color:var(--color-text-primary)}[data-theme=dark] .multi-tabs-wrapper .ant-tabs-tab-active{background:var(--color-bg-container)!important;color:var(--color-primary)!important;box-shadow:0 -2px 8px #0003}[data-theme=dark] .multi-tabs-wrapper .ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--color-primary)!important}[data-theme=dark] .multi-tabs-wrapper .ant-tabs-tab-remove{color:var(--color-text-tertiary)}[data-theme=dark] .multi-tabs-wrapper .ant-tabs-tab-remove:hover{color:var(--color-error);background:#f8717126}[data-theme=dark] .multi-tabs-wrapper .ant-tabs-nav-more:hover{background:#ffffff14;color:var(--color-primary)}[data-theme=dark] .ant-dropdown-menu{background:var(--color-bg-elevated);border-color:var(--color-border)}[data-theme=dark] .ant-dropdown-menu-item{color:var(--color-text-primary)}[data-theme=dark] .ant-dropdown-menu-item:hover{background:#818cf826;color:var(--color-text-primary)}.employee-form .phone-code-select{width:30%}.employee-form .phone-number-input{width:70%}.employee-form .position-role{color:var(--color-text-secondary);margin-left:8px;font-size:12px}.success-modal-highlight{margin-top:8px;font-weight:700;color:var(--color-primary)}.success-modal-info-box{margin-top:12px;padding:12px;background:var(--color-bg-layout);border-radius:4px}.success-modal-info-box p{margin:4px 0}.success-text-bold{margin:8px 0;color:var(--color-success);font-weight:700}.error-text-small{margin:4px 0;font-size:12px;color:var(--color-error)}.success-modal-warning-box{margin-top:12px;padding:10px;background:#fff3cd;border-radius:4px;font-size:12px;color:#856404}.employee-drawer .ant-drawer-header{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border-bottom:none;padding:20px 24px}.employee-drawer .ant-drawer-title{color:#fff;font-size:18px;font-weight:600;letter-spacing:.5px}.employee-drawer .ant-drawer-close{color:#ffffffd9}.employee-drawer .ant-drawer-close:hover{color:#fff;background:#ffffff1a}.employee-drawer .ant-drawer-body{padding:0;background:#f5f7fa}.employee-drawer .ant-drawer-footer{border-top:1px solid #e8e8e8;padding:16px 24px;background:#fff}.employee-steps-header{background:#fff;padding:24px 32px 20px;border-bottom:1px solid #f0f0f0;box-shadow:0 2px 8px #0000000a}.employee-steps-header .ant-steps-item-title{font-weight:500}.employee-steps-header .ant-steps-item-process .ant-steps-item-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent}.employee-steps-header .ant-steps-item-finish .ant-steps-item-icon{background:#52c41a;border-color:#52c41a}.employee-steps-header .ant-steps-item-finish .ant-steps-item-icon .ant-steps-icon{color:#fff}.employee-form-content{padding:24px 32px;min-height:calc(100vh - 200px);overflow-y:auto}.employee-form-content::-webkit-scrollbar{width:6px}.employee-form-content::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.form-section-card{background:#fff;border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:0 2px 12px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.form-section-card:hover{box-shadow:0 4px 16px #00000014}.form-section-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f5f5f5}.form-section-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff}.form-section-icon.basic{background:linear-gradient(135deg,#667eea,#764ba2)}.form-section-icon.contact{background:linear-gradient(135deg,#11998e,#38ef7d)}.form-section-icon.salary{background:linear-gradient(135deg,#f093fb,#f5576c)}.form-section-icon.status{background:linear-gradient(135deg,#4facfe,#00f2fe)}.form-section-icon.leave{background:linear-gradient(135deg,#fa709a,#fee140)}.form-section-title-group{flex:1}.form-section-title{font-size:16px;font-weight:600;color:#1a1a2e;margin:0}.form-section-desc{font-size:13px;color:#8c8c8c;margin:4px 0 0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px 24px}.form-col-full{grid-column:1 / -1}.employee-form-content .ant-form-item{margin-bottom:16px}.employee-form-content .ant-form-item-label>label{font-weight:500;color:#333}.employee-form-content .ant-input,.employee-form-content .ant-input-number,.employee-form-content .ant-picker,.employee-form-content .ant-select-selector{border-radius:8px;transition:all .2s}.employee-form-content .ant-input:focus,.employee-form-content .ant-input-focused,.employee-form-content .ant-input-number:focus,.employee-form-content .ant-input-number-focused,.employee-form-content .ant-picker-focused,.employee-form-content .ant-select-focused .ant-select-selector{border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.salary-entry-card{background:linear-gradient(135deg,#fafbfc,#f5f7fa);border:1px solid #e8e8e8;border-radius:10px;padding:16px;margin-bottom:12px;position:relative}.salary-entry-card:hover{border-color:#d9d9d9}.salary-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.salary-entry-type{font-weight:500;color:#333;font-size:14px}.salary-entry-content{display:flex;gap:12px;align-items:flex-start}.salary-currency-select{width:120px}.salary-amount-input{flex:1}.salary-delete-btn{position:absolute;top:12px;right:12px}.allowance-group{background:#fafafa;border-radius:10px;padding:16px;margin-bottom:16px}.allowance-group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.allowance-group-title{display:flex;align-items:center;gap:8px;font-weight:500;color:#333}.allowance-group-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff}.allowance-group-icon.living{background:linear-gradient(135deg,#84fab0,#8fd3f4)}.allowance-group-icon.housing{background:linear-gradient(135deg,#a8edea,#fed6e3)}.allowance-group-icon.transport{background:linear-gradient(135deg,#d299c2,#fef9d7)}.allowance-group-icon.meal{background:linear-gradient(135deg,#ffecd2,#fcb69f)}.add-salary-btn{width:100%;height:44px;border:2px dashed #d9d9d9;border-radius:10px;background:#fafafa;color:#666;font-weight:500;transition:all .2s}.add-salary-btn:hover{border-color:#667eea;color:#667eea;background:#667eea0a}.status-info-card{background:linear-gradient(135deg,#f5f7fa,#e4e8ec);border-radius:10px;padding:20px;margin-bottom:20px}.status-info-row{display:flex;align-items:center;margin-bottom:12px}.status-info-row:last-child{margin-bottom:0}.status-info-label{width:100px;color:#666;font-size:14px}.status-info-value{flex:1;font-weight:500;color:#333}.status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:500}.status-badge.probation{background:#fff7e6;color:#fa8c16}.status-badge.regular{background:#f6ffed;color:#52c41a}.status-badge.resigned{background:#fff1f0;color:#ff4d4f}.status-action-group{background:#fff;border:1px solid #f0f0f0;border-radius:10px;padding:20px;margin-bottom:16px}.status-action-title{font-weight:600;font-size:15px;color:#333;margin-bottom:16px;display:flex;align-items:center;gap:8px}.status-action-title.danger{color:#ff4d4f}.drawer-footer-buttons{display:flex;justify-content:space-between;align-items:center}.drawer-footer-left,.drawer-footer-right{display:flex;gap:12px}.step-btn{min-width:100px;height:40px;border-radius:8px;font-weight:500}.step-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none}.step-btn-primary:hover{background:linear-gradient(135deg,#5a6fd6,#6a4190)}.employee-edit-tabs .ant-tabs-nav{background:#fff;padding:0 24px;margin:0;border-bottom:1px solid #f0f0f0}.employee-edit-tabs .ant-tabs-tab{padding:16px 0;font-weight:500}.employee-edit-tabs .ant-tabs-tab-active{font-weight:600}.employee-edit-tabs .ant-tabs-ink-bar{background:linear-gradient(135deg,#667eea,#764ba2);height:3px;border-radius:3px 3px 0 0}@media (max-width: 768px){.form-row,.form-row-3{grid-template-columns:1fr}.employee-form-content,.form-section-card{padding:16px}.form-section-header{flex-direction:column;align-items:flex-start;gap:8px}}[data-theme=dark] .employee-drawer .ant-drawer-body{background:#141414}[data-theme=dark] .form-section-card{background:#1f1f1f;border-color:#303030}[data-theme=dark] .form-section-title{color:#fff}[data-theme=dark] .form-section-desc{color:#8c8c8c}[data-theme=dark] .employee-steps-header{background:#1f1f1f;border-color:#303030}[data-theme=dark] .salary-entry-card{background:#262626;border-color:#303030}[data-theme=dark] .allowance-group{background:#262626}[data-theme=dark] .status-info-card{background:linear-gradient(135deg,#262626,#1a1a1a)}[data-theme=dark] .status-action-group,[data-theme=dark] .employee-edit-tabs .ant-tabs-nav{background:#1f1f1f;border-color:#303030}[data-theme=dark] .add-salary-btn{background:#262626;border-color:#434343;color:#8c8c8c}[data-theme=dark] .add-salary-btn:hover{background:#667eea1a}.login-layout{min-height:100vh;background:linear-gradient(-45deg,#0f172a,#1e3a5f,#312e81,#1e1b4b);background-size:400% 400%;animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.login-layout:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 80%,rgba(99,102,241,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(59,130,246,.08) 0%,transparent 40%);pointer-events:none;z-index:0}.login-header{position:fixed;top:0;left:0;right:0;height:64px;background:#0f172a99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;padding:0 24px;z-index:1000}.login-header-title{font-size:18px;font-weight:600;color:#fff;display:flex;align-items:center;gap:10px}.login-header-logo{font-size:24px;color:var(--color-primary);filter:drop-shadow(0 0 8px rgba(99,102,241,.5))}.login-header-status{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:13px;color:#fff9}.status-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}.status-dot.connected{background:#10b981;box-shadow:0 0 8px #10b98199}.status-dot.disconnected{background:#ef4444;box-shadow:0 0 8px #ef444499}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}}.login-content{padding:24px;margin-top:64px;display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 64px);position:relative;z-index:1}.login-card{background:#ffffff08!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:16px!important;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a!important;overflow:hidden;animation:cardFloat .6s ease-out}@keyframes cardFloat{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.login-card .ant-card-head{background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.08);padding:20px 24px}.login-card .ant-card-head-title{color:#fff!important;font-size:20px;font-weight:600;text-align:center}.login-card .ant-card-body{padding:32px 24px}.login-card .ant-form-item-label>label{color:#ffffffd9!important;font-weight:500}.login-card .ant-input,.login-card .ant-input-password .ant-input{background:#ffffff0f!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:10px!important;color:#fff!important;height:44px!important;transition:all .3s ease!important}.login-card .ant-input::placeholder{color:#fff6!important}.login-card .ant-input:hover,.login-card .ant-input-password:hover .ant-input{border-color:#6366f180!important;background:#ffffff14!important}.login-card .ant-input:focus,.login-card .ant-input-password .ant-input:focus,.login-card .ant-input-affix-wrapper-focused{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px #6366f126!important;background:#ffffff1a!important}.login-card .ant-input-affix-wrapper{background:#ffffff0f!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:10px!important;padding:0 12px!important;transition:all .3s ease!important}.login-card .ant-input-affix-wrapper:hover{border-color:#6366f180!important;background:#ffffff14!important}.login-card .ant-input-suffix .anticon{color:#ffffff80!important}.login-card .ant-input-password{position:relative}.login-card .ant-input-password .ant-input-affix-wrapper{background:#ffffff14!important;border:1.5px solid rgba(255,255,255,.15)!important;border-radius:12px!important;padding:0 14px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;box-shadow:0 2px 8px #0000001a,inset 0 1px #ffffff0d!important}.login-card .ant-input-password .ant-input-affix-wrapper:hover{border-color:#6366f199!important;background:#ffffff1a!important;box-shadow:0 4px 12px #6366f133,inset 0 1px #ffffff14!important;transform:translateY(-1px)}.login-card .ant-input-password .ant-input-affix-wrapper-focused{border-color:var(--color-primary)!important;background:#ffffff1f!important;box-shadow:0 0 0 4px #6366f133,0 4px 16px #6366f14d,inset 0 1px #ffffff1a!important;transform:translateY(-1px)}.login-card .ant-input-password .ant-input{background:transparent!important;border:none!important;padding:0!important;height:44px!important;font-size:15px!important;letter-spacing:.3px!important}.login-card .ant-input-password .ant-input::placeholder{color:#ffffff73!important;font-weight:400!important}.login-card .ant-input-password .ant-input-suffix{padding-left:8px}.login-card .ant-input-password .anticon{color:#fff9!important;transition:all .2s ease!important;cursor:pointer;padding:4px;border-radius:4px}.login-card .ant-input-password .anticon:hover{color:#ffffffe6!important;background:#ffffff1a;transform:scale(1.1)}.login-card .ant-btn-primary{height:48px!important;font-size:16px!important;font-weight:600!important;border-radius:10px!important;background:linear-gradient(135deg,var(--color-primary) 0%,#818cf8 100%)!important;border:none!important;box-shadow:0 4px 15px #6366f166!important;transition:all .3s ease!important}.login-card .ant-btn-primary:hover:not(:disabled){transform:translateY(-2px)!important;box-shadow:0 6px 20px #6366f180!important;background:linear-gradient(135deg,#818cf8,#a5b4fc)!important}.login-card .ant-btn-primary:active:not(:disabled){transform:translateY(0)!important}.login-card .ant-btn-primary:disabled{background:#6366f14d!important;box-shadow:none!important}.login-card .ant-form-item-explain-error{color:#fca5a5!important;font-size:12px}.qr-code-container{text-align:center;padding:16px;background:#ffffff0d;border-radius:12px;margin-bottom:16px}.qr-code-container img{border-radius:8px;border:2px solid rgba(255,255,255,.1)}.qr-code-hint{color:#ffffffb3;font-size:13px;margin-bottom:12px}.totp-input{letter-spacing:8px!important;font-size:24px!important;text-align:center!important;font-weight:600!important;height:56px!important}.login-info-text{color:#fff9;margin-bottom:16px}.login-info-text strong{color:#ffffffe6}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s ease-out forwards;will-change:opacity,transform}@media (prefers-reduced-motion: reduce){.animate-fade-in{animation:none;opacity:1;transform:none}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slideInLeft .4s ease-out forwards;will-change:opacity,transform}@media (prefers-reduced-motion: reduce){.animate-slide-in-left{animation:none;opacity:1;transform:none}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-right{animation:slideInRight .4s ease-out forwards;will-change:opacity,transform}@media (prefers-reduced-motion: reduce){.animate-slide-in-right{animation:none;opacity:1;transform:none}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scale-up{animation:scaleUp .3s ease-out forwards;will-change:opacity,transform}@media (prefers-reduced-motion: reduce){.animate-scale-up{animation:none;opacity:1;transform:none}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.animate-bounce{animation:bounce .5s ease-in-out}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.animate-pulse{animation:pulse 2s ease-in-out infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{background:linear-gradient(90deg,#fff0,#ffffff1a,#fff0);background-size:200% 100%;animation:shimmer 1.5s infinite;will-change:background-position}@media (prefers-reduced-motion: reduce){.animate-shimmer{animation:none}}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.transition-base{transition:var(--transition-base)}.transition-fast{transition:var(--transition-fast)}.transition-bounce{transition:var(--transition-bounce)}.hover-scale{transition:transform .2s ease}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-glow{transition:box-shadow .3s ease}.btn-interactive{transition:transform .2s ease,box-shadow .2s ease}.btn-interactive:hover:not(:disabled){transform:translateY(-2px)}.btn-interactive:active:not(:disabled){transform:translateY(0)}.card-hover{transition:transform .3s ease,box-shadow .3s ease}.card-hover:hover{transform:translateY(-4px);box-shadow:0 12px 24px -4px #0000001f}.focus-ring:focus-visible{outline:none;box-shadow:0 0 0 3px #6366f14d}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.min-h-screen{min-height:100vh}.m-0{margin:var(--spacing-0)}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.mt-0{margin-top:var(--spacing-0)}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mr-0{margin-right:var(--spacing-0)}.mr-xs{margin-right:var(--spacing-xs)}.mr-sm{margin-right:var(--spacing-sm)}.mr-md{margin-right:var(--spacing-md)}.mr-lg{margin-right:var(--spacing-lg)}.mr-xl{margin-right:var(--spacing-xl)}.mb-0{margin-bottom:var(--spacing-0)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.ml-0{margin-left:var(--spacing-0)}.ml-xs{margin-left:var(--spacing-xs)}.ml-sm{margin-left:var(--spacing-sm)}.ml-md{margin-left:var(--spacing-md)}.ml-lg{margin-left:var(--spacing-lg)}.ml-xl{margin-left:var(--spacing-xl)}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.p-0{padding:var(--spacing-0)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.pt-0{padding-top:var(--spacing-0)}.pt-xs{padding-top:var(--spacing-xs)}.pt-sm{padding-top:var(--spacing-sm)}.pt-md{padding-top:var(--spacing-md)}.pt-lg{padding-top:var(--spacing-lg)}.pt-xl{padding-top:var(--spacing-xl)}.pr-0{padding-right:var(--spacing-0)}.pr-xs{padding-right:var(--spacing-xs)}.pr-sm{padding-right:var(--spacing-sm)}.pr-md{padding-right:var(--spacing-md)}.pr-lg{padding-right:var(--spacing-lg)}.pr-xl{padding-right:var(--spacing-xl)}.pb-0{padding-bottom:var(--spacing-0)}.pb-xs{padding-bottom:var(--spacing-xs)}.pb-sm{padding-bottom:var(--spacing-sm)}.pb-md{padding-bottom:var(--spacing-md)}.pb-lg{padding-bottom:var(--spacing-lg)}.pb-xl{padding-bottom:var(--spacing-xl)}.pl-0{padding-left:var(--spacing-0)}.pl-xs{padding-left:var(--spacing-xs)}.pl-sm{padding-left:var(--spacing-sm)}.pl-md{padding-left:var(--spacing-md)}.pl-lg{padding-left:var(--spacing-lg)}.pl-xl{padding-left:var(--spacing-xl)}.px-xs{padding-left:var(--spacing-xs);padding-right:var(--spacing-xs)}.px-sm{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-lg{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.px-xl{padding-left:var(--spacing-xl);padding-right:var(--spacing-xl)}.py-xs{padding-top:var(--spacing-xs);padding-bottom:var(--spacing-xs)}.py-sm{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-lg{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.py-xl{padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xl)}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.border{border:1px solid var(--color-border)}.border-0{border:0}.border-t{border-top:1px solid var(--color-border)}.border-r{border-right:1px solid var(--color-border)}.border-b{border-bottom:1px solid var(--color-border)}.border-l{border-left:1px solid var(--color-border)}.border-primary{border-color:var(--color-primary)}.border-success{border-color:var(--color-success)}.border-warning{border-color:var(--color-warning)}.border-error{border-color:var(--color-error)}.shadow-none{box-shadow:none}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-glow{box-shadow:var(--shadow-glow)}.z-base{z-index:var(--z-index-base)}.z-dropdown{z-index:var(--z-index-dropdown)}.z-sticky{z-index:var(--z-index-sticky)}.z-fixed{z-index:var(--z-index-fixed)}.z-modal{z-index:var(--z-index-modal)}.z-popover{z-index:var(--z-index-popover)}.z-tooltip{z-index:var(--z-index-tooltip)}.loading{position:relative;pointer-events:none;opacity:.6}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.focus-ring{outline:none}.focus-ring:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.focus-ring-inset:focus-visible{outline-offset:-2px}.active{background:var(--color-bg-active)}.active-primary{background:var(--color-primary-bg);color:var(--color-primary)}.selected{background:var(--color-primary-bg);color:var(--color-primary);border-color:var(--color-primary)}.hover-lift{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hover-scale{transition:transform var(--transition-fast)}.hover-scale:hover{transform:scale(1.02)}.hover-glow:hover{box-shadow:var(--shadow-glow)}.status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.5}.status-badge-success{background:var(--color-success-bg);color:var(--color-success)}.status-badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.status-badge-error{background:var(--color-error-bg);color:var(--color-error)}.status-badge-info{background:var(--color-info-bg);color:var(--color-info)}.status-badge-primary{background:var(--color-primary-bg);color:var(--color-primary)}.skeleton{background:linear-gradient(90deg,var(--color-bg-hover) 25%,var(--color-bg-active) 50%,var(--color-bg-hover) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1em;margin-bottom:.5em}.skeleton-title{height:1.5em;width:60%;margin-bottom:1em}.skeleton-avatar{width:40px;height:40px;border-radius:var(--radius-full)}.skeleton-button{height:36px;width:100px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);text-align:center;color:var(--color-text-tertiary)}.empty-state-icon{font-size:48px;margin-bottom:var(--spacing-md);opacity:.5}.empty-state-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.empty-state-description{font-size:var(--font-size-base);color:var(--color-text-tertiary)}.error-state{padding:var(--spacing-md);background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:var(--radius-base);color:var(--color-error)}.error-state-title{font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-xs)}.success-state{padding:var(--spacing-md);background:var(--color-success-bg);border:1px solid var(--color-success);border-radius:var(--radius-base);color:var(--color-success)}.success-state-title{font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-xs)}.warning-state{padding:var(--spacing-md);background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-base);color:var(--color-warning)}.warning-state-title{font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-xs)}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:var(--spacing-md);padding-right:var(--spacing-md)}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.hidden-mobile{display:none}@media (min-width: 768px){.hidden-mobile{display:block}.hidden-mobile.flex{display:flex}.hidden-mobile.inline-flex{display:inline-flex}}.hidden-desktop{display:block}@media (min-width: 768px){.hidden-desktop{display:none}}@media (max-width: 767px){.text-responsive{font-size:var(--font-size-sm)}.text-responsive-lg{font-size:var(--font-size-base)}}@media (max-width: 767px){.p-responsive{padding:var(--spacing-sm)}.px-responsive{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.py-responsive{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.m-responsive{margin:var(--spacing-sm)}.mx-responsive{margin-left:var(--spacing-sm);margin-right:var(--spacing-sm)}.my-responsive{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm)}}.grid-responsive{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media (min-width: 640px){.grid-responsive{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.grid-responsive{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1280px){.grid-responsive{grid-template-columns:repeat(4,1fr)}}.flex-responsive{flex-direction:column}@media (min-width: 768px){.flex-responsive{flex-direction:row}}@media print{.no-print{display:none!important}.print-only{display:block!important}body{background:#fff;color:#000}a{color:#000;text-decoration:underline}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only-focusable:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.skip-link{position:absolute;top:-40px;left:0;z-index:9999;padding:8px 16px;background:var(--color-primary);color:#fff;text-decoration:none;border-radius:0 0 var(--radius-base) 0;transition:top var(--transition-fast)}.skip-link:focus{top:0}.focus-visible-ring{outline:none}.focus-visible-ring:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.focus-visible-ring-inset:focus-visible{outline-offset:-2px}@media (prefers-contrast: high){.high-contrast-border{border:2px solid currentColor}.high-contrast-text{font-weight:var(--font-weight-bold)}}@media (prefers-reduced-motion: reduce){.motion-safe{transition:none;animation:none}}@media print{.print-hidden{display:none!important}.print-visible{display:block!important}a[href]:after{content:" (" attr(href) ")";font-size:.8em;color:#666}a[href^="#"]:after{content:""}}.aria-live{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.keyboard-only:focus{outline:2px solid var(--color-primary);outline-offset:2px}.contrast-check{border:1px dashed var(--color-error)}#nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;-webkit-transform:rotate(3deg) translate(0px,-4px);-ms-transform:rotate(3deg) translate(0px,-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border:solid 2px transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .spinner,.nprogress-custom-parent #nprogress .bar{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}@keyframes nprogress-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:var(--color-text-primary);background-color:var(--color-bg-base);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=dark]{color-scheme:dark}body{margin:0;min-width:320px;min-height:100vh}.ant-layout-sider{box-shadow:4px 0 24px #0000001a}.ant-menu-dark{background:transparent}#nprogress .bar{background:#6366f1!important;height:3px!important;box-shadow:0 0 10px #6366f1,0 0 5px #6366f1}#nprogress .peg{box-shadow:0 0 10px #6366f1,0 0 5px #6366f1}#nprogress .spinner-icon{border-top-color:#6366f1;border-left-color:#6366f1}[data-theme=dark] #nprogress .bar{background:#818cf8!important;box-shadow:0 0 10px #818cf8,0 0 5px #818cf8}[data-theme=dark] #nprogress .peg{box-shadow:0 0 10px #818cf8,0 0 5px #818cf8}[data-theme=dark] #nprogress .spinner-icon{border-top-color:#818cf8;border-left-color:#818cf8}.ant-menu-inline-collapsed-tooltip{z-index:1002!important}.ant-menu-inline-collapsed-tooltip .ant-tooltip-inner{white-space:nowrap;word-break:keep-all;text-overflow:ellipsis}.ant-menu-inline-collapsed .ant-menu-submenu-title,.ant-menu-inline-collapsed .ant-menu-item{position:relative}
