:root{--canvas:#f4f2ee;--card:#fff;--card-border:#e8e5df;--card-border-strong:#ded9d0;--surface-soft:#f7f5f1;--divider:#f0ede7;--sidebar-bg:#17453a;--sidebar-bg-soft:#1e5347;--sidebar-text:#c3d6cf;--sidebar-text-strong:#fff;--sidebar-active-bg:#b96a28;--sidebar-active-text:#fff;--sidebar-width:208px;--sidebar-gap:12px;--text:#252a29;--text-secondary:#4c5451;--text-muted:#7c8582;--text-faint:#9aa39f;--text-on-dark:#fff;--text-on-dark-muted:#ffffffb8;--text-on-dark-faint:#ffffff8c;--accent:#b4652a;--accent-strong:#9c5320;--accent-soft:#fbf0e4;--accent-border:#e4b98a;--green:#3e9e7e;--green-soft:#e8f4ee;--green-text:#2f7d63;--blue:#4a7fc1;--blue-soft:#eaf1f9;--blue-text:#36639c;--red:#c0563e;--red-soft:#fbeae6;--red-text:#b0472f;--amber:#c98a2e;--amber-soft:#fdf4e3;--amber-text:#9a6a15;--slate:#7f8b97;--chart-line:#b06a34;--chart-area-from:#d6a87857;--chart-area-to:#d6a87805;--chart-grid:#e4e0d8;--chart-axis-text:#9aa39f;--chart-bar-from:#c67a34;--chart-bar-to:#a85a22;--r-card:12px;--r-sm:8px;--r-xs:6px;--r-sidebar:18px;--r-pill:999px;--shadow-card:0 1px 2px #17453a0a, 0 1px 3px #17453a08;--shadow-pop:0 6px 24px #17453a1a;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:28px;--sp-8:32px;--font-cn:"PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", "Source Han Sans SC", "Noto Sans SC", "Heiti SC", "WenQuanYi Micro Hei", sans-serif;--fs-page-title:21px;--fs-card-title:15px;--fs-kpi:27px;--fs-body:13.5px;--fs-label:12.5px;--fs-micro:11.5px;--t-fast:.12s ease;--t-base:.2s cubic-bezier(.22, .61, .36, 1)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--canvas);color:var(--text);font-family:var(--font-cn);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.6}h1,h2,h3,h4,p,figure{margin:0}ul,ol{margin:0;padding:0;list-style:none}button{font-family:inherit;font-size:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input,select{font-family:inherit;font-size:inherit;color:inherit}table{border-collapse:collapse;width:100%}a{color:inherit;text-decoration:none}.num,.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#d8d4cc padding-box content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#c2bdb3 padding-box content-box}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.app{background:var(--canvas);min-height:100vh;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar{width:calc(var(--sidebar-width) + var(--sidebar-gap) * 2);padding:var(--sidebar-gap);flex:none;display:flex}.sidebar-inner{background:var(--sidebar-bg);border-radius:var(--r-sidebar);width:100%;padding:var(--sp-5) var(--sp-3) var(--sp-4);gap:var(--sp-5);top:var(--sidebar-gap);max-height:calc(100vh - var(--sidebar-gap) * 2);flex-direction:column;display:flex;position:sticky;overflow-y:auto}.brand{align-items:center;gap:var(--sp-3);padding:0 var(--sp-3);display:flex}.brand-mark{width:30px;height:30px;color:var(--sidebar-text-strong);background:#ffffff1a;border-radius:9px;flex:none;place-items:center;display:grid}.brand-text{min-width:0}.brand-name{color:var(--sidebar-text-strong);letter-spacing:.02em;font-size:15px;font-weight:700;line-height:1.3}.brand-sub{color:var(--sidebar-text);font-size:var(--fs-micro);white-space:nowrap;text-overflow:ellipsis;line-height:1.4;overflow:hidden}.nav{gap:var(--sp-1);flex-direction:column;display:flex}.nav-group-title{padding:var(--sp-3) var(--sp-3) var(--sp-1);font-size:var(--fs-micro);letter-spacing:.08em;color:#c3d6cf9e;font-weight:600}.nav-item{align-items:center;gap:var(--sp-3);padding:9px var(--sp-3);border-radius:var(--r-sm);color:var(--sidebar-text);font-size:var(--fs-label);text-align:left;width:100%;transition:background var(--t-fast), color var(--t-fast);line-height:1.4;display:flex}.nav-item:hover{background:var(--sidebar-bg-soft);color:var(--sidebar-text-strong)}.nav-item.is-active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:600}.nav-icon{opacity:.9;flex:none;place-items:center;width:16px;height:16px;display:grid}.nav-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.nav-badge{border-radius:var(--r-pill);color:var(--sidebar-text-strong);background:#ffffff24;padding:1px 6px;font-size:10px;font-weight:600;line-height:1.6}.nav-item.is-active .nav-badge{background:#ffffff3d}.sidebar-foot{padding:var(--sp-3);border-radius:var(--r-sm);background:#ffffff0f;margin-top:auto}.sidebar-foot-title{color:var(--sidebar-text-strong);font-size:var(--fs-micro);margin-bottom:2px;font-weight:600}.sidebar-foot-desc{color:var(--sidebar-text);font-size:10.5px;line-height:1.5}.topbar{align-items:center;gap:var(--sp-5);padding:var(--sp-5) var(--sp-6) var(--sp-3);min-height:62px;display:flex}.topbar-titles{flex:1;min-width:0}.page-title{font-size:var(--fs-page-title);color:var(--text);letter-spacing:-.01em;font-weight:700;line-height:1.3}.page-sub{font-size:var(--fs-label);color:var(--text-muted);margin-top:2px;line-height:1.5}.topbar-actions{align-items:center;gap:var(--sp-3);flex:none;display:flex}.select,.search{align-items:center;gap:var(--sp-2);height:34px;padding:0 var(--sp-3);background:var(--card);border:1px solid var(--card-border);border-radius:var(--r-sm);color:var(--text-secondary);font-size:var(--fs-label);white-space:nowrap;display:flex}.select{cursor:pointer;padding-right:var(--sp-2)}.select select{cursor:pointer;font-size:var(--fs-label);color:var(--text-secondary);appearance:none;background:0 0;border:none;outline:none}.select .chev{color:var(--text-faint);place-items:center;display:grid}.search input{width:148px;font-size:var(--fs-label);color:var(--text);background:0 0;border:none;outline:none}.search input::placeholder{color:var(--text-faint)}.btn{align-items:center;gap:var(--sp-2);height:34px;padding:0 var(--sp-4);border-radius:var(--r-sm);border:1px solid var(--card-border);background:var(--card);color:var(--text-secondary);font-size:var(--fs-label);transition:background var(--t-fast), border-color var(--t-fast);white-space:nowrap;font-weight:500;display:inline-flex}.btn:hover{background:var(--surface-soft);border-color:var(--card-border-strong)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-icon{justify-content:center;width:34px;padding:0}.avatar{background:var(--accent-soft);border:1px solid var(--accent-border);width:32px;height:32px;color:var(--accent-strong);font-size:var(--fs-micro);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.tabs{align-items:center;gap:var(--sp-1);background:var(--surface-soft);border:1px solid var(--card-border);border-radius:var(--r-sm);padding:3px;display:flex}.tab{padding:5px var(--sp-3);border-radius:var(--r-xs);font-size:var(--fs-micro);color:var(--text-muted);transition:background var(--t-fast), color var(--t-fast);font-weight:500}.tab:hover{color:var(--text-secondary)}.tab.is-active{background:var(--card);color:var(--text);box-shadow:var(--shadow-card);font-weight:600}.content{min-width:0;padding:0 var(--sp-6) var(--sp-6);gap:var(--sp-5);flex-direction:column;flex:1;display:flex}.section{gap:var(--sp-4);flex-direction:column;display:flex}.section-head{align-items:baseline;gap:var(--sp-3);display:flex}.section-title{color:var(--text);font-size:16px;font-weight:700}.section-desc{font-size:var(--fs-label);color:var(--text-muted)}.grid{gap:var(--sp-4);display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-2-1{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.grid-1-2{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.grid-3-2{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.span-2{grid-column:span 2}.card{background:var(--card);border:1px solid var(--card-border);border-radius:var(--r-card);box-shadow:var(--shadow-card);flex-direction:column;min-width:0;display:flex}.card-head{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5) 0;display:flex}.card-head-main{flex:1;min-width:0}.card-title{font-size:var(--fs-card-title);color:var(--text);font-weight:700;line-height:1.4}.card-sub{font-size:var(--fs-micro);color:var(--text-muted);margin-top:1px;line-height:1.5}.card-tools{align-items:center;gap:var(--sp-2);flex:none;display:flex}.card-chevron{border-radius:var(--r-xs);width:22px;height:22px;color:var(--text-faint);transition:background var(--t-fast), color var(--t-fast);place-items:center;display:grid}.card-chevron:hover{background:var(--surface-soft);color:var(--text-secondary)}.card-body{padding:var(--sp-4) var(--sp-5) var(--sp-5);min-width:0}.card-body-flush{padding:var(--sp-3) 0 var(--sp-1)}.chart{width:100%}.kpi{background:var(--sidebar-bg);border-radius:var(--r-card);padding:var(--sp-4) var(--sp-5) var(--sp-5);gap:var(--sp-2);flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden}.kpi-label{font-size:var(--fs-micro);color:var(--text-on-dark-muted);line-height:1.5}.kpi-value{font-size:var(--fs-kpi);color:var(--text-on-dark);letter-spacing:-.01em;font-weight:700;line-height:1.15}.kpi-value .unit{opacity:.82;margin-left:3px;font-size:14px;font-weight:600}.kpi-delta{align-items:center;gap:var(--sp-2);font-size:var(--fs-micro);color:var(--text-on-dark-muted);display:flex}.kpi-delta .up{color:#8fd8bd;font-weight:600}.kpi-delta .down{color:#f0a58f;font-weight:600}.kpi-spark{right:var(--sp-4);bottom:var(--sp-3);opacity:.42;position:absolute}.stat{background:var(--card);border:1px solid var(--card-border);border-radius:var(--r-card);padding:var(--sp-4) var(--sp-5);flex-direction:column;gap:3px;min-width:0;display:flex}.stat-label{font-size:var(--fs-micro);color:var(--text-muted)}.stat-value{color:var(--text);font-size:22px;font-weight:700;line-height:1.2}.stat-value .unit{color:var(--text-muted);margin-left:3px;font-size:12.5px;font-weight:600}.stat-note{font-size:var(--fs-micro);color:var(--text-faint)}.table-wrap{width:100%;overflow-x:auto}.table{width:100%;font-size:var(--fs-label);border-collapse:collapse}.table th{background:var(--surface-soft);color:var(--text-muted);font-size:var(--fs-micro);text-align:left;padding:9px var(--sp-4);white-space:nowrap;border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);font-weight:600}.table th:first-child{padding-left:var(--sp-5)}.table th:last-child{padding-right:var(--sp-5)}.table td{padding:11px var(--sp-4);border-bottom:1px solid var(--divider);color:var(--text-secondary);vertical-align:middle}.table td:first-child{padding-left:var(--sp-5)}.table td:last-child{padding-right:var(--sp-5)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:#fbfaf8}.table .cell-strong{color:var(--text);font-weight:600}.table .cell-num{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.table .cell-rank{width:34px;color:var(--text-faint);font-variant-numeric:tabular-nums}.tag{border-radius:var(--r-pill);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;line-height:1.7;display:inline-flex}.tag-neutral{background:var(--surface-soft);color:var(--text-muted)}.tag-accent{background:var(--accent-soft);color:var(--accent-strong)}.tag-green{background:var(--green-soft);color:var(--green-text)}.tag-blue{background:var(--blue-soft);color:var(--blue-text)}.tag-red{background:var(--red-soft);color:var(--red-text)}.tag-amber{background:var(--amber-soft);color:var(--amber-text)}.dot{border-radius:50%;flex:none;width:7px;height:7px}.bar-row{align-items:center;gap:var(--sp-3);grid-template-columns:108px minmax(0,1fr) 52px;padding:6px 0;display:grid}.bar-label{font-size:var(--fs-label);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar-track{border-radius:var(--r-pill);background:#efece6;height:7px;overflow:hidden}.bar-fill{border-radius:var(--r-pill);background:linear-gradient(90deg, var(--chart-bar-from), var(--chart-bar-to));height:100%}.bar-value{font-size:var(--fs-label);color:var(--text);text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;font-weight:600}.legend{gap:var(--sp-2) var(--sp-5);flex-wrap:wrap;justify-content:center;display:flex}.legend-item{align-items:center;gap:var(--sp-2);font-size:var(--fs-micro);color:var(--text-secondary);display:flex}.legend-list{flex-direction:column;display:flex}.legend-row{align-items:center;gap:var(--sp-3);border-bottom:1px solid var(--divider);padding:9px 0;display:flex}.legend-row .name{min-width:0;font-size:var(--fs-label);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.legend-row .pct{font-size:var(--fs-label);color:var(--text);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;font-weight:600}.legend-row .sub{color:var(--text-faint);font-size:10.5px;font-weight:400;display:block}.def-list{gap:var(--sp-3);flex-direction:column;display:flex}.def-item{flex-direction:column;gap:2px;display:flex}.def-key{font-size:var(--fs-micro);color:var(--text-muted)}.def-val{font-size:var(--fs-label);color:var(--text);line-height:1.6}.formula{background:var(--surface-soft);border:1px solid var(--divider);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-label);color:var(--text);text-align:center;letter-spacing:.01em}.formula .var{color:var(--accent-strong);font-weight:600}.note{border-left:2px solid var(--accent-border);background:var(--accent-soft);border-radius:0 var(--r-xs) var(--r-xs) 0;padding:var(--sp-3) var(--sp-4);font-size:var(--fs-label);color:var(--text-secondary);line-height:1.65}.note strong{color:var(--text)}.flow{gap:var(--sp-2);flex-direction:column;display:flex}.flow-layer{align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--card-border);border-radius:var(--r-sm);background:var(--card);display:flex}.flow-layer.is-key{border-color:var(--accent-border);background:var(--accent-soft)}.flow-index{border-radius:var(--r-xs);background:var(--sidebar-bg);color:#fff;flex:none;place-items:center;width:24px;height:24px;font-size:11.5px;font-weight:700;display:grid}.flow-layer.is-key .flow-index{background:var(--accent)}.flow-layer-main{flex:1;min-width:0}.flow-layer-name{font-size:var(--fs-label);color:var(--text);font-weight:600}.flow-layer-desc{font-size:var(--fs-micro);color:var(--text-muted);line-height:1.55}.timeline{gap:var(--sp-4);flex-direction:column;display:flex}.tl-item{gap:var(--sp-4);padding-bottom:var(--sp-4);border-bottom:1px solid var(--divider);grid-template-columns:96px minmax(0,1fr);display:grid}.tl-item:last-child{border-bottom:none;padding-bottom:0}.tl-time{font-size:var(--fs-micro);color:var(--text-muted);font-variant-numeric:tabular-nums}.tl-title{font-size:var(--fs-label);color:var(--text);margin-bottom:3px;font-weight:600}.tl-desc{font-size:var(--fs-micro);color:var(--text-muted);line-height:1.6}@media (width<=1440px){.grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1240px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-3-2,.grid-2-1,.grid-1-2{grid-template-columns:minmax(0,1fr)}.span-2{grid-column:span 1}}@media (width<=1024px){.sidebar{width:auto;padding:var(--sp-3)}.sidebar-inner{max-height:none;position:static}}@media (width<=900px){.app{flex-direction:column}.sidebar{width:100%}.sidebar-inner{gap:var(--sp-4);flex-direction:column}.nav{gap:var(--sp-2);padding-bottom:var(--sp-1);flex-direction:row;overflow-x:auto}.nav-group-title{display:none}.nav-item{white-space:nowrap;width:auto}.nav-label{overflow:visible}.topbar{padding:var(--sp-4) var(--sp-4) var(--sp-3);flex-wrap:wrap}.content{padding:0 var(--sp-4) var(--sp-4)}.grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:minmax(0,1fr)}}.faint{color:var(--text-faint)}.muted{color:var(--text-muted)}.tnum{font-variant-numeric:tabular-nums}.kpi-note{color:var(--text-on-dark-faint)}.kpi-chevron{top:var(--sp-3);right:var(--sp-3);border-radius:var(--r-xs);width:22px;height:22px;color:var(--text-on-dark-faint);place-items:center;display:grid;position:absolute}.bar-row-sm{grid-template-columns:84px minmax(0,1fr) 46px}.kv-inline{align-items:baseline;gap:var(--sp-2) var(--sp-4);font-size:var(--fs-micro);color:var(--text-muted);flex-wrap:wrap;display:flex}.kv-inline b{color:var(--text);font-weight:600}.meter{align-items:center;gap:var(--sp-2);display:flex}.meter-track{gap:2px;display:flex}.meter-seg{background:#efece6;border-radius:1px;width:4px;height:12px}.meter-seg.is-on{background:var(--accent)}.legend-row:last-child{border-bottom:none}.tag-cell{flex-wrap:wrap;gap:4px;display:inline-flex}.stack{gap:var(--sp-4);flex-direction:column;min-width:0;display:flex}.stack-sm{gap:var(--sp-2)}.stack-xs{gap:var(--sp-1)}.hint{font-size:var(--fs-micro);color:var(--text-faint);line-height:1.65}.block-title{font-size:var(--fs-micro);letter-spacing:.04em;color:var(--text-muted);font-weight:600}.card-dark{background:var(--sidebar-bg);border-color:#0000;box-shadow:0 2px 10px #17453a29}.card-dark .card-title{color:var(--text-on-dark)}.card-dark .card-sub{color:var(--text-on-dark-muted)}.card-dark .card-chevron{color:var(--text-on-dark-faint)}.card-dark .card-chevron:hover{color:var(--text-on-dark);background:#ffffff1a}.card-dark .block-title,.card-dark .hint,.card-dark .faint{color:var(--text-on-dark-faint)}.card-dark .muted{color:var(--text-on-dark-muted)}.card-dark .def-key{color:var(--text-on-dark-faint)}.card-dark .def-val{color:var(--text-on-dark)}.card-dark .legend-row{border-bottom-color:#ffffff1a}.card-dark .legend-row .name{color:var(--text-on-dark-muted)}.card-dark .legend-row .pct{color:var(--text-on-dark)}.card-dark .legend-row .sub{color:var(--text-on-dark-faint)}.card-dark .bar-label{color:var(--text-on-dark-muted)}.card-dark .bar-track{background:#ffffff24}.card-dark .bar-value{color:var(--text-on-dark)}.card-dark .kv-inline{color:var(--text-on-dark-muted)}.card-dark .kv-inline b{color:var(--text-on-dark)}.card-dark .note{color:var(--text-on-dark-muted);background:#ffffff14;border-left-color:#ffffff4d}.card-dark .note strong{color:var(--text-on-dark)}.card-dark .formula{color:var(--text-on-dark);background:#ffffff14;border-color:#ffffff1f}.card-dark .formula .var{color:#e8b981}.card-dark .table th{color:var(--text-on-dark-faint);background:#ffffff14;border-top-color:#ffffff14;border-bottom-color:#ffffff1f}.card-dark .table td{color:var(--text-on-dark-muted);border-bottom-color:#ffffff14}.card-dark .table tbody tr:hover td{background:#ffffff0d}.card-dark .table .cell-strong{color:var(--text-on-dark)}.card-dark .table .cell-rank{color:var(--text-on-dark-faint)}.bar-fill.fill-accent{background:linear-gradient(90deg, #cf8a45, var(--accent-strong))}.bar-fill.fill-amber{background:linear-gradient(90deg,#dcae5c,#9a6a15)}.bar-fill.fill-green{background:linear-gradient(90deg,#63b394,#2f7d63)}.bar-fill.fill-blue{background:linear-gradient(90deg,#6d99d0,#36639c)}.bar-fill.fill-red{background:linear-gradient(90deg,#d4785f,#b0472f)}.bar-fill.fill-slate{background:linear-gradient(90deg,#a3adb7,#7f8b97)}.card-dark .bar-fill.fill-accent,.card-dark .bar-fill.fill-amber,.card-dark .bar-fill.fill-green,.card-dark .bar-fill.fill-blue,.card-dark .bar-fill.fill-red{background:linear-gradient(90deg,#ffffffeb,#fff9)}.rank-list{gap:var(--sp-2);flex-direction:column;display:flex}.rank-item{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--card-border);border-radius:var(--r-sm);background:var(--card);transition:border-color var(--t-fast), background var(--t-fast);display:flex}.rank-item.is-active{border-color:var(--accent-border);background:var(--accent-soft)}.rank-no{border-radius:var(--r-xs);background:var(--surface-soft);width:20px;height:20px;color:var(--text-muted);font-variant-numeric:tabular-nums;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.rank-item.is-active .rank-no{background:var(--accent);color:#fff}.rank-main{flex:1;min-width:0}.rank-name{font-size:var(--fs-label);color:var(--text);font-weight:600;line-height:1.4}.rank-sub{color:var(--text-faint);font-size:10.5px;line-height:1.4}.rank-val{font-size:var(--fs-label);color:var(--text);font-variant-numeric:tabular-nums;text-align:right;flex:none;font-weight:700}.rank-item.is-active .rank-val{color:var(--accent-strong)}.chip-row{gap:var(--sp-2);flex-wrap:wrap;display:flex}.chip{padding:5px var(--sp-3);border-radius:var(--r-sm);background:var(--surface-soft);border:1px solid var(--divider);font-size:var(--fs-micro);color:var(--text-muted);white-space:nowrap;align-items:baseline;gap:5px;display:inline-flex}.chip b{font-size:var(--fs-label);color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.card-dark .chip{color:var(--text-on-dark-muted);background:#ffffff14;border-color:#ffffff1f}.card-dark .chip b{color:var(--text-on-dark)}.price-map{flex-direction:column;gap:10px;display:flex}.price-row,.price-scale{align-items:center;gap:var(--sp-4);grid-template-columns:92px minmax(0,1fr) 108px;display:grid}.price-name{font-size:var(--fs-label);color:var(--text-secondary);font-weight:600}.price-axis{border-radius:var(--r-xs);background:var(--surface-soft);height:20px;position:relative;overflow:hidden}.price-gap{background:var(--accent-soft);border-left:1px dashed var(--accent-border);border-right:1px dashed var(--accent-border);position:absolute;top:0;bottom:0}.price-band{border-radius:var(--r-pill);position:absolute;top:5px;bottom:5px}.price-none{border-radius:var(--r-pill);border:1px dashed var(--card-border-strong);position:absolute;inset:5px 6px}.price-mark{background:var(--accent-strong);width:2px;position:absolute;top:-2px;bottom:-2px}.price-val{font-size:var(--fs-micro);color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums}.price-scale .price-axis{background:0 0;height:14px;overflow:visible}.price-scale .price-axis span{color:var(--text-faint);font-size:10.5px;position:absolute;transform:translate(-50%)}.price-legend{gap:var(--sp-4);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}
