:root{--ink:#14283f;--muted:#687b90;--line:#e2e8ef;--blue:#3478ee;--purple:#8a61d2;--orange:#ed963d;--navy:#0d1f34;--surface:#f4f7fb}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--surface);font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.5}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #67acff;outline-offset:3px}a{color:inherit;text-decoration:none}.sidebar{position:fixed;inset:0 auto 0 0;width:236px;background:var(--navy);color:#b0c2d5;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;padding:28px 20px 30px;color:#fff;font-size:17px;font-weight:600;border-bottom:1px solid #25364a}.brandmark{width:36px;height:39px;background:#3478ee;border-radius:8px;display:grid;place-items:center;font-size:26px;font-family:Georgia}.brand small{display:block;font-size:10px;letter-spacing:2.5px;font-weight:400;color:#91a8c1;margin-top:4px}.navlabel{font-size:12px;letter-spacing:2px;color:#7590ac;padding:29px 24px 14px}nav{padding:0 13px}nav a{display:flex;align-items:center;gap:12px;border-radius:6px;margin:5px 0;padding:13px 15px;font-size:14px}nav a:hover{background:#182f49;color:white}nav a.active{background:#243f62;color:white;box-shadow:inset 3px 0 #5295ff}.navicon{font-size:18px;width:22px;text-align:center}.sidebar-bottom{margin-top:auto;padding:24px;border-top:1px solid #25364a;font-size:12px;color:#7189a3}.sidebar-bottom p{font-size:14px;color:#b1c5d9}.edition{letter-spacing:1px;font-size:10px}.shell{margin-left:236px}.topbar{height:69px;padding:0 36px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--muted)}.topbar b{font-weight:500;color:var(--ink)}.slash{padding:0 14px;color:#bac4cf}.snapshot{font-size:12px}main{max-width:1720px;margin:auto;padding:30px 36px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.eyebrow{color:#5583b4;font-size:10px;letter-spacing:2.8px;font-weight:700}h1{font-size:29px;letter-spacing:-.6px;margin:7px 0}h2{font-size:17px;margin:0;font-weight:600}h3{font-size:15px;margin:0}.page-heading p{color:var(--muted);font-size:14px;margin:4px 0}.secondary,.primary,.text-button,.chip{padding:9px 15px;border-radius:6px;background:#fff;border:1px solid #d9e2eb;font-size:13px;color:var(--ink);white-space:nowrap}.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.text-button{border:0;background:transparent;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat{padding:19px 22px;background:#fff;border:1px solid var(--line);border-radius:8px;position:relative}.stat-label{font-size:13px;color:var(--muted)}.stat-value{font-size:31px;font-weight:650;letter-spacing:-1px;line-height:1.4;margin:7px 0 3px;font-variant-numeric:tabular-nums}.stat-value small{font-size:13px;font-weight:400;color:var(--muted);margin-left:7px;letter-spacing:0}.stat-note{font-size:12px;color:var(--muted)}.stat-symbol{position:absolute;right:21px;top:22px;background:#eef4fe;color:#5486d8;width:30px;height:30px;display:grid;place-items:center;border-radius:7px}.filterbar{display:flex;align-items:center;gap:10px;background:#fff;padding:13px 15px;border:1px solid var(--line);border-radius:8px}.search{display:flex;align-items:center;gap:10px;flex:1;color:#8093a5}.search input{border:0;outline:0;width:100%;font-size:14px;min-width:150px;color:var(--ink)}select{border:1px solid var(--line);background:#fff;border-radius:5px;padding:8px 28px 8px 10px;color:#445b73;font-size:13px;max-width:205px}.filter-status{font-size:12px;color:var(--muted);padding:10px 2px 14px}.panel{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:22px 24px 8px}.panel-head p{font-size:12px;color:var(--muted);margin:6px 0}.panel-body{padding:10px 24px 23px}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px}.map-panel{background:linear-gradient(145deg,#fff,#f5f9fe)}.map-chart{height:485px;width:100%}.legend{display:flex;gap:16px;align-items:center;font-size:12px;flex-wrap:wrap}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px}.map-notes{display:flex;gap:20px;padding:0 24px 20px;justify-content:space-between;font-size:12px;color:var(--muted)}.ranking{padding:10px 23px 22px}.rank-row{display:block;width:100%;text-align:left;border:0;background:transparent;padding:13px 0;color:var(--ink)}.rank-line{display:flex;gap:9px;align-items:center;font-size:13px}.rank-line b{margin-left:auto;font-variant-numeric:tabular-nums}.rank-num{font-size:11px;color:#8ba0b5;width:15px}.bar-track{height:5px;background:#edf2f8;margin:9px 0 0 24px;border-radius:3px}.bar-track span{display:block;height:100%;background:#78a5ed;border-radius:3px}.callout{margin:18px 0 0;padding:15px 18px;background:#eef4fc;border-left:3px solid #729be2;font-size:13px;color:#536b85}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.section-gap{margin-top:20px}.chart{height:350px;min-width:0}.chart.tall{height:450px}.chart.short{height:275px}.metricline{display:flex;align-items:baseline;gap:10px;margin-bottom:16px}.metricline b{font-size:30px}.muted{color:var(--muted);font-size:13px}.badge{font-size:12px;display:inline-block;padding:3px 8px;border-radius:4px;margin:2px 3px 2px 0;white-space:nowrap}.up{background:#eaf2ff;color:#286bd5}.mid{background:#f1eafa;color:#8251c3}.down{background:#fff1df;color:#b36b17}.other{background:#edf0f3;color:#687a8c}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}th{background:#f8fafc;color:#718298;text-align:left;font-size:12px;font-weight:500}td,th{padding:14px 18px;border-bottom:1px solid #edf1f5}td.name-cell{white-space:normal;min-width:250px;max-width:370px}.company-button{background:none;border:0;color:var(--ink);padding:0;text-align:left;font-weight:550;font-size:14px}.company-button:hover{color:var(--blue)}.subline{font-size:11px;color:#8c9daf;margin-top:3px}.pager{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;gap:12px;font-size:13px;color:var(--muted)}.pager button:disabled{opacity:.4;cursor:default}.empty{padding:65px 20px;text-align:center;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#93a0af;padding:26px 0 5px}dialog{border:0;border-radius:12px;padding:34px;max-width:720px;width:calc(100% - 32px);max-height:86vh;color:var(--ink);box-shadow:0 25px 90px #0b1e3440}dialog::backdrop{background:#0a1c3659;backdrop-filter:blur(3px)}dialog h2{font-size:24px;margin:12px 28px 17px 0}.close{position:absolute;right:17px;top:12px;border:0;background:transparent;font-size:28px;color:var(--muted)}dl{display:grid;grid-template-columns:120px 1fr;gap:16px;font-size:14px}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}dialog p,dialog li{font-size:14px;line-height:1.9}.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.quality-grid>div{padding:20px;background:#f5f8fc;border-radius:7px}.quality-grid b{font-size:24px;display:block}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#17304c;color:#fff;border-radius:8px;padding:12px 20px;font-size:14px;z-index:100;display:none}.loading{padding:70px;text-align:center}.chain-intro{display:flex;gap:14px;padding:20px 24px;background:#f8fafc;border-bottom:1px solid var(--line);font-size:13px}.chain-intro span{flex:1;text-align:center}.chart-actions{display:flex;gap:8px;align-items:center}.chip.active{color:#fff;background:var(--blue);border-color:var(--blue)}.export-chart{font-size:12px;border:0;background:transparent;color:#7890a8}.method-list{line-height:1.9;font-size:14px}.summary-strip{padding:20px 24px;display:flex;gap:30px;font-size:13px;border-top:1px solid var(--line)}@media(min-width:1550px){.map-chart{height:570px}}@media(max-width:1200px){.sidebar{width:205px}.shell{margin-left:205px}main{padding:25px}.map-layout{grid-template-columns:minmax(0,1fr) 250px}.legend{gap:7px}.map-chart{height:440px}.stat{padding:16px}.stat-symbol{display:none}.filterbar{flex-wrap:wrap}.search{min-width:240px}}@media(max-width:900px){.sidebar{position:relative;width:100%;height:auto}.brand{padding:15px 20px}.brand small,.navlabel,.sidebar-bottom{display:none}nav{display:flex;overflow:auto;padding:3px 10px}nav a{white-space:nowrap;padding:9px 12px;font-size:13px}.navicon{display:none}.shell{margin-left:0}.topbar{padding:0 22px;height:48px}.map-layout,.grid3{grid-template-columns:1fr}.map-chart{height:460px}.ranking{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.stats{gap:10px}.stat-value{font-size:27px}.snapshot{display:none}.grid2{grid-template-columns:1fr}}@media(max-width:560px){main{padding:20px 14px}.page-heading{align-items:flex-start}.page-heading h1{font-size:24px}.page-heading p{font-size:13px}.eyebrow{font-size:9px}.stats{grid-template-columns:1fr 1fr}.stat{padding:14px}.stat-label{font-size:12px}.stat-value{font-size:28px}.stat-note{font-size:11px}.filterbar{padding:12px;gap:9px}.search{flex-basis:100%;padding:4px 0 10px;border-bottom:1px solid var(--line)}select{max-width:45%;flex:1;font-size:12px}.map-chart{height:330px}.panel-head{padding:18px 16px 8px;flex-wrap:wrap}.map-notes{padding:0 16px 18px;flex-direction:column;gap:7px}.legend{font-size:11px}.chart{height:340px}.ranking{padding:0 16px 18px}.quality-grid{grid-template-columns:1fr}.panel-body{padding:12px 16px}footer{display:block;line-height:1.9}footer span{display:block}.summary-strip{gap:10px;flex-wrap:wrap}.pager{padding:16px;flex-wrap:wrap}dl{grid-template-columns:85px 1fr;gap:14px}dialog{padding:24px}}
:root [hidden]{display:none!important}.source-link{color:#3478ee;font-size:13px}.source-link:hover{text-decoration:underline}.research-links{display:flex;gap:10px;flex-wrap:wrap}.news-banner{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(110deg,#142b47,#244b71);color:#fff;padding:32px 34px;border-radius:9px;margin-bottom:25px}.news-banner .eyebrow{color:#9fbddd}.news-banner h2{font-size:27px;font-weight:550;margin:12px 0}.news-banner p{font-size:14px;color:#afc4da;margin:0}.news-count{text-align:right}.news-count b{font-size:44px;font-weight:500;display:block}.news-count span{color:#adc3da;font-size:12px}.news-toolbar{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);align-items:center;flex-wrap:wrap}.news-tabs{display:flex;gap:24px}.news-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:15px 0;color:var(--muted);font-size:15px}.news-tabs button.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.news-tabs span{font-size:11px;background:#e9eef5;padding:2px 6px;border-radius:4px;margin-left:5px}.news-controls{display:flex;gap:8px}.news-controls input{border:1px solid var(--line);padding:8px 10px;border-radius:5px;font-size:13px;width:230px}.news-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.news-list>.empty{grid-column:1/-1}.news-card{padding:26px;background:#fff;border:1px solid var(--line);border-radius:8px}.news-meta{display:flex;gap:13px;font-size:12px;color:var(--muted);flex-wrap:wrap}.pending{color:#aa741d;background:#fff3db;padding:0 5px}.news-card h2{font-size:19px;line-height:1.65;margin:13px 0}.news-card p{font-size:14px;color:#5e7288;line-height:1.9}.news-tags{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}.news-tags span{font-size:12px;background:#f0f4f9;color:#69809b;padding:3px 8px;border-radius:4px}.news-companies{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}.empty-icon{font-size:36px;color:#9fb2c7;margin-bottom:12px}.empty h2{font-size:19px}.empty p{font-size:14px}@media(max-width:900px){.news-list{grid-template-columns:1fr}}@media(max-width:560px){.news-banner{padding:25px 20px}.news-banner h2{font-size:21px}.news-count{display:none}.news-controls{width:100%;padding-bottom:14px}.news-controls input{width:65%}.news-card{padding:20px}}
.company-research{margin-top:26px;padding:22px;background:#f3f7fc;border:1px solid #dce7f3;border-radius:9px}.company-research h3{margin:6px 0 15px}.company-research dl{margin:20px 0}.company-summary{line-height:1.9}.profile-status{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.listing-badge{display:inline-block;font-size:12px;padding:3px 8px;border-radius:4px;background:#edf0f4;color:#687b90;white-space:nowrap}.listing-badge.listed{background:#e5f5ee;color:#14784d}.listing-badge.delisted{background:#fff1df;color:#a56318}.website-mark{display:block;font-size:11px;color:#3478ee;margin-top:5px}.profile-status .website-mark{display:inline;margin:0}.research-toolbar{padding:14px 25px;background:#f8fafd;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.research-toolbar p{margin:7px 0 0;font-size:12px}.research-filters{display:flex;gap:14px}.research-filters label{display:grid;gap:5px;font-size:12px;color:#637b94}.research-filters select{background:white;max-width:100%}.research-note{padding:0 25px;font-size:12px}.evidence{font-size:13px;border-top:1px solid #dce7f3;padding-top:14px}.evidence summary{cursor:pointer;color:#3478ee}.company-news-search{margin-top:28px}.company-news-search label{display:block;font-size:13px;margin:15px 0 7px}.company-news-search input{width:100%;border:1px solid #ccd9e8;border-radius:5px;padding:12px;margin-bottom:12px}.topic-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.company-news-item{padding:12px 0;border-top:1px solid #e2e8ef}.company-news-item p{font-size:13px}.company-research dd,.source-link{overflow-wrap:anywhere}@media(max-width:560px){.company-research{padding:15px}.research-toolbar{padding:16px}.research-filters{width:100%}.research-filters label{flex:1}.research-note{padding:0 16px}}

/* 城世智矿：可追溯的统计入口与自适应企业详情。 */
.stat{text-align:left;font:inherit;color:var(--ink);position:relative;transition:border-color .15s,box-shadow .15s;min-width:0;cursor:pointer}
.stat:hover{border-color:#3478ee;box-shadow:0 4px 18px #3478ee12}.stat-action{display:block;color:#285eaf;font-size:12px;margin-top:12px}
:where(button,a,summary):focus-visible{outline:3px solid #3478ee;outline-offset:3px}.stat-note{line-height:1.7}
.company-button{color:#18232f;line-height:1.65;overflow-wrap:anywhere}.company-button:hover{color:#18232f;text-decoration:underline}
.company-button.listed-link{color:#1c5db5;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#a9c6ec}.company-button.listed-link:hover{color:#124084}
.table-wrap table{table-layout:fixed;white-space:normal;line-height:1.65}.table-wrap th:first-child{width:29%}.table-wrap th:nth-child(2){width:12%}.table-wrap th:nth-child(3){width:14%}.table-wrap th:nth-child(4){width:18%}.table-wrap th:nth-child(5){width:16%}.table-wrap th:nth-child(6){width:11%}
.table-wrap td,.table-wrap th{padding:16px 14px;vertical-align:top;overflow-wrap:anywhere}.table-wrap td.name-cell{min-width:0;max-width:none}.subline{line-height:1.6;margin-top:5px}.listing-badge,.badge{white-space:nowrap;margin-bottom:4px}
#detail{box-sizing:border-box;max-width:900px;width:calc(100% - 48px);padding:36px;overscroll-behavior:contain;max-height:90vh;border-radius:16px}#detail.list-dialog{max-width:1240px}#detail.choice-dialog{max-width:900px}
#detail h2{padding-right:24px;line-height:1.5;margin:12px 0 18px}#detail .close{position:sticky;top:0;float:right;margin:-16px -16px 0 0;background:#fff;border-radius:50%;z-index:2}#detail dl{line-height:1.8;gap:14px 24px}#detail dd{overflow-wrap:anywhere;min-width:0}#detail .pager{padding:18px 0 0;flex-wrap:wrap;gap:12px}#detail .company-research{margin-top:28px}#detail .eyebrow{margin-top:8px}.back-list{margin-bottom:16px}
.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.choice-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;border:1px solid #dde5ef;background:#f9fbfe;border-radius:10px;padding:18px;text-align:left;font:inherit;color:#1e3550}.choice-card:hover{border-color:#3478ee}.choice-card b{font-size:13px;color:#285eaf}
.geo-directory{border-top:1px solid #edf1f6;padding:16px 22px}.geo-directory summary{cursor:pointer;color:#285eaf;font-size:13px}.geo-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.filter-status .text-button{margin-left:12px}.panel-head{gap:16px}.panel-head>div:first-child{min-width:0}.panel-head p{line-height:1.7}.export-chart{flex-shrink:0}.research-links{flex-wrap:wrap}.company-news-search input{box-sizing:border-box;max-width:100%}
.financial-section{margin-top:24px;padding:24px;background:#f5f8fd;border:1px solid #dce7f6;border-radius:12px}.financial-section h3{margin:0 0 12px}.financial-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.financial-metrics>div{padding:16px;background:white;border-radius:8px}.financial-metrics b{display:block;font-size:22px;margin:8px 0}.financial-metrics span{font-size:12px;color:#60758b}.financial-section p{line-height:1.8}.profile-original{margin-top:28px;border-top:1px solid #e6edf5;padding-top:18px}.profile-original summary{cursor:pointer;font-weight:600}
@media(max-width:1100px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid2{grid-template-columns:1fr}.grid3{grid-template-columns:1fr}.filterbar{flex-wrap:wrap}.filterbar select{max-width:100%}.map-layout{grid-template-columns:1fr}}
@media(max-width:760px){#detail{width:calc(100% - 20px);max-height:94vh;padding:22px 16px}#detail h2{font-size:21px}#detail dl{grid-template-columns:90px minmax(0,1fr);gap:12px}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.financial-metrics{grid-template-columns:1fr}.table-wrap table,.table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;width:auto}.table-wrap thead{display:none}.table-wrap tr{padding:16px;border-bottom:1px solid #e6edf5}.table-wrap td{border:0;padding:4px 0;display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px}.table-wrap td::before{content:attr(data-label);color:#71859c;font-size:12px}.table-wrap td.name-cell{display:block;padding-bottom:10px}.table-wrap td.name-cell::before{display:none}.table-wrap td .subline,.table-wrap td .website-mark{grid-column:2}.table-wrap td .badge{justify-self:start}.table-wrap td.name-cell .subline{display:block}.company-button{font-size:15px}.financial-section{padding:18px}.research-toolbar,.news-toolbar{flex-wrap:wrap}.stat-value{font-size:28px}.stat{padding:18px}.brand{font-size:20px}}
@media(max-width:760px){.table-wrap td .listing-badge{justify-self:start}.financial-metrics b small{font-size:13px}.news-controls{flex-wrap:wrap}.news-controls input{min-width:0;max-width:100%}}
