:root{--color-bg:#f5f5f7;--color-bg-elev:#fafafc;--color-surface:#fff;--color-surface-alt:#f5f5f7;--color-text:#1d1d1f;--color-text-secondary:rgba(0,0,0,.64);--color-text-tertiary:rgba(0,0,0,.48);--color-text-muted:rgba(0,0,0,.48);--color-text-disabled:rgba(0,0,0,.28);--color-accent:#0071e3;--color-accent-hover:#0a84f5;--color-accent-active:#0063c8;--color-accent-soft:rgba(0,113,227,.1);--color-accent-soft-hover:rgba(0,113,227,.16);--color-link:#06c;--color-link-dark:#2997ff;--color-success:#34c759;--color-warning:#ff9f0a;--color-danger:#ff453a;--color-info:#8e8e93;--color-border:rgba(0,0,0,.08);--color-divider:rgba(0,0,0,.06);--color-focus-ring:#0071e3;--el-color-primary:#0071e3;--el-color-primary-light-3:#378bec;--el-color-primary-light-5:#66a5f0;--el-color-primary-light-7:#99c2f5;--el-color-primary-light-8:#b3d1f8;--el-color-primary-light-9:#cce0fb;--el-color-primary-dark-2:#005bb7;--font-display:"SF Pro Display",-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue",Helvetica,Arial,sans-serif;--font-text:"SF Pro Text",-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue",Helvetica,Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--fs-nano:10px;--fs-micro:12px;--fs-caption:13px;--fs-body:14px;--fs-lg:15px;--fs-xl:17px;--fs-h4:20px;--fs-h3:24px;--fs-h2:28px;--fs-h1:34px;--fs-display:48px;--lh-tight:1.14;--lh-snug:1.28;--lh-normal:1.47;--lh-loose:1.6;--ls-display:-0.028em;--ls-h1:-0.022em;--ls-h2:-0.02em;--ls-h3:-0.018em;--ls-body:-0.01em;--ls-micro:-0.006em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-pill:980px;--shadow-subtle:0 1px 2px rgba(0,0,0,.04),0 2px 8px rgba(0,0,0,.04);--shadow-card:0 1px 2px rgba(0,0,0,.04),0 6px 24px rgba(0,0,0,.08);--shadow-lift:0 4px 12px rgba(0,0,0,.08),0 12px 40px rgba(0,0,0,.12);--shadow-focus:0 0 0 2px #fff,0 0 0 4px var(--color-focus-ring);--ease-out:cubic-bezier(0.22,0.61,0.36,1);--ease-spring:cubic-bezier(0.34,1.26,0.64,1);--dur-instant:80ms;--dur-fast:150ms;--dur-normal:220ms;--dur-slow:320ms;--layout-aside-w:220px;--layout-topbar-h:56px;--layout-page-max:1440px;--layout-page-pad:28px}*,:after,:before{box-sizing:border-box}#app,body,html{margin:0;padding:0;height:100%;background:var(--color-bg);color:var(--color-text);font-family:var(--font-text);font-size:var(--fs-body);line-height:var(--lh-normal);letter-spacing:var(--ls-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent}body{font-feature-settings:"ss01","cv11"}.num,.stat-value,.tabular-nums,td.is-number{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}h1,h2,h3,h4,h5{margin:0;color:var(--color-text);font-family:var(--font-display);font-weight:600;letter-spacing:var(--ls-h2);line-height:var(--lh-tight)}h1{font-size:var(--fs-h1);letter-spacing:var(--ls-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);letter-spacing:var(--ls-h3)}h4{font-size:var(--fs-h4)}a{color:var(--color-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}a:hover{text-decoration:underline}::-moz-selection{background:var(--color-accent-soft-hover);color:var(--color-text)}::selection{background:var(--color-accent-soft-hover);color:var(--color-text)}:focus{outline:none}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:1px;border-radius:var(--radius-sm)}.el-button.is-circle:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-accent-soft)!important}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.14);border-radius:999px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.24);background-clip:padding-box;border:2px solid transparent}img,svg{display:block;max-width:100%}.page{padding:var(--space-6) var(--layout-page-pad) var(--space-10);max-width:var(--layout-page-max);margin:0 auto}.page-actions{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.section-label{font-size:var(--fs-micro);font-weight:600;color:var(--color-text-tertiary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-2)}.card-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.card-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-h4);letter-spacing:var(--ls-h3);color:var(--color-text)}.card-actions{gap:var(--space-2)}.card-actions,.toolbar{display:flex;align-items:center;flex-wrap:wrap}.toolbar{justify-content:space-between;gap:var(--space-3);margin:var(--space-4) 0 var(--space-2)}.pager{display:flex;justify-content:flex-end;margin-top:var(--space-4)}.muted{color:var(--color-text-tertiary)}.subtle{color:var(--color-text-secondary)}.empty{padding:56px 0;text-align:center;color:var(--color-text-tertiary)}.el-button{font-family:var(--font-text)!important;font-weight:500!important;letter-spacing:var(--ls-body)!important;border-radius:var(--radius-sm)!important;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)!important}.el-button:not(.is-text):not(.is-link):active{transform:scale(.985)}.el-button.el-button--primary:not(.is-link):not(.is-text):not(.is-plain){background-color:var(--color-accent)!important;border-color:var(--color-accent)!important;color:#fff!important}.el-button.el-button--primary:not(.is-link):not(.is-text):not(.is-plain):focus,.el-button.el-button--primary:not(.is-link):not(.is-text):not(.is-plain):hover{background-color:var(--color-accent-hover)!important;border-color:var(--color-accent-hover)!important}.el-button.el-button--primary:not(.is-link):not(.is-text):not(.is-plain):active{background-color:var(--color-accent-active)!important;border-color:var(--color-accent-active)!important}.el-button.el-button--default:not(.is-link):not(.is-text):not(.is-plain){background-color:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}.el-button.el-button--default:not(.is-link):not(.is-text):not(.is-plain):hover{background-color:var(--color-bg-elev)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}.el-button.el-button--success:not(.is-link):not(.is-text):not(.is-plain){background:var(--color-success)!important;border-color:var(--color-success)!important;color:#fff!important}.el-button.el-button--warning:not(.is-link):not(.is-text):not(.is-plain){background:var(--color-warning)!important;border-color:var(--color-warning)!important;color:#fff!important}.el-button.el-button--danger:not(.is-link):not(.is-text):not(.is-plain){background:var(--color-danger)!important;border-color:var(--color-danger)!important;color:#fff!important}.el-button.is-link,.el-button.is-text{background:transparent!important;border:none!important;border-radius:var(--radius-xs)!important;font-weight:500!important;padding-left:6px!important;padding-right:6px!important}.el-button.is-link:hover{background:transparent!important;text-decoration:underline}.el-button.is-text:hover{background:rgba(0,0,0,.04)!important}.el-button.is-circle{border-radius:999px!important}.el-card{border:none!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-card)!important;background:var(--color-surface)!important;overflow:hidden}.el-card__header{border-bottom:1px solid var(--color-divider)!important;padding:16px 20px!important}.el-card__body{padding:20px!important}.el-table{--el-table-border-color:var(--color-divider)!important;--el-table-header-bg-color:#fafafc!important;--el-table-row-hover-bg-color:rgba(0,113,227,.04)!important;font-size:var(--fs-body)!important}.el-table th.el-table__cell{background:#fafafc!important;color:var(--color-text-secondary)!important;font-weight:500!important;font-size:var(--fs-caption)!important;letter-spacing:var(--ls-micro)!important;padding:10px 0!important}.el-table td.el-table__cell{padding:12px 0!important}.el-table .el-table__border-left-patch,.el-table .el-table__inner-wrapper:before{display:none!important}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:#fbfbfd!important}.el-input__wrapper,.el-textarea__inner{border-radius:var(--radius-md)!important;box-shadow:0 0 0 1px var(--color-border) inset!important;transition:box-shadow var(--dur-fast) var(--ease-out)!important;background:var(--color-surface)!important}.el-input__wrapper:hover,.el-textarea__inner:hover{box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)!important}.el-input__wrapper.is-focus,.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--color-accent) inset,0 0 0 3px var(--color-accent-soft)!important}.el-input__inner{color:var(--color-text)!important;letter-spacing:var(--ls-body)!important}.el-input__inner::-moz-placeholder{color:var(--color-text-tertiary)!important}.el-input__inner::placeholder{color:var(--color-text-tertiary)!important}.el-select-dropdown{border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lift)!important;border:none!important}.el-select-dropdown__item.is-hovering{background:var(--color-accent-soft)!important;color:var(--color-text)!important}.el-select-dropdown__item.is-selected{color:var(--color-accent)!important;font-weight:500!important}.el-dialog{border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lift)!important;overflow:hidden}.el-dialog__header{padding:20px 24px 12px!important;margin-right:0!important;border-bottom:1px solid var(--color-divider)}.el-dialog__title{font-family:var(--font-display);font-weight:600!important;font-size:var(--fs-h4)!important;letter-spacing:var(--ls-h3)!important;color:var(--color-text)}.el-dialog__body{padding:20px 24px!important;color:var(--color-text)}.el-dialog__footer{padding:12px 24px 20px!important}.el-overlay{background:rgba(0,0,0,.32)!important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.el-tag{border-radius:var(--radius-pill)!important;font-weight:500!important;letter-spacing:var(--ls-micro)!important;padding:0 10px!important;height:22px!important;line-height:20px!important;border:1px solid transparent!important}.el-tag.el-tag--large{height:26px!important;line-height:24px!important}.el-tag.el-tag--small{height:20px!important;line-height:18px!important}.el-tag.is-round{border-radius:var(--radius-pill)!important}.el-pagination{--el-pagination-bg-color:transparent!important;--el-pagination-button-bg-color:var(--color-surface)!important;--el-pagination-hover-color:var(--color-accent)!important;font-weight:500!important}.el-pagination .btn-next,.el-pagination .btn-prev,.el-pagination .el-pager li{border-radius:var(--radius-sm)!important;background:var(--color-surface)!important;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)!important}.el-pagination.is-background .el-pager li.is-active{background:var(--color-accent)!important;color:#fff!important}.el-dropdown-menu{border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lift)!important;border:none!important;padding:6px!important}.el-dropdown-menu__item{border-radius:var(--radius-sm)!important;margin:2px 0!important;padding:6px 10px!important}.el-dropdown-menu__item:hover,.el-dropdown-menu__item:not(.is-disabled):focus{background:var(--color-accent-soft)!important;color:var(--color-text)!important}.el-tooltip__popper{border-radius:var(--radius-sm)!important;font-size:var(--fs-micro)!important;letter-spacing:var(--ls-micro)!important}.el-message{border-radius:var(--radius-md)!important;border:none!important;box-shadow:var(--shadow-lift)!important;backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);background:hsla(0,0%,100%,.88)!important;min-width:320px!important}.el-message__content{color:var(--color-text)!important;font-weight:500}.el-picker__popper{border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lift)!important;border:none!important}.el-date-editor .el-input__wrapper,.el-date-editor.el-range-editor.el-input__wrapper{border-radius:var(--radius-md)!important}.el-date-table td.today .el-date-table-cell__text{color:var(--color-accent)!important;font-weight:600!important}.el-date-table td.current:not(.disabled) .el-date-table-cell__text{background:var(--color-accent)!important}.el-date-table td.end-date .el-date-table-cell__text,.el-date-table td.start-date .el-date-table-cell__text{background:var(--color-accent)!important;color:#fff!important;border-radius:50%!important}.el-date-table td.in-range .el-date-table-cell{background:var(--color-accent-soft)!important;color:var(--color-text)!important}.el-date-table td.start-date.end-date .el-date-table-cell__text{border-radius:50%!important;background:var(--color-accent)!important;color:#fff!important}.el-divider{border-color:var(--color-divider)!important}.el-divider--horizontal{margin:20px 0!important}.el-descriptions__label{color:var(--color-text-tertiary)!important;font-weight:500!important;font-size:var(--fs-caption)!important}.el-descriptions__content{color:var(--color-text)!important;font-weight:500!important;font-size:var(--fs-body)!important}.el-descriptions--bordered .el-descriptions__cell{border-color:var(--color-divider)!important}.el-transfer-panel{border-radius:var(--radius-md)!important;border-color:var(--color-border)!important}.el-transfer-panel__header{background:var(--color-bg-elev)!important;border-bottom:1px solid var(--color-divider)!important}.el-form-item__label{color:var(--color-text-secondary)!important;font-weight:500!important;letter-spacing:var(--ls-body)!important}.el-menu{border-right:none!important}.el-loading-mask{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:hsla(0,0%,100%,.72)!important}.el-progress-bar__outer{background:var(--color-divider)!important}.el-switch.is-checked .el-switch__core{background-color:var(--color-accent)!important;border-color:var(--color-accent)!important}body.bs-body-dark{background:#050810;color:#e6ecff}body.bs-body-dark ::-moz-selection{background:rgba(41,151,255,.28);color:#fff}body.bs-body-dark ::selection{background:rgba(41,151,255,.28);color:#fff}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width:768px){:root{--layout-page-pad:16px;--fs-h1:28px;--fs-h2:22px;--fs-h3:18px}.page{padding:var(--space-4) var(--layout-page-pad) var(--space-8)}.el-dialog{width:92vw!important}}