/* ============================================================
   DGA 舱单进口案例 · 企业端视图样式（css/enterprise.css）
   依赖：design-tokens.css + ui.css。本文件只放企业端视图级样式。
   ============================================================ */

/* ---------- 登录页 ---------- */
.login-screen{
  position:relative; min-height:100vh; overflow:hidden;
  background:#050f1c;
}
.login-bg-stage{position:absolute; inset:-48px; animation:login-kenburns 36s ease-in-out infinite alternate; will-change:transform}
.login-bg{position:absolute; inset:0; background:url("../assets/login-bg.jpg") center/cover no-repeat;}
.login-bg.login-bg-blur{
  filter:blur(26px);
  -webkit-mask-image:linear-gradient(90deg, transparent 55%, #000 78%);
  mask-image:linear-gradient(90deg, transparent 55%, #000 78%);
}
@keyframes login-kenburns{
  0%{transform:scale(1.02) translate(0,0)}
  100%{transform:scale(1.13) translate(-2.4%, -1.4%)}
}
.login-tone{position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(5,14,28,.10) 0%, rgba(5,14,28,0) 42%, rgba(5,14,28,.32) 100%),
             linear-gradient(90deg, rgba(5,14,28,0) 0%, rgba(5,14,28,.08) 60%, rgba(5,14,28,.26) 100%);}
.login-tone::after{content:""; position:absolute; inset:0;
  background:radial-gradient(880px 600px at 86% 50%, rgba(5,14,28,.32), transparent 70%);}
.login-topbar{position:absolute; top:34px; left:40px; z-index:30}
.login-logo-chip{
  display:flex; align-items:center; gap:13px; padding:9px 16px 9px 12px;
  background:#fff; border-radius:var(--brand-border-radius); box-shadow:0 8px 26px rgba(0,0,0,.32);
}
.login-logo-chip .brand-logo{height:38px; width:auto; display:block}
.login-logo-chip .sep{width:1px; height:32px; background:var(--brand-color-border)}
.login-logo-chip .sys{display:flex; flex-direction:column; line-height:1.12}
.login-logo-chip .sys b{color:var(--brand-color-primary); font-size:15px; letter-spacing:.4px; font-weight:700}
.login-logo-chip .sys span{color:var(--brand-color-text-secondary); font-size:10px; letter-spacing:1.4px; text-transform:uppercase; margin-top:3px}
.login-panel{position:absolute; top:0; bottom:0; right:0; width:46%; z-index:10;
  display:flex; align-items:center; justify-content:center; padding:0 3vw}
.login-card{
  width:404px; max-width:100%;
  background:var(--brand-color-bg-container); border-radius:var(--brand-border-radius-lg);
  padding:40px 38px 32px;
  box-shadow:0 1px 2px rgba(16,24,40,.05), 0 1px 3px rgba(16,24,40,.06), 0 28px 70px rgba(0,0,0,.5);
}
.login-brand-title .eyebrow{display:flex; align-items:center; gap:10px; color:var(--brand-color-primary); font-size:11px; letter-spacing:2.6px; text-transform:uppercase; font-weight:700; margin-bottom:14px}
.login-brand-title .eyebrow::before{content:""; width:24px; height:2px; background:var(--brand-color-primary)}
.login-brand-title h1{font-size:26px; font-weight:700; letter-spacing:.5px; color:#1f2d3d; line-height:1.22}
.login-brand-title small{display:block; font-size:12.5px; font-weight:500; color:var(--brand-color-text-secondary); letter-spacing:1.2px; margin-top:7px; text-transform:uppercase; line-height:1.5}
.login-form{display:flex; flex-direction:column; gap:15px; margin-top:30px}
.login-form .fld{display:flex; flex-direction:column; gap:7px}
.login-form .fld label{font-size:12.5px; font-weight:600; color:var(--brand-color-text); letter-spacing:.4px}
.login-form .fld .wrap{position:relative; display:flex; align-items:center}
.login-form .fld .ico{position:absolute; left:13px; width:16px; height:16px; color:var(--brand-color-text-tertiary); z-index:1}
.login-form .fld input{
  width:100%; height:var(--brand-control-height); padding:0 12px 0 40px;
  font-size:14px; font-family:inherit; color:var(--brand-color-text);
  border:1px solid var(--brand-color-border); border-radius:var(--brand-border-radius-sm);
  transition:border-color .18s, box-shadow .18s; letter-spacing:.3px;
}
.login-form .fld input::placeholder{color:var(--brand-color-text-tertiary)}
.login-form .fld input:hover{border-color:#c8c8c8}
.login-form .fld input:focus{outline:none; border-color:var(--brand-color-primary); box-shadow:0 0 0 3px rgba(31,79,121,.12)}
.login-btn{
  height:var(--brand-control-height); border:none; border-radius:var(--brand-border-radius-sm);
  background:var(--brand-color-primary); color:#fff; font-size:15px; font-weight:600; cursor:pointer;
  font-family:inherit; letter-spacing:.18em; transition:background var(--brand-motion-duration-fast), transform .12s;
}
.login-btn:hover{background:var(--brand-color-primary-hover)}
.login-btn:active{background:var(--brand-color-primary-active); transform:translateY(1px)}
.login-btn:disabled{opacity:.7; cursor:wait}
.login-fill{font-size:12px; color:var(--brand-color-info); background:var(--blue-1); border-radius:var(--brand-border-radius-sm); padding:8px 12px}
.login-hint{margin-top:0; font-size:11.5px; color:var(--brand-color-text-tertiary); text-align:center; padding:0 10px}
.login-lang-top{position:absolute; top:34px; right:calc(23vw - 202px); z-index:30; display:flex; align-items:center; gap:10px}
.login-lang-top .lbl{font-size:11px; color:rgba(255,255,255,.62); letter-spacing:1px; text-transform:uppercase}
#loginLangSel{
  width:150px; height:40px; padding:0 36px 0 14px;
  background:var(--blue-1); border:1px solid var(--blue-3);
  border-radius:var(--brand-border-radius);
  color:var(--brand-color-primary); font-size:14px; font-weight:600;
  font-family:inherit; cursor:pointer; letter-spacing:.3px;
  appearance:none; -webkit-appearance:none; -moz-appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%231f4f79' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 12px center;
  transition:border-color .15s, box-shadow .15s;
}
#loginLangSel:hover{border-color:var(--brand-color-primary)}
#loginLangSel:focus{outline:none; border-color:var(--brand-color-primary); box-shadow:0 0 0 3px rgba(31,79,121,.12)}
@media (prefers-reduced-motion: reduce){ .login-bg-stage{animation:none} }

/* ---------- 工作台 ---------- */
.btn.big{font-size:15px;padding:9px 22px;font-weight:600;box-shadow:0 2px 6px rgba(31,79,121,.28)}
.btn.big:hover{box-shadow:0 3px 10px rgba(31,79,121,.34)}
td.acts{white-space:nowrap}
td.acts .btn{margin-right:6px;vertical-align:middle}
.dash-alerts{display:flex;flex-direction:column;gap:10px;margin-bottom:var(--brand-size)}
.alert-card{
  display:flex;align-items:center;gap:12px;padding:12px var(--brand-size);
  border-radius:var(--brand-border-radius);border:var(--brand-line-width) solid #ffe58f;
  background:var(--gold-1);
}
.alert-card.danger{border-color:#ffa39e;background:var(--red-1)}
.alert-card .ic{font-size:16px;flex:0 0 auto}
.alert-card .body{flex:1;min-width:0}
.alert-card .body b{display:block;font-size:13px;color:var(--brand-color-text)}
.alert-card .body p{font-size:12.5px;color:var(--brand-color-text-secondary);margin-top:2px}
.alert-card .btn{flex:0 0 auto}

/* ---------- 申报表单 ---------- */
.form-wrap{width:100%}
.form-card{
  background:var(--brand-color-bg-container);border-radius:var(--brand-border-radius-lg);
  box-shadow:0 1px 2px rgba(16,24,40,.05),0 1px 3px rgba(16,24,40,.06);
  margin-bottom:var(--brand-size);overflow:hidden;
}
.form-sec-h{
  padding:13px var(--brand-size);font-weight:var(--brand-font-weight-strong);font-size:14px;
  background:var(--brand-color-fill-tertiary);border-bottom:var(--brand-line-width) solid var(--brand-color-border-secondary);
  display:flex;align-items:center;justify-content:space-between;
}
.form-sec-h .code{font-size:11px;font-weight:400;color:var(--brand-color-text-tertiary)}
.form-sec-h .act{font-weight:400;font-size:12.5px;color:var(--brand-color-link);cursor:pointer}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px var(--brand-size-lg);padding:var(--brand-size)}
.form-grid.one{grid-template-columns:1fr}
.f-item{display:flex;flex-direction:column;gap:5px;min-width:0}
.f-item.full{grid-column:1 / -1}
.f-item label{font-size:12.5px;color:var(--brand-color-text-secondary)}
.f-item label .req{color:var(--brand-color-error);margin-left:2px}
.f-item label .fmt{color:var(--brand-color-text-tertiary);margin-left:6px;font-size:11px}
.f-item input,.f-item select,.f-item textarea{
  border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);
  padding:6px 10px;font-size:13px;font-family:inherit;color:var(--brand-color-text);background:#fff;
  transition:border-color var(--brand-motion-duration-fast);
}
.f-item input:focus,.f-item select:focus,.f-item textarea:focus{outline:none;border-color:var(--brand-color-primary)}
.f-item input[readonly],.f-item input:disabled{background:var(--brand-color-fill-tertiary);color:var(--brand-color-text-tertiary)}
.f-item input.invalid,.f-item select.invalid{border-color:var(--brand-color-error);background:var(--red-1)}

/* ---------- 字典下拉（可搜索） ---------- */
.combobox{position:relative;width:100%}
.combobox .cb-input{width:100%;border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);padding:6px 26px 6px 10px;font-size:13px;font-family:inherit;color:var(--brand-color-text);background:#fff;transition:border-color var(--brand-motion-duration-fast)}
.combobox .cb-input:focus{outline:none;border-color:var(--brand-color-primary)}
.combobox .cb-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:9px;color:var(--brand-color-text-tertiary);pointer-events:none}
.cb-list{position:absolute;left:0;right:0;top:calc(100% + 4px);max-height:220px;overflow-y:auto;background:#fff;border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);box-shadow:0 6px 18px rgba(16,24,40,.14);z-index:50}
.cb-item{padding:7px 12px;font-size:12.5px;color:var(--brand-color-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cb-item:hover{background:var(--blue-1)}
.cb-empty{padding:8px 12px;font-size:12px;color:var(--brand-color-text-tertiary)}
.f-err{font-size:11.5px;color:var(--brand-color-error);display:flex;align-items:center;gap:4px}
.f-err .code{font-family:var(--brand-font-family-code);background:var(--red-1);border-radius:3px;padding:0 4px}
.f-err-multi{grid-column:1/-1;display:flex;flex-direction:column;gap:6px;background:var(--red-1);border:var(--brand-line-width) solid #ffa39e;border-radius:var(--brand-border-radius-sm);padding:10px 12px}
.f-err-multi .t{font-size:12.5px;font-weight:600;color:var(--brand-color-error)}
.cargo-row{border:var(--brand-line-width) solid var(--brand-color-border-secondary);border-radius:var(--brand-border-radius);padding:var(--brand-size-sm);margin-bottom:var(--brand-size-sm);background:var(--brand-color-fill-quaternary)}
.cargo-row .row-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:12.5px;color:var(--brand-color-text-secondary)}
.cargo-row .row-h b{color:var(--brand-color-text)}
.attach-list{display:flex;flex-wrap:wrap;gap:10px;padding:var(--brand-size);padding-top:4px}
.attach-chip{
  display:flex;align-items:center;gap:8px;border:var(--brand-line-width) dashed var(--brand-color-border);
  border-radius:var(--brand-border-radius-sm);padding:9px 12px;font-size:12.5px;color:var(--brand-color-text-secondary);
  cursor:pointer;background:var(--brand-color-fill-quaternary);transition:all var(--brand-motion-duration-fast);
}
.attach-chip:hover{border-color:var(--brand-color-primary);color:var(--brand-color-primary)}
.attach-chip.on{border-style:solid;border-color:var(--brand-color-success);color:var(--brand-color-success);background:var(--green-1)}
.attach-chip.on::after{content:"✓";font-weight:700}
.attach-high{margin:4px var(--brand-size) var(--brand-size);font-size:12px;color:var(--brand-color-warning);background:var(--gold-1);border-radius:var(--brand-border-radius-sm);padding:8px 12px}
.form-foot{display:flex;align-items:center;gap:12px;padding:12px var(--brand-size);position:sticky;bottom:0;background:var(--brand-color-bg-container);border-top:var(--brand-line-width) solid var(--brand-color-border-secondary);z-index:2}
.scene-bar{display:flex;align-items:center;gap:10px;padding:12px var(--brand-size);background:var(--blue-1);border-radius:var(--brand-border-radius) var(--brand-border-radius) 0 0;border-bottom:var(--brand-line-width) solid var(--brand-color-border-secondary);flex-wrap:wrap}
.scene-bar .lbl{font-size:12.5px;color:var(--brand-color-text-secondary);font-weight:600}
.scene-bar .tip{flex:1;min-width:220px;font-size:11.5px;color:var(--brand-color-info)}

/* ---------- 进度时间线 ---------- */
.progress-wrap{width:100%}
.timeline-card{
  background:var(--brand-color-bg-container);border-radius:var(--brand-border-radius-lg);
  box-shadow:0 1px 2px rgba(16,24,40,.05),0 1px 3px rgba(16,24,40,.06);padding:var(--brand-size-lg);margin-bottom:var(--brand-size);
}
.tl-steps{display:flex;align-items:flex-start;overflow-x:auto;padding:4px 0}
.tl-step{display:flex;flex-direction:column;align-items:center;min-width:88px;flex:0 0 auto;text-align:center}
.tl-step .dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--brand-color-border);background:#fff}
.tl-step.done .dot{background:var(--brand-color-primary);border-color:var(--brand-color-primary)}
.tl-step.warn .dot{background:var(--brand-color-warning);border-color:var(--brand-color-warning)}
.tl-step.err .dot{background:var(--brand-color-error);border-color:var(--brand-color-error)}
.tl-step.cur .dot{box-shadow:0 0 0 4px rgba(31,79,121,.14)}
.tl-step .lbl{font-size:12.5px;color:var(--brand-color-text);margin-top:7px;font-weight:500}
.tl-step .tm{font-size:11px;color:var(--brand-color-text-tertiary);margin-top:2px}
.tl-step .note{display:inline-block;margin-top:5px;font-size:11px;padding:2px 7px;border-radius:var(--brand-border-radius-sm);background:var(--green-1);color:var(--brand-color-success)}
.tl-step .note.warn{background:var(--gold-1);color:var(--brand-color-warning)}
.tl-step .note.err{background:var(--red-1);color:var(--brand-color-error)}
.tl-step .note.info{background:var(--blue-1);color:var(--brand-color-info)}
.tl-conn{flex:1;min-width:18px;height:2px;background:var(--brand-color-border);margin-top:7px}
.tl-conn.done{background:var(--brand-color-primary-bg)}
.tl-empty{font-size:12.5px;color:var(--brand-color-text-tertiary);padding:6px 0}
.warn-panel{border:var(--brand-line-width) solid #ffa39e;border-radius:var(--brand-border-radius);padding:12px var(--brand-size);margin-top:10px;background:var(--red-1)}
.warn-panel b{font-size:13px;color:var(--brand-color-error);display:block;margin-bottom:4px}
.warn-panel p{font-size:12.5px;color:var(--brand-color-text)}
.draft-banner{display:flex;align-items:center;gap:12px;padding:10px var(--brand-size);background:var(--blue-1);border-bottom:var(--brand-line-width) solid var(--brand-color-border-secondary);font-size:12.5px}
.draft-banner .t{color:var(--brand-color-primary);font-weight:600}
.draft-banner .tip{color:var(--brand-color-text-secondary)}
.risk-panel{border:var(--brand-line-width) solid var(--brand-color-border-secondary);border-radius:var(--brand-border-radius);padding:12px var(--brand-size);margin-top:10px;background:var(--brand-color-fill-quaternary)}
.risk-panel.high{border-color:#ffa39e;background:var(--red-1)}
.risk-panel.medium{border-color:#ffe58f;background:var(--gold-1)}
.risk-panel .rh{font-size:12.5px;font-weight:600;color:var(--brand-color-text);margin-bottom:6px}
.risk-panel .rh span{font-weight:400;font-size:11.5px;color:var(--brand-color-text-tertiary)}
.risk-panel li{font-size:12.5px;color:var(--brand-color-text-secondary);margin:3px 0 3px 16px}
.correction-box{border:var(--brand-line-width) solid #ffa39e;background:var(--red-1);border-radius:var(--brand-border-radius);padding:12px var(--brand-size);margin-top:10px}
.correction-box b{font-size:13px;color:var(--brand-color-error);display:block;margin-bottom:4px}
.correction-box p{font-size:12.5px;color:var(--brand-color-text)}

/* ---------- 变更申请 ---------- */
.amend-list-row{display:flex;align-items:center;gap:12px;padding:12px var(--brand-size);border-top:var(--brand-line-width) solid var(--brand-color-border-secondary)}
.amend-list-row:first-of-type{border-top:none}
.amend-list-row .info{flex:1;min-width:0}
.amend-list-row .info b{font-size:13px}
.amend-list-row .info p{font-size:12px;color:var(--brand-color-text-tertiary);margin-top:2px}
.amend-form{padding:var(--brand-size);display:flex;flex-direction:column;gap:12px}
.type-row{display:flex;gap:10px;flex-wrap:wrap}
.type-opt{border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);padding:8px 14px;font-size:12.5px;cursor:pointer;color:var(--brand-color-text-secondary);background:#fff;transition:all var(--brand-motion-duration-fast)}
.type-opt:hover{border-color:var(--brand-color-primary);color:var(--brand-color-primary)}
.type-opt.on{border-color:var(--brand-color-primary);background:var(--blue-1);color:var(--brand-color-primary);font-weight:600}
.type-opt.dis{opacity:.45;cursor:not-allowed;pointer-events:none}
.diff-table{width:100%;border-collapse:collapse}
.diff-table td{padding:8px 10px;font-size:12.5px;border:var(--brand-line-width) solid var(--brand-color-border-secondary)}
.diff-table .old{color:var(--brand-color-error);background:var(--red-1)}
.diff-table .new{color:var(--brand-color-success);background:var(--green-1)}
.e381-box{border:var(--brand-line-width) solid #ffa39e;border-radius:var(--brand-border-radius);background:var(--red-1);padding:14px var(--brand-size);display:flex;flex-direction:column;gap:8px;margin:var(--brand-size) 0}
.e381-box b{font-size:13.5px;color:var(--brand-color-error)}
.e381-box p{font-size:12.5px;color:var(--brand-color-text)}
.btn.line{background:transparent;border:var(--brand-line-width) solid var(--brand-color-primary);color:var(--brand-color-primary)}
.btn.line:hover{background:var(--blue-1)}

/* ---------- 查询 ---------- */
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;padding:12px var(--brand-size);background:var(--brand-color-bg-container);border-radius:var(--brand-border-radius-lg);box-shadow:0 1px 2px rgba(16,24,40,.05),0 1px 3px rgba(16,24,40,.06);margin-bottom:var(--brand-size);align-items:center}
.filter-bar input,.filter-bar select{border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);padding:6px 10px;font-size:13px;min-width:150px;font-family:inherit}
.filter-bar input:focus,.filter-bar select:focus{outline:none;border-color:var(--brand-color-primary)}
.empty{padding:48px var(--brand-size);text-align:center;color:var(--brand-color-text-tertiary);font-size:13px}

/* ---------- 申报详情 ---------- */
.di-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px 24px;margin-bottom:14px}
.di{display:flex;flex-direction:column;gap:3px;min-width:0}
.di .k{font-size:11.5px;color:var(--brand-color-text-tertiary)}
.di b{font-size:13px;color:var(--brand-color-text);font-weight:600;word-break:break-all}
.sec-h{
  font-size:13px;font-weight:600;color:var(--brand-color-text);
  border-top:1px dashed var(--brand-color-border);margin-top:14px;padding:12px 0 8px;
}
.detail-tbl{background:var(--brand-color-fill-quaternary)}
.detail-tbl th{background:var(--brand-color-fill-tertiary);font-size:11.5px;padding:6px 10px}
.detail-tbl td{font-size:12.5px;padding:7px 10px}

/* ---------- 占位页 ---------- */
.ph-page{width:100%;padding:0}
.ph-card{
  background:var(--brand-color-bg-container);border-radius:var(--brand-border-radius-lg);
  box-shadow:0 1px 2px rgba(16,24,40,.05),0 1px 3px rgba(16,24,40,.06);
  overflow:hidden;
}
.ph-head{
  display:flex;align-items:center;gap:16px;padding:20px var(--brand-size-lg);
  border-bottom:1px solid var(--brand-color-border-secondary);
}
.ph-ic{width:56px;height:56px;border-radius:14px;background:var(--blue-1);color:var(--brand-color-primary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 56px}
.ph-ic svg{width:28px;height:28px}
.ph-title{flex:1;min-width:0}
.ph-title h2{font-size:18px;color:var(--brand-color-text);margin-bottom:4px}
.ph-title .code{font-size:12px;color:var(--brand-color-text-tertiary)}
.ph-body{padding:20px var(--brand-size-lg)}
.ph-body .desc{font-size:13.5px;color:var(--brand-color-text);margin-bottom:12px;line-height:1.7}
.ph-body .rel{font-size:12.5px;color:var(--brand-color-text-secondary);background:var(--brand-color-fill-tertiary);border-radius:var(--brand-border-radius-sm);padding:10px 14px;line-height:1.7}
.ph-foot{margin-top:16px;display:flex;gap:10px}

/* ---------- 弹层 ---------- */
.modal-mask{position:fixed;inset:0;background:rgba(7,24,43,.5);display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--brand-size-lg)}
.modal{background:var(--brand-color-bg-container);border-radius:var(--brand-border-radius-lg);width:680px;max-width:100%;max-height:82vh;display:flex;flex-direction:column;box-shadow:0 16px 48px rgba(7,24,43,.35)}
.modal-h{display:flex;align-items:center;justify-content:space-between;padding:14px var(--brand-size-lg);border-bottom:var(--brand-line-width) solid var(--brand-color-border-secondary)}
.modal-h b{font-size:15px}
.modal-b{overflow-y:auto;padding:var(--brand-size) var(--brand-size-lg)}
.modal-f{padding:12px var(--brand-size-lg);border-top:var(--brand-line-width) solid var(--brand-color-border-secondary);display:flex;justify-content:flex-end;gap:10px}
/* 变更/撤销申请弹窗 */
.am-src{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;font-size:12.5px;color:var(--brand-color-text-secondary);background:var(--brand-color-fill-tertiary);border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);padding:10px 12px;margin-bottom:14px}
.am-src .dot{opacity:.4}
.am-picker{max-height:230px;overflow:auto;border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);padding:10px;margin-bottom:12px}
.am-picker-sec{margin-bottom:10px}
.am-picker-sec:last-child{margin-bottom:0}
.am-picker-sec-t{font-size:12px;font-weight:600;color:var(--brand-color-text-secondary);margin-bottom:6px}
.am-picker-grid{display:flex;flex-wrap:wrap;gap:6px}
.am-chip{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;padding:4px 10px;border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);cursor:pointer;user-select:none;color:var(--brand-color-text-secondary);transition:all var(--brand-motion-duration-fast)}
.am-chip:hover{border-color:var(--brand-color-primary);color:var(--brand-color-primary)}
.am-chip.on{border-color:var(--brand-color-primary);background:var(--blue-1);color:var(--brand-color-primary);font-weight:600}
.am-key-tag{font-style:normal;font-size:10px;line-height:1;padding:2px 5px;border-radius:3px;background:#fdf6ec;color:var(--brand-color-warning);font-weight:600}
.am-items{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.am-item{border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);padding:10px 12px}
.am-item-h{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:8px}
.am-item-h b{font-weight:600;color:var(--brand-color-text)}
.am-item-del{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--brand-color-text-tertiary);padding:2px;display:inline-flex}
.am-item-del:hover{color:var(--brand-color-error)}
.am-item-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.am-item-grid label{display:block;font-size:11px;color:var(--brand-color-text-tertiary);margin-bottom:4px}
.am-old{font-size:13px;padding:7px 10px;background:var(--brand-color-fill-tertiary);border:var(--brand-line-width) dashed var(--brand-color-border);border-radius:var(--brand-border-radius-sm);color:var(--brand-color-text-tertiary);word-break:break-all}
.am-new{width:100%;font-size:13px;padding:7px 10px;border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm)}
.am-new:focus{outline:none;border-color:var(--brand-color-primary)}
.am-reason-row{display:grid;grid-template-columns:200px 1fr;gap:10px}
.am-reason-row select{font-size:13px;padding:7px 10px;border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm)}
.am-reason-row textarea{font-size:13px;padding:7px 10px;border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);resize:vertical;min-height:56px}
.am-upload{display:flex;align-items:center;gap:10px}
.am-files{font-size:12.5px;color:var(--brand-color-text-secondary)}
.am-confirm-note{font-size:12px;color:var(--brand-color-warning);margin-right:auto;align-self:center}
.am-item-h .am-field-sel{font-size:13px;padding:6px 10px;border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);min-width:200px;background:#fff;color:var(--brand-color-text)}
.am-item-h .am-field-sel:focus{outline:none;border-color:var(--brand-color-primary)}
/* 分页 */
.pager{display:flex;align-items:center;gap:6px;padding:12px 4px 2px;flex-wrap:wrap}
.pager-btn{min-width:30px;height:30px;padding:0 8px;border:var(--brand-line-width) solid var(--brand-color-border);background:#fff;border-radius:var(--brand-border-radius-sm);font-size:12.5px;color:var(--brand-color-text-secondary);cursor:pointer}
.pager-btn:hover:not(:disabled){border-color:var(--brand-color-primary);color:var(--brand-color-primary)}
.pager-btn.on{background:var(--brand-color-primary);border-color:var(--brand-color-primary);color:#fff}
.pager-btn:disabled{opacity:.4;cursor:not-allowed}
.pager-info{font-size:12px;color:var(--brand-color-text-tertiary);margin-left:auto}
.tab-row{display:flex;gap:4px;margin-bottom:12px}
.tab-row .tab{border:var(--brand-line-width) solid var(--brand-color-border);background:transparent;border-radius:var(--brand-border-radius-sm);padding:4px 14px;font-size:12.5px;cursor:pointer;color:var(--brand-color-text-secondary)}
.tab-row .tab.on{background:var(--brand-color-primary);border-color:var(--brand-color-primary);color:#fff}
pre.code-block{background:#07182b;color:#9ec7e6;border-radius:var(--brand-border-radius);padding:14px;font-size:12px;line-height:1.6;overflow-x:auto;font-family:var(--brand-font-family-code)}
pre.code-block .k{color:#7ea6c9}
pre.code-block .s{color:#b6eb8f}

/* ---------- 状态圆点扩展 ---------- */
.st-risk-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap}
.risk-dot-low{background:var(--brand-color-success)}
.risk-dot-medium{background:var(--brand-color-warning)}
.risk-dot-high{background:var(--brand-color-error)}

/* ---------- 响应式 ---------- */
@media (max-width:900px){
  .form-grid{grid-template-columns:1fr}
}

/* ---------- Toast ---------- */
#toast{
  position:fixed;left:50%;bottom:36px;transform:translateX(-50%) translateY(20px);
  background:#07182b;color:#fff;font-size:13px;padding:10px 18px;border-radius:8px;
  opacity:0;pointer-events:none;transition:all var(--brand-motion-duration-mid);
  z-index:200;max-width:80vw;box-shadow:0 8px 20px rgba(7,24,43,.35);
}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- 登录页语言切换 ---------- */
#loginLang{display:flex;justify-content:center;gap:8px;margin-top:18px}
#loginLang button{
  border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;border-radius:5px;
  padding:3px 12px;font-size:12px;cursor:pointer;opacity:.8;
}
#loginLang button.on{background:rgba(255,255,255,.15);opacity:1;font-weight:600}
#loginLang .lbl{color:#fff;opacity:.5;font-size:12px;align-self:center}

/* ---------- 后续操作（详情页右上角操作按钮区） ---------- */
.ops-toolbar{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-bottom:var(--brand-size)}
.op-ic{
  width:36px;height:36px;border-radius:9px;background:#eef4ff;display:flex;align-items:center;
  justify-content:center;color:var(--brand-color-primary);flex:0 0 auto;
}
.op-name{font-size:13.5px;font-weight:600}
.op-desc{font-size:12.5px;color:#7a7a7a;line-height:1.6;margin-bottom:10px}
.op-no{font-size:12px;color:#7a7a7a;margin-bottom:8px}
.op-modal-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.op-rows{display:flex;flex-direction:column;gap:10px}
.op-row{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--brand-color-border);border-radius:8px;padding:10px 12px;background:var(--brand-color-bg-container)}
.op-row-desc{font-size:12px;color:#7a7a7a;line-height:1.55;margin-top:3px}

/* ---------- 列表状态单元格（不换行） ---------- */
.st-cell{display:inline-flex;align-items:center;white-space:nowrap}

/* ---------- 全部申报筛选面板 ---------- */
.filter-panel{
  background:var(--brand-color-bg-container);border-radius:var(--brand-border-radius-lg);
  box-shadow:0 1px 2px rgba(16,24,40,.05),0 1px 3px rgba(16,24,40,.06);
  padding:var(--brand-size-lg);margin-bottom:var(--brand-size);
}
.fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px var(--brand-size)}
.fp-item{display:flex;flex-direction:column;gap:6px;min-width:0}
.fp-item>span{font-size:12px;color:var(--brand-color-text-secondary)}
.fp-item input,.fp-item select{
  border:var(--brand-line-width) solid var(--brand-color-border);border-radius:var(--brand-border-radius-sm);
  padding:6px 10px;font-size:13px;width:100%;box-sizing:border-box;font-family:inherit;
  background:var(--brand-color-bg-container);
}
.fp-item input:focus,.fp-item select:focus{outline:none;border-color:var(--brand-color-primary)}
.fp-range{display:flex;align-items:center;gap:8px}
.fp-range input{flex:1;min-width:0}
.fp-sep{color:var(--brand-color-text-tertiary)}
.fp-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:var(--brand-line-width) solid var(--brand-color-border-secondary)}
.fp-btns{display:flex;gap:8px}
.q-count{font-size:12px;color:var(--brand-color-text-tertiary)}
