:root {
    --navy:#071426;
    --navy2:#0d2038;
    --ink:#152235;
    --muted:#718096;
    --line:#e7ebf1;
    --bg:#f3f6fa;
    --blue:#2867e8;
    --cyan:#26c6da;
    --gold:#d7a84a;
    --white:#fff;
    --shadow:0 14px 40px rgba(17,32,54,.08)
}
* {
    box-sizing:border-box
}
html,body {
    margin:0;
    min-height:100%;
    font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;
    color:var(--ink);
    background:var(--bg)
}
a {
    text-decoration:none;
    color:inherit
}
button,input,textarea {
    font:inherit
}
.app-shell {
    display:grid;
    grid-template-columns:252px 1fr;
    min-height:100vh
}
.sidebar {
    position:fixed;
    inset:0 auto 0 0;
    width:252px;
    background:linear-gradient(160deg,#071426 0%,#0b1d34 58%,#102b48 100%);
    color:#d9e4f4;
    padding:27px 20px;
    display:flex;
    flex-direction:column;
    z-index:5
}
.brand {
    display:flex;
    align-items:center;
    gap:12px;
    padding:0 8px;
    color:white
}
.brand-mark {
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    border-radius:13px;
    color:#071426;
    font-size:25px;
    font-weight:900;
    background:linear-gradient(135deg,#fff 5%,#66e4eb 55%,#5aa1ff);
    box-shadow:0 8px 26px rgba(68,197,233,.25)
}
.brand strong {
    display:block;
    font-size:20px;
    letter-spacing:2px
}
.brand small {
    display:block;
    font-size:8px;
    letter-spacing:2.2px;
    color:#7f9bbb;
    margin-top:4px
}
.workspace-label {
    font-size:11px;
    color:#63809e;
    letter-spacing:2px;
    margin:39px 13px 13px
}
.nav {
    display:grid;
    gap:5px
}
.nav a {
    display:flex;
    align-items:center;
    gap:13px;
    padding:13px 14px;
    border-radius:10px;
    color:#96acc4;
    font-size:14px;
    transition:.2s
}
.nav a span {
    font-size:18px
}
.nav a:hover,.nav a.active {
    color:white;
    background:linear-gradient(90deg,rgba(54,121,226,.29),rgba(51,199,219,.08));
    box-shadow:inset 3px 0 #43d1db
}
.sidebar-foot {
    margin-top:auto;
    display:flex;
    align-items:center;
    gap:9px;
    padding:14px;
    color:#7891aa;
    font-size:12px;
    border-top:1px solid rgba(255,255,255,.07)
}
.sidebar-foot i {
    width:7px;
    height:7px;
    border-radius:50%;
    background:#42d99d;
    box-shadow:0 0 10px #42d99d
}
.main {
    grid-column:2;
    min-width:0
}
.topbar {
    height:94px;
    padding:19px 38px;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(18px);
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-bottom:1px solid var(--line);
    position:sticky;
    top:0;
    z-index:4
}
.topbar h1 {
    font-size:21px;
    margin:6px 0 0
}
.breadcrumb {
    font-size:10px;
    color:#91a0b3;
    letter-spacing:1.8px
}
.user-area {
    display:flex;
    align-items:center;
    gap:11px
}
.user-area strong,.user-area small {
    display:block;
    font-size:12px
}
.user-area small {
    color:#97a5b6;
    margin-top:3px
}
.avatar {
    width:38px;
    height:38px;
    border-radius:12px;
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,#e9f1ff,#d8fbfc);
    color:#1956bb;
    font-weight:800
}
.link-button {
    border:0;
    background:transparent;
    color:#3671d5;
    cursor:pointer;
    padding:7px 10px
}
.content {
    padding:34px 38px 60px;
    max-width:1640px;
    margin:auto
}
.welcome,.page-actions {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:27px
}
.welcome h2 {
    font-size:29px;
    margin:7px 0 8px;
    letter-spacing:-1px
}
.welcome p,.page-actions p {
    margin:0;
    color:var(--muted);
    font-size:14px
}
.eyebrow {
    font-size:10px;
    letter-spacing:2.5px;
    color:#6fe4e4;
    font-weight:800
}
.eyebrow.dark {
    color:#4a75b7
}
.primary {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    background:linear-gradient(120deg,#1e5dd7,#268dde);
    color:white;
    border:0;
    padding:12px 19px;
    border-radius:10px;
    font-weight:700;
    box-shadow:0 9px 25px rgba(38,104,218,.24);
    cursor:pointer
}
.primary.full {
    width:100%;
    padding:15px
}
.metric-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    margin-bottom:19px
}
.metric-card,.panel {
    background:white;
    border:1px solid #edf0f4;
    border-radius:16px;
    box-shadow:var(--shadow)
}
.metric-card {
    padding:23px;
    display:flex;
    gap:17px;
    align-items:center
}
.metric-card span,.metric-card small {
    display:block;
    color:#8492a5;
    font-size:12px
}
.metric-card strong {
    display:block;
    font-size:29px;
    margin:4px 0
}
.metric-icon {
    width:54px;
    height:54px;
    border-radius:16px;
    display:grid;
    place-items:center;
    font-size:23px
}
.metric-icon.blue {
    background:#eaf1ff;
    color:#2f6de0
}
.metric-icon.violet {
    background:#f0ebff;
    color:#7653d6
}
.metric-icon.gold {
    background:#fff4da;
    color:#bd8c25
}
.metric-icon.green {
    background:#e4f9f1;
    color:#1ba775
}
.dashboard-grid {
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:19px
}
.panel {
    padding:24px;
    margin-bottom:20px
}
.panel.span-2 {
    min-width:0
}
.panel-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:27px
}
.panel-head h3 {
    margin:6px 0 0;
    font-size:18px
}
.flow {
    display:flex;
    align-items:center;
    justify-content:space-between
}
.flow>div {
    min-width:130px;
    padding:16px;
    border-radius:12px;
    background:#f8fafc
}
.flow b,.flow strong,.flow small {
    display:block
}
.flow b {
    font-size:10px;
    color:#3873d7
}
.flow strong {
    font-size:14px;
    margin:7px 0
}
.flow small {
    color:#8a98aa
}
.flow i {
    font-style:normal;
    color:#b8c5d3
}
.risk-list p {
    display:flex;
    align-items:center;
    border-bottom:1px solid #edf0f4;
    padding:11px 0;
    margin:0;
    font-size:13px
}
.risk-list b {
    margin-left:auto
}
.risk {
    width:8px;
    height:8px;
    border-radius:50%;
    margin-right:10px
}
.risk.red {
    background:#ee6b6e
}
.risk.yellow {
    background:#edb94c
}
.risk.green {
    background:#38c793
}
.tag {
    display:inline-block;
    border-radius:20px;
    background:#eef2f7;
    color:#6f7f92;
    font-size:11px;
    padding:5px 10px
}
.tag.success {
    background:#e5f8f1;
    color:#15966c
}
.tag.warning {
    background:#fff3db;
    color:#b27c18
}
.form-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-bottom:20px
}
.form-grid label {
    display:grid;
    gap:8px;
    color:#526277;
    font-size:13px
}
.form-grid input,.form-grid textarea,.login-card input {
    border:1px solid #dfe5ed;
    border-radius:9px;
    padding:12px 13px;
    outline:none;
    background:#fbfcfe
}
.form-grid input:focus,.form-grid textarea:focus,.login-card input:focus {
    border-color:#4380de;
    box-shadow:0 0 0 3px rgba(67,128,222,.1)
}
.form-grid textarea {
    min-height:85px;
    resize:vertical
}
.form-grid .span-2,.form-actions {
    grid-column:1/-1
}
.form-actions {
    display:flex;
    justify-content:flex-end
}
.hidden {
    display:none!important
}
.table-panel {
    padding:5px 0;
    overflow:auto
}
table {
    border-collapse:collapse;
    width:100%
}
th,td {
    text-align:left;
    padding:15px 20px;
    border-bottom:1px solid #edf0f4;
    font-size:13px
}
th {
    color:#8290a2;
    font-size:11px;
    letter-spacing:.5px;
    background:#fbfcfe
}
td strong,td small {
    display:block
}
td small {
    color:#94a0ae;
    margin-top:5px
}
.empty {
    text-align:center;
    color:#8997a8;
    padding:50px
}
.login-page {
    display:grid;
    grid-template-columns:minmax(480px,1.35fr) minmax(420px,.65fr);
    min-height:100vh;
    background:white
}
.login-visual {
    position:relative;
    overflow:hidden;
    color:white;
    padding:42px 57px;
    background:radial-gradient(circle at 75% 15%,rgba(31,178,202,.25),transparent 34%),radial-gradient(circle at 22% 70%,rgba(54,105,211,.28),transparent 30%),linear-gradient(145deg,#061325,#0a2240 65%,#0b3154)
}
.login-brand {
    display:flex;
    align-items:center;
    gap:14px;
    font-size:20px;
    letter-spacing:2px
}
.hero-copy {
    position:relative;
    z-index:2;
    max-width:680px;
    margin-top:19vh
}
.hero-copy h1 {
    font-size:56px;
    line-height:1.2;
    letter-spacing:-2px;
    margin:18px 0
}
.hero-copy h1 em {
    font-style:normal;
    background:linear-gradient(90deg,#62dce1,#6ca8ff);
    background-clip:text;
    color:transparent
}
.hero-copy p {
    max-width:600px;
    color:#abc0d5;
    font-size:16px;
    line-height:1.9
}
.hero-pills {
    display:flex;
    gap:12px;
    margin-top:31px
}
.hero-pills span {
    border:1px solid rgba(115,207,225,.24);
    background:rgba(27,86,124,.27);
    border-radius:20px;
    padding:8px 14px;
    color:#b5d8e4;
    font-size:12px
}
.visual-grid {
    position:absolute;
    right:-100px;
    bottom:-220px;
    width:620px;
    height:620px;
    border:1px solid rgba(91,195,224,.16);
    transform:rotate(28deg);
    background-image:linear-gradient(rgba(105,202,226,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(105,202,226,.06) 1px,transparent 1px);
    background-size:35px 35px
}
.login-panel {
    display:grid;
    place-items:center;
    padding:45px
}
.login-card {
    width:min(390px,100%)
}
.login-card h2 {
    font-size:33px;
    margin:11px 0 8px
}
.login-card>p {
    color:#8492a4;
    margin-bottom:34px
}
.login-card form {
    display:grid;
    gap:20px
}
.login-card label {
    display:grid;
    gap:8px;
    color:#546477;
    font-size:13px
}
.security-note {
    text-align:center;
    color:#9aa6b4;
    font-size:11px;
    margin-top:26px
}
.security-note span {
    color:#2ebc97
}
.alert {
    padding:12px 14px;
    border-radius:9px;
    margin:15px 0;
    font-size:13px
}
.alert.danger {
    background:#fff0f1;
    color:#bd454c
}
.error-page {
    display:grid;
    place-items:center;
    text-align:center
}
.error-page>div>strong {
    font-size:90px;
    color:#dce4ee
}
.error-page h1 {
    font-size:20px;
    margin:0 0 30px
}
@media(max-width:1000px) {
    .metric-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .dashboard-grid {
        grid-template-columns:1fr
    }
    .login-page {
        grid-template-columns:1fr
    }
    .login-visual {
        display:none
    }
}
@media(max-width:760px) {
    .app-shell {
        display:block
    }
    .sidebar {
        position:static;
        width:auto;
        height:auto
    }
    .nav {
        grid-template-columns:repeat(2,1fr)
    }
    .sidebar-foot {
        display:none
    }
    .main {
        grid-column:auto
    }
    .topbar,.content {
        padding-left:20px;
        padding-right:20px
    }
    .metric-grid {
        grid-template-columns:1fr
    }
    .flow {
        display:grid;
        gap:8px
    }
    .flow i {
        display:none
    }
    .form-grid {
        grid-template-columns:1fr
    }
    .form-grid .span-2,.form-actions {
        grid-column:auto
    }
}
.year-input {
    width:105px;
    padding:11px 12px;
    border:1px solid #dfe5ed;
    border-radius:9px;
    margin-right:8px
}
.assessment-hero {
    border-radius:18px;
    padding:28px 30px;
    margin-bottom:20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:#fff;
    box-shadow:var(--shadow)
}
.assessment-hero h2 {
    font-size:27px;
    margin:8px 0
}
.assessment-hero p {
    margin:0;
    color:rgba(255,255,255,.78)
}
.assessment-hero.risk-red {
    background:linear-gradient(130deg,#6f2632,#b44550)
}
.assessment-hero.risk-yellow {
    background:linear-gradient(130deg,#8d671e,#d39e39)
}
.assessment-hero.risk-green {
    background:linear-gradient(130deg,#10644e,#20a57e)
}
.score-ring {
    width:108px;
    height:108px;
    border-radius:50%;
    border:8px solid rgba(255,255,255,.22);
    display:grid;
    place-content:center;
    text-align:center;
    background:rgba(255,255,255,.08)
}
.score-ring strong {
    font-size:31px
}
.score-ring small {
    font-size:10px
}
.risk-tag.red {
    background:#ffeaec;
    color:#c84752
}
.risk-tag.yellow {
    background:#fff2d5;
    color:#ad7919
}
.risk-tag.green {
    background:#e3f8ef;
    color:#148f68
}
.empty-state {
    text-align:center;
    padding:70px 30px
}
.empty-state h2 {
    font-size:21px
}
.empty-state p {
    color:var(--muted)
}
.empty-icon {
    margin:auto;
    width:64px;
    height:64px;
    border-radius:20px;
    background:linear-gradient(135deg,#eaf2ff,#e1faf8);
    color:#3472d4;
    display:grid;
    place-items:center;
    font-size:28px
}
.metric-grid.compact {
    grid-template-columns:repeat(2,minmax(220px,330px))
}
select {
    border:1px solid #dfe5ed;
    border-radius:8px;
    padding:8px 10px;
    background:white;
    color:#43536a
}
.project-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:19px
}
.project-card {
    background:#fff;
    border:1px solid #e9eef4;
    border-radius:16px;
    padding:22px;
    box-shadow:var(--shadow)
}
.project-top,.project-foot {
    display:flex;
    align-items:center;
    justify-content:space-between
}
.project-top small {
    color:#98a5b5
}
.project-card h3 {
    margin:23px 0 9px;
    font-size:18px
}
.project-card p {
    color:var(--muted);
    font-size:12px
}
.progress,.mini-progress {
    height:7px;
    border-radius:8px;
    background:#edf1f6;
    overflow:hidden;
    margin:21px 0 12px
}
.progress i,.mini-progress i {
    display:block;
    height:100%;
    background:linear-gradient(90deg,#2867e8,#34cad4);
    border-radius:8px
}
.project-foot {
    font-size:12px;
    color:#8492a5
}
.project-foot a {
    color:#2867e8;
    font-weight:700
}
.span-all {
    grid-column:1/-1
}
.mini-progress {
    display:inline-block;
    width:70px;
    margin:0 8px 0 0;
    vertical-align:middle;
    height:6px
}
@media(max-width:1100px) {
    .project-grid {
        grid-template-columns:repeat(2,1fr)
    }
}
@media(max-width:760px) {
    .project-grid {
        grid-template-columns:1fr
    }
}
/* 运营驾驶舱 */
.home-hero {
    position:relative;
    overflow:hidden;
    min-height:184px;
    margin:-8px 0 22px;
    padding:31px 34px;
    border-radius:20px;
    color:#fff;
    background:radial-gradient(circle at 78% 20%,rgba(45,207,218,.24),transparent 26%),radial-gradient(circle at 52% 120%,rgba(47,100,224,.35),transparent 40%),linear-gradient(118deg,#07172c 0%,#0b2949 58%,#0d4160 100%);
    box-shadow:0 20px 46px rgba(12,35,65,.2);
    display:flex;
    align-items:center;
    justify-content:space-between
}
.home-hero h2 {
    position:relative;
    z-index:2;
    margin:9px 0 8px;
    font-size:30px;
    letter-spacing:-1px
}
.home-hero p {
    position:relative;
    z-index:2;
    margin:0;
    color:#a8bfd4;
    font-size:13px
}
.home-actions {
    position:relative;
    z-index:2;
    display:flex;
    gap:11px
}
.ghost-light,.hero-primary {
    display:inline-flex;
    align-items:center;
    border-radius:10px;
    padding:12px 17px;
    font-size:13px;
    font-weight:700
}
.ghost-light {
    border:1px solid rgba(255,255,255,.23);
    background:rgba(255,255,255,.06);
    color:#d9e8f5
}
.hero-primary {
    background:linear-gradient(120deg,#37ccd3,#3a83eb);
    color:#fff;
    box-shadow:0 12px 25px rgba(35,157,208,.26)
}
.hero-orbit {
    position:absolute;
    border:1px solid rgba(87,216,229,.12);
    border-radius:50%
}
.orbit-one {
    width:280px;
    height:280px;
    right:18%;
    top:-170px
}
.orbit-two {
    width:410px;
    height:410px;
    right:-100px;
    bottom:-330px
}
.home-metrics {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:18px
}
.home-metrics article {
    position:relative;
    overflow:hidden;
    background:#fff;
    border:1px solid #e9edf3;
    border-radius:16px;
    padding:21px 20px;
    display:flex;
    align-items:center;
    gap:15px;
    box-shadow:0 10px 30px rgba(21,40,70,.055)
}
.home-metrics span,.home-metrics small {
    display:block;
    color:#8492a5;
    font-size:11px
}
.home-metrics strong {
    display:block;
    font-size:27px;
    margin:4px 0
}
.home-metric-icon {
    width:49px;
    height:49px;
    border-radius:15px;
    display:grid;
    place-items:center;
    font-size:20px;
    font-weight:800
}
.home-metric-icon.blue {
    background:#e8f1ff;
    color:#2c69d9
}
.home-metric-icon.violet {
    background:#efeaff;
    color:#7252d4
}
.home-metric-icon.gold {
    background:#fff1d4;
    color:#b87e17
}
.home-metric-icon.green {
    background:#e2f8ef;
    color:#16936b
}
.metric-accent {
    position:absolute;
    right:0;
    top:0;
    width:3px;
    height:100%
}
.metric-accent.blue {
    background:#3d7be5
}
.metric-accent.violet {
    background:#8063d7
}
.metric-accent.gold {
    background:#dba53c
}
.metric-accent.green {
    background:#29b985
}
.home-layout {
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);
    gap:18px
}
.home-layout.lower {
    grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr)
}
.home-panel {
    padding:22px
}
.home-panel .panel-head {
    margin-bottom:18px
}
.home-panel .panel-head h3 {
    font-size:17px
}
.home-panel .panel-head p {
    margin:5px 0 0;
    color:#97a3b2;
    font-size:11px
}
.home-panel .panel-head>a {
    font-size:12px;
    color:#3472d3;
    font-weight:700
}
.overview-summary {
    display:flex;
    gap:9px
}
.overview-summary span {
    padding:7px 10px;
    border-radius:8px;
    background:#f3f6fa;
    color:#8290a2;
    font-size:10px
}
.overview-summary b {
    color:#27364b;
    font-size:13px;
    margin-left:4px
}
.trend-chart {
    height:225px;
    display:flex;
    align-items:flex-end;
    justify-content:space-around;
    gap:15px;
    border-bottom:1px solid #e8edf3;
    padding:18px 18px 0;
    background:repeating-linear-gradient(to top,transparent 0,transparent 44px,#eff2f6 45px)
}
.trend-column {
    height:100%;
    flex:1;
    display:grid;
    grid-template-rows:20px 1fr 28px;
    align-items:end;
    text-align:center
}
.trend-value {
    font-size:10px;
    color:#6f7f93
}
.trend-bar {
    height:100%;
    display:flex;
    align-items:flex-end;
    justify-content:center
}
.trend-bar i {
    display:block;
    width:min(28px,65%);
    min-height:8px;
    border-radius:8px 8px 2px 2px;
    background:linear-gradient(180deg,#34ccd5,#3470df);
    box-shadow:0 7px 15px rgba(46,113,220,.2)
}
.trend-column small {
    font-size:10px;
    color:#8c99a9;
    padding-top:8px
}
.chart-empty {
    margin:auto;
    color:#99a5b3;
    font-size:12px
}
.risk-panel {
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:18px
}
.risk-panel .panel-head,.risk-panel .task-strip {
    grid-column:1/-1
}
.risk-donut {
    width:126px;
    height:126px;
    margin:auto;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:conic-gradient(#e95763 0 var(--red),#e9b244 var(--red) var(--yellow),#35bd88 var(--yellow) 360deg);
    position:relative
}
.risk-donut:after {
    content:"";
    position:absolute;
    inset:16px;
    background:#fff;
    border-radius:50%
}
.risk-donut>div {
    position:relative;
    z-index:1;
    text-align:center
}
.risk-donut strong,.risk-donut small {
    display:block
}
.risk-donut strong {
    font-size:25px
}
.risk-donut small {
    font-size:10px;
    color:#8996a6
}
.risk-legend {
    align-self:center
}
.risk-legend p {
    display:flex;
    align-items:center;
    margin:10px 0;
    font-size:11px;
    color:#78879a
}
.risk-legend i {
    width:7px;
    height:7px;
    border-radius:50%;
    margin-right:8px
}
.risk-legend i.red {
    background:#e95763
}
.risk-legend i.yellow {
    background:#e9b244
}
.risk-legend i.green {
    background:#35bd88
}
.risk-legend b {
    margin-left:auto;
    color:#2f3d50
}
.task-strip {
    display:grid;
    grid-template-columns:1fr 1fr;
    border-top:1px solid #edf0f4;
    margin-top:17px;
    padding-top:14px
}
.task-strip>div {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 12px;
    font-size:11px;
    color:#8491a2
}
.task-strip>div+div {
    border-left:1px solid #edf0f4
}
.task-strip strong {
    font-size:18px;
    color:#2c3b50
}
.danger-text {
    color:#db5260!important
}
.home-project-list>a {
    display:grid;
    grid-template-columns:42px minmax(180px,1fr) 75px 110px 38px;
    align-items:center;
    gap:12px;
    padding:13px 4px;
    border-bottom:1px solid #edf0f4
}
.project-logo {
    width:38px;
    height:38px;
    border-radius:11px;
    background:linear-gradient(135deg,#e6f0ff,#ddf8f5);
    display:grid;
    place-items:center;
    color:#2c68ce;
    font-weight:800
}
.project-main strong,.project-main small {
    display:block
}
.project-main strong {
    font-size:12px
}
.project-main small {
    font-size:10px;
    color:#929fad;
    margin-top:5px
}
.project-status {
    font-size:10px;
    color:#55708e;
    background:#f0f4f8;
    border-radius:12px;
    padding:5px 8px;
    text-align:center
}
.project-progress {
    height:6px;
    background:#ecf0f5;
    border-radius:6px;
    overflow:hidden
}
.project-progress i {
    display:block;
    height:100%;
    border-radius:6px;
    background:linear-gradient(90deg,#2f73df,#34c6d1)
}
.home-project-list>a>b {
    font-size:11px;
    color:#627186
}
.deadline-list>a {
    display:grid;
    grid-template-columns:46px 1fr auto;
    align-items:center;
    gap:12px;
    padding:12px 0;
    border-bottom:1px solid #edf0f4
}
.date-block {
    height:46px;
    border-radius:10px;
    background:#edf3ff;
    text-align:center;
    display:grid;
    place-content:center;
    color:#2865ce
}
.date-block strong {
    font-size:17px
}
.date-block small {
    font-size:9px
}
.deadline-list>a>div:nth-child(2) strong,.deadline-list>a>div:nth-child(2) small {
    display:block;
    font-size:11px
}
.deadline-list>a>div:nth-child(2) small {
    color:#929faf;
    margin-top:5px
}
.days-left {
    font-size:10px;
    color:#56856f;
    background:#e6f6ef;
    padding:5px 8px;
    border-radius:12px
}
.days-left.urgent {
    color:#c84d56;
    background:#ffebed
}
.home-empty {
    text-align:center;
    padding:28px;
    color:#97a3b2
}
.home-empty>span {
    font-size:28px;
    color:#5b8ddb
}
.home-empty p {
    font-size:11px
}
.home-empty a {
    font-size:11px;
    color:#2b6ed7
}
.home-empty.small {
    padding:50px 0
}
.quick-panel {
    margin-bottom:0
}
.quick-grid {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:11px
}
.quick-grid>a {
    position:relative;
    padding:15px;
    border:1px solid #e9edf3;
    border-radius:13px;
    transition:.2s
}
.quick-grid>a:hover {
    transform:translateY(-2px);
    box-shadow:0 10px 25px rgba(26,48,80,.08);
    border-color:#d6e2f3
}
.quick-grid strong,.quick-grid small {
    display:block
}
.quick-grid strong {
    font-size:12px;
    margin:11px 0 6px
}
.quick-grid small {
    font-size:9px;
    color:#96a2b1
}
.quick-grid>a>i {
    position:absolute;
    right:13px;
    top:15px;
    color:#a7b3c2;
    font-style:normal
}
.quick-icon {
    width:34px;
    height:34px;
    border-radius:10px;
    display:grid;
    place-items:center
}
.q1 {
    background:#e8f1ff;
    color:#2f6ed7
}
.q2 {
    background:#eeeaff;
    color:#7051d1
}
.q3 {
    background:#e2f8f0;
    color:#1d9a70
}
.q4 {
    background:#fff0d5;
    color:#b67b16
}
.q5 {
    background:#e5f7fa;
    color:#168ba5
}
@media(max-width:1200px) {
    .home-metrics {
        grid-template-columns:repeat(2,1fr)
    }
    .home-layout,.home-layout.lower {
        grid-template-columns:1fr
    }
    .quick-grid {
        grid-template-columns:repeat(3,1fr)
    }
}
@media(max-width:760px) {
    .home-hero {
        display:block;
        padding:26px
    }
    .home-actions {
        margin-top:22px;
        flex-wrap:wrap
    }
    .home-metrics {
        grid-template-columns:1fr
    }
    .risk-panel {
        grid-template-columns:1fr
    }
    .risk-panel .panel-head,.risk-panel .task-strip {
        grid-column:auto
    }
    .risk-legend {
        padding:0 25px
    }
    .home-project-list>a {
        grid-template-columns:42px 1fr auto
    }
    .project-status,.project-progress,.home-project-list>a>b {
        display:none
    }
    .quick-grid {
        grid-template-columns:1fr 1fr
    }
    .overview-summary {
        display:none
    }
}
.setup-page {
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:40px;
    background:radial-gradient(circle at 20% 10%,rgba(50,116,224,.18),transparent 30%),radial-gradient(circle at 85% 85%,rgba(45,202,211,.16),transparent 30%),linear-gradient(145deg,#061426,#0b2745);
    color:#fff
}
.setup-shell {
    width:min(720px,100%)
}
.setup-brand {
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:22px
}
.setup-brand strong,.setup-brand small {
    display:block
}
.setup-brand strong {
    font-size:20px;
    letter-spacing:2px
}
.setup-brand small {
    font-size:8px;
    color:#86a2bd;
    letter-spacing:2px;
    margin-top:4px
}
.setup-card {
    background:rgba(255,255,255,.97);
    color:#1a293d;
    border-radius:22px;
    padding:38px 42px;
    box-shadow:0 30px 80px rgba(0,0,0,.28)
}
.setup-card h1 {
    font-size:31px;
    margin:10px 0
}
.setup-card>p {
    color:#6f7e91;
    line-height:1.8
}
.setup-progress {
    margin:28px 0;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    position:relative
}
.setup-progress:before {
    content:"";
    position:absolute;
    left:10%;
    right:10%;
    top:19px;
    height:2px;
    background:#e2e8ef
}
.setup-progress>div {
    position:relative;
    text-align:center;
    z-index:1
}
.setup-progress i {
    margin:auto;
    width:38px;
    height:38px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#edf1f5;
    color:#8290a2;
    font-style:normal;
    border:5px solid #fff
}
.setup-progress .done i {
    background:#2aba88;
    color:#fff
}
.setup-progress .current i {
    background:#3476df;
    color:#fff;
    box-shadow:0 0 0 4px #dce9ff
}
.setup-progress b,.setup-progress small {
    display:block
}
.setup-progress b {
    font-size:11px;
    margin-top:9px
}
.setup-progress small {
    font-size:9px;
    color:#95a1af;
    margin-top:4px
}
.setup-path {
    display:flex;
    align-items:center;
    gap:14px;
    background:#f1f5f9;
    border-radius:10px;
    padding:13px 16px;
    font-size:11px
}
.setup-path code,.setup-note code {
    font-family:Consolas,monospace;
    color:#2b63bd
}
.setup-note {
    font-size:11px!important
}
.setup-shell footer {
    text-align:center;
    color:#718ca6;
    font-size:10px;
    letter-spacing:1px;
    margin-top:21px
}
@media(max-width:700px) {
    .setup-page {
        padding:18px
    }
    .setup-card {
        padding:28px 22px
    }
    .setup-progress {
        grid-template-columns:1fr;
        gap:12px
    }
    .setup-progress:before {
        display:none
    }
    .setup-progress>div {
        display:flex;
        text-align:left;
        align-items:center
    }
    .setup-progress i {
        margin:0 12px 0 0
    }
    .setup-progress b {
        margin:0
    }
    .setup-path {
        display:block
    }
    .setup-path code {
        display:block;
        margin-top:6px;
        word-break:break-all
    }
}
/* =========================================================
   KCZ Orange & White Theme · 2026
   Visual direction inspired by modern orange SaaS websites.
   ========================================================= */
:root {
    --navy:#2d241f;
    --navy2:#44342b;
    --ink:#27221f;
    --muted:#84766e;
    --line:#f0e8e2;
    --bg:#faf8f6;
    --blue:#ff6b21;
    --cyan:#ff9a52;
    --gold:#ff8a34;
    --white:#fff;
    --orange:#ff6a1a;
    --orange-dark:#e9500a;
    --orange-soft:#fff2e8;
    --orange-pale:#fff8f3;
    --shadow:0 12px 35px rgba(84,45,19,.065);
}
html,body {
    color:var(--ink);
    background:var(--bg)
}
::selection {
    background:#ffd5bb;
    color:#8b3100
}
.app-shell {
    grid-template-columns:250px 1fr
}
.sidebar {
    width:250px;
    color:#6e625c;
    padding:24px 17px;
    background:rgba(255,255,255,.98);
    border-right:1px solid #f0e7e1;
    box-shadow:8px 0 35px rgba(80,49,27,.035);
}
.brand {
    color:#2d2723;
    padding:0 10px
}
.brand-mark {
    color:#fff;
    border-radius:14px;
    background:linear-gradient(145deg,#ff8b3e,#ff5c12);
    box-shadow:0 9px 22px rgba(255,99,25,.25)
}
.brand small {
    color:#ba9c89
}
.workspace-label {
    color:#bd9d89;
    margin:35px 14px 13px;
    font-weight:700
}
.nav {
    gap:6px
}
.nav a {
    color:#796d66;
    border-radius:12px;
    padding:13px 14px;
    font-weight:500
}
.nav a span {
    color:#b29e92
}
.nav a:hover {
    color:#e9560c;
    background:#fff8f3
}
.nav a.active {
    color:#ed570c;
    background:linear-gradient(100deg,#fff0e5,#fff7f2);
    box-shadow:inset 3px 0 #ff6a1a,0 6px 18px rgba(255,104,25,.07);
    font-weight:700
}
.nav a.active span {
    color:#ff671a
}
.sidebar-foot {
    color:#9b8c84;
    border-top:1px solid #f2e8e2
}
.sidebar-foot i {
    background:#ff7a2d;
    box-shadow:0 0 10px rgba(255,106,26,.45)
}
.main {
    grid-column:2
}
.topbar {
    height:88px;
    padding:17px 38px;
    background:rgba(255,255,255,.88);
    border-bottom:1px solid #f0e7e1;
    box-shadow:0 4px 22px rgba(80,45,23,.025)
}
.topbar h1 {
    color:#332a25;
    font-size:20px
}
.breadcrumb {
    color:#bb9e8c
}
.avatar {
    color:#fff;
    border-radius:50%;
    background:linear-gradient(145deg,#ff934e,#ff6418);
    box-shadow:0 7px 18px rgba(255,104,25,.22)
}
.link-button {
    color:#ed5a12
}
.content {
    padding:31px 38px 60px
}
.eyebrow {
    color:#ffb17f
}
.eyebrow.dark {
    color:#ee6a25
}
.primary {
    background:linear-gradient(120deg,#ff7a2d,#ff5d12);
    border-radius:11px;
    box-shadow:0 9px 24px rgba(255,96,20,.22)
}
.primary:hover {
    transform:translateY(-1px);
    box-shadow:0 12px 27px rgba(255,96,20,.29)
}
.metric-card,.panel,.project-card {
    border-color:#f0e7e1;
    border-radius:17px;
    box-shadow:var(--shadow)
}
.metric-card:hover,.project-card:hover,.home-metrics article:hover {
    transform:translateY(-2px);
    box-shadow:0 17px 38px rgba(92,50,22,.09)
}
.metric-card,.project-card,.home-metrics article,.quick-grid>a {
    transition:.22s ease
}
.metric-icon.blue,.home-metric-icon.blue,.q1 {
    background:#fff0e5;
    color:#f35c12
}
.metric-icon.violet,.home-metric-icon.violet,.q2 {
    background:#fff1e9;
    color:#e96f37
}
.metric-icon.gold,.home-metric-icon.gold,.q4 {
    background:#fff5df;
    color:#dc8c20
}
.metric-icon.green,.home-metric-icon.green,.q3 {
    background:#eaf8f1;
    color:#26976f
}
.q5 {
    background:#fff0e9;
    color:#f06a2a
}
.form-grid input,.form-grid textarea,.login-card input,select,.year-input {
    border-color:#eadfd8;
    background:#fff;
    color:#342c27
}
.form-grid input:focus,.form-grid textarea:focus,.login-card input:focus,select:focus,.year-input:focus {
    border-color:#ff8a46;
    box-shadow:0 0 0 4px rgba(255,111,30,.10)
}
th {
    color:#9a887d;
    background:#fffaf7
}
th,td {
    border-bottom-color:#f1e8e2
}
.tag {
    background:#f7f1ed;
    color:#7c6b61
}
.tag.success {
    background:#eaf8f1;
    color:#248762
}
.tag.warning {
    background:#fff1df;
    color:#d87512
}
.empty-icon {
    background:#fff0e6;
    color:#f2631a
}
.progress,.mini-progress {
    background:#f4ebe5
}
.progress i,.mini-progress i,.project-progress i {
    background:linear-gradient(90deg,#ff8b3f,#ff5f15)
}
/* Dashboard */
.home-hero {
    min-height:194px;
    border-radius:22px;
    color:#fff;
    background: radial-gradient(circle at 78% 12%,rgba(255,255,255,.30),transparent 20%), radial-gradient(circle at 68% 120%,rgba(255,202,148,.45),transparent 37%), linear-gradient(118deg,#ff7c2d 0%,#ff6418 55%,#f04c08 100%);
    box-shadow:0 20px 45px rgba(216,75,5,.20)
}
.home-hero:before {
    content:"";
    position:absolute;
    width:250px;
    height:250px;
    border:55px solid rgba(255,255,255,.09);
    border-radius:50%;
    right:14%;
    top:-130px
}
.home-hero p {
    color:#fff1e8
}
.home-hero .eyebrow {
    color:#ffe4d1
}
.ghost-light {
    border-color:rgba(255,255,255,.45);
    background:rgba(255,255,255,.13);
    color:#fff
}
.ghost-light:hover {
    background:rgba(255,255,255,.23)
}
.hero-primary {
    background:#fff;
    color:#e9550c;
    box-shadow:0 10px 28px rgba(148,51,3,.18)
}
.hero-orbit {
    border-color:rgba(255,255,255,.17)
}
.home-metrics article {
    border-color:#f0e7e1;
    border-radius:17px;
    box-shadow:var(--shadow)
}
.metric-accent.blue,.metric-accent.violet,.metric-accent.gold {
    background:#ff7022
}
.metric-accent.green {
    background:#35ae80
}
.home-panel .panel-head>a,.home-empty a {
    color:#ef5c13
}
.overview-summary span {
    background:#fff4ed;
    color:#9c7965
}
.overview-summary b {
    color:#df5d1a
}
.trend-chart {
    border-bottom-color:#eee3dc;
    background:repeating-linear-gradient(to top,transparent 0,transparent 44px,#f5eee9 45px)
}
.trend-bar i {
    background:linear-gradient(180deg,#ffad72,#ff671b);
    box-shadow:0 7px 15px rgba(240,91,18,.17)
}
.risk-donut:after {
    background:#fff
}
.task-strip {
    border-top-color:#f1e7e1
}
.task-strip>div+div {
    border-left-color:#f1e7e1
}
.home-project-list>a,.deadline-list>a {
    border-bottom-color:#f1e8e2
}
.home-project-list>a:hover,.deadline-list>a:hover {
    background:#fffaf7
}
.project-logo {
    background:linear-gradient(135deg,#fff0e5,#ffe3d0);
    color:#ef5c13
}
.project-status {
    color:#a76540;
    background:#fff2e9
}
.project-progress {
    background:#f3e9e3
}
.date-block {
    background:#fff0e5;
    color:#ed5b12
}
.quick-grid>a {
    border-color:#f0e6df;
    background:#fff
}
.quick-grid>a:hover {
    border-color:#ffc39d;
    box-shadow:0 12px 27px rgba(239,91,17,.10)
}
.home-empty>span {
    color:#f17938
}
/* Assessments */
.assessment-hero.risk-red {
    background:linear-gradient(130deg,#cf493e,#ee6a52)
}
.assessment-hero.risk-yellow {
    background:linear-gradient(130deg,#e1781a,#f5a53d)
}
.assessment-hero.risk-green {
    background:linear-gradient(130deg,#1a8766,#36af82)
}
/* Orange-white login */
.login-page {
    grid-template-columns:minmax(520px,1.15fr) minmax(430px,.85fr);
    background:#fff
}
.login-visual {
    color:#342820;
    padding:42px 60px;
    background: radial-gradient(circle at 18% 18%,rgba(255,173,113,.26),transparent 27%), radial-gradient(circle at 86% 76%,rgba(255,106,26,.16),transparent 32%), linear-gradient(145deg,#fffaf6 0%,#fff3e9 58%,#ffe5d2 100%);
    border-right:1px solid #ffe4d2
}
.login-brand {
    color:#332821
}
.login-visual .brand-mark {
    color:#fff
}
.hero-copy {
    max-width:660px
}
.hero-copy .eyebrow {
    color:#ef641c
}
.hero-copy h1 {
    color:#2f2722;
    font-size:54px
}
.hero-copy h1 em {
    background:linear-gradient(90deg,#ff741f,#ef4f08);
    background-clip:text;
    color:transparent
}
.hero-copy p {
    color:#836f62
}
.hero-pills span {
    border-color:#ffd2b5;
    background:rgba(255,255,255,.58);
    color:#b95b26;
    box-shadow:0 5px 15px rgba(187,86,31,.04)
}
.visual-grid {
    border-color:rgba(255,113,32,.15);
    background-image:linear-gradient(rgba(255,113,32,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,113,32,.07) 1px,transparent 1px)
}
.login-panel {
    position:relative;
    background:#fff;
    padding:48px
}
.login-panel:before {
    content:"";
    position:absolute;
    width:170px;
    height:170px;
    border-radius:50%;
    right:-90px;
    top:-80px;
    background:#fff2e8
}
.login-card {
    width:min(400px,100%);
    position:relative
}
.login-card h2 {
    color:#2e2723
}
.login-card>p {
    color:#93827a
}
.login-card label {
    color:#665851
}
.login-card input {
    padding:14px 15px;
    border-radius:11px;
    background:#fffaf7
}
.security-note {
    color:#a99990
}
.security-note span {
    color:#f36a21
}
.alert.danger {
    background:#fff0ec;
    color:#c64e3b
}
/* Setup and error */
.setup-page {
    background:radial-gradient(circle at 20% 10%,rgba(255,153,82,.22),transparent 30%), radial-gradient(circle at 85% 85%,rgba(255,106,26,.16),transparent 30%), linear-gradient(145deg,#fffaf6,#ffeadb);
    color:#352921
}
.setup-card {
    background:#fff;
    border-color:#f2dfd2;
    box-shadow:0 22px 55px rgba(132,62,20,.11)
}
.setup-step.active .setup-number,.setup-step.done .setup-number {
    background:#ff6a1a;
    border-color:#ff6a1a
}
.setup-line {
    background:#f2ded1
}
/* Scrollbar */
* {
    scrollbar-width:thin;
    scrollbar-color:#ffc39d #f8f2ee
}
::-webkit-scrollbar {
    width:8px;
    height:8px
}
::-webkit-scrollbar-track {
    background:#f8f2ee
}
::-webkit-scrollbar-thumb {
    background:#ffc39d;
    border-radius:10px
}
@media(max-width:1000px) {
    .login-page {
        grid-template-columns:1fr
    }
    .login-visual {
        display:none
    }
}
@media(max-width:760px) {
    .sidebar {
        background:#fff;
        border-right:0;
        border-bottom:1px solid #f0e7e1
    }
    .main {
        grid-column:auto
    }
    .topbar {
        height:auto
    }
}
/* AI Intelligent Center */
.ai-hero {
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:28px 31px;
    margin-bottom:19px;
    border-radius:21px;
    background:linear-gradient(120deg,#fff5ed,#ffe8d7);
    border:1px solid #ffddc5
}
.ai-hero:after {
    content:"AI";
    position:absolute;
    right:235px;
    top:-25px;
    font-size:130px;
    font-weight:900;
    color:rgba(255,109,28,.055)
}
.ai-hero h2 {
    font-size:27px;
    margin:8px 0
}
.ai-hero p {
    margin:0;
    color:#8b6e5c;
    font-size:13px
}
.ai-security {
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:12px;
    background:#fff;
    padding:13px 16px;
    border-radius:13px;
    box-shadow:0 8px 25px rgba(160,71,18,.08);
    color:#ef5b12
}
.ai-security span {
    width:34px;
    height:34px;
    border-radius:10px;
    display:grid;
    place-items:center;
    background:#fff0e6
}
.ai-security strong,.ai-security small {
    display:block
}
.ai-security strong {
    font-size:12px
}
.ai-security small {
    font-size:9px;
    color:#9d8475;
    margin-top:4px
}
.ai-success {
    background:#e9f8f1;
    color:#21825f
}
.ai-tabs {
    display:flex;
    gap:6px;
    margin:0 0 18px;
    padding:5px;
    width:max-content;
    border-radius:12px;
    background:#f2e9e3
}
.ai-tabs button {
    border:0;
    background:transparent;
    padding:10px 18px;
    border-radius:9px;
    color:#89766a;
    cursor:pointer
}
.ai-tabs button.active {
    background:#fff;
    color:#ec5c13;
    font-weight:700;
    box-shadow:0 5px 15px rgba(104,55,25,.08)
}
.ai-capabilities {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-bottom:18px
}
.ai-capabilities article {
    display:flex;
    align-items:center;
    gap:14px;
    padding:19px;
    background:#fff;
    border:1px solid #f0e6df;
    border-radius:16px;
    box-shadow:var(--shadow)
}
.ai-capabilities strong,.ai-capabilities small {
    display:block
}
.ai-capabilities strong {
    font-size:14px
}
.ai-capabilities small {
    font-size:10px;
    color:#9b8a80;
    margin-top:5px
}
.ai-cap-icon {
    width:44px;
    height:44px;
    border-radius:13px;
    display:grid;
    place-items:center;
    font-size:19px
}
.ai-cap-icon.generate {
    background:#fff0e6;
    color:#ee5c13
}
.ai-cap-icon.review {
    background:#e9f8f1;
    color:#238d68
}
.ai-cap-icon.score {
    background:#fff4dc;
    color:#d68a19
}
.ai-run-form {
    padding:25px
}
.ai-run-form .panel-head,.ai-model-form .panel-head {
    margin-bottom:22px
}
.ai-prerequisite {
    padding:12px 14px;
    background:#fff3e9;
    color:#bc642e;
    border-radius:10px;
    font-size:12px
}
button:disabled {
    opacity:.45;
    cursor:not-allowed
}
.ai-model-layout {
    display:grid;
    grid-template-columns:minmax(460px,1fr) minmax(330px,.75fr);
    gap:18px;
    align-items:start
}
.ai-model-form {
    padding:24px
}
.ai-model-list {
    display:grid;
    gap:14px
}
.ai-purpose {
    border:1px solid #eadfd8;
    border-radius:10px;
    padding:10px 12px;
    display:flex;
    gap:13px;
    align-items:center
}
.ai-purpose legend {
    font-size:12px;
    color:#74635a
}
.ai-purpose label {
    display:flex;
    align-items:center;
    gap:5px;
    font-size:11px
}
.ai-purpose input {
    width:auto
}
.ai-model-card {
    padding:20px
}
.ai-model-top {
    display:flex;
    justify-content:space-between;
    align-items:center
}
.ai-provider {
    font-size:9px;
    letter-spacing:1.6px;
    color:#ee641f;
    font-weight:800
}
.ai-model-card h3 {
    margin:15px 0 4px
}
.ai-model-card>p {
    font-size:11px;
    color:#97847a
}
.ai-model-card dl {
    display:grid;
    gap:8px;
    margin:15px 0
}
.ai-model-card dl div {
    display:flex;
    justify-content:space-between;
    font-size:10px
}
.ai-model-card dt {
    color:#9f8d82
}
.ai-model-card dd {
    margin:0;
    color:#554942;
    max-width:65%;
    text-align:right
}
.ai-outline {
    border:1px solid #ffc7a4;
    background:#fff8f3;
    color:#ec5d14;
    padding:9px 14px;
    border-radius:9px;
    cursor:pointer
}
.danger-outline {
    border-color:#f4c8c4;
    color:#bd554a;
    background:#fff
}
.ai-task-table small {
    display:block;
    color:#9b8a80;
    margin-top:5px
}
.ai-result-row td {
    padding:0 18px 18px;
    background:#fffaf7
}
.ai-result-box {
    border:1px solid #f0e1d8;
    border-radius:12px;
    padding:16px;
    background:#fff
}
.ai-result-box pre {
    white-space:pre-wrap;
    word-break:break-word;
    max-height:420px;
    overflow:auto;
    line-height:1.8;
    font-family:inherit;
    font-size:12px;
    color:#514640
}
.ai-result-box form {
    display:flex;
    align-items:flex-end;
    gap:10px;
    border-top:1px solid #f0e7e1;
    padding-top:13px
}
.ai-result-box textarea {
    flex:1;
    min-height:50px;
    border:1px solid #eadfd8;
    border-radius:9px;
    padding:10px
}
@media(max-width:1100px) {
    .ai-model-layout {
        grid-template-columns:1fr
    }
    .ai-capabilities {
        grid-template-columns:1fr
    }
}
@media(max-width:760px) {
    .ai-hero {
        display:block
    }
    .ai-security {
        margin-top:18px
    }
    .ai-tabs {
        width:100%
    }
    .ai-tabs button {
        flex:1;
        padding:9px
    }
    .ai-model-layout {
        display:block
    }
    .ai-result-box form {
        display:grid
    }
    .ai-capabilities {
        gap:10px
    }
}
/* Evidence Chain */
.evidence-hero {
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:29px 32px;
    margin-bottom:18px;
    border-radius:21px;
    color:#fff;
    background:radial-gradient(circle at 74% 15%,rgba(255,255,255,.22),transparent 23%),linear-gradient(120deg,#ff812f,#f65c13 60%,#e94d08);
    box-shadow:0 18px 40px rgba(220,78,8,.18)
}
.evidence-hero:after {
    content:"";
    position:absolute;
    width:240px;
    height:240px;
    border:40px solid rgba(255,255,255,.08);
    border-radius:50%;
    right:18%;
    top:-135px
}
.evidence-hero h2 {
    font-size:28px;
    margin:8px 0
}
.evidence-hero p {
    margin:0;
    color:#fff0e6;
    font-size:12px
}
.evidence-hero .eyebrow {
    color:#ffe2ce
}
.evidence-hero-badge {
    z-index:1;
    display:flex;
    gap:12px;
    align-items:center;
    padding:13px 16px;
    border:1px solid rgba(255,255,255,.3);
    border-radius:13px;
    background:rgba(255,255,255,.12)
}
.evidence-hero-badge>span {
    font-size:24px
}
.evidence-hero-badge strong,.evidence-hero-badge small {
    display:block
}
.evidence-hero-badge strong {
    font-size:12px
}
.evidence-hero-badge small {
    font-size:9px;
    color:#ffe6d5;
    margin-top:4px
}
.evidence-filter {
    display:flex;
    gap:16px;
    padding:17px 20px;
    margin-bottom:18px
}
.evidence-filter label {
    display:grid;
    gap:7px;
    min-width:280px;
    color:#806d62;
    font-size:11px
}
.evidence-overview {
    display:grid;
    grid-template-columns:minmax(430px,1.25fr) minmax(430px,1fr);
    gap:18px;
    margin-bottom:18px
}
.evidence-score-card {
    display:flex;
    align-items:center;
    gap:21px;
    padding:21px
}
.evidence-score-card h3 {
    margin:6px 0;
    font-size:18px
}
.evidence-score-card p {
    margin:0;
    color:#9a887e;
    font-size:10px
}
.evidence-score-card form {
    margin-left:auto
}
.evidence-score-ring {
    --score:0;
    width:92px;
    height:92px;
    border-radius:50%;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    background:conic-gradient(#ff681b var(--score),#f3e8e1 0);
    position:relative
}
.evidence-score-ring:after {
    content:"";
    position:absolute;
    inset:9px;
    border-radius:50%;
    background:#fff
}
.evidence-score-ring div {
    z-index:1;
    text-align:center
}
.evidence-score-ring strong,.evidence-score-ring small {
    display:block
}
.evidence-score-ring strong {
    font-size:21px
}
.evidence-score-ring small {
    font-size:8px;
    color:#9a887d
}
.evidence-kpis {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px
}
.evidence-kpis article {
    padding:18px 14px;
    background:#fff;
    border:1px solid #f0e6df;
    border-radius:15px;
    box-shadow:var(--shadow)
}
.evidence-kpis span,.evidence-kpis small,.evidence-kpis strong {
    display:block
}
.evidence-kpis span {
    font-size:10px;
    color:#89776c
}
.evidence-kpis strong {
    font-size:23px;
    margin:8px 0;
    color:#ee5d13
}
.evidence-kpis small {
    font-size:8px;
    color:#aa988d
}
.evidence-kpis article.danger strong {
    color:#d9524c
}
.evidence-graph-panel {
    padding:23px;
    margin-bottom:18px
}
.evidence-graph {
    display:flex;
    align-items:stretch;
    justify-content:center;
    overflow:auto;
    padding:8px 3px 4px
}
.evidence-node {
    min-width:112px;
    padding:15px 11px;
    text-align:center;
    border:1px solid #f0e5de;
    background:#fffaf7;
    border-radius:14px
}
.evidence-node>span {
    width:35px;
    height:35px;
    margin:auto;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:#fff0e5;
    color:#ed5b12;
    font-weight:800
}
.evidence-node strong,.evidence-node b,.evidence-node small {
    display:block
}
.evidence-node strong {
    font-size:10px;
    margin-top:8px
}
.evidence-node b {
    font-size:19px;
    margin:4px
}
.evidence-node small {
    font-size:8px;
    color:#a29085
}
.graph-arrow {
    align-self:center;
    color:#e8a57e;
    font-style:normal;
    padding:0 7px
}
.evidence-layout {
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(330px,.75fr);
    gap:18px
}
.evidence-issues,.evidence-relations {
    padding:22px
}
.evidence-issue {
    display:grid;
    grid-template-columns:55px 1fr auto;
    gap:13px;
    align-items:center;
    padding:14px 0;
    border-bottom:1px solid #f1e8e2
}
.issue-level {
    padding:6px 8px;
    border-radius:8px;
    text-align:center;
    font-size:9px;
    font-weight:700
}
.severity-critical .issue-level {
    background:#ffebe9;
    color:#c64842
}
.severity-high .issue-level {
    background:#fff0e4;
    color:#d56622
}
.severity-medium .issue-level {
    background:#fff6df;
    color:#b77c19
}
.severity-low .issue-level {
    background:#edf6ff;
    color:#4c7fae
}
.evidence-issue strong {
    font-size:12px
}
.evidence-issue p {
    margin:5px 0;
    color:#786a62;
    font-size:10px
}
.evidence-issue small {
    color:#aa8c7a;
    font-size:9px
}
.evidence-issue form {
    display:grid;
    gap:6px;
    justify-items:end
}
.evidence-issue input {
    width:150px;
    border:1px solid #eaddd5;
    border-radius:8px;
    padding:7px;
    font-size:9px
}
.evidence-relations>article {
    padding:13px 0;
    border-bottom:1px solid #f1e8e2
}
.relation-path {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:6px
}
.relation-path span {
    font-size:9px;
    padding:6px 8px;
    background:#fff5ee;
    border-radius:7px
}
.relation-path i {
    font-style:normal;
    color:#ec8b50
}
.relation-meta {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-top:8px
}
.relation-meta small {
    color:#9d8a7e;
    font-size:9px
}
.evidence-relations form {
    display:flex;
    justify-content:flex-end;
    gap:5px;
    margin-top:7px
}
.evidence-empty {
    margin-top:18px
}
@media(max-width:1200px) {
    .evidence-overview,.evidence-layout {
        grid-template-columns:1fr
    }
}
@media(max-width:760px) {
    .evidence-hero {
        display:block
    }
    .evidence-hero-badge {
        margin-top:18px
    }
    .evidence-filter {
        display:grid
    }
    .evidence-filter label {
        min-width:0
    }
    .evidence-score-card {
        display:grid
    }
    .evidence-score-card form {
        margin-left:0
    }
    .evidence-kpis {
        grid-template-columns:1fr 1fr
    }
    .evidence-graph {
        justify-content:flex-start
    }
    .evidence-issue {
        grid-template-columns:50px 1fr
    }
    .evidence-issue form {
        grid-column:1/-1;
        justify-items:stretch
    }
    .evidence-issue input {
        width:100%
    }
}
/* Data exchange & Open API */
.exchange-hero {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:28px 31px;
    margin-bottom:18px;
    border:1px solid #ffdbc3;
    border-radius:21px;
    background:radial-gradient(circle at 82% 10%,rgba(255,123,36,.18),transparent 25%),linear-gradient(120deg,#fffaf6,#ffeddf)
}
.exchange-hero h2 {
    font-size:27px;
    margin:8px 0
}
.exchange-hero p {
    margin:0;
    color:#8e7769
}
.exchange-shield {
    padding:15px 18px;
    border-radius:13px;
    background:#fff;
    color:#ed6219;
    box-shadow:0 8px 25px rgba(160,71,18,.08)
}
.exchange-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-bottom:18px
}
.exchange-card,.api-panel,.preview-panel {
    padding:23px
}
.upload-box {
    padding:17px;
    border:1px dashed #ffb889;
    border-radius:12px;
    background:#fff9f4
}
.upload-box input {
    margin-top:9px
}
.template-links {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:16px
}
.template-links a {
    padding:7px 10px;
    border-radius:8px;
    background:#fff1e8;
    color:#e55c17;
    font-size:10px
}
.safe-note {
    padding:12px;
    border-radius:9px;
    background:#eff9f4;
    color:#398069;
    font-size:11px
}
.preview-count {
    display:flex;
    gap:8px
}
.preview-count b {
    padding:7px 10px;
    border-radius:8px;
    font-size:10px
}
.preview-count .ok {
    background:#e9f8f1;
    color:#21825f
}
.preview-count .bad {
    background:#fff0ec;
    color:#c64e3b
}
.json-preview {
    display:block;
    max-width:650px;
    white-space:normal;
    word-break:break-all
}
.confirm-bar {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:16px;
    background:#fff8f3
}
.secret-once {
    margin-bottom:18px;
    padding:18px;
    border:1px solid #efbc75;
    border-radius:14px;
    background:#fff8df;
    color:#77501e
}
.secret-once code {
    user-select:all
}
.api-layout {
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:22px
}
.api-scopes {
    display:flex;
    gap:14px;
    padding:13px;
    border:1px solid #ecdfd7;
    border-radius:10px
}
.api-scopes label {
    display:flex;
    align-items:center;
    gap:4px
}
.api-scopes input {
    width:auto
}
.api-doc {
    padding:18px;
    border-radius:14px;
    background:#29231f;
    color:#f9e6d9
}
.api-doc p {
    font-size:10px;
    color:#c9b8ae;
    line-height:1.7
}
.api-doc pre {
    padding:12px;
    border-radius:8px;
    background:#171310;
    color:#ff9a5e
}
.api-doc>code {
    display:block;
    margin:7px 0;
    color:#ffc29d
}
.api-clients {
    margin-top:20px;
    display:grid;
    gap:9px
}
.api-clients article {
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px;
    border:1px solid #eee2da;
    border-radius:10px
}
.api-clients article div {
    flex:1
}
.api-clients small {
    display:block;
    color:#9b877b;
    margin-top:4px
}
@media(max-width:1050px) {
    .exchange-grid,.api-layout {
        grid-template-columns:1fr
    }
}
@media(max-width:760px) {
    .exchange-hero {
        display:block
    }
    .exchange-shield {
        margin-top:15px
    }
    .confirm-bar {
        display:grid;
        gap:10px
    }
}
/* Agency operations */
.ops-hero {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:28px 31px;
    margin-bottom:18px;
    border-radius:21px;
    color:#fff;
    background:radial-gradient(circle at 80% 0,rgba(255,255,255,.2),transparent 28%),linear-gradient(120deg,#ff842f,#ed5510);
    box-shadow:0 17px 38px rgba(218,77,9,.18)
}
.ops-hero h2 {
    font-size:27px;
    margin:8px 0
}
.ops-hero p {
    margin:0;
    color:#ffecdf
}
.ops-hero .eyebrow {
    color:#ffe1cf
}
.ops-flow {
    padding:13px 17px;
    border:1px solid rgba(255,255,255,.3);
    border-radius:12px;
    background:rgba(255,255,255,.13);
    font-weight:700
}
.ops-kpis {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:13px;
    margin-bottom:18px
}
.ops-kpis article {
    padding:17px;
    border:1px solid #f0e3da;
    border-radius:15px;
    background:#fff;
    box-shadow:var(--shadow)
}
.ops-kpis span,.ops-kpis strong,.ops-kpis small {
    display:block
}
.ops-kpis span {
    font-size:10px;
    color:#8d786c
}
.ops-kpis strong {
    font-size:21px;
    color:#eb5d15;
    margin:8px 0
}
.ops-kpis small {
    font-size:8px;
    color:#aa978c
}
.ops-create-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-bottom:18px
}
.ops-card,.workload,.team-config {
    padding:21px
}
.ops-main-grid {
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(310px,.6fr);
    gap:18px;
    margin-bottom:18px
}
.workload article {
    display:grid;
    grid-template-columns:1fr auto;
    gap:6px;
    padding:11px 0;
    border-bottom:1px solid #f1e7e1
}
.workload small {
    display:block;
    color:#9c897e
}
.load-bar {
    grid-column:1/-1;
    height:6px;
    border-radius:9px;
    background:#f3e9e2;
    overflow:hidden
}
.load-bar i {
    display:block;
    height:100%;
    background:linear-gradient(90deg,#ff9a57,#ed5b13)
}
.inline-pay,.wo-actions {
    display:flex;
    align-items:center;
    gap:5px
}
.inline-pay input,.wo-actions input {
    width:95px;
    padding:7px;
    border:1px solid #eaded6;
    border-radius:7px
}
.wo-actions button,.inline-pay button {
    padding:6px 8px;
    border:0;
    border-radius:7px;
    background:#fff0e7;
    color:#d95716;
    cursor:pointer
}
.team-config {
    margin-top:18px
}
@media(max-width:1200px) {
    .ops-create-grid {
        grid-template-columns:1fr 1fr
    }
    .ops-kpis {
        grid-template-columns:repeat(3,1fr)
    }
    .ops-main-grid {
        grid-template-columns:1fr
    }
}
@media(max-width:760px) {
    .ops-hero {
        display:block
    }
    .ops-flow {
        margin-top:14px
    }
    .ops-create-grid,.ops-kpis {
        grid-template-columns:1fr
    }
    .wo-actions {
        flex-wrap:wrap
    }
}
/* Tech SME and extensible business */
.sme-hero {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:29px 32px;
    margin-bottom:18px;
    border:1px solid #ffdbc3;
    border-radius:21px;
    background:radial-gradient(circle at 78% 15%,rgba(255,125,40,.2),transparent 25%),linear-gradient(120deg,#fffaf6,#ffeadb)
}
.sme-hero h2 {
    font-size:27px;
    margin:8px 0
}
.sme-hero p {
    margin:0;
    color:#8e7668
}
.sme-badge {
    display:grid;
    gap:4px;
    padding:14px 17px;
    border-radius:13px;
    background:#fff;
    color:#ea5a12;
    box-shadow:0 8px 24px rgba(151,65,16,.08)
}
.sme-badge small {
    color:#a18473
}
.sme-grid {
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:18px;
    margin-bottom:18px
}
.sme-card,.template-panel {
    padding:22px
}
.check-line {
    display:flex!important;
    align-items:center;
    gap:8px;
    padding:12px;
    border-radius:9px;
    background:#fff4ec
}
.check-line input {
    width:auto
}
.sme-kpis {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:13px;
    margin-bottom:18px
}
.sme-kpis article {
    padding:17px;
    border:1px solid #f0e3da;
    border-radius:15px;
    background:#fff;
    box-shadow:var(--shadow)
}
.sme-kpis span,.sme-kpis strong,.sme-kpis small {
    display:block
}
.sme-kpis span {
    font-size:10px;
    color:#8c786d
}
.sme-kpis strong {
    font-size:23px;
    color:#ec5d14;
    margin:7px 0
}
.sme-kpis small {
    font-size:8px;
    color:#aa978c
}
.sme-actions {
    display:flex;
    flex-wrap:wrap;
    gap:4px
}
.sme-actions button {
    padding:6px 8px;
    border:0;
    border-radius:7px;
    background:#fff0e7;
    color:#d95716;
    cursor:pointer
}
.sme-bottom {
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:18px;
    margin-top:18px
}
.template-panel article {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:13px 0;
    border-bottom:1px solid #f0e6df
}
.template-panel small {
    display:block;
    color:#99857a;
    margin-top:5px
}
.template-panel>p {
    font-size:10px;
    line-height:1.7;
    color:#a07e69;
    background:#fff5ed;
    padding:12px;
    border-radius:9px
}
@media(max-width:1050px) {
    .sme-grid,.sme-bottom {
        grid-template-columns:1fr
    }
    .sme-kpis {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:760px) {
    .sme-hero {
        display:block
    }
    .sme-badge {
        margin-top:15px
    }
    .sme-kpis {
        grid-template-columns:1fr
    }
}
/* Authoritative qualification sync */
.qualification-hero {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:29px 32px;
    margin-bottom:18px;
    border-radius:21px;
    color:#fff;
    background:radial-gradient(circle at 78% 10%,rgba(255,255,255,.22),transparent 25%),linear-gradient(120deg,#ff812f,#e9530d)
}
.qualification-hero h2 {
    font-size:27px;
    margin:8px 0
}
.qualification-hero p {
    margin:0;
    color:#ffeadc
}
.qualification-hero .eyebrow {
    color:#ffe0cc
}
.qualification-notice {
    padding:18px;
    margin-bottom:18px;
    border-color:#ffd0b2;
    background:#fff8f3
}
.qualification-notice strong {
    color:#d95716
}
.qualification-notice p {
    margin-bottom:0;
    color:#8e7566
}
.qualification-rule {
    margin-top:17px;
    padding:15px;
    border-radius:11px;
    background:#28221e;
    color:#f4dfd2;
    font-size:11px
}
/* 全站布局修复与代理机构管理 */
html {
    overflow-x: hidden;
}
body {
    line-height: 1.65;
}
.sidebar {
    overflow-y: auto;
    overscroll-behavior: contain;
}
.nav a {
    flex: 0 0 auto;
    min-height: 46px;
    line-height: 1.35;
}
.content {
    width: 100%;
    min-width: 0;
}
.panel, .metric-card, .project-card, .exchange-card, .ops-card, .sme-card {
    min-width: 0;
}
.panel-head {
    gap: 16px;
    flex-wrap: wrap;
}
.page-actions {
    gap: 18px;
    flex-wrap: wrap;
}
.form-grid {
    align-items: start;
}
.form-grid label, .form-grid fieldset {
    min-width: 0;
}
.form-grid input, .form-grid select, .form-grid textarea {
    width: 100%;
    min-width: 0;
    line-height: 1.5;
}
.form-actions {
    gap: 10px;
    flex-wrap: wrap;
}
.table-panel {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.table-panel table {
    min-width: 860px;
}
th, td {
    min-width: 90px;
    vertical-align: middle;
    line-height: 1.55;
    word-break: break-word;
}
th {
    white-space: nowrap;
}
button, .primary, .ai-outline, .danger-outline {
    min-height: 38px;
    line-height: 1.3;
    white-space: nowrap;
}
.tag {
    line-height: 1.25;
    white-space: nowrap;
}
.agency-form {
    padding: 26px;
}
.form-section-title {
    padding-bottom: 12px;
    border-bottom: 1px solid #f0e4dc;
    color: #e85a13;
    font-size: 15px;
    font-weight: 700;
}
.agency-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}
.agency-card {
    padding: 24px;
}
.agency-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
}
.agency-card-head h3 {
    margin: 6px 0 4px;
    font-size: 19px;
}
.agency-card-head small {
    color: #9b877b;
}
.agency-info {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
}
.agency-info div {
    padding: 12px;
    border-radius: 10px;
    background: #fff9f5;
}
.agency-info dt {
    margin-bottom: 5px;
    color: #9c887c;
    font-size: 10px;
}
.agency-info dd {
    margin: 0;
    color: #463a33;
    font-size: 12px;
}
.agency-actions {
    display: flex;
    gap: 9px;
    margin-top: 20px;
    padding-top: 17px;
    border-top: 1px solid #f1e7e1;
}
.agency-edit-form, .agency-delete-form {
    margin-top: 18px;
    padding: 19px;
    border-radius: 13px;
    background: #fffaf7;
}
.agency-delete-form p {
    color: #8f7567;
    font-size: 12px;
}
.agency-delete-form input {
    width: 100%;
    margin: 9px 0;
    padding: 11px 12px;
    border: 1px solid #efc6be;
    border-radius: 9px;
}
.danger-button {
    border: 0;
    border-radius: 9px;
    background: #c94f43;
    color: #fff;
    padding: 10px 15px;
    cursor: pointer;
}
@media (max-width: 1180px) {
    .agency-grid {
        grid-template-columns: 1fr;
    }
    .content {
        padding-right: 24px;
        padding-left: 24px;
    }
}
@media (max-width: 760px) {
    .nav {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 8px;
    }
    .nav a {
        min-width: max-content;
    }
    .agency-info {
        grid-template-columns: 1fr;
    }
    .agency-card-head, .agency-actions {
        align-items: stretch;
        flex-direction: column;
    }
    .table-panel table {
        min-width: 720px;
    }
}
/* 代理机构账号与紧凑排版 */
.agency-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 520px), 720px));
    align-items: start;
}
.agency-card {
    width: 100%;
}
.agency-account-info {
    grid-column: 1 / -1;
    border: 1px solid #ffe0cc;
    background: linear-gradient(135deg, #fff7f0, #fffdfb) !important;
}
.agency-account-info dd {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.agency-edit-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.form-help {
    display: block;
    margin-top: 6px;
    color: #9b7d6c;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.55;
}
@media (max-width: 760px) {
    .agency-edit-form {
        grid-template-columns: 1fr;
    }
    .agency-edit-form .span-2 {
        grid-column: auto;
    }
}
/* 代理机构：双卡片浏览，编辑时横跨整行 */
.agency-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
}
.agency-card {
    max-width: none;
    transition: box-shadow .22s ease, border-color .22s ease;
}
.agency-card.is-editing {
    grid-column: 1 / -1;
    border-color: #ffd1b5;
    box-shadow: 0 18px 48px rgba(116, 65, 34, .11);
}
.agency-card.is-editing .agency-edit-form {
    width: 100%;
    padding: 24px;
}
.agency-card.is-editing .agency-info {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}
@media (max-width: 1280px) {
    .agency-grid {
        grid-template-columns: 1fr;
    }
    .agency-card.is-editing .agency-info {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 760px) {
    .agency-card.is-editing .agency-info {
        grid-template-columns: 1fr;
    }
}
/* 平台运营管理端驾驶舱 */
.platform-hero {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-bottom:20px;
    padding:28px 32px;
    border-radius:22px;
    background:linear-gradient(125deg,#25201d 0%,#493328 62%,#ff6b22 145%);
    color:#fff;
    overflow:hidden
}
.platform-hero span {
    color:#ffb486;
    font-size:12px;
    letter-spacing:2px
}
.platform-hero h2 {
    margin:7px 0;
    font-size:28px
}
.platform-hero p {
    margin:0;
    color:#dbcac1
}
.platform-health {
    display:flex;
    align-items:center;
    gap:12px;
    min-width:190px;
    padding:14px 17px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;
    background:rgba(255,255,255,.08)
}
.platform-health>i {
    width:11px;
    height:11px;
    border-radius:50%;
    background:#27d797;
    box-shadow:0 0 0 7px rgba(39,215,151,.15)
}
.platform-health div {
    display:flex;
    flex-direction:column
}
.platform-health small {
    color:#cdbbb1
}
.platform-kpis {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px
}
.platform-kpis>a {
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:19px 20px;
    border:1px solid #eee2da;
    border-radius:16px;
    background:#fff;
    color:#4a3a32;
    box-shadow:0 7px 24px rgba(66,43,29,.045);
    transition:.2s
}
.platform-kpis>a:hover {
    border-color:#ffb384;
    transform:translateY(-2px)
}
.platform-kpis span {
    color:#8e786c;
    font-size:12px
}
.platform-kpis strong {
    margin:7px 0 3px;
    color:#211b18;
    font-size:25px
}
.platform-kpis small {
    color:#d86427
}
.platform-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px
}
.platform-grid>.span-2 {
    grid-column:span 2
}
.platform-panel {
    padding:22px
}
.platform-panel .panel-head {
    margin-bottom:16px
}
.platform-panel .panel-head h3 {
    margin:4px 0
}
.platform-panel .panel-head p {
    margin:0
}
.chart-legend {
    display:flex;
    gap:12px;
    font-size:11px
}
.chart-legend span:before {
    content:'';
    display:inline-block;
    width:7px;
    height:7px;
    margin-right:5px;
    border-radius:2px
}
.chart-legend .agency:before,.multi-bars .agency {
    background:#ff762d
}
.chart-legend .enterprise:before,.multi-bars .enterprise {
    background:#4f83ed
}
.chart-legend .project:before,.multi-bars .project {
    background:#8e66dc
}
.multi-trend {
    display:flex;
    align-items:end;
    justify-content:space-around;
    height:210px;
    padding:15px 8px 0;
    border-bottom:1px solid #eee4de
}
.multi-trend-item {
    display:flex;
    flex:1;
    flex-direction:column;
    align-items:center;
    height:100%;
    gap:8px
}
.multi-bars {
    display:flex;
    align-items:end;
    justify-content:center;
    gap:4px;
    width:100%;
    height:175px
}
.multi-bars i {
    width:12%;
    min-width:8px;
    max-width:17px;
    border-radius:5px 5px 1px 1px
}
.online-block {
    display:flex;
    align-items:baseline;
    gap:10px;
    padding:20px;
    border-radius:14px;
    background:#fff7f1
}
.online-block strong {
    color:#f06420;
    font-size:42px
}
.online-block span {
    color:#8b766a
}
.platform-mini {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:12px
}
.platform-mini span {
    padding:12px;
    border-radius:10px;
    background:#faf7f5;
    color:#8b776c
}
.platform-mini b {
    float:right;
    color:#2e2520
}
.rank-list,.renewal-list,.system-status {
    display:flex;
    flex-direction:column
}
.rank-list a,.renewal-list a,.system-status>div {
    display:flex;
    align-items:center;
    gap:10px;
    padding:11px 3px;
    border-bottom:1px solid #f1e8e3;
    color:#493c35
}
.rank-list i {
    display:grid;
    place-items:center;
    width:23px;
    height:23px;
    border-radius:7px;
    background:#fff0e6;
    color:#e86625;
    font-style:normal;
    font-size:11px
}
.rank-list span,.renewal-list span {
    min-width:0;
    flex:1
}
.rank-list span small {
    display:block;
    color:#a08c81
}
.rank-list b,.renewal-list b {
    font-size:12px
}
.renewal-list small {
    color:#99857a
}
.renewal-list .urgent {
    color:#e25331
}
.system-status i {
    width:9px;
    height:9px;
    border-radius:50%;
    background:#25bf82
}
.system-status i.warning {
    background:#f0a13c
}
.system-status span {
    flex:1
}
.system-status b {
    color:#2da979;
    font-size:12px
}
@media(max-width:1300px) {
    .platform-kpis {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .platform-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:820px) {
    .platform-hero {
        align-items:flex-start;
        flex-direction:column
    }
    .platform-kpis,.platform-grid {
        grid-template-columns:1fr
    }
    .platform-grid>.span-2 {
        grid-column:auto
    }
}
/* 机构档案、审核、套餐与附件管理 */
.governance-actions {
    flex-wrap:wrap;
    margin-top:14px;
    padding-top:14px
}
.agency-governance {
    margin-top:15px;
    padding:20px;
    border:1px solid #f1d8c9;
    border-radius:13px;
    background:#fffaf6
}
.feature-switches {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    padding:16px;
    border:1px solid #eedfd6;
    border-radius:11px
}
.feature-switches legend {
    padding:0 7px;
    color:#db5d1b;
    font-weight:700
}
.feature-switches label {
    display:flex;
    align-items:center;
    gap:7px
}
.feature-switches input {
    width:auto
}
.attachment-list {
    display:flex;
    flex-direction:column;
    gap:7px;
    padding:12px;
    border-radius:9px;
    background:#fff
}
.audit-timeline {
    display:flex;
    flex-direction:column;
    margin-top:12px
}
.audit-timeline>div {
    display:grid;
    grid-template-columns:145px 90px 1fr;
    gap:10px;
    padding:10px 0;
    border-bottom:1px solid #eee2dc
}
.audit-timeline time,.audit-timeline span {
    color:#8b776d;
    font-size:12px
}
@media(max-width:760px) {
    .feature-switches {
        grid-template-columns:1fr
    }
    .audit-timeline>div {
        grid-template-columns:1fr
    }
}
/* AI模型治理 */
.ai-model-actions {
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin:15px 0
}
.ai-model-actions form {
    margin:0
}
.ai-model-edit {
    margin:14px 0;
    padding:18px;
    border:1px solid #f1d8ca;
    border-radius:13px;
    background:#fff9f5
}
.ai-model-card dl {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
@media(max-width:760px) {
    .ai-model-card dl {
        grid-template-columns:1fr
    }
}
/* 代理机构管理端工作台 */
.agency-dashboard-hero {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:18px;
    padding:27px 30px;
    border:1px solid #f1d6c5;
    border-radius:21px;
    background:linear-gradient(125deg,#fff8f2,#fff 62%,#fff0e5);
    overflow:hidden
}
.agency-dashboard-hero span {
    color:#e9611e;
    font-size:12px;
    letter-spacing:2px
}
.agency-dashboard-hero h2 {
    margin:6px 0;
    color:#2a211d;
    font-size:27px
}
.agency-dashboard-hero p {
    margin:0;
    color:#8c766a
}
.agency-hero-actions {
    display:flex;
    gap:9px
}
.agency-hero-actions a {
    padding:10px 15px;
    border:1px solid #ffc7a5;
    border-radius:10px;
    color:#d75a18
}
.agency-hero-actions .primary {
    color:#fff
}
.agency-dashboard-kpis {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px
}
.agency-dashboard-kpis>a {
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:18px 19px;
    border:1px solid #eee0d7;
    border-radius:15px;
    background:#fff;
    color:#493b34;
    box-shadow:0 6px 20px rgba(70,43,28,.045);
    transition:.2s
}
.agency-dashboard-kpis>a:hover {
    border-color:#ffb589;
    transform:translateY(-2px)
}
.agency-dashboard-kpis span {
    color:#8c776c;
    font-size:12px
}
.agency-dashboard-kpis strong {
    margin:6px 0 2px;
    color:#241d19;
    font-size:25px
}
.agency-dashboard-kpis small {
    color:#df6928
}
.agency-dashboard-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:17px
}
.agency-dashboard-grid>.span-2 {
    grid-column:span 2
}
.agency-dashboard-panel {
    padding:21px
}
.agency-dashboard-panel .panel-head {
    margin-bottom:13px
}
.agency-dashboard-panel h3 {
    margin:4px 0
}
.agency-project-list>a {
    display:grid;
    grid-template-columns:minmax(180px,1.4fr) 85px minmax(100px,1fr) 45px;
    align-items:center;
    gap:12px;
    padding:12px 2px;
    border-bottom:1px solid #f1e7e1;
    color:#443831
}
.agency-project-list small,.agency-simple-list small,.workload-list small {
    display:block;
    color:#9a867c;
    font-size:11px
}
.agency-project-list> a>span {
    color:#765f52;
    font-size:12px
}
.agency-project-list>a>b {
    font-size:12px
}
.agency-progress,.load-bar {
    height:7px;
    border-radius:6px;
    background:#f1e8e3;
    overflow:hidden
}
.agency-progress i,.load-bar i {
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,#ff7a31,#ffae79)
}
.agency-simple-list>a {
    display:flex;
    align-items:center;
    gap:12px;
    padding:11px 1px;
    border-bottom:1px solid #f1e7e1;
    color:#43372f
}
.agency-simple-list span {
    min-width:0;
    flex:1
}
.agency-simple-list b {
    font-size:12px
}
.urgent {
    color:#e15232!important
}
.workload-list>div {
    display:grid;
    grid-template-columns:minmax(130px,1.3fr) minmax(90px,1fr) 42px;
    align-items:center;
    gap:10px;
    padding:11px 1px;
    border-bottom:1px solid #f1e7e1
}
.workload-list span {
    min-width:0
}
.workload-list b {
    font-size:11px;
    text-align:right
}
@media(max-width:1280px) {
    .agency-dashboard-kpis {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .agency-dashboard-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:800px) {
    .agency-dashboard-hero {
        align-items:flex-start;
        flex-direction:column
    }
    .agency-dashboard-kpis,.agency-dashboard-grid {
        grid-template-columns:1fr
    }
    .agency-dashboard-grid>.span-2 {
        grid-column:auto
    }
    .agency-project-list>a {
        grid-template-columns:1fr 70px
    }
    .agency-project-list .agency-progress {
        grid-column:1/-1
    }
}
/* 代理机构管理：紧凑列表模式 */
.agency-list-head {
    display:grid;
    grid-template-columns:minmax(230px,1.6fr) minmax(560px,4fr) 230px;
    gap:18px;
    margin-top:14px;
    padding:11px 20px;
    border:1px solid #eadfd8;
    border-bottom:0;
    border-radius:14px 14px 0 0;
    background:#f8f4f1;
    color:#8b786d;
    font-size:12px;
    font-weight:700
}
.agency-list {
    display:flex!important;
    flex-direction:column;
    gap:0!important
}
.agency-list .agency-card {
    display:grid;
    grid-template-columns:minmax(230px,1.6fr) minmax(560px,4fr) 230px;
    align-items:center;
    gap:18px;
    width:100%;
    padding:16px 20px;
    border-radius:0;
    border-bottom:0;
    box-shadow:none;
    transition:background .18s
}
.agency-list .agency-card:last-child {
    border-bottom:1px solid #eadfd8;
    border-radius:0 0 14px 14px
}
.agency-list .agency-card:hover {
    background:#fffaf7
}
.agency-list .agency-card-head {
    align-items:center;
    margin:0
}
.agency-list .agency-card-head h3 {
    margin:2px 0;
    font-size:15px
}
.agency-list .agency-card-head .eyebrow {
    display:none
}
.agency-list .agency-card-head>span.tag {
    position:absolute;
    opacity:0;
    pointer-events:none
}
.agency-list .agency-info {
    display:grid;
    grid-template-columns:repeat(5,minmax(85px,1fr));
    gap:8px;
    margin:0
}
.agency-list .agency-info>div {
    min-height:52px;
    padding:8px 10px;
    background:#faf7f5
}
.agency-list .agency-info>div:nth-child(6),.agency-list .agency-info>div:nth-child(8),.agency-list .agency-info>div:nth-child(9) {
    display:none
}
.agency-list .agency-account-info {
    grid-column:auto;
    border:0
}
.agency-list .agency-info dt {
    margin:0 0 2px
}
.agency-list .agency-info dd {
    font-size:11px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
}
.agency-list .agency-account-info dd {
    display:block
}
.agency-list .agency-account-info .tag {
    display:none
}
.agency-list .primary-row-actions {
    grid-column:3;
    grid-row:1;
    justify-content:flex-end;
    margin:0;
    padding:0;
    border:0
}
.agency-list .primary-row-actions button {
    padding:8px 10px;
    font-size:12px
}
.agency-list .governance-actions,.agency-list .agency-governance,.agency-list .agency-edit-form,.agency-list .agency-delete-form {
    grid-column:1/-1
}
.agency-list .governance-actions {
    margin:4px 0 0;
    padding:13px 0 0
}
.agency-list .agency-governance,.agency-list .agency-edit-form,.agency-list .agency-delete-form {
    width:100%;
    margin-top:14px
}
.agency-list .agency-card.is-editing {
    grid-column:auto;
    border-color:#eadfd8;
    box-shadow:none
}
@media(max-width:1280px) {
    .agency-list-head {
        display:none
    }
    .agency-list .agency-card {
        grid-template-columns:1fr
    }
    .agency-list .agency-info {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .agency-list .primary-row-actions {
        grid-column:1;
        grid-row:auto;
        justify-content:flex-start;
        padding-top:10px;
        border-top:1px solid #eee3dd
    }
}
@media(max-width:760px) {
    .agency-list .agency-info {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .agency-list .agency-card {
        padding:15px
    }
    .agency-list .primary-row-actions {
        flex-direction:row;
        flex-wrap:wrap
    }
}
/* 平台运营管理端十四项导航 */
.platform-sidebar .workspace-label {
    color:#db6021
}
.platform-sidebar .nav {
    gap:3px
}
.platform-sidebar .nav a {
    min-height:42px;
    padding:9px 13px;
    font-size:12px
}
.platform-sidebar .nav-number {
    display:grid;
    place-items:center;
    width:25px;
    height:23px;
    border-radius:7px;
    background:#f7eee8;
    color:#a98672;
    font-size:9px;
    font-weight:800
}
.platform-sidebar .nav a.active .nav-number {
    background:#ff6d25;
    color:#fff
}
.platform-module-hero {
    margin-bottom:17px;
    padding:27px 30px;
    border-radius:20px;
    background:linear-gradient(125deg,#30241e,#5d3927 70%,#e76625);
    color:#fff
}
.platform-module-hero>span {
    color:#ffb78e;
    font-size:11px;
    letter-spacing:2px
}
.platform-module-hero h2 {
    margin:7px 0;
    font-size:27px
}
.platform-module-hero p {
    margin:0;
    color:#e1d0c6
}
.platform-module-stats {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:13px;
    margin-bottom:17px
}
.platform-module-stats>div {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:16px 19px;
    border:1px solid #eee1da;
    border-radius:14px;
    background:#fff
}
.platform-module-stats span {
    color:#8b776c;
    font-size:12px
}
.platform-module-stats strong {
    font-size:22px
}
.platform-module-panel {
    padding:24px
}
.platform-module-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:13px
}
.platform-module-grid article {
    display:flex;
    align-items:center;
    gap:13px;
    padding:18px;
    border:1px solid #eee2db;
    border-radius:13px;
    background:#fffaf7
}
.platform-module-grid article>i {
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:10px;
    background:#ffede1;
    color:#e3601d;
    font-style:normal;
    font-size:11px;
    font-weight:800
}
.platform-module-grid article>div {
    min-width:0;
    flex:1
}
.platform-module-grid strong,.platform-module-grid small {
    display:block
}
.platform-module-grid small {
    margin-top:3px;
    color:#9b887d
}
.platform-module-grid article>span {
    color:#dc6729
}
@media(max-width:1050px) {
    .platform-module-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:700px) {
    .platform-module-stats,.platform-module-grid {
        grid-template-columns:1fr
    }
}
/* 企业监管与SaaS商业运营 */
.supervision-summary,.commercial-summary {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-bottom:17px
}
.supervision-summary article,.commercial-summary article {
    display:flex;
    flex-direction:column;
    padding:18px 20px;
    border:1px solid #eee0d7;
    border-radius:15px;
    background:#fff
}
.supervision-summary span,.commercial-summary span {
    color:#8c776c;
    font-size:12px
}
.supervision-summary strong,.commercial-summary strong {
    margin-top:5px;
    font-size:25px
}
.duplicate-panel {
    margin-bottom:17px;
    padding:19px
}
.duplicate-panel h3 {
    margin-top:0
}
.duplicate-panel p {
    display:grid;
    grid-template-columns:190px 1fr 50px;
    gap:12px;
    padding:9px 0;
    border-bottom:1px solid #eee3dc
}
.duplicate-panel span {
    color:#806d62
}
.duplicate-panel em {
    color:#d85728;
    font-style:normal
}
.ownership-form {
    display:grid;
    grid-template-columns:150px 220px 1fr auto;
    gap:10px;
    padding:14px;
    background:#fff9f5
}
.ownership-history {
    margin-top:17px;
    padding:21px
}
.ownership-history>div:not(.panel-head) {
    display:grid;
    grid-template-columns:145px 180px 230px 1fr;
    gap:12px;
    padding:10px 0;
    border-bottom:1px solid #eee3dc
}
.ownership-history time,.ownership-history small {
    color:#927f74
}
.plan-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px
}
.plan-grid form {
    display:flex;
    flex-direction:column;
    gap:9px;
    padding:18px;
    border:1px solid #ecddd4;
    border-radius:14px;
    background:#fffaf7
}
.plan-grid h3 {
    margin:0 0 4px
}
.plan-grid label {
    color:#79665b;
    font-size:11px
}
.plan-grid input {
    width:100%;
    margin-top:3px;
    padding:8px;
    border:1px solid #e7d9d1;
    border-radius:8px
}
.plan-grid .check {
    display:flex;
    align-items:center;
    gap:7px
}
.plan-grid .check input {
    width:auto;
    margin:0
}
.commercial-order-create {
    margin:17px 0;
    padding:22px
}
.inline-form,.invoice-form {
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:wrap
}
.inline-form input,.invoice-form input {
    width:105px;
    padding:7px;
    border:1px solid #e8d8cf;
    border-radius:7px
}
@media(max-width:1200px) {
    .plan-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .supervision-summary,.commercial-summary {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .ownership-form {
        grid-template-columns:1fr 1fr
    }
    .ownership-history>div:not(.panel-head) {
        grid-template-columns:120px 1fr
    }
}
@media(max-width:700px) {
    .plan-grid,.supervision-summary,.commercial-summary,.ownership-form {
        grid-template-columns:1fr
    }
    .ownership-history>div:not(.panel-head) {
        grid-template-columns:1fr
    }
}
.plan-features {
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:6px;
    padding:10px;
    border:1px solid #eadbd2;
    border-radius:9px
}
.plan-features legend {
    padding:0 5px;
    color:#d75e20;
    font-size:11px
}
/* 平台配置中心：业务类型、政策规则、申报批次 */
.business-icon {
    display:inline-grid;
    place-items:center;
    width:32px;
    height:32px;
    margin-right:10px;
    border-radius:10px;
    background:#fff0e7;
    color:#ff641f;
    font-size:14px
}
.compact-form {
    position:absolute;
    right:24px;
    z-index:30;
    width:min(760px,calc(100vw - 380px));
    margin-top:10px;
    padding:22px;
    background:#fff;
    border:1px solid #f1ded3;
    border-radius:18px;
    box-shadow:0 18px 55px rgba(70,35,18,.16)
}
.text-button {
    cursor:pointer;
    color:#ed5a1f;
    font-weight:700;
    white-space:nowrap
}
.batch-timeline {
    display:grid;
    grid-template-columns:repeat(2,minmax(130px,1fr));
    gap:5px 12px;
    min-width:330px;
    font-size:12px;
    color:#77685f
}
.batch-edit {
    width:min(850px,calc(100vw - 380px))
}
.table-panel td details {
    position:relative
}
@media(max-width:1100px) {
    .compact-form,.batch-edit {
        position:fixed;
        inset:90px 20px auto 20px;
        width:auto;
        max-height:calc(100vh - 120px);
        overflow:auto
    }
    .batch-timeline {
        min-width:260px
    }
}
.scope-chain {
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:10px
}
.scope-chain span {
    position:relative;
    padding:16px;
    border-radius:14px;
    background:#fff8f3;
    text-align:center
}
.scope-chain span:not(:last-child):after {
    content:'→';
    position:absolute;
    right:-10px;
    color:#ff6b2c
}
.scope-chain small {
    display:block;
    color:#9b877b
}
.security-banner {
    margin-top:16px;
    padding:14px 18px;
    border-left:4px solid #ff6b2c;
    background:#fff7f1;
    color:#6f594d
}
.permission-matrix fieldset {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    border:1px solid #f0e2da;
    border-radius:12px;
    padding:12px
}
.permission-matrix .check {
    align-items:flex-start
}
.permission-matrix small {
    display:block
}
.governance-tabs {
    display:grid;
    gap:20px
}
.settings-list {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:18px
}
.settings-list article {
    padding:16px;
    border:1px solid #f0e2da;
    border-radius:14px;
    background:#fffaf7
}
.settings-list span,.settings-list small {
    display:block;
    color:#9b877b
}
.settings-list p {
    overflow-wrap:anywhere
}
@media(max-width:1100px) {
    .scope-chain {
        grid-template-columns:repeat(3,1fr)
    }
    .settings-list {
        grid-template-columns:1fr
    }
    .permission-matrix fieldset {
        grid-template-columns:1fr 1fr
    }
}
.access-page {
    display:grid;
    gap:20px
}
.access-page .panel {
    margin:0
}
.access-scope-panel {
    padding:24px 28px
}
.section-heading {
    display:flex;
    align-items:center;
    gap:14px;
    padding:20px 26px;
    border-bottom:1px solid #f1e6df
}
.access-scope-panel>.section-heading {
    padding:0 0 18px;
    margin-bottom:18px
}
.section-heading>span {
    display:grid;
    place-items:center;
    flex:0 0 38px;
    height:38px;
    border-radius:11px;
    background:#fff0e7;
    color:#ff641f;
    font-weight:800
}
.section-heading h3 {
    margin:0 0 4px;
    font-size:20px
}
.section-heading p {
    margin:0;
    color:#8d796e
}
.security-banner {
    display:flex;
    gap:14px;
    align-items:flex-start
}
.security-banner strong {
    white-space:nowrap;
    color:#df5520
}
.security-banner span {
    line-height:1.7
}
.access-table-panel>.section-heading {
    margin:0
}
.action-button {
    display:inline-flex;
    padding:8px 13px;
    border:1px solid #ff9a6b;
    border-radius:9px;
    color:#eb591e;
    font-weight:700;
    cursor:pointer;
    list-style:none
}
.action-button::-webkit-details-marker {
    display:none
}
.permission-title {
    grid-column:1/-1;
    display:flex;
    justify-content:space-between;
    padding-bottom:12px;
    border-bottom:1px solid #eee0d7
}
.permission-check {
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    min-height:38px!important;
    padding:7px 9px!important;
    border-radius:8px;
    background:#fffaf7
}
.permission-check input {
    width:auto!important;
    margin:0!important
}
.permission-check span {
    font-size:13px
}
.access-table-panel table td,.access-table-panel table th {
    vertical-align:middle
}
.access-table-panel td small {
    margin-top:4px
}
@media(max-width:900px) {
    .section-heading {
        padding:16px
    }
    .security-banner {
        display:block
    }
    .security-banner strong {
        display:block;
        margin-bottom:6px
    }
}
.ai-policy-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.ai-policy-grid>form {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px 16px
}
.ai-policy-grid>form h3,.ai-policy-grid>form label:has(textarea),.ai-policy-grid>form .check,.ai-policy-grid>form button {
    grid-column:1/-1
}
.ai-policy-grid textarea {
    width:100%;
    min-height:110px;
    resize:vertical
}
.ai-log-panel>.section-heading {
    margin:0
}
.ai-log-panel table {
    margin-top:0
}
@media(max-width:900px) {
    .ai-policy-grid {
        grid-template-columns:1fr
    }
    .ai-policy-grid>form {
        grid-template-columns:1fr
    }
    .ai-policy-grid>form>* {
        grid-column:1!important
    }
}
.action-row {
    display:flex;
    gap:10px;
    align-items:center
}
.commercial-summary {
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr))
}
.trend-bars {
    display:flex;
    align-items:flex-end;
    gap:12px;
    min-height:260px;
    padding:24px;
    overflow:auto
}
.trend-bars>div {
    display:grid;
    grid-template-rows:auto 180px auto auto;
    gap:5px;
    min-width:55px;
    text-align:center
}
.trend-bars i {
    align-self:end;
    width:30px;
    height:var(--value);
    margin:auto;
    border-radius:8px 8px 3px 3px;
    background:linear-gradient(#ff9a65,#ff621f)
}
.trend-bars span,.trend-bars small {
    font-size:11px;
    color:#8e786d
}
.metric-list {
    padding:16px 22px
}
.metric-list p {
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:12px 0;
    border-bottom:1px solid #f1e5de
}
.metric-list span {
    color:#806c61
}
.agency-section-summary {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px
}
.agency-section-summary article {
    padding:18px 22px;
    border:1px solid #eee0d7;
    border-radius:15px;
    background:#fff
}
.agency-section-summary span {
    display:block;
    color:#8b766b
}
.agency-section-summary strong {
    display:block;
    margin-top:8px;
    font-size:24px
}
.agency-module-list .empty {
    padding:70px;
    text-align:center
}
@media(max-width:700px) {
    .agency-section-summary {
        grid-template-columns:1fr
    }
}
.risk-notice {
    margin-bottom:18px;
    padding:16px 20px;
    border-left:4px solid #ff6b2c
}
.risk-notice p {
    margin:6px 0;
    color:#8d6452
}
.customer-360 {
    padding-bottom:24px
}
.customer-360>.platform-grid {
    padding:22px
}
.customer-360>.platform-grid form {
    padding:18px;
    border:1px solid #efe1d8;
    border-radius:14px;
    background:#fffaf7
}
.customer-history {
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:18px;
    padding:0 22px
}
.customer-history>div {
    padding:18px;
    border:1px solid #efe1d8;
    border-radius:14px
}
.customer-history p {
    display:grid;
    gap:4px;
    padding:10px 0;
    border-bottom:1px solid #f1e7e1
}
.customer-history span,.customer-history small {
    color:#8b786e
}
@media(max-width:800px) {
    .customer-history {
        grid-template-columns:1fr
    }
}
.enterprise-profile-strip {
    display:grid;
    grid-template-columns:2fr 1.5fr 1fr 1fr;
    gap:16px;
    padding:20px 24px;
    margin-bottom:16px
}
.enterprise-profile-strip span {
    display:block;
    color:#8b776d;
    font-size:12px
}
.enterprise-profile-strip strong {
    display:block;
    margin-top:6px
}
.data-module-grid {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px
}
.data-module-grid article {
    padding:16px;
    border:1px solid #eee0d7;
    border-radius:14px;
    background:#fff
}
.data-module-grid span,.data-module-grid small {
    display:block;
    color:#8d796e
}
.data-module-grid strong {
    display:block;
    margin:5px 0;
    font-size:24px
}
.enterprise-data-section {
    margin-bottom:18px
}
.enterprise-data-section>.empty {
    padding:36px;
    text-align:center
}
@media(max-width:1000px) {
    .data-module-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .enterprise-profile-strip {
        grid-template-columns:1fr 1fr
    }
}
/* ===== 商务服务中心 V2.2 ===== */
.commerce-hero {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    padding:28px 30px;
    margin-bottom:18px;
    border:1px solid #eee5dd;
    border-radius:20px;
    background:linear-gradient(135deg,#fff 0%,#fffaf6 100%);
    box-shadow:0 12px 32px rgba(85,61,45,.06)
}
.commerce-hero h2 {
    margin:8px 0 8px;
    font-size:28px
}
.commerce-hero p {
    max-width:860px;
    margin:0;
    color:#756b64;
    line-height:1.8
}
.commerce-hero-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap
}
.commerce-kpi-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px
}
.commerce-kpi-grid article {
    padding:18px 20px;
    border:1px solid #eee5dd;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 24px rgba(85,61,45,.04)
}
.commerce-kpi-grid span {
    display:block;
    color:#83766d;
    font-size:13px
}
.commerce-kpi-grid strong {
    display:block;
    margin:8px 0 4px;
    font-size:24px;
    color:#1e1a17
}
.commerce-kpi-grid small {
    color:#a09389
}
.commerce-flow-strip {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:14px 18px;
    margin-bottom:18px;
    border:1px solid #eee5dd;
    border-radius:16px;
    background:#fff
}
.commerce-flow-strip i {
    color:#c9b8aa;
    font-style:normal
}
.flow-node {
    display:flex;
    align-items:center;
    gap:8px;
    white-space:nowrap
}
.flow-node b {
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:9px;
    background:#fff3ea;
    color:#f56b2a;
    font-size:12px
}
.flow-node span {
    font-weight:700;
    color:#4d443e
}
.commerce-quick-panels {
    display:grid;
    gap:16px;
    margin-bottom:18px
}
.commerce-create-panel.hidden {
    display:none
}
.service-scope-box {
    border:1px solid #eadfd7;
    border-radius:14px;
    padding:16px
}
.service-scope-box legend {
    padding:0 8px;
    font-weight:700
}
.service-scope-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px
}
.contract-project-switch {
    align-self:end;
    padding:12px 0
}
.commerce-tabs {
    display:flex;
    gap:8px;
    overflow:auto;
    padding:6px;
    margin-bottom:14px;
    border:1px solid #eee5dd;
    border-radius:16px;
    background:#fff
}
.commerce-tabs button {
    border:0;
    background:transparent;
    border-radius:12px;
    padding:12px 16px;
    white-space:nowrap;
    font-weight:700;
    color:#756b64;
    cursor:pointer
}
.commerce-tabs button.active {
    background:#fff1e7;
    color:#e85f1f
}
.commerce-tabs em {
    display:inline-grid;
    place-items:center;
    min-width:22px;
    height:22px;
    margin-left:6px;
    padding:0 6px;
    border-radius:999px;
    background:#f4f0ed;
    font-style:normal;
    font-size:12px
}
.commerce-tabs button.active em {
    background:#ffd9c4
}
.commerce-tab-panel {
    display:none
}
.commerce-tab-panel.active {
    display:block
}
.table-scroll {
    overflow-x:auto
}
.commerce-contract-table {
    min-width:1180px
}
.scope-mini {
    display:flex;
    flex-wrap:wrap;
    gap:4px;
    margin-top:7px
}
.scope-mini span {
    display:inline-block;
    padding:3px 7px;
    border-radius:999px;
    background:#f7f2ee;
    color:#76675c;
    font-size:11px
}
.money-state {
    display:inline-block;
    padding:4px 8px;
    border-radius:999px;
    background:#eef8ef;
    color:#3d7d48;
    font-size:12px;
    font-weight:700
}
.text-warning {
    color:#d56a24!important
}
.commerce-actions {
    position:relative
}
.commerce-actions summary {
    cursor:pointer;
    color:#e85f1f;
    font-weight:700;
    white-space:nowrap
}
.commerce-actions[open] .action-stack {
    display:grid
}
.action-stack {
    position:absolute;
    z-index:30;
    right:0;
    top:28px;
    width:330px;
    max-height:520px;
    overflow:auto;
    padding:14px;
    border:1px solid #e8ddd4;
    border-radius:16px;
    background:#fff;
    box-shadow:0 16px 40px rgba(60,44,34,.16)
}
.action-stack form {
    display:grid;
    gap:8px;
    padding:12px 0;
    border-bottom:1px dashed #eadfd7
}
.action-stack form:last-child {
    border-bottom:0
}
.action-stack input,.action-stack select {
    width:100%;
    box-sizing:border-box
}
.action-stack button {
    justify-self:start
}
.commerce-contract-panel {
    overflow:visible
}
@media(max-width:1200px) {
    .commerce-kpi-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .service-scope-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .commerce-flow-strip {
        overflow:auto;
        justify-content:flex-start
    }
}
@media(max-width:760px) {
    .commerce-hero {
        align-items:stretch;
        flex-direction:column
    }
    .commerce-kpi-grid {
        grid-template-columns:1fr
    }
    .service-scope-grid {
        grid-template-columns:1fr
    }
    .commerce-hero-actions {
        width:100%
    }
    .commerce-hero-actions button {
        flex:1
    }
    .commerce-flow-strip {
        display:none
    }
}
/* ===== 05 科技项目业务办理中心 V2.3 ===== */
.business-center-page {
    display:grid;
    gap:18px
}
.business-hero {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:20px;
    padding:26px 28px;
    border-radius:22px;
    background:linear-gradient(135deg,#fff 0%,#fff8f2 100%);
    border:1px solid #f1e5dc;
    box-shadow:0 12px 34px rgba(84,52,34,.06)
}
.business-hero h1 {
    margin:7px 0 8px;
    font-size:28px
}
.business-hero p {
    margin:0;
    max-width:850px;
    color:#786f69
}
.business-kpi-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px
}
.business-kpi-grid article {
    background:#fff;
    border:1px solid #eee5df;
    border-radius:18px;
    padding:17px 18px;
    box-shadow:0 7px 22px rgba(60,45,35,.04)
}
.business-kpi-grid span,.business-kpi-grid small {
    display:block;
    color:#887e77
}
.business-kpi-grid strong {
    display:block;
    font-size:26px;
    margin:7px 0
}
.business-tabs {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    padding:7px;
    background:#fff;
    border:1px solid #eee5df;
    border-radius:15px
}
.business-tabs a {
    padding:9px 14px;
    border-radius:10px;
    color:#665d57;
    text-decoration:none
}
.business-tabs a:hover {
    background:#fff4ec;
    color:#ed6a28
}
.business-wizard {
    padding:24px
}
.wizard-steps {
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:8px;
    margin:15px 0 24px
}
.wizard-steps span {
    display:flex;
    align-items:center;
    gap:8px;
    padding:10px;
    border-radius:12px;
    background:#fbf8f6;
    color:#675f59
}
.wizard-steps b {
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
    border-radius:50%;
    background:#ff7a33;
    color:#fff
}
.business-intake-form {
    display:grid;
    gap:14px
}
.wizard-block {
    border:1px solid #eee4de;
    border-radius:17px;
    padding:18px;
    background:#fff
}
.wizard-block header {
    display:flex;
    gap:12px;
    margin-bottom:16px
}
.wizard-block header i {
    font-style:normal;
    font-weight:700;
    color:#ff6b22;
    background:#fff0e7;
    border-radius:9px;
    padding:7px 9px;
    height:max-content
}
.wizard-block h4 {
    margin:1px 0 4px
}
.wizard-block p {
    margin:0;
    color:#8d837c
}
.enterprise-snapshot {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:12px
}
.enterprise-snapshot span,.enterprise-snapshot b {
    padding:8px 10px;
    border-radius:10px;
    background:#f8f6f4
}
.business-type-options {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px
}
.business-type-options label {
    cursor:pointer
}
.business-type-options input {
    display:none
}
.business-type-options span {
    display:block;
    height:100%;
    padding:15px;
    border:1px solid #e9dfd8;
    border-radius:14px
}
.business-type-options input:checked+span {
    border-color:#ff7a33;
    background:#fff5ef;
    box-shadow:0 0 0 2px rgba(255,122,51,.08)
}
.business-type-options b,.business-type-options small {
    display:block
}
.business-type-options small {
    margin-top:5px;
    color:#8b817b
}
.service-scope-checks,.team-checks {
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:14px
}
.service-scope-checks label,.team-checks label {
    display:flex;
    gap:7px;
    align-items:center;
    padding:8px 10px;
    border:1px solid #eee2da;
    border-radius:10px;
    background:#fff
}
.team-checks span,.team-checks small {
    display:block
}
.wizard-actions {
    display:flex;
    justify-content:flex-end
}
.precheck-inline-form {
    margin-top:14px;
    padding:15px;
    border-radius:14px;
    background:#fff8f3;
    display:flex;
    align-items:center;
    gap:12px
}
.precheck-inline-form small {
    color:#897c73
}
.ai-precheck-result {
    padding:22px
}
.score-orb {
    width:82px;
    height:82px;
    border-radius:50%;
    display:grid;
    place-items:center;
    align-content:center;
    background:#fff3e9;
    border:6px solid #ffb181
}
.score-orb strong {
    font-size:25px
}
.score-orb small {
    font-size:11px
}
.precheck-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px
}
.precheck-grid article {
    display:flex;
    gap:10px;
    padding:13px;
    border:1px solid #eee5df;
    border-radius:13px
}
.precheck-grid article>span {
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:50%;
    font-weight:700
}
.precheck-grid .ok>span {
    background:#e9f8ef;
    color:#168a49
}
.precheck-grid .risk>span {
    background:#fff0e7;
    color:#e95e20
}
.precheck-grid p {
    margin:3px 0;
    color:#6e6660
}
.precheck-grid small {
    color:#90857e
}
.ai-advice {
    margin-top:14px;
    padding:15px 17px;
    background:#faf8f6;
    border-radius:13px
}
.ai-advice ol {
    margin:8px 0 5px;
    padding-left:22px
}
.business-list-panel {
    padding:20px
}
.responsive-table {
    overflow:auto
}
.business-list-panel table small {
    display:block;
    margin-top:4px;
    color:#8d837c
}
.project-start-form {
    display:grid;
    gap:13px;
    padding:14px;
    background:#fffaf6;
    border-radius:12px
}
.project-processing-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
}
.project-processing-grid article {
    padding:17px;
    border:1px solid #eee4de;
    border-radius:15px;
    background:#fff
}
.project-card-top,.project-processing-grid footer {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:center
}
.project-processing-grid h4 {
    margin:12px 0 4px
}
.project-processing-grid p {
    margin:0 0 12px;
    color:#7d746e
}
.project-metrics {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px
}
.project-metrics span {
    padding:8px;
    background:#faf7f5;
    border-radius:9px;
    font-size:12px
}
.project-processing-grid footer {
    margin-top:12px
}
.project-processing-grid footer a {
    color:#e86222;
    text-decoration:none
}
@media(max-width:1100px) {
    .business-kpi-grid {
        grid-template-columns:repeat(3,1fr)
    }
    .business-type-options,.precheck-grid {
        grid-template-columns:1fr 1fr
    }
    .wizard-steps {
        grid-template-columns:repeat(3,1fr)
    }
}
@media(max-width:720px) {
    .business-hero {
        align-items:flex-start;
        flex-direction:column
    }
    .business-kpi-grid,.business-type-options,.precheck-grid,.project-processing-grid {
        grid-template-columns:1fr
    }
    .wizard-steps {
        grid-template-columns:1fr 1fr
    }
    .precheck-inline-form {
        align-items:flex-start;
        flex-direction:column
    }
}
/* ===== 第二端 06 项目管理中心 V2.4 ===== */
.project-center-hero {
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:center;
    padding:28px 30px;
    border-radius:22px;
    background:linear-gradient(135deg,#f8fbff 0%,#f4f8ff 48%,#fffaf2 100%);
    border:1px solid #e6ecf7;
    margin-bottom:20px
}
.project-center-hero h2 {
    margin:6px 0 8px;
    font-size:28px
}
.project-center-hero p {
    margin:0;
    max-width:880px;
    color:#667085;
    line-height:1.8
}
.project-hero-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end
}
.project-kpi-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px
}
.project-kpi-grid article {
    background:#fff;
    border:1px solid #e7ebf2;
    border-radius:18px;
    padding:18px;
    box-shadow:0 8px 26px rgba(31,42,68,.04)
}
.project-kpi-grid span,.project-kpi-grid small {
    display:block;
    color:#7b8497
}
.project-kpi-grid strong {
    display:block;
    font-size:28px;
    margin:7px 0 3px;
    color:#1f2937
}
.project-tabs {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:14px
}
.project-tabs a {
    padding:10px 16px;
    border-radius:12px;
    background:#fff;
    border:1px solid #e5e9f0;
    color:#586174;
    text-decoration:none;
    font-weight:700
}
.project-tabs a.active {
    background:#18253d;
    color:#fff;
    border-color:#18253d
}
.project-filter-panel {
    margin-bottom:16px
}
.project-filter-form {
    display:grid;
    grid-template-columns:1.6fr 1fr .8fr 1fr auto;
    gap:12px;
    align-items:end
}
.project-filter-form label {
    display:flex;
    flex-direction:column;
    gap:7px;
    color:#60697a;
    font-size:13px;
    font-weight:700
}
.project-filter-form input,.project-filter-form select {
    width:100%;
    box-sizing:border-box
}
.project-filter-actions {
    display:flex;
    align-items:center;
    gap:8px;
    white-space:nowrap
}
.project-management-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px
}
.managed-project-card {
    border:1px solid #e7ebf2;
    border-radius:20px;
    padding:20px;
    background:linear-gradient(180deg,#fff,#fbfcff);
    box-shadow:0 10px 30px rgba(31,42,68,.045)
}
.managed-project-card.archived {
    opacity:.82;
    background:#fafafa
}
.managed-project-top {
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:center
}
.managed-project-top>div {
    display:flex;
    gap:7px;
    align-items:center;
    flex-wrap:wrap
}
.managed-project-top small {
    color:#8791a4
}
.project-type-pill {
    display:inline-flex;
    padding:5px 9px;
    border-radius:999px;
    background:#edf4ff;
    color:#315c9f;
    font-size:12px;
    font-weight:800
}
.managed-project-card h3 {
    font-size:20px;
    margin:15px 0 4px
}
.project-subline {
    margin:0 0 16px;
    color:#697386
}
.project-progress-head {
    display:flex;
    justify-content:space-between;
    font-size:13px;
    margin-bottom:7px;
    color:#697386
}
.project-progress-head b {
    color:#27364d
}
.project-card-metrics {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:8px;
    margin:15px 0
}
.project-card-metrics div {
    background:#f7f9fc;
    border-radius:12px;
    padding:10px
}
.project-card-metrics span {
    display:block;
    font-size:11px;
    color:#8a93a4
}
.project-card-metrics strong {
    display:block;
    margin-top:4px;
    font-size:13px;
    color:#344054
}
.project-deadline-box {
    display:grid;
    grid-template-columns:auto 1fr;
    gap:5px 10px;
    background:#f8fafc;
    border:1px solid #edf0f5;
    border-radius:13px;
    padding:12px;
    font-size:12px
}
.project-deadline-box span {
    color:#7b8497
}
.project-deadline-box b {
    font-weight:700;
    color:#3f4b5f
}
.project-deadline-box em {
    grid-column:1/-1;
    font-style:normal;
    color:#7b8497
}
.project-deadline-box.deadline-warn {
    background:#fff7ed;
    border-color:#fed7aa
}
.project-deadline-box.deadline-warn em {
    color:#c2410c;
    font-weight:800
}
.project-next {
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:8px;
    align-items:center;
    margin-top:10px;
    padding:10px 12px;
    background:#f2f7ff;
    border-radius:12px;
    font-size:12px
}
.project-next span,.project-next small {
    color:#7b8497
}
.managed-project-actions {
    display:flex;
    gap:8px;
    margin-top:15px
}
.managed-project-actions a {
    flex:1;
    text-align:center
}
.project-empty {
    grid-column:1/-1;
    text-align:center;
    padding:46px
}
.project-notice {
    margin-bottom:16px
}
.project-detail-shell {
    margin-top:22px;
    scroll-margin-top:20px
}
.project-detail-header {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    padding:24px 26px;
    border-radius:20px;
    background:#17243b;
    color:#fff
}
.project-detail-header h2 {
    font-size:24px;
    margin:6px 0
}
.project-detail-header p {
    margin:0;
    color:#cbd5e1
}
.project-detail-header .eyebrow {
    color:#b8c6dc
}
.project-detail-header>div:last-child {
    display:flex;
    gap:8px
}
.project-detail-summary {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:10px;
    margin:12px 0
}
.project-detail-summary article {
    background:#fff;
    border:1px solid #e7ebf2;
    border-radius:15px;
    padding:14px
}
.project-detail-summary span {
    display:block;
    font-size:12px;
    color:#7f889a
}
.project-detail-summary strong {
    display:block;
    margin-top:5px;
    font-size:15px;
    color:#2e3a4d
}
.project-detail-columns {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:14px
}
.project-inline-form {
    display:flex;
    gap:10px;
    align-items:end;
    flex-wrap:wrap
}
.project-inline-form label {
    display:flex;
    flex-direction:column;
    gap:6px;
    font-size:12px;
    color:#70798b
}
.project-inline-form .grow {
    flex:1
}
.progress-control-row {
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:end;
    margin-top:12px;
    flex-wrap:wrap
}
.project-member-list {
    display:flex;
    flex-direction:column;
    gap:8px
}
.project-member {
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:10px;
    align-items:center;
    padding:10px 0;
    border-bottom:1px solid #eef1f5
}
.project-member-avatar {
    width:34px;
    height:34px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#edf4ff;
    font-weight:800;
    color:#315c9f
}
.project-member strong,.project-member span,.project-member small {
    display:block
}
.project-member span {
    font-size:12px;
    color:#516178
}
.project-member small {
    font-size:11px;
    color:#8b94a5
}
.danger-text {
    color:#d92d20!important
}
.member-add-form {
    display:grid;
    grid-template-columns:1.2fr 1fr 1.4fr auto auto;
    gap:8px;
    align-items:center;
    margin-top:13px
}
.member-add-form .check {
    white-space:nowrap
}
.project-timeline {
    position:relative
}
.timeline-row {
    display:grid;
    grid-template-columns:20px 1fr auto;
    gap:8px;
    align-items:start;
    position:relative;
    padding:0 0 17px
}
.timeline-row:before {
    content:"";
    position:absolute;
    left:7px;
    top:15px;
    bottom:-2px;
    width:2px;
    background:#e4e8ef
}
.timeline-row:last-child:before {
    display:none
}
.timeline-row>i {
    width:14px;
    height:14px;
    margin-top:3px;
    border-radius:50%;
    background:#2f6fed;
    box-shadow:0 0 0 4px #eaf1ff
}
.timeline-row.done>i {
    background:#16a34a;
    box-shadow:0 0 0 4px #dcfce7
}
.timeline-row strong,.timeline-row span,.timeline-row small {
    display:block
}
.timeline-row span {
    font-size:12px;
    color:#566274;
    margin-top:2px
}
.timeline-row small {
    font-size:11px;
    color:#8c95a5;
    margin-top:2px
}
.timeline-add-form {
    display:grid;
    grid-template-columns:1.4fr 1fr .6fr auto;
    gap:8px;
    margin-top:8px
}
.module-progress-list>div {
    display:grid;
    grid-template-columns:1fr 180px;
    gap:16px;
    align-items:center;
    padding:10px 0;
    border-bottom:1px solid #eef1f5
}
.module-progress-list strong,.module-progress-list span {
    display:block
}
.module-progress-list span {
    font-size:11px;
    color:#8992a3;
    margin-top:3px
}
.module-progress-value b {
    display:block;
    text-align:right;
    font-size:12px
}
.module-progress-value .progress {
    margin-top:5px
}
.project-history-list {
    display:flex;
    flex-direction:column
}
.project-history-list>div {
    display:grid;
    grid-template-columns:165px 220px 1fr;
    gap:14px;
    padding:10px 0;
    border-bottom:1px solid #eef1f5;
    font-size:12px
}
.project-history-list time {
    color:#8690a2
}
.project-history-list strong {
    color:#344054
}
.project-history-list span {
    color:#657084
}
.project-archive-panel {
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    margin-bottom:10px
}
.project-archive-panel h3 {
    margin:0 0 5px
}
.project-archive-panel p {
    margin:0;
    color:#737d8f
}
.project-archive-panel form {
    display:flex;
    gap:8px;
    align-items:center
}
.project-archive-panel input {
    min-width:360px
}
.danger-button {
    border:0;
    border-radius:10px;
    background:#d92d20;
    color:#fff;
    padding:10px 16px;
    cursor:pointer;
    font-weight:800
}
.tag.info {
    background:#eaf2ff;
    color:#2457a7
}
.tag.danger {
    background:#feeceb;
    color:#b42318
}
@media(max-width:1200px) {
    .project-kpi-grid {
        grid-template-columns:repeat(3,1fr)
    }
    .project-filter-form {
        grid-template-columns:repeat(2,1fr)
    }
    .project-filter-actions {
        grid-column:1/-1
    }
    .project-detail-summary {
        grid-template-columns:repeat(3,1fr)
    }
    .member-add-form {
        grid-template-columns:1fr 1fr
    }
    .timeline-add-form {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:900px) {
    .project-center-hero,.project-archive-panel {
        flex-direction:column;
        align-items:stretch
    }
    .project-management-grid,.project-detail-columns {
        grid-template-columns:1fr
    }
    .project-card-metrics {
        grid-template-columns:repeat(2,1fr)
    }
    .project-detail-summary {
        grid-template-columns:repeat(2,1fr)
    }
    .project-history-list>div {
        grid-template-columns:1fr
    }
    .project-archive-panel input {
        min-width:0;
        width:100%
    }
}
/* ===== 第二端 07 材料审核中心 V2.5 ===== */
.material-review-hero {
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:flex-end;
    padding:28px 30px;
    margin-bottom:18px;
    border:1px solid #e4e8ef;
    border-radius:22px;
    background:linear-gradient(135deg,#ffffff 0%,#f7fbff 55%,#f4fff9 100%);
    box-shadow:0 12px 35px rgba(28,47,73,.06)
}
.material-review-hero h2 {
    font-size:30px;
    margin:7px 0 8px
}
.material-review-hero p {
    max-width:820px;
    color:#687386;
    margin:0;
    line-height:1.8
}
.material-hero-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap
}
.material-kpi-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px
}
.material-kpi-grid article {
    background:#fff;
    border:1px solid #e7eaf0;
    border-radius:16px;
    padding:18px;
    box-shadow:0 8px 24px rgba(25,44,72,.04)
}
.material-kpi-grid span,.material-kpi-grid small {
    display:block;
    color:#7a8494
}
.material-kpi-grid strong {
    display:block;
    font-size:27px;
    margin:6px 0;
    color:#182235
}
.material-kpi-grid small {
    font-size:12px
}
.material-tabs {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:16px
}
.material-tabs a {
    padding:10px 15px;
    border-radius:12px;
    background:#fff;
    border:1px solid #e3e7ee;
    color:#536073;
    text-decoration:none;
    font-weight:700
}
.material-tabs a.active {
    background:#172438;
    color:#fff;
    border-color:#172438
}
.material-filter-panel {
    margin-bottom:16px
}
.material-filter-form {
    display:grid;
    grid-template-columns:2fr 1.2fr 1fr auto;
    gap:12px;
    align-items:end
}
.material-filter-form label {
    display:grid;
    gap:6px;
    font-weight:700;
    color:#4f5a6b
}
.material-filter-form input,.material-filter-form select {
    width:100%;
    min-height:42px
}
.material-filter-actions {
    display:flex;
    gap:8px;
    align-items:center
}
.material-project-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px
}
.material-project-card {
    border:1px solid #e5e9ef;
    border-radius:18px;
    padding:18px;
    background:linear-gradient(180deg,#fff,#fbfcfe);
    box-shadow:0 8px 25px rgba(25,44,72,.04)
}
.material-project-card.risk {
    border-color:#f0cfcf;
    background:linear-gradient(180deg,#fff,#fff9f7)
}
.material-project-top {
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:center
}
.material-project-card h3 {
    margin:12px 0 4px;
    font-size:18px
}
.material-project-card p {
    margin:0 0 14px;
    color:#7a8494
}
.material-progress-head {
    display:flex;
    justify-content:space-between;
    margin:9px 0 7px
}
.material-progress {
    height:8px;
    margin-bottom:13px
}
.material-project-metrics {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:7px;
    margin:12px 0
}
.material-project-metrics div {
    background:#f6f8fb;
    border-radius:10px;
    padding:9px 7px;
    text-align:center
}
.material-project-metrics span {
    display:block;
    color:#8791a1;
    font-size:11px
}
.material-project-metrics strong {
    font-size:17px
}
.material-project-deadline {
    display:grid;
    gap:4px;
    padding:10px 0;
    color:#6d7787;
    font-size:12px
}
.material-project-card>a {
    display:inline-flex;
    margin-top:8px
}
.material-workbench {
    margin-top:20px
}
.material-workbench-head {
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:flex-end;
    padding:24px 28px;
    background:#172438;
    color:#fff;
    border-radius:20px 20px 0 0
}
.material-workbench-head .eyebrow {
    color:#a9c3e6
}
.material-workbench-head h2 {
    margin:6px 0;
    font-size:25px
}
.material-workbench-head p {
    margin:0;
    color:#bac5d3
}
.material-workbench-actions {
    display:flex;
    gap:9px;
    align-items:flex-end;
    flex-wrap:wrap
}
.material-workbench-actions form {
    display:flex;
    gap:8px;
    align-items:center
}
.material-workbench-actions input {
    min-width:210px;
    background:#fff
}
.material-review-layout {
    display:grid;
    grid-template-columns:minmax(360px,.9fr) minmax(520px,1.35fr);
    gap:16px;
    background:#f4f6f9;
    padding:16px
}
.material-list-panel,.material-review-detail {
    margin:0
}
.material-item-list {
    display:grid;
    gap:8px
}
.material-item {
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:13px 14px;
    border:1px solid #e5e9ef;
    border-radius:13px;
    text-decoration:none;
    color:inherit;
    background:#fff
}
.material-item:hover,.material-item.active {
    border-color:#9fb8d8;
    box-shadow:0 7px 20px rgba(34,67,105,.08)
}
.material-item.active {
    background:#f6faff
}
.material-item-main {
    display:grid;
    grid-template-columns:auto 1fr;
    column-gap:8px;
    align-items:center;
    min-width:0
}
.material-item-main strong {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.material-item-main small {
    grid-column:2;
    color:#8892a1
}
.material-required {
    font-size:10px;
    font-weight:800;
    padding:3px 6px;
    border-radius:999px
}
.material-required.required {
    background:#fff0ef;
    color:#b94a43
}
.material-required.optional {
    background:#eef4fa;
    color:#52708e
}
.material-item-meta {
    text-align:right;
    display:grid;
    justify-items:end;
    gap:3px;
    min-width:92px
}
.material-item-meta small {
    color:#8791a1
}
.material-detail-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:9px;
    margin-bottom:13px
}
.material-detail-grid article {
    padding:12px;
    background:#f7f9fc;
    border-radius:11px
}
.material-detail-grid span {
    display:block;
    color:#8791a1;
    font-size:11px
}
.material-detail-grid strong {
    display:block;
    margin-top:4px
}
.material-file-card {
    display:flex;
    justify-content:space-between;
    gap:16px;
    padding:14px;
    border:1px solid #e5e9ef;
    border-radius:13px;
    background:#fbfcfe;
    margin-bottom:13px
}
.material-file-card>div {
    display:grid;
    gap:3px
}
.material-file-card span,.material-file-card small {
    color:#7b8696
}
.material-review-form {
    display:grid;
    grid-template-columns:170px 1fr;
    gap:10px;
    padding:14px;
    border-radius:13px;
    background:#f6f8fb
}
.material-review-form label {
    display:grid;
    gap:6px;
    font-weight:700
}
.material-review-form .wide {
    grid-column:2
}
.material-review-form textarea {
    resize:vertical
}
.material-review-buttons {
    grid-column:1/-1;
    display:flex;
    gap:8px;
    flex-wrap:wrap
}
.danger-button,.success-button {
    border:0;
    border-radius:9px;
    padding:10px 14px;
    font-weight:800;
    cursor:pointer
}
.danger-button {
    background:#fff0ef;
    color:#b23f37;
    border:1px solid #f0c5c1
}
.success-button {
    background:#eaf8f0;
    color:#26764a;
    border:1px solid #bfe7cf
}
.material-version-log-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:16px
}
.material-version-log-grid h4 {
    margin:0 0 8px
}
.material-mini-list {
    display:grid;
    gap:8px
}
.material-mini-list>div {
    padding:10px 12px;
    border:1px solid #e5e9ef;
    border-radius:11px;
    background:#fff
}
.material-mini-list strong,.material-mini-list small {
    display:block
}
.material-mini-list small,.material-mini-list p {
    color:#7d8796;
    margin:3px 0 0;
    font-size:12px
}
.material-select-tip {
    text-align:center;
    padding:80px 30px;
    color:#7b8796
}
.material-select-tip div {
    font-size:38px
}
.material-select-tip h3 {
    color:#293649
}
.material-check-history {
    margin:0 16px 16px
}
.material-log-panel {
    margin-top:2px
}
.material-notice {
    margin-bottom:14px
}
.material-check-history .empty,.material-log-panel .empty {
    text-align:center;
    color:#8993a2
}
.material-review-detail .muted {
    color:#8993a2
}
.material-review-detail .tag,.material-log-panel .tag {
    white-space:nowrap
}
@media(max-width:1180px) {
    .material-kpi-grid {
        grid-template-columns:repeat(3,1fr)
    }
    .material-project-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .material-review-layout {
        grid-template-columns:1fr
    }
    .material-filter-form {
        grid-template-columns:1fr 1fr
    }
    .material-workbench-head {
        align-items:flex-start;
        flex-direction:column
    }
}
@media(max-width:720px) {
    .material-review-hero {
        align-items:flex-start;
        flex-direction:column
    }
    .material-kpi-grid,.material-project-grid,.material-detail-grid,.material-version-log-grid,.material-filter-form {
        grid-template-columns:1fr
    }
    .material-project-metrics {
        grid-template-columns:repeat(2,1fr)
    }
    .material-workbench-head {
        padding:18px
    }
    .material-review-layout {
        padding:10px
    }
    .material-review-form {
        grid-template-columns:1fr
    }
    .material-review-form .wide {
        grid-column:auto
    }
    .material-workbench-actions form {
        width:100%;
        flex-wrap:wrap
    }
    .material-workbench-actions input {
        min-width:0;
        flex:1
    }
}
/* ===== 第二端 07 材料审核中心 V2.5.1 UI布局修复 ===== */
.material-review-page {
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
    overflow:visible
}
.material-review-page * {
    box-sizing:border-box
}
.material-review-page .material-project-panel {
    display:block;
    width:100%;
    min-width:0;
    overflow:hidden
}
.material-review-page .material-project-grid {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    min-width:0!important;
    gap:14px!important;
    align-items:stretch!important
}
.material-review-page .material-project-card {
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:20px 22px!important;
    writing-mode:horizontal-tb!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important
}
.material-review-page .material-project-card * {
    writing-mode:horizontal-tb!important
}
.material-review-page .material-project-main {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(260px,360px);
    gap:28px;
    align-items:center;
    min-width:0
}
.material-review-page .material-project-identity {
    min-width:0
}
.material-review-page .material-project-top {
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    min-width:0
}
.material-review-page .material-project-top small {
    margin-left:auto;
    white-space:nowrap;
    color:#8993a2
}
.material-review-page .material-project-card h3 {
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    margin:12px 0 5px!important;
    font-size:20px!important;
    line-height:1.45!important;
    white-space:normal!important;
    word-break:break-word!important;
    letter-spacing:0!important
}
.material-review-page .material-project-card p {
    display:block!important;
    margin:0!important;
    white-space:normal!important;
    word-break:break-word!important
}
.material-review-page .material-project-progressbox {
    min-width:0;
    padding:14px 16px;
    border-radius:14px;
    background:#f7f9fc
}
.material-review-page .material-progress-head {
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    margin:0 0 8px!important;
    white-space:nowrap
}
.material-review-page .material-progress {
    display:block!important;
    width:100%!important;
    height:8px!important;
    margin:0!important;
    overflow:hidden
}
.material-review-page .material-progress i {
    display:block!important;
    height:100%!important;
    max-width:100%!important
}
.material-review-page .material-project-bottom {
    display:grid;
    grid-template-columns:minmax(320px,1fr) minmax(300px,.85fr) auto;
    gap:20px;
    align-items:center;
    margin-top:16px;
    padding-top:16px;
    border-top:1px solid #edf0f4;
    min-width:0
}
.material-review-page .material-project-metrics {
    display:grid!important;
    grid-template-columns:repeat(4,minmax(68px,1fr))!important;
    gap:8px!important;
    margin:0!important;
    min-width:0
}
.material-review-page .material-project-metrics div {
    display:block!important;
    min-width:0!important;
    padding:9px 10px!important
}
.material-review-page .material-project-metrics span,.material-review-page .material-project-metrics strong {
    display:block!important;
    white-space:nowrap!important;
    writing-mode:horizontal-tb!important
}
.material-review-page .material-project-deadline {
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px 18px!important;
    padding:0!important;
    min-width:0!important;
    font-size:12px!important
}
.material-review-page .material-project-deadline span {
    display:inline-flex!important;
    gap:5px!important;
    align-items:center!important;
    white-space:nowrap!important;
    writing-mode:horizontal-tb!important
}
.material-review-page .material-project-deadline b {
    font-weight:800;
    color:#465365
}
.material-review-page .material-enter-review {
    display:inline-flex!important;
    white-space:nowrap!important;
    margin:0!important;
    justify-self:end
}
.material-review-page .material-review-layout,.material-review-page .material-list-panel,.material-review-page .material-review-detail {
    min-width:0!important;
    max-width:100%!important
}
.material-review-page .material-item,.material-review-page .material-item-main,.material-review-page .material-item-meta {
    min-width:0
}
@media(max-width:1180px) {
    .material-review-page .material-project-main {
        grid-template-columns:1fr
    }
    .material-review-page .material-project-bottom {
        grid-template-columns:1fr 1fr
    }
    .material-review-page .material-enter-review {
        justify-self:start
    }
}
@media(max-width:760px) {
    .material-review-page .material-project-card {
        padding:16px!important
    }
    .material-review-page .material-project-top {
        align-items:flex-start!important;
        flex-wrap:wrap!important
    }
    .material-review-page .material-project-top small {
        margin-left:0;
        width:100%;
        white-space:normal
    }
    .material-review-page .material-project-bottom {
        grid-template-columns:1fr
    }
    .material-review-page .material-project-metrics {
        grid-template-columns:repeat(2,minmax(0,1fr))!important
    }
    .material-review-page .material-project-deadline {
        display:grid!important;
        gap:6px!important
    }
    .material-review-page .material-project-deadline span {
        white-space:normal!important
    }
}
/* ===== 第二端 07 材料审核中心 V2.5.2 布局重构 ===== */
/* 仅作用于材料审核中心，避免影响其他模块公共布局 */
.page-agency-materials .topbar {
    position:relative;
    top:auto;
    z-index:3;
}
.page-agency-materials .content {
    overflow:visible;
}
.page-agency-materials .material-review-page {
    display:flex;
    flex-direction:column;
    gap:0;
    width:100%;
    min-width:0;
    max-width:100%;
    overflow:visible!important;
    position:relative;
}
.page-agency-materials .material-review-hero {
    position:relative;
    z-index:1;
    min-height:0;
    overflow:visible;
}
.page-agency-materials .material-project-panel {
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    contain:none!important;
    isolation:auto!important;
    padding:24px!important;
    margin-bottom:20px!important;
}
.page-agency-materials .material-project-panel>.panel-head {
    margin-bottom:22px!important;
}
.page-agency-materials .material-project-grid {
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    gap:16px!important;
}
.page-agency-materials .material-project-card {
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    flex:0 0 auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding:22px 24px!important;
    margin:0!important;
    border-radius:18px!important;
}
.page-agency-materials .material-project-main {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(280px,390px)!important;
    gap:30px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
}
.page-agency-materials .material-project-identity, .page-agency-materials .material-project-progressbox {
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
}
.page-agency-materials .material-project-top {
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
}
.page-agency-materials .material-project-top small {
    margin-left:auto!important;
    white-space:nowrap!important;
}
.page-agency-materials .material-project-card h3 {
    position:static!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:12px 0 5px!important;
    padding:0!important;
    font-size:20px!important;
    line-height:1.5!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
}
.page-agency-materials .material-project-card p {
    position:static!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
    line-height:1.6!important;
    white-space:normal!important;
}
.page-agency-materials .material-project-progressbox {
    padding:15px 17px!important;
    border:1px solid #edf0f4!important;
    background:#f8fafc!important;
}
.page-agency-materials .material-project-bottom {
    position:static!important;
    display:grid!important;
    grid-template-columns:minmax(340px,1fr) minmax(320px,.9fr) auto!important;
    gap:20px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin-top:18px!important;
    padding-top:18px!important;
    border-top:1px solid #edf0f4!important;
    overflow:visible!important;
}
.page-agency-materials .material-project-metrics {
    display:grid!important;
    grid-template-columns:repeat(4,minmax(72px,1fr))!important;
    gap:8px!important;
    width:100%!important;
    margin:0!important;
}
.page-agency-materials .material-project-metrics div {
    min-width:0!important;
    padding:10px!important;
}
.page-agency-materials .material-project-deadline {
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:8px 18px!important;
    width:100%!important;
    min-width:0!important;
    padding:0!important;
}
.page-agency-materials .material-project-deadline span {
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    white-space:nowrap!important;
}
.page-agency-materials .material-enter-review {
    position:static!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    justify-self:end!important;
    align-self:center!important;
    width:auto!important;
    min-width:94px!important;
    margin:0!important;
    white-space:nowrap!important;
}
.page-agency-materials .material-workbench {
    position:relative;
    z-index:1;
    overflow:visible;
}
@media(max-width:1200px) {
    .page-agency-materials .material-project-main {
        grid-template-columns:1fr!important;
        gap:16px!important;
    }
    .page-agency-materials .material-project-bottom {
        grid-template-columns:1fr 1fr!important;
    }
    .page-agency-materials .material-enter-review {
        justify-self:start!important;
    }
}
@media(max-width:780px) {
    .page-agency-materials .material-project-panel {
        padding:16px!important;
    }
    .page-agency-materials .material-project-card {
        padding:17px!important;
    }
    .page-agency-materials .material-project-top small {
        margin-left:0!important;
        width:100%!important;
        white-space:normal!important;
    }
    .page-agency-materials .material-project-bottom {
        grid-template-columns:1fr!important;
    }
    .page-agency-materials .material-project-metrics {
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .page-agency-materials .material-project-deadline {
        display:grid!important;
        gap:7px!important;
    }
    .page-agency-materials .material-project-deadline span {
        white-space:normal!important;
    }
}
/* ===== 08 工单协同中心 V2.6 ===== */
.work-order-page {
    display:flex;
    flex-direction:column;
    gap:18px;
    min-width:0
}
.wo-hero {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:28px 30px;
    border:1px solid #e8edf3;
    border-radius:22px;
    background:linear-gradient(135deg,#fff 0%,#fffaf7 55%,#f6fbff 100%);
    box-shadow:0 14px 36px rgba(29,45,68,.06)
}
.wo-hero h2 {
    margin:7px 0 8px;
    font-size:28px
}
.wo-hero p {
    max-width:900px;
    margin:0;
    color:#65758b;
    line-height:1.75
}
.wo-hero-actions {
    display:flex;
    gap:10px;
    flex:0 0 auto
}
.wo-kpis {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px
}
.wo-kpis article {
    padding:20px;
    border:1px solid #e8edf3;
    border-radius:16px;
    background:#fff;
    box-shadow:0 10px 28px rgba(29,45,68,.05)
}
.wo-kpis span,.wo-kpis small {
    display:block;
    color:#7b889b
}
.wo-kpis strong {
    display:block;
    margin:8px 0;
    font-size:27px;
    color:#17283f
}
.wo-tabs {
    display:flex;
    gap:8px;
    flex-wrap:wrap
}
.wo-tabs a {
    padding:10px 15px;
    border:1px solid #dde5ee;
    border-radius:10px;
    background:#fff;
    color:#526175;
    font-weight:700
}
.wo-tabs a.active {
    background:#14253c;
    color:#fff;
    border-color:#14253c
}
.wo-filter-form {
    display:grid;
    grid-template-columns:minmax(220px,1.8fr) repeat(3,minmax(150px,1fr)) auto auto;
    gap:12px;
    align-items:end
}
.wo-filter-form label,.wo-create-form label,.wo-assign-form label,.wo-upload-comment label {
    display:flex;
    flex-direction:column;
    gap:6px;
    font-weight:700;
    color:#34455d
}
.wo-filter-form input,.wo-filter-form select,.wo-create-form input,.wo-create-form select,.wo-create-form textarea,.wo-assign-form input,.wo-assign-form select,.wo-action-form textarea,.wo-upload-comment input,.wo-upload-comment textarea {
    width:100%;
    box-sizing:border-box;
    border:1px solid #dce4ed;
    border-radius:10px;
    background:#fff;
    padding:11px 12px;
    color:#24344b
}
.wo-main-layout {
    display:grid;
    grid-template-columns:minmax(390px,.9fr) minmax(520px,1.35fr);
    gap:18px;
    align-items:start
}
.wo-list-panel,.wo-detail-panel {
    min-width:0
}
.wo-list {
    display:flex;
    flex-direction:column;
    gap:10px;
    max-height:980px;
    overflow:auto;
    padding-right:4px
}
.wo-card {
    display:block;
    padding:16px 17px;
    border:1px solid #e4eaf1;
    border-radius:15px;
    background:#fff;
    color:inherit
}
.wo-card:hover,.wo-card.active {
    border-color:#ff8d62;
    box-shadow:0 10px 24px rgba(255,104,51,.08)
}
.wo-card.overdue {
    border-left:4px solid #e75b54
}
.wo-card-top {
    display:flex;
    align-items:center;
    gap:9px
}
.wo-card-top b {
    font-size:12px;
    color:#8492a6
}
.wo-card-top .wo-priority {
    margin-left:auto
}
.wo-card h4 {
    margin:10px 0 7px;
    font-size:16px
}
.wo-card p {
    margin:0 0 10px;
    color:#69798d
}
.wo-card-meta,.wo-card-foot {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    font-size:12px;
    color:#78879a
}
.wo-card-foot {
    padding-top:10px;
    border-top:1px dashed #e5eaf0;
    margin-top:10px
}
.wo-priority {
    padding:4px 8px;
    border-radius:999px;
    background:#f2f5f8;
    font-size:12px;
    font-weight:700
}
.wo-priority.p-urgent {
    background:#fff0ed;
    color:#d34b39
}
.wo-priority.p-high {
    background:#fff6e8;
    color:#b86b00
}
.wo-priority.p-low {
    background:#eef7ff;
    color:#3a6c9b
}
.wo-detail-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin:14px 0
}
.wo-detail-grid article {
    padding:13px;
    border-radius:12px;
    background:#f7f9fb
}
.wo-detail-grid span {
    display:block;
    font-size:12px;
    color:#7b8898
}
.wo-detail-grid strong {
    display:block;
    margin-top:5px;
    color:#23344c
}
.wo-source-link {
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    padding:12px 14px;
    border-radius:12px;
    background:#fff7f2;
    border:1px solid #ffd9c8
}
.wo-source-link b {
    color:#f15c24
}
.wo-source-link a {
    margin-left:auto
}
.wo-description {
    padding:14px 0
}
.wo-description h4 {
    margin:0 0 8px
}
.wo-description p {
    line-height:1.7;
    color:#596a80
}
.wo-assign-form {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr)) auto;
    gap:10px;
    align-items:end;
    padding:14px;
    border-radius:14px;
    background:#f8fafc
}
.wo-action-form {
    margin-top:12px;
    padding:14px;
    border:1px solid #e7ebf1;
    border-radius:14px
}
.wo-action-form>div {
    display:flex;
    gap:9px;
    flex-wrap:wrap;
    margin-top:10px
}
.wo-collab-grid,.wo-history-grid,.wo-upload-comment {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:16px
}
.wo-collab-grid>div,.wo-history-grid>div,.wo-upload-comment>form {
    padding:14px;
    border:1px solid #e7ebf1;
    border-radius:14px;
    background:#fff
}
.wo-collab-grid h4,.wo-history-grid h4 {
    margin:0 0 10px
}
.wo-mini,.wo-log {
    padding:10px 0;
    border-bottom:1px dashed #e7ebf1
}
.wo-mini:last-child,.wo-log:last-child {
    border-bottom:0
}
.wo-mini b,.wo-mini small,.wo-log b,.wo-log span {
    display:block
}
.wo-mini small,.wo-log span {
    margin-top:4px;
    color:#8190a2;
    font-size:12px
}
.wo-log p {
    margin:6px 0 0;
    color:#526175
}
.wo-upload-comment form {
    display:flex;
    align-items:end;
    gap:10px
}
.wo-upload-comment label {
    flex:1
}
.wo-select-tip {
    text-align:center;
    padding:90px 20px
}
.wo-select-tip>div {
    width:56px;
    height:56px;
    border-radius:18px;
    display:grid;
    place-items:center;
    margin:0 auto 14px;
    background:#fff2eb;
    color:#ff682f;
    font-weight:800;
    font-size:20px
}
.wo-select-tip p {
    color:#7e8b9c
}
.wo-create-panel {
    margin-bottom:28px
}
.wo-create-form {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px
}
.wo-create-form .wide {
    grid-column:1/-1
}
.wo-create-from-material {
    border:0;
    border-radius:10px;
    padding:11px 16px;
    background:#ff7b43;
    color:#fff;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 7px 18px rgba(255,104,47,.2)
}
.material-workorder-fields {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    padding:12px;
    border-radius:12px;
    background:#fff8f4;
    border:1px dashed #ffd1bd
}
.material-workorder-fields label {
    display:flex;
    flex-direction:column;
    gap:6px;
    font-weight:700;
    color:#46576e
}
.material-workorder-fields select,.material-workorder-fields input {
    width:100%;
    box-sizing:border-box;
    border:1px solid #e1e6ec;
    border-radius:9px;
    padding:10px;
    background:#fff
}
@media(max-width:1250px) {
    .wo-kpis {
        grid-template-columns:repeat(3,1fr)
    }
    .wo-main-layout {
        grid-template-columns:1fr
    }
    .wo-list {
        max-height:none
    }
    .wo-assign-form {
        grid-template-columns:repeat(2,1fr)
    }
    .wo-filter-form {
        grid-template-columns:repeat(2,1fr)
    }
    .wo-create-form {
        grid-template-columns:repeat(2,1fr)
    }
}
@media(max-width:760px) {
    .wo-hero {
        align-items:flex-start;
        flex-direction:column;
        padding:20px
    }
    .wo-kpis {
        grid-template-columns:repeat(2,1fr)
    }
    .wo-filter-form,.wo-detail-grid,.wo-assign-form,.wo-collab-grid,.wo-history-grid,.wo-upload-comment,.wo-create-form,.material-workorder-fields {
        grid-template-columns:1fr
    }
    .wo-create-form .wide {
        grid-column:auto
    }
    .wo-upload-comment form {
        align-items:stretch;
        flex-direction:column
    }
}
.material-linked-orders {
    margin-top:14px;
    padding:14px;
    border:1px solid #ffe0d1;
    border-radius:14px;
    background:#fffaf7
}
.material-linked-orders h4 {
    margin:0 0 8px
}
.material-linked-orders a {
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:10px 0;
    border-top:1px dashed #edd9cf;
    color:#314158
}
.material-linked-orders a:first-of-type {
    border-top:0
}
.material-linked-orders span {
    color:#7d8998;
    font-size:12px;
    text-align:right
}
@media(max-width:760px) {
    .material-linked-orders a {
        flex-direction:column
    }
    .material-linked-orders span {
        text-align:left
    }
}
/* ===== 09 服务团队中心 V2.7 ===== */
.team-center-v27 {
    display:flex;
    flex-direction:column;
    gap:18px;
    min-width:0
}
.team-center-v27 * {
    box-sizing:border-box
}
.team-hero {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:28px 30px;
    border:1px solid #e7edf2;
    border-radius:22px;
    background:linear-gradient(135deg,#fff 0%,#f7fbff 58%,#f4fffb 100%);
    box-shadow:0 14px 34px rgba(28,39,54,.06)
}
.team-hero h1 {
    margin:7px 0 8px;
    font-size:28px;
    color:#101a2b
}
.team-hero p {
    max-width:860px;
    margin:0;
    color:#64748b;
    line-height:1.8
}
.team-hero .hero-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end
}
.team-kpis {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px
}
.team-kpis article {
    padding:18px;
    border:1px solid #e8edf3;
    border-radius:16px;
    background:#fff;
    box-shadow:0 10px 24px rgba(28,39,54,.04)
}
.team-kpis span,.team-kpis small {
    display:block;
    color:#718096
}
.team-kpis strong {
    display:block;
    margin:8px 0 4px;
    font-size:27px;
    color:#10213b
}
.team-toolbar {
    padding:16px 18px
}
.team-filter-form {
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr auto auto;
    gap:12px;
    align-items:end
}
.team-filter-form label>span,.team-form label>span {
    display:block;
    margin-bottom:6px;
    font-weight:700;
    color:#334155
}
.team-filter-form input,.team-filter-form select,.team-form input,.team-form select,.team-form textarea {
    width:100%;
    min-height:42px;
    border:1px solid #dbe3eb;
    border-radius:10px;
    background:#fff;
    padding:9px 11px;
    color:#1e293b
}
.team-main-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) 260px;
    gap:18px;
    align-items:start
}
.team-roster {
    min-width:0;
    padding:20px
}
.team-center-v27 .panel-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:16px
}
.team-center-v27 .panel-head h3 {
    margin:0 0 5px;
    font-size:20px;
    color:#152238
}
.team-center-v27 .panel-head p {
    margin:0;
    color:#7b8796;
    line-height:1.6
}
.team-table-wrap {
    width:100%;
    overflow:auto
}
.team-table {
    width:100%;
    border-collapse:collapse;
    min-width:1080px
}
.team-table th {
    padding:11px 10px;
    text-align:left;
    font-size:12px;
    color:#7c8797;
    border-bottom:1px solid #e8edf2;
    white-space:nowrap
}
.team-table td {
    padding:15px 10px;
    border-bottom:1px solid #eef2f5;
    vertical-align:middle;
    color:#334155
}
.team-table td>small,.team-table td div>small {
    display:block;
    margin-top:4px;
    color:#8793a2
}
.member-cell {
    display:flex;
    align-items:center;
    gap:10px;
    min-width:150px
}
.member-cell i {
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:12px;
    background:#fff2ea;
    color:#ff641f;
    font-style:normal;
    font-weight:800
}
.member-cell strong {
    display:block;
    color:#172033
}
.skill-tags {
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    max-width:220px
}
.skill-tags span {
    padding:4px 8px;
    border-radius:999px;
    background:#edf5ff;
    color:#3571ad;
    font-size:12px;
    white-space:nowrap
}
.skill-tags.big {
    max-width:none
}
.skill-tags.big span {
    font-size:13px;
    padding:6px 10px
}
.load-meter {
    min-width:160px
}
.load-meter>div {
    display:flex;
    justify-content:space-between;
    gap:8px;
    font-size:12px
}
.load-meter>div span {
    color:#778597
}
.load-meter>div b {
    color:#233247
}
.load-meter em {
    display:block;
    height:7px;
    margin:7px 0 5px;
    border-radius:99px;
    background:#eef2f6;
    overflow:hidden
}
.load-meter em i {
    display:block;
    height:100%;
    border-radius:inherit;
    background:#3fb98b
}
.load-meter.balanced em i {
    background:#4a8fe7
}
.load-meter.warning em i {
    background:#f3a433
}
.load-meter.overload em i {
    background:#e85a58
}
.load-meter small {
    font-size:11px
}
.status-pill {
    display:inline-flex;
    padding:5px 9px;
    border-radius:999px;
    font-size:12px;
    background:#edf7f3;
    color:#24845f;
    white-space:nowrap
}
.status-pill.busy {
    background:#fff4e6;
    color:#c87919
}
.status-pill.leave,.status-pill.inactive {
    background:#f1f3f5;
    color:#75808d
}
.load-guide {
    padding:20px;
    position:sticky;
    top:18px
}
.load-rule {
    display:grid;
    grid-template-columns:72px 1fr;
    gap:3px 10px;
    padding:12px 0;
    border-bottom:1px solid #edf1f4
}
.load-rule b {
    grid-row:1/3;
    font-size:14px;
    color:#253247
}
.load-rule span {
    font-weight:700
}
.load-rule small {
    color:#8491a1
}
.load-rule.available span {
    color:#24845f
}
.load-rule.warning span {
    color:#c87919
}
.load-rule.overload span {
    color:#cf4848
}
.formula {
    margin:15px 0 0;
    font-size:12px;
    color:#8290a0;
    line-height:1.7
}
.member-detail {
    padding:22px
}
.detail-actions {
    display:flex;
    gap:8px;
    flex-wrap:wrap
}
.member-summary-grid {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    margin:16px 0
}
.member-summary-grid>div {
    padding:14px 16px;
    border-radius:13px;
    background:#f7f9fb;
    border:1px solid #edf0f3
}
.member-summary-grid span {
    display:block;
    color:#7f8c9c;
    font-size:12px
}
.member-summary-grid strong {
    display:block;
    margin-top:5px;
    font-size:21px;
    color:#17243a
}
.capability-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    padding:18px 0;
    border-top:1px solid #edf1f4;
    border-bottom:1px solid #edf1f4
}
.capability-grid h4,.member-work-grid h4 {
    margin:0 0 10px;
    color:#253247
}
.member-work-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    padding-top:18px
}
.mini-list article {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:11px 0;
    border-bottom:1px solid #edf1f4
}
.mini-list article strong,.mini-list article small {
    display:block
}
.mini-list article small {
    margin-top:3px;
    color:#8390a0
}
.empty-inline {
    color:#8b96a5
}
.assignment-history {
    margin-top:18px
}
.assignment-history summary {
    cursor:pointer;
    font-weight:700;
    color:#32435a
}
.history-list p {
    display:grid;
    grid-template-columns:55px 1fr auto auto;
    gap:10px;
    padding:9px 0;
    border-bottom:1px solid #eef2f4;
    margin:0
}
.history-list small {
    color:#8794a3
}
.team-modal[hidden] {
    display:none
}
.team-modal {
    position:fixed;
    inset:0;
    z-index:1200;
    display:grid;
    place-items:center;
    padding:24px;
    background:rgba(15,23,42,.42);
    backdrop-filter:blur(3px)
}
.modal-card {
    position:relative;
    width:min(720px,96vw);
    max-height:90vh;
    overflow:auto;
    padding:24px;
    border-radius:20px;
    background:#fff;
    box-shadow:0 28px 70px rgba(15,23,42,.22)
}
.modal-card.wide {
    width:min(980px,96vw)
}
.modal-close {
    position:absolute;
    right:15px;
    top:12px;
    border:0;
    background:transparent;
    font-size:28px;
    cursor:pointer;
    color:#8793a2
}
.team-form {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px
}
.team-form.one {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.team-form .full,.team-form fieldset.full {
    grid-column:1/-1
}
.team-form fieldset {
    border:1px solid #e1e7ed;
    border-radius:12px;
    padding:12px
}
.team-form legend {
    padding:0 6px;
    font-weight:700;
    color:#334155
}
.check-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px
}
.check-grid label,.team-form label.check {
    display:flex;
    align-items:center;
    gap:8px
}
.check-grid input,.team-form label.check input {
    width:auto;
    min-height:0
}
.form-actions {
    display:flex;
    justify-content:flex-end;
    gap:10px;
    padding-top:4px
}
.danger-link {
    border:0;
    background:transparent;
    color:#d95252;
    cursor:pointer
}
.small {
    padding:8px 12px;
    font-size:13px
}
.text-link {
    align-self:center;
    color:#ef6426;
    text-decoration:none
}
.empty {
    text-align:center;
    color:#8a96a4;
    padding:30px!important
}
.modal-open {
    overflow:hidden
}
@media(max-width:1400px) {
    .team-kpis {
        grid-template-columns:repeat(3,1fr)
    }
    .team-main-grid {
        grid-template-columns:1fr
    }
    .load-guide {
        position:static
    }
    .team-main-grid .load-guide {
        display:grid;
        grid-template-columns:repeat(4,1fr);
        gap:10px
    }
    .load-guide .panel-head,.load-guide .formula {
        grid-column:1/-1
    }
    .load-rule {
        border:1px solid #edf1f4;
        border-radius:12px;
        padding:12px
    }
}
@media(max-width:900px) {
    .team-hero {
        align-items:flex-start;
        flex-direction:column
    }
    .team-kpis {
        grid-template-columns:repeat(2,1fr)
    }
    .team-filter-form {
        grid-template-columns:1fr 1fr
    }
    .team-filter-form label:first-child {
        grid-column:1/-1
    }
    .member-summary-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .capability-grid,.member-work-grid {
        grid-template-columns:1fr
    }
    .team-main-grid .load-guide {
        grid-template-columns:1fr 1fr
    }
    .team-form,.team-form.one {
        grid-template-columns:1fr
    }
    .team-form .full,.team-form fieldset.full {
        grid-column:1
    }
    .check-grid {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:620px) {
    .team-kpis {
        grid-template-columns:1fr
    }
    .team-main-grid .load-guide,.check-grid {
        grid-template-columns:1fr
    }
    .member-summary-grid {
        grid-template-columns:1fr 1fr
    }
    .team-hero {
        padding:22px
    }
    .history-list p {
        grid-template-columns:1fr
    }
}
/* ===== 10 AI智能服务中心 + 11 AI模型管理 V2.8 ===== */
.agency-ai-page {
    display:grid;
    gap:18px
}
.agency-ai-hero {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    padding:28px;
    border:1px solid #eee4dc;
    border-radius:22px;
    background:linear-gradient(135deg,#fff 0%,#fff8f2 58%,#f4fbff 100%);
    box-shadow:0 12px 32px rgba(74,52,38,.05)
}
.agency-ai-hero h2 {
    margin:6px 0 8px;
    font-size:30px
}
.agency-ai-hero p {
    margin:0;
    max-width:900px;
    color:#726861;
    line-height:1.8
}
.ai-link-btn {
    display:inline-flex;
    align-items:center;
    padding:11px 16px;
    border:1px solid #ff7a33;
    border-radius:11px;
    color:#ef6423;
    text-decoration:none;
    background:#fff;
    white-space:nowrap
}
.ai-kpis {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px
}
.ai-kpis article,.ai-default-grid article {
    padding:18px;
    background:#fff;
    border:1px solid #eee5df;
    border-radius:17px
}
.ai-kpis span,.ai-kpis small,.ai-default-grid span,.ai-default-grid small {
    display:block;
    color:#8a817b
}
.ai-kpis strong,.ai-default-grid strong {
    display:block;
    margin:7px 0;
    font-size:24px;
    color:#172840
}
.ai-cap-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px
}
.ai-cap-grid article {
    padding:20px;
    border:1px solid #ece2db;
    border-radius:18px;
    background:#fff
}
.ai-cap-grid h3 {
    margin:12px 0 7px
}
.ai-cap-grid p {
    min-height:48px;
    margin:0 0 15px;
    color:#786f68;
    line-height:1.65
}
.cap-badge {
    display:inline-flex;
    padding:6px 9px;
    border-radius:9px;
    background:#fff1e8;
    color:#ec6424;
    font-size:12px;
    font-weight:700
}
.ai-quick {
    border:0;
    background:transparent;
    color:#e85f20;
    font-weight:700;
    cursor:pointer;
    padding:0
}
.ai-task-create {
    padding:22px
}
.ai-service-form {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px
}
.ai-service-form label {
    display:grid;
    gap:7px;
    font-weight:600
}
.ai-service-form input,.ai-service-form select,.ai-service-form textarea {
    width:100%;
    padding:11px 12px;
    border:1px solid #e7ddd6;
    border-radius:10px;
    background:#fff
}
.ai-service-form .span-2 {
    grid-column:1/-1
}
.ai-form-foot {
    display:flex!important;
    justify-content:space-between;
    align-items:center;
    gap:16px
}
.ai-form-foot small {
    color:#897f78;
    font-weight:400
}
.ai-error-text {
    display:block;
    max-width:320px;
    margin-top:4px;
    color:#c7532b;
    white-space:normal
}
.empty-cell {
    text-align:center!important;
    color:#968b84;
    padding:28px!important
}
.ai-default-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px
}
.ai-model-two-col {
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);
    gap:14px
}
.ai-model-two-col>.panel {
    padding:22px
}
.ai-security-panel ul {
    margin:12px 0 0;
    padding-left:20px;
    color:#746a64;
    line-height:2
}
.ai-purpose-box {
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    padding:14px;
    border:1px solid #e8ddd5;
    border-radius:12px
}
.ai-purpose-box legend {
    padding:0 6px;
    font-weight:700
}
.ai-purpose-box label {
    display:flex!important;
    grid-template-columns:none!important;
    align-items:center;
    gap:6px;
    padding:7px 9px;
    border-radius:9px;
    background:#faf7f4;
    font-weight:500
}
.ai-purpose-box input {
    width:auto!important
}
.ai-model-cards-v28 {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px
}
.ai-model-cards-v28>article {
    padding:18px;
    border:1px solid #eee2da;
    border-radius:16px;
    background:#fff
}
.model-card-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:12px
}
.model-card-head h3 {
    margin:8px 0 4px
}
.model-card-head p {
    margin:0;
    color:#877c74
}
.model-meta {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin:15px 0
}
.model-meta span {
    padding:9px;
    background:#faf7f4;
    border-radius:9px;
    color:#8a8079;
    font-size:12px
}
.model-meta b {
    display:block;
    margin-top:4px;
    color:#3b3430
}
.model-purpose-tags {
    display:flex;
    gap:7px;
    flex-wrap:wrap
}
.model-purpose-tags span {
    padding:6px 8px;
    border-radius:8px;
    background:#eef6ff;
    color:#376ea5;
    font-size:12px
}
.model-actions {
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin-top:15px
}
.model-actions form {
    margin:0
}
.model-actions details {
    width:100%
}
.model-actions summary {
    cursor:pointer;
    color:#e56122;
    font-weight:700;
    margin-top:6px
}
.ai-model-edit-v28 {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
    padding:14px;
    background:#fffaf6;
    border-radius:12px
}
.ai-model-edit-v28 label {
    display:grid;
    gap:5px
}
.ai-model-edit-v28 input,.ai-model-edit-v28 select {
    padding:9px;
    border:1px solid #e8ddd5;
    border-radius:9px
}
.ai-model-edit-v28 .span-2 {
    grid-column:1/-1
}
.responsive-table td small {
    display:block;
    margin-top:4px;
    color:#8b817b
}
@media(max-width:1200px) {
    .ai-kpis {
        grid-template-columns:repeat(3,1fr)
    }
    .ai-cap-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .ai-default-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .ai-model-two-col {
        grid-template-columns:1fr
    }
    .ai-model-cards-v28 {
        grid-template-columns:1fr
    }
    .model-meta {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:720px) {
    .agency-ai-hero {
        flex-direction:column;
        align-items:flex-start
    }
    .ai-kpis,.ai-cap-grid,.ai-default-grid {
        grid-template-columns:1fr
    }
    .ai-service-form,.ai-model-edit-v28 {
        grid-template-columns:1fr
    }
    .ai-service-form .span-2,.ai-model-edit-v28 .span-2 {
        grid-column:1
    }
    .ai-form-foot {
        align-items:flex-start;
        flex-direction:column
    }
    .model-meta {
        grid-template-columns:1fr
    }
}
/* ===== 12 到期预警与续报 V2.9 ===== */
.renewal-page {
    display:flex;
    flex-direction:column;
    gap:20px
}
.renewal-hero {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:30px 34px;
    border:1px solid #e6edf2;
    border-radius:22px;
    background:linear-gradient(120deg,#fff 0%,#fffaf6 55%,#f3fbfb 100%);
    box-shadow:0 14px 38px rgba(39,58,72,.06)
}
.renewal-hero h2 {
    margin:6px 0 8px;
    font-size:30px
}
.renewal-hero p {
    max-width:900px;
    margin:0;
    color:#6f7f90;
    line-height:1.8
}
.renewal-kpis {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:14px
}
.renewal-kpis article {
    padding:20px;
    border:1px solid #e7edf2;
    border-radius:16px;
    background:#fff;
    box-shadow:0 10px 26px rgba(37,52,66,.05)
}
.renewal-kpis span,.renewal-kpis small {
    display:block;
    color:#7c8997
}
.renewal-kpis strong {
    display:block;
    margin:8px 0;
    font-size:27px;
    color:#10253d
}
.renewal-filter form {
    display:grid;
    grid-template-columns:2fr repeat(3,1fr) auto auto;
    gap:12px;
    align-items:end
}
.renewal-filter label {
    display:flex;
    flex-direction:column;
    gap:7px;
    font-weight:600
}
.renewal-list2 {
    display:flex;
    flex-direction:column;
    gap:14px
}
.renewal-risk-card {
    padding:20px;
    border:1px solid #e6edf2;
    border-left:5px solid #b5c2cc;
    border-radius:16px;
    background:#fff
}
.renewal-risk-card.warning {
    border-left-color:#f0a13c
}
.renewal-risk-card.urgent,.renewal-risk-card.expired {
    border-left-color:#ff6628;
    background:linear-gradient(90deg,#fffaf7,#fff)
}
.renewal-risk-head {
    display:flex;
    justify-content:space-between;
    gap:24px
}
.renewal-risk-head h4 {
    margin:7px 0;
    font-size:18px
}
.renewal-risk-head p {
    margin:0;
    color:#728092;
    line-height:1.7
}
.renewal-type {
    display:inline-block;
    padding:5px 10px;
    border-radius:999px;
    background:#eff6ff;
    color:#376fa7;
    font-size:12px;
    font-weight:700
}
.renewal-days {
    text-align:right;
    white-space:nowrap
}
.renewal-days strong {
    display:block;
    font-size:20px;
    color:#ff6628
}
.renewal-days small {
    color:#8492a0
}
.renewal-meta {
    display:flex;
    flex-wrap:wrap;
    gap:8px 18px;
    margin:15px 0;
    padding-top:13px;
    border-top:1px solid #edf1f4;
    color:#667688;
    font-size:13px
}
.renewal-actions {
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(0,1.6fr);
    gap:12px
}
.renewal-actions form,.renewal-task-create {
    display:flex;
    gap:8px;
    align-items:center
}
.renewal-actions input,.renewal-actions select {
    min-width:0
}
.renewal-task-create input:first-of-type {
    flex:1
}
.renewal-two-col {
    display:grid;
    grid-template-columns:1.55fr 1fr;
    gap:20px
}
.renewal-manual-form {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px
}
.renewal-manual-form label {
    display:flex;
    flex-direction:column;
    gap:6px
}
.renewal-manual-form .span-2 {
    grid-column:1/-1
}
.renewal-page table small {
    display:block;
    color:#8592a0;
    margin-top:4px
}
.inline-form {
    display:flex;
    gap:6px;
    align-items:center
}
@media(max-width:1280px) {
    .renewal-kpis {
        grid-template-columns:repeat(3,1fr)
    }
    .renewal-filter form {
        grid-template-columns:repeat(2,1fr)
    }
    .renewal-actions {
        grid-template-columns:1fr
    }
    .renewal-two-col {
        grid-template-columns:1fr
    }
}
@media(max-width:760px) {
    .renewal-hero {
        align-items:flex-start;
        flex-direction:column;
        padding:22px
    }
    .renewal-kpis {
        grid-template-columns:repeat(2,1fr)
    }
    .renewal-filter form {
        grid-template-columns:1fr
    }
    .renewal-risk-head {
        flex-direction:column
    }
    .renewal-days {
        text-align:left
    }
    .renewal-actions form,.renewal-task-create {
        flex-wrap:wrap
    }
    .renewal-manual-form {
        grid-template-columns:1fr
    }
    .renewal-manual-form .span-2 {
        grid-column:auto
    }
}
/* ===== 13 数据统计与经营分析 V3.0 · Executive BI ===== */
.page-agency-analytics .content {
    padding:34px;
    background:linear-gradient(180deg,#f5f7fb 0,#f8f3ee 100%)
}
.bi-page {
    display:grid;
    gap:22px;
    max-width:1680px;
    margin:0 auto
}
.bi-command {
    display:flex;
    justify-content:space-between;
    gap:30px;
    align-items:flex-end;
    padding:34px 38px;
    border-radius:30px;
    background:#101827;
    color:#fff;
    box-shadow:0 22px 60px rgba(16,24,39,.16);
    position:relative;
    overflow:hidden
}
.bi-command:after {
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    border-radius:50%;
    right:-140px;
    top:-230px;
    background:radial-gradient(circle,rgba(255,112,39,.34),transparent 67%)
}
.bi-command h2 {
    font-size:34px;
    margin:8px 0 10px
}
.bi-command p {
    max-width:820px;
    color:#aebbd0;
    line-height:1.8;
    margin:0
}
.bi-kicker {
    font-size:12px;
    letter-spacing:.18em;
    color:#ff8b50
}
.bi-year {
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:10px;
    background:rgba(255,255,255,.08);
    padding:10px 12px;
    border-radius:16px
}
.bi-year span {
    font-size:12px;
    color:#aebbd0
}
.bi-year select {
    background:#fff;
    border:0;
    border-radius:10px;
    padding:9px 32px 9px 12px
}
.bi-strip {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px
}
.bi-strip article {
    background:#fff;
    border:1px solid #e7eaf0;
    border-radius:20px;
    padding:20px 22px;
    display:grid;
    gap:8px;
    box-shadow:0 10px 26px rgba(22,29,45,.05)
}
.bi-strip small {
    color:#7e8aa0
}
.bi-strip strong {
    font-size:27px;
    color:#111827
}
.bi-strip em {
    font-style:normal;
    font-size:12px;
    color:#ff6422
}
.bi-grid-main {
    display:grid;
    grid-template-columns:1.8fr 1fr;
    gap:18px
}
.bi-grid-three {
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr;
    gap:18px
}
.bi-card {
    background:#fff;
    border:1px solid #e3e7ee;
    border-radius:24px;
    padding:24px;
    box-shadow:0 12px 32px rgba(22,29,45,.055)
}
.bi-card>header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px
}
.bi-card>header>div {
    display:flex;
    align-items:center;
    gap:10px
}
.bi-card>header span {
    display:inline-flex;
    width:30px;
    height:30px;
    border-radius:9px;
    background:#f0f3f7;
    align-items:center;
    justify-content:center;
    font-size:11px;
    color:#748197
}
.bi-card h3 {
    margin:0;
    font-size:18px
}
.bi-card>header small {
    color:#8b95a7
}
.bi-month-bars {
    height:230px;
    display:grid;
    grid-template-columns:repeat(12,1fr);
    gap:8px;
    align-items:end;
    padding-top:12px
}
.bi-month {
    height:100%;
    display:grid;
    grid-template-rows:1fr auto auto;
    gap:6px;
    text-align:center
}
.bi-columns {
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:4px;
    height:100%;
    border-bottom:1px solid #e7eaf0
}
.bi-columns i,.bi-columns b {
    width:10px;
    border-radius:8px 8px 2px 2px;
    min-height:4px
}
.bi-columns i {
    background:#202b3d
}
.bi-columns b {
    background:#ff6b2b
}
.bi-month>span {
    font-size:11px
}
.bi-month>small {
    font-size:9px;
    color:#98a2b3
}
.bi-trend footer {
    display:flex;
    gap:20px;
    margin-top:14px;
    color:#738096;
    font-size:12px
}
.bi-trend footer i,.bi-trend footer b {
    display:inline-block;
    width:10px;
    height:10px;
    border-radius:3px;
    margin-right:5px;
    background:#202b3d
}
.bi-trend footer b {
    background:#ff6b2b
}
.bi-funnel-flow {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:30px 0
}
.bi-funnel-flow div {
    width:84px;
    height:84px;
    border-radius:50%;
    background:#f6f7f9;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center
}
.bi-funnel-flow strong {
    font-size:22px
}
.bi-funnel-flow small {
    color:#7e8aa0
}
.bi-funnel-flow i {
    font-style:normal;
    color:#c4cad4
}
.bi-rate {
    display:flex;
    justify-content:space-between;
    padding:13px 0;
    border-top:1px dashed #e0e5ec
}
.bi-rate strong {
    color:#ff6422
}
.bi-ranked {
    display:grid;
    gap:16px
}
.bi-ranked label {
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-bottom:6px
}
.bi-ranked label span {
    font-size:12px;
    color:#7e8aa0
}
.bi-ranked progress,.bi-quality progress,.bi-load progress {
    width:100%;
    height:8px;
    border:0;
    border-radius:99px;
    overflow:hidden
}
.bi-ranked progress::-webkit-progress-bar,.bi-quality progress::-webkit-progress-bar,.bi-load progress::-webkit-progress-bar {
    background:#edf0f4
}
.bi-ranked progress::-webkit-progress-value,.bi-quality progress::-webkit-progress-value {
    background:#ff6b2b
}
.bi-load progress::-webkit-progress-value {
    background:#202b3d
}
.bi-metric-pairs {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px
}
.bi-metric-pairs div {
    background:#f6f7f9;
    border-radius:14px;
    padding:14px
}
.bi-metric-pairs small {
    display:block;
    color:#8691a3
}
.bi-metric-pairs strong {
    font-size:20px
}
.bi-ai-types {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:14px
}
.bi-ai-types span {
    background:#fff4ee;
    border:1px solid #ffe0d1;
    border-radius:99px;
    padding:6px 10px;
    font-size:11px
}
.bi-ai-types b {
    margin-left:6px
}
.bi-quality {
    text-align:center;
    padding:10px 18px 22px
}
.bi-quality strong {
    font-size:44px;
    display:block;
    color:#111827
}
.bi-quality span {
    color:#7e8aa0;
    display:block;
    margin:2px 0 14px
}
.bi-quality-foot {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:7px
}
.bi-quality-foot span {
    padding:10px 6px;
    background:#f6f7f9;
    border-radius:12px;
    font-size:11px;
    color:#7e8aa0
}
.bi-quality-foot b {
    display:block;
    color:#111827;
    font-size:17px;
    margin-top:4px
}
.bi-team-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px
}
.bi-team-grid article {
    border:1px solid #e5e8ee;
    border-radius:18px;
    padding:16px
}
.bi-person {
    display:flex;
    justify-content:space-between;
    gap:10px
}
.bi-person small {
    color:#8b95a7
}
.bi-load {
    margin:14px 0
}
.bi-load span {
    font-size:12px;
    display:block;
    margin-bottom:6px
}
.bi-person-stats {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:5px
}
.bi-person-stats span {
    background:#f7f8fa;
    border-radius:9px;
    padding:7px 4px;
    text-align:center;
    font-size:10px;
    color:#7e8aa0
}
.bi-person-stats b {
    display:block;
    color:#111827;
    margin-top:2px
}
.muted {
    color:#98a2b3
}
/* ===== 14 机构设置与权限 V3.0 · Split Control Console ===== */
.page-agency-settings .content {
    padding:0;
    background:#eef1f5
}
.org-console {
    display:grid;
    grid-template-columns:280px minmax(0,1fr);
    min-height:calc(100vh - 96px);
    max-width:none
}
.org-console-nav {
    background:#18202c;
    color:#fff;
    padding:34px 26px;
    position:sticky;
    top:0;
    height:calc(100vh - 96px);
    align-self:start
}
.org-console-nav>span {
    font-size:11px;
    letter-spacing:.17em;
    color:#ff8750
}
.org-console-nav h2 {
    font-size:26px;
    margin:10px 0
}
.org-console-nav p {
    font-size:12px;
    line-height:1.7;
    color:#98a4b7
}
.org-console-nav nav {
    display:grid;
    gap:4px;
    margin-top:28px
}
.org-console-nav a {
    color:#c8d0dc;
    text-decoration:none;
    padding:11px 12px;
    border-radius:10px;
    font-size:13px
}
.org-console-nav a:hover {
    background:#263142;
    color:#fff
}
.org-console-main {
    padding:30px;
    display:grid;
    gap:18px;
    min-width:0
}
.org-status {
    display:grid;
    grid-template-columns:1.5fr repeat(3,1fr);
    gap:1px;
    background:#dfe4eb;
    border:1px solid #dfe4eb;
    border-radius:18px;
    overflow:hidden
}
.org-status>div {
    background:#fff;
    padding:18px 20px;
    display:grid;
    gap:5px
}
.org-status small {
    color:#8994a6
}
.org-status strong {
    font-size:21px
}
.org-status span {
    font-size:11px;
    color:#9aa4b3
}
.org-section {
    background:#fff;
    border:1px solid #dfe4eb;
    border-radius:18px;
    padding:24px
}
.org-section>header {
    display:flex;
    gap:14px;
    align-items:flex-start;
    padding-bottom:18px;
    border-bottom:1px solid #edf0f3;
    margin-bottom:20px
}
.org-section>header>span {
    width:38px;
    height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#18202c;
    color:#fff;
    border-radius:11px;
    font-size:12px
}
.org-section h3 {
    margin:0 0 5px;
    font-size:19px
}
.org-section header p {
    margin:0;
    color:#8893a4;
    font-size:12px
}
.org-form {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px
}
.org-form.compact {
    grid-template-columns:1fr 1fr
}
.org-form label,.permission-matrix>label,.notify-grid label {
    display:grid;
    gap:6px;
    font-size:12px;
    color:#667085
}
.org-form input,.org-form select,.org-form textarea,.org-inline input,.org-inline select,.permission-matrix select,.notify-grid input {
    width:100%;
    border:1px solid #d8dee7;
    border-radius:10px;
    padding:10px 11px;
    background:#fff
}
.org-form .wide {
    grid-column:span 2
}
.org-form fieldset.wide {
    grid-column:span 2
}
.org-form .check,.permission-matrix .check {
    display:flex;
    align-items:center;
    gap:7px
}
.org-form .check input,.permission-matrix .check input {
    width:auto
}
.org-split {
    display:grid;
    grid-template-columns:390px minmax(0,1fr);
    gap:24px
}
.org-table {
    overflow:auto
}
.org-table table {
    width:100%;
    border-collapse:collapse;
    font-size:12px
}
.org-table th,.org-table td {
    text-align:left;
    padding:12px 10px;
    border-bottom:1px solid #edf0f3;
    white-space:nowrap
}
.org-table th {
    color:#7e899a;
    font-weight:500
}
.org-table td small {
    display:block;
    color:#98a2b3;
    margin-top:3px
}
.role-cards {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px
}
.role-cards article {
    border:1px solid #e1e6ed;
    border-radius:13px;
    padding:14px;
    display:grid;
    gap:6px
}
.role-cards code {
    font-size:10px;
    color:#ff6422;
    background:#fff4ee;
    width:max-content;
    padding:3px 6px;
    border-radius:6px
}
.role-cards span {
    font-size:11px;
    color:#8994a6
}
.org-inline {
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr auto;
    gap:9px;
    margin-top:14px
}
.org-inline button,.notify-grid button {
    border:0;
    background:#18202c;
    color:#fff;
    border-radius:10px;
    padding:10px 16px
}
.permission-matrix {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px
}
.permission-matrix>label,.permission-matrix>button {
    grid-column:1/-1
}
.permission-matrix fieldset {
    border:1px solid #e1e6ed;
    border-radius:14px;
    padding:13px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    max-height:300px;
    overflow:auto
}
.permission-matrix legend {
    padding:0 7px;
    font-size:12px;
    font-weight:700
}
.permission-matrix .check {
    padding:7px;
    border-radius:8px;
    background:#f8f9fb
}
.permission-matrix .check span {
    font-size:11px
}
.permission-matrix .check small {
    display:block;
    color:#99a3b3
}
.notify-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px
}
.notify-grid form {
    border:1px solid #e1e6ed;
    border-radius:13px;
    padding:14px;
    display:grid;
    gap:9px
}
.notify-grid strong {
    font-size:13px
}
.switch-line {
    display:flex!important;
    align-items:center;
    gap:7px
}
.switch-line input {
    width:auto!important
}
@media(max-width:1200px) {
    .bi-strip {
        grid-template-columns:repeat(3,1fr)
    }
    .bi-grid-main,.bi-grid-three {
        grid-template-columns:1fr
    }
    .bi-team-grid {
        grid-template-columns:1fr 1fr
    }
    .org-console {
        grid-template-columns:220px minmax(0,1fr)
    }
    .org-form {
        grid-template-columns:1fr 1fr
    }
    .org-split {
        grid-template-columns:1fr
    }
    .role-cards,.notify-grid {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:780px) {
    .page-agency-analytics .content {
        padding:16px
    }
    .bi-command {
        display:block;
        padding:24px
    }
    .bi-year {
        margin-top:18px;
        width:max-content
    }
    .bi-strip {
        grid-template-columns:1fr 1fr
    }
    .bi-month-bars {
        overflow-x:auto;
        grid-template-columns:repeat(12,46px)
    }
    .bi-team-grid {
        grid-template-columns:1fr
    }
    .org-console {
        display:block
    }
    .org-console-nav {
        position:relative;
        height:auto
    }
    .org-console-nav nav {
        grid-template-columns:1fr 1fr
    }
    .org-console-main {
        padding:14px
    }
    .org-status,.role-cards,.notify-grid {
        grid-template-columns:1fr 1fr
    }
    .org-form,.permission-matrix {
        grid-template-columns:1fr
    }
    .org-form .wide {
        grid-column:auto
    }
    .permission-matrix fieldset {
        grid-template-columns:1fr
    }
    .org-inline {
        grid-template-columns:1fr
    }
}
.org-logo-row {
    display:flex;
    align-items:center;
    gap:18px;
    padding:14px 0 22px
}
.org-logo-preview {
    width:78px;
    height:78px;
    border-radius:18px;
    background:#f2f4f7;
    border:1px solid #e0e5ec;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden
}
.org-logo-preview img {
    width:100%;
    height:100%;
    object-fit:contain
}
.org-logo-preview b {
    font-size:30px;
    color:#ff6422
}
.org-logo-row form {
    display:grid;
    grid-template-columns:auto auto;
    gap:6px 12px;
    align-items:center
}
.org-logo-row form strong,.org-logo-row form small {
    grid-column:1/-1
}
.org-logo-row form small {
    font-size:11px;
    color:#8994a6
}
.org-logo-row form input {
    font-size:12px
}
.org-logo-row form button {
    border:0;
    background:#18202c;
    color:#fff;
    border-radius:9px;
    padding:8px 13px
}
/* ===== 14 机构设置与权限 V3.1.2 · Top Navigation Control Center ===== */
.page-agency-settings .content {
    padding:0 28px 42px;
    background:#f5f7fa;
    overflow:visible
}
.org-console-v31 {
    max-width:1480px;
    margin:0 auto;
    padding:26px 0 54px
}
.org-console-hero {
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
    min-height:180px;
    padding:34px 38px;
    border-radius:26px;
    background:linear-gradient(135deg,#101827 0%,#172235 55%,#202d43 100%);
    color:#fff;
    box-shadow:0 18px 48px rgba(15,23,42,.14)
}
.org-console-hero:before {
    content:"";
    position:absolute;
    width:340px;
    height:340px;
    border-radius:50%;
    right:-80px;
    top:-190px;
    background:radial-gradient(circle,rgba(255,119,61,.28),rgba(255,119,61,0) 68%)
}
.org-console-hero:after {
    content:"";
    position:absolute;
    width:420px;
    height:1px;
    right:24px;
    bottom:46px;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);
    transform:rotate(-12deg)
}
.org-console-hero-copy,.org-console-hero-meta {
    position:relative;
    z-index:1
}
.org-console-kicker {
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.18em;
    color:#ff9a6c
}
.org-console-hero h1 {
    margin:12px 0 8px;
    font-size:34px;
    letter-spacing:-.02em
}
.org-console-hero p {
    margin:0;
    color:#b8c3d4;
    font-size:14px;
    line-height:1.8
}
.org-console-hero-meta {
    min-width:260px;
    text-align:right;
    padding-left:28px;
    border-left:1px solid rgba(255,255,255,.13)
}
.org-console-hero-meta span,.org-console-hero-meta small {
    display:block;
    color:#9eabbf;
    font-size:11px
}
.org-console-hero-meta strong {
    display:block;
    margin:8px 0 5px;
    font-size:18px
}
.org-top-tabs {
    position:sticky;
    top:0;
    z-index:20;
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:8px;
    margin:16px 0 18px;
    padding:8px;
    border:1px solid #e2e7ee;
    border-radius:18px;
    background:rgba(255,255,255,.96);
    box-shadow:0 8px 28px rgba(15,23,42,.065);
    backdrop-filter:blur(14px)
}
.org-top-tabs a {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:48px;
    padding:8px 10px;
    border-radius:12px;
    color:#647084;
    text-decoration:none;
    font-size:13px;
    font-weight:700;
    transition:.2s ease
}
.org-top-tabs a b {
    font-size:10px;
    color:#a1aaba;
    font-weight:800
}
.org-top-tabs a:hover {
    background:#f5f7fa;
    color:#111827
}
.org-top-tabs a.active {
    background:#141d2b;
    color:#fff;
    box-shadow:0 8px 20px rgba(20,29,43,.16)
}
.org-top-tabs a.active b {
    color:#ff8a52
}
.org-console-main {
    padding:0;
    display:grid;
    gap:18px;
    min-width:0
}
.org-status {
    display:grid;
    grid-template-columns:1.45fr repeat(4,1fr);
    gap:10px;
    background:transparent;
    border:0;
    border-radius:0;
    overflow:visible
}
.org-status>div {
    position:relative;
    overflow:hidden;
    background:#fff;
    padding:18px 20px;
    border:1px solid #e3e8ef;
    border-radius:17px;
    display:grid;
    gap:6px;
    box-shadow:0 8px 24px rgba(15,23,42,.035)
}
.org-status>div:after {
    content:"";
    position:absolute;
    width:58px;
    height:58px;
    border-radius:50%;
    right:-24px;
    top:-24px;
    background:#f2f4f7
}
.org-status>div.featured {
    background:#fff8f4;
    border-color:#ffe2d4
}
.org-status>div.featured:after {
    background:#ffd9c5
}
.org-status small {
    color:#8a95a7;
    font-size:11px
}
.org-status strong {
    font-size:24px;
    line-height:1.1;
    color:#172033
}
.org-status strong em {
    font-size:12px;
    color:#99a3b3;
    font-style:normal;
    font-weight:600;
    margin-left:3px
}
.org-status span {
    font-size:10px;
    color:#a0a9b7
}
.org-section {
    scroll-margin-top:92px;
    background:#fff;
    border:1px solid #e2e7ee;
    border-radius:22px;
    padding:27px 30px;
    box-shadow:0 10px 30px rgba(15,23,42,.04)
}
.org-section>header {
    display:flex;
    gap:15px;
    align-items:center;
    padding-bottom:18px;
    border-bottom:1px solid #edf0f4;
    margin-bottom:22px
}
.org-section>header>span {
    flex:0 0 40px;
    width:40px;
    height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#fff3ed;
    color:#f2682b;
    border:1px solid #ffe1d2;
    border-radius:12px;
    font-size:11px;
    font-weight:900
}
.org-section h3 {
    margin:0 0 4px;
    font-size:20px;
    color:#172033;
    letter-spacing:-.01em
}
.org-section header p {
    margin:0;
    color:#8a95a7;
    font-size:12px
}
.org-form {
    gap:16px 14px
}
.org-form label,.permission-matrix>label,.notify-grid label {
    font-size:12px;
    color:#5f6b7d;
    font-weight:600
}
.org-form input,.org-form select,.org-form textarea,.org-inline input,.org-inline select,.permission-matrix select,.notify-grid input {
    border:1px solid #dce2ea;
    border-radius:11px;
    padding:11px 12px;
    background:#fbfcfd;
    color:#263246;
    outline:none;
    transition:.18s ease
}
.org-form input:focus,.org-form select:focus,.org-form textarea:focus,.org-inline input:focus,.org-inline select:focus,.permission-matrix select:focus,.notify-grid input:focus {
    background:#fff;
    border-color:#ff9a6c;
    box-shadow:0 0 0 3px rgba(255,121,61,.10)
}
.org-form button.primary,.permission-matrix button.primary {
    border:0;
    border-radius:11px;
    background:#ff6f2c;
    color:#fff;
    padding:11px 19px;
    font-weight:800;
    box-shadow:0 8px 18px rgba(255,111,44,.18);
    cursor:pointer
}
.org-logo-row {
    display:grid;
    grid-template-columns:88px 1fr;
    gap:18px;
    align-items:center;
    padding:4px 0 24px;
    margin-bottom:20px;
    border-bottom:1px dashed #e4e8ee
}
.org-logo-preview {
    width:82px;
    height:82px;
    border-radius:20px;
    background:#f7f8fa;
    border:1px solid #e1e6ed
}
.org-logo-row form {
    display:grid;
    grid-template-columns:minmax(240px,1fr) auto;
    gap:7px 12px;
    align-items:center;
    max-width:620px
}
.org-logo-row form button {
    background:#172033
}
.org-split {
    grid-template-columns:minmax(340px,.72fr) minmax(0,1.6fr);
    gap:26px
}
.org-table {
    border:1px solid #e7ebf1;
    border-radius:15px;
    overflow:auto;
    background:#fff
}
.org-table table {
    font-size:12px
}
.org-table th {
    background:#f7f9fb;
    color:#687488;
    font-weight:700
}
.org-table th,.org-table td {
    padding:13px 12px
}
.role-cards {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px
}
.role-cards article {
    position:relative;
    overflow:hidden;
    border-color:#e3e8ef;
    border-radius:16px;
    padding:16px;
    background:linear-gradient(180deg,#fff,#fbfcfd)
}
.role-cards article:before {
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:3px;
    background:#ff7a3e
}
.role-cards strong {
    color:#1c2738
}
.role-cards code {
    color:#db5c25;
    background:#fff3ed
}
.role-cards span {
    line-height:1.55
}
.org-inline {
    margin-top:16px
}
.org-inline button,.notify-grid button {
    background:#172033;
    box-shadow:none
}
.permission-matrix {
    grid-template-columns:1fr 1fr;
    gap:16px
}
.permission-matrix fieldset {
    border-color:#e3e8ef;
    border-radius:16px;
    background:#fbfcfd;
    padding:15px;
    max-height:330px
}
.permission-matrix legend {
    color:#263246;
    font-size:12px;
    font-weight:800
}
.permission-matrix .check {
    background:#fff;
    border:1px solid #eef1f5;
    padding:9px;
    border-radius:10px
}
.permission-matrix .check:hover {
    border-color:#ffd8c4;
    background:#fff8f4
}
.notify-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px
}
.notify-grid form {
    border-color:#e3e8ef;
    border-radius:16px;
    padding:16px;
    background:linear-gradient(180deg,#fff,#fbfcfd)
}
.notify-grid strong {
    font-size:14px;
    color:#263246
}
#security .org-form {
    grid-template-columns:repeat(4,minmax(0,1fr))
}
#logs .org-table {
    max-height:560px
}
#logs .org-table thead {
    position:sticky;
    top:0;
    z-index:2
}
@media(max-width:1280px) {
    .org-status {
        grid-template-columns:repeat(3,1fr)
    }
    .org-status .featured {
        grid-column:span 2
    }
    .org-top-tabs {
        grid-template-columns:repeat(4,1fr)
    }
    .role-cards {
        grid-template-columns:repeat(3,1fr)
    }
    .org-split {
        grid-template-columns:1fr
    }
}
@media(max-width:900px) {
    .page-agency-settings .content {
        padding:0 14px 28px
    }
    .org-console-v31 {
        padding-top:14px
    }
    .org-console-hero {
        display:block;
        padding:26px
    }
    .org-console-hero-meta {
        margin-top:22px;
        padding:18px 0 0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.12);
        text-align:left
    }
    .org-top-tabs {
        position:relative;
        grid-template-columns:repeat(2,1fr)
    }
    .org-status {
        grid-template-columns:1fr 1fr
    }
    .org-status .featured {
        grid-column:1/-1
    }
    .org-section {
        padding:20px
    }
    .org-form,#security .org-form,.permission-matrix {
        grid-template-columns:1fr 1fr
    }
    .org-form .wide {
        grid-column:1/-1
    }
    .role-cards,.notify-grid {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:620px) {
    .org-top-tabs,.org-status,.role-cards,.notify-grid,.org-form,#security .org-form,.permission-matrix {
        grid-template-columns:1fr
    }
    .org-status .featured {
        grid-column:auto
    }
    .org-top-tabs a {
        justify-content:flex-start
    }
    .org-logo-row {
        grid-template-columns:1fr
    }
    .org-logo-row form {
        grid-template-columns:1fr
    }
    .org-form .wide {
        grid-column:auto
    }
    .permission-matrix fieldset {
        grid-template-columns:1fr
    }
    .org-inline {
        grid-template-columns:1fr
    }
    .org-section {
        padding:17px
    }
    .org-console-hero h1 {
        font-size:28px
    }
}
/* =========================================================
   Agency Settings V3.2 - seven independent pages
   ========================================================= */
.org-settings-v32 {
    max-width:1480px;
    margin:0 auto;
    padding:28px 34px 44px;
    color:#152033
}
.os32-head {
    display:flex;
    justify-content:space-between;
    gap:28px;
    align-items:flex-end;
    padding:28px 30px;
    border:1px solid #e3e9f0;
    border-radius:24px;
    background:linear-gradient(135deg,#fff 0%,#f7f9fc 62%,#fff7f0 100%);
    box-shadow:0 12px 34px rgba(18,31,53,.07)
}
.os32-back {
    display:inline-flex;
    margin-bottom:10px;
    color:#ff6a2a;
    font-size:13px;
    font-weight:700;
    text-decoration:none
}
.os32-kicker {
    display:block;
    color:#8a97aa;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.5px
}
.os32-head h1 {
    margin:7px 0 6px;
    font-size:34px;
    line-height:1.15;
    color:#122033
}
.os32-head p {
    margin:0;
    color:#718096;
    font-size:14px
}
.os32-agency {
    min-width:310px;
    text-align:right;
    padding-left:28px;
    border-left:1px solid #e4e9ef
}
.os32-agency small,.os32-agency span {
    display:block;
    color:#8a97aa
}
.os32-agency strong {
    display:block;
    margin:6px 0;
    font-size:20px;
    color:#182235
}
.os32-agency span {
    font-size:12px
}
.os32-tabs {
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:10px;
    margin:18px 0 24px;
    padding:10px;
    border:1px solid #e5eaf0;
    border-radius:20px;
    background:#fff;
    box-shadow:0 8px 26px rgba(21,32,51,.05)
}
.os32-tabs a {
    min-width:0;
    padding:13px 14px;
    border-radius:14px;
    text-decoration:none;
    color:#556278;
    transition:.2s ease
}
.os32-tabs a b {
    display:block;
    color:#a2acbb;
    font-size:10px
}
.os32-tabs a span {
    display:block;
    margin:4px 0 2px;
    font-weight:800;
    font-size:14px;
    white-space:nowrap
}
.os32-tabs a small {
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#99a3b2;
    font-size:10px
}
.os32-tabs a:hover {
    background:#f6f8fb;
    transform:translateY(-1px)
}
.os32-tabs a.active {
    background:#172233;
    color:#fff;
    box-shadow:0 8px 18px rgba(23,34,51,.16)
}
.os32-tabs a.active b {
    color:#ff7a3c
}
.os32-tabs a.active small {
    color:#bfc8d5
}
.os32-alert {
    margin:0 0 18px
}
.os32-overview {
    display:grid;
    gap:20px
}
.os32-metrics {
    display:grid;
    grid-template-columns:1.4fr repeat(4,1fr);
    gap:12px
}
.os32-metrics article {
    padding:20px 22px;
    border:1px solid #e4e9ef;
    border-radius:18px;
    background:#fff
}
.os32-metrics article small,.os32-metrics article span {
    display:block;
    color:#8b96a8;
    font-size:11px
}
.os32-metrics article strong {
    display:block;
    margin:7px 0;
    font-size:24px
}
.os32-metrics article strong em {
    margin-left:4px;
    color:#a1abb8;
    font-size:14px;
    font-style:normal
}
.os32-metrics article.featured {
    border-color:#ffd8c6;
    background:linear-gradient(135deg,#fff8f4,#fff)
}
.os32-launch-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px
}
.os32-launch-grid>a {
    display:grid;
    grid-template-columns:54px 1fr auto;
    gap:16px;
    align-items:center;
    padding:22px;
    border:1px solid #e5eaf0;
    border-radius:20px;
    background:#fff;
    color:#172233;
    text-decoration:none;
    box-shadow:0 8px 24px rgba(23,34,51,.045);
    transition:.2s
}
.os32-launch-grid>a:hover {
    border-color:#ffc6a9;
    transform:translateY(-2px);
    box-shadow:0 14px 30px rgba(23,34,51,.08)
}
.os32-launch-grid i {
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    border-radius:15px;
    background:#f3f5f8;
    color:#ff6b2c;
    font-style:normal;
    font-weight:900
}
.os32-launch-grid strong {
    display:block;
    font-size:17px
}
.os32-launch-grid span {
    display:block;
    margin-top:5px;
    color:#8793a5;
    font-size:12px
}
.os32-launch-grid>b {
    color:#ff6a2a;
    font-size:12px
}
.os32-page-card {
    padding:28px;
    border:1px solid #e3e9ef;
    border-radius:22px;
    background:#fff;
    box-shadow:0 10px 30px rgba(22,34,52,.05)
}
.os32-section-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:24px;
    padding-bottom:20px;
    border-bottom:1px solid #edf0f4
}
.os32-section-head>div {
    display:grid;
    grid-template-columns:44px 1fr;
    column-gap:12px
}
.os32-section-head>div>span {
    grid-row:1/3;
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:13px;
    background:#fff4ed;
    color:#ff6a2a;
    font-weight:900
}
.os32-section-head h2 {
    margin:0;
    font-size:22px;
    color:#142033
}
.os32-section-head p {
    margin:5px 0 0;
    color:#8793a5;
    font-size:12px
}
.os32-section-head>a,.os32-section-head>em {
    color:#8d99aa;
    font-size:12px;
    font-style:normal;
    text-decoration:none
}
.os32-profile-layout {
    display:grid;
    grid-template-columns:300px 1fr;
    gap:28px
}
.os32-brand-card {
    padding:26px;
    border:1px solid #e6ebf0;
    border-radius:20px;
    background:#f8fafc;
    text-align:center
}
.os32-logo {
    display:grid;
    place-items:center;
    width:92px;
    height:92px;
    margin:0 auto 14px;
    border:1px solid #e4e9ef;
    border-radius:24px;
    background:#fff;
    overflow:hidden
}
.os32-logo img {
    width:100%;
    height:100%;
    object-fit:contain
}
.os32-logo b {
    font-size:34px;
    color:#ff6a2a
}
.os32-brand-card>strong {
    display:block;
    font-size:17px
}
.os32-brand-card>span {
    display:block;
    margin:5px 0 18px;
    color:#8894a6;
    font-size:12px
}
.os32-brand-card form {
    display:grid;
    gap:10px
}
.os32-brand-card input[type=file] {
    width:100%;
    font-size:11px
}
.os32-brand-card button {
    padding:10px 14px;
    border:0;
    border-radius:10px;
    background:#172233;
    color:#fff;
    font-weight:700
}
.os32-brand-card small {
    color:#98a2b1;
    font-size:10px
}
.os32-form {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px
}
.os32-form label,.os32-side-form label,.os32-role-picker label,.os32-ipbox {
    display:grid;
    gap:7px;
    color:#5c6879;
    font-size:12px
}
.os32-form .wide {
    grid-column:1/-1
}
.os32-form input,.os32-form textarea,.os32-side-form input,.os32-side-form select,.os32-create-role input,.os32-create-role select,.os32-role-picker select,.os32-notify-grid input[type=number],.os32-security-form input,.os32-ipbox textarea {
    width:100%;
    box-sizing:border-box;
    padding:11px 12px;
    border:1px solid #dfe5ec;
    border-radius:10px;
    background:#fff;
    color:#172233;
    outline:none
}
.os32-form input:focus,.os32-form textarea:focus,.os32-side-form input:focus,.os32-side-form select:focus,.os32-create-role input:focus,.os32-create-role select:focus,.os32-role-picker select:focus,.os32-security-form input:focus,.os32-ipbox textarea:focus {
    border-color:#ff8d57;
    box-shadow:0 0 0 3px rgba(255,106,42,.08)
}
.os32-form-actions {
    grid-column:1/-1;
    display:flex;
    justify-content:flex-end;
    margin-top:4px
}
.os32-form-actions .primary,.os32-side-form .primary,.os32-create-role .primary {
    padding:11px 20px;
    border:0;
    border-radius:11px;
    background:#ff6a2a;
    color:#fff;
    font-weight:800;
    box-shadow:0 8px 20px rgba(255,106,42,.18)
}
.os32-employee-layout {
    display:grid;
    grid-template-columns:340px 1fr;
    gap:22px
}
.os32-side-form {
    display:grid;
    gap:13px;
    padding:22px;
    border:1px solid #e5eaf0;
    border-radius:18px;
    background:#fafbfc;
    align-self:start
}
.os32-side-form h3 {
    margin:0 0 4px
}
.os32-side-form fieldset {
    margin:0;
    padding:13px;
    border:1px solid #e2e7ed;
    border-radius:12px;
    background:#fff
}
.os32-side-form legend {
    padding:0 6px;
    color:#7e8999;
    font-size:11px
}
.os32-check {
    display:flex!important;
    grid-template-columns:none!important;
    flex-direction:row;
    align-items:center;
    gap:8px!important;
    margin:6px 0
}
.os32-check input {
    width:auto!important
}
.os32-table-wrap {
    overflow:auto;
    border:1px solid #e6ebf0;
    border-radius:18px
}
.os32-table-title {
    display:flex;
    justify-content:space-between;
    align-items:end;
    padding:17px 18px;
    border-bottom:1px solid #edf0f4
}
.os32-table-title h3 {
    margin:0
}
.os32-table-title span {
    color:#929dac;
    font-size:11px
}
.os32-table-wrap table {
    width:100%;
    border-collapse:collapse
}
.os32-table-wrap th {
    padding:12px 14px;
    background:#f7f9fb;
    color:#8b96a5;
    font-size:11px;
    text-align:left
}
.os32-table-wrap td {
    padding:14px;
    border-top:1px solid #edf0f4;
    font-size:12px;
    vertical-align:middle
}
.os32-table-wrap td small {
    display:block;
    margin-top:3px;
    color:#9aa4b2
}
.os32-status {
    display:inline-flex;
    padding:4px 8px;
    border-radius:999px;
    font-size:10px;
    font-weight:800
}
.os32-status.ok {
    background:#ecf8f0;
    color:#2d8a52
}
.os32-status.off {
    background:#f2f4f6;
    color:#8a94a3
}
.os32-role-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px
}
.os32-role-grid article {
    padding:18px;
    border:1px solid #e4e9ef;
    border-radius:16px;
    background:linear-gradient(180deg,#fff,#fafbfc)
}
.os32-role-grid article div {
    display:flex;
    justify-content:space-between;
    gap:8px
}
.os32-role-grid article b {
    font-size:15px
}
.os32-role-grid code {
    font-size:10px;
    color:#ff6a2a
}
.os32-role-grid p {
    margin:12px 0;
    color:#7f8a9b;
    font-size:11px
}
.os32-role-grid footer {
    display:flex;
    gap:8px;
    flex-wrap:wrap
}
.os32-role-grid footer span {
    padding:4px 7px;
    border-radius:7px;
    background:#f1f4f7;
    color:#6e7a8b;
    font-size:9px
}
.os32-create-role {
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr .8fr auto;
    gap:12px;
    align-items:end;
    margin-top:22px;
    padding:18px;
    border:1px dashed #dfe5ec;
    border-radius:16px
}
.os32-create-role h3,.os32-create-role p {
    margin:0
}
.os32-create-role p {
    margin-top:5px;
    color:#929cab;
    font-size:10px
}
.os32-role-picker {
    display:flex;
    align-items:end;
    gap:18px;
    padding:16px;
    border:1px solid #e5eaf0;
    border-radius:14px;
    background:#fafbfc
}
.os32-role-picker label {
    min-width:280px
}
.os32-role-picker p {
    margin:0 0 9px;
    color:#8b96a6;
    font-size:11px
}
.os32-perm-columns {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin:16px 0
}
.os32-perm-columns fieldset {
    margin:0;
    padding:16px;
    border:1px solid #e6eaf0;
    border-radius:14px
}
.os32-perm-columns legend {
    padding:0 8px;
    font-weight:800
}
.os32-perm-columns .os32-check {
    padding:8px 9px;
    border-radius:9px
}
.os32-perm-columns .os32-check:hover {
    background:#f7f9fb
}
.os32-perm-columns .os32-check span {
    display:grid
}
.os32-perm-columns .os32-check small {
    color:#9aa4b2;
    font-size:9px
}
.os32-perm-columns .muted {
    color:#a0a9b5;
    font-size:11px
}
.os32-notify-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px
}
.os32-notify-grid form {
    display:grid;
    grid-template-columns:44px 1fr auto;
    gap:12px;
    align-items:center;
    padding:18px;
    border:1px solid #e4e9ef;
    border-radius:17px;
    background:#fff
}
.os32-notify-icon {
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:12px;
    background:#fff2eb;
    color:#ff6a2a;
    font-weight:900
}
.os32-notify-grid strong,.os32-notify-grid small {
    display:block
}
.os32-notify-grid small {
    margin-top:4px;
    color:#97a1af;
    font-size:9px
}
.os32-notify-grid form>label:not(.os32-switch) {
    grid-column:1/3;
    display:grid;
    grid-template-columns:1fr 90px;
    align-items:center;
    color:#697587;
    font-size:11px
}
.os32-notify-grid form>button {
    grid-column:3;
    padding:9px 12px;
    border:0;
    border-radius:9px;
    background:#172233;
    color:#fff
}
.os32-switch {
    display:flex;
    align-items:center;
    gap:5px;
    color:#707c8d;
    font-size:10px
}
.os32-switch input {
    width:auto
}
.os32-switch span {
    display:none
}
.os32-security-form {
    display:grid;
    gap:18px
}
.os32-security-numbers {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px
}
.os32-security-numbers label {
    position:relative;
    padding:16px;
    border:1px solid #e4e9ef;
    border-radius:15px
}
.os32-security-numbers label>span {
    display:block;
    margin-bottom:9px;
    color:#677486;
    font-size:11px
}
.os32-security-numbers label>small {
    position:absolute;
    right:25px;
    bottom:27px;
    color:#a0a8b3;
    font-size:9px
}
.os32-policy-list {
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px
}
.os32-policy-list label {
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:15px;
    border:1px solid #e5eaf0;
    border-radius:14px
}
.os32-policy-list input {
    width:auto;
    margin-top:3px
}
.os32-policy-list b,.os32-policy-list small {
    display:block
}
.os32-policy-list small {
    margin-top:3px;
    color:#929cab;
    font-size:10px
}
.os32-ipbox small {
    color:#969fac;
    font-size:10px
}
.os32-log-toolbar {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:12px
}
.os32-log-toolbar b,.os32-log-toolbar span {
    display:block
}
.os32-log-toolbar span,.os32-search {
    color:#929cab;
    font-size:10px
}
.os32-log-table code {
    font-size:10px;
    color:#49576b
}
@media(max-width:1250px) {
    .os32-tabs {
        grid-template-columns:repeat(4,1fr)
    }
    .os32-metrics {
        grid-template-columns:repeat(3,1fr)
    }
    .os32-profile-layout,.os32-employee-layout {
        grid-template-columns:1fr
    }
    .os32-role-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .os32-notify-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .os32-create-role {
        grid-template-columns:1fr 1fr 1fr
    }
    .os32-create-role>div {
        grid-column:1/-1
    }
    .os32-security-numbers {
        grid-template-columns:repeat(2,1fr)
    }
}
@media(max-width:760px) {
    .org-settings-v32 {
        padding:16px
    }
    .os32-head {
        align-items:flex-start;
        flex-direction:column;
        padding:20px
    }
    .os32-agency {
        min-width:0;
        width:100%;
        padding:14px 0 0;
        border-left:0;
        border-top:1px solid #e5eaf0;
        text-align:left
    }
    .os32-tabs {
        grid-template-columns:repeat(2,1fr)
    }
    .os32-metrics,.os32-launch-grid,.os32-form,.os32-role-grid,.os32-notify-grid,.os32-security-numbers,.os32-policy-list,.os32-perm-columns {
        grid-template-columns:1fr
    }
    .os32-page-card {
        padding:18px
    }
    .os32-section-head {
        align-items:flex-start;
        flex-direction:column
    }
    .os32-create-role {
        grid-template-columns:1fr
    }
    .os32-role-picker {
        align-items:stretch;
        flex-direction:column
    }
    .os32-role-picker label {
        min-width:0
    }
}
/* ===== 第三端 V4.0 企业管理端 · 15模块导航 ===== */
.enterprise-sidebar .workspace-label {
    letter-spacing:.08em
}
.enterprise-sidebar .nav {
    padding-bottom:18px
}
.enterprise-sidebar .nav a {
    min-height:43px;
    padding-top:9px;
    padding-bottom:9px;
    line-height:1.28
}
.enterprise-sidebar .nav-number {
    min-width:27px;
    font-variant-numeric:tabular-nums
}
@media (max-height:900px) {
    .enterprise-sidebar .nav a {
        min-height:38px;
        padding-top:6px;
        padding-bottom:6px;
        font-size:13px
    }
    .enterprise-sidebar .brand {
        padding-top:18px;
        padding-bottom:14px
    }
    .enterprise-sidebar .workspace-label {
        margin-bottom:6px
    }
}
.people-wide-layout {
    display:grid;
    grid-template-columns:360px minmax(0,1fr);
    gap:20px;
    align-items:start
}
.people-wide-layout>.table-panel {
    min-width:0
}
@media(max-width:1050px) {
    .people-wide-layout {
        grid-template-columns:1fr
    }
}
.year-filter {
    display:flex;
    align-items:flex-end;
    gap:10px
}
.year-filter label {
    display:grid;
    gap:6px;
    color:#8c7568;
    font-size:13px
}
.year-filter select {
    min-width:150px;
    padding:11px 38px 11px 14px;
    border:1px solid #eadbd2;
    border-radius:10px;
    background:#fff;
    color:#332a26;
    font:inherit
}
@media(max-width:720px) {
    .year-filter {
        width:100%
    }
    .year-filter label,.year-filter select {
        width:100%
    }
}
/* 企业知识产权中心 */
.ip-stats {
    grid-template-columns:repeat(6,minmax(0,1fr))
}
.ip-entry {
    display:flex;
    align-items:center;
    gap:13px;
    padding:18px;
    border:1px solid #eee2db;
    border-radius:13px;
    background:#fffaf7;
    color:#332a26;
    text-decoration:none;
    transition:.2s ease
}
.ip-entry:hover {
    transform:translateY(-2px);
    border-color:#ffb087;
    box-shadow:0 12px 26px rgba(237,98,31,.1)
}
.ip-entry>i {
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    flex:0 0 36px;
    border-radius:10px;
    background:#ffede1;
    color:#e3601d;
    font-style:normal;
    font-weight:800
}
.ip-entry>div {
    min-width:0;
    flex:1
}
.ip-entry strong,.ip-entry small {
    display:block
}
.ip-entry small {
    margin-top:4px;
    color:#927f74;
    line-height:1.5
}
.ip-entry>span {
    color:#e76524
}
.ip-toolbar {
    padding:16px 18px;
    margin-bottom:16px
}
.ip-toolbar form {
    display:grid;
    grid-template-columns:minmax(220px,1fr) 180px 180px auto auto;
    gap:10px;
    align-items:center
}
.ip-toolbar input,.ip-toolbar select {
    width:100%;
    min-height:42px;
    padding:9px 12px;
    border:1px solid #eaded7;
    border-radius:10px;
    background:#fff
}
.ip-table table {
    min-width:1160px
}
.ip-table td small,.table-panel td small {
    display:block;
    margin-top:5px;
    color:#9b8b82
}
.ip-status {
    display:inline-flex;
    padding:5px 10px;
    border-radius:999px;
    background:#f2f3f4;
    color:#68727b;
    font-size:12px;
    white-space:nowrap
}
.ip-status.ok {
    background:#e8f7f1;
    color:#16825e
}
.ip-status.warn {
    background:#fff1df;
    color:#be7114
}
.ip-status.danger {
    background:#feeceb;
    color:#c84545
}
.ip-form-panel {
    max-width:1050px;
    margin:0 auto;
    padding:24px
}
.inline-form {
    display:inline
}
.integration-state {
    margin-bottom:16px;
    padding:12px 14px;
    border-radius:10px;
    background:#fff1df;
    color:#a96414
}
.integration-state.ok {
    background:#e8f7f1;
    color:#167f5b
}
.import-result {
    margin-bottom:16px;
    padding:18px 22px
}
.import-result strong {
    color:#16825e
}
.import-result li {
    margin:6px 0;
    color:#b44b43
}
@media(max-width:1250px) {
    .ip-stats {
        grid-template-columns:repeat(3,1fr)
    }
}
@media(max-width:850px) {
    .ip-toolbar form {
        grid-template-columns:1fr 1fr
    }
    .ip-toolbar form input {
        grid-column:1/-1
    }
    .ip-stats {
        grid-template-columns:repeat(2,1fr)
    }
}
@media(max-width:560px) {
    .ip-toolbar form,.ip-stats {
        grid-template-columns:1fr
    }
    .ip-toolbar form input {
        grid-column:auto
    }
}
/* Third-end V4.1 RD & expense centers */
.ent-rd-page,.ent-exp-page {
    max-width:1500px;
    margin:auto
}
.ent-hero,.expense-hero {
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:flex-end;
    padding:30px 34px;
    border-radius:24px;
    background:linear-gradient(135deg,#f8fbff,#eef6ff);
    border:1px solid #dce8f5;
    margin-bottom:18px
}
.ent-hero.compact {
    padding:22px 28px
}
.ent-hero h2,.expense-hero h2 {
    font-size:30px;
    margin:6px 0
}
.ent-hero p,.expense-hero p {
    margin:0;
    max-width:800px;
    color:#64748b
}
.eyebrow {
    font-size:11px;
    letter-spacing:2px;
    font-weight:800;
    color:#2563eb
}
.ent-kpis,.expense-kpis {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    margin:18px 0
}
.ent-kpis>div,.expense-kpis>div {
    background:#fff;
    border:1px solid #e6edf5;
    border-radius:18px;
    padding:20px
}
.ent-kpis b,.expense-kpis b {
    display:block;
    font-size:25px;
    margin-bottom:5px
}
.ent-kpis span,.expense-kpis span,.expense-kpis small {
    color:#64748b
}
.ent-toolbar,.panel-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin:15px 0
}
.ent-toolbar form,.panel-head form,.inline-form {
    display:flex;
    gap:8px;
    flex-wrap:wrap
}
.rd-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px
}
.rd-project-card {
    display:block;
    background:#fff;
    border:1px solid #e4eaf1;
    border-radius:20px;
    padding:22px;
    color:inherit;
    text-decoration:none;
    transition:.18s
}
.rd-project-card:hover {
    transform:translateY(-2px);
    box-shadow:0 14px 34px rgba(15,23,42,.08)
}
.rd-card-top {
    display:flex;
    justify-content:space-between
}
.rd-code {
    font-weight:800;
    color:#2563eb
}
.status-pill {
    font-size:12px;
    background:#eef5ff;
    padding:5px 9px;
    border-radius:999px
}
.rd-project-card h3 {
    font-size:18px;
    margin:16px 0 8px
}
.rd-project-card p {
    height:42px;
    color:#64748b;
    overflow:hidden
}
.rd-progress {
    height:6px;
    background:#edf2f7;
    border-radius:9px;
    overflow:hidden;
    margin:16px 0
}
.rd-progress i {
    display:block;
    height:100%;
    background:#2563eb
}
.rd-meta {
    display:flex;
    justify-content:space-between;
    color:#64748b;
    font-size:13px
}
.rd-detail-layout,.expense-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:18px
}
.data-panel {
    background:#fff;
    border:1px solid #e4eaf1;
    border-radius:20px;
    padding:22px;
    margin-bottom:16px
}
.data-panel h3 {
    margin:0 0 16px
}
.triple-text {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px
}
.triple-text>div {
    background:#f8fafc;
    border-radius:14px;
    padding:16px
}
.triple-text small {
    color:#64748b
}
.mini-list>div {
    display:flex;
    justify-content:space-between;
    padding:11px 0;
    border-bottom:1px solid #edf1f5
}
.mini-list span,.muted {
    color:#64748b
}
.inline-form {
    margin-top:15px;
    padding-top:15px;
    border-top:1px solid #edf1f5
}
.inline-form input,.inline-form select {
    min-width:150px
}
.ai-check-item {
    padding:12px;
    border-radius:12px;
    background:#f8fafc;
    margin:8px 0
}
.ai-check-item p {
    font-size:13px;
    color:#64748b;
    margin:5px 0 0
}
.expense-layout main {
    min-width:0
}
.table-wrap {
    overflow:auto
}
.table-wrap table {
    width:100%;
    border-collapse:collapse;
    white-space:nowrap
}
.table-wrap th,.table-wrap td {
    padding:11px;
    border-bottom:1px solid #edf1f5;
    text-align:left
}
.year-bars>div {
    display:grid;
    grid-template-columns:60px 190px 1fr 110px;
    gap:12px;
    align-items:center;
    margin:14px 0
}
.year-bars i {
    height:9px;
    background:#edf2f7;
    border-radius:10px;
    overflow:hidden
}
.year-bars em {
    display:block;
    height:100%;
    background:#2563eb
}
.stack-form {
    display:grid;
    gap:10px
}
.stack-form label {
    display:grid;
    gap:5px;
    font-size:13px
}
.stack-form .check {
    display:flex;
    grid-template-columns:auto 1fr;
    align-items:center
}
.kcz-dialog {
    width:min(760px,92vw);
    border:0;
    border-radius:22px;
    padding:26px;
    box-shadow:0 24px 80px rgba(0,0,0,.2)
}
.kcz-dialog::backdrop {
    background:rgba(15,23,42,.45)
}
.dialog-x {
    float:right;
    border:0;
    background:none;
    font-size:25px
}
.form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px
}
.form-grid label {
    display:grid;
    gap:6px
}
.form-grid .wide {
    grid-column:1/-1
}
.form-grid textarea {
    min-height:85px
}
.dialog-actions {
    text-align:right;
    margin-top:18px
}
.back-link {
    font-size:13px;
    text-decoration:none;
    color:#2563eb
}
.empty-panel {
    grid-column:1/-1;
    padding:50px;
    text-align:center;
    background:#fff;
    border:1px dashed #cbd5e1;
    border-radius:20px;
    color:#64748b
}
@media(max-width:1100px) {
    .rd-grid {
        grid-template-columns:1fr 1fr
    }
    .rd-detail-layout,.expense-layout {
        grid-template-columns:1fr
    }
    .ent-kpis,.expense-kpis {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:720px) {
    .rd-grid,.ent-kpis,.expense-kpis,.triple-text,.form-grid {
        grid-template-columns:1fr
    }
    .ent-hero,.expense-hero {
        align-items:flex-start;
        flex-direction:column
    }
    .year-bars>div {
        grid-template-columns:50px 1fr
    }
    .year-bars i {
        grid-column:1/-1
    }
}
/* Third endpoint V4.1.1 RD project workspace + independent expense ledgers */
.rd-project-workspace .rd-project-hero,.rd-expense-project-page .expense-hero {
    align-items:center
}
.rd-project-actions {
    display:flex;
    gap:10px;
    align-items:center;
    flex-wrap:wrap
}
.rd-project-actions form {
    margin:0
}
.rd-project-kpis {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
    margin:18px 0
}
.rd-project-kpis>div {
    background:#fff;
    border:1px solid #e8edf3;
    border-radius:16px;
    padding:16px 18px;
    box-shadow:0 8px 24px rgba(31,45,61,.04)
}
.rd-project-kpis span {
    display:block;
    color:#8a97a8;
    font-size:12px;
    margin-bottom:8px
}
.rd-project-kpis b {
    font-size:20px;
    color:#172131
}
.rd-project-tabs {
    display:flex;
    gap:6px;
    overflow:auto;
    padding:7px;
    background:#fff;
    border:1px solid #e8edf3;
    border-radius:16px;
    margin-bottom:18px;
    position:sticky;
    top:8px;
    z-index:4
}
.rd-project-tabs a {
    white-space:nowrap;
    padding:11px 16px;
    border-radius:11px;
    color:#6f7c90;
    text-decoration:none;
    font-weight:600
}
.rd-project-tabs a.active {
    background:#172131;
    color:#fff
}
.rd-work-grid {
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:16px
}
.info-grid,.rd-completeness {
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px
}
.info-grid>div,.rd-completeness>div {
    padding:14px;
    border-radius:12px;
    background:#f7f9fc
}
.info-grid small,.rd-completeness span {
    display:block;
    color:#8c98a8;
    font-size:12px;
    margin-bottom:5px
}
.rd-add-row {
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid #edf0f4
}
.rd-record-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px
}
.rd-record-grid article {
    border:1px solid #e8edf3;
    border-radius:14px;
    padding:16px
}
.rd-record-grid article span {
    font-size:12px;
    color:#ff6a2a
}
.rd-record-grid article h4 {
    margin:8px 0
}
.ai-result-list {
    display:grid;
    gap:12px
}
.ai-result-list article {
    border:1px solid #e7ebf0;
    border-radius:14px;
    padding:16px
}
.ai-result-list article>div {
    display:flex;
    gap:10px;
    align-items:center
}
.ai-result-list article b {
    font-size:22px
}
.ai-result-list article span {
    font-size:12px;
    background:#f1f4f8;
    padding:4px 8px;
    border-radius:99px
}
.rd-expense-project-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:15px
}
.rd-expense-project-card {
    display:block;
    text-decoration:none;
    color:inherit;
    border:1px solid #e5eaf0;
    background:#fff;
    border-radius:17px;
    padding:18px;
    transition:.18s ease
}
.rd-expense-project-card:hover {
    transform:translateY(-2px);
    box-shadow:0 14px 34px rgba(28,39,55,.08);
    border-color:#ffc5aa
}
.rd-expense-project-card .top {
    display:flex;
    justify-content:space-between;
    align-items:center
}
.rd-expense-project-card .top span {
    font-weight:800;
    color:#ff6a2a
}
.rd-expense-project-card .top em {
    font-style:normal;
    font-size:12px;
    color:#8a97a8;
    background:#f4f6f9;
    padding:4px 8px;
    border-radius:99px
}
.rd-expense-project-card h3 {
    min-height:48px;
    margin:13px 0
}
.rd-expense-project-card .numbers {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    padding:12px 0;
    border-top:1px solid #eef1f4;
    border-bottom:1px solid #eef1f4
}
.rd-expense-project-card .numbers small {
    display:block;
    color:#9aa5b5;
    font-size:11px
}
.rd-expense-project-card .numbers b {
    display:block;
    margin-top:4px
}
.rd-expense-project-card>strong {
    display:block;
    margin-top:14px;
    color:#172131
}
.expense-summary-grid {
    display:grid;
    grid-template-columns:1.4fr .6fr;
    gap:16px;
    margin-top:16px
}
.import-line {
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:10px 0;
    border-top:1px solid #edf0f3;
    font-size:12px
}
.expense-project-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:16px
}
.expense-category-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px
}
.expense-category-grid>div {
    padding:14px;
    border-radius:12px;
    background:#f7f9fc
}
.expense-category-grid span {
    display:block;
    color:#8894a5;
    font-size:12px
}
.expense-category-grid b {
    display:block;
    margin-top:6px;
    font-size:17px
}
.expense-center-v412 .expense-hero form {
    display:flex;
    gap:8px;
    align-items:center
}
@media(max-width:1200px) {
    .rd-project-kpis {
        grid-template-columns:repeat(3,1fr)
    }
    .rd-expense-project-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .expense-project-layout,.expense-summary-grid,.rd-work-grid {
        grid-template-columns:1fr
    }
    .expense-project-layout aside {
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:16px
    }
    .expense-category-grid {
        grid-template-columns:repeat(2,1fr)
    }
}
@media(max-width:760px) {
    .rd-project-kpis {
        grid-template-columns:repeat(2,1fr)
    }
    .rd-expense-project-grid,.expense-project-layout aside,.rd-record-grid,.info-grid,.rd-completeness {
        grid-template-columns:1fr
    }
    .rd-project-actions {
        align-items:stretch
    }
    .rd-project-actions>* {
        width:100%
    }
    .rd-project-actions .btn {
        width:100%
    }
    .rd-project-tabs {
        position:static
    }
    .expense-category-grid {
        grid-template-columns:1fr
    }
}
/* ==========================================================
   Enterprise R&D Finance Center V4.2
   Independent visual language: finance control room
   ========================================================== */
.rd-fin-v42 {
    --rf-ink:#172033;
    --rf-soft:#667085;
    --rf-line:#e8edf3;
    --rf-bg:#f5f7fb;
    --rf-orange:#ff6b2c;
    --rf-green:#12a36d;
    --rf-red:#d94b4b;
    --rf-blue:#4767ff;
    display:block;
    background:linear-gradient(180deg,#f7f9fc 0,#f4f6fa 100%);
    padding:28px;
    min-height:calc(100vh - 88px);
    color:var(--rf-ink)
}
.rd-fin-v42 * {
    box-sizing:border-box
}
.rd-fin-v42 a {
    text-decoration:none
}
.rd-fin-hero,.rd-fin-project-hero {
    position:relative;
    overflow:hidden;
    border-radius:26px;
    background:linear-gradient(120deg,#151d2d 0%,#202d45 58%,#343546 100%);
    color:#fff;
    padding:34px 38px;
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:24px;
    box-shadow:0 18px 42px rgba(24,33,53,.12)
}
.rd-fin-hero:after,.rd-fin-project-hero:after {
    content:"";
    position:absolute;
    right:-90px;
    top:-130px;
    width:360px;
    height:360px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:50%;
    box-shadow:0 0 0 58px rgba(255,255,255,.025),0 0 0 118px rgba(255,255,255,.02)
}
.rd-fin-kicker,.rd-fin-project-hero>div>span,.rd-fin-page-head>div>span,.rd-fin-card-head span {
    display:block;
    font-size:11px;
    letter-spacing:.18em;
    font-weight:800;
    color:#ff9060;
    margin-bottom:9px
}
.rd-fin-hero h2,.rd-fin-project-hero h2,.rd-fin-page-head h2 {
    margin:0;
    font-size:32px;
    line-height:1.15
}
.rd-fin-hero p,.rd-fin-project-hero p,.rd-fin-page-head p {
    margin:10px 0 0;
    color:#cbd5e6;
    font-size:14px;
    max-width:760px
}
.rd-fin-year {
    position:relative;
    z-index:1;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    border-radius:15px;
    padding:10px;
    display:flex;
    gap:8px;
    align-items:center
}
.rd-fin-year span {
    font-size:12px;
    color:#c8d1df
}
.rd-fin-year select,.rd-fin-year button,.rd-fin-card-head select,.rd-fin-mini {
    border:0;
    border-radius:10px;
    padding:10px 12px;
    background:#fff;
    color:#1d2737
}
.rd-fin-year button {
    background:var(--rf-orange);
    color:#fff;
    font-weight:700;
    cursor:pointer
}
.rd-fin-nav {
    margin:16px 0 20px;
    background:#fff;
    border:1px solid var(--rf-line);
    border-radius:16px;
    padding:7px;
    display:flex;
    gap:6px;
    box-shadow:0 8px 24px rgba(20,30,48,.04);
    position:sticky;
    top:8px;
    z-index:5
}
.rd-fin-nav a {
    flex:1;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:11px;
    color:#788396;
    font-weight:700;
    font-size:13px;
    transition:.18s
}
.rd-fin-nav a:hover {
    background:#f6f8fb;
    color:#293446
}
.rd-fin-nav a.active {
    background:#182234;
    color:#fff;
    box-shadow:0 7px 18px rgba(24,34,52,.16)
}
.rd-fin-overview-strip {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px
}
.rd-fin-overview-strip article {
    background:#fff;
    border:1px solid var(--rf-line);
    border-radius:16px;
    padding:18px 18px 16px;
    min-width:0;
    box-shadow:0 7px 20px rgba(28,40,62,.035)
}
.rd-fin-overview-strip article:first-child {
    border-color:#ffd8c6;
    background:linear-gradient(145deg,#fff9f6,#fff)
}
.rd-fin-overview-strip span {
    display:block;
    color:#7c8799;
    font-size:12px
}
.rd-fin-overview-strip strong {
    display:block;
    font-size:23px;
    margin:8px 0 5px;
    color:#152033
}
.rd-fin-overview-strip small {
    display:block;
    color:#98a2b3;
    font-size:11px
}
.rd-fin-overview-strip small a {
    color:var(--rf-orange)
}
.rd-fin-command-grid {
    display:grid;
    grid-template-columns:minmax(0,1.75fr) minmax(300px,.75fr);
    gap:16px
}
.rd-fin-card {
    background:#fff;
    border:1px solid var(--rf-line);
    border-radius:20px;
    padding:22px;
    box-shadow:0 8px 26px rgba(29,42,64,.04)
}
.rd-fin-card h3 {
    margin:0;
    color:#192337;
    font-size:18px
}
.rd-fin-card p {
    color:#7c8799
}
.rd-fin-card-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    margin-bottom:18px
}
.rd-fin-card-head p {
    margin:6px 0 0;
    font-size:12px
}
.rd-fin-link {
    font-size:12px;
    font-weight:700;
    color:#ff6b2c;
    white-space:nowrap
}
.rd-fin-project-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
}
.rd-fin-project {
    border:1px solid #edf0f5;
    border-radius:16px;
    padding:17px;
    color:#1d2737;
    background:linear-gradient(180deg,#fff,#fbfcfe);
    transition:.18s
}
.rd-fin-project:hover {
    transform:translateY(-2px);
    border-color:#ffc5aa;
    box-shadow:0 10px 28px rgba(37,48,70,.08)
}
.rd-fin-project-top {
    display:flex;
    justify-content:space-between;
    gap:10px
}
.rd-fin-project-top span {
    font-size:12px;
    color:#ff6b2c;
    font-weight:800
}
.rd-fin-project-top em {
    font-style:normal;
    background:#f2f5f8;
    color:#687386;
    border-radius:999px;
    padding:4px 8px;
    font-size:10px
}
.rd-fin-project h4 {
    font-size:15px;
    margin:11px 0;
    min-height:40px
}
.rd-fin-numbers {
    display:flex;
    justify-content:space-between;
    align-items:end
}
.rd-fin-numbers b {
    font-size:20px
}
.rd-fin-numbers span {
    font-size:11px;
    color:#8d97a7
}
.rd-fin-progress {
    height:6px;
    background:#eef1f5;
    border-radius:999px;
    overflow:hidden;
    margin:12px 0
}
.rd-fin-progress i {
    display:block;
    height:100%;
    background:linear-gradient(90deg,#ff6b2c,#ff9e57);
    border-radius:inherit
}
.rd-fin-project footer {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    color:#8a94a3;
    font-size:10px
}
.rd-fin-project footer .warn {
    color:#d94b4b
}
.rd-fin-side-stack {
    display:grid;
    gap:16px;
    align-content:start
}
.rd-fin-three-years {
    display:grid;
    gap:11px
}
.rd-fin-three-years>div {
    display:grid;
    grid-template-columns:45px 1fr auto auto;
    gap:9px;
    align-items:center;
    padding:10px 0;
    border-bottom:1px solid #f0f2f6
}
.rd-fin-three-years b {
    font-size:14px
}
.rd-fin-three-years em,.rd-fin-three-years i {
    font-size:10px;
    font-style:normal;
    color:#7f8999
}
.rd-fin-three-years i.ok {
    color:#0b9d68
}
.rd-fin-three-years i.warn {
    color:#d94b4b
}
.rd-fin-tools {
    display:grid;
    gap:8px
}
.rd-fin-tools a {
    padding:13px 14px;
    border:1px solid #edf0f4;
    border-radius:13px;
    color:#1d2737;
    display:flex;
    justify-content:space-between;
    gap:12px
}
.rd-fin-tools a:hover {
    border-color:#ffc4aa;
    background:#fff9f6
}
.rd-fin-tools b {
    font-size:12px
}
.rd-fin-tools small {
    font-size:10px;
    color:#929dad;
    text-align:right
}
.rd-fin-category-card {
    margin-top:16px
}
.rd-fin-category-list {
    display:grid;
    gap:11px
}
.rd-fin-category-list>div {
    display:grid;
    grid-template-columns:150px 1fr 120px;
    align-items:center;
    gap:12px
}
.rd-fin-category-list span {
    font-size:12px;
    color:#5c6676
}
.rd-fin-category-list>div>div {
    height:8px;
    background:#f0f3f7;
    border-radius:999px;
    overflow:hidden
}
.rd-fin-category-list i {
    display:block;
    height:100%;
    background:linear-gradient(90deg,#ff6b2c,#ffad73);
    border-radius:999px
}
.rd-fin-category-list b {
    text-align:right;
    font-size:12px
}
.rd-fin-ai,.rd-fin-primary {
    border:0;
    border-radius:11px;
    padding:11px 16px;
    background:linear-gradient(135deg,#ff6b2c,#ff8a43);
    color:#fff;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 8px 18px rgba(255,107,44,.18)
}
.rd-fin-page-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:20px;
    border-bottom:1px solid #e6ebf1;
    padding:4px 2px 20px
}
.rd-fin-page-head p {
    color:#7b8698
}
.rd-fin-head-number {
    text-align:right
}
.rd-fin-head-number small {
    display:block;
    color:#8a94a5
}
.rd-fin-head-number strong {
    font-size:26px
}
.rd-fin-outline {
    border:1px solid #d9e0e8;
    background:#fff;
    color:#273246;
    padding:11px 15px;
    border-radius:11px;
    font-weight:700
}
.rd-fin-annual-table {
    display:grid;
    gap:0
}
.rd-fin-annual-table .head,.rd-fin-annual-table .row {
    display:grid;
    grid-template-columns:70px repeat(7,minmax(0,1fr));
    gap:12px;
    align-items:center;
    padding:14px 12px
}
.rd-fin-annual-table .head {
    background:#f4f6f9;
    border-radius:10px;
    font-size:11px;
    color:#7b8595;
    font-weight:700
}
.rd-fin-annual-table .row {
    border-bottom:1px solid #edf0f4;
    font-size:12px
}
.rd-fin-result {
    display:inline-flex;
    border-radius:999px;
    padding:5px 8px;
    font-size:10px;
    font-weight:700;
    width:max-content
}
.rd-fin-result.good {
    background:#eaf8f2;
    color:#0d8b60
}
.rd-fin-result.bad {
    background:#fff0f0;
    color:#c64444
}
.rd-fin-note {
    margin-top:14px;
    padding:16px 18px;
    border-radius:14px;
    background:#fffaf6;
    border:1px solid #ffe1d2
}
.rd-fin-note b {
    font-size:12px
}
.rd-fin-note p {
    font-size:11px;
    color:#7d8797;
    margin:5px 0 0
}
.rd-fin-filter {
    display:flex;
    gap:12px;
    align-items:end;
    margin-bottom:18px
}
.rd-fin-filter label {
    display:grid;
    gap:6px;
    color:#697386;
    font-size:11px
}
.rd-fin-filter select {
    min-width:180px;
    border:1px solid #dfe5ec;
    border-radius:10px;
    padding:10px;
    background:#fff
}
.rd-fin-filter button {
    border:0;
    border-radius:10px;
    padding:10px 18px;
    background:#182234;
    color:#fff;
    font-weight:700
}
.rd-fin-table-wrap {
    overflow:auto
}
.rd-fin-table {
    width:100%;
    border-collapse:collapse;
    font-size:11px
}
.rd-fin-table th {
    padding:11px 10px;
    text-align:left;
    background:#f5f7fa;
    color:#7b8595;
    white-space:nowrap
}
.rd-fin-table td {
    padding:12px 10px;
    border-bottom:1px solid #eef1f4;
    vertical-align:top
}
.rd-fin-table td small {
    display:block;
    color:#9aa3b1;
    margin-top:3px
}
.rd-fin-status {
    padding:4px 7px;
    border-radius:999px;
    background:#f1f4f8;
    color:#6f7989;
    font-size:9px
}
.rd-fin-two-col {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px
}
.rd-fin-upload {
    border:1px dashed #cfd7e1;
    border-radius:15px;
    padding:24px;
    background:#fafbfc
}
.rd-fin-upload input {
    width:100%
}
.rd-fin-upload p {
    font-size:11px;
    line-height:1.8
}
.rd-fin-import-tips {
    display:grid;
    gap:7px;
    margin-top:16px
}
.rd-fin-import-tips span {
    font-size:11px;
    color:#758092;
    padding-left:14px;
    position:relative
}
.rd-fin-import-tips span:before {
    content:"";
    position:absolute;
    left:0;
    top:6px;
    width:5px;
    height:5px;
    background:#ff6b2c;
    border-radius:50%
}
.rd-fin-batches {
    display:grid
}
.rd-fin-batches a {
    display:flex;
    justify-content:space-between;
    gap:12px;
    color:#263145;
    padding:12px 0;
    border-bottom:1px solid #edf0f4
}
.rd-fin-batches b,.rd-fin-batches small {
    display:block
}
.rd-fin-batches small {
    color:#9aa4b2;
    margin-top:3px;
    font-size:9px
}
.rd-fin-batches span {
    font-size:10px;
    color:#687386
}
.rd-fin-risk-list {
    display:grid;
    gap:10px
}
.rd-fin-risk-list article {
    display:grid;
    grid-template-columns:70px 1fr auto;
    gap:16px;
    align-items:start;
    border:1px solid #edf0f4;
    border-left:4px solid #c8d0da;
    border-radius:14px;
    padding:16px
}
.rd-fin-risk-list article.severity-high {
    border-left-color:#d94b4b
}
.rd-fin-risk-list article.severity-medium {
    border-left-color:#f59b2f
}
.rd-fin-risk-list article.severity-low {
    border-left-color:#18a46f
}
.rd-fin-risk-level {
    font-size:10px;
    font-weight:900;
    letter-spacing:.12em
}
.rd-fin-risk-list h3 {
    font-size:14px
}
.rd-fin-risk-list p,.rd-fin-remedy {
    font-size:11px;
    color:#737e8f
}
.rd-fin-remedy {
    margin-top:9px;
    padding:9px 11px;
    border-radius:9px;
    background:#f7f8fa
}
.rd-fin-remedy b {
    margin-right:8px
}
.rd-fin-risk-list form button {
    border:1px solid #dfe5ec;
    background:#fff;
    border-radius:9px;
    padding:8px 11px;
    cursor:pointer
}
.rd-fin-empty {
    grid-column:1/-1;
    text-align:center;
    padding:34px;
    color:#9aa4b2;
    font-size:12px
}
.rd-fin-project-hero {
    align-items:center
}
.rd-fin-project-hero h2 {
    font-size:26px
}
.rd-fin-back {
    display:block;
    color:#aeb8c8;
    font-size:11px;
    margin-bottom:14px
}
.rd-fin-project-actions {
    position:relative;
    z-index:2;
    display:flex;
    gap:8px;
    align-items:center
}
.rd-fin-project-actions>a,.rd-fin-project-actions button {
    display:inline-flex;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.08);
    color:#fff;
    border-radius:11px;
    padding:11px 14px;
    font-size:11px;
    font-weight:700
}
.rd-fin-project-actions button {
    border:0;
    background:#ff6b2c;
    cursor:pointer
}
.rd-fin-project-grid-layout {
    display:grid;
    grid-template-columns:minmax(0,1.8fr) minmax(290px,.7fr);
    gap:16px
}
.rd-fin-project-grid-layout main {
    display:grid;
    gap:16px
}
.rd-fin-project-aside {
    display:grid;
    gap:16px;
    align-content:start
}
.rd-fin-budget-bars {
    display:grid;
    gap:12px
}
.rd-fin-budget-bars>div {
    display:grid;
    grid-template-columns:250px 1fr 60px;
    gap:12px;
    align-items:center
}
.rd-fin-budget-bars>div>div b,.rd-fin-budget-bars>div>div span {
    display:block
}
.rd-fin-budget-bars>div>div b {
    font-size:12px
}
.rd-fin-budget-bars>div>div span {
    font-size:9px;
    color:#929baa;
    margin-top:3px
}
.rd-fin-budget-bars i {
    height:7px;
    background:#eff2f5;
    border-radius:999px;
    overflow:hidden
}
.rd-fin-budget-bars em {
    display:block;
    height:100%;
    background:linear-gradient(90deg,#4667ff,#7a8fff);
    border-radius:999px
}
.rd-fin-budget-bars strong {
    text-align:right;
    font-size:11px
}
.rd-fin-inline-form form {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    padding:14px;
    border-radius:14px;
    background:#f7f9fb;
    margin-bottom:14px
}
.rd-fin-inline-form label,.rd-fin-stack label {
    display:grid;
    gap:5px;
    font-size:10px;
    color:#6f7989
}
.rd-fin-inline-form input,.rd-fin-inline-form select,.rd-fin-stack input,.rd-fin-stack select,.rd-fin-stack textarea {
    width:100%;
    border:1px solid #dfe5ec;
    border-radius:9px;
    padding:9px;
    background:#fff;
    color:#273246
}
.rd-fin-inline-form label.wide {
    grid-column:span 2
}
.rd-fin-inline-form button {
    align-self:end;
    border:0;
    border-radius:9px;
    padding:10px;
    background:#172033;
    color:#fff;
    font-weight:700
}
.rd-fin-mini-table {
    overflow:auto
}
.rd-fin-mini-table>.head,.rd-fin-mini-table>div {
    display:grid;
    grid-template-columns:repeat(6,minmax(90px,1fr));
    gap:10px;
    align-items:center;
    padding:9px 8px
}
.rd-fin-mini-table>.head {
    background:#f5f7fa;
    color:#8791a0;
    font-size:9px
}
.rd-fin-mini-table>div:not(.head) {
    border-bottom:1px solid #eef1f4;
    font-size:10px
}
.rd-fin-stack {
    display:grid;
    gap:10px
}
.rd-fin-stack button {
    border:0;
    border-radius:10px;
    padding:11px;
    background:#182234;
    color:#fff;
    font-weight:700;
    cursor:pointer
}
.rd-fin-stack textarea {
    min-height:70px;
    resize:vertical
}
.rd-fin-stack label.check {
    display:flex;
    align-items:center;
    grid-template-columns:auto 1fr
}
.rd-fin-stack label.check input {
    width:auto
}
.rd-fin-ai-result {
    border-top:1px solid #edf0f4;
    padding:12px 0
}
.rd-fin-ai-result:first-of-type {
    border-top:0
}
.rd-fin-ai-result>div {
    display:flex;
    justify-content:space-between
}
.rd-fin-ai-result p {
    font-size:10px;
    line-height:1.65;
    max-height:230px;
    overflow:auto
}
.rd-fin-ai-result span {
    font-size:9px;
    text-transform:uppercase
}
.rd-fin-ai-result .risk-low {
    color:#0b9666
}
.rd-fin-ai-result .risk-medium {
    color:#dd8a24
}
.rd-fin-ai-result .risk-high {
    color:#d44848
}
.rd-fin-muted {
    font-size:11px;
    color:#9099a7
}
@media(max-width:1280px) {
    .rd-fin-overview-strip {
        grid-template-columns:repeat(3,1fr)
    }
    .rd-fin-command-grid,.rd-fin-project-grid-layout {
        grid-template-columns:1fr
    }
    .rd-fin-project-aside {
        grid-template-columns:repeat(2,1fr)
    }
    .rd-fin-annual-table .head,.rd-fin-annual-table .row {
        grid-template-columns:60px repeat(7,120px);
        min-width:980px
    }
    .rd-fin-annual-table {
        overflow:auto
    }
}
@media(max-width:820px) {
    .rd-fin-v42 {
        padding:16px
    }
    .rd-fin-hero,.rd-fin-project-hero,.rd-fin-page-head {
        display:block;
        padding:24px
    }
    .rd-fin-year,.rd-fin-project-actions {
        margin-top:18px
    }
    .rd-fin-nav {
        overflow:auto;
        position:static
    }
    .rd-fin-nav a {
        min-width:110px
    }
    .rd-fin-overview-strip {
        grid-template-columns:1fr 1fr
    }
    .rd-fin-project-grid,.rd-fin-two-col,.rd-fin-project-aside {
        grid-template-columns:1fr
    }
    .rd-fin-category-list>div {
        grid-template-columns:100px 1fr
    }
    .rd-fin-category-list b {
        grid-column:2
    }
    .rd-fin-inline-form form {
        grid-template-columns:1fr 1fr
    }
    .rd-fin-budget-bars>div {
        grid-template-columns:140px 1fr 50px
    }
    .rd-fin-risk-list article {
        grid-template-columns:1fr
    }
    .rd-fin-project-actions {
        flex-wrap:wrap
    }
}
/* Third-end 07/08 V4.3: independent PS & achievement workspaces */
.v43-hero {
    background:linear-gradient(120deg,#fff7f1,#fff 58%,#eef7ff);
    border:1px solid #f1e4d9;
    border-radius:28px;
    padding:34px 38px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:18px
}
.v43-hero.ach {
    background:linear-gradient(120deg,#f3fbf7,#fff 58%,#f5f2ff)
}
.v43-hero small {
    letter-spacing:2px;
    font-weight:800;
    color:#ff6b2c
}
.v43-hero h2,.v43-project-head h2,.v43-pagehead h2 {
    font-size:30px;
    margin:8px 0
}
.v43-hero p,.v43-project-head p,.v43-pagehead p {
    color:#708099
}
.v43-kpis {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    margin:16px 0
}
.v43-kpis>div {
    background:#fff;
    border:1px solid #e7ebf0;
    border-radius:18px;
    padding:20px
}
.v43-kpis span,.v43-kpis em {
    display:block;
    color:#8491a6;
    font-style:normal
}
.v43-kpis b {
    display:block;
    font-size:26px;
    margin:7px 0;
    color:#152033
}
.v43-grid-2 {
    display:grid;
    grid-template-columns:1.5fr 1fr;
    gap:18px
}
.v43-grid-3 {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px
}
.v43-panel {
    background:#fff;
    border:1px solid #e4e9ef;
    border-radius:22px;
    padding:24px;
    margin-bottom:18px
}
.v43-panel.narrow {
    max-width:1000px
}
.panel-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:16px
}
.v43-record {
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    padding:18px 4px;
    border-top:1px solid #edf0f4;
    text-decoration:none;
    color:#172033
}
.v43-record strong {
    display:block;
    font-size:16px
}
.v43-record small {
    display:block;
    color:#8995a8;
    margin-top:6px
}
.record-meta {
    display:flex;
    align-items:center;
    gap:9px
}
.record-meta span {
    background:#f4f6f9;
    border-radius:9px;
    padding:6px 9px;
    font-size:12px;
    color:#67758b
}
.record-meta b {
    color:#ff6427
}
.v43-form {
    display:grid;
    gap:14px
}
.v43-form.two {
    grid-template-columns:repeat(2,1fr)
}
.v43-form.three {
    grid-template-columns:repeat(3,1fr)
}
.v43-form label {
    display:grid;
    gap:7px;
    font-size:13px;
    color:#68758a
}
.v43-form input,.v43-form select,.v43-form textarea {
    width:100%;
    border:1px solid #dfe5ec;
    border-radius:11px;
    padding:11px 12px;
    background:#fff
}
.v43-form .span2 {
    grid-column:span 2
}
.v43-form .span3 {
    grid-column:span 3
}
.v43-form.compact {
    margin-top:15px
}
.ratio-ring {
    margin-top:20px;
    background:#172131;
    color:#fff;
    border-radius:18px;
    padding:22px
}
.ratio-ring b {
    font-size:34px;
    display:block
}
.v43-project-head,.v43-pagehead {
    background:#172131;
    color:#fff;
    border-radius:24px;
    padding:28px 32px;
    margin-bottom:14px;
    display:flex;
    align-items:center;
    justify-content:space-between
}
.v43-project-head.ach {
    background:#18342e
}
.v43-project-head a,.v43-pagehead a {
    color:#ff8a55
}
.v43-project-head p,.v43-pagehead p {
    margin:4px 0
}
.v43-tabs {
    display:flex;
    gap:8px;
    background:#fff;
    border:1px solid #e4e9ef;
    border-radius:16px;
    padding:7px;
    margin-bottom:18px
}
.v43-tabs a {
    padding:11px 18px;
    border-radius:11px;
    text-decoration:none;
    color:#65738a
}
.v43-tabs a.active {
    background:#172131;
    color:#fff
}
.prose {
    line-height:1.9;
    color:#4e5c70;
    white-space:normal
}
.mini-row {
    padding:10px 0;
    border-bottom:1px solid #edf0f4
}
.info-dl {
    display:grid;
    grid-template-columns:100px 1fr;
    gap:13px
}
.info-dl dt {
    color:#8995a8
}
.info-dl dd {
    margin:0;
    font-weight:600
}
.empty {
    padding:35px;
    text-align:center;
    color:#94a0b2
}
.table-wrap {
    overflow:auto
}
.table-wrap table {
    width:100%;
    border-collapse:collapse
}
.table-wrap th,.table-wrap td {
    padding:12px;
    border-bottom:1px solid #edf0f4;
    text-align:left;
    white-space:nowrap
}
@media(max-width:1100px) {
    .v43-kpis,.v43-grid-3 {
        grid-template-columns:repeat(2,1fr)
    }
    .v43-grid-2 {
        grid-template-columns:1fr
    }
    .v43-form.three {
        grid-template-columns:1fr 1fr
    }
    .v43-form .span3 {
        grid-column:span 2
    }
}
@media(max-width:760px) {
    .v43-kpis,.v43-grid-3,.v43-form.two,.v43-form.three {
        grid-template-columns:1fr
    }
    .v43-form .span2,.v43-form .span3 {
        grid-column:span 1
    }
    .v43-hero,.v43-project-head,.v43-pagehead {
        align-items:flex-start;
        flex-direction:column;
        gap:15px
    }
    .v43-record {
        align-items:flex-start;
        flex-direction:column
    }
    .record-meta {
        flex-wrap:wrap
    }
    .v43-tabs {
        overflow:auto
    }
}
/* Third-end 07/08 V4.4 independent workspaces */
.v44-hero {
    padding:30px 34px;
    border-radius:24px;
    background:linear-gradient(120deg,#fff8f3,#fff 58%,#f3f7fb);
    border:1px solid #e6ebf1;
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:center;
    margin-bottom:16px
}
.v44-hero small {
    display:block;
    letter-spacing:1.5px;
    color:#ff6b2c;
    font-weight:800;
    margin:8px 0
}
.v44-hero h2 {
    font-size:30px;
    margin:0 0 8px
}
.v44-hero p {
    margin:0;
    color:#718096
}
.v44-worknav {
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding:10px;
    background:#fff;
    border:1px solid #e5eaf0;
    border-radius:18px;
    margin-bottom:18px
}
.v44-worknav a {
    white-space:nowrap;
    padding:12px 15px;
    border-radius:12px;
    color:#667085;
    text-decoration:none;
    font-weight:700
}
.v44-worknav a.active,.v44-worknav a:hover {
    background:#172130;
    color:#fff
}
.v44-card {
    background:#fff;
    border:1px solid #e3e9ef;
    border-radius:20px;
    padding:24px;
    margin-bottom:18px
}
.v44-card h3 {
    margin:0 0 8px;
    font-size:20px
}
.v44-cardhead {
    display:flex;
    justify-content:space-between;
    align-items:flex-start
}
.v44-grid2,.v44-grid3 {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
.v44-grid3 {
    grid-template-columns:repeat(3,minmax(0,1fr))
}
.v44-kpis {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px
}
.v44-kpis>div {
    background:#fff;
    border:1px solid #e4eaf0;
    border-radius:18px;
    padding:20px
}
.v44-kpis small {
    display:block;
    color:#8a97a8
}
.v44-kpis b {
    display:block;
    font-size:25px;
    margin-top:8px
}
.v44-kpis b.date {
    font-size:18px
}
.v44-kpis em {
    font-style:normal;
    font-size:12px;
    color:#ff6b2c
}
.v44-form {
    display:grid;
    gap:14px;
    margin-top:16px
}
.v44-form.two {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.v44-form.three {
    grid-template-columns:repeat(3,minmax(0,1fr))
}
.v44-form label {
    display:grid;
    gap:7px;
    color:#58677a
}
.v44-form input,.v44-form select,.v44-form textarea {
    width:100%;
    box-sizing:border-box;
    border:1px solid #dce4ec;
    border-radius:12px;
    padding:12px;
    background:#fff
}
.v44-form .span2 {
    grid-column:span 2
}
.v44-form .span3 {
    grid-column:span 3
}
.v44-rel {
    padding:12px 0;
    border-bottom:1px solid #edf0f3;
    display:grid;
    gap:4px
}
.v44-rel small,.v44-card .muted {
    color:#8995a5
}
.v44-score {
    display:flex;
    align-items:center;
    gap:28px;
    padding:18px 0
}
.v44-score>b {
    font-size:44px
}
.v44-score>div {
    display:flex;
    flex-wrap:wrap;
    gap:10px
}
.v44-score span {
    padding:8px 12px;
    background:#f4f6f8;
    border-radius:10px
}
.v44-biglink {
    padding:22px;
    background:#f7f9fb;
    border-radius:16px
}
.v44-biglink b {
    display:block;
    font-size:22px;
    margin:8px 0
}
.text-link {
    display:inline-block;
    margin-top:14px;
    color:#ff6422;
    font-weight:700;
    text-decoration:none
}
@media(max-width:1100px) {
    .v44-grid3,.v44-kpis {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:760px) {
    .v44-hero {
        align-items:flex-start;
        flex-direction:column
    }
    .v44-grid2,.v44-grid3,.v44-kpis,.v44-form.two,.v44-form.three {
        grid-template-columns:1fr
    }
    .v44-form .span2,.v44-form .span3 {
        grid-column:auto
    }
}
/* ===== Third-end V4.5 Finance & AI Checkup ===== */
.ef45,.hc45 {
    max-width:1480px;
    margin:0 auto;
    padding:28px
}
.ef-hero,.hc-hero {
    border-radius:28px;
    padding:34px 38px;
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:30px;
    margin-bottom:18px
}
.ef-hero {
    background:linear-gradient(125deg,#172233,#26364c);
    color:#fff
}
.hc-hero {
    background:linear-gradient(125deg,#171d2a,#3a2531);
    color:#fff
}
.ef-hero small,.hc-hero small {
    letter-spacing:2px;
    color:#ff8a55;
    font-weight:800
}
.ef-hero h1,.hc-hero h1 {
    font-size:34px;
    margin:8px 0
}
.ef-hero p,.hc-hero p {
    opacity:.78
}
.ef-hero form,.hc-hero form {
    display:flex;
    gap:8px
}
.ef-hero input {
    width:110px;
    border:0;
    border-radius:12px;
    padding:12px
}
.ef-hero button,.hc-hero button,.ef-primary,.hc-primary {
    background:#ff641f;
    color:#fff!important;
    border:0;
    border-radius:12px;
    padding:12px 20px;
    font-weight:800;
    text-decoration:none;
    display:inline-block
}
.ef-nav,.hc-nav {
    display:flex;
    gap:7px;
    overflow-x:auto;
    background:#fff;
    border:1px solid #e6eaf0;
    border-radius:18px;
    padding:8px;
    margin-bottom:18px
}
.ef-nav a,.hc-nav a {
    white-space:nowrap;
    text-decoration:none;
    color:#566176;
    padding:11px 15px;
    border-radius:11px;
    font-weight:700
}
.ef-nav a:hover,.hc-nav a:hover {
    background:#fff2eb;
    color:#ff641f
}
.ef-kpis,.hc-kpis {
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px;
    margin:18px 0
}
.ef-kpis article,.hc-kpis article {
    background:#fff;
    border:1px solid #e6eaf0;
    border-radius:18px;
    padding:20px
}
.ef-kpis span,.hc-kpis span {
    display:block;
    color:#8490a5;
    font-size:13px
}
.ef-kpis b,.hc-kpis b {
    display:block;
    font-size:23px;
    margin-top:9px
}
.ef-panel,.hc-panel {
    background:#fff;
    border:1px solid #e2e7ee;
    border-radius:22px;
    padding:28px;
    margin:16px 0
}
.ef-panel h2,.hc-panel h2 {
    margin:0 0 18px
}
.ef-grid,.hc-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px
}
.ef-tile,.hc-grid a {
    border:1px solid #e5e9ef;
    border-radius:16px;
    padding:20px;
    text-decoration:none;
    color:#172033;
    min-height:95px
}
.ef-tile b,.hc-grid b {
    display:block;
    font-size:16px
}
.ef-tile span,.hc-grid span {
    display:block;
    color:#8591a5;
    margin-top:8px;
    font-size:13px
}
.ef-form {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:15px
}
.ef-form label {
    color:#67748b;
    font-size:13px
}
.ef-form input,.ef-form select,.ef-form textarea {
    display:block;
    width:100%;
    box-sizing:border-box;
    border:1px solid #dfe5ed;
    border-radius:12px;
    padding:12px;
    margin-top:7px;
    background:#fbfcfe
}
.ef-form .wide {
    grid-column:1/-1
}
.ef-form textarea {
    min-height:80px
}
.ef-table,.hc-table {
    overflow:auto
}
.ef-table table,.hc-table table {
    width:100%;
    border-collapse:collapse
}
.ef-table th,.ef-table td,.hc-table th,.hc-table td {
    padding:13px 12px;
    border-bottom:1px solid #edf0f4;
    text-align:left;
    font-size:13px
}
.ef-table th,.hc-table th {
    color:#7c879a;
    background:#fafbfc
}
.ef-tabs {
    display:flex;
    gap:8px;
    margin-bottom:15px
}
.ef-tabs a {
    padding:9px 16px;
    border-radius:10px;
    background:#f3f5f8;
    color:#344054;
    text-decoration:none
}
.ef-head,.hc-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px
}
.ef-risk {
    padding:14px 18px;
    border-radius:12px;
    margin:16px 0;
    font-weight:800
}
.ef-risk.red,.hc-advice.red {
    background:#fff0f0;
    color:#b42318
}
.ef-risk.yellow,.hc-advice.yellow {
    background:#fff8e7;
    color:#a15c00
}
.ef-risk.green,.hc-advice.green {
    background:#ecfdf3;
    color:#027a48
}
.hc-riskcards {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px
}
.hc-riskcards article {
    padding:25px;
    border-radius:20px
}
.hc-riskcards b {
    font-size:34px;
    display:block
}
.hc-riskcards .red {
    background:#fff0f0;
    color:#b42318
}
.hc-riskcards .yellow {
    background:#fff8e7;
    color:#a15c00
}
.hc-riskcards .green {
    background:#ecfdf3;
    color:#027a48
}
.hc-dims {
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px
}
.hc-dims article {
    border:1px solid #e7eaf0;
    border-radius:16px;
    padding:20px
}
.hc-dims article div {
    display:flex;
    justify-content:space-between
}
.hc-dims progress {
    width:100%;
    height:12px;
    margin-top:14px;
    accent-color:#ff641f
}
.hc-score-big {
    font-size:58px;
    font-weight:900;
    color:#ff641f;
    margin:25px 0
}
.hc-score-big small {
    font-size:18px;
    color:#8994a7
}
.hc-note {
    background:#f7f8fa;
    border-radius:15px;
    padding:18px;
    line-height:1.8
}
.hc-radar-wrap {
    display:flex;
    justify-content:center;
    align-items:center;
    gap:60px
}
.hc-advice {
    border-radius:16px;
    padding:18px 20px;
    margin:10px 0
}
.hc-advice div {
    display:flex;
    justify-content:space-between
}
.hc-advice p {
    margin-bottom:0
}
.hc-report-score {
    display:flex;
    align-items:baseline;
    gap:14px;
    background:#171d2a;
    color:#fff;
    padding:24px;
    border-radius:18px;
    margin:20px 0
}
.hc-report-score b {
    font-size:48px;
    color:#ff7a3d
}
.hc-report-score em {
    margin-left:auto
}
.hc-empty,.ef-empty {
    padding:30px;
    text-align:center;
    color:#8a95a7;
    background:#fafbfc;
    border-radius:15px
}
@media(max-width:1100px) {
    .ef-kpis,.hc-kpis {
        grid-template-columns:repeat(3,1fr)
    }
    .ef-grid,.hc-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .ef-form {
        grid-template-columns:repeat(2,1fr)
    }
}
/* ===== 第三端 10 AI高企体检 V4.5.1：规则模式/AI状态 ===== */
.hc-mode-strip {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:16px
}
.hc-mode-badge {
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:6px 12px;
    border-radius:999px;
    font-size:13px;
    font-weight:700;
    border:1px solid #dfe6ef;
    background:#fff;
    color:#49566b
}
.hc-mode-badge.rules {
    border-color:#bfe8d1;
    background:#effbf4;
    color:#137a46
}
.hc-mode-badge.off {
    border-color:#ffd5c4;
    background:#fff5f0;
    color:#c94c14
}
.hc-mode-badge.ready {
    border-color:#cddcf7;
    background:#f2f7ff;
    color:#2b63b8
}
.hc-ai-pending {
    margin:18px 0;
    padding:18px 20px;
    border:1px solid #ffd5c4;
    border-radius:16px;
    background:#fff8f4
}
.hc-ai-pending b {
    display:block;
    font-size:18px;
    color:#c94c14;
    margin-bottom:6px
}
.hc-ai-pending p {
    margin:0;
    color:#68758a;
    line-height:1.8
}
/* ===== Third End V4.6 · Cultivation & Application ===== */
.page-enterprise-cultivation .content,.page-enterprise-applications .content {
    background:#f5f7fa
}
.v46-hero {
    border-radius:28px;
    padding:30px 34px;
    margin-bottom:18px;
    background:linear-gradient(120deg,#172131,#25334a);
    color:#fff;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    box-shadow:0 18px 50px rgba(23,33,49,.12)
}
.v46-hero.cultivation {
    background:linear-gradient(120deg,#183128,#275f4a)
}
.v46-hero.application {
    background:linear-gradient(120deg,#16243a,#3a465e)
}
.v46-hero small {
    letter-spacing:2px;
    color:#ff8a52;
    font-weight:800
}
.v46-hero h2 {
    font-size:32px;
    margin:7px 0
}
.v46-hero p {
    margin:0;
    color:#d9e2ef
}
.v46-hero a {
    color:#fff;
    text-decoration:none
}
.v46-hero form {
    display:flex;
    align-items:end;
    gap:10px
}
.v46-hero label {
    font-size:12px;
    color:#d5deeb
}
.v46-hero input,.v46-hero select {
    display:block;
    margin-top:6px;
    padding:10px 12px;
    border-radius:10px;
    border:1px solid rgba(255,255,255,.2);
    background:rgba(255,255,255,.08);
    color:#fff;
    max-width:130px
}
.v46-worknav {
    display:flex;
    gap:8px;
    overflow:auto;
    padding:7px;
    background:#fff;
    border:1px solid #e4e9f0;
    border-radius:18px;
    margin-bottom:18px;
    position:sticky;
    top:8px;
    z-index:5;
    box-shadow:0 8px 24px rgba(27,39,55,.05)
}
.v46-worknav a {
    white-space:nowrap;
    text-decoration:none;
    color:#6b7686;
    padding:11px 14px;
    border-radius:12px;
    font-size:13px;
    font-weight:700
}
.v46-worknav a.active {
    background:#172131;
    color:#fff
}
.v46-kpis {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:12px;
    margin-bottom:18px
}
.v46-kpis>div {
    background:#fff;
    border:1px solid #e5eaf0;
    border-radius:18px;
    padding:18px
}
.v46-kpis small {
    color:#8691a3;
    display:block
}
.v46-kpis b {
    display:block;
    margin-top:8px;
    font-size:25px;
    color:#152033
}
.v46-grid2 {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin-bottom:16px
}
.v46-card,.v46-callout {
    background:#fff;
    border:1px solid #e3e8ef;
    border-radius:22px;
    padding:24px;
    margin-bottom:16px
}
.v46-card h3,.v46-callout h3 {
    margin:4px 0 12px;
    color:#172131
}
.v46-card p,.v46-callout p {
    color:#687588;
    line-height:1.7
}
.v46-callout {
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:linear-gradient(100deg,#fff7f1,#fff)
}
.v46-callout.ai {
    background:linear-gradient(100deg,#f3f7ff,#fff)
}
.v46-cards4,.v46-cards3 {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px
}
.v46-cards3 {
    grid-template-columns:repeat(3,1fr)
}
.v46-cards4 article,.v46-cards3 article {
    border:1px solid #e7ebf0;
    border-radius:16px;
    padding:16px;
    position:relative
}
.v46-cards4 h4,.v46-cards3 h4 {
    margin:8px 0
}
.risk-dot {
    width:8px;
    height:8px;
    border-radius:50%;
    display:inline-block;
    background:#8ea0b5
}
.risk-dot.urgent {
    background:#e44949
}
.risk-dot.high {
    background:#f39a3f
}
.metric-list {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px
}
.metric-list span {
    background:#f7f9fb;
    padding:13px;
    border-radius:12px;
    color:#7b8798
}
.metric-list b {
    float:right;
    color:#172131
}
.mini-progress,.bar {
    height:8px;
    background:#eef1f5;
    border-radius:999px;
    overflow:hidden;
    margin:14px 0
}
.mini-progress i,.bar i {
    display:block;
    height:100%;
    background:linear-gradient(90deg,#ff6c2c,#ff9a5d);
    border-radius:999px
}
.v46-table {
    overflow:auto
}
.v46-table table {
    width:100%;
    border-collapse:collapse
}
.v46-table th {
    font-size:12px;
    color:#8a95a5;
    background:#fafbfc
}
.v46-table th,.v46-table td {
    text-align:left;
    padding:13px;
    border-bottom:1px solid #edf0f3;
    vertical-align:top
}
.v46-table td small {
    display:block;
    color:#919baa;
    margin-top:4px
}
.form-stack {
    display:grid;
    gap:12px
}
.form-stack label,.form-grid label {
    font-size:13px;
    color:#607086
}
.form-stack input,.form-stack select,.form-stack textarea,.form-grid input,.form-grid select,.form-grid textarea,.timeline-editor input,.timeline-editor select {
    width:100%;
    box-sizing:border-box;
    margin-top:6px;
    padding:11px 12px;
    border:1px solid #dfe5ec;
    border-radius:10px;
    background:#fff
}
.form-stack textarea,.form-grid textarea {
    min-height:90px
}
.form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px
}
.span2 {
    grid-column:span 2
}
.task-list article {
    display:flex;
    justify-content:space-between;
    gap:14px;
    padding:16px 0;
    border-bottom:1px solid #edf0f3
}
.task-list article form {
    display:flex;
    gap:8px;
    align-items:center
}
.task-list select {
    padding:9px;
    border:1px solid #dfe5ec;
    border-radius:9px
}
.report-prose {
    white-space:normal;
    line-height:1.9;
    color:#344257;
    background:#f8fafc;
    border-radius:16px;
    padding:20px
}
.app-project-list>a {
    display:flex;
    justify-content:space-between;
    gap:16px;
    padding:16px;
    border:1px solid #e8ecf1;
    border-radius:16px;
    text-decoration:none;
    color:#1c2738;
    margin-bottom:10px
}
.app-project-list>a:hover {
    border-color:#ff8a52;
    box-shadow:0 10px 24px rgba(255,106,40,.08)
}
.app-project-list h4 {
    margin:5px 0
}
.app-project-list p {
    margin:0
}
.inline-filter {
    display:flex;
    gap:8px
}
.inline-filter select {
    padding:10px 12px;
    border-radius:10px;
    border:1px solid #dfe5ec
}
.timeline-mini>div {
    display:flex;
    gap:12px;
    padding:10px 0
}
.timeline-mini i {
    width:11px;
    height:11px;
    border-radius:50%;
    background:#cfd6df;
    margin-top:4px
}
.timeline-mini .done i {
    background:#25a46b
}
.timeline-mini .doing i {
    background:#ff7b35
}
.timeline-mini span small {
    display:block;
    color:#8a95a5;
    margin-top:2px
}
.circle-score {
    width:120px;
    height:120px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:16px auto;
    background:conic-gradient(#ff6c2c calc(var(--score, 70)*1%),#edf0f4 0);
    position:relative
}
.circle-score:before {
    content:"";
    position:absolute;
    inset:9px;
    background:#fff;
    border-radius:50%
}
.circle-score b,.circle-score small {
    position:relative;
    z-index:1
}
.circle-score b {
    font-size:34px
}
.timeline-editor form {
    display:grid;
    grid-template-columns:180px 150px 120px 1fr 80px;
    gap:10px;
    align-items:center;
    padding:14px 0;
    border-bottom:1px solid #edf0f3
}
.timeline-editor h4 {
    margin:4px 0
}
.member-list article {
    display:flex;
    gap:12px;
    padding:14px;
    border:1px solid #e7ebf0;
    border-radius:14px;
    margin-bottom:10px
}
.avatar-mini {
    width:38px;
    height:38px;
    border-radius:11px;
    background:#ffede3;
    color:#ff641f;
    display:grid;
    place-items:center;
    font-weight:800
}
.member-list h4 {
    margin:2px 0
}
.member-list p {
    margin:0
}
.review-list article {
    padding:15px;
    border-bottom:1px solid #edf0f3
}
.review-list article>div {
    display:flex;
    justify-content:space-between
}
.review-list p {
    white-space:pre-line
}
.note-box {
    padding:14px 16px;
    border-radius:12px;
    background:#fff7f1;
    color:#8b5a3e;
    margin-top:14px
}
.result-big {
    font-size:38px;
    font-weight:800;
    color:#ff641f;
    margin:18px 0
}
.empty {
    padding:24px;
    text-align:center;
    color:#929dab;
    background:#f8fafc;
    border-radius:14px
}
.badge {
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    background:#f0f3f7;
    color:#58677a;
    font-size:12px;
    font-weight:700
}
.btn.small {
    padding:8px 10px;
    font-size:12px
}
.btn.ghost {
    background:#fff;
    color:#172131;
    border:1px solid #dfe5ec
}
.text-link {
    color:#ff641f;
    text-decoration:none;
    font-weight:700
}
.panel-head {
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start
}
@media(max-width:1100px) {
    .v46-kpis {
        grid-template-columns:repeat(2,1fr)
    }
    .v46-grid2 {
        grid-template-columns:1fr
    }
    .v46-cards4,.v46-cards3 {
        grid-template-columns:repeat(2,1fr)
    }
    .timeline-editor form {
        grid-template-columns:1fr 1fr
    }
    .v46-hero {
        align-items:flex-start;
        flex-direction:column
    }
}
@media(max-width:700px) {
    .v46-kpis,.v46-cards4,.v46-cards3,.form-grid {
        grid-template-columns:1fr
    }
    .span2 {
        grid-column:auto
    }
    .v46-hero {
        padding:22px
    }
    .timeline-editor form {
        grid-template-columns:1fr
    }
    .task-list article {
        flex-direction:column
    }
}
/* ===== 第三端 09-12 深度版 V4.7 ===== */
.deep47 {
    --d47-ink:#172033;
    --d47-muted:#8290a5;
    --d47-line:#e6ebf2;
    --d47-soft:#f6f8fb;
    --d47-accent:#ff6a24;
    color:var(--d47-ink)
}
.d47-hero {
    margin:22px 0;
    padding:28px 32px;
    border-radius:24px;
    background:linear-gradient(135deg,#172033,#273246);
    color:#fff;
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:center
}
.d47-hero.finance {
    background:linear-gradient(135deg,#142234,#314156)
}
.d47-hero.application {
    background:linear-gradient(135deg,#272038,#4d324a)
}
.d47-hero small {
    letter-spacing:2px;
    color:#ffb18a
}
.d47-hero h1 {
    margin:8px 0;
    font-size:30px
}
.d47-hero p {
    margin:0;
    color:#d4dbe6
}
.d47-hero form {
    display:flex;
    gap:10px
}
.d47-hero input,.d47-hero button {
    border:0;
    border-radius:12px;
    padding:12px 14px
}
.d47-hero button {
    background:#ff6a24;
    color:#fff;
    font-weight:700
}
.d47-nav {
    display:flex;
    gap:8px;
    overflow:auto;
    padding:10px 0 18px
}
.d47-nav a {
    white-space:nowrap;
    text-decoration:none;
    color:#526176;
    background:#fff;
    border:1px solid var(--d47-line);
    padding:10px 14px;
    border-radius:12px;
    font-size:14px
}
.d47-nav a:hover {
    border-color:#ff8b55;
    color:#ff6a24
}
.d47-kpis {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
    margin:14px 0 18px
}
.d47-kpis article {
    background:#fff;
    border:1px solid var(--d47-line);
    border-radius:18px;
    padding:18px;
    min-height:104px
}
.d47-kpis small,.d47-kpis span {
    display:block;
    color:var(--d47-muted);
    font-size:12px
}
.d47-kpis b {
    display:block;
    font-size:23px;
    margin:8px 0;
    color:var(--d47-ink)
}
.d47-kpis.compact {
    grid-template-columns:repeat(4,minmax(0,1fr))
}
.d47-grid2 {
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
    gap:16px;
    margin:16px 0
}
.d47-card {
    background:#fff;
    border:1px solid var(--d47-line);
    border-radius:22px;
    padding:22px;
    margin:16px 0;
    box-shadow:0 10px 30px rgba(28,39,58,.04)
}
.d47-card h2 {
    font-size:20px;
    margin:4px 0 16px
}
.d47-head {
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    margin-bottom:14px
}
.d47-head a {
    color:#ff6a24;
    text-decoration:none
}
.d47-head button,.d47-form button,.d47-table button {
    border:0;
    border-radius:10px;
    padding:10px 14px;
    background:#172033;
    color:#fff;
    cursor:pointer
}
.d47-score {
    font-size:30px;
    color:#ff6a24
}
.d47-table {
    width:100%;
    border-collapse:collapse;
    font-size:13px
}
.d47-table th {
    text-align:left;
    color:#75839a;
    background:#f7f9fc;
    padding:11px;
    border-bottom:1px solid var(--d47-line)
}
.d47-table td {
    padding:12px 11px;
    border-bottom:1px solid #eef1f5;
    vertical-align:top
}
.d47-table small {
    color:#8794a7
}
.d47-table form {
    display:flex;
    gap:6px
}
.d47-table select {
    padding:8px;
    border:1px solid var(--d47-line);
    border-radius:8px
}
.d47-metric-list {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px
}
.d47-metric-list span {
    background:var(--d47-soft);
    padding:13px;
    border-radius:12px;
    color:#66758a
}
.d47-metric-list b {
    display:block;
    color:var(--d47-ink);
    margin-top:6px
}
.d47-flow {
    display:flex;
    gap:8px;
    align-items:center;
    overflow:auto;
    padding:8px 0
}
.d47-flow a {
    white-space:nowrap;
    text-decoration:none;
    padding:12px 14px;
    border-radius:12px;
    background:#f5f7fa;
    color:#29384d;
    border:1px solid #e7ebf1
}
.d47-flow i {
    font-style:normal;
    color:#ff6a24
}
.d47-barrow {
    display:grid;
    grid-template-columns:90px 1fr 64px;
    gap:12px;
    align-items:center;
    margin:14px 0
}
.d47-barrow div,.d47-progress {
    height:9px;
    background:#edf1f6;
    border-radius:999px;
    overflow:hidden
}
.d47-barrow i,.d47-progress i {
    display:block;
    height:100%;
    background:linear-gradient(90deg,#ff8b55,#ff6a24)
}
.d47-progress.big {
    height:14px
}
.d47-form {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px
}
.d47-form label {
    display:flex;
    flex-direction:column;
    gap:6px;
    font-size:13px;
    color:#6c7a90
}
.d47-form input,.d47-form select,.d47-form textarea {
    padding:11px 12px;
    border:1px solid #dfe5ed;
    border-radius:10px;
    background:#fff
}
.d47-form textarea {
    min-height:90px
}
.d47-form .wide {
    grid-column:1/-1
}
.d47-form button {
    grid-column:1/-1;
    background:#ff6a24
}
.d47-ready-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px
}
.d47-ready-grid a {
    display:block;
    text-decoration:none;
    color:#26364c;
    border:1px solid var(--d47-line);
    border-radius:16px;
    padding:16px;
    background:#fff
}
.d47-ready-grid a b {
    display:block;
    margin-bottom:7px
}
.d47-ready-grid a span {
    display:block;
    color:#7d8aa0;
    font-size:12px;
    line-height:1.6
}
.d47-ready-grid a>div:first-child {
    display:flex;
    justify-content:space-between
}
.d47-ready-grid a>.d47-progress {
    margin:10px 0
}
.d47-quarter-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px
}
.d47-quarter-grid article {
    background:#f7f9fc;
    border:1px solid var(--d47-line);
    border-radius:16px;
    padding:16px
}
.d47-quarter-grid article>small {
    color:#ff6a24;
    font-weight:700
}
.d47-quarter-grid p {
    font-size:12px;
    color:#66758a
}
.d47-quarter-grid em {
    font-style:normal;
    color:#ff6a24
}
.d47-empty {
    padding:30px;
    text-align:center;
    color:#8a97a8;
    background:#f8fafc;
    border-radius:16px
}
.risk {
    display:inline-block;
    padding:4px 8px;
    border-radius:999px;
    font-size:12px
}
.risk.green {
    background:#e9f8ef;
    color:#178347
}
.risk.yellow {
    background:#fff6df;
    color:#a66b00
}
.risk.red {
    background:#ffe9e8;
    color:#c33a32
}
@media(max-width:1200px) {
    .d47-kpis {
        grid-template-columns:repeat(3,1fr)
    }
    .d47-ready-grid,.d47-quarter-grid {
        grid-template-columns:repeat(2,1fr)
    }
}
@media(max-width:780px) {
    .d47-grid2 {
        grid-template-columns:1fr
    }
    .d47-kpis,.d47-kpis.compact {
        grid-template-columns:1fr 1fr
    }
    .d47-ready-grid,.d47-quarter-grid {
        grid-template-columns:1fr
    }
    .d47-form {
        grid-template-columns:1fr
    }
    .d47-hero {
        align-items:flex-start;
        flex-direction:column
    }
}
/* ===== 第三端 13-15 深度版 V4.8 ===== */
.deep48 {
    --x:#182235;
    --muted:#7c899c;
    --line:#e5eaf0;
    --soft:#f7f9fb
}
.d48-hero {
    margin:20px 0 8px;
    padding:28px 30px;
    border-radius:24px;
    background:linear-gradient(135deg,#162437,#33465b);
    color:#fff;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px
}
.d48-hero.evidence {
    background:linear-gradient(135deg,#152b2d,#315557)
}
.d48-hero.files {
    background:linear-gradient(135deg,#25243a,#4a466a)
}
.d48-hero.policy {
    background:linear-gradient(135deg,#30251f,#654536)
}
.d48-hero small {
    letter-spacing:2px;
    color:#ffb38d
}
.d48-hero h2 {
    font-size:29px;
    margin:7px 0
}
.d48-hero p {
    margin:0;
    color:#d9e0e8
}
.d48-hero-mark {
    width:72px;
    height:72px;
    border:1px solid rgba(255,255,255,.25);
    border-radius:20px;
    display:grid;
    place-items:center;
    font-size:28px;
    font-weight:800
}
.d48-hero-mark span {
    display:block;
    font-size:9px;
    letter-spacing:1px
}
.d48-nav {
    display:flex;
    gap:8px;
    overflow:auto;
    padding:12px 0 16px
}
.d48-nav a {
    white-space:nowrap;
    text-decoration:none;
    color:#536176;
    border:1px solid var(--line);
    background:#fff;
    border-radius:12px;
    padding:10px 13px
}
.d48-nav a:hover {
    color:#f46a2d;
    border-color:#f4a27e
}
.d48-kpis {
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px
}
.d48-kpis article {
    padding:17px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:17px
}
.d48-kpis small,.d48-kpis span {
    display:block;
    color:var(--muted);
    font-size:12px
}
.d48-kpis b {
    display:block;
    font-size:25px;
    margin:7px 0
}
.d48-card {
    background:#fff;
    border:1px solid var(--line);
    border-radius:21px;
    padding:21px;
    margin:15px 0
}
.d48-card h3 {
    margin:4px 0 15px
}
.d48-head {
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:center
}
.d48-head button,.d48-form button,.d48-table button {
    border:0;
    background:#1b283a;
    color:#fff;
    border-radius:10px;
    padding:10px 13px;
    cursor:pointer
}
.d48-grid {
    display:grid;
    grid-template-columns:1.25fr .75fr;
    gap:15px
}
.d48-chain {
    display:flex;
    gap:9px;
    align-items:center;
    overflow:auto;
    padding:12px 0
}
.d48-chain a,.d48-chain article {
    min-width:115px;
    text-decoration:none;
    color:#243247;
    background:#f7f9fb;
    border:1px solid var(--line);
    border-radius:15px;
    padding:14px;
    text-align:center
}
.d48-chain b,.d48-chain strong {
    display:block;
    margin-top:8px;
    font-size:21px
}
.d48-chain i {
    font-style:normal;
    color:#f46a2d;
    font-weight:800
}
.d48-chain.big article {
    min-width:145px
}
.d48-chain.big article small {
    display:block;
    color:#8b97a8
}
.d48-domain {
    display:grid;
    gap:10px
}
.d48-domain a {
    display:flex;
    flex-direction:column;
    gap:6px;
    text-decoration:none;
    color:#243247;
    padding:15px;
    border:1px solid var(--line);
    border-radius:14px
}
.d48-domain span,.d48-risk p,.d48-note {
    color:var(--muted);
    font-size:13px
}
.d48-risk {
    padding:12px 0;
    border-bottom:1px solid #edf0f4
}
.d48-risk span,.d48-pill {
    float:right;
    background:#fff2e9;
    color:#b85222;
    border-radius:999px;
    padding:5px 9px;
    font-size:11px
}
.d48-table {
    width:100%;
    border-collapse:collapse;
    font-size:13px
}
.d48-table th,.d48-table td {
    text-align:left;
    padding:11px;
    border-bottom:1px solid #edf0f4;
    vertical-align:top
}
.d48-table th {
    background:#f8fafc;
    color:#748197
}
.d48-table td small {
    display:block;
    color:#8c98a8;
    margin-top:4px
}
.d48-table form {
    margin:0
}
.d48-table button.mini {
    font-size:11px;
    padding:7px 9px
}
.d48-form {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:11px
}
.d48-form label {
    display:flex;
    flex-direction:column;
    gap:6px;
    color:#69788d;
    font-size:13px
}
.d48-form input,.d48-form select {
    padding:11px;
    border:1px solid #dfe5ec;
    border-radius:10px
}
.d48-form .wide,.d48-form button {
    grid-column:1/-1
}
.d48-types {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:9px
}
.d48-types b {
    padding:18px 8px;
    text-align:center;
    background:#f7f9fb;
    border-radius:13px
}
.d48-match {
    display:flex;
    justify-content:space-between;
    padding:13px 0;
    border-bottom:1px solid #edf0f4
}
.d48-match small {
    display:block;
    color:#8b97a8
}
.d48-match strong {
    font-size:20px;
    color:#f46a2d
}
.d48-steps {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    align-items:center
}
.d48-steps span,.d48-package {
    padding:11px;
    background:#f7f9fb;
    border-radius:11px
}
.d48-steps i {
    font-style:normal;
    color:#f46a2d
}
.d48-ai {
    padding:20px;
    background:#f7f9fb;
    border-radius:16px;
    line-height:1.8
}
.d48-ai a {
    display:inline-block;
    margin-right:8px;
    color:#f46a2d
}
.d48-empty {
    padding:25px;
    text-align:center;
    color:#8995a5;
    background:#f8fafc;
    border-radius:14px
}
@media(max-width:1200px) {
    .d48-kpis {
        grid-template-columns:repeat(3,1fr)
    }
}
@media(max-width:800px) {
    .d48-grid {
        grid-template-columns:1fr
    }
    .d48-kpis {
        grid-template-columns:1fr 1fr
    }
    .d48-form {
        grid-template-columns:1fr
    }
    .d48-hero {
        align-items:flex-start
    }
    .d48-hero-mark {
        display:none
    }
}
/* Enterprise 13-15 V4.8.1 deep */
.d481-score {
    display:flex;
    align-items:baseline;
    gap:4px;
    margin:18px 0
}
.d481-score strong {
    font-size:56px;
    line-height:1;
    color:#182235
}
.d481-score span {
    font-size:18px;
    color:#8793a3
}
.d481-score p {
    margin-left:18px;
    color:#748197
}
.d481-score-mini {
    padding:9px 13px;
    border-radius:999px;
    background:#f7f9fb;
    color:#657387
}
.d481-score-mini b {
    font-size:18px;
    color:#f46a2d
}
.d481-link {
    display:inline-block;
    color:#e95d21;
    text-decoration:none;
    font-weight:700;
    font-size:12px;
    margin-right:8px
}
.d481-btn {
    display:inline-block;
    text-decoration:none;
    background:#1b283a;
    color:#fff!important;
    border-radius:10px;
    padding:10px 13px;
    font-size:12px
}
.d481-btn.secondary {
    background:#eef2f6;
    color:#324258!important
}
.d481-history {
    padding:11px 0;
    border-bottom:1px solid #edf0f4;
    display:grid;
    grid-template-columns:1fr auto;
    gap:4px 12px
}
.d481-history strong {
    color:#f46a2d
}
.d481-history small {
    grid-column:1/-1;
    color:#8b97a8
}
.d481-relations {
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:9px;
    align-items:center
}
.d481-relations span {
    padding:11px;
    background:#f7f9fb;
    border-radius:11px
}
.d481-relations i {
    font-style:normal;
    color:#f46a2d
}
.d481-ai-note {
    padding:18px;
    border-radius:15px;
    background:#f7f9fb
}
.d481-cat {
    display:grid;
    grid-template-columns:1fr auto;
    gap:4px 12px;
    padding:11px 0;
    border-bottom:1px solid #edf0f4
}
.d481-cat small {
    grid-column:1/-1;
    color:#8995a5
}
.d481-ref {
    display:grid;
    grid-template-columns:1fr auto;
    gap:4px 10px;
    padding:10px 0;
    border-bottom:1px solid #edf0f4
}
.d481-ref small {
    grid-column:1/-1;
    color:#8995a5
}
.d481-textarea {
    width:100%;
    box-sizing:border-box;
    border:1px solid #dfe5ec;
    border-radius:10px;
    padding:12px;
    font:inherit;
    resize:vertical
}
.d481-policy {
    display:flex;
    justify-content:space-between;
    gap:18px;
    padding:15px 0;
    border-bottom:1px solid #edf0f4;
    text-decoration:none;
    color:#243247
}
.d481-policy small {
    display:block;
    color:#8b97a8;
    margin-top:4px
}
.d481-policy p {
    margin:7px 0 0;
    color:#6f7e91;
    font-size:12px
}
.d481-policy strong {
    font-size:24px;
    color:#f46a2d;
    white-space:nowrap
}
.d481-readiness {
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
    padding-bottom:16px
}
.d481-readiness span {
    color:#748197
}
.d481-readiness b {
    font-size:20px
}
.d481-gap {
    padding:16px;
    background:#f8fafc;
    border-radius:14px;
    margin-bottom:12px
}
.d481-gap b {
    color:#f46a2d
}
.d481-gap small {
    display:block;
    color:#8995a5
}
.d481-advisor {
    padding:14px 0;
    border-bottom:1px solid #edf0f4
}
.d481-advisor small,.d481-advisor b {
    display:block
}
.d481-advisor small {
    color:#8995a5
}
.d481-advisor b {
    margin:7px 0
}
.d481-advisor p {
    margin:0;
    color:#59687c;
    line-height:1.7
}
@media(max-width:800px) {
    .d481-score {
        display:block
    }
    .d481-score p {
        margin-left:0
    }
    .d481-relations {
        grid-template-columns:1fr
    }
    .d481-relations i {
        text-align:center
    }
    .d481-policy {
        display:block
    }
    .d481-policy strong {
        display:block;
        margin-top:8px
    }
}
/* 第四端：企业员工协同端 */
.collaboration-sidebar {
    border-right-color:#dfe9e7;
    background:linear-gradient(180deg,#fff 0%,#f8fcfb 100%)
}
.collaboration-sidebar .brand-mark,.collaboration-sidebar .nav a.active .nav-number {
    background:linear-gradient(135deg,#0f9f79,#43c49f)
}
.collaboration-sidebar .nav a.active {
    color:#087b5f;
    background:#ebf9f5;
    border-left-color:#159f7b
}
.collab-hero {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    margin-bottom:18px;
    padding:28px 30px;
    border-radius:22px;
    background:linear-gradient(125deg,#123f38,#167d68 65%,#ff7a2f);
    color:#fff;
    box-shadow:0 18px 40px rgba(20,96,80,.16)
}
.collab-hero span {
    font-size:12px;
    letter-spacing:2px;
    color:#b8f1df
}
.collab-hero h2 {
    margin:8px 0;
    font-size:26px
}
.collab-hero p {
    margin:0;
    color:#d8f2eb
}
.collab-hero .primary {
    white-space:nowrap;
    background:#fff;
    color:#13745f
}
.collab-kpis {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px
}
.collab-kpis article {
    padding:18px;
    border:1px solid #e2ece9;
    border-radius:16px;
    background:#fff;
    box-shadow:0 10px 25px rgba(30,73,65,.05)
}
.collab-kpis span {
    display:block;
    color:#70857f;
    font-size:12px
}
.collab-kpis strong {
    display:block;
    margin-top:8px;
    font-size:25px;
    color:#173f37
}
.collab-kpis.compact {
    grid-template-columns:repeat(4,minmax(0,1fr))
}
.collab-panel {
    padding:22px
}
.collab-task-list a {
    display:grid;
    grid-template-columns:minmax(250px,1fr) 90px 260px;
    gap:15px;
    align-items:center;
    padding:15px 4px;
    border-bottom:1px solid #edf2f0;
    color:#283d38;
    text-decoration:none
}
.collab-task-list b,.collab-task-list small {
    display:block
}
.collab-task-list small {
    margin-top:4px;
    color:#84958f
}
.collab-task-list span {
    color:#0d8a6b
}
.collab-task-list em {
    text-align:right;
    color:#7d8d88;
    font-style:normal
}
.collab-data-table {
    overflow:auto
}
.collab-data-table table {
    min-width:1000px
}
.collab-action-form {
    display:flex;
    gap:6px;
    align-items:center;
    min-width:330px
}
.collab-action-form input {
    min-width:150px;
    padding:8px;
    border:1px solid #e0e8e5;
    border-radius:8px
}
.collab-action-form button {
    padding:8px 10px
}
.collab-profile {
    display:grid;
    grid-template-columns:360px 1fr;
    gap:18px;
    margin-bottom:18px
}
.collab-profile>.panel {
    padding:22px
}
.collab-profile dl {
    display:grid;
    grid-template-columns:100px 1fr;
    gap:12px;
    margin:18px 0 0
}
.collab-profile dt {
    color:#7f8e89
}
.collab-profile dd {
    margin:0;
    font-weight:700
}
.collab-message {
    display:flex;
    justify-content:space-between;
    gap:15px;
    padding:12px 0;
    border-bottom:1px solid #edf2f0
}
.collab-message span {
    color:#879690;
    font-size:12px
}
@media(max-width:1250px) {
    .collab-kpis {
        grid-template-columns:repeat(3,1fr)
    }
}
@media(max-width:850px) {
    .collab-hero {
        align-items:flex-start;
        flex-direction:column
    }
    .collab-kpis,.collab-kpis.compact {
        grid-template-columns:repeat(2,1fr)
    }
    .collab-profile {
        grid-template-columns:1fr
    }
    .collab-task-list a {
        grid-template-columns:1fr
    }
    .collab-task-list em {
        text-align:left
    }
}
@media(max-width:520px) {
    .collab-kpis,.collab-kpis.compact {
        grid-template-columns:1fr
    }
}
.collab-ai-result {
    padding:14px 0;
    border-bottom:1px solid #edf2f0
}
.collab-ai-result b,.collab-ai-result span {
    display:block
}
.collab-ai-result span {
    margin-top:4px;
    color:#84958f;
    font-size:12px
}
.collab-ai-result details {
    margin-top:10px
}
.collab-ai-result summary {
    cursor:pointer;
    color:#0b8768
}
.collab-ai-result p {
    line-height:1.8;
    white-space:normal
}
.collab-subnav {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
    gap:10px;
    margin-bottom:18px
}
.collab-subnav a {
    padding:15px 17px;
    border:1px solid #dfeae6;
    border-radius:13px;
    background:#fff;
    color:#23483f;
    text-decoration:none
}
.collab-subnav strong,.collab-subnav span {
    display:block
}
.collab-subnav span {
    margin-top:5px;
    color:#198468;
    font-size:12px
}
.collab-quota {
    display:grid;
    grid-template-columns:repeat(3,minmax(150px,1fr));
    gap:16px;
    margin-bottom:22px;
    padding:22px;
    background:linear-gradient(135deg,#fff7f1,#fff);
    border:1px solid #f4ded1;
    border-radius:20px
}
.collab-quota div {
    padding:15px 18px;
    background:#fff;
    border-radius:14px
}
.collab-quota span {
    display:block;
    color:#94796b;
    font-size:13px
}
.collab-quota strong {
    display:block;
    margin-top:7px;
    font-size:28px;
    color:#ff6422
}
.collab-quota p {
    grid-column:1/-1;
    margin:0;
    color:#806d63
}
.permission-tags {
    max-width:310px
}
.permission-tags span {
    display:inline-block;
    margin:2px;
    padding:4px 8px;
    border-radius:999px;
    background:#fff2e9;
    color:#d94e12;
    font-size:12px
}
.permission-tags em {
    color:#a89991
}
.status-pill {
    display:inline-flex;
    padding:5px 10px;
    border-radius:999px;
    font-size:12px
}
.status-pill.ok {
    background:#e7f8f1;
    color:#168a61
}
.status-pill.off {
    background:#f2f2f2;
    color:#888
}
.collab-account-form {
    display:grid;
    gap:20px
}
.form-section {
    padding:26px
}
.section-heading {
    margin-bottom:20px
}
.section-heading h3 {
    margin:0 0 6px
}
.section-heading p {
    margin:0;
    color:#8e7e75
}
.permission-matrix {
    border:1px solid #f0ded4;
    border-radius:16px;
    overflow:hidden
}
.matrix-head,.matrix-row {
    display:grid;
    grid-template-columns:minmax(240px,1fr) 180px 220px;
    align-items:center;
    gap:12px;
    padding:14px 20px
}
.matrix-head {
    background:#fff7f2;
    color:#9c7c6c;
    font-size:13px
}
.matrix-row+.matrix-row {
    border-top:1px solid #f4e7df
}
.matrix-row label {
    display:flex;
    align-items:center;
    gap:8px
}
.form-submit-bar {
    position:sticky;
    bottom:0;
    z-index:5;
    display:flex;
    justify-content:flex-end;
    gap:12px;
    padding:16px 20px;
    background:rgba(255,255,255,.94);
    border:1px solid #f1ded3;
    border-radius:16px;
    box-shadow:0 -8px 30px rgba(80,45,24,.08);
    backdrop-filter:blur(8px)
}
@media(max-width:900px) {
    .collab-quota {
        grid-template-columns:1fr
    }
    .collab-quota p {
        grid-column:auto
    }
    .matrix-head,.matrix-row {
        grid-template-columns:1fr 1fr
    }
    .matrix-head span:first-child,.matrix-row strong {
        grid-column:1/-1
    }
}
.task-flow-actions {
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    margin:0 0 18px;
    padding:16px 18px;
    background:#fff7f1;
    border:1px solid #f1d9ca;
    border-radius:16px
}
.task-flow-actions span {
    color:#8c7467;
    font-size:13px
}
.workflow-guide {
    padding:26px
}
.workflow-guide ol {
    margin:18px 0 0;
    padding-left:24px
}
.workflow-guide li {
    padding:8px 0;
    color:#6f5d53
}
.review-inline {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    min-width:360px
}
.review-inline input {
    min-width:170px
}
.two-column-layout {
    display:grid;
    grid-template-columns:minmax(0,2fr) minmax(280px,1fr);
    gap:20px;
    margin-bottom:20px
}
@media(max-width:1000px) {
    .two-column-layout {
        grid-template-columns:1fr
    }
    .review-inline {
        min-width:260px
    }
}
.collab-personal-hero {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:28px;
    margin-bottom:22px;
    padding:30px 34px;
    border-radius:24px;
    color:#fff;
    background:linear-gradient(130deg,#ff742f,#ff4d0b);
    box-shadow:0 18px 40px rgba(255,92,24,.22)
}
.collab-personal-hero span {
    font-size:13px;
    letter-spacing:1px
}
.collab-personal-hero h2 {
    margin:10px 0 8px;
    font-size:28px
}
.collab-personal-hero p {
    margin:0;
    color:#fff3ec
}
.hero-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap
}
.collab-personal-hero .primary {
    white-space:nowrap;
    background:#fff;
    color:#ef5215
}
.collab-personal-hero .primary.light {
    background:rgba(255,255,255,.17);
    color:#fff;
    border:1px solid rgba(255,255,255,.45)
}
.personal-kpis {
    display:grid;
    grid-template-columns:repeat(4,minmax(150px,1fr));
    gap:14px;
    margin-bottom:22px
}
.personal-kpis a {
    padding:18px 20px;
    color:#382b25;
    background:#fff;
    border:1px solid #f0e2da;
    border-radius:18px;
    box-shadow:0 8px 24px rgba(72,43,28,.06);
    transition:.2s
}
.personal-kpis a:hover {
    transform:translateY(-2px);
    border-color:#ff9c70
}
.personal-kpis span,.personal-kpis small {
    display:block
}
.personal-kpis span {
    color:#927b70;
    font-size:13px
}
.personal-kpis strong {
    display:block;
    margin:7px 0 4px;
    font-size:27px
}
.personal-kpis small {
    color:#ad9c94
}
.personal-kpis .danger {
    border-color:#ffb8b2;
    background:#fff4f3
}
.personal-kpis .danger strong {
    color:#e3332d
}
.dashboard-work-grid {
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(300px,.7fr);
    gap:20px;
    margin-bottom:20px
}
.personal-task-panel,.personal-side-panel,.personal-projects {
    padding:24px
}
.priority-task-list {
    display:grid;
    gap:10px
}
.priority-task-list article {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:15px;
    border:1px solid #f1e5de;
    border-radius:15px
}
.priority-task-list article.overdue {
    border-left:4px solid #e53b35;
    background:#fff7f6
}
.task-main {
    display:grid;
    gap:6px;
    min-width:0;
    color:#372b25
}
.task-main b {
    font-size:15px
}
.task-main small {
    color:#9a877d
}
.task-flags {
    display:flex;
    align-items:center;
    gap:7px;
    color:#89766c;
    font-size:12px
}
.task-flags span {
    padding:3px 8px;
    border-radius:999px;
    background:#f7f1ed
}
.task-flags .priority.urgent,.overdue-flag {
    color:#d42d27!important;
    background:#ffe5e3!important
}
.task-flags .priority.high {
    color:#d96b00;
    background:#fff0d8
}
.task-quick {
    display:flex;
    gap:7px;
    align-items:center;
    flex-shrink:0
}
.task-quick form {
    margin:0
}
.task-quick button {
    white-space:nowrap
}
.continue-card {
    display:grid;
    gap:8px;
    padding:18px;
    color:#40312a;
    border-radius:16px;
    background:linear-gradient(135deg,#fff1e7,#fff)
}
.continue-card span,.continue-card small {
    color:#927e73
}
.continue-card em {
    color:#ef5b1c;
    font-style:normal;
    font-weight:700
}
.recent-heading {
    margin-top:24px
}
.recent-work {
    display:grid;
    gap:8px
}
.recent-work a {
    display:grid;
    gap:4px;
    padding:11px 0;
    color:#44342d;
    border-bottom:1px solid #f2e7e0
}
.recent-work span {
    color:#9b8980;
    font-size:12px
}
.project-progress-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(280px,1fr));
    gap:14px
}
.project-progress-grid>a {
    display:grid;
    grid-template-columns:minmax(160px,1fr) 1fr 1fr;
    align-items:center;
    gap:20px;
    padding:17px;
    color:#42342d;
    border:1px solid #f1e3dc;
    border-radius:16px
}
.project-progress-grid div span,.project-progress-grid label {
    display:block;
    color:#8e7b72;
    font-size:12px
}
.project-progress-grid label strong {
    float:right;
    color:#40312b
}
.project-progress-grid i {
    display:block;
    clear:both;
    height:6px;
    margin-top:8px;
    overflow:hidden;
    background:#f1e8e3;
    border-radius:999px
}
.project-progress-grid u {
    display:block;
    height:100%;
    background:#ff6b2c;
    text-decoration:none
}
.project-progress-grid u.green {
    background:#2dbb84
}
.collab-task-list a.unread {
    border-left:4px solid #ff6422;
    background:#fff8f4
}
.task-flow-actions {
    box-shadow:0 8px 22px rgba(87,49,27,.06)
}
@media(max-width:1200px) {
    .personal-kpis {
        grid-template-columns:repeat(2,1fr)
    }
    .dashboard-work-grid {
        grid-template-columns:1fr
    }
    .project-progress-grid {
        grid-template-columns:1fr
    }
}
@media(max-width:700px) {
    .collab-personal-hero {
        align-items:flex-start;
        flex-direction:column;
        padding:24px
    }
    .personal-kpis {
        grid-template-columns:1fr 1fr
    }
    .priority-task-list article {
        align-items:flex-start;
        flex-direction:column
    }
    .project-progress-grid>a {
        grid-template-columns:1fr
    }
    .task-quick {
        width:100%
    }
}
.task-flow-strip {
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    margin-bottom:18px;
    padding:15px 20px;
    background:#fff8f3;
    border:1px solid #f2ded2;
    border-radius:16px
}
.task-flow-strip span {
    padding:7px 12px;
    background:#fff;
    border-radius:999px;
    font-weight:700
}
.task-flow-strip i {
    color:#ff692b
}
.task-flow-strip em {
    margin-left:auto;
    color:#a36f57;
    font-size:13px
}
.task-filter-tabs {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:18px
}
.task-filter-tabs a {
    display:flex;
    align-items:center;
    gap:7px;
    padding:9px 14px;
    color:#725f55;
    background:#fff;
    border:1px solid #eaded8;
    border-radius:999px
}
.task-filter-tabs a.active {
    color:#fff;
    background:#ff6422;
    border-color:#ff6422
}
.task-filter-tabs b {
    min-width:20px;
    padding:1px 6px;
    text-align:center;
    background:rgba(0,0,0,.07);
    border-radius:999px
}
.task-board {
    display:grid;
    grid-template-columns:repeat(2,minmax(360px,1fr));
    gap:16px
}
.task-engine-card {
    padding:20px;
    background:#fff;
    border:1px solid #eee1da;
    border-radius:20px;
    box-shadow:0 9px 28px rgba(70,42,27,.06)
}
.task-engine-card.overdue {
    border-left:5px solid #df3933;
    background:#fff8f7
}
.task-engine-head,.task-engine-actions {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px
}
.task-engine-head>div {
    display:flex;
    gap:6px
}
.task-engine-head span {
    padding:4px 8px;
    border-radius:999px;
    font-size:12px
}
.task-engine-head .urgent,.task-engine-head .escalated {
    color:#c82e28;
    background:#ffe4e1
}
.task-engine-head .high {
    color:#c66a00;
    background:#fff0d7
}
.task-status {
    color:#775e52;
    background:#f5eee9
}
.task-status.submitted {
    color:#176fba;
    background:#eaf5ff
}
.task-status.returned {
    color:#ce302a;
    background:#ffeceb
}
.task-status.approved,.task-status.completed {
    color:#158057;
    background:#e7f8f1
}
.task-engine-title {
    display:block;
    margin:15px 0;
    color:#362a24
}
.task-engine-title h3 {
    margin:0 0 7px
}
.task-engine-title p {
    margin:0;
    color:#8c7b72;
    display:-webkit-box;
    overflow:hidden;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical
}
.task-engine-meta {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    padding:14px 0;
    border-top:1px solid #f3e9e4;
    border-bottom:1px solid #f3e9e4
}
.task-engine-meta span {
    color:#7b6960;
    font-size:13px
}
.task-engine-meta b {
    display:block;
    margin-bottom:4px;
    color:#a28e83;
    font-size:12px
}
.acceptance {
    margin:12px 0;
    padding:11px 13px;
    background:#fff8f2;
    border-radius:12px
}
.acceptance p {
    margin:5px 0 0;
    color:#765f53;
    font-size:13px
}
.task-engine-actions {
    justify-content:flex-end;
    margin-top:14px
}
.task-engine-actions form {
    margin:0
}
.task-detail-summary {
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:14px;
    margin-bottom:18px;
    padding:20px
}
.task-detail-summary div {
    padding:12px;
    background:#fff8f4;
    border-radius:13px
}
.task-detail-summary span,.task-detail-summary strong {
    display:block
}
.task-detail-summary span {
    color:#a08b80;
    font-size:12px
}
.task-detail-summary strong {
    margin-top:5px
}
.task-detail-grid {
    display:grid;
    grid-template-columns:minmax(0,1.6fr) 340px;
    gap:18px
}
.task-detail-grid main,.task-detail-grid aside {
    display:grid;
    align-content:start;
    gap:18px
}
.task-detail-grid .panel {
    padding:22px
}
.task-requirement h3:not(:first-child) {
    margin-top:22px
}
.return-opinion {
    margin-top:18px;
    padding:14px;
    color:#b82e28;
    background:#fff0ef;
    border-left:4px solid #e7433c
}
.task-submit-box {
    border:1px solid #ffc4a8
}
.attachment-list,.comment-list,.member-list,.child-task-list {
    display:grid;
    gap:9px
}
.attachment-list article,.member-list article,.child-task-list a {
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:11px 0;
    border-bottom:1px solid #f2e8e3;
    color:#49382f
}
.attachment-list span,.member-list span,.child-task-list span {
    color:#9b887e;
    font-size:12px
}
.comment-form {
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px
}
.comment-form textarea {
    min-height:72px
}
.comment-list {
    margin-top:16px
}
.comment-list article {
    padding:13px;
    background:#faf7f5;
    border-radius:12px
}
.comment-list article>div {
    display:flex;
    justify-content:space-between
}
.comment-list span {
    color:#aa9890;
    font-size:12px
}
.comment-list p {
    margin:8px 0 0
}
.task-timeline article {
    position:relative;
    display:grid;
    grid-template-columns:14px 1fr;
    gap:9px;
    padding-bottom:18px
}
.task-timeline i {
    width:10px;
    height:10px;
    margin-top:4px;
    background:#ff6a2a;
    border-radius:50%
}
.task-timeline article:not(:last-child):before {
    content:'';
    position:absolute;
    left:4px;
    top:15px;
    bottom:1px;
    width:2px;
    background:#f0ded5
}
.task-timeline b,.task-timeline p,.task-timeline span {
    display:block;
    margin:0
}
.task-timeline p {
    margin:4px 0;
    color:#806e64
}
.task-timeline span {
    color:#aa9990;
    font-size:12px
}
.template-chip-list {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-bottom:14px
}
.template-chip-list article {
    padding:13px;
    background:#fff8f3;
    border-radius:13px
}
.template-chip-list span {
    display:block;
    color:#9b8275;
    font-size:12px
}
.template-chip-list p {
    margin:6px 0 0
}
.task-template-section {
    margin-bottom:20px
}
@media(max-width:1200px) {
    .task-board {
        grid-template-columns:1fr
    }
    .task-detail-summary {
        grid-template-columns:repeat(3,1fr)
    }
    .task-detail-grid {
        grid-template-columns:1fr
    }
    .template-chip-list {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:700px) {
    .task-engine-meta {
        grid-template-columns:1fr 1fr
    }
    .task-detail-summary {
        grid-template-columns:1fr 1fr
    }
    .task-flow-strip em {
        margin-left:0
    }
    .template-chip-list {
        grid-template-columns:1fr
    }
    .comment-form {
        grid-template-columns:1fr
    }
}
.enterprise-data-overview {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    margin-bottom:20px
}
.enterprise-data-overview article {
    padding:19px;
    background:#fff;
    border:1px solid #eee1da;
    border-radius:18px
}
.enterprise-data-overview span,.enterprise-data-overview small {
    display:block;
    color:#968176;
    font-size:12px
}
.enterprise-data-overview strong {
    display:block;
    margin:8px 0;
    font-size:20px
}
.enterprise-data-overview i {
    display:block;
    height:7px;
    overflow:hidden;
    background:#f1e8e3;
    border-radius:99px
}
.enterprise-data-overview u {
    display:block;
    height:100%;
    background:linear-gradient(90deg,#ff6a29,#35bd86);
    text-decoration:none
}
.enterprise-field-group {
    margin-bottom:18px;
    padding:24px
}
.enterprise-field-grid {
    display:grid;
    grid-template-columns:grid-template-columns:repeat(3,minmax(240px,1fr));
    gap:12px
}
.enterprise-field-card {
    padding:16px;
    border:1px solid #f0e3dc;
    border-radius:15px;
    background:#fff
}
.enterprise-field-card>div {
    display:flex;
    justify-content:space-between;
    gap:10px
}
.enterprise-field-card span {
    color:#8e786d;
    font-size:13px
}
.enterprise-field-card em {
    color:#ae9b91;
    font-size:11px;
    font-style:normal
}
.enterprise-field-card>strong {
    display:block;
    margin-top:10px;
    white-space:pre-wrap
}
.enterprise-field-card.masked {
    background:#faf8f7
}
.enterprise-field-card.edit {
    border-color:#ffc4a8;
    background:#fffaf6
}
.enterprise-field-card details {
    margin-top:12px
}
.enterprise-field-card summary {
    color:#ef5b1c;
    cursor:pointer
}
.enterprise-field-card form {
    display:grid;
    gap:9px;
    margin-top:10px
}
.enterprise-field-card textarea {
    min-height:70px
}
.change-request-list,.change-review-list {
    display:grid;
    gap:14px
}
.change-request-list article {
    padding:16px;
    border:1px solid #eee0d9;
    border-radius:15px
}
.change-request-list article>div {
    display:flex;
    justify-content:space-between
}
.change-request-list article.pending {
    border-left:4px solid #f39a22
}
.change-request-list article.approved {
    border-left:4px solid #2daf7b
}
.change-request-list article.rejected {
    border-left:4px solid #dc413a
}
.change-request-list dl,.change-review-list dl {
    display:grid;
    grid-template-columns:130px 1fr;
    gap:7px 12px
}
.change-request-list dt,.change-review-list dt {
    color:#9a877e
}
.change-request-list dd,.change-review-list dd {
    margin:0
}
.change-review-summary {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-bottom:18px
}
.change-review-summary article {
    padding:18px;
    background:#fff;
    border:1px solid #eee0d9;
    border-radius:16px
}
.change-review-summary span {
    color:#937c71
}
.change-review-summary strong {
    display:block;
    margin-top:7px;
    font-size:26px
}
.change-review-list article {
    padding:22px
}
.change-review-list header {
    display:flex;
    justify-content:space-between
}
.change-review-list header span {
    color:#ef5c1c
}
.change-review-list header h3 {
    margin:5px 0
}
.before-after {
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:14px;
    margin:16px 0
}
.before-after>div {
    padding:15px;
    background:#faf7f5;
    border-radius:13px
}
.before-after span {
    color:#9b877c;
    font-size:12px
}
.before-after p {
    margin:7px 0 0;
    white-space:pre-wrap
}
.before-after i {
    color:#ff6422;
    font-style:normal
}
.review-result {
    padding:12px;
    background:#f8f5f3;
    border-radius:12px
}
@media(max-width:1100px) {
    .enterprise-data-overview {
        grid-template-columns:1fr 1fr
    }
    .enterprise-field-grid {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:700px) {
    .enterprise-data-overview,.enterprise-field-grid,.change-review-summary {
        grid-template-columns:1fr
    }
    .before-after {
        grid-template-columns:1fr
    }
    .before-after i {
        transform:rotate(90deg);
        text-align:center
    }
}
/* 第四端 V4.5：人事证据链与财务年度协同 */
.hr-kpis,.finance-kpis {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
    gap:14px;
    margin:0 0 20px
}
.hr-kpis article,.finance-kpis article {
    min-width:0;
    padding:20px;
    background:#fff;
    border:1px solid #eee2db;
    border-radius:18px;
    box-shadow:0 8px 24px rgba(63,42,30,.05)
}
.hr-kpis span,.finance-kpis span {
    display:block;
    color:#917e73;
    font-size:12px
}
.hr-kpis strong,.finance-kpis strong {
    display:block;
    margin-top:8px;
    color:#30251f;
    font-size:25px;
    word-break:break-word
}
.hr-kpis article.danger {
    border-color:#ffb7b0;
    background:#fff5f4
}
.hr-kpis article.danger strong {
    color:#db3731
}
.hr-anomaly-panel,.hr-matrix,.snapshot-panel,.difference-panel,.finance-issues {
    margin-bottom:20px;
    overflow:hidden
}
.hr-anomaly-panel>.section-heading,.hr-matrix>.section-heading,.snapshot-panel>.section-heading,.difference-panel>.section-heading,.finance-issues>.section-heading {
    margin:0
}
.section-heading form {
    margin-left:auto
}
.anomaly-list,.snapshot-list,.issue-list {
    display:grid;
    gap:12px;
    padding:20px 26px
}
.anomaly-list article {
    display:grid;
    grid-template-columns:140px 1fr 1fr;
    gap:16px;
    padding:14px 16px;
    border-left:4px solid #f3a22c;
    border-radius:12px;
    background:#fffaf1
}
.anomaly-list article.danger {
    border-left-color:#dc3e38;
    background:#fff4f3
}
.anomaly-list em {
    color:#8b7569;
    font-style:normal
}
.hr-matrix {
    overflow:auto
}
.hr-matrix table {
    min-width:1060px
}
.hr-matrix td strong,.hr-matrix td small {
    display:block
}
.hr-matrix td small {
    margin-top:4px;
    color:#a18e84
}
.matrix-check {
    display:inline-flex;
    padding:5px 9px;
    border-radius:999px;
    font-size:12px
}
.matrix-check.ok {
    color:#14855d;
    background:#e9f8f2
}
.matrix-check.missing {
    color:#cb3832;
    background:#ffeded
}
.snapshot-list article {
    display:grid;
    grid-template-columns:120px 1fr auto;
    gap:15px;
    padding:14px 16px;
    border:1px solid #eee4df;
    border-radius:13px
}
.snapshot-list small {
    color:#9b8b83
}
.difference-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    padding:22px
}
.difference-grid>article {
    overflow:hidden;
    border:1px solid #ebe2dd;
    border-top:4px solid #2daf7b;
    border-radius:16px;
    background:#fff
}
.difference-grid>article.warning {
    border-top-color:#e99a24
}
.difference-grid>article.danger {
    border-top-color:#dc4039
}
.difference-grid header,.difference-grid footer {
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:13px 16px;
    background:#fff9f6
}
.difference-grid header span {
    font-size:12px;
    color:#8d796e
}
.difference-grid>article>div {
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:12px;
    align-items:center;
    padding:18px 16px
}
.difference-grid p {
    margin:0
}
.difference-grid small,.difference-grid strong {
    display:block
}
.difference-grid strong {
    margin-top:7px
}
.difference-grid i {
    color:#b19e94;
    font-size:12px;
    font-style:normal
}
.difference-grid footer {
    align-items:center
}
.difference-grid footer a {
    color:#ed5b1e;
    font-weight:700
}
.issue-list article {
    padding:18px;
    border:1px solid #eee2dc;
    border-left:4px solid #ef9b25;
    border-radius:15px
}
.issue-list article.resolved,.issue-list article.dismissed {
    border-left-color:#2cad7a
}
.issue-list header {
    display:flex;
    justify-content:space-between;
    gap:15px
}
.issue-list form {
    display:grid;
    grid-template-columns:1fr auto auto auto;
    gap:9px;
    margin-top:13px
}
.issue-list textarea {
    min-height:66px
}
.issue-list button {
    align-self:end;
    white-space:nowrap
}
@media(max-width:980px) {
    .difference-grid {
        grid-template-columns:1fr
    }
    .anomaly-list article {
        grid-template-columns:1fr
    }
    .issue-list form {
        grid-template-columns:1fr 1fr
    }
    .issue-list textarea {
        grid-column:1/-1
    }
    .snapshot-list article {
        grid-template-columns:1fr
    }
}
@media(max-width:600px) {
    .hr-kpis,.finance-kpis {
        grid-template-columns:1fr 1fr
    }
    .difference-grid {
        padding:14px
    }
    .difference-grid>article>div {
        grid-template-columns:1fr
    }
    .issue-list form {
        grid-template-columns:1fr
    }
    .issue-list textarea {
        grid-column:auto
    }
    .section-heading {
        align-items:flex-start;
        flex-wrap:wrap
    }
    .section-heading form {
        margin-left:0;
        width:100%
    }
}
/* 第四端 08-10 深度版 V4.1 */
.collab-filter-tabs {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin:0 0 18px
}
.collab-filter-tabs a {
    padding:9px 14px;
    border:1px solid #dfeae6;
    border-radius:999px;
    background:#fff;
    text-decoration:none;
    color:#365d54
}
.collab-filter-tabs a.active {
    background:#173f37;
    color:#fff;
    border-color:#173f37
}
.status-pill {
    display:inline-flex;
    align-items:center;
    padding:5px 9px;
    border-radius:999px;
    background:#eef5f2;
    color:#315d52;
    font-size:12px;
    white-space:nowrap
}
.status-returned {
    background:#fff0ee;
    color:#b33b31
}
.status-pending_upload {
    background:#fff7e8;
    color:#98670d
}
.status-pending_review {
    background:#eef4ff;
    color:#355da8
}
.status-approved {
    background:#eaf7ef;
    color:#237747
}
.row-risk {
    background:#fffafa
}
.row-risk td:first-child {
    box-shadow:inset 3px 0 #cb5b50
}
.row-risk small {
    display:block;
    margin-top:5px
}
.workspace-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-bottom:18px
}
.detail-dl {
    display:grid;
    grid-template-columns:110px 1fr;
    gap:12px;
    margin:0
}
.detail-dl dt {
    color:#71857f
}
.detail-dl dd {
    margin:0;
    font-weight:600
}
.risk-callout {
    padding:18px 20px;
    margin-bottom:18px;
    border:1px solid #f0c9c4;
    border-radius:16px;
    background:#fff7f6
}
.risk-callout strong {
    color:#a83f35
}
.risk-callout p {
    margin:8px 0;
    line-height:1.7
}
.risk-callout span {
    color:#8b665f;
    font-size:12px
}
.deep-upload-form {
    display:grid;
    gap:12px
}
.drop-zone {
    position:relative;
    display:flex;
    min-height:130px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    border:2px dashed #c9ded7;
    border-radius:16px;
    background:#f9fcfb;
    cursor:pointer;
    text-align:center
}
.drop-zone span {
    font-weight:700;
    color:#285f52
}
.drop-zone small {
    margin-top:6px;
    color:#7d918b
}
.drop-zone input {
    position:absolute;
    inset:0;
    opacity:0;
    cursor:pointer
}
.inline-form {
    display:inline-block;
    margin-top:10px
}
.version-list {
    display:grid;
    gap:10px
}
.version-list article {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    padding:13px 15px;
    border:1px solid #e6eeeb;
    border-radius:12px
}
.version-list b,.version-list span {
    display:block
}
.version-list span {
    font-size:12px;
    color:#7e908a;
    margin-top:4px
}
.reference-row {
    display:flex;
    justify-content:space-between;
    padding:10px 0;
    border-bottom:1px solid #edf2f0
}
.batch-actions {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    padding:0 0 12px
}
.batch-actions span {
    font-size:12px;
    color:#7d918a
}
.mode-badge {
    padding:8px 12px;
    border-radius:999px;
    font-weight:700
}
.mode-badge.ai-on {
    background:#e9f7ef;
    color:#1f7750
}
.mode-badge.rule-on {
    background:#fff5df;
    color:#94620a
}
.rule-tip-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px
}
.rule-tip-grid article {
    padding:12px 14px;
    border-radius:12px;
    background:#fff9ed;
    border:1px solid #f4e2b8
}
.ai-principles {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px
}
.ai-principles article {
    padding:16px;
    border:1px solid #e5efeb;
    border-radius:14px;
    background:#fbfdfc
}
.ai-principles b,.ai-principles span {
    display:block
}
.ai-principles span {
    margin-top:6px;
    color:#7b8e88;
    font-size:12px
}
.ai-review-card {
    padding:16px 0;
    border-bottom:1px solid #edf2f0
}
.ai-review-card>header {
    display:flex;
    justify-content:space-between;
    gap:15px
}
.ai-review-card header b,.ai-review-card header span {
    display:block
}
.ai-review-card header span {
    font-size:12px;
    color:#7f918b;
    margin-top:4px
}
.ai-output {
    padding:14px;
    margin-top:10px;
    border-radius:12px;
    background:#f7faf9;
    line-height:1.8
}
.ai-output.confirmed {
    background:#eef8f2
}
.ai-review-form {
    display:grid;
    gap:9px;
    margin-top:12px
}
.ai-review-form div {
    display:flex;
    gap:8px;
    flex-wrap:wrap
}
.message-center-list article {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    padding:14px 0;
    border-bottom:1px solid #edf2f0
}
.message-center-list article.unread {
    background:linear-gradient(90deg,#f2fbf7,transparent)
}
.message-center-list article>a {
    display:flex;
    justify-content:space-between;
    gap:20px;
    flex:1;
    text-decoration:none;
    color:inherit
}
.message-center-list b,.message-center-list p {
    display:block;
    margin:0
}
.message-center-list p {
    margin-top:5px;
    color:#70847d
}
.message-center-list span {
    white-space:nowrap;
    color:#899993;
    font-size:12px
}
.preference-list {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px
}
.preference-list label {
    padding:12px;
    border:1px solid #e4ece9;
    border-radius:12px
}
.preference-list button {
    grid-column:1/-1
}
.login-list article {
    padding:11px 0;
    border-bottom:1px solid #edf2f0
}
.login-list b,.login-list span,.login-list small {
    display:block
}
.login-list span,.login-list small {
    margin-top:4px;
    color:#7d8f89;
    font-size:12px
}
.small-kpi {
    font-size:15px!important
}
.danger-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #e4b3ad;
    border-radius:9px;
    background:#fff4f2;
    color:#a43e34;
    padding:9px 13px;
    cursor:pointer
}
.link-button {
    border:0;
    background:transparent;
    color:#177b61;
    cursor:pointer
}
.muted {
    color:#71847e;
    line-height:1.7
}
@media(max-width:900px) {
    .workspace-grid,.rule-tip-grid,.ai-principles {
        grid-template-columns:1fr
    }
    .message-center-list article>a,.version-list article {
        flex-direction:column
    }
    .preference-list {
        grid-template-columns:1fr
    }
    .batch-actions {
        align-items:flex-start;
        flex-direction:column
    }
}
/* 第四端 08-10 V4.2 独立页面版 */
.collab-subnav {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin:-2px 0 20px;
    padding:10px;
    background:#fff;
    border:1px solid #e9efec;
    border-radius:16px;
    box-shadow:0 8px 24px rgba(34,66,56,.04)
}
.collab-subnav a {
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:8px 13px;
    border-radius:10px;
    text-decoration:none;
    color:#5d746d;
    font-weight:600;
    border:1px solid transparent
}
.collab-subnav a:hover {
    background:#f7faf9;
    color:#1d6655
}
.collab-subnav a.active {
    background:#e9f7f2;
    color:#0f7059;
    border-color:#d4eee5;
    box-shadow:inset 3px 0 #ff6b22
}
.upload-task-grid,.return-card-grid,.confirm-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
.upload-task-card,.return-card {
    padding:18px;
    border:1px solid #e5ece9;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 22px rgba(35,64,55,.04)
}
.upload-task-card header,.return-card header,.confirm-card header {
    display:flex;
    justify-content:space-between;
    gap:15px;
    align-items:flex-start;
    margin-bottom:14px
}
.upload-task-card header b,.return-card header b {
    font-size:16px
}
.upload-task-card header span,.return-card header span {
    display:block;
    margin-top:5px;
    color:#82938d;
    font-size:12px
}
.return-reason {
    padding:13px 14px;
    border-left:3px solid #ef6c50;
    background:#fff7f4;
    border-radius:8px;
    margin:13px 0
}
.return-reason strong {
    color:#a84936
}
.return-reason p {
    margin:6px 0 0;
    line-height:1.7;
    color:#765f59
}
.card-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap
}
.card-actions a {
    text-decoration:none
}
.confirm-grid {
    align-items:start
}
.confirm-card {
    margin:0
}
.confirm-block {
    padding:14px;
    border:1px solid #e5ece9;
    border-radius:12px;
    background:#fbfdfc;
    margin:12px 0
}
.confirm-block b {
    display:block;
    margin-bottom:9px
}
.confirm-block textarea {
    width:100%;
    box-sizing:border-box;
    margin-bottom:10px
}
.ai-capability-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-bottom:18px
}
.ai-capability-grid a {
    display:block;
    padding:20px;
    border:1px solid #e4ece9;
    border-radius:18px;
    background:#fff;
    text-decoration:none;
    color:#173e36;
    box-shadow:0 10px 28px rgba(36,64,57,.05);
    transition:.18s ease
}
.ai-capability-grid a:hover {
    transform:translateY(-2px);
    border-color:#cfe5dc;
    box-shadow:0 14px 32px rgba(36,64,57,.08)
}
.ai-capability-grid span {
    display:inline-flex;
    width:38px;
    height:38px;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:#fff1e9;
    color:#ee6424;
    font-weight:800;
    margin-bottom:14px
}
.ai-capability-grid b {
    display:block;
    font-size:16px
}
.ai-capability-grid p {
    margin:8px 0 0;
    color:#758981;
    line-height:1.65;
    font-size:13px
}
.scenario-list {
    display:grid;
    gap:10px
}
.scenario-list article {
    padding:14px;
    border:1px solid #e7eeeb;
    border-radius:12px;
    background:#fbfdfc
}
.scenario-list b,.scenario-list span {
    display:block
}
.scenario-list span {
    margin-top:5px;
    color:#7b8e87;
    font-size:12px;
    line-height:1.6
}
.ai-tool-form textarea {
    min-height:180px
}
@media(max-width:980px) {
    .upload-task-grid,.return-card-grid,.confirm-grid,.ai-capability-grid {
        grid-template-columns:1fr
    }
    .collab-subnav {
        overflow:auto;
        flex-wrap:nowrap
    }
    .collab-subnav a {
        white-space:nowrap
    }
}
/* V5.1 AI智能中枢 */
.aihub-banner {
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:center;
    padding:26px 30px;
    margin-bottom:16px;
    border-radius:22px;
    background:linear-gradient(120deg,#f4f9ff,#f7f4ff);
    border:1px solid #dce7f5
}
.aihub-banner span {
    font-size:12px;
    letter-spacing:1.6px;
    color:#62748a
}
.aihub-banner h2 {
    font-size:28px;
    margin:5px 0
}
.aihub-banner p {
    margin:0;
    color:#68788c
}
.aihub-badge {
    padding:10px 15px;
    border:1px solid #cfdbea;
    border-radius:999px;
    background:#fff;
    font-weight:700;
    white-space:nowrap
}
.aihub-nav {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:8px;
    margin-bottom:18px
}
.aihub-nav a {
    padding:11px 8px;
    border-radius:11px;
    background:#fff;
    border:1px solid #e3e9f0;
    text-align:center;
    font-size:13px;
    color:#526276
}
.aihub-nav a.active {
    box-shadow:0 6px 18px rgba(36,77,128,.10);
    border-color:#9eb8d8;
    font-weight:700;
    color:#172d47
}
.aihub-metrics article {
    min-height:120px
}
.aihub-architecture,.score-dual {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px
}
.aihub-architecture article,.score-dual article {
    padding:20px;
    border:1px solid #e2e8ef;
    border-radius:16px;
    background:#fbfcfe
}
.aihub-architecture b,.aihub-architecture span {
    display:block
}
.aihub-architecture span {
    margin-top:7px;
    color:#6c7a8b
}
.score-dual {
    grid-template-columns:1fr 1fr
}
.score-dual article span {
    font-size:12px;
    letter-spacing:1px;
    color:#77879a
}
.score-dual article b {
    display:block;
    margin:12px 0
}
.aihub-rule {
    display:flex;
    gap:18px;
    align-items:center;
    padding:16px 18px;
    border-radius:13px;
    background:#f7f9fc;
    border:1px solid #e2e8f0
}
.aihub-rule b {
    white-space:nowrap
}
.aihub-rule span {
    color:#647386
}
.status-pill {
    padding:7px 11px;
    border-radius:999px;
    background:#eef5ff;
    font-size:12px
}
.confirm-card {
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:20px;
    padding:18px 0;
    border-bottom:1px solid #edf0f4
}
.confirm-card small {
    display:block;
    margin:5px 0;
    color:#7a8797
}
.confirm-card form {
    display:grid;
    gap:8px
}
.empty-state {
    padding:28px;
    text-align:center;
    color:#8190a2
}
@media(max-width:1100px) {
    .aihub-nav {
        grid-template-columns:repeat(3,1fr)
    }
    .aihub-architecture {
        grid-template-columns:1fr
    }
    .score-dual {
        grid-template-columns:1fr
    }
}
@media(max-width:700px) {
    .aihub-banner {
        display:block
    }
    .aihub-badge {
        display:inline-block;
        margin-top:14px
    }
    .aihub-nav {
        grid-template-columns:repeat(2,1fr)
    }
    .confirm-card {
        grid-template-columns:1fr
    }
}
.aihub-output {
    white-space:pre-wrap;
    word-break:break-word;
    background:#f7f9fc;
    border:1px solid #e5eaf2;
    border-radius:14px;
    padding:18px;
    line-height:1.8;
    max-height:620px;
    overflow:auto
}
.aihub-cap .status-pill {
    white-space:nowrap
}
.aihub-three {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px
}
.aihub-three article {
    padding:18px;
    border:1px solid #e6eaf0;
    border-radius:14px;
    background:#fafbfd
}
.aihub-three article b {
    display:block;
    margin-bottom:8px
}
@media(max-width:900px) {
    .aihub-three {
        grid-template-columns:1fr
    }
}
/* V5.1 Phase 3 - AI governance deepening */
.aihub-two {
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:16px
}
.aihub-trend {
    height:175px;
    display:flex;
    align-items:flex-end;
    gap:12px;
    padding:18px 6px 0;
    overflow-x:auto
}
.aihub-trend>div {
    min-width:44px;
    display:grid;
    justify-items:center;
    gap:5px
}
.aihub-trend .bar {
    display:block;
    width:24px;
    border-radius:7px 7px 3px 3px;
    background:linear-gradient(180deg,#5b83bd,#aec4e2)
}
.aihub-trend b {
    font-size:12px
}
.aihub-trend small {
    font-size:11px;
    color:#7b8999
}
.aihub-form {
    margin:16px 0;
    padding:18px;
    border:1px solid #e4eaf1;
    border-radius:16px;
    background:#fafcff
}
.aihub-adapter {
    grid-template-columns:auto 1fr auto!important
}
.aihub-policy-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px
}
.aihub-policy-card {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    padding:18px;
    border:1px solid #e4eaf1;
    border-radius:16px;
    background:#fbfcfe
}
.aihub-policy-card h4,.aihub-policy-card .wide {
    grid-column:1/-1
}
.aihub-policy-card label {
    display:grid;
    gap:5px
}
.aihub-policy-card textarea {
    min-height:90px
}
.aihub-filter {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin:0 0 16px
}
.aihub-filter select,.aihub-filter input {
    min-width:150px
}
.hidden {
    display:none!important
}
@media(max-width:1000px) {
    .aihub-two,.aihub-policy-grid {
        grid-template-columns:1fr
    }
}
@media(max-width:700px) {
    .aihub-policy-card {
        grid-template-columns:1fr
    }
    .aihub-policy-card h4,.aihub-policy-card .wide {
        grid-column:auto
    }
    .aihub-filter>* {
        width:100%
    }
}
/* V5.2 Policy Rules Hub */
.policyhub-hero {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:24px 28px;
    margin-bottom:16px;
    border-radius:18px;
    background:linear-gradient(120deg,#f4f8ff,#f7fbf7);
    border:1px solid #dfe8f5
}
.policyhub-hero span {
    font-size:12px;
    letter-spacing:1.4px;
    color:#567
}
.policyhub-hero h2 {
    margin:6px 0;
    font-size:25px
}
.policyhub-hero p {
    margin:0;
    color:#667085
}
.policyhub-hero>b {
    padding:9px 14px;
    border-radius:999px;
    background:#fff;
    border:1px solid #dce5ef
}
.policyhub-nav {
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding:4px 0 14px;
    margin-bottom:6px
}
.policyhub-nav a {
    white-space:nowrap;
    text-decoration:none;
    padding:9px 13px;
    border-radius:10px;
    border:1px solid #e1e7ef;
    background:#fff;
    color:#344054;
    font-size:13px
}
.policyhub-nav a.active {
    font-weight:700;
    border-color:#9fb7d4;
    background:#eef5ff
}
.policyhub-metrics {
    margin-bottom:16px
}
.warning-panel {
    border-left:4px solid #c28b2c
}
@media(max-width:900px) {
    .policyhub-hero {
        align-items:flex-start;
        gap:16px;
        flex-direction:column
    }
}
/* V5.2 Phase2 policy business workflows */
.policy-inbox-card {
    padding:18px;
    border:1px solid var(--line,#e5e7eb);
    border-radius:16px;
    margin:14px 0;
    background:var(--panel,#fff)
}
.policy-inbox-card>div:first-child {
    margin-bottom:14px
}
.policy-inbox-card p {
    margin:6px 0;
    color:#64748b
}
.binding-form {
    padding:18px 0;
    border-top:1px solid #e5e7eb
}
.inline-form {
    display:flex;
    gap:8px;
    align-items:center;
    flex-wrap:wrap
}
.inline-form input {
    max-width:180px
}
.danger {
    border:1px solid #ef4444;
    background:transparent;
    color:#b91c1c;
    border-radius:8px;
    padding:8px 12px
}
.muted {
    color:#64748b
}
/* V5.2 Phase3 Policy Intelligence */
.policy-intel-head {
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:flex-start;
    margin:0 0 18px;
    padding:22px;
    border:1px solid var(--line,#e7eaf0);
    border-radius:18px;
    background:var(--panel,#fff)
}
.policy-intel-head h2 {
    margin:8px 0 6px
}
.policy-intel-flow {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
    max-width:620px
}
.policy-intel-flow b {
    padding:7px 10px;
    border-radius:999px;
    background:#f2f5f9;
    font-size:12px
}
.policy-intel-flow i {
    opacity:.45
}
.policy-text-preview {
    max-height:520px;
    overflow:auto;
    white-space:pre-wrap;
    line-height:1.75;
    padding:14px;
    border-radius:12px;
    background:#f7f8fb
}
.policy-ai-model {
    margin:10px 0 14px;
    padding:10px 12px;
    border-radius:10px;
    background:#f5f7fa
}
.policy-extract-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin:18px 0
}
.policy-extract-grid>div {
    padding:14px;
    border:1px solid #e8ebf0;
    border-radius:12px
}
.policy-extract-grid span {
    display:block;
    font-size:12px;
    opacity:.65;
    margin-bottom:7px
}
.policy-extract-grid b {
    font-size:15px
}
.policyhub-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px
}
@media(max-width:980px) {
    .policy-intel-head {
        display:block
    }
    .policyhub-grid,.policy-extract-grid {
        grid-template-columns:1fr
    }
    .policy-intel-flow {
        margin-top:18px
    }
}
/* V5.2 Phase4 policy impact */
.policyhub-panel .empty {
    padding:24px;
    text-align:center;
    color:#718096
}
.policyhub-panel form button+button {
    margin-left:8px
}
.policyhub-panel small {
    color:#718096
}
.policyhub-panel td {
    vertical-align:top
}
/* V5.3 企业数据与证据链中枢 */
.hub-domain-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px
}
.hub-domain {
    display:flex;
    flex-direction:column;
    gap:7px;
    padding:18px;
    border:1px solid #e7eaf0;
    border-radius:14px;
    background:#fff;
    text-decoration:none;
    color:inherit
}
.hub-domain b {
    font-size:25px
}
.hub-domain small {
    color:#77808f
}
.hub-domain.good {
    border-left:4px solid #2f9d72
}
.hub-domain.warning {
    border-left:4px solid #d99b2b
}
.hub-domain.missing {
    border-left:4px solid #c85a5a
}
@media(max-width:1100px) {
    .hub-domain-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:700px) {
    .hub-domain-grid {
        grid-template-columns:1fr
    }
}
/* V5.3 Phase2 enterprise permanent data asset lifecycle */
.hub-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center
}
.hub-actions form,.inline-form {
    margin:0
}
.inline-form {
    display:flex;
    gap:6px;
    flex-wrap:wrap
}
.button.small {
    padding:7px 11px;
    font-size:13px
}
.button.ghost {
    background:transparent;
    border:1px solid rgba(100,116,139,.35);
    color:inherit
}
.badge.success {
    display:inline-flex;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(34,197,94,.12);
    font-size:12px
}
.table-wrap code {
    font-size:12px;
    word-break:break-all
}
/* V5.3 Phase 5 evidence command dashboard */
.evidence-command-stats {
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.chain-summary-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
.chain-summary-grid article {
    padding:22px;
    border:1px solid var(--line,#e5e7eb);
    border-radius:18px;
    background:var(--card,#fff)
}
.chain-summary-grid article span {
    display:block;
    font-weight:700;
    line-height:1.7
}
.chain-summary-grid article b {
    display:block;
    font-size:34px;
    margin:12px 0
}
.chain-summary-grid article small {
    line-height:1.8
}
@media(max-width:1100px) {
    .evidence-command-stats {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .chain-summary-grid {
        grid-template-columns:1fr
    }
}
/* V6.0 稳定版：长页面与数据库中心可用性增强 */
.table-panel {
    overflow:hidden
}
.table-panel table {
    min-width:760px
}
.table-panel>table {
    display:table;
    width:100%
}
.panel .section-heading {
    gap:12px
}
.panel .section-heading p {
    max-width:920px;
    line-height:1.7
}
.platform-grid .panel form label {
    line-height:1.55
}
.page-actions {
    align-items:flex-start
}
@media(max-width:1100px) {
    .platform-grid {
        grid-template-columns:1fr!important
    }
    .platform-grid .span-2 {
        grid-column:auto!important
    }
    .commercial-summary {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .table-panel {
        overflow-x:auto
    }
}
@media(max-width:680px) {
    .commercial-summary {
        grid-template-columns:1fr
    }
    .page-actions {
        flex-direction:column
    }
    .page-actions form {
        width:100%
    }
    .page-actions button {
        width:100%
    }
}
/* V6.1：长页面与长表格分页增强 */
.table-pager {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
    margin:16px 0 2px;
    padding:12px 14px;
    border-top:1px solid rgba(15,46,83,.10);
    font-size:14px;
    color:#64748b
}
.table-pager button,.table-pager select {
    min-height:34px;
    border:1px solid #d9e2ec;
    border-radius:8px;
    background:#fff;
    color:#183b66;
    padding:6px 12px;
    cursor:pointer
}
.table-pager button:disabled {
    opacity:.45;
    cursor:not-allowed
}
.table-pager select {
    padding-right:28px
}
@media(max-width:760px) {
    .table-pager {
        justify-content:center
    }
    .table-pager span {
        width:100%;
        text-align:center
    }
}
/* V6.3 中文规则配置增强 */
.rule-preview-box {
    padding:14px 16px;
    border:1px solid #dbe7f5;
    border-radius:12px;
    background:#f7fbff;
    display:flex;
    gap:10px;
    align-items:center;
    flex-wrap:wrap
}
.rule-preview-box strong {
    color:#183b66
}
.rule-preview-box span {
    font-weight:700;
    color:#0b67c2
}
.rule-preview-box small {
    width:100%;
    color:#708399
}
.kcz-rule-builder .rule-json {
    display:none!important
}
/* ===== V6.4 商用化：长页面智能拆分 / 二级功能导航 ===== */
.smart-section-shell {
    margin:0 0 18px;
    border:1px solid #eadfd6;
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 28px rgba(78,55,39,.05);
    overflow:hidden
}
.smart-section-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:14px 18px 10px;
    background:linear-gradient(180deg,#fffaf6 0,#fff 100%);
    border-bottom:1px solid #f1e7df
}
.smart-section-head strong {
    font-size:16px;
    color:#302923
}
.smart-section-head small {
    color:#8e8178;
    font-size:12px
}
.smart-section-tabs {
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding:10px 12px 12px;
    scrollbar-width:thin;
    background:#fff
}
.smart-section-tabs button {
    appearance:none;
    border:1px solid #eadfd6;
    background:#fff;
    color:#5e534c;
    border-radius:11px;
    padding:10px 15px;
    white-space:nowrap;
    cursor:pointer;
    font-weight:700;
    transition:.18s ease;
    box-shadow:none
}
.smart-section-tabs button:hover {
    border-color:#f2aa7d;
    color:#d95d1c;
    background:#fff8f3
}
.smart-section-tabs button.active {
    border-color:#ff7b35;
    color:#fff;
    background:linear-gradient(135deg,#ff8a42,#f06422);
    box-shadow:0 8px 18px rgba(240,100,34,.18)
}
.smart-section-tabs button .smart-tab-num {
    display:inline-grid;
    place-items:center;
    min-width:20px;
    height:20px;
    padding:0 5px;
    margin-right:6px;
    border-radius:999px;
    background:#f5eee9;
    color:#806f64;
    font-size:11px
}
.smart-section-tabs button.active .smart-tab-num {
    background:rgba(255,255,255,.2);
    color:#fff
}
.smart-section-pane-hidden {
    display:none!important
}
.smart-section-pane-active {
    animation:smartPaneIn .16s ease-out
}
.smart-section-target {
    scroll-margin-top:105px
}
@keyframes smartPaneIn {
    from {
        opacity:.4;
        transform:translateY(3px)
    }
    to {
        opacity:1;
        transform:none
    }
}
.smart-section-mobile-note {
    display:none
}
@media(max-width:900px) {
    .smart-section-head {
        align-items:flex-start;
        flex-direction:column;
        gap:4px
    }
    .smart-section-tabs {
        padding-top:8px
    }
    .smart-section-tabs button {
        padding:9px 12px
    }
    .smart-section-mobile-note {
        display:inline
    }
}
/* V6.5 四端商用化分组导航：一级业务中心 + 二级菜单 */
.grouped-nav {
    display:flex;
    flex-direction:column;
    gap:5px;
    padding-bottom:18px
}
.grouped-nav .nav-group {
    margin:0;
    border:1px solid #edf0f3;
    border-radius:10px;
    background:rgba(255,255,255,.72);
    overflow:hidden
}
.grouped-nav .nav-group summary {
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:39px;
    padding:8px 12px;
    font-size:13px;
    font-weight:800;
    color:#3f4650;
    user-select:none
}
.grouped-nav .nav-group summary::-webkit-details-marker {
    display:none
}
.grouped-nav .nav-group summary b {
    font-size:14px;
    color:#a3aab2;
    transition:transform .2s ease
}
.grouped-nav .nav-group[open] summary b {
    transform:rotate(180deg)
}
.grouped-nav .nav-group[open] summary {
    background:#f8f9fb;
    color:#252a31
}
.grouped-nav .nav-submenu {
    display:flex;
    flex-direction:column;
    gap:2px;
    padding:3px 6px 7px
}
.grouped-nav .nav-submenu a {
    min-height:37px!important;
    padding:7px 9px!important;
    border-radius:8px!important;
    font-size:12px!important;
    border-left:3px solid transparent
}
.grouped-nav .nav-submenu a .nav-number {
    width:23px!important;
    min-width:23px!important;
    height:21px!important;
    font-size:9px!important;
    border-radius:6px!important
}
.grouped-nav .nav-submenu a.active {
    font-weight:800
}
.platform-sidebar .grouped-nav .nav-group[open] summary {
    color:#bd5420;
    background:#fff7f2
}
.agency-sidebar .grouped-nav .nav-group[open] summary {
    color:#315ca8;
    background:#f3f7ff
}
.enterprise-sidebar .grouped-nav .nav-group[open] summary {
    color:#315ca8;
    background:#f3f7ff
}
.collaboration-sidebar .grouped-nav .nav-group[open] summary {
    color:#087b5f;
    background:#effaf7
}
@media(max-height:900px) {
    .grouped-nav {
        gap:3px
    }
    .grouped-nav .nav-group summary {
        min-height:34px;
        padding:6px 10px
    }
    .grouped-nav .nav-submenu a {
        min-height:33px!important;
        padding:5px 8px!important
    }
}
/* V6.5.1 左侧导航层级精简：一级业务中心与二级菜单字号/间距优化 */
.grouped-nav .nav-group summary {
    min-height:38px;
    padding:7px 12px;
    font-size:15px;
    font-weight:600;
    line-height:1.35;
}
.grouped-nav .nav-group summary b {
    font-size:13px
}
.grouped-nav .nav-submenu {
    gap:1px;
    padding:3px 6px 7px
}
.grouped-nav .nav-submenu a {
    min-height:36px!important;
    padding:6px 9px 6px 15px!important;
    font-size:13px!important;
    font-weight:400!important;
    line-height:1.35;
}
.grouped-nav .nav-submenu a.active {
    font-weight:600!important
}
.grouped-nav .nav-submenu a .nav-number {
    width:22px!important;
    min-width:22px!important;
    height:20px!important;
    font-size:9px!important;
}
@media(max-height:900px) {
    .grouped-nav .nav-group summary {
        min-height:34px;
        padding:5px 10px;
        font-size:14px
    }
    .grouped-nav .nav-submenu a {
        min-height:32px!important;
        padding:5px 8px 5px 14px!important;
        font-size:12px!important
    }
}
/* V6.5.2 四端左侧导航最终字号规范：一级16px，二级14px */
.grouped-nav .nav-group summary {
    font-size:16px;
    font-weight:600;
}
.grouped-nav .nav-submenu a {
    font-size:14px!important;
    font-weight:400!important;
}
.grouped-nav .nav-submenu a.active {
    font-size:14px!important;
    font-weight:600!important;
}
@media(max-height:900px) {
    .grouped-nav .nav-group summary {
        font-size:15px
    }
    .grouped-nav .nav-submenu a {
        font-size:13px!important
    }
    .grouped-nav .nav-submenu a.active {
        font-size:13px!important
    }
}
/* V6.5.3 四端左侧导航字号规范：一级16px，二级12px */
.grouped-nav .nav-group summary {
    font-size:16px;
    font-weight:600;
}
.grouped-nav .nav-submenu a {
    font-size:12px!important;
    font-weight:400!important;
}
.grouped-nav .nav-submenu a.active {
    font-size:12px!important;
    font-weight:600!important;
}
@media(max-height:900px) {
    .grouped-nav .nav-group summary {
        font-size:15px
    }
    .grouped-nav .nav-submenu a {
        font-size:12px!important
    }
    .grouped-nav .nav-submenu a.active {
        font-size:12px!important
    }
}
.workspace-tabs {
    display: flex;
    gap: 8px;
    margin: 0 0 20px;
    padding: 6px;
    width: fit-content;
    border: 1px solid #dce8ef;
    border-radius: 14px;
    background: #f7fafc;
}

.workspace-tabs a {
    padding: 10px 18px;
    border-radius: 10px;
    color: #4b6472;
    font-weight: 700;
    text-decoration: none;
}

.workspace-tabs a:hover,
.workspace-tabs a.active {
    color: #fff;
    background: linear-gradient(135deg, #087fbd, #10aaa0);
    box-shadow: 0 6px 16px rgb(8 127 189 / 18%);
}

@media (max-width: 720px) {
    .workspace-tabs {
        width: 100%;
    }

    .workspace-tabs a {
        flex: 1;
        text-align: center;
    }
}
