/* ============================================================
   印记账房 · 订单管理 —— 航空主题样式（参照 DEMO 设计稿）
   作用域：#orders-page，避免污染其他页面
   ============================================================ */
#orders-page{
  --panel:#FFFFFF;
  --panel-2:#F0F6F2;
  --ob-line:#DCEBE2;
  --ink:#17211B;
  --ink-2:#55655B;
  --ink-3:#7D9388;
  --brand-1:#176B49;
  --brand-2:#1E8057;
  --brand-ink:#14532D;
  --deep:#0E1C15;
  --deep-2:#16352A;
  --amber:#D97706;
  --teal:#0F766E;
  --ok-green:#16A34A;
  --ob-red:#DC2626;
  --ob-shadow:0 1px 2px rgba(20,83,45,.05),0 6px 20px -8px rgba(20,83,45,.14);
  --ob-radius:14px;
  --ob-mono:"Share Tech Mono","JetBrains Mono",Consolas,monospace;
  flex-direction:column;
  gap:16px;
}
#orders-page.page.active{display:flex}

/* ===== 页面标题行 ===== */
#orders-page .page-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
  background:var(--panel);border:1px solid var(--ob-line);border-radius:var(--ob-radius);
  padding:14px 20px;box-shadow:var(--ob-shadow);
}
#orders-page .greeting{font-size:12.5px;color:var(--ink-2)}
#orders-page .greeting b{color:var(--ink);font-weight:600}
#orders-page .page-title{display:flex;align-items:baseline;gap:12px;margin-top:5px}
#orders-page .page-title h1{font-size:21px;font-weight:700;letter-spacing:.01em;color:var(--ink)}
#orders-page .page-sub{font-size:12.5px;color:var(--ink-3)}
#orders-page .top-right{display:flex;align-items:center;gap:12px}
#orders-page .date-chip{
  display:flex;align-items:center;gap:8px;
  font-size:12.5px;color:var(--ink-2);
  background:var(--panel-2);border:1px solid var(--ob-line);
  padding:8px 14px;border-radius:20px;
}
#orders-page .date-chip .dot{width:7px;height:7px;border-radius:50%;background:var(--ok-green);box-shadow:0 0 0 3px rgba(22,163,74,.16)}
#orders-page .btn-new{
  display:inline-flex;align-items:center;gap:7px;
  background:linear-gradient(135deg,var(--brand-1),var(--brand-2));
  color:#fff;font-weight:600;font-size:13.5px;
  padding:9px 18px;border-radius:10px;
  box-shadow:0 6px 16px -4px rgba(30,128,87,.5);
  transition:transform .12s,box-shadow .12s;border:none;
}
#orders-page .btn-new:hover{transform:translateY(-1px);box-shadow:0 10px 20px -6px rgba(30,128,87,.55)}
#orders-page .btn-new:active{transform:translateY(0)}
#orders-page .btn-new svg{flex:none}

/* ---- 航线装饰 ---- */
#orders-page .flight-path{position:relative;height:22px;overflow:hidden}
#orders-page .flight-path svg{width:100%;height:22px;display:block}
#orders-page .plane-dot{
  position:absolute;left:0;top:3px;font-size:13px;color:var(--brand-2);
  animation:ob-fly 26s linear infinite;
}
@keyframes ob-fly{0%{left:0;opacity:0}4%{opacity:1}96%{opacity:1}100%{left:calc(100% - 16px);opacity:0}}

/* ---- 状态卡 ---- */
#orders-page .stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
#orders-page .stat-card{
  position:relative;overflow:hidden;cursor:pointer;
  background:linear-gradient(160deg,#FFFFFF 0%,#F3F9F5 100%);
  border:1px solid #D7E9DE;border-radius:var(--ob-radius);
  padding:16px 18px 14px;box-shadow:var(--ob-shadow);
  transition:transform .12s,box-shadow .12s;
}
#orders-page .stat-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px -10px rgba(20,83,45,.18)}
#orders-page .stat-card::before{
  content:"";position:absolute;top:0;right:0;width:120px;height:120px;border-radius:50%;
  background:radial-gradient(circle,rgba(30,128,87,.07),transparent 70%);
  transform:translate(30%,-30%);
}
#orders-page .stat-head{display:flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:.12em;color:var(--ink-3);text-transform:uppercase}
#orders-page .stat-code{font-family:var(--ob-mono);font-size:10px;color:#9DB8A8;margin-left:auto;letter-spacing:.1em}
#orders-page .status-light{width:8px;height:8px;border-radius:50%;flex:none;animation:ob-pulse 2.4s ease-in-out infinite}
#orders-page .status-light.on-amber{background:var(--amber);box-shadow:0 0 8px rgba(217,119,6,.65)}
#orders-page .status-light.on-green{background:var(--ok-green);box-shadow:0 0 8px rgba(22,163,74,.65)}
#orders-page .status-light.on-teal{background:var(--teal);box-shadow:0 0 8px rgba(15,118,110,.65)}
@keyframes ob-pulse{0%,100%{opacity:1}50%{opacity:.45}}
#orders-page .stat-row{display:flex;align-items:baseline;gap:12px;margin-top:10px}
#orders-page .stat-num{font-family:var(--ob-mono);font-size:40px;line-height:1;letter-spacing:.02em;color:var(--brand-ink)}
#orders-page .stat-unit{font-size:12px;color:var(--ink-3)}
#orders-page .stat-meta{font-size:12px;color:var(--ink-2);margin-top:8px;display:flex;align-items:center;gap:6px}
#orders-page .stat-meta svg{flex:none;color:var(--brand-2);opacity:.85}

/* ---- 回款仪表盘 ---- */
#orders-page .payment-panel{
  display:grid;grid-template-columns:300px 1fr;gap:0;
  background:var(--panel);border:1px solid var(--ob-line);border-radius:var(--ob-radius);
  box-shadow:var(--ob-shadow);overflow:hidden;
}
#orders-page .gauge-wrap{
  position:relative;overflow:hidden;
  background:linear-gradient(165deg,var(--deep) 0%,var(--deep-2) 60%,#1B4A38 100%);
  padding:18px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
}
#orders-page .gauge-wrap::after{
  content:"";position:absolute;inset:-50px;
  background:radial-gradient(circle at 50% 42%,rgba(34,197,94,.14),transparent 62%);
  animation:ob-gaugeGlow 4s ease-in-out infinite;pointer-events:none;
}
@keyframes ob-gaugeGlow{0%,100%{opacity:.45}50%{opacity:1}}
#orders-page .gauge-title{font-size:11.5px;letter-spacing:.16em;color:#9FC3AE;text-transform:uppercase;display:flex;align-items:center;gap:6px}
#orders-page .gauge{position:relative;width:150px;height:150px}
#orders-page .gauge svg{width:150px;height:150px;transform:rotate(-90deg)}
#orders-page .gauge .track{fill:none;stroke:rgba(255,255,255,.10);stroke-width:12;stroke-linecap:round}
#orders-page .gauge .arc{fill:none;stroke:url(#ordersArcGrad);stroke-width:12;stroke-linecap:round;filter:drop-shadow(0 0 5px rgba(34,197,94,.45))}
#orders-page .gauge-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
#orders-page .gauge-val{font-family:var(--ob-mono);font-size:34px;color:#fff;line-height:1}
#orders-page .gauge-cap{font-size:11px;color:#9FC3AE;margin-top:4px}
#orders-page .gauge-note{font-size:11px;color:#9FC3AE;letter-spacing:.06em}
#orders-page .payment-body{display:flex;flex-direction:column;padding:18px 22px;gap:14px}
#orders-page .payment-head{display:flex;align-items:center;justify-content:space-between}
#orders-page .payment-head h2{font-size:15px;font-weight:700;color:var(--ink)}
#orders-page .payment-tag{font-size:11.5px;color:var(--ink-3);letter-spacing:.08em}
#orders-page .payment-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
#orders-page .pay-item{background:var(--panel-2);border:1px solid var(--ob-line);border-radius:12px;padding:12px 16px;display:flex;align-items:center;gap:12px}
#orders-page .pay-ico{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex:none}
#orders-page .pay-ico.ok{background:rgba(22,163,74,.12);color:var(--ok-green)}
#orders-page .pay-ico.wait{background:rgba(15,118,110,.12);color:var(--teal)}
#orders-page .pay-ico.late{background:rgba(220,38,38,.12);color:var(--ob-red)}
#orders-page .pay-ico svg{width:20px;height:20px}
#orders-page .pay-meta .pay-num{font-family:var(--ob-mono);font-size:22px;line-height:1.1;color:var(--ink)}
#orders-page .pay-meta .pay-label{font-size:12px;color:var(--ink-3);margin-top:2px}
#orders-page .pay-alert{display:flex;align-items:center;gap:8px;font-size:12.5px;padding:9px 14px;border-radius:10px}
#orders-page .pay-alert.ok{background:rgba(22,163,74,.10);color:#15803D;border:1px solid rgba(22,163,74,.28)}
#orders-page .pay-alert.late{background:rgba(220,38,38,.10);color:#B91C1C;border:1px solid rgba(220,38,38,.28)}
#orders-page .pay-alert.late #orders-overdue-action{margin-left:auto}

/* ---- 查询面板 ---- */
#orders-page .orders-filter-card{
  padding:14px 16px;margin:0;
  background:var(--panel);border:1px solid var(--ob-line);border-radius:var(--ob-radius);
  box-shadow:var(--ob-shadow);
}
#orders-page .orders-filter-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}
#orders-page .orders-filter-title h3{margin:0;font-size:14px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:8px}
#orders-page .orders-filter-title h3::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--brand-2)}
#orders-page .orders-filter-title p{font-size:12px;color:var(--ink-3);margin:4px 0 12px}
#orders-page .orders-view-switch{display:flex;border:1px solid var(--ob-line);border-radius:9px;overflow:hidden}
#orders-page .orders-view-switch button{
  border:none;background:none;font-family:inherit;color:var(--ink-3);
  display:grid;place-items:center;padding:8px 12px;cursor:pointer;transition:all .15s;
}
#orders-page .orders-view-switch button + button{border-left:1px solid var(--ob-line)}
#orders-page .orders-view-switch button.active{background:var(--deep);color:#fff}

/* ---- 工具栏与筛选 ---- */
#orders-page .toolbar.orders-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;margin-bottom:10px}
#orders-page .orders-toolbar .search{
  flex:1 1 240px;display:flex;align-items:center;gap:8px;
  background:var(--panel-2);border:1px solid var(--ob-line);border-radius:9px;
  padding:8px 12px;transition:border-color .15s,box-shadow .15s;color:var(--ink-3);
}
#orders-page .orders-toolbar .search:focus-within{border-color:var(--brand-2);box-shadow:0 0 0 3px rgba(30,128,87,.12)}
#orders-page .orders-toolbar .search input{border:none;outline:none;background:none;font-size:13px;width:100%;color:var(--ink);height:18px}
#orders-page .orders-toolbar .spacer{margin-left:auto}
#orders-page .orders-toolbar .btn.secondary{
  display:inline-flex;align-items:center;gap:7px;
  border:1px solid var(--ob-line);background:var(--panel-2);
  color:var(--ink-2);font-size:13px;font-weight:500;text-decoration:none;
  padding:8px 14px;border-radius:9px;transition:all .15s;cursor:pointer;
}
#orders-page .orders-toolbar .btn.secondary:hover{border-color:var(--brand-2);color:var(--brand-ink);background:#ECF6F0}

/* 业务类型/回款/状态/录入人 下拉选择器 */
#orders-page .order-category-picker-wrap{position:relative}
#orders-page .order-category-btn{
  height:37px;min-width:118px;border:1px solid var(--ob-line);border-radius:9px;
  background:var(--panel-2);color:var(--ink);font-size:13px;
  padding:0 30px 0 12px;cursor:pointer;white-space:nowrap;position:relative;text-align:left;
}
#orders-page .order-category-btn:after{content:"▾";position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--ink-3);font-size:11px}
#orders-page .order-category-btn:hover{border-color:var(--brand-2)}
#orders-page .order-category-panel{
  position:absolute;top:calc(100% + 6px);left:0;z-index:70;width:max-content;min-width:240px;max-width:360px;
  background:#fff;border:1px solid var(--ob-line);border-radius:12px;
  box-shadow:0 14px 34px rgba(25,61,44,.16);padding:10px;
}
#orders-page .order-category-panel .order-type-picker-list{max-height:min(300px,45vh);margin-top:10px;overflow:auto}
#orders-page .order-category-panel .order-type-picker-list>button{grid-template-columns:36px minmax(0,1fr) auto}
#orders-page .order-category-panel .order-type-picker-list>button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#orders-page .order-category-clear{
  position:absolute;right:28px;top:50%;transform:translateY(-50%);width:18px;height:18px;
  border:0;border-radius:50%;background:#eef2ef;color:#7b8a81;font-size:12px;line-height:1;cursor:pointer;z-index:2;
}
#orders-page .order-category-clear:hover{background:#e0e8e3;color:#4d5c53}
#orders-page .order-category-empty{padding:14px;text-align:center;color:#87968e;font-size:12px}

/* 筛选 chips */
#orders-page .orders-filter-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:0}
#orders-page .filter-chip{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12px;color:var(--ink-2);background:var(--panel-2);
  border:1px solid var(--ob-line);border-radius:999px;padding:4px 8px 4px 10px;
}
#orders-page .filter-chip b{color:var(--brand-ink);font-weight:600}
#orders-page .filter-chip button{border:none;background:#dce7e0;color:#5c6d63;width:16px;height:16px;border-radius:50%;font-size:12px;line-height:1;cursor:pointer}

/* ---- 卡片视图（按客户分组） ---- */
#orders-page .orders-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
#orders-page .orders-no-result{grid-column:1/-1}

/* ---- 结果脚栏 ---- */
#orders-page .result-foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--panel);border:1px solid var(--ob-line);border-radius:12px;
  padding:11px 16px;box-shadow:var(--ob-shadow);font-size:13px;color:var(--ink-2);
}
#orders-page .result-foot .counts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#orders-page .result-foot .counts b{font-family:var(--ob-mono);font-size:15px;color:var(--brand-ink)}
#orders-page .result-foot .hint{font-size:12px;color:var(--ink-3);display:flex;align-items:center;gap:6px}
#orders-page .result-foot .hint svg{flex:none}

/* ---- 分页控件（明细下方，卡片/表格各自一套） ---- */
#orders-page .orders-pagination{
  display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;
  background:var(--panel);border:1px solid var(--ob-line);border-radius:12px;
  padding:11px 16px;box-shadow:var(--ob-shadow);font-size:12.5px;color:var(--ink-2);
}
#orders-page .orders-pagination .pagination-total{margin-right:auto;color:var(--ink-2);font-weight:600}
#orders-page .orders-pagination .pagination-size{display:flex;align-items:center;gap:6px;color:var(--ink-3)}
#orders-page .orders-pagination .pagination-size select{height:30px;border:1px solid var(--ob-line);border-radius:7px;padding:0 6px;font-size:12px;background:#fff;color:var(--ink);cursor:pointer}
#orders-page .orders-pagination .pagination-size select:focus{outline:none;border-color:var(--brand-2);box-shadow:0 0 0 3px rgba(30,128,87,.10)}
#orders-page .orders-pagination .btn{padding:7px 14px;font-size:12px}
#orders-page .orders-pagination .btn:disabled{opacity:.45;cursor:not-allowed}

/* ============================================================
   列表视图（航班表格）—— 叠加在 orders-table-polish 之上的主题化
   ============================================================ */
#orders-page #orders-table-view{border-color:var(--ob-line);box-shadow:var(--ob-shadow);border-radius:var(--ob-radius)}
#orders-page #orders-table-view thead th{background:linear-gradient(180deg,#F5FAF7,#EEF6F2);color:#49665A;border-bottom:1px solid var(--ob-line)}
#orders-page #orders-table-view tbody tr:hover{background:#F0F8F3}
#orders-page .money,#orders-page .order-date b{font-variant-numeric:tabular-nums}

/* 空状态（列表 / 卡片共用） */
#orders-page .orders-empty-icon{width:42px;height:42px;opacity:.4}

/* ============================================================
   响应式
   ============================================================ */
@media(max-width:1200px){
  #orders-page .orders-card-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  #orders-page .stats-grid{grid-template-columns:1fr}
  #orders-page .payment-panel{grid-template-columns:1fr}
  #orders-page .orders-card-grid{grid-template-columns:1fr}
  #orders-page .toolbar.orders-toolbar{flex-wrap:wrap}
  #orders-page .orders-toolbar .search{flex:1 1 100%}
  #orders-page .orders-toolbar .spacer{display:none}
}
@media(max-width:800px){
  #orders-page .page-head{flex-direction:column;align-items:flex-start}
  #orders-page .top-right{width:100%;justify-content:space-between}
  #orders-page .result-foot{flex-direction:column;align-items:flex-start}
}

/* ============================================================
   列表视图 · 单元格控件与操作按钮（航空主题化）
   替代旧 orders-modern 中的功能基础样式，作用域限定在订单页
   ============================================================ */
#orders-page .order-thumb{width:46px;height:38px;object-fit:cover;border-radius:7px;border:1px solid #D7E9DE;display:block;background:#F4F8F5}
#orders-page .no-image{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:74px;height:38px;border:1px dashed #CDE0D6;border-radius:7px;background:#FAFCFB;color:#9DB5A9;font-size:10px;white-space:nowrap}
#orders-page .no-image:before{content:"▧";font-size:12px;opacity:.7}
#orders-page .invoice-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;white-space:nowrap}
#orders-page .invoice-badge.none{background:#F1F3F2;color:#7B8780}
#orders-page .invoice-badge.part{background:#FFF0E7;color:#B96032}
#orders-page .invoice-badge.done{background:#E9F6EF;color:#247958}
#orders-page .order-actions select,
#orders-page .order-actions button{height:30px;min-width:54px;padding:0 10px;font-size:12px;border-radius:7px;box-sizing:border-box;cursor:pointer;border:1px solid var(--ob-line);background:#fff;color:#33453C}
#orders-page .order-actions .status-select{background:#fff;color:#33453C}
#orders-page .order-actions .print-order{border:1px solid #B9DBC9;background:#EEF8F2;color:var(--brand-1)}
#orders-page .order-actions .print-order:hover{background:var(--brand-1);color:#fff;border-color:var(--brand-1)}
#orders-page .order-actions .delete-order{border:1px solid #F1C9C5;background:#FFF7F6;color:#B6473C}
#orders-page .order-actions .edit-order:hover,
#orders-page .order-actions .duplicate-order:hover{border-color:var(--brand-2);color:var(--brand-ink)}
#orders-page .print-order,
#orders-page .customer-order-print{border:1px solid #B9DBC9;background:#EEF8F2;color:var(--brand-1);border-radius:6px;padding:5px 9px;font-size:10px;cursor:pointer;white-space:nowrap}
#orders-page .print-order:hover,
#orders-page .customer-order-print:hover{background:var(--brand-1);color:#fff}