:root{--color-primary: #2563eb;--color-primary-light: #60a5fa;--color-primary-dark: #1d4ed8;--color-accent: #06b6d4;--color-accent-soft: rgba(6, 182, 212, .12);--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-tertiary: #64748b;--color-text-disabled: #94a3b8;--color-text-inverse: #f8fafc;--color-bg-base: #eff4fb;--color-bg-container: #ffffff;--color-bg-elevated: #ffffff;--color-bg-hover: #eef4ff;--color-bg-soft: #f7faff;--color-bg-contrast: #0f172a;--color-bg-sidebar: #08111f;--color-surface-primary: #ffffff;--color-surface-secondary: #f7faff;--color-surface-muted: #eef3f9;--color-surface-accent: rgba(37, 99, 235, .08);--color-surface-accent-strong: rgba(37, 99, 235, .14);--color-surface-contrast: rgba(10, 18, 34, .9);--color-sidebar-bg: #08111f;--color-sidebar-bg-elevated: #0d1729;--color-sidebar-panel: rgba(148, 163, 184, .08);--color-sidebar-panel-strong: rgba(148, 163, 184, .12);--color-sidebar-border: rgba(148, 163, 184, .14);--color-sidebar-divider: rgba(148, 163, 184, .1);--color-sidebar-text: rgba(248, 250, 252, .88);--color-sidebar-text-muted: rgba(226, 232, 240, .6);--color-sidebar-text-soft: rgba(226, 232, 240, .42);--color-sidebar-hover: rgba(96, 165, 250, .12);--color-sidebar-active: linear-gradient(135deg, rgba(37, 99, 235, .28), rgba(6, 182, 212, .12));--color-sidebar-active-solid: rgba(37, 99, 235, .22);--color-sidebar-accent: rgba(96, 165, 250, .92);--shadow-sidebar-glow: 0 0 0 1px rgba(96, 165, 250, .2), 0 18px 32px -24px rgba(6, 182, 212, .4);--color-border-base: #d8e3f0;--color-border-light: #e4edf7;--color-border-lighter: #edf3f9;--color-border-strong: #c7d3e3;--color-success: #16a34a;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #2563eb;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-xxl: 48px;--space-3xl: 64px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 12px 28px -18px rgba(15, 23, 42, .18);--shadow-lg: 0 24px 48px -28px rgba(15, 23, 42, .24);--shadow-hover: 0 18px 40px -24px rgba(15, 23, 42, .2);--shadow-focus: 0 0 0 4px rgba(37, 99, 235, .12);--layout-sidebar-width: 288px;--layout-header-height: 76px;--layout-content-max-width: 1480px;--layout-content-narrow-width: 1280px;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 22px;--font-size-xxl: 28px;--font-size-display: 36px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-black: 800;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--font-size-sm);color:var(--color-text-primary);background-color:var(--color-bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{height:100%}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);line-height:1.4}h1{font-size:var(--font-size-xxl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}h4{font-size:var(--font-size-md)}p{margin:0;line-height:1.6}a{color:var(--color-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--color-primary-light)}button{font-family:inherit}.el-card{border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);background:var(--color-surface-primary);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.el-card:hover{border-color:#2563eb24;box-shadow:var(--shadow-hover)}.el-card:has(:where(.el-button,.el-input__wrapper,.el-select__wrapper,.el-textarea__inner):focus-visible),.el-card:has(:where(.el-input__wrapper.is-focus,.el-select__wrapper.is-focused)){border-color:#2563eb2e;box-shadow:var(--shadow-focus)}.el-card:has(.el-table),.el-card:has(.el-form){transition:border-color .2s ease,box-shadow .2s ease}.el-card__header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border-light);font-weight:var(--font-weight-semibold)}.el-card__body{padding:var(--space-lg)}.el-table{width:100%;table-layout:auto;font-size:var(--font-size-sm);--el-table-border-color: var(--color-border-light);--el-table-header-bg-color: var(--color-bg-soft);--el-table-row-hover-bg-color: rgba(37, 99, 235, .05);--el-table-text-color: var(--color-text-secondary);--el-table-header-text-color: var(--color-text-primary)}.el-table th.el-table__cell{background-color:var(--color-bg-soft);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.el-table td.el-table__cell,.el-table th.el-table__cell{padding:12px 8px;white-space:nowrap!important}.el-table .cell{white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}.el-table .el-tag{white-space:nowrap}.el-button{border-radius:var(--radius-md);min-height:36px;padding-inline:16px;font-weight:var(--font-weight-semibold);letter-spacing:0}.el-button+.el-button{margin-left:0}.el-button:focus-visible{box-shadow:var(--shadow-focus)}.el-button--primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-color:transparent;box-shadow:0 14px 28px -18px #2563eb66}.el-button--primary.is-plain,.el-button--primary.is-link{box-shadow:none}.el-button--default{border-color:var(--color-border-base);color:var(--color-text-primary);background:var(--color-surface-primary)}.el-input__wrapper,.el-textarea__inner,.el-select__wrapper{border-radius:var(--radius-md);box-shadow:0 0 0 1px var(--color-border-base) inset}.el-input__wrapper.is-focus,.el-select__wrapper.is-focused,.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--color-primary) inset,var(--shadow-focus)}.el-tag{border-radius:var(--radius-pill);font-weight:var(--font-weight-semibold)}.el-alert{border-radius:var(--radius-lg);border:1px solid rgba(199,211,227,.76);background:linear-gradient(180deg,#fffffff0,#f7fafff5);box-shadow:0 12px 28px -24px #0f172a2e}.el-alert--info{--el-alert-bg-color: transparent;--el-alert-border-color: rgba(59, 130, 246, .16);--el-alert-text-color: var(--color-text-secondary);--el-alert-title-color: var(--color-text-primary);--el-alert-icon-color: var(--color-info)}.el-alert__title,.el-alert__description,.el-alert__content{color:var(--color-text-secondary)}.el-empty{padding:8px 0 0}.el-empty__description p{color:var(--color-text-secondary);line-height:1.75}.el-menu{border-right:none}.el-menu-item,.el-sub-menu__title{border-radius:var(--radius-md);margin:0 var(--space-sm)}.el-breadcrumb__inner,.el-breadcrumb__inner a{color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}.el-form-item__label{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.el-pagination{padding:0}.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev,.el-pagination.is-background .el-pager li{border-radius:var(--radius-md)}.el-drawer{background:linear-gradient(180deg,#fffffffa,#f7fafffa)}.el-drawer__header{margin-bottom:0;padding:var(--space-lg);border-bottom:1px solid var(--color-border-light)}.el-drawer__body{padding:var(--space-lg)}.el-overlay,.el-overlay-dialog,.el-message-box__wrapper{position:fixed;top:0;right:0;bottom:0;left:0}.el-overlay{z-index:3000!important}.el-message,.el-message-container{z-index:4000!important}.el-overlay-dialog,.el-message-box__wrapper{display:flex;align-items:flex-start;justify-content:center;padding:10vh 24px 24px;box-sizing:border-box;overflow-y:auto}.el-message-box{margin:0 auto;max-width:min(420px,calc(100vw - 48px))}.el-message-box.app-message-box{margin-top:0}.page-container{padding:var(--space-xl);max-width:var(--layout-content-max-width);margin:0 auto}.page-container--narrow{max-width:var(--layout-content-narrow-width)}.page-header{margin-bottom:var(--space-lg)}.page-header-card{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);padding:var(--space-xl);border-radius:var(--radius-xl);background:linear-gradient(180deg,#fffffffa,#f7fafff5),radial-gradient(circle at top right,rgba(37,99,235,.06),transparent 28%);border:1px solid rgba(199,211,227,.78);box-shadow:var(--shadow-md);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.page-header-card:hover{border-color:#2563eb29;box-shadow:var(--shadow-hover)}.page-header-card:has(:where(.el-button):focus-visible){border-color:#2563eb33;box-shadow:var(--shadow-focus)}.page-title{margin:0;font-size:var(--font-size-display);font-weight:var(--font-weight-black);color:var(--color-text-primary);line-height:1.08;letter-spacing:-.03em}.page-subtitle{margin-top:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.75;max-width:760px}.page-header-actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.section-card{margin-bottom:var(--space-lg)}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.section-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.2}.section-desc{margin:var(--space-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.7}.toolbar{display:flex;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;justify-content:space-between}.toolbar-left{flex:1;display:flex;gap:var(--space-sm);align-items:center;flex-wrap:wrap}.toolbar-right{display:flex;gap:var(--space-sm);align-items:center;flex-wrap:wrap}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px var(--space-md);flex-wrap:wrap;padding:12px 14px;margin-bottom:var(--space-md);border-radius:var(--radius-lg);background:linear-gradient(180deg,#ffffffeb,#f7fafff5);border:1px solid rgba(199,211,227,.76);box-shadow:0 10px 24px -22px #0f172a33;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.filter-bar:has(:where(.el-input__wrapper.is-focus,.el-select__wrapper.is-focused)){border-color:#2563eb2e;box-shadow:var(--shadow-focus)}.filter-bar :where(.el-button){min-width:88px}.filter-bar-left,.filter-bar-right{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.data-card{border-radius:var(--radius-xl);background:linear-gradient(180deg,#fffffffa,#f9fbfffa);border:1px solid rgba(199,211,227,.72);box-shadow:0 18px 36px -30px #0f172a38;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.data-card:hover{border-color:#2563eb24;box-shadow:var(--shadow-hover)}.data-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.data-card-title{margin:0;font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.data-card-desc{margin:6px 0 0;font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-md);margin-bottom:var(--space-lg)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-md)}.quick-actions{display:flex;gap:12px;flex-wrap:wrap}.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.action-tile{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;border:1px solid rgba(199,211,227,.74);border-radius:var(--radius-xl);background:linear-gradient(180deg,#fffffffa,#f7fafff5),radial-gradient(circle at top right,rgba(37,99,235,.05),transparent 30%);box-shadow:0 14px 30px -26px #0f172a33;text-align:left;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.action-tile:hover{border-color:#2563eb29;box-shadow:var(--shadow-hover);transform:translateY(-2px)}.action-tile__label{font-size:12px;color:var(--color-text-tertiary)}.action-tile__title{color:var(--color-text-primary);font-size:16px;font-weight:var(--font-weight-bold)}.action-tile__desc{font-size:13px;line-height:1.7;color:var(--color-text-secondary)}.notice-list{margin:0;padding-left:18px;color:var(--color-text-secondary);line-height:1.85}.pagination-wrap{display:flex;justify-content:flex-end;margin-top:var(--space-md)}.hero-panel{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--space-lg);padding:var(--space-xl);border-radius:var(--radius-xl);background:linear-gradient(135deg,#2563eb14,#06b6d40a 48%,#fffffffa),radial-gradient(circle at bottom left,rgba(6,182,212,.06),transparent 32%);border:1px solid rgba(37,99,235,.14);box-shadow:var(--shadow-md);margin-bottom:var(--space-lg);transition:box-shadow .2s ease,transform .2s ease}.hero-panel:hover{box-shadow:0 20px 42px -26px #0f172a3d;transform:translateY(-1px)}.hero-title{margin:0;font-size:30px;font-weight:var(--font-weight-black);color:var(--color-text-primary);line-height:1.08;letter-spacing:-.03em}.hero-desc{margin:12px 0 0;max-width:680px;font-size:var(--font-size-sm);line-height:1.8;color:var(--color-text-secondary)}.hero-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hero-meta-card{padding:16px;border-radius:var(--radius-lg);background:#ffffffdb;border:1px solid rgba(199,211,227,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-meta-label{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.hero-meta-value{margin-top:10px;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.mt-xs{margin-top:var(--space-xs)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-xs{margin-bottom:var(--space-xs)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}@media (max-width: 1080px){.page-container{padding:var(--space-lg)}.page-header-card,.hero-panel,.action-grid{grid-template-columns:1fr;display:grid}.hero-meta{grid-template-columns:1fr 1fr}}@media (max-width: 720px){.page-container{padding:var(--space-md)}.page-title{font-size:var(--font-size-xxl)}.hero-title{font-size:24px}.hero-meta{grid-template-columns:1fr}}
