@charset "UTF-8";:root{--brand-primary: #2563eb;--brand-primary-deep: #1d4ed8;--brand-gradient: #2563eb;--brand-gradient-hover: #1d4ed8;--brand-gradient-soft: #eff6ff;--brand-glow: rgba(37, 99, 235, .25);--sidebar-bg: #0f172a;--sidebar-bg-deep: #0f172a;--sidebar-gradient: #0f172a;--sidebar-text: #cbd5e1;--sidebar-text-active: #ffffff;--sidebar-active-bg: #2563eb;--app-bg: #f1f5f9;--app-bg-soft: #f8fafc;--card-bg: #ffffff;--card-bg-elevated: #ffffff;--text-primary: #0f172a;--text-regular: #475569;--text-secondary: #94a3b8;--border-color: rgba(0, 0, 0, .1);--border-color-light: rgba(0, 0, 0, .06);--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #d4183d;--color-info: #64748b;--radius-sm: 6px;--radius: 8px;--radius-lg: 10px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--shadow-lg: 0 8px 24px rgba(15, 23, 42, .12);--shadow-brand: 0 1px 2px rgba(15, 23, 42, .04);--gap-sm: 8px;--gap: 16px;--gap-lg: 24px}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;color:var(--text-primary);background:var(--app-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#94a3b873;border-radius:var(--radius-pill);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#64748b99;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}#nprogress .bar{background:var(--brand-primary)!important;height:3px}#nprogress .peg{box-shadow:0 0 8px var(--brand-primary)}.page-container{padding:var(--gap-lg);min-height:calc(100vh - 64px)}.search-form{background:var(--card-bg);padding:20px 20px 4px;border-radius:var(--radius-lg);margin-bottom:var(--gap);box-shadow:var(--shadow-sm);border:1px solid var(--border-color-light)}.table-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color-light);overflow:hidden;transition:box-shadow .28s ease}.table-card:hover{box-shadow:var(--shadow-md)}.table-card .card-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border-color-light)}.table-card .card-header .title{position:relative;font-size:16px;font-weight:600;color:var(--text-primary);padding-left:12px}.table-card .card-header .title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:16px;border-radius:var(--radius-pill);background:var(--brand-primary)}.table-card .card-body{padding:20px 22px}.pagination-wrapper{display:flex;justify-content:flex-end;padding:18px 4px 4px}.card-title{position:relative;font-size:15px;font-weight:600;color:var(--text-primary)}.status-tag.success{color:var(--color-success)}.status-tag.warning{color:var(--color-warning)}.status-tag.danger{color:var(--color-danger)}.status-tag.info{color:var(--color-info)}.section-title{position:relative;font-size:15px;font-weight:600;color:var(--text-primary);padding-left:11px;margin:18px 0 12px}.section-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:15px;border-radius:var(--radius-pill);background:var(--brand-primary)}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px;flex-wrap:wrap}.lang-dropdown .ant-dropdown-menu{max-height:320px;overflow-y:auto}.ant-table-resize-handle{z-index:2;cursor:col-resize}@media (max-width: 768px){.page-container{padding:var(--gap)}.search-form{padding:14px 14px 2px}.ant-form-inline{flex-wrap:wrap;row-gap:8px}.ant-form-inline .ant-form-item{margin-right:12px}.table-card .card-header{flex-wrap:wrap;gap:8px;padding:14px 16px}.table-card .card-body{padding:14px 16px}.batch-bar{flex-wrap:wrap}}@keyframes spv-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page-container>*{animation:spv-fade-up .26s ease both}.page-container>*:nth-child(2){animation-delay:.04s}.fade-enter-active,.fade-leave-active{transition:opacity .18s ease}.fade-enter-from,.fade-leave-to{opacity:0}html[dir=rtl] .login-lang{right:auto;left:28px}html,body,#app{height:100%;margin:0;padding:0}
