.admin-topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:20px;margin-bottom:24px}.admin-workspaces{display:flex;gap:6px;flex-wrap:wrap}.admin-workspaces button{background:transparent;color:#637281;border-color:transparent}.admin-workspaces button.active{background:var(--brand-blue);color:white}.admin-user{display:flex;gap:10px;align-items:center;font-size:12px}.admin-user button{padding:6px 10px}.admin-panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.admin-panel-heading h2{margin:0 0 20px}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:620px}.admin-table th,.admin-table td{text-align:left;padding:13px 11px;border-bottom:1px solid var(--border-color);vertical-align:top;font-size:12px;max-width:450px;overflow-wrap:anywhere}.admin-table th{background:#f3f6f9;color:#637281;font-weight:500}.admin-table small{display:block;color:#788899;margin-top:5px;font-size:10px}.admin-table button,.admin-table .button{font-size:11px;padding:6px 9px;white-space:nowrap}.admin-table pre{white-space:pre-wrap;max-height:400px;overflow:auto;font-size:11px}.admin-error{color:#b63838}.admin-success{color:#26734d}.admin-login{max-width:420px}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.admin-form-grid textarea{width:100%}.admin-help{align-self:center;font-size:12px}.admin-check{display:inline-flex;align-items:center;margin-right:20px;gap:8px}.admin-check input{width:auto}#admin-dialog{width:min(1080px,94vw);max-height:90vh;padding:25px;border:1px solid var(--border-color);border-radius:12px}#admin-dialog::backdrop{background:#17324d66}.admin-dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.admin-dialog-head h2{margin:0}#admin-dialog label select[multiple]{min-height:110px}#admin-import-json{width:100%}.admin-view [hidden],#admin-menu[hidden],.admin-workspaces [hidden],.admin-user [hidden]{display:none!important}.sidebar nav{margin-top:14px;gap:2px}.sidebar nav button{padding:11px}.sidebar{overflow-y:auto}.sidebar-foot{position:static;margin-top:30px}.admin-topbar+header .eyebrow{letter-spacing:1px}@media(max-width:850px){.admin-topbar{align-items:flex-start;flex-direction:column}.admin-user{align-self:flex-end}.admin-form-grid{grid-template-columns:1fr}.admin-workspaces button{padding:9px;font-size:12px}}@media(max-width:600px){.admin-workspaces{gap:0}.admin-workspaces button{padding:8px 5px;font-size:11px}.admin-user{align-self:flex-start}.admin-table{min-width:600px}#admin-dialog{padding:16px}.admin-view .metrics{grid-template-columns:1fr 1fr}}
.sidebar{width:244px;padding:28px 18px 22px;display:flex;flex-direction:column;overflow:hidden}
.sidebar .workspace{flex-shrink:0;font-size:18px;font-weight:600;line-height:1.5;color:#fff;border-top:0;border-bottom:1px solid #45617b;padding:2px 10px 23px}
.sidebar nav.admin-navigation{display:flex;flex-direction:column;gap:7px;flex:1;min-height:0;overflow-y:auto;margin:10px -5px 0;padding:0 5px;scrollbar-width:thin;scrollbar-color:#55718c transparent}
#admin-menu{display:contents}
.admin-nav-group{margin:0}
.sidebar .admin-workspace-button{display:flex;align-items:center;gap:11px;width:100%;min-height:46px;padding:12px;border-radius:8px;font-size:14px;color:#dce6ef;flex-shrink:0}
.sidebar .admin-workspace-button:hover{background:#2d4b66}
.sidebar .admin-workspace-button.active{background:#365470;color:#fff;font-weight:600}
.admin-nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;font-size:20px;font-weight:400}
.admin-nav-chevron{margin-left:auto;font-size:23px;line-height:16px;transition:transform .15s}
.admin-workspace-button[aria-expanded=true] .admin-nav-chevron{transform:rotate(90deg)}
.sidebar .admin-submenu{display:grid;gap:3px;margin:7px 0 9px 21px;padding-left:12px;border-left:1px solid #45617b}
.sidebar .admin-submenu button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:36px;padding:9px 11px;font-size:12px;color:#c5d4e1;border-radius:6px}
.sidebar .admin-submenu button:hover{background:#2d4b66;color:#fff}
.sidebar .admin-submenu button.active{background:#426583;color:#fff;box-shadow:inset 3px 0 #a7c9e8}
#pendingBadge{min-width:21px;padding:1px 6px;border-radius:4px;background:#526e88;color:#fff;font-size:10px;text-align:center;font-variant-numeric:tabular-nums}
.sidebar .sidebar-foot{position:static;flex-shrink:0;display:grid;gap:12px;margin:18px 9px 0;padding-top:19px;border-top:1px solid #45617b}
.sidebar-foot a{text-decoration:none;color:#dce6ef}
.sidebar-foot small{font-size:10px;color:#9fb4c8;line-height:1.8}
main{margin-left:244px;padding:26px 36px;min-width:0}
.admin-topbar{align-items:center;min-height:42px;padding-bottom:19px;margin-bottom:29px}
.admin-breadcrumb{display:flex;align-items:center;gap:12px;min-width:0;font-size:12px;color:#8191a1;line-height:1.8}
.admin-breadcrumb b{font-weight:500;color:#41586e}
.admin-user{color:#607488;flex-shrink:0}
.admin-status-dot{width:6px;height:6px;border-radius:50%;background:#5b8b79}
.admin-topbar+header .eyebrow{font-size:10px;font-weight:600;color:#6c879f}
body:not([data-admin-workspace=opportunities]) #localAgentNotice{display:none}
#localAgentNotice{font-size:12px;line-height:1.8;color:#64798d;padding:14px 18px}
.admin-overview-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px;gap:17px}
.admin-overview-metric{display:block;width:100%;text-align:left;color:var(--text-primary);background:#fff;border:1px solid var(--border-color);padding:23px;transition:box-shadow .15s,border-color .15s}
.admin-overview-metric:hover{border-color:#97b1c7;box-shadow:0 4px 15px #2444600a;filter:none}
.admin-overview-metric>span{font-size:12px;color:#64798d}
.admin-overview-metric strong{color:var(--brand-blue);font-size:36px;font-variant-numeric:tabular-nums;margin:15px 0 12px}
.admin-overview-metric small{display:block;font-size:11px;color:#81909f;line-height:1.7}
.admin-overview-metric:first-child{background:var(--brand-blue);border-color:var(--brand-blue)}
.admin-overview-metric:first-child>span,.admin-overview-metric:first-child small{color:#dae5ee}
.admin-overview-metric:first-child strong{color:#fff}
.admin-overview-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.admin-overview-modules .panel{min-width:0;padding:23px 24px}
.admin-overview-modules .admin-panel-heading{align-items:center;gap:12px;margin-bottom:5px}
.admin-overview-modules h2{margin:0;font-size:17px}
.admin-overview-modules .admin-panel-heading button{font-size:11px;padding:6px 9px;border:0;background:#f1f5f8;color:#53728e}
.admin-overview-modules .muted{margin:8px 0 17px}
.admin-overview-modules .stat-line{font-size:12px;padding:14px 0;color:#718497}
.admin-overview-modules .stat-line b{color:#354f66;font-size:15px;font-weight:500;font-variant-numeric:tabular-nums}
.admin-overview-modules .buttons{margin:20px 0 0}
.admin-overview-modules .buttons button{font-size:12px;padding:9px 12px}
.admin-overview-todos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-overview-todo{display:flex;align-items:center;gap:12px;min-width:0;text-align:left;padding:15px;background:#f8fafb;border-color:#e6ecf1;color:var(--text-primary)}
.admin-overview-todo b{font-size:12px;font-weight:500}
.admin-overview-todo small{display:block;color:#8090a0;font-size:11px;line-height:1.8;margin-top:3px}
.admin-todo-mark{display:grid;place-items:center;flex:0 0 29px;height:29px;border-radius:8px;font-size:22px;background:#edf2f6;color:#6b859b}
.admin-todo-mark.pending{background:#fff0db;color:#b77b35}
.admin-todo-mark.clear{font-size:13px;background:#eaf2ed;color:#6b8c79}
.admin-todo-arrow{margin-left:auto;color:#91a3b3}
@media(max-width:1150px){
 .sidebar{width:218px;padding-left:13px;padding-right:13px}
 main{margin-left:218px;padding:24px}
 .admin-overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
 .admin-topbar{flex-direction:row;align-items:center;gap:12px}
 .admin-user{align-self:auto;font-size:11px;gap:6px}
 .admin-overview-modules{grid-template-columns:1fr;gap:0}
 .admin-overview-todos{grid-template-columns:1fr}
}
@media(max-width:700px){
 .sidebar{position:static;width:100%;padding:12px 15px;overflow:visible}
 .sidebar .brand,.sidebar .workspace,.sidebar .sidebar-foot{display:none}
 .sidebar nav.admin-navigation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex:none;gap:6px;margin:0;padding:0;overflow:visible}
 .admin-nav-group{display:contents}
 .sidebar .admin-workspace-button{min-height:42px;padding:10px 8px;gap:6px;font-size:12px;justify-content:center}
 .admin-nav-icon{flex-basis:17px;font-size:17px}
 .admin-nav-chevron{font-size:18px;margin-left:0}
 [data-workspace=overview]{order:1}
 [data-workspace=opportunities]{order:2}
 [data-workspace=customers]{order:3}
 [data-workspace=platform]{order:4}
 .sidebar .admin-submenu{grid-column:1/-1;order:5;display:flex;gap:5px;overflow-x:auto;max-width:100%;margin:4px 0 0;padding:9px 0 0;border-left:0;border-top:1px solid #45617b}
 .sidebar .admin-submenu button{width:auto;flex-shrink:0;min-height:34px;padding:8px 11px}
 .sidebar .admin-submenu button.active{box-shadow:none}
 main{margin-left:0;padding:20px 16px}
 .admin-topbar{margin-bottom:22px;padding-bottom:14px;flex-wrap:wrap}
 .admin-breadcrumb{font-size:11px;gap:7px;flex-wrap:wrap}
 .admin-user{align-self:auto}
 .admin-overview-metrics{gap:10px;margin-bottom:17px}
 .admin-overview-metric{padding:18px 15px}
 .admin-overview-metric strong{font-size:30px}
 .admin-overview-modules .panel{padding:20px 18px}
 .admin-panel-heading{align-items:flex-start;flex-wrap:wrap;gap:4px}
 .admin-overview-modules .admin-panel-heading{flex-wrap:nowrap}
 .admin-overview-modules .admin-panel-heading button{white-space:nowrap}
}
@media(max-width:450px){
 .sidebar nav.admin-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sidebar .admin-workspace-button{justify-content:flex-start;padding-left:13px}
 .admin-nav-chevron{margin-left:auto}
 .admin-overview-metric small{font-size:10px}
}

/* 后台采用相同蓝灰色系，提高正文与辅助信息的可读性。 */
:root{--text-primary:#243b50;--text-muted:#52697d;--border-color:#d7e1e9;font-size:15px}
body{line-height:1.6}
header p,.muted,.head-right,.toolbar p,.card p,.pipeline p,.entry,.rule-line,.command-hint{font-size:14px;color:var(--text-muted)}
h1{font-size:30px}h2{font-size:20px}
label{font-size:14px;color:#465b6e}
input::placeholder,textarea::placeholder{color:#65798a;opacity:1}
button,.button{font-size:14px;line-height:1.5}
button:focus-visible,.button:focus-visible,summary:focus-visible{outline:3px solid #7296b6;outline-offset:3px}
table,.admin-table th,.admin-table td{font-size:14px}
th,.admin-table th{font-weight:600;color:#4c6479;background:#edf2f6}
td{color:#30485c}td small,.admin-table small,td .mono{font-size:13px;color:#596f82;line-height:1.7}
.admin-table button,.admin-table .button{font-size:13px;padding:8px 11px}
.opportunity-table{min-width:1040px;table-layout:fixed}
.opportunity-table th:first-child{width:27%}
.opportunity-table th:nth-child(2){width:9%}
.opportunity-table th:nth-child(3){width:8%}
.opportunity-table th:nth-child(4),.opportunity-table th:nth-child(6){width:10%}
.opportunity-table th:nth-child(5){width:13%}
.opportunity-table th:last-child{width:116px}
.opportunity-table th:nth-child(7){width:120px}
.opportunity-table :is(th,td):last-child{position:sticky;right:0;z-index:1;background:#fff;box-shadow:-6px 0 10px #243b5008}
.opportunity-table th:last-child{background:#edf2f6}
.opportunity-table td{vertical-align:top;padding-top:18px;padding-bottom:18px;overflow-wrap:anywhere}
.opportunity-table .link{font-size:15px;font-weight:600;line-height:1.7}
.opportunity-table td:last-child button{white-space:nowrap;padding:9px 11px}
.opportunity-table tbody tr:hover{background:#f6f9fc}
.pill,.tag{font-size:13px;line-height:1.6}
.pill.command-none{color:#596775}
.tabs{overflow-x:auto}.tabs button{font-size:16px;color:#52697d;white-space:nowrap}.tabs button.active{font-weight:600}
.sidebar .admin-workspace-button{font-size:16px}
.sidebar .admin-submenu button{font-size:14px;min-height:40px;color:#e0e9f1}
.sidebar-foot small{font-size:12px;color:#c0d0de}
.admin-breadcrumb,.admin-user,#localAgentNotice{font-size:14px;color:#52697d}
.metric label,.admin-overview-metric>span{font-size:14px;color:#52697d}
.metric small,.admin-overview-metric small{font-size:13px;color:#596f82}
.admin-overview-metric:first-child>span,.admin-overview-metric:first-child small{color:#eef4f9}
.empty,footer{font-size:13px;color:#596f82}
#pendingBadge{font-size:12px}
#businessBackendFilters{display:flex;gap:10px;flex-wrap:wrap;padding:14px 0;border-top:1px solid #e1e8ef;border-bottom:1px solid #e1e8ef}
#businessBackendFilters>button{order:1;margin-left:auto;align-self:flex-start}
#businessBackendFilters>.business-filter-group{border:1px solid #d7e1e9;border-radius:6px;background:#f7f9fb;min-width:132px}
#businessBackendFilters>.business-filter-group>summary{padding:10px 12px;cursor:pointer;font-size:14px;color:#3c566d}
#businessBackendFilters>.business-filter-group[open]{flex-basis:100%;background:#fff}
#businessBackendFilters .filter-grid{padding:8px 16px 16px;gap:16px}
#businessBackendFilters .filter-grid :is(label,.filter-field){margin:0;font-size:14px;color:#465b6e}
#businessBackendFilters .filter-grid small{font-size:13px;color:#596f82}
#businessBackendFilters .ms-option{display:flex;flex-direction:row}

/* 商机详情：固定标题、分区导航与保存栏，中间独立滚动。 */
#modal.opportunity-dialog{width:min(1200px,96vw);height:92vh;max-height:92vh;padding:0;border:1px solid #d7e1e9;overflow:hidden;box-shadow:0 24px 80px #172d4540}
#modal.opportunity-dialog[open]{display:flex;flex-direction:column}
.opportunity-dialog .modal-head{flex-shrink:0;padding:16px 26px;margin:0;background:#fff;border-bottom:1px solid #dde6ee}
.opportunity-dialog .modal-head h2{font-size:20px}
.opportunity-section-nav{display:flex;gap:4px;flex-shrink:0;padding:10px 22px;background:#fff;border-bottom:1px solid #dde6ee;overflow-x:auto}
.opportunity-section-nav button{padding:8px 12px;border:0;background:#edf3f8;color:#365f84;white-space:nowrap;font-size:14px}
.opportunity-section-nav button:hover{background:#dce9f3;filter:none}
.opportunity-dialog #modalBody{flex:1;min-height:0;overflow-y:auto;padding:24px 28px;background:#f4f7fa;scroll-padding:20px;scrollbar-gutter:stable}
.opportunity-dialog .opportunity-heading{gap:24px;margin-bottom:20px}
.opportunity-dialog .opportunity-heading>div:first-child{flex:1;min-width:0}
.opportunity-dialog .opportunity-heading h2{font-size:24px;line-height:1.5;margin:6px 0 10px}
.opportunity-dialog .opportunity-heading p{font-size:14px;color:#52697d}
.opportunity-dialog .opportunity-heading>.tags{max-width:32%;justify-content:flex-end}
.opportunity-dialog .section-kicker{font-size:12px;color:#52697d;letter-spacing:1px}
.opportunity-dialog .detail-section{padding:22px 24px;margin:0 0 20px;border-color:#d7e1e9}
.opportunity-dialog .detail-section h3{font-size:18px;line-height:1.6}
.opportunity-dialog .pending-section{padding:14px 20px}
.opportunity-dialog .pending-section .section-kicker{display:none}
.opportunity-dialog .pending-section h3{font-size:16px}
.opportunity-dialog .pending-section p{display:none}
.opportunity-dialog .pending-chip,.opportunity-dialog .pending-count{font-size:13px}
.opportunity-dialog .basic-section>.section-title{align-items:center;margin-bottom:4px;padding-bottom:16px}
.opportunity-dialog .basic-section>.section-title .muted{max-width:55%;font-size:13px;text-align:right}
.opportunity-dialog .business-field-group{margin:0;padding:24px 0;border-top:1px solid #e1e8ef}
.opportunity-dialog .business-field-group:last-child{padding-bottom:0}
.opportunity-dialog .business-field-group .group-head{margin:0 0 20px;padding:0;border:0;gap:8px 14px}
.opportunity-dialog .business-field-group .group-head h4{border-left:3px solid #365f84;padding-left:10px;font-size:16px}
.opportunity-dialog .business-field-group .group-head p{font-size:13px;color:#596f82}
.opportunity-dialog .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.opportunity-dialog label{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0;font-size:14px;line-height:1.6;color:#465b6e}
.opportunity-dialog .form-grid>label{margin:0}
.opportunity-dialog input:not([type=checkbox]):not([type=hidden]),.opportunity-dialog select{width:100%;height:44px;padding:9px 12px;line-height:24px;font-size:15px;border-color:#b8c8d5}
.opportunity-dialog textarea{width:100%;min-height:104px;font-size:15px;line-height:1.7;padding:10px 12px;border-color:#b8c8d5}
.opportunity-dialog .business-field-group textarea[name=title]{min-height:78px;height:78px}
.opportunity-dialog label small{font-size:13px;color:#596f82;line-height:1.6}
.opportunity-dialog .field-required{font-size:12px;font-weight:400;color:#8b5b22;margin-left:6px}
.opportunity-dialog .readonly-inline{margin:0 0 2px;padding:12px 16px;border:1px solid #dce5ed;background:#f0f5f9}
.opportunity-dialog .readonly-inline span,.opportunity-dialog .readonly-inline small,.opportunity-dialog .readonly-grid span,.opportunity-dialog .readonly-grid small{font-size:13px;color:#52697d}
.opportunity-dialog .readonly-inline b,.opportunity-dialog .readonly-grid b{font-size:15px;color:#243b50}
.opportunity-dialog .check,.opportunity-dialog .ms-option{flex-direction:row;align-items:center}
.opportunity-dialog .ms-option{margin:0;font-size:14px}
.opportunity-dialog .detail-fields:disabled{opacity:1}
.opportunity-dialog .detail-fields:disabled :is(input,select,textarea,.ms-trigger){background:#f0f4f7;color:#344c61;border-color:#d7e1e9;opacity:1;-webkit-text-fill-color:#344c61}
.opportunity-dialog .detail-fields:disabled .ms-remove{display:none}
.opportunity-dialog .command-box{margin:0 0 20px;padding:22px 24px;border-color:#d7e1e9}
.opportunity-dialog .command-box>b{font-size:18px}
.opportunity-dialog .progress-section form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin-top:18px}
.opportunity-dialog .progress-section form label{margin:0}
.opportunity-dialog .progress-section form label:first-child{grid-row:auto}
.opportunity-dialog .progress-section form label:has(textarea),.opportunity-dialog .progress-section form label:has([name=nextStep]),.opportunity-dialog .progress-section form .buttons{grid-column:1/-1}
.opportunity-dialog .progress-section form .buttons{justify-content:flex-end;margin:0}
.opportunity-dialog .progress-item time{font-size:13px;color:#596f82}
.opportunity-dialog .revision-reason>summary,.opportunity-dialog .system-details>summary{font-size:14px;color:#465b6e}
.opportunity-dialog .opportunity-savebar{flex-shrink:0;margin:0;padding:14px 26px;background:#fff;border-top:1px solid #d7e1e9;justify-content:space-between;box-shadow:0 -4px 16px #243b5008}
.opportunity-savebar>span{font-size:13px;color:#52697d}
.opportunity-savebar>button{min-height:44px;padding:10px 24px;font-size:15px;font-weight:600}
@media(max-width:900px){
 .opportunity-dialog .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .opportunity-dialog #modalBody{padding:20px}
 .opportunity-dialog .opportunity-heading{display:block}
 .opportunity-dialog .opportunity-heading>.tags{max-width:none;justify-content:flex-start}
}
@media(max-width:600px){
 #modal.opportunity-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0}
 .opportunity-dialog .modal-head{padding:12px 16px}
 .opportunity-section-nav{padding:8px 12px}
 .opportunity-dialog #modalBody{padding:14px 12px;scrollbar-gutter:auto}
 .opportunity-dialog .detail-section,.opportunity-dialog .command-box{padding:16px}
 .opportunity-dialog .form-grid,.opportunity-dialog .progress-section form{grid-template-columns:minmax(0,1fr)}
 .opportunity-dialog .opportunity-heading h2{font-size:21px}
 .opportunity-dialog .section-title{flex-wrap:wrap;gap:8px}
 .opportunity-dialog .basic-section>.section-title .muted{max-width:none;text-align:left}
 .opportunity-dialog .opportunity-savebar{padding:12px 16px;gap:8px}
 .opportunity-savebar>span{font-size:12px}
 .opportunity-savebar>button{width:100%}
 .opportunity-dialog .progress-item>div{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.field-flash{animation:none}}
.form-validation-error{position:sticky;top:0;z-index:8;padding:12px 16px;background:#fff0ef;border:1px solid #dc8a82;border-radius:6px;color:#9b302a;font-size:14px}
[aria-invalid=true]{outline:2px solid #bc4f44;outline-offset:2px}
.admin-import-summary{padding:12px 16px;background:#fff5df;border-left:4px solid #b47814;color:#694b17}
.admin-import-new td:first-child{border-left:4px solid #b47814;background:#fffbef}
@media(min-width:601px){#metrics{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}}
@media(max-width:850px){.sidebar .admin-submenu{flex-wrap:wrap;overflow:visible;max-width:100%}.sidebar .admin-submenu button{min-height:36px}.admin-table :is(button,.button){min-height:32px}}
