/*
 * 能飞后台深层业务页面与操作路径收口层
 * 目标：业务详情必须显示“当前状态/下一步”，深层表单统一母版弹窗，焦点对象可直接定位。
 */
body.app-body{
  --nf-deep-orange:#d96542;
  --nf-deep-orange-soft:#fff3ed;
  --nf-deep-navy:#1d415b;
  --nf-deep-text:#263746;
  --nf-deep-muted:#778593;
  --nf-deep-line:#e6eaee;
  --nf-deep-bg:#f7f8f8;
  --nf-deep-green:#148a62;
}

/* 统一业务办理入口：从“事实详情”转向“当前状态 + 下一步动作” */
body.app-body .nf-business-action-card{
  display:flex;align-items:center;justify-content:space-between;gap:22px;
  margin:14px 0;padding:18px 20px;border:1px solid #eadfd9;border-left:4px solid var(--nf-deep-orange);
  border-radius:16px;background:linear-gradient(135deg,#fff 0%,#fffaf7 100%);box-shadow:0 8px 24px rgba(36,48,58,.05)
}
body.app-body .nf-business-action-card h3{margin:3px 0 4px;color:var(--nf-deep-navy);font-size:17px}
body.app-body .nf-business-action-card p{margin:0;color:var(--nf-deep-muted);line-height:1.65}
body.app-body .nf-business-action-kicker{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--nf-deep-orange);text-transform:uppercase}
body.app-body .nf-business-action-side{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;flex:0 0 auto}
body.app-body .nf-business-facts{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap;margin-top:9px;color:#596979;font-size:12px}
body.app-body .nf-business-facts b{color:var(--nf-deep-text)}

/* 真实业务焦点：消息/订单点进来后清晰定位当前对象 */
body.app-body tr.nf-focus-row>td{background:#fff8f3!important;box-shadow:inset 0 1px 0 #f1c9ba,inset 0 -1px 0 #f1c9ba}
body.app-body tr.nf-focus-row>td:first-child{box-shadow:inset 4px 0 0 var(--nf-deep-orange),inset 0 1px 0 #f1c9ba,inset 0 -1px 0 #f1c9ba}
body.app-body .nf-focus-card{border-color:#e9b8a6!important;box-shadow:0 10px 28px rgba(217,101,66,.10)!important}

/* 已发生真实资金后，交易模型只读展示，避免“明知必报错仍给保存按钮” */
body.app-body .nf-readonly-model{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
body.app-body .nf-readonly-model>div{padding:13px 14px;border:1px solid var(--nf-deep-line);border-radius:12px;background:#fafbfc}
body.app-body .nf-readonly-model small{display:block;color:var(--nf-deep-muted);margin-bottom:5px}
body.app-body .nf-readonly-model b{color:var(--nf-deep-text)}

/* 深层表单统一成真正的母版弹窗。此前很多 hidden/deep 页面仍是页面内展开。 */
body.app-body details[open]:has(> .popover-panel)::before{
  content:"";position:fixed;inset:0;z-index:1590;background:rgba(18,35,48,.42);backdrop-filter:blur(2px)
}
body.app-body details[open] > .popover-panel{
  position:fixed!important;left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;
  z-index:1600!important;transform:translate(-50%,-50%)!important;
  width:min(560px,calc(100vw - 44px))!important;min-width:0!important;max-width:calc(100vw - 44px)!important;
  max-height:min(82vh,820px)!important;overflow:auto!important;
  padding:24px!important;margin:0!important;border:1px solid rgba(220,225,230,.92)!important;border-radius:18px!important;
  background:#fff!important;box-shadow:0 28px 80px rgba(20,34,45,.28)!important
}
body.app-body details[open] > .popover-panel.wide{width:min(920px,calc(100vw - 56px))!important}
body.app-body details[open] > summary:has(+ .popover-panel){
  position:fixed!important;z-index:1610!important;top:max(calc(9vh + 12px),28px)!important;right:max(calc((100vw - min(920px,calc(100vw - 56px)))/2 + 18px),34px)!important;
  width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;border:1px solid #dfe4e8!important;border-radius:11px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;color:transparent!important;font-size:0!important;box-shadow:0 4px 14px rgba(24,39,50,.10)!important
}
body.app-body details[open] > summary:has(+ .popover-panel)::after{content:"×";font-size:24px;line-height:1;color:var(--nf-deep-navy);font-weight:500}
body.app-body details[open] > .popover-panel label{display:block;margin:10px 0 6px;color:#405263;font-weight:650;font-size:13px}
body.app-body details[open] > .popover-panel input:not([type="checkbox"]):not([type="radio"]),
body.app-body details[open] > .popover-panel select,
body.app-body details[open] > .popover-panel textarea{width:100%;min-height:42px;border:1px solid #dfe5ea;border-radius:10px;background:#fff;padding:9px 11px;box-sizing:border-box}
body.app-body details[open] > .popover-panel textarea{min-height:86px;resize:vertical}
body.app-body details[open] > .popover-panel input:focus,
body.app-body details[open] > .popover-panel select:focus,
body.app-body details[open] > .popover-panel textarea:focus{outline:none;border-color:#d99a83;box-shadow:0 0 0 3px rgba(217,101,66,.10)}
body.app-body details[open] > .popover-panel .grid{gap:14px}
body.app-body details[open] > .popover-panel .btn-primary{min-height:38px}

/* 兼容仍未显式标记 popover-panel 的旧深层表单：只处理“按钮 summary + 直接 form”结构。 */
body.app-body details[open]:has(> summary.btn + form:not(.inline-form))::before{
  content:"";position:fixed;inset:0;z-index:1490;background:rgba(18,35,48,.38);backdrop-filter:blur(2px)
}
body.app-body details[open] > summary.btn + form:not(.inline-form){
  position:fixed!important;left:50%!important;top:50%!important;z-index:1500!important;transform:translate(-50%,-50%)!important;
  width:min(760px,calc(100vw - 56px))!important;max-height:min(82vh,820px)!important;overflow:auto!important;
  padding:24px!important;margin:0!important;border:1px solid #e0e5e9!important;border-radius:18px!important;background:#fff!important;
  box-shadow:0 28px 80px rgba(20,34,45,.26)!important
}
body.app-body details[open] > summary.btn:has(+ form:not(.inline-form)){
  position:fixed!important;z-index:1510!important;top:max(calc(9vh + 12px),28px)!important;right:max(calc((100vw - min(760px,calc(100vw - 56px)))/2 + 18px),34px)!important;
  width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;font-size:0!important;color:transparent!important;background:#fff!important;border:1px solid #dfe4e8!important;border-radius:11px!important
}
body.app-body details[open] > summary.btn:has(+ form:not(.inline-form))::after{content:"×";font-size:24px;color:var(--nf-deep-navy)}

/* 深层详情基础视觉：避免主页面精修后，二级/隐藏页又退回老灰白表单。 */
body.app-body .panel .panel-sub,body.app-body .panel .help{color:var(--nf-deep-muted);line-height:1.65}
body.app-body .panel h2,body.app-body .panel h3,body.app-body .panel h4{color:var(--nf-deep-navy)}
body.app-body .panel input:not([type="checkbox"]):not([type="radio"]),body.app-body .panel select,body.app-body .panel textarea{border-color:#e0e5e9}
body.app-body .panel input:focus,body.app-body .panel select:focus,body.app-body .panel textarea:focus{border-color:#d99a83;box-shadow:0 0 0 3px rgba(217,101,66,.08)}
body.app-body .row-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}

@media(max-width:820px){
  body.app-body .nf-business-action-card{align-items:flex-start;flex-direction:column}
  body.app-body .nf-business-action-side{justify-content:flex-start}
  body.app-body .nf-readonly-model{grid-template-columns:1fr}
  body.app-body details[open] > .popover-panel,body.app-body details[open] > .popover-panel.wide,body.app-body details[open] > summary.btn + form:not(.inline-form){width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;max-height:86vh!important;padding:18px!important}
}

/* 维修中心深层详情 · 正式商用母版收口 */
body.app-body.raw-route-order_view{background:#f5f7f8}
body.app-body.raw-route-order_view .content-area{max-width:none}
body.app-body.raw-route-order_view .nf-repair-detail-hero{
  border-radius:18px!important;overflow:hidden;margin-bottom:14px!important;
  background:linear-gradient(118deg,#b84e34 0%,#d96542 52%,#f08a6a 100%)!important;
  box-shadow:0 14px 34px rgba(105,53,38,.13)!important
}
body.app-body.raw-route-order_view .nf-repair-detail-hero h2{font-size:24px;line-height:1.2;margin:13px 0 12px;color:#fff!important}
body.app-body.raw-route-order_view .nf-repair-detail-hero .nf-detail-meta span{display:inline-flex;align-items:center;min-height:24px}
body.app-body.raw-route-order_view .nf-repair-detail-hero .btn-primary{background:#fff!important;color:#b94d33!important;border-color:#fff!important;box-shadow:0 8px 18px rgba(68,30,20,.12)!important}
body.app-body.raw-route-order_view .nf-repair-detail-workbench{
  display:grid!important;grid-template-columns:minmax(320px,1.65fr) repeat(3,minmax(180px,.72fr))!important;
  gap:12px!important;margin:0 0 14px!important;background:transparent!important;border:0!important;padding:0!important
}
body.app-body.raw-route-order_view .nf-repair-detail-workbench>div{
  min-height:104px;border:1px solid #e5eaee;border-radius:16px;background:#fff;padding:18px 20px;box-sizing:border-box;
  box-shadow:0 8px 22px rgba(31,51,66,.045)
}
body.app-body.raw-route-order_view .nf-repair-detail-workbench .workbench-main{
  background:linear-gradient(132deg,#fff7f3 0%,#fff 100%);border-color:#efd8cf;position:relative;overflow:hidden
}
body.app-body.raw-route-order_view .nf-repair-detail-workbench .workbench-main:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-65px;top:-92px;border:1px solid rgba(217,101,66,.13)}
body.app-body.raw-route-order_view .nf-repair-detail-workbench small{color:#8492a0;font-weight:650}
body.app-body.raw-route-order_view .nf-repair-detail-workbench b,
body.app-body.raw-route-order_view .nf-repair-detail-workbench h2{color:#18374e!important}
body.app-body.raw-route-order_view .nf-repair-detail-workbench .workbench-main h2{color:#b84e34!important;font-size:24px;margin:8px 0 5px}
body.app-body.raw-route-order_view .panel{
  border:1px solid #e5eaee!important;border-radius:16px!important;background:#fff!important;
  box-shadow:0 7px 22px rgba(31,51,66,.035)!important
}
body.app-body.raw-route-order_view .nf-repair-next-step{padding:20px 22px!important;border-left:0!important}
body.app-body.raw-route-order_view .nf-repair-next-step .panel-head{border-bottom:1px solid #edf0f2;padding-bottom:14px;margin-bottom:14px}
body.app-body.raw-route-order_view .nf-repair-overview{padding:0 20px 20px!important;overflow:visible}
body.app-body.raw-route-order_view .nf-repair-overview .workbench-tabs{margin:0 -20px 18px!important;padding:0 18px!important;background:#fbfcfd!important;border-bottom:1px solid #e8edf0!important}
body.app-body.raw-route-order_view .nf-repair-fact-grid{gap:12px!important}
body.app-body.raw-route-order_view .nf-repair-fact-card{
  position:relative;padding:17px 18px 16px 54px!important;border:1px solid #e8edf0;border-radius:14px;background:#fbfcfd;min-height:112px;box-sizing:border-box
}
body.app-body.raw-route-order_view .nf-repair-fact-card h3{margin:0 0 8px!important;font-size:14px!important;color:#627488!important;font-weight:700!important}
body.app-body.raw-route-order_view .nf-repair-fact-card b{font-size:16px;color:#1b3348}
body.app-body.raw-route-order_view .nf-repair-fact-card p{margin:7px 0;color:#536678;line-height:1.65}
body.app-body.raw-route-order_view .nf-repair-fact-icon{
  position:absolute;left:15px;top:16px;width:28px;height:28px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  background:#fff0e9;color:#c95b3b;font-size:12px;font-weight:900;border:1px solid #f3d7cb
}
body.app-body.raw-route-order_view .nf-repair-section-card{padding:22px!important}
body.app-body.raw-route-order_view .nf-repair-section-card>.panel-head{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #edf0f2}
body.app-body.raw-route-order_view .nf-repair-section-card>.panel-head h2,
body.app-body.raw-route-order_view .nf-repair-split>.panel>h2,
body.app-body.raw-route-order_view .nf-repair-qr-card>h2{font-size:18px!important;margin:0;color:#17364e!important}
body.app-body.raw-route-order_view .nf-repair-section-card label,
body.app-body.raw-route-order_view .nf-repair-split label{font-size:12px;color:#788897;font-weight:700}
body.app-body.raw-route-order_view .nf-repair-section-card textarea{min-height:108px}
body.app-body.raw-route-order_view .nf-repair-quote-table{border:1px solid #e9edf0;border-radius:13px;overflow:auto;background:#fff}
body.app-body.raw-route-order_view .nf-repair-quote-table table{margin:0;min-width:820px}
body.app-body.raw-route-order_view .nf-repair-quote-table thead th{background:#f7f9fa;color:#607286;font-size:12px}
body.app-body.raw-route-order_view .nf-repair-quote-table tfoot th{background:#fafbfc;border-top:1px solid #e7ecef}
body.app-body.raw-route-order_view .nf-repair-split{gap:14px!important}
body.app-body.raw-route-order_view .nf-repair-split>.panel{padding:22px!important;min-width:0}
body.app-body.raw-route-order_view .nf-repair-split>.panel>h2{padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid #edf0f2}
body.app-body.raw-route-order_view .nf-repair-qr-card{padding:22px!important}
body.app-body.raw-route-order_view .nf-repair-qr-card .qr-box{margin-top:15px;padding:16px;border-radius:14px;background:#f8fafb;border:1px solid #e9edf0}
body.app-body.raw-route-order_view .nf-order-timeline-event{padding:0 0 18px 28px}
body.app-body.raw-route-order_view .nf-order-timeline-title{font-size:14px;font-weight:800;color:#274358}
body.app-body.raw-route-order_view .workbench-tabs a{min-height:42px;padding:0 18px;display:inline-flex;align-items:center;font-weight:750}
body.app-body.raw-route-order_view .workbench-tabs a.active{color:#c65335;background:#fff3ee;border-bottom:2px solid #d96542}
@media(max-width:1180px){body.app-body.raw-route-order_view .nf-repair-detail-workbench{grid-template-columns:repeat(2,minmax(0,1fr))!important}.workbench-main{grid-column:1/-1}}
@media(max-width:780px){body.app-body.raw-route-order_view .nf-repair-detail-workbench{grid-template-columns:1fr!important}body.app-body.raw-route-order_view .nf-repair-fact-grid{grid-template-columns:1fr!important}}
body.app-body.raw-route-order_view .nf-repair-customer-entry{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:13px 15px;border:1px solid #e6ebef;border-radius:12px;background:#f8fafb}
body.app-body.raw-route-order_view .nf-repair-customer-entry b{display:block;color:#24445b;font-size:13px;margin-bottom:3px}
body.app-body.raw-route-order_view .nf-repair-customer-entry span{color:#7d8d9b;font-size:12px}
@media(max-width:720px){body.app-body.raw-route-order_view .nf-repair-customer-entry{align-items:flex-start;flex-direction:column}}
