:root{--navy:#123e5b;--navy-deep:#0d3149;--brand:#2466cf;--brand-soft:#eef4ff;--green:#2e8060;--green-soft:#edf7f2;--gold:#b48328;--gold-soft:#fbf4e4;--red:#b43b31;--red-soft:#fbeceb;--ink:#24323b;--muted:#6c7779;--line:#d9dedf;--line-soft:#e8ecee;--bg:#f4f6f8;--card:#fff;--radius:7px;--shadow:0 3px 12px rgba(18,62,91,.055);--shadow-hover:0 7px 20px rgba(18,62,91,.11)}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;background:var(--bg);color:var(--ink);font:14px/1.55 "Microsoft YaHei","Segoe UI",Arial,sans-serif;letter-spacing:0;overflow-x:hidden}a{color:inherit}.number{font-variant-numeric:tabular-nums}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.neutral{color:var(--muted)!important}
.topbar{min-height:64px;padding:10px max(24px,calc((100vw - 1500px)/2));display:flex;align-items:center;justify-content:space-between;gap:26px;background:var(--navy-deep);color:#fff;box-shadow:0 2px 10px rgba(13,49,73,.18)}.brand{flex:0 0 auto;color:#fff;text-decoration:none;font-size:18px;font-weight:700;letter-spacing:.1px;white-space:nowrap}.brand small{margin-left:8px;color:#c6d6df;font-size:11px;font-weight:400}.scope-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.scope-controls label{display:flex;align-items:center;gap:6px;color:#d4e0e7;font-size:11px;white-space:nowrap}.scope-controls select{max-width:200px;height:32px;border:1px solid #5d7b90;border-radius:5px;background:#163e5a;color:#fff;padding:0 9px;font:inherit;outline:none}.scope-controls select:focus{border-color:#b8d7eb;box-shadow:0 0 0 2px rgba(184,215,235,.18)}
.main-nav{display:flex;gap:2px;overflow:auto;padding:0 max(24px,calc((100vw - 1500px)/2));background:#fff;border-bottom:1px solid var(--line);box-shadow:0 1px 5px rgba(18,62,91,.035)}.main-nav a{position:relative;padding:13px 15px;color:#53636d;text-decoration:none;white-space:nowrap;font-size:13px;font-weight:600}.main-nav a:after{content:"";position:absolute;right:15px;bottom:0;left:15px;height:3px;background:transparent;border-radius:3px 3px 0 0}.main-nav a:hover{color:var(--navy);background:#f7fafb}.main-nav a.active{color:var(--brand)}.main-nav a.active:after{background:var(--brand)}
.page-shell{max-width:1500px;margin:0 auto;padding:18px 24px 48px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 14px;padding:14px 18px;border:1px solid var(--line);border-left:4px solid var(--navy);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.page-heading h1{margin:2px 0 3px;color:var(--navy);font-size:25px;line-height:1.22;letter-spacing:.1px}.eyebrow{margin:0;color:var(--brand);font-size:12px;font-weight:700}.updated{flex:0 0 auto;margin:0;color:var(--muted);font-size:12px}.status-note{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}.kpi{position:relative;min-width:0;min-height:113px;padding:14px 15px 13px;overflow:hidden;border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}.kpi:hover{transform:translateY(-1px);box-shadow:var(--shadow-hover)}.kpi:nth-child(3){border-top-color:var(--green)}.kpi:nth-child(4){border-top-color:var(--gold)}.kpi:nth-child(6){border-top-color:#5c82a2}.kpi .label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:12px;line-height:1.35}.kpi .label span[title]{display:inline-grid;place-items:center;width:16px;height:16px;border:1px solid #8fa4b2;border-radius:50%;color:var(--navy);font-size:10px;font-weight:700;cursor:help}.kpi .value{margin:7px 0 3px;color:var(--navy);font-size:23px;font-weight:750;line-height:1.18;letter-spacing:-.35px}.kpi .sub{color:var(--muted);font-size:11px;line-height:1.45}
.section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.card,.detail-section{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow)}.card{padding:16px}.card h2,.detail-section h2{margin:0 0 4px;color:var(--navy);font-size:16px;line-height:1.4}.card .desc{margin:0 0 13px;color:var(--muted);font-size:12px;line-height:1.55}.chart{width:100%;height:295px}.map-chart{height:485px}
.cards-list{display:grid;gap:0}.rank-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line)}.rank-row:last-child{border-bottom:0}.rank-row a{color:var(--navy);font-weight:700;text-decoration:none}.rank-row a:hover,.data-table a:hover{text-decoration:underline}.rank-row small{display:block;margin-top:2px;color:var(--muted);font-size:11px}.rank-row>div:last-child{text-align:right}.rank-number{color:var(--navy);font-size:14px;font-weight:750;white-space:nowrap}.pill{display:inline-block;padding:3px 8px;border-radius:12px;background:#eef1f2;color:#68777d;font-size:11px;font-weight:700;line-height:1.25;white-space:nowrap}.pill.表现突出{background:var(--green-soft);color:var(--green)}.pill.增长中{background:var(--brand-soft);color:var(--brand)}.pill.稳定经营{background:#eef3f5;color:#60727c}.pill.需要支持,.pill.近期需关注{background:var(--red-soft);color:var(--red)}
.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.card-head .desc{margin-bottom:13px}.view-all,.detail-link{color:var(--brand)!important;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.view-all{margin-top:2px}.detail-link{display:inline-block;margin-top:4px}.view-all:hover,.detail-link:hover{text-decoration:underline}.interactive-row{cursor:pointer}.interactive-row:focus{position:relative;z-index:1;outline:2px solid rgba(36,102,207,.42);outline-offset:-2px}.data-table tbody tr.interactive-row:hover{background:#f1f7fb}.pending-callout{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px;padding:11px 14px;border:1px solid #ebd7a9;border-left:4px solid var(--gold);border-radius:var(--radius);background:var(--gold-soft);color:#735516;font-size:13px;font-weight:700;text-decoration:none;box-shadow:var(--shadow)}.pending-callout small{display:block;margin-top:2px;color:#896924;font-size:11px;font-weight:400}.pending-callout:hover{border-color:var(--gold);text-decoration:none}
.map-dashboard{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(355px,1fr);gap:12px;margin-top:12px}.map-primary{border-top:3px solid var(--green)}.map-summary{display:flex;flex-direction:column;min-height:0;border-top:3px solid var(--gold)}.map-summary .table-scroll{max-height:455px;overflow:auto;padding-right:2px}.map-summary .data-table{font-size:12px}.map-summary .data-table th,.map-summary .data-table td{padding:9px 8px}.map-note{margin:10px 0 0;padding:9px 11px;border-left:3px solid var(--gold);background:var(--gold-soft);color:#735516;font-size:12px;line-height:1.55}
.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:11px 0 4px}.map-metric-switch{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.map-metric-switch>span{margin-right:2px;color:var(--muted);font-size:11px;font-weight:700}.map-metric-switch button{padding:5px 8px;border:1px solid #cbd6db;border-radius:4px;background:#fff;color:#52636d;font:700 11px inherit;cursor:pointer}.map-metric-switch button:hover{border-color:var(--brand);color:var(--brand)}.map-metric-switch button.active{border-color:var(--navy);background:var(--navy);color:#fff}.map-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 7px;color:var(--muted);font-size:10px;line-height:1.4}.map-legend span{display:inline-block;width:11px;height:11px;border:1px solid rgba(18,62,91,.1);border-radius:2px}.legend-none{background:#d9dee2}.legend-low{background:#c9e4ff}.legend-mid{background:#6ca7e5}.legend-high{background:#2466cf}.legend-top{background:#123e5b}
.data-table{width:100%;border-collapse:collapse}.data-table th{color:var(--navy);font-size:12px;font-weight:700;text-align:left;background:#edf2f2}.data-table td,.data-table th{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:top}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr{transition:background .12s}.data-table tbody tr:hover{background:#f7faf9}.data-table td small{display:block;margin-top:2px;color:var(--muted);font-size:11px;line-height:1.4}.data-table a{color:var(--brand);font-weight:700;text-decoration:none}.table-card{overflow:auto}.table-card>.data-table{min-width:740px}.table-card .status-note{display:flex;align-items:center;justify-content:center;gap:10px;padding-top:12px;text-align:center}.table-card .status-note a{display:inline-block;padding:5px 10px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--navy);font-weight:700;text-decoration:none}.table-card .status-note a:hover{border-color:var(--green);background:var(--green-soft)}
.notice{margin:0 0 12px;padding:10px 13px;border-left:3px solid var(--gold);border-radius:0 var(--radius) var(--radius) 0;background:var(--gold-soft);color:#735516;font-size:12px;line-height:1.62}.notice.warning{border-color:var(--red);background:var(--red-soft);color:#8a382e}.empty{padding:18px 0;color:var(--muted);text-align:center}.back-link{display:inline-flex;align-items:center;gap:5px;margin-bottom:12px;padding:7px 11px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--navy);font-size:12px;font-weight:700;text-decoration:none;box-shadow:var(--shadow)}.back-link:hover{border-color:var(--green);background:var(--green-soft);text-decoration:none}
.filters-panel{margin:0 0 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.filters-panel summary{display:none;cursor:pointer;padding:11px 13px;color:var(--navy);font-size:13px;font-weight:700;list-style:none}.filters-panel summary::-webkit-details-marker{display:none}.filters{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:0;padding:12px}.filters input,.filters select,.filters button{height:36px;max-width:100%;border:1px solid var(--line);border-radius:4px;background:#fff;padding:0 10px;color:var(--ink);font:inherit;outline:none}.filters input:focus,.filters select:focus{border-color:#6e9bb4;box-shadow:0 0 0 2px rgba(36,102,207,.1)}.filters button{border-color:var(--navy);background:var(--navy);color:#fff;font-weight:700;cursor:pointer}.filters button:hover{background:#0d3149}.filters input{min-width:190px}.filters select{min-width:155px}.filters-dense select{min-width:142px}.filters-dense input{min-width:205px}
.detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.detail-hero h2{margin:0 0 5px;color:var(--navy);font-size:21px}.detail-meta{margin:0;color:var(--muted);line-height:1.7}.detail-sections{display:grid;gap:12px;margin-top:12px}.detail-section{padding:17px}.detail-section h3{margin:16px 0 8px;color:var(--navy);font-size:14px}.definition{margin:0 0 12px;padding:11px 13px;border-left:3px solid #5c82a2;border-radius:0 5px 5px 0;background:#f1f6f8;color:#425660;font-size:12px;line-height:1.65}.definition.warning{border-left-color:var(--gold);background:var(--gold-soft);color:#735516}.store-data-section{border-top:3px solid var(--green)}.mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.mini-kpi{min-width:0;padding:11px;border:1px solid #dfe7e5;border-top:3px solid var(--green);border-radius:5px;background:#f7faf9;color:var(--muted);font-size:12px}.mini-kpi b{display:block;margin-top:4px;color:var(--navy);font-size:18px;line-height:1.25}.metric-help{margin-top:18px;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);color:var(--ink)}.metric-help summary{padding:12px 15px;color:var(--navy);font-size:13px;font-weight:700;cursor:pointer}.help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}.help-grid p{margin:0;padding:12px 15px;border-right:1px solid var(--line-soft);color:var(--muted);font-size:12px;line-height:1.65}.help-grid p:nth-child(3n){border-right:0}.help-grid b{color:var(--navy)}
.pending-explainer{margin:0 0 12px;padding:15px 17px;border:1px solid #d6e1e6;border-left:4px solid var(--navy);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.pending-explainer h2{margin:0 0 6px;color:var(--navy);font-size:16px}.pending-explainer p{margin:0;color:#425660;font-size:13px;line-height:1.65}.pending-explainer>div{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0}.pending-explainer span{padding:4px 8px;border-radius:12px;background:var(--red-soft);color:var(--red);font-size:11px;font-weight:700}
@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.map-dashboard{grid-template-columns:minmax(0,1fr)}.map-summary .table-scroll{max-height:none}.map-chart{height:420px}.scope-controls select{max-width:170px}.section-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:820px){.topbar{align-items:flex-start;flex-direction:column;gap:8px;padding:10px 16px}.scope-controls{width:100%;justify-content:flex-start;overflow:auto;padding-bottom:2px}.page-shell{padding:15px 14px 34px}.page-heading{align-items:flex-start;flex-direction:column;gap:6px}.updated{align-self:flex-start}.help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.help-grid p:nth-child(3n){border-right:1px solid var(--line-soft)}.help-grid p:nth-child(2n){border-right:0}}
@media(max-width:640px){body{font-size:13px}.topbar{position:sticky;top:0;z-index:30}.brand{font-size:16px}.brand small{display:block;margin:1px 0 0;font-size:10px}.scope-controls{gap:8px}.scope-controls label{align-items:flex-start;flex-direction:column;gap:2px}.scope-controls select{width:132px;max-width:132px;height:31px}.main-nav{position:sticky;top:94px;z-index:25;padding:0 7px}.main-nav a{padding:11px 10px;font-size:12px}.main-nav a:after{right:10px;left:10px}.page-shell{padding:13px 10px 28px}.page-heading{margin-bottom:10px;padding:11px 12px}.page-heading h1{font-size:21px}.eyebrow{font-size:11px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.kpi{min-height:104px;padding:11px}.kpi .value{font-size:19px}.kpi .label{font-size:11px}.kpi .sub{font-size:10px}.section-grid{gap:10px;margin:10px 0}.card,.detail-section{border-radius:6px}.card{padding:13px}.card h2,.detail-section h2{font-size:15px}.card-head{gap:8px}.chart{height:235px}.map-chart{height:335px}.map-dashboard{gap:10px;margin-top:10px}.map-primary,.map-summary{border-top-width:3px}.map-summary .table-scroll{max-height:350px}.map-toolbar{align-items:flex-start;flex-direction:column}.map-legend{justify-content:flex-start}.filters-panel summary{display:block}.filters-panel[open] summary{border-bottom:1px solid var(--line)}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}.filters input,.filters select,.filters button{width:100%;min-width:0}.filters button{grid-column:span 2}.detail-hero{flex-direction:column;gap:10px}.detail-hero h2{font-size:19px}.detail-section{padding:13px}.mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mini-kpi{padding:10px}.mini-kpi b{font-size:17px}.help-grid{grid-template-columns:minmax(0,1fr)}.help-grid p,.help-grid p:nth-child(3n){border-right:0;border-bottom:1px solid var(--line-soft)}.help-grid p:last-child{border-bottom:0}.metric-help{margin-top:14px}.pending-callout{align-items:flex-start;flex-direction:column;gap:5px}.data-table.mobile-cards,.data-table.mobile-cards tbody,.data-table.mobile-cards tr,.data-table.mobile-cards td{display:block;width:100%}.table-card>.data-table.mobile-cards{min-width:0}.data-table.mobile-cards thead{display:none}.data-table.mobile-cards tbody{display:grid;gap:9px}.data-table.mobile-cards tr{overflow:hidden;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:5px;background:#fff;box-shadow:0 2px 7px rgba(18,62,91,.04)}.data-table.mobile-cards td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:8px 10px;border-bottom:1px dashed var(--line);color:var(--ink);line-height:1.45;text-align:right;white-space:normal}.data-table.mobile-cards td:last-child{border-bottom:0}.data-table.mobile-cards td:before{flex:0 0 105px;content:attr(data-label);color:var(--muted);font-size:11px;font-weight:700;text-align:left}.data-table.mobile-cards td:first-child{text-align:left}.data-table.mobile-cards td:first-child:before{display:none}.data-table.mobile-cards td:first-child a{font-size:14px}.data-table.mobile-cards td small{font-size:10px}.data-table.mobile-cards td .pill{max-width:100%;white-space:normal;text-align:right}.table-card .status-note{display:block;padding:12px 0 0;text-align:center}.table-card .status-note a{margin:3px}.hide-mobile{display:none!important}}
