:root{
  --v14-ink:#162235;
  --v14-ink-strong:#0f1a2b;
  --v14-muted:#718096;
  --v14-muted-2:#98a5b5;
  --v14-canvas:#f5f7fa;
  --v14-surface:#ffffff;
  --v14-line:#e1e7ef;
  --v14-line-strong:#cbd6e4;
  --v14-blue:#2563eb;
  --v14-blue-soft:#edf4ff;
  --v14-teal:#0f8b8d;
  --v14-danger:#c53b4b;
  --v14-radius:8px;
  --v14-control:42px;
  --v14-shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px rgba(15,23,42,.035);
}

/* V14 is a quiet, information-first system. */
html,body,#app{min-height:100%;}
body{background:var(--v14-canvas)!important;color:var(--v14-ink)!important;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif!important;letter-spacing:0!important;}
body *{letter-spacing:0!important;}
body :where(button,a,input,textarea,.ant-select,.ant-picker,.nav-item,.user-pill):focus-visible{outline:3px solid rgba(37,99,235,.38)!important;outline-offset:2px!important;}

/* Login: full-height split layout with a clean brand canvas. */
body .login-wrap[data-v-9144f21c]{
  min-height:100svh!important;
  padding:0!important;
  background:#f5f7fa!important;
  color:var(--v14-ink)!important;
}
body .login-box[data-v-9144f21c]{
  width:100%!important;
  min-height:100svh!important;
  grid-template-columns:minmax(500px,52%) minmax(420px,48%)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#f5f7fa!important;
}
body .login-header[data-v-9144f21c]{
  min-width:0!important;
  margin:0!important;
  padding:64px clamp(48px,6vw,104px)!important;
  border:0!important;
  border-radius:0!important;
  background:#101b2a!important;
  box-shadow:none!important;
  color:#fff!important;
  overflow:hidden!important;
}
body .login-header[data-v-9144f21c]:before,
body .login-header[data-v-9144f21c]:after{
  content:none!important;
  display:none!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
}
body .login-header[data-v-9144f21c] .login-brand-top{position:relative;z-index:1;}
body .login-logo[data-v-9144f21c]{
  width:50px!important;
  height:50px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(0,0,0,.18)!important;
}
body .login-logo[data-v-9144f21c] img{width:38px!important;height:38px!important;}
body .login-brand-name[data-v-9144f21c]{
  color:#f8fafc!important;
  font-size:17px!important;
  font-weight:760!important;
}
body .login-brand-copy[data-v-9144f21c]{
  position:relative!important;
  z-index:1!important;
  max-width:620px!important;
  margin:auto 0!important;
  padding:64px 0!important;
  transform:none!important;
}
body .login-kicker[data-v-9144f21c]{
  color:#70b8bd!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1.4!important;
}
body .login-title[data-v-9144f21c]{
  max-width:600px!important;
  margin:14px 0 0!important;
  color:#fff!important;
  font-size:60px!important;
  line-height:1.08!important;
  font-weight:760!important;
  text-shadow:none!important;
}
body .login-subtitle[data-v-9144f21c]{
  max-width:430px!important;
  margin:22px 0 0!important;
  color:#aebdcd!important;
  font-size:16px!important;
  line-height:1.8!important;
}
body .login-brand-copy[data-v-9144f21c]:after{display:none!important;content:none!important;}
body .login-brand-foot[data-v-9144f21c]{
  position:relative!important;
  z-index:1!important;
  align-self:flex-start!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#9eafc1!important;
  font-size:12px!important;
}
body .brand-status[data-v-9144f21c]{
  width:7px!important;
  height:7px!important;
  background:#45c5ad!important;
  box-shadow:0 0 0 4px rgba(69,197,173,.12)!important;
}
body .login-panel[data-v-9144f21c]{
  min-width:0!important;
  padding:56px clamp(40px,7vw,112px)!important;
  background:#f5f7fa!important;
  justify-content:center!important;
}
body .login-panel[data-v-9144f21c]:before,
body .login-panel[data-v-9144f21c]:after{display:none!important;content:none!important;}
body .login-panel-head[data-v-9144f21c],
body .login-form[data-v-9144f21c]{
  width:100%!important;
  max-width:424px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body .login-panel-head[data-v-9144f21c]{margin-bottom:34px!important;padding:0!important;}
body .login-panel-kicker[data-v-9144f21c]{
  display:block!important;
  min-height:0!important;
  margin-bottom:10px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--v14-blue)!important;
  font-size:12px!important;
  font-weight:750!important;
}
body .login-panel-head[data-v-9144f21c] h2{
  margin:0!important;
  color:var(--v14-ink-strong)!important;
  font-size:32px!important;
  line-height:1.25!important;
  font-weight:760!important;
}
body .login-panel-head[data-v-9144f21c] p{
  margin:10px 0 0!important;
  color:var(--v14-muted)!important;
  font-size:14px!important;
  line-height:1.65!important;
}
body .login-form[data-v-9144f21c] .ant-form-item{margin-bottom:20px!important;}
body .login-field-label[data-v-9144f21c]{
  display:block!important;
  margin:0 0 8px!important;
  color:#3e4d62!important;
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:650!important;
}
body .login-field-row[data-v-9144f21c] .ant-input,
body .login-field-row[data-v-9144f21c] .ant-input-affix-wrapper{
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  padding:0 14px!important;
  border:1px solid var(--v14-line-strong)!important;
  border-radius:var(--v14-radius)!important;
  background:#fff!important;
  box-shadow:none!important;
  color:var(--v14-ink)!important;
  font-size:14px!important;
}
body .login-wrap[data-v-9144f21c] .login-field-row[data-v-9144f21c] input.ant-input:not(.ant-input-affix-wrapper .ant-input),
body .login-wrap[data-v-9144f21c] .login-field-row[data-v-9144f21c] .ant-input-affix-wrapper,
body .login-wrap[data-v-9144f21c] .login-field-row[data-v-9144f21c] .ant-input-password{
  height:50px!important;
  min-height:50px!important;
  border-radius:var(--v14-radius)!important;
}
body .login-field-row[data-v-9144f21c] .ant-input-affix-wrapper input.ant-input{
  height:48px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .login-field-row[data-v-9144f21c] .ant-input:hover,
body .login-field-row[data-v-9144f21c] .ant-input-affix-wrapper:hover{border-color:#9bb4d4!important;}
body .login-field-row[data-v-9144f21c] .ant-input:focus,
body .login-field-row[data-v-9144f21c] .ant-input-affix-wrapper-focused{
  border-color:var(--v14-blue)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.12)!important;
}
body .login-field-row[data-v-9144f21c] .ant-input-password-icon{
  display:inline-flex!important;
  width:28px!important;
  height:28px!important;
  align-items:center!important;
  justify-content:center!important;
  color:#77869a!important;
  font-size:17px!important;
}
body .login-field-row[data-v-9144f21c] .ant-input-password-icon:hover{color:var(--v14-blue)!important;}
body .remember-row[data-v-9144f21c]{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 22px!important;
  color:#68778b!important;
  font-size:13px!important;
  line-height:18px!important;
}
body .remember-checkbox[data-v-9144f21c]{width:16px!important;height:16px!important;accent-color:var(--v14-blue)!important;}
body .login-btn[data-v-9144f21c]{
  height:50px!important;
  margin:0!important;
  border:1px solid #193b75!important;
  border-radius:var(--v14-radius)!important;
  background:#193b75!important;
  box-shadow:0 8px 18px rgba(25,59,117,.20)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:700!important;
  transition:background .16s,border-color .16s,box-shadow .16s!important;
}
body .login-btn[data-v-9144f21c]:hover{
  transform:none!important;
  border-color:#24529a!important;
  background:#24529a!important;
  box-shadow:0 10px 22px rgba(25,59,117,.24)!important;
}
body .login-btn[data-v-9144f21c]:active{transform:none!important;background:#12305f!important;}
body .login-form[data-v-9144f21c] .ant-form-item-explain-error{padding-top:4px!important;font-size:12px!important;color:var(--v14-danger)!important;}

/* Application shell: restrained navigation, clear active state, stable header. */
body .main-layout[data-v-c8bf22f0]{background:var(--v14-canvas)!important;color:var(--v14-ink)!important;}
body .sider[data-v-c8bf22f0]{
  width:232px!important;
  background:#111b2a!important;
  border-right:1px solid #1f3046!important;
  box-shadow:none!important;
}
body .sider.collapsed[data-v-c8bf22f0]{width:68px!important;}
body .logo-area[data-v-c8bf22f0]{
  height:68px!important;
  padding:0 17px!important;
  gap:11px!important;
  border-bottom:1px solid #22334a!important;
  background:#111b2a!important;
}
body .logo-icon[data-v-c8bf22f0]{
  width:36px!important;
  height:36px!important;
  border:1px solid #cbd8e9!important;
  border-radius:9px!important;
  background:#fff url("/favicon.ico?v=202607121945") center/28px no-repeat!important;
  box-shadow:0 5px 14px rgba(0,0,0,.18)!important;
  font-size:0!important;
}
body .logo-text[data-v-c8bf22f0]{color:#f5f8fc!important;font-size:14px!important;font-weight:700!important;}
body .nav[data-v-c8bf22f0]{padding:14px 10px 18px!important;}
body .nav-group-label[data-v-c8bf22f0]{height:30px!important;padding:0 10px 7px!important;color:#7789a1!important;font-size:10px!important;font-weight:700!important;}
body .nav-item[data-v-c8bf22f0]{
  min-height:40px!important;
  margin:3px 0!important;
  padding:9px 11px!important;
  gap:10px!important;
  border-radius:7px!important;
  color:#aebdd0!important;
  font-size:13px!important;
  font-weight:600!important;
  transition:background .16s,color .16s!important;
}
body .nav-item[data-v-c8bf22f0]:hover{transform:none!important;background:#19283b!important;color:#fff!important;}
body .nav-item.active[data-v-c8bf22f0]{
  background:#203c66!important;
  color:#fff!important;
  font-weight:700!important;
  box-shadow:inset 3px 0 0 #60a5fa!important;
}
body .nav-item.active[data-v-c8bf22f0]:before{display:none!important;}
body .nav-icon[data-v-c8bf22f0]{width:20px!important;height:20px!important;opacity:.86!important;filter:none!important;}
body .nav-item.active[data-v-c8bf22f0] .nav-icon{opacity:1!important;}
body .nav-badge[data-v-c8bf22f0]{background:#c5485a!important;}
body .collapse-btn[data-v-c8bf22f0]{height:46px!important;border-top:1px solid #22334a!important;background:#111b2a!important;color:#8294aa!important;}
body .collapse-btn[data-v-c8bf22f0]:hover{background:#19283b!important;color:#fff!important;}
body .topbar[data-v-c8bf22f0]{
  height:64px!important;
  padding:0 26px!important;
  background:#fff!important;
  border-bottom:1px solid var(--v14-line)!important;
  box-shadow:0 1px 2px rgba(15,23,42,.025)!important;
  backdrop-filter:none!important;
}
body .breadcrumb-home[data-v-c8bf22f0]{color:#8b99aa!important;font-size:12px!important;}
body .breadcrumb-sep[data-v-c8bf22f0]{color:#c1ccd8!important;}
body .breadcrumb-cur[data-v-c8bf22f0]{color:var(--v14-ink-strong)!important;font-size:14px!important;font-weight:700!important;}
body .user-pill[data-v-c8bf22f0]{height:40px!important;border-radius:7px!important;background:#f8fafc!important;border-color:var(--v14-line)!important;box-shadow:none!important;}
body .user-pill[data-v-c8bf22f0]:hover{background:var(--v14-blue-soft)!important;border-color:#c7d9f5!important;box-shadow:none!important;}
body .user-avatar[data-v-c8bf22f0]{width:30px!important;height:30px!important;border-radius:7px!important;background:#193b75!important;box-shadow:none!important;}
body .user-name[data-v-c8bf22f0]{color:var(--v14-ink)!important;font-size:12.5px!important;}
body .user-role[data-v-c8bf22f0]{color:#8a98aa!important;}
body .main-content[data-v-c8bf22f0]{background:var(--v14-canvas)!important;}

/* Shared surfaces and controls. */
body .page,body .dashboard[data-v-ae17fcd8]{max-width:1720px!important;padding:28px 32px 42px!important;gap:18px!important;}
body .page-header{min-height:48px!important;padding:0 2px!important;}
body .page-title{margin:0!important;color:var(--v14-ink-strong)!important;font-size:23px!important;line-height:1.25!important;font-weight:740!important;}
body .card,body .filter-bar,body .ant-card,body .batch-card[data-v-57970685],body .chart-row>.card[data-v-ae17fcd8]{
  border:1px solid var(--v14-line)!important;
  border-radius:var(--v14-radius)!important;
  background:var(--v14-surface)!important;
  box-shadow:var(--v14-shadow)!important;
  backdrop-filter:none!important;
}
body .card:hover,body .ant-card:hover,body .batch-card[data-v-57970685]:hover{box-shadow:0 2px 4px rgba(15,23,42,.05),0 12px 30px rgba(15,23,42,.055)!important;}
body .card-header,body .ant-card-head,body .batch-card[data-v-57970685] .card-header{
  min-height:56px!important;
  padding:0 20px!important;
  display:flex!important;
  align-items:center!important;
  background:#fff!important;
  border-bottom:1px solid #e7ecf2!important;
}
body .card-title,body .ant-card-head-title{color:var(--v14-ink-strong)!important;font-size:14px!important;font-weight:720!important;}
body .card-body{padding:20px!important;}
body .batch-card:first-child[data-v-57970685] .card-body{
  background:#fff!important;
}
body .result-card[data-v-57970685]{
  border-radius:var(--v14-radius)!important;
  background:#152238!important;
  box-shadow:0 16px 36px rgba(15,23,42,.18)!important;
}
body .filter-bar{padding:12px 14px!important;gap:9px!important;}
body .stat-card[data-v-ae17fcd8]{border-radius:var(--v14-radius)!important;box-shadow:var(--v14-shadow)!important;}
body .stat-card[data-v-ae17fcd8]:hover{transform:translateY(-2px)!important;}
body .ant-btn{height:36px!important;padding:0 15px!important;border-radius:7px!important;font-size:13px!important;font-weight:650!important;box-shadow:none!important;transition:background .16s,border-color .16s,color .16s,box-shadow .16s!important;}
body .ant-btn:not(:disabled):hover{transform:none!important;}
body .ant-btn-primary:not(:disabled){background:#193b75!important;border-color:#193b75!important;box-shadow:0 5px 12px rgba(25,59,117,.16)!important;}
body .ant-btn-primary:not(:disabled):hover{background:#24529a!important;border-color:#24529a!important;}
body .ant-btn-dangerous:not(:disabled),body .ant-btn-primary.ant-btn-dangerous:not(:disabled){background:#c53b4b!important;border-color:#c53b4b!important;}
body .ant-btn-lg{height:44px!important;padding:0 19px!important;border-radius:7px!important;}
body .ant-input,body .ant-input-affix-wrapper,body .ant-select-selector,body .ant-picker,body .ant-input-number,body textarea{
  border-radius:7px!important;
  border-color:var(--v14-line-strong)!important;
  background:#fff!important;
  box-shadow:none!important;
}
body .ant-input:hover,body .ant-input-affix-wrapper:hover,body .ant-select-selector:hover,body .ant-picker:hover,body .ant-input-number:hover,body textarea:hover{border-color:#9eb6d6!important;}
body .ant-input:focus,body .ant-input-affix-wrapper-focused,body .ant-select-focused .ant-select-selector,body .ant-picker-focused,body .ant-input-number-focused,body textarea:focus{border-color:var(--v14-blue)!important;box-shadow:0 0 0 3px rgba(37,99,235,.11)!important;}
body .ant-table-wrapper{border:1px solid var(--v14-line)!important;border-radius:var(--v14-radius)!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important;}
body .ant-table-thead>tr>th{height:46px!important;padding:0 14px!important;vertical-align:middle!important;background:#f7f9fc!important;border-bottom:1px solid #e4ebf4!important;color:#5c6b7e!important;font-size:12px!important;font-weight:700!important;}
body .ant-table-tbody>tr>td{height:46px!important;padding:0 14px!important;vertical-align:middle!important;border-bottom:1px solid #edf1f5!important;color:#27364b!important;font-size:13px!important;}
body .ant-table-tbody>tr:hover>td{background:#f8fbff!important;}
body .ant-modal-content{border-radius:10px!important;box-shadow:0 24px 60px rgba(15,23,42,.18)!important;}
body .ant-modal-header{border-bottom:1px solid #e7ecf2!important;}
body .ant-dropdown-menu,body .ant-select-dropdown,body .ant-popover-inner{border-radius:8px!important;box-shadow:0 12px 28px rgba(15,23,42,.14)!important;}

@media (max-width:900px){
  body .login-box[data-v-9144f21c]{grid-template-columns:1fr!important;grid-template-rows:auto 1fr!important;}
  body .login-header[data-v-9144f21c]{min-height:240px!important;padding:34px!important;}
  body .login-brand-copy[data-v-9144f21c]{padding:34px 0 18px!important;}
  body .login-title[data-v-9144f21c]{font-size:38px!important;}
  body .login-subtitle[data-v-9144f21c]{margin-top:12px!important;font-size:14px!important;}
  body .login-brand-foot[data-v-9144f21c]{display:none!important;}
  body .login-panel[data-v-9144f21c]{padding:46px 40px 64px!important;}
  body .page,body .dashboard[data-v-ae17fcd8]{padding:22px 20px 32px!important;}
}
@media (max-width:768px){
  body .sider[data-v-c8bf22f0]{width:232px!important;}
  body .topbar[data-v-c8bf22f0]{height:56px!important;padding:0 14px!important;}
  body .page,body .dashboard[data-v-ae17fcd8]{padding:16px 12px 26px!important;gap:12px!important;}
  body .page-title{font-size:20px!important;}
  body .card-header,body .ant-card-head,body .batch-card[data-v-57970685] .card-header{min-height:52px!important;padding:0 14px!important;}
  body .card-body{padding:14px!important;}
}
@media (max-width:480px){
  body .login-header[data-v-9144f21c]{min-height:190px!important;padding:25px 24px!important;}
  body .login-logo[data-v-9144f21c]{width:46px!important;height:46px!important;}
  body .login-logo[data-v-9144f21c] img{width:35px!important;height:35px!important;}
  body .login-brand-name[data-v-9144f21c]{font-size:15px!important;}
  body .login-brand-copy[data-v-9144f21c]{padding:28px 0 6px!important;}
  body .login-title[data-v-9144f21c]{font-size:29px!important;}
  body .login-subtitle[data-v-9144f21c]{font-size:12.5px!important;}
  body .login-panel[data-v-9144f21c]{padding:38px 24px 50px!important;justify-content:flex-start!important;}
  body .login-panel-head[data-v-9144f21c] h2{font-size:26px!important;}
}
