html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}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{--primary: #2563eb;--primary-deep: #1d4ed8;--primary-2: #06b6d4;--cta: #f59e0b;--danger: #dc2626;--grad-soft: linear-gradient(135deg, #eff6ff 0%, #f5f3ff 100%);--bg-grad: radial-gradient(900px 520px at 12% -8%, rgba(96, 165, 250, .45), transparent 55%), radial-gradient(900px 620px at 105% 0%, rgba(34, 211, 238, .34), transparent 55%), radial-gradient(900px 700px at 50% 120%, rgba(167, 139, 250, .3), transparent 55%), linear-gradient(180deg, #eef4ff 0%, #f8fafc 45%, #eef2fb 100%);--glass-bg: rgba(255, 255, 255, .72);--glass-bg-strong: rgba(255, 255, 255, .88);--glass-border: rgba(148, 163, 184, .25);--glass-blur: blur(20px) saturate(160%);--card-shadow: 0 10px 30px -16px rgba(30, 60, 120, .24), inset 0 1px 0 rgba(255, 255, 255, .9);--card-shadow-hover: 0 22px 50px -20px rgba(30, 60, 120, .4), inset 0 1px 0 rgba(255, 255, 255, .9);--modal-shadow: 0 24px 64px -16px rgba(15, 40, 90, .35);--text-strong: #0f172a;--text-body: #334155;--text-muted: #475569;--text-faint: #94a3b8;--border-soft: rgba(148, 163, 184, .28);--border-faint: rgba(148, 163, 184, .16);--sider-bg: linear-gradient(180deg, rgba(255,255,255,.85), rgba(238,246,255,.94));--menu-hover-bg: rgba(59, 130, 246, .1);--menu-selected-bg: linear-gradient(120deg, #dbeafe, #ccfbf1);--menu-selected-border: rgba(37, 99, 235, .28);--input-bg: rgba(255, 255, 255, .85);--table-head-bg: rgba(59, 130, 246, .07);--row-hover-bg: rgba(59, 130, 246, .06);--row-selected-bg: rgba(59, 130, 246, .12);--mask-bg: rgba(30, 41, 59, .35);--primary-soft: #dbeafe;--bg-soft: #f1f5f9;--grid-overlay: rgba(64, 148, 255, .05);--scrollbar-thumb: linear-gradient(rgba(59,130,246,.45), rgba(6,182,212,.45))}[data-theme=dark]{--primary: #60a5fa;--primary-deep: #3b82f6;--primary-2: #22d3ee;--cta: #fbbf24;--danger: #f87171;--grad-soft: linear-gradient(135deg, rgba(37,99,235,.28), rgba(139,92,246,.2));--bg-grad: radial-gradient(900px 520px at 12% -8%, rgba(37, 99, 235, .22), transparent 55%), radial-gradient(900px 620px at 105% 0%, rgba(6, 182, 212, .14), transparent 55%), radial-gradient(900px 700px at 50% 120%, rgba(99, 102, 241, .16), transparent 55%), linear-gradient(180deg, #0b1120 0%, #0f172a 50%, #0b1222 100%);--glass-bg: rgba(15, 23, 42, .62);--glass-bg-strong: rgba(15, 23, 42, .84);--glass-border: rgba(148, 163, 184, .16);--glass-blur: blur(20px) saturate(140%);--card-shadow: 0 10px 30px -16px rgba(0, 0, 0, .65);--card-shadow-hover: 0 20px 48px -20px rgba(0, 0, 0, .75);--modal-shadow: 0 24px 64px -12px rgba(0, 0, 0, .8);--text-strong: #e2e8f0;--text-body: #cbd5e1;--text-muted: #94a3b8;--text-faint: #64748b;--border-soft: rgba(148, 163, 184, .18);--border-faint: rgba(148, 163, 184, .1);--sider-bg: linear-gradient(180deg, rgba(15, 23, 42, .92), rgba(7, 13, 26, .96));--menu-hover-bg: rgba(96, 165, 250, .14);--menu-selected-bg: linear-gradient(120deg, rgba(37, 99, 235, .38), rgba(6, 182, 212, .22));--menu-selected-border: rgba(96, 165, 250, .35);--input-bg: rgba(255, 255, 255, .06);--table-head-bg: rgba(96, 165, 250, .1);--row-hover-bg: rgba(96, 165, 250, .08);--row-selected-bg: rgba(37, 99, 235, .25);--mask-bg: rgba(2, 6, 23, .65);--primary-soft: rgba(37, 99, 235, .3);--bg-soft: rgba(148, 163, 184, .08);--grid-overlay: rgba(96, 165, 250, .05);--scrollbar-thumb: linear-gradient(rgba(96,165,250,.5), rgba(34,211,238,.5))}html,body,#root{min-height:100vh}body{margin:0;color:var(--text-body);background-color:#f8fafc;background-image:var(--bg-grad);background-attachment:fixed;transition:background-color .3s ease,color .3s ease}[data-theme=dark] body{background-color:#0b1120}#root:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:linear-gradient(var(--grid-overlay) 1px,transparent 1px),linear-gradient(90deg,var(--grid-overlay) 1px,transparent 1px);background-size:44px 44px}.ant-app>*,.ant-layout{position:relative;z-index:1}.ant-layout-sider,.ant-layout-sider+.ant-layout,.ant-layout.ant-layout-has-sider{background:transparent!important}.ant-layout .ant-layout-header,.ant-card,.ant-modal-content,.ant-drawer-content,.ant-table,.ant-table-container,.ant-dropdown .ant-dropdown-content,.ant-select-dropdown,.ant-notification-notice{background:var(--glass-bg)!important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)!important;box-shadow:var(--card-shadow)}.ant-layout-sider{border-right:1px solid var(--glass-border)!important;background:var(--sider-bg)!important;backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);transition:all .25s ease}.ant-layout-sider .ant-menu,.ant-layout-sider .ant-menu-light,[data-theme=dark] .ant-layout-sider .ant-menu-dark{background:transparent!important}.ant-layout-sider>div:first-child{color:var(--text-strong)}.ant-menu-light .ant-menu-item-group-title,[data-theme=dark] .ant-menu-dark .ant-menu-item-group-title{color:var(--text-faint)!important;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;padding-top:12px;font-weight:600}.ant-menu-light .ant-menu-item,[data-theme=dark] .ant-menu-dark .ant-menu-item{color:var(--text-body);border-radius:10px;margin:3px 8px;transition:all .2s ease;font-weight:500}.ant-menu-light .ant-menu-item:hover,[data-theme=dark] .ant-menu-dark .ant-menu-item:hover{background:var(--menu-hover-bg)!important;color:var(--primary)!important}.ant-menu-light .ant-menu-item-selected,[data-theme=dark] .ant-menu-dark .ant-menu-item-selected{background:var(--menu-selected-bg)!important;border:1px solid var(--menu-selected-border);color:var(--primary-deep)!important;font-weight:600;box-shadow:0 4px 14px -4px var(--menu-selected-border)}[data-theme=dark] .ant-menu-dark .ant-menu-item-selected{color:#dbeafe!important}.ant-menu-inline .ant-menu-item{padding-inline:16px!important}.ant-layout .ant-layout-header{position:sticky;top:10px;z-index:100;margin:10px 12px 0;border-radius:16px;color:var(--text-body)!important;border:1px solid var(--glass-border)!important;border-bottom:1px solid var(--glass-border)!important;height:60px;line-height:60px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--glass-bg-strong)!important;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);box-shadow:var(--card-shadow);transition:all .3s ease}@media (max-width: 767px){.ant-layout .ant-layout-header{top:6px;margin:6px 8px 0;height:54px;line-height:54px;padding:0 10px;border-radius:14px}}.app-content{padding-top:22px}@media (min-width: 768px){.app-content{padding-top:26px}}.ant-layout .ant-layout-header a,a{color:var(--primary)}.ant-layout .ant-layout-header a:hover,a:hover{color:var(--primary-deep)}.ant-layout .ant-layout-content{color:var(--text-body)}.ant-card{border-radius:16px!important;transition:transform .2s ease,box-shadow .25s ease,background .3s ease,border-color .2s ease}.ant-card:hover{transform:translateY(-2px);box-shadow:var(--card-shadow-hover)}.ant-card-head{border-bottom:1px solid var(--border-faint)!important}.ant-card-head-title{color:var(--text-strong)!important;font-weight:700}.ant-card .ant-card-extra,.ant-card .ant-statistic-title{color:var(--text-muted)!important}.ant-statistic .ant-statistic-content{color:var(--primary)!important;font-weight:700}.glass-card{background:var(--glass-bg)!important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)!important;border-radius:16px!important;box-shadow:var(--card-shadow);transition:transform .2s ease,box-shadow .25s ease}.glass-card:hover{transform:translateY(-2px);box-shadow:var(--card-shadow-hover)}.ant-table{border-radius:14px!important;overflow:hidden}.ant-table-thead>tr>th{background:var(--table-head-bg)!important;color:var(--text-strong)!important;border-bottom:1px solid var(--border-soft)!important;font-weight:600}.ant-table-tbody>tr>td{border-bottom:1px solid var(--border-faint)!important;color:var(--text-body)}.ant-table-tbody>tr:hover>td{background:var(--row-hover-bg)!important}.ant-table-row-selected>td{background:var(--row-selected-bg)!important}.ant-form-item-label>label{color:var(--text-muted)!important}.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-select-selector,.ant-picker,.ant-input-textarea textarea{background:var(--input-bg)!important;border-color:var(--border-soft)!important;color:var(--text-strong)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .2s ease}.ant-input:hover,.ant-input-affix-wrapper:hover,.ant-input-number:hover,.ant-select-selector:hover,.ant-picker:hover{border-color:var(--primary)!important}.ant-input::placeholder{color:var(--text-faint)!important}.ant-select-selection-placeholder{color:var(--text-faint)!important}.ant-btn-primary{background:linear-gradient(135deg,#3b82f6,#06b6d4)!important;border:none!important;box-shadow:0 4px 14px #2563eb40;transition:all .2s ease}.ant-btn-primary:hover{box-shadow:0 8px 20px #2563eb66;filter:brightness(1.06)}.ant-btn:not(.ant-btn-primary):not(.ant-btn-dangerous){background:var(--input-bg)!important;border:1px solid var(--border-soft)!important;color:var(--text-body)!important;transition:all .2s ease}.ant-btn:not(.ant-btn-primary):not(.ant-btn-dangerous):hover{border-color:var(--primary)!important;color:var(--primary)!important}.ant-btn{cursor:pointer}.theme-toggle .anticon{transition:transform .35s ease}.theme-toggle:hover .anticon{transform:rotate(30deg) scale(1.1)}.ant-typography,.ant-typography p{color:var(--text-body)}.ant-typography a{color:var(--primary)}.ant-descriptions .ant-descriptions-item-label{background:var(--table-head-bg)!important;color:var(--primary-deep)!important}[data-theme=dark] .ant-descriptions .ant-descriptions-item-label{color:var(--primary)!important}.ant-descriptions .ant-descriptions-item-content{background:var(--glass-bg)!important;color:var(--text-body)!important}.ant-modal .ant-modal-content{background:var(--glass-bg-strong)!important;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border:1px solid var(--glass-border);border-radius:18px!important;box-shadow:var(--modal-shadow);transition:transform .2s ease}.ant-modal .ant-modal-header{background:transparent!important;border-bottom:1px solid var(--border-faint);margin-bottom:16px}.ant-modal .ant-modal-title{color:var(--text-strong);font-weight:700}.ant-modal .ant-modal-close{color:var(--text-muted)}.ant-modal .ant-modal-close:hover{color:var(--text-strong)}.ant-modal .ant-modal-footer{border-top:1px solid var(--border-faint);margin-top:16px;padding-top:12px}.ant-modal-mask{background:var(--mask-bg)!important;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ant-drawer .ant-drawer-content{background:var(--glass-bg-strong)!important;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}.ant-drawer-header{border-bottom:1px solid var(--border-faint)!important;background:transparent!important}.ant-drawer .ant-drawer-title{color:var(--text-strong);font-weight:700}.ant-drawer .ant-drawer-close{color:var(--text-muted)}.ant-pagination .ant-pagination-item,.ant-pagination .ant-pagination-prev,.ant-pagination .ant-pagination-next{background:var(--input-bg)!important;border-color:var(--border-soft)!important;transition:all .2s ease}.ant-pagination .ant-pagination-item-active{border-color:var(--primary)!important;background:var(--primary-soft)!important}.ant-pagination .ant-pagination-item-active a{color:var(--primary-deep)!important}.ant-progress-inner{background-color:var(--border-soft)}.ant-dropdown .ant-dropdown-content,.ant-select-dropdown{background:var(--glass-bg-strong)!important;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border-radius:12px!important}.ant-dropdown-menu-item{transition:all .15s ease}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:var(--border-faint)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:8px}::-webkit-scrollbar-thumb:hover{filter:brightness(1.15)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.auth-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px}.auth-card{width:400px;max-width:100%;background:var(--glass-bg-strong)!important;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border:1px solid var(--glass-border);border-radius:20px!important;box-shadow:var(--modal-shadow)}@media (max-width: 480px){.auth-card{width:100%}}.app-logo{display:flex;align-items:center;gap:10px;padding:18px 20px;overflow:hidden;white-space:nowrap}.app-logo-icon{flex:0 0 auto;width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:19px;color:#fff;background:linear-gradient(135deg,#3b82f6,#06b6d4);box-shadow:0 6px 16px -4px #2563eb80}.app-logo-text{font-size:15px;font-weight:700;color:var(--text-strong);letter-spacing:.3px}[data-theme=dark] .app-logo-text{color:#e2e8f0}.app-content{padding:16px;max-width:1560px;margin:0 auto;width:100%;box-sizing:border-box;transition:padding .25s ease}@media (min-width: 768px){.app-content{padding:24px}}.app-header-title{font-size:16px;font-weight:700;color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
