/* ========================================================================
   能飞后台 · 入口/安全/系统页最终视觉母版
   方向：工业橙主视觉 + 深海军蓝关键动作 + 暖驼背景 + 细线/轨迹纹理
   说明：仅覆盖入口、安全、公开/系统状态页及界面配置局部，不改变业务流程。
   ======================================================================== */
:root{
  --nf-entry-orange-deep:#C85A35;
  --nf-entry-orange:#D66A43;
  --nf-entry-orange-light:#E58E69;
  --nf-entry-navy:#18364F;
  --nf-entry-navy-2:#244A66;
  --nf-entry-camel:#E9E0D5;
  --nf-entry-paper:#FFFDFB;
  --nf-entry-paper-warm:#FBF8F4;
  --nf-entry-line:#E7DDD3;
  --nf-entry-ink:#263542;
  --nf-entry-muted:#7D8994;
  --nf-entry-shadow:0 26px 64px rgba(54,38,25,.11),0 10px 26px rgba(54,38,25,.05);
}

/* 登录 / 二次验证公共背景 */
body.public-body.login-page{
  background:linear-gradient(180deg,#EFE7DD 0%,#E7DED3 100%)!important;
  color:var(--nf-entry-ink)!important;
}
body.public-body.login-page .public-main{
  min-height:100vh!important;
  background:
    radial-gradient(circle at 12% 12%,rgba(255,255,255,.62),transparent 28%),
    radial-gradient(circle at 92% 88%,rgba(207,98,58,.08),transparent 18%),
    linear-gradient(180deg,#EFE7DD 0%,#E7DED3 100%)!important;
}
body.public-body.login-page .public-main:before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;
  background-image:linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.65) 1px,transparent 1px);
  background-size:48px 48px;
}
body.public-body.login-page .login-experience,
body.public-body.login-page .mfa-login-experience{
  min-height:100vh!important;padding:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:transparent!important;
}
body.public-body.login-page .login-experience:before{display:none!important}
body.public-body.login-page .login-ambient{display:none!important}
body.public-body.login-page .login-shell-v2,
body.public-body.login-page .mfa-login-shell{
  width:min(1110px,100%)!important;min-height:620px!important;margin:0!important;padding:0!important;gap:0!important;
  border:0!important;border-radius:30px!important;overflow:hidden!important;background:rgba(255,253,250,.94)!important;
  box-shadow:var(--nf-entry-shadow)!important;backdrop-filter:none!important;
}
body.public-body.login-page .login-shell-v2{grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr)!important}
body.public-body.login-page .mfa-login-shell{grid-template-columns:minmax(390px,.92fr) minmax(0,1.08fr)!important}

/* 工业橙视觉面：统一细网格、航迹线、圆环 */
body.public-body.login-page .login-visual-panel,
body.public-body.login-page .mfa-login-visual{
  position:relative!important;overflow:hidden!important;min-height:620px!important;padding:44px 42px 38px!important;color:#fff!important;
  background:
    linear-gradient(118deg,transparent 0 18%,rgba(255,255,255,.075) 18.08%,transparent 18.18%) no-repeat,
    linear-gradient(118deg,transparent 0 42%,rgba(255,255,255,.055) 42.08%,transparent 42.18%) no-repeat,
    linear-gradient(118deg,transparent 0 72%,rgba(255,255,255,.045) 72.08%,transparent 72.18%) no-repeat,
    linear-gradient(145deg,var(--nf-entry-orange) 0%,var(--nf-entry-orange-deep) 52%,var(--nf-entry-orange-light) 100%)!important;
  box-shadow:none!important;border-radius:0!important;
}
body.public-body.login-page .login-visual-panel:before,
body.public-body.login-page .mfa-login-visual:before{
  content:""!important;position:absolute!important;inset:0!important;width:auto!important;height:auto!important;border:0!important;border-radius:0!important;box-shadow:none!important;pointer-events:none!important;opacity:.075!important;
  background-image:linear-gradient(rgba(255,255,255,.62) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.62) 1px,transparent 1px)!important;
  background-size:52px 52px!important;
}
body.public-body.login-page .login-visual-panel:after,
body.public-body.login-page .mfa-login-visual:after{
  content:""!important;position:absolute!important;width:520px!important;height:520px!important;right:-180px!important;top:-140px!important;left:auto!important;bottom:auto!important;
  border:1px solid rgba(255,255,255,.12)!important;border-radius:50%!important;background:transparent!important;
  box-shadow:0 0 0 82px rgba(255,255,255,.012)!important;pointer-events:none!important;
}

/* 登录左侧：减法设计 + 后台可配置内容 */
body.public-body.login-page .login-visual-panel{display:flex!important;flex-direction:column!important;justify-content:flex-start!important}
body.public-body.login-page .login-brand-top{position:relative!important;z-index:2!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;min-height:122px!important}
body.public-body.login-page .login-brand-identity{display:flex!important;align-items:flex-start!important;gap:0!important;min-width:0!important}
body.public-body.login-page .login-brand-logo{width:260px!important;height:120px!important;flex:0 0 260px!important;border-radius:0!important;background:transparent!important;border:0!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;padding:0!important;box-shadow:none!important;overflow:visible!important}
body.public-body.login-page .login-brand-logo img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:left center!important;background:transparent!important}
body.public-body.login-page .login-brand-logo.is-empty{background:transparent!important;border:0!important;box-shadow:none!important}
body.public-body.login-page .login-brand-badge{display:none!important}
body.public-body.login-page .login-online{padding:8px 12px!important;border-radius:999px!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.14)!important;color:#fff!important;font-size:12px!important;font-weight:800!important;backdrop-filter:blur(7px)!important}
body.public-body.login-page .login-online i{width:8px!important;height:8px!important;background:#89DFBC!important;box-shadow:0 0 0 4px rgba(137,223,188,.14)!important}
body.public-body.login-page .login-visual-main{position:relative!important;z-index:2!important;max-width:560px!important;margin-top:108px!important}
body.public-body.login-page .login-visual-main h1{font-size:46px!important;line-height:1.08!important;font-weight:900!important;letter-spacing:-.035em!important;color:#fff!important;margin:0 0 18px!important}
body.public-body.login-page .login-visual-value{font-size:20px!important;line-height:1.58!important;font-weight:750!important;color:rgba(255,255,255,.96)!important;margin:0 0 14px!important;max-width:540px!important}
body.public-body.login-page .login-visual-desc{font-size:14px!important;line-height:1.9!important;font-weight:400!important;color:rgba(255,255,255,.82)!important;margin:0 0 26px!important;max-width:540px!important}
body.public-body.login-page .login-tag-row{display:flex!important;gap:10px!important;flex-wrap:wrap!important}
body.public-body.login-page .login-tag{padding:9px 13px!important;border-radius:999px!important;background:rgba(255,255,255,.09)!important;border:1px solid rgba(255,255,255,.15)!important;color:rgba(255,255,255,.92)!important;font-size:12px!important;font-weight:750!important;backdrop-filter:blur(7px)!important}
body.public-body.login-page .login-visual-foot{position:absolute!important;left:42px!important;bottom:28px!important;z-index:2!important;display:flex!important;gap:16px!important;color:rgba(255,255,255,.76)!important;font-size:12px!important;letter-spacing:0!important}

/* 登录右侧：深海军蓝标题与主操作 */
body.public-body.login-page .login-form-panel,
body.public-body.login-page .mfa-login-form-panel{
  min-height:620px!important;padding:46px 40px 34px!important;background:linear-gradient(180deg,var(--nf-entry-paper) 0%,var(--nf-entry-paper-warm) 100%)!important;justify-content:center!important;
}
body.public-body.login-page .login-form-kicker,
body.public-body.login-page .mfa-login-badge{
  display:inline-flex!important;width:max-content!important;padding:8px 12px!important;border-radius:999px!important;background:#F5EBE4!important;border:0!important;color:var(--nf-entry-orange-deep)!important;font-size:12px!important;font-weight:800!important;letter-spacing:0!important;margin-bottom:14px!important;
}
body.public-body.login-page .login-form-head{margin-bottom:22px!important}
body.public-body.login-page .login-form-head h2,
body.public-body.login-page .mfa-login-head h2{font-size:38px!important;line-height:1.1!important;font-weight:900!important;letter-spacing:-.03em!important;color:var(--nf-entry-navy)!important;margin:0 0 10px!important}
body.public-body.login-page .login-form-head p,
body.public-body.login-page .mfa-login-head p{font-size:14px!important;line-height:1.8!important;color:var(--nf-entry-muted)!important;max-width:420px!important;margin:0!important}
body.public-body.login-page .login-form label{font-size:13px!important;font-weight:800!important;color:#3A4956!important;margin-bottom:8px!important}
body.public-body.login-page .login-label-row{margin-top:14px!important;margin-bottom:8px!important}
body.public-body.login-page .login-label-row label{margin:0!important}
body.public-body.login-page .login-label-row span{font-size:11px!important;color:#98A3AD!important;font-weight:700!important}
body.public-body.login-page .login-input-wrap{height:54px!important;border-radius:15px!important;border:1px solid #E3DAD1!important;background:#fff!important;gap:10px!important;transition:.2s!important;overflow:hidden!important}
body.public-body.login-page .login-input-wrap:focus-within{border-color:#CF8A69!important;box-shadow:0 0 0 4px rgba(212,106,67,.07)!important;background:#fff!important}
body.public-body.login-page .login-input-icon{width:40px!important;color:#95A1AB!important;font-size:12px!important}
body.public-body.login-page .login-input-wrap input{font-size:17px!important;color:var(--nf-entry-ink)!important;padding:0 6px!important}
body.public-body.login-page .login-eye{color:#8C98A3!important;font-size:11px!important}
body.public-body.login-page .login-eye:hover{color:var(--nf-entry-navy)!important}
body.public-body.login-page .login-captcha-row{grid-template-columns:1fr 126px!important;gap:10px!important;margin-top:0!important}
body.public-body.login-page .login-captcha-image{height:54px!important;border-radius:15px!important;border:1px solid #DFD6CE!important;background:linear-gradient(180deg,#fff,#FAF7F3)!important;overflow:hidden!important}
body.public-body.login-page .login-captcha-image img{width:100%!important;height:100%!important;object-fit:contain!important}
body.public-body.login-page .login-submit{
  height:56px!important;margin-top:18px!important;padding:0 18px!important;border-radius:15px!important;border:0!important;
  background:linear-gradient(135deg,var(--nf-entry-navy),var(--nf-entry-navy-2))!important;color:#fff!important;font-size:18px!important;font-weight:900!important;
  box-shadow:0 14px 24px rgba(24,54,79,.15)!important;
}
body.public-body.login-page .login-submit:hover{background:linear-gradient(135deg,#142F47,#203F58)!important;box-shadow:0 16px 28px rgba(24,54,79,.19)!important;transform:translateY(-1px)!important}
body.public-body.login-page .login-security-row{margin-top:13px!important;color:#929DA7!important;font-size:11px!important}
body.public-body.login-page .login-help{margin-top:7px!important;color:#9AA4AD!important;font-size:11px!important}
body.public-body.login-page .login-mobile-mark{background:linear-gradient(135deg,var(--nf-entry-navy),var(--nf-entry-navy-2))!important}
body.public-body.login-page .login-mobile-logo{width:58px!important;height:36px!important;border-radius:10px!important;background:#fff!important;border:1px solid #E9DED4!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:6px 8px!important;overflow:hidden!important}
body.public-body.login-page .login-mobile-logo img{max-width:100%!important;max-height:100%!important;object-fit:contain!important}

/* 二次验证：右侧内容上移，步骤改为轻量细线时间轴 */
body.public-body.login-page .mfa-login-form-panel{padding:46px 40px 34px!important}
body.public-body.login-page .mfa-login-badge{align-self:flex-start!important}
body.public-body.login-page .mfa-login-head{margin-bottom:14px!important}
body.public-body.login-page .mfa-account-chip{margin:14px 0 18px!important;padding:15px 16px!important;border-radius:16px!important;border:1px solid #E7DDD4!important;background:#fff!important}
body.public-body.login-page .mfa-account-icon{background:#EDF3F6!important;color:var(--nf-entry-navy)!important}
body.public-body.login-page .mfa-account-chip b{color:var(--nf-entry-navy)!important;font-size:14px!important}
body.public-body.login-page .mfa-back-login{color:var(--nf-entry-navy)!important;font-weight:800!important}
body.public-body.login-page .mfa-login-visual{display:flex!important;flex-direction:column!important;justify-content:flex-start!important}
body.public-body.login-page .mfa-shield{
  position:relative!important;z-index:2!important;width:68px!important;height:68px!important;min-height:68px!important;margin:0 0 20px!important;border-radius:22px!important;clip-path:none!important;
  background:rgba(24,54,79,.20)!important;border:1px solid rgba(255,255,255,.14)!important;filter:none!important;
}
body.public-body.login-page .mfa-shield span{font-size:29px!important}
body.public-body.login-page .mfa-visual-copy{position:relative!important;z-index:2!important;max-width:520px!important}
body.public-body.login-page .mfa-visual-kicker{font-size:13px!important;font-weight:800!important;letter-spacing:.06em!important;color:rgba(255,255,255,.92)!important;margin-bottom:8px!important}
body.public-body.login-page .mfa-visual-copy h3{font-size:40px!important;line-height:1.08!important;font-weight:900!important;letter-spacing:-.035em!important;color:#fff!important;margin:0 0 14px!important}
body.public-body.login-page .mfa-visual-copy p{font-size:14px!important;line-height:1.9!important;color:rgba(255,255,255,.82)!important;max-width:500px!important;margin:0!important}
body.public-body.login-page .mfa-progress-list{position:relative!important;z-index:2!important;display:grid!important;gap:0!important;margin-top:24px!important;padding-left:8px!important}
body.public-body.login-page .mfa-progress-list:before{content:"";position:absolute;left:21px;top:14px;bottom:14px;width:1px;background:rgba(255,255,255,.20)}
body.public-body.login-page .mfa-progress-list>div{position:relative!important;display:grid!important;grid-template-columns:34px 1fr!important;gap:13px!important;align-items:start!important;padding:0 0 18px!important;border:0!important;border-radius:0!important;background:transparent!important}
body.public-body.login-page .mfa-progress-list>div:last-child{padding-bottom:0!important}
body.public-body.login-page .mfa-progress-list>div>span{position:relative!important;z-index:1!important;width:28px!important;height:28px!important;border-radius:50%!important;background:rgba(255,255,255,.13)!important;border:1px solid rgba(255,255,255,.16)!important;color:#fff!important;font-size:12px!important;font-weight:900!important}
body.public-body.login-page .mfa-progress-list .active>span{background:var(--nf-entry-navy)!important;box-shadow:0 0 0 5px rgba(24,54,79,.12)!important}
body.public-body.login-page .mfa-progress-list .done>span{background:rgba(255,255,255,.13)!important;color:#fff!important}
body.public-body.login-page .mfa-progress-list b{font-size:15px!important;line-height:1.45!important;color:#fff!important;margin:2px 0 4px!important}
body.public-body.login-page .mfa-progress-list small{font-size:12px!important;line-height:1.68!important;color:rgba(255,255,255,.75)!important;margin:0!important}
body.public-body.login-page .mfa-progress-list .active small{color:rgba(255,255,255,.80)!important}
body.public-body.login-page .mfa-session-note{position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;gap:8px!important;margin-top:20px!important;padding-top:0!important;color:rgba(255,255,255,.78)!important}
body.public-body.login-page .mfa-session-note b{font-size:12px!important;color:rgba(255,255,255,.88)!important}
body.public-body.login-page .mfa-session-note small{font-size:11px!important;color:rgba(255,255,255,.72)!important}

/* 界面配置：登录页内容维护区 */
body.app-body.raw-route-ui_config .nf-ui-login-config textarea{min-height:72px!important;resize:vertical!important}
body.app-body.raw-route-ui_config .nf-ui-login-config .help{margin-top:5px!important;color:#8A96A1!important;font-size:11px!important;line-height:1.6!important}
body.app-body.raw-route-ui_config .nf-login-logo-row{display:flex!important;align-items:center!important;gap:18px!important;padding:16px!important;border:1px solid #E7DDD3!important;border-radius:16px!important;background:#FCFAF7!important}
body.app-body.raw-route-ui_config .nf-login-logo-preview{width:160px!important;height:72px!important;flex:0 0 160px!important;border-radius:13px!important;border:1px solid #E4DAD0!important;background:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:10px!important;overflow:hidden!important;color:#8B96A0!important;font-size:12px!important}
body.app-body.raw-route-ui_config .nf-login-logo-preview img{max-width:100%!important;max-height:100%!important;object-fit:contain!important}
body.app-body.raw-route-ui_config .nf-login-logo-actions{flex:1!important;min-width:0!important}
body.app-body.raw-route-ui_config .nf-login-logo-actions input[type=file]{width:100%!important}
body.app-body.raw-route-ui_config .nf-login-logo-actions .check-label{margin-top:8px!important}

/* 登录安全页继续使用后台母版，但与入口色系一致 */
body.app-body.raw-route-security .nf-security-hero{
  background:
    linear-gradient(118deg,transparent 0 24%,rgba(255,255,255,.07) 24.1%,transparent 24.2%) no-repeat,
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.13),transparent 25%),
    linear-gradient(125deg,var(--nf-entry-orange-deep),var(--nf-entry-orange),var(--nf-entry-orange-light))!important;
  border-color:rgba(200,90,53,.08)!important;
}
body.app-body.raw-route-security .nf-security-hero h2{color:#fff!important}
body.app-body.raw-route-security .nf-security-hero p{color:rgba(255,255,255,.82)!important}
body.app-body.raw-route-security .nf-security-card .btn-primary{background:linear-gradient(135deg,var(--nf-entry-navy),var(--nf-entry-navy-2))!important;border-color:var(--nf-entry-navy)!important}

/* 公开查询/报价/预检/系统提示：同一暖驼背景与纸张卡片 */
body.public-body:not(.login-page){background:linear-gradient(180deg,#EFE7DD 0%,#E7DED3 100%)!important;color:var(--nf-entry-ink)!important}
body.public-body:not(.login-page) .public-main{
  min-height:calc(100vh - 140px)!important;
  background:radial-gradient(circle at 10% 12%,rgba(255,255,255,.58),transparent 26%),linear-gradient(180deg,#F2EBE3 0%,#EAE1D7 100%)!important;
}
body.public-body:not(.login-page) .public-top{background:rgba(255,253,250,.96)!important;border-bottom:1px solid var(--nf-entry-line)!important}
body.public-body:not(.login-page) .public-card,
body.public-body:not(.login-page) .public-order-hero,
body.public-body:not(.login-page) .nf-public-system-state{
  border:1px solid var(--nf-entry-line)!important;border-radius:20px!important;background:var(--nf-entry-paper)!important;box-shadow:0 16px 38px rgba(54,38,25,.08)!important;
}
body.public-body:not(.login-page) .public-card h1,
body.public-body:not(.login-page) .public-card h2,
body.public-body:not(.login-page) .public-order-hero h1,
body.public-body:not(.login-page) .nf-public-system-state h2{color:var(--nf-entry-navy)!important}
body.public-body:not(.login-page) .eyebrow{color:var(--nf-entry-orange-deep)!important}
body.public-body:not(.login-page) .btn-primary{background:linear-gradient(135deg,var(--nf-entry-navy),var(--nf-entry-navy-2))!important;border-color:var(--nf-entry-navy)!important;color:#fff!important}
body.public-body:not(.login-page) .public-foot{background:rgba(255,253,250,.72)!important;border-top:1px solid rgba(231,221,211,.8)!important;color:#7E8992!important}

/* 404 / 500 / 无权限 / 会话或业务异常 */
body.app-body .nf-system-state{background:radial-gradient(circle at 15% 12%,rgba(214,106,67,.055),transparent 22%)!important}
body.app-body .nf-system-state-card{border:1px solid var(--nf-entry-line)!important;border-radius:22px!important;background:linear-gradient(180deg,var(--nf-entry-paper),var(--nf-entry-paper-warm))!important;box-shadow:0 16px 38px rgba(54,38,25,.08)!important}
body.app-body .nf-system-state-icon{background:#F5EBE4!important;color:var(--nf-entry-orange-deep)!important;border:1px solid #ECD7CA!important}
body.app-body .nf-system-state-card h2{color:var(--nf-entry-navy)!important}
body.app-body .nf-system-state-actions .btn-primary{background:linear-gradient(135deg,var(--nf-entry-navy),var(--nf-entry-navy-2))!important;border-color:var(--nf-entry-navy)!important}

@media(max-width:980px){
  body.public-body.login-page .login-experience,body.public-body.login-page .mfa-login-experience{padding:18px!important;align-items:flex-start!important}
  body.public-body.login-page .login-shell-v2,body.public-body.login-page .mfa-login-shell{grid-template-columns:1fr!important;min-height:auto!important;margin:22px 0!important;border-radius:22px!important}
  body.public-body.login-page .login-visual-panel{min-height:390px!important;padding:32px 28px!important}
  body.public-body.login-page .login-brand-logo{width:190px!important;height:86px!important;flex-basis:190px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  body.public-body.login-page .login-brand-identity{gap:0!important}
  body.public-body.login-page .login-brand-badge{display:none!important}
  body.public-body.login-page .login-visual-main{margin-top:46px!important}
  body.public-body.login-page .login-visual-main h1{font-size:38px!important}
  body.public-body.login-page .login-visual-value{font-size:17px!important}
  body.public-body.login-page .login-visual-foot{position:static!important;margin-top:auto!important;padding-top:28px!important}
  body.public-body.login-page .login-form-panel,body.public-body.login-page .mfa-login-form-panel{min-height:auto!important;padding:34px 28px!important}
  body.public-body.login-page .mfa-login-visual{min-height:500px!important;padding:34px 28px!important}
}
@media(max-width:760px){
  body.public-body.login-page .login-experience,body.public-body.login-page .mfa-login-experience{padding:0!important;background:linear-gradient(180deg,#E9DED2,#F5F0EA)!important}
  body.public-body.login-page .login-shell-v2,body.public-body.login-page .mfa-login-shell{display:block!important;margin:58px 12px 18px!important;border-radius:18px!important}
  body.public-body.login-page .login-visual-panel,body.public-body.login-page .mfa-login-visual{display:none!important}
  body.public-body.login-page .login-form-panel,body.public-body.login-page .mfa-login-form-panel{padding:28px 22px 24px!important;border-radius:18px!important}
  body.public-body.login-page .login-form-head h2,body.public-body.login-page .mfa-login-head h2{font-size:30px!important}
  body.public-body.login-page .login-mobile-brand{display:flex!important}
}
