#app-body:has(.ed-page) #inspect-panel { display:none; }
body:has(.ed-page) .panel-sheet-handle { display:none!important; }
#view-viewport:has(.ed-page) { border:0; padding:0; background:transparent; }
.ed-page { max-width:1320px; margin:auto; color:var(--ink); --ed-ease:cubic-bezier(.22,1,.36,1); }
.ed-kicker { display:flex; align-items:center; gap:12px; color:var(--ink-3); font-size:11px; letter-spacing:.08em; margin:12px 0 28px; }
.ed-kicker::before { content:''; width:26px; height:2px; background:var(--surplus); }
.ed-head { display:flex; justify-content:space-between; gap:40px; align-items:flex-end; margin-bottom:36px; }
.ed-head h1 { font-size:clamp(28px,3.3vw,48px); font-weight:550; line-height:1.28; letter-spacing:-.04em; margin:0; text-wrap:balance; }
.ed-head h1 em { color:var(--surplus); font-style:normal; font-variant-numeric:tabular-nums; }
.ed-deck { color:var(--ink-2); font-size:13px; line-height:1.9; margin:16px 0 0; max-width:700px; }
.ed-total { flex:none; text-align:right; padding-bottom:3px; }
.ed-total small { display:block; color:var(--ink-3); font-size:11px; margin-bottom:8px; }
.ed-total strong { font-size:38px; letter-spacing:-.045em; font-weight:500; font-variant-numeric:tabular-nums; }
.ed-total span { margin-left:7px; font-size:12px; color:var(--ink-3); }
.ed-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; border-top:1px solid var(--line); padding:19px 0; }
.ed-tabs { display:flex; gap:6px; flex-wrap:wrap; }
.ed-btn { border:0; border-radius:4px; background:transparent; color:var(--ink-2); padding:9px 13px; font-size:12px; cursor:pointer; transition:background .2s,color .2s,transform .25s var(--ed-ease); }
.ed-btn:hover { background:var(--surplus-bg); color:var(--surplus); }
.ed-btn:active { transform:scale(.97); }
.ed-btn.on { background:var(--ink); color:white; }
.ed-btn:focus-visible,.ed-page input:focus-visible,.ed-page select:focus-visible { outline:2px solid var(--surplus); outline-offset:3px; }
.ed-legend { display:flex; gap:19px; font-size:11px; color:var(--ink-3); align-items:center; }
.ed-legend i { display:inline-block; width:7px; height:7px; margin-right:6px; border-radius:1px; }
.ed-chart-scroll { overflow-x:auto; scrollbar-width:thin; }
.ed-chart { width:100%; display:block; overflow:visible; }
.ed-chart text { font-family:var(--font-sans); font-variant-numeric:tabular-nums; }
.ed-source { font-size:11px; color:var(--ink-3); line-height:1.8; padding:14px 0; border-bottom:1px solid var(--line); }
.ed-source summary { cursor:pointer; color:var(--ink-2); }
.ed-source code { font-size:10px; overflow-wrap:anywhere; }
.ed-section-head { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:30px 0 18px; }
.ed-section-head h2 { font-weight:500; font-size:20px; margin:0; letter-spacing:-.02em; }
.ed-section-head small { font-size:11px; color:var(--ink-3); }
.ed-detail { padding:26px 28px; margin-top:24px; background:#f5f7fa; border-left:2px solid var(--surplus); animation:ed-reveal .5s var(--ed-ease) both; }
.ed-detail h2 { margin:0; font-size:23px; font-weight:500; }
.ed-detail p { font-size:12px; color:var(--ink-2); line-height:1.9; }
.ed-metrics { display:flex; gap:40px; flex-wrap:wrap; margin:25px 0; }
.ed-metrics small { display:block; color:var(--ink-3); font-size:11px; margin-bottom:9px; }
.ed-metrics strong { font-size:27px; font-weight:500; font-variant-numeric:tabular-nums; }
.ed-up { color:var(--surplus); }.ed-down { color:var(--deficit); }
.ed-table { width:100%; border-collapse:collapse; font-size:12px; }
.ed-table th { text-align:left; color:var(--ink-3); font-size:10px; font-weight:400; padding:12px 10px; border-bottom:1px solid var(--line); }
.ed-table td { padding:14px 10px; border-bottom:1px solid var(--line); font-variant-numeric:tabular-nums; }
.ed-table tr[data-code] { cursor:pointer; transition:background .2s; }.ed-table tr[data-code]:hover { background:var(--surplus-bg); }
.ed-table .num { text-align:right; }
.ed-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.ed-search { background:#f5f6f8; border:1px solid transparent; border-radius:4px; padding:12px 15px; font-size:13px; width:100%; }
.ed-select { border:1px solid var(--line); background:white; border-radius:4px; padding:8px 12px; font-size:12px; max-width:100%; }
.ed-empty { color:var(--ink-3); padding:50px 20px; text-align:center; font-size:13px; }
.ed-chart [role=button] { cursor:pointer; outline:none; }.ed-chart [role=button]:focus-visible rect { stroke:var(--ink); stroke-width:2; }
@keyframes ed-reveal { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
.ed-head { animation:ed-reveal .65s var(--ed-ease) both; }
@media(max-width:767px) {
  .ed-kicker { margin:8px 0 22px;font-size:10px; }.ed-head { display:block; margin-bottom:25px; }.ed-head h1 { font-size:31px; }
  .ed-total { text-align:left; display:flex;align-items:baseline;gap:9px;margin-top:22px; }.ed-total strong {font-size:25px;}.ed-total small {margin:0;}.ed-total span {margin:0;}
  .ed-deck {font-size:12px;}.ed-toolbar {padding:14px 0;}.ed-legend {font-size:10px;gap:13px;}.ed-grid {grid-template-columns:1fr;gap:22px;}
  .ed-detail {padding:20px 16px;}.ed-metrics {gap:22px;}.ed-metrics strong {font-size:22px;}.ed-table th,.ed-table td {padding:12px 5px;}.ed-table {font-size:11px;}
}
@media(prefers-reduced-motion:reduce) { .ed-page *, .ed-page *::before {animation:none!important;transition:none!important;} }

.rg-sticky {position:sticky;top:30px;align-self:start;min-width:0;}
.rg-rank-list {max-height:680px;overflow:auto;margin-top:15px;scrollbar-width:thin;}
.rg-rank {display:flex;align-items:center;gap:14px;width:100%;padding:16px 5px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;cursor:pointer;transition:background .2s;}
.rg-rank:hover,.rg-rank:focus-visible {background:var(--surplus-bg);}
.rg-rank-n {color:#a4abb5;font-size:10px;width:18px;}.rg-rank-main {flex:1;min-width:0;font-size:12px;}.rg-rank-value {font-variant-numeric:tabular-nums;font-size:13px;min-width:64px;text-align:right;}
.rg-bar {display:block;height:3px;background:#f0f2f5;margin-top:10px;}.rg-bar i {display:block;height:100%;transform-origin:left;animation:rg-grow .7s cubic-bezier(.22,1,.36,1) both;}
@keyframes rg-grow {from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:767px){.rg-sticky{position:static}.rg-comparison{display:flex;flex-direction:column-reverse}.rg-rank-list{max-height:480px}}

.cm-layout{display:grid;grid-template-columns:265px minmax(0,1fr);gap:55px;padding-top:15px}.cm-directory{border-right:1px solid var(--line);padding-right:25px}.cm-filter{display:flex;gap:8px;align-items:center;justify-content:space-between;margin:15px 0;font-size:10px;color:var(--ink-3)}.cm-filter .ed-select{font-size:10px;padding:7px}
#cm-list{max-height:780px;overflow:auto;scrollbar-width:thin}.cm-item{display:block;width:100%;padding:15px 12px;border:0;border-bottom:1px solid #f1f2f4;background:transparent;text-align:left;cursor:pointer;transition:background .2s,color .2s}.cm-item span{display:block;font-size:12px;line-height:1.5}.cm-item small{display:block;font-size:10px;color:var(--ink-3);margin-top:6px}.cm-item:hover{background:#f6f8fb}.cm-item.on{background:#eef4fd;color:var(--surplus);box-shadow:inset 2px 0 var(--surplus)}.cm-track-head{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.cm-track-head h3{font-size:13px;font-weight:500;margin:0}.cm-track-head span{font-size:10px;color:var(--ink-3)}.cm-main .ed-metrics{margin:18px 0 26px;min-height:65px}.cm-state-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:10px;color:var(--ink-3);padding:5px 0 12px}.cm-state-legend i{display:inline-block;width:7px;height:7px;margin-right:5px}
@media(max-width:767px){.cm-layout{grid-template-columns:1fr;gap:25px}.cm-directory{border-right:0;padding-right:0}#cm-list{max-height:150px;display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.cm-item{padding:10px}.cm-filter{margin:10px 0}.cm-state-legend{gap:10px}.cm-main .ed-metrics{gap:20px}.cm-main .ed-metrics strong{font-size:21px}}

body:has(.ed-page) #first-run-hint {display:none!important}
#commodity-story .ed-head h1 {font-size:clamp(29px,2.8vw,40px)}
#commodity-story .ed-head {margin-bottom:24px}

#ct-waterfall {min-width:840px}
@media(max-width:767px){#contribution-story .ed-chart-scroll::before{content:'左右滑动，查看完整贡献与抵消';display:block;font-size:10px;color:var(--ink-3);padding:10px 0}}

.ct-step {transition:opacity .18s ease}

.year-legend{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:12px 0}.year-key{border:0;background:transparent;padding:5px 8px;font-size:10px;color:var(--ink-3);border-radius:3px;cursor:pointer}.year-key.on{background:var(--surplus-bg);color:var(--surplus);font-weight:600}.year-legend span{font-size:10px;color:#8995a5;margin-left:8px}.year-readout{font-size:10px;line-height:1.8;min-height:36px;color:#7e8998}.year-key:focus-visible{outline:2px solid #0b3d91}
