/* finesse · register=product · A=steel-cyan+amber · B=800/500 · C=release-layout · D=state-feedback · E=instrument-panel · SOUL=7 SPECTACLE=3 DENSITY=9 */
:root{--bg:#010817;--panel:#03142d;--panel-deep:#020d20;--line:#1268c8;--line-hot:#31a9ff;--cyan:#19e5ff;--blue:#258cff;--violet:#a35bff;--gold:#ffc342;--orange:#ff914b;--ink:#eaf7ff;--muted:#8aa9c7;--font:"Bahnschrift","Microsoft YaHei UI","Noto Sans SC",sans-serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#000713;color:var(--ink);font-family:var(--font);font-synthesis:none}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 50% 40%,rgba(0,89,208,.18),transparent 56%),linear-gradient(rgba(16,85,153,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(16,85,153,.06) 1px,transparent 1px);background-size:auto,42px 42px,42px 42px}
.screen{position:fixed;left:50%;top:50%;width:1920px;height:1080px;transform:translate(-50%,-50%) scale(var(--scale,1));transform-origin:center;padding:10px 12px 12px;display:grid;grid-template-columns:490px minmax(0,1fr) 490px;grid-template-rows:62px 168px 470px 320px;grid-template-areas:"header header header" "stores metrics products" "stores map products" "analytics analytics analytics";gap:12px;background:linear-gradient(180deg,rgba(0,7,20,.5),rgba(1,11,29,.8));isolation:isolate}
.topbar{grid-area:header;display:grid;grid-template-columns:420px 1fr 420px;align-items:center;position:relative;border-bottom:1px solid rgba(29,131,236,.28)}.topbar:before,.topbar:after{content:"";position:absolute;bottom:-1px;width:38%;height:12px;border-top:2px solid #2b89ff}.topbar:before{left:10%;clip-path:polygon(0 0,82% 0,86% 70%,100% 70%,100% 100%,84% 100%,80% 28%,0 28%);background:linear-gradient(90deg,transparent,rgba(26,151,255,.16))}.topbar:after{right:10%;transform:scaleX(-1);clip-path:polygon(0 0,82% 0,86% 70%,100% 70%,100% 100%,84% 100%,80% 28%,0 28%);background:linear-gradient(90deg,transparent,rgba(26,151,255,.16))}
.live-status{display:flex;align-items:center;gap:9px;padding-left:18px;color:#b9d1e5;font-size:16px}.live-status i{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan);animation:pulse 1.8s ease-in-out infinite}.brand{text-align:center;align-self:start;padding-top:1px;position:relative;z-index:2}.brand strong{display:block;font-size:34px;line-height:1.16;letter-spacing:.16em;text-shadow:0 0 7px #fff,0 0 18px rgba(49,137,255,.75)}.brand small{display:block;margin-top:4px;color:#477da7;font-size:9px;letter-spacing:.42em}.topbar time{justify-self:end;padding-right:18px;color:var(--cyan);font-size:17px;font-variant-numeric:tabular-nums;text-shadow:0 0 9px rgba(25,229,255,.45)}
.live-status.error{color:var(--orange)}.live-status.error i{background:var(--orange);box-shadow:0 0 12px var(--orange);animation:none}.live-status.warning{color:var(--gold)}.live-status.warning i{background:var(--gold);box-shadow:0 0 12px var(--gold);animation:none}
.panel{min-width:0;min-height:0;overflow:hidden;position:relative;background:linear-gradient(145deg,rgba(4,25,57,.97),rgba(1,12,31,.98));border:1px solid rgba(31,128,232,.62);clip-path:polygon(0 13px,13px 0,calc(100% - 20px) 0,100% 20px,100% calc(100% - 13px),calc(100% - 13px) 100%,20px 100%,0 calc(100% - 20px));box-shadow:inset 0 0 44px rgba(0,83,180,.12)}.panel:before,.panel:after{content:"";position:absolute;z-index:3;pointer-events:none}.panel:before{left:0;top:0;width:106px;height:25px;border-left:3px solid var(--line-hot);border-top:3px solid var(--line-hot);clip-path:polygon(0 0,100% 0,100% 3px,28px 3px,15px 16px,3px 16px,3px 100%,0 100%);filter:drop-shadow(0 0 5px #087eff)}.panel:after{right:0;bottom:0;width:100px;height:18px;border-right:2px solid var(--line-hot);border-bottom:2px solid var(--line-hot);filter:drop-shadow(0 0 5px #087eff)}
h2{height:52px;margin:0;padding:0 18px;display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(34,113,199,.3);font-size:20px;letter-spacing:.04em;text-shadow:0 0 12px rgba(124,205,255,.25)}h2>span{font-size:16px;font-weight:500;color:#e6f3ff}.title-bars{width:22px;height:20px;display:inline-block;background:linear-gradient(90deg,transparent 0 8%,#2498ff 8% 25%,transparent 25% 38%,#27d9ff 38% 57%,transparent 57% 69%,#3e79ff 69% 87%,transparent 87%);filter:drop-shadow(0 0 5px #168cff)}
.stores-panel{grid-area:stores}.products-panel{grid-area:products}.metrics-panel{grid-area:metrics}.map-panel{grid-area:map}.analytics-panel{grid-area:analytics}
.screen.release-layout{display:block;padding:0}.screen.release-layout>.topbar{position:absolute;left:12px;right:12px;top:10px;height:62px;z-index:100}.screen.release-layout>.panel{position:absolute;grid-area:auto}.screen.release-layout>.metrics-panel{grid-template-rows:minmax(30px,.42fr) minmax(60px,.8fr) minmax(78px,1fr)}
.screen>.panel[hidden]{display:none!important}
.table-head{height:30px;padding:0 16px 0 54px;display:grid;grid-template-columns:minmax(0,1fr) 92px 62px 90px;align-items:center;color:#809fbd;font-size:11px;border-bottom:1px solid rgba(35,105,178,.25)}.table-head span:not(:first-child){text-align:right}.store-list{list-style:none;margin:0;padding:0 14px;height:calc(100% - 82px);display:grid;grid-template-rows:repeat(10,minmax(0,1fr))}.store-list li{--tier:#19dcff;--tier-soft:rgba(25,220,255,.13);min-height:0;display:grid;grid-template-columns:35px minmax(0,1fr) 78px 56px 92px;align-items:center;gap:7px;border-bottom:1px solid rgba(39,111,184,.25);background:linear-gradient(90deg,var(--tier-soft),transparent 72%);padding:3px 3px}.store-list li:last-child{border:0}.tier-1{--tier:var(--gold)!important;--tier-soft:rgba(255,195,66,.13)!important}.tier-2{--tier:#c1d7ed!important;--tier-soft:rgba(193,215,237,.11)!important}.tier-3{--tier:var(--orange)!important;--tier-soft:rgba(255,145,75,.12)!important}.tier-mid{--tier:#21cdef!important;--tier-soft:rgba(33,205,239,.1)!important}.tier-low{--tier:#3d91ff!important;--tier-soft:rgba(61,145,255,.08)!important}.store-rank{width:28px;height:28px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--tier),transparent 40%);border-radius:3px;color:var(--tier);font-size:14px;font-weight:900;font-variant-numeric:tabular-nums;background:rgba(0,38,78,.75)}.tier-1 .store-rank,.tier-2 .store-rank,.tier-3 .store-rank{clip-path:polygon(50% 0,94% 19%,100% 57%,77% 100%,23% 100%,0 57%,6% 19%);border:0;border-radius:0;background:var(--tier);color:#04142a;box-shadow:0 0 12px var(--tier)}.store-name{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.store-value,.store-share{text-align:right;font-size:12px;font-variant-numeric:tabular-nums}.store-value{color:#d7e9f8}.store-share{color:#9eb7cd}.store-spark{width:92px;height:24px}.store-spark polyline{fill:none;stroke:var(--cyan);stroke-width:1.7;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px var(--cyan))}.store-progress{position:absolute;left:55px;right:201px;bottom:2px;height:4px;background:rgba(64,137,197,.14)}.store-progress i{display:block;height:100%;background:linear-gradient(90deg,#1477df,var(--cyan));box-shadow:0 0 7px var(--cyan)}.store-list li{position:relative}
.metrics-panel{display:grid;grid-template-rows:30px 60px 78px;padding:0 10px 10px}.gmv-label{align-self:end;text-align:center;color:#b6d0e7;font-size:17px}.odometer{display:flex;justify-content:center;align-items:center;gap:6px;font-size:0;font-variant-numeric:tabular-nums}.odometer .digit,.odometer .currency{width:48px;height:55px;display:grid;place-items:center;background:linear-gradient(180deg,rgba(15,61,119,.92),rgba(1,16,43,.98));border:1px solid rgba(36,130,248,.76);box-shadow:inset 0 0 12px rgba(27,121,255,.3),0 0 8px rgba(22,107,255,.2);font-size:39px;color:#f0fbff;text-shadow:0 0 8px #42a9ff}.odometer .currency{width:38px;font-size:30px}.odometer .comma{font-size:38px;color:#d7edff;align-self:end;margin-bottom:7px}.metrics-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding-top:6px}.metric{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:7px 12px;background:linear-gradient(145deg,rgba(6,48,94,.9),rgba(2,23,55,.95));border:1px solid rgba(31,117,226,.7);clip-path:polygon(0 8px,8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%)}.metric:after{content:attr(data-code);position:absolute;right:8px;top:8px;color:rgba(48,170,255,.38);font-size:11px;font-weight:900}.metric span{color:#9fb7ce;font-size:13px}.metric b{margin-top:7px;color:#34caff;font-size:23px;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 0 8px rgba(46,192,255,.38)}
.map-panel{display:grid;grid-template-rows:42px minmax(0,1fr)}.map-title{height:42px;justify-content:center;border:0;font-size:21px}.map-title:before,.map-title:after{content:"";width:100px;height:1px;background:linear-gradient(90deg,transparent,#237fe2)}.map-title:after{transform:scaleX(-1)}.map-stage{position:relative;min-height:0;background:radial-gradient(ellipse at 50% 62%,rgba(0,100,227,.24),transparent 58%),repeating-radial-gradient(ellipse at 50% 58%,rgba(24,113,216,.17) 0 1px,transparent 2px 45px)}.map-stage:after{content:"";position:absolute;left:14%;right:14%;bottom:5%;height:58px;border:2px solid rgba(21,125,255,.48);border-radius:50%;transform:perspective(180px) rotateX(64deg);box-shadow:0 0 18px rgba(0,104,255,.3),inset 0 0 16px rgba(25,213,255,.1);pointer-events:none}.map-stage svg{position:relative;z-index:1;display:block;width:100%;height:100%;padding:0 34px 14px;filter:drop-shadow(0 0 7px rgba(39,140,255,.55))}.province{stroke:rgba(98,176,255,.92);stroke-width:1.1;vector-effect:non-scaling-stroke;transition:.25s}.province.is-active{stroke:#fff;stroke-width:2;filter:drop-shadow(0 0 7px #33b8ff)}.route-line{fill:none;stroke:url(#routeGradient);stroke-width:1.2;stroke-dasharray:7 5;vector-effect:non-scaling-stroke;opacity:.72;animation:route-flow 2.4s linear infinite}.route-node{fill:#5df7ff;stroke:#dfffff;stroke-width:1;filter:drop-shadow(0 0 5px #19e5ff)}.province-label{fill:#c9e9ff;font:600 10px var(--font);paint-order:stroke;stroke:#03204a;stroke-width:3px}.national-total{position:absolute;z-index:2;left:20px;bottom:20px;width:118px;height:118px;border:3px solid #269bff;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,rgba(7,46,91,.92),rgba(1,15,37,.95));box-shadow:0 0 0 7px rgba(22,128,244,.16),0 0 22px rgba(24,147,255,.45),inset 0 0 18px rgba(28,118,255,.28)}.national-total span{font-size:13px;color:#b3d5ed}.national-total strong{font-size:34px;line-height:1.1;color:#3ed7ff;text-shadow:0 0 9px #168cff}.national-total small{font-size:12px;color:#b4cde1}.map-legend{position:absolute;z-index:2;right:20px;bottom:18px;width:120px;padding:7px 9px;border:1px solid rgba(36,136,244,.5);background:rgba(0,13,35,.88);display:grid;grid-template-columns:1fr 1fr;gap:4px}.map-legend i{grid-column:1/-1;height:7px;background:linear-gradient(90deg,#062452,#25e6ff);box-shadow:0 0 8px #168cff}.map-legend small{font-size:9px;color:#87a9c7}.map-legend small:last-child{text-align:right}.province-focus-marker{pointer-events:none}.province-focus-line{stroke:#59efff;stroke-width:1;stroke-dasharray:4 3}.province-focus-ring{fill:none;stroke:#fff23c;stroke-width:2;animation:province-pulse 1.5s ease-out infinite}.province-focus-dot{fill:#fff23c;filter:drop-shadow(0 0 5px #fff23c)}.province-focus-card{height:100%;padding:8px 11px;display:grid;grid-template-columns:1fr auto;align-content:center;gap:3px 8px;background:rgba(1,17,45,.96);border:1px solid #489cff;color:var(--ink);font-family:var(--font);box-shadow:0 0 12px rgba(37,120,255,.4)}.province-focus-card strong,.province-focus-card b{font-size:14px}.province-focus-card b{color:var(--cyan)}.province-focus-card span{grid-column:1/-1;color:#9ab4ca;font-size:11px}
.product-headings{grid-template-columns:minmax(0,1fr) 94px 58px;padding-left:58px}.product-list{height:calc(100% - 82px);padding:0 14px;display:grid;grid-template-rows:repeat(10,minmax(0,1fr))}.product{--tier:#2e9cff;--tier-soft:rgba(46,156,255,.1);min-height:0;padding:3px 4px;border-bottom:1px solid rgba(39,111,184,.25);background:linear-gradient(90deg,var(--tier-soft),transparent 75%);display:grid;grid-template-rows:1fr 5px;gap:2px}.product:last-child{border:0}.product-head{display:flex;align-items:center;justify-content:space-between}.product-name{display:flex;align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:700}.product-rank{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--tier),transparent 40%);background:rgba(0,37,78,.78);color:var(--tier);font-style:normal;font-weight:900}.tier-1 .product-rank,.tier-2 .product-rank,.tier-3 .product-rank{background:var(--tier);color:#04142a;clip-path:polygon(50% 0,94% 19%,100% 57%,77% 100%,23% 100%,0 57%,6% 19%);border:0}.product-thumb{width:34px;height:34px;display:grid;place-items:center;border-radius:5px;background:linear-gradient(145deg,#e8f2f8,#7897ae);color:#08213d;font-size:13px;font-weight:900;box-shadow:inset 0 0 7px #fff,0 0 6px rgba(73,171,255,.25)}.product-head b{font-size:12px;color:#dcecf7;font-variant-numeric:tabular-nums}.product-share{width:52px;text-align:right;color:#9db7cd;font-size:11px}.product-track{grid-row:2;height:5px;margin-left:70px;background:rgba(64,137,197,.16)}.product-fill{display:block;height:100%;background:linear-gradient(90deg,#1c7fff,var(--tier));box-shadow:0 0 7px var(--tier);animation:grow .9s cubic-bezier(.16,1,.3,1) both}
.analytics-panel{display:grid;grid-template-columns:minmax(0,2.3fr) repeat(3,minmax(0,.62fr));gap:12px;padding:10px 14px}.analytics-panel:before{width:130px}.analytics-main{min-width:0;display:grid;grid-template-rows:44px 1fr}.analytics-main h2{height:44px;padding:0 8px;border:0;font-size:18px}.chart-legend{margin-left:auto!important;display:flex;align-items:center;gap:8px;font-size:11px!important;color:#9eb8d0!important}.chart-legend i{width:24px;height:3px;background:var(--cyan);box-shadow:0 0 6px var(--cyan)}.chart-legend i:nth-of-type(2){background:var(--violet);box-shadow:0 0 6px var(--violet)}#provinceTrend{display:block;width:100%;height:100%;overflow:visible}.chart-grid{stroke:rgba(75,130,184,.22);stroke-width:1;stroke-dasharray:3 3}.chart-axis{fill:#91aec7;font:11px var(--font)}.chart-sales{fill:none;stroke:var(--cyan);stroke-width:3;filter:drop-shadow(0 0 5px #168cff)}.chart-orders{fill:none;stroke:var(--violet);stroke-width:3;filter:drop-shadow(0 0 5px #8c4fff)}.chart-dot-sales{fill:#dffcff;stroke:var(--cyan);stroke-width:3}.chart-dot-orders{fill:#f3e4ff;stroke:var(--violet);stroke-width:3}.chart-value-sales{fill:var(--cyan);font:700 11px var(--font)}.chart-value-orders{fill:#d785ff;font:700 11px var(--font)}
.insight-card{align-self:stretch;margin:14px 0 8px;padding:18px 18px;position:relative;overflow:hidden;border:1px solid rgba(44,125,232,.55);clip-path:polygon(0 12px,12px 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);background:linear-gradient(145deg,rgba(5,34,76,.96),rgba(2,15,38,.98));box-shadow:inset 0 0 28px rgba(32,99,211,.1)}.insight-card:before{content:"";position:absolute;left:0;right:0;top:43px;height:1px;background:linear-gradient(90deg,transparent,currentColor,transparent);opacity:.55}.insight-card>span{display:block;color:#a9c2d8;font-size:16px}.insight-card>strong{display:block;margin-top:22px;font-size:28px}.insight-card>b{display:block;margin-top:8px;font-size:43px;line-height:1;color:currentColor;text-shadow:0 0 12px currentColor;font-variant-numeric:tabular-nums}.insight-card>small{display:block;margin-top:10px;color:#8fa9c0;font-size:12px}.insight-blue{color:#37b7ff}.insight-violet{color:#ae67ff;border-color:rgba(151,79,255,.55)}.insight-cyan{color:#33e4e5;border-color:rgba(38,198,215,.55)}.insight-bars{position:absolute;left:18px;right:18px;bottom:17px;height:36px;background:repeating-linear-gradient(90deg,currentColor 0 8px,transparent 8px 18px);clip-path:polygon(0 88%,10% 78%,20% 70%,30% 76%,40% 55%,50% 62%,60% 38%,70% 44%,80% 17%,90% 25%,100% 0,100% 100%,0 100%);opacity:.85}.insight-stars{position:absolute;left:18px;bottom:22px;color:var(--gold);font-style:normal;font-size:25px;letter-spacing:5px;text-shadow:0 0 7px rgba(255,195,66,.45)}
.empty-screen{position:fixed;inset:0;display:grid;place-content:center;text-align:center;background:var(--bg);z-index:10}.empty-screen[hidden]{display:none}.empty-screen strong{font-size:38px}.empty-screen p{color:var(--muted);font-size:18px}.empty-screen a{justify-self:center;margin-top:14px;padding:13px 22px;background:var(--cyan);color:#041326;text-decoration:none;font-weight:800}.load-error{color:var(--orange)}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes route-flow{to{stroke-dashoffset:-24}}@keyframes pulse{50%{opacity:.35;transform:scale(.72)}}@keyframes province-pulse{0%{opacity:1;r:7}100%{opacity:0;r:18}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.route-line{stroke:#5beeff;stroke-width:1.6;opacity:.78;filter:drop-shadow(0 0 4px #168cff)}
.province{fill-opacity:.72;stroke:rgba(126,196,255,.82);stroke-width:1.05;filter:drop-shadow(0 0 2px rgba(45,138,255,.32))}.province.has-data{animation:province-breathe 4.8s ease-in-out infinite alternate}.province.is-active{fill-opacity:1;stroke:#e7fbff;stroke-width:2;filter:drop-shadow(0 0 8px rgba(78,198,255,.95))}.map-scan{pointer-events:none;mix-blend-mode:screen;animation:map-scan 6.8s cubic-bezier(.45,0,.55,1) infinite}.hub-halo{pointer-events:none;mix-blend-mode:screen;transform-box:fill-box;transform-origin:center;animation:hub-energy 2.7s ease-in-out infinite}.route-line{stroke:url(#routeGradient);stroke-width:1.45;opacity:.72;filter:drop-shadow(0 0 3px #2fcfff)}.route-node{animation:route-node-pulse 2.1s ease-in-out infinite alternate}.map-legend i{background:linear-gradient(90deg,rgba(52,111,255,.5),rgba(141,104,255,.65),rgba(34,215,232,.72),rgba(85,215,170,.8),rgba(255,210,106,.84),rgba(255,114,173,.88));box-shadow:0 0 9px rgba(82,190,255,.5)}
@keyframes province-breathe{0%{fill-opacity:.58;filter:drop-shadow(0 0 2px rgba(45,138,255,.2))}100%{fill-opacity:.86;filter:drop-shadow(0 0 6px rgba(62,186,255,.56))}}@keyframes map-scan{0%{transform:translateX(0);opacity:0}12%{opacity:.9}82%{opacity:.8}100%{transform:translateX(1240px);opacity:0}}@keyframes hub-energy{0%,100%{opacity:.52;transform:scale(.82)}50%{opacity:1;transform:scale(1.18)}}@keyframes route-node-pulse{from{opacity:.55;r:2.8}to{opacity:1;r:4.2}}@media(prefers-reduced-motion:reduce){.map-scan{display:none}.province.has-data,.hub-halo,.route-node{animation:none!important}}
.product-thumb{overflow:hidden}.product-thumb img{display:block;width:100%;height:100%;padding:4px;object-fit:cover}.product-thumb img[src$="lucide-package-check.svg"]{object-fit:contain;filter:brightness(.35) saturate(1.4)}
.province.is-active{transform:scale(1.025);transform-box:fill-box;transform-origin:center}
.rail-hint{margin-left:auto;color:#7fa7c7!important;font-size:12px!important;font-weight:500!important}.province-rail-shell{position:relative;min-width:0;min-height:0;height:calc(100% - 44px);overflow:hidden;border:1px solid rgba(37,127,231,.32);background:linear-gradient(90deg,rgba(2,18,45,.96),rgba(5,37,78,.72),rgba(2,18,45,.96))}.province-rail-shell:before,.province-rail-shell:after{content:"";position:absolute;z-index:3;top:0;bottom:0;width:54px;pointer-events:none}.province-rail-shell:before{left:0;background:linear-gradient(90deg,#03152f,transparent)}.province-rail-shell:after{right:0;background:linear-gradient(-90deg,#03152f,transparent)}#provinceDetails{height:100%;overflow:hidden}.province-track{height:100%;display:flex;width:max-content}.province-sequence{display:flex;align-items:center;gap:10px;padding:8px 5px}.province-track.is-rolling{animation:province-scroll var(--province-scroll-duration,36s) linear infinite}.province-detail{width:258px;height:72px;flex:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:1fr 1fr;align-items:center;column-gap:12px;padding:8px 12px;border:1px solid rgba(42,131,235,.52);background:linear-gradient(145deg,rgba(6,44,91,.92),rgba(2,17,43,.96));color:#dcedfa;transition:transform .2s,border-color .2s,box-shadow .2s}.province-detail strong{font-size:16px}.province-detail b{justify-self:end;color:var(--cyan);font-size:18px;font-variant-numeric:tabular-nums}.province-detail span{color:#91afc8;font-size:11px}.province-detail span:last-child{justify-self:end}.province-detail.is-active{border-color:var(--gold);box-shadow:0 0 14px rgba(255,195,66,.38);transform:scale(1.035)}.recognition-zone{position:absolute;z-index:4;left:50%;top:5px;bottom:5px;width:276px;transform:translateX(-50%);border-left:1px solid rgba(255,195,66,.55);border-right:1px solid rgba(255,195,66,.55);pointer-events:none;box-shadow:inset 20px 0 22px -24px var(--gold),inset -20px 0 22px -24px var(--gold)}
@keyframes province-scroll{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.province-track.is-rolling{animation-name:province-scroll!important;animation-duration:var(--province-scroll-duration,36s)!important;animation-timing-function:linear!important;animation-iteration-count:infinite!important}}
.map-panel{grid-template-rows:42px minmax(0,1fr) 88px}.map-panel>.analytics-main{min-width:0;min-height:0;display:grid;grid-template-rows:26px minmax(0,1fr)}.map-panel>.analytics-main h2{height:26px;padding:0 10px;border:0;font-size:15px}.map-panel>.analytics-main .title-bars{width:18px;height:16px}.map-panel>.analytics-main>#provinceTrend{display:none}.map-panel .rail-hint{font-size:11px!important}.map-panel .province-rail-shell{height:100%}.map-panel .province-sequence{gap:8px;padding:3px 4px}.map-panel .province-detail{width:240px;height:54px;padding:5px 10px;column-gap:10px}.map-panel .province-detail strong{font-size:14px}.map-panel .province-detail b{font-size:16px}.map-panel .province-detail span{font-size:10px}.map-panel .province-detail.is-active{transform:scale(1.025)}.map-panel .recognition-zone{top:3px;bottom:3px;width:250px}.analytics-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-panel.is-vertical{grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr))}
.custom-chart-panel{position:absolute;display:grid;grid-template-rows:52px minmax(0,1fr)}.custom-chart-body{min-height:0;padding:14px 18px;overflow:hidden}.chart-state{display:grid;place-items:center;color:var(--muted)}.custom-metric-value{display:grid;place-items:center;height:100%;color:var(--chart-accent);font-size:clamp(32px,5cqw,76px);font-variant-numeric:tabular-nums;text-shadow:0 0 12px color-mix(in srgb,var(--chart-accent),transparent 35%)}.custom-chart-body table{width:100%;border-collapse:collapse;font-size:13px}.custom-chart-body th,.custom-chart-body td{height:34px;padding:6px 10px;border-bottom:1px solid rgba(55,127,199,.3);text-align:left}.custom-chart-body th:last-child,.custom-chart-body td:last-child{text-align:right;font-variant-numeric:tabular-nums}.custom-chart-body svg{display:block;width:100%;height:min(45%,220px)}.custom-line{fill:none;stroke:var(--chart-accent);stroke-width:4;filter:drop-shadow(0 0 5px var(--chart-accent))}.custom-pie{width:min(44%,190px);aspect-ratio:1;border-radius:50%;margin:0 auto 10px;box-shadow:0 0 18px color-mix(in srgb,var(--chart-accent),transparent 55%)}.custom-chart-list{display:grid;gap:7px}.custom-chart-list>div{display:grid;grid-template-columns:minmax(70px,1fr) 2fr auto;align-items:center;gap:10px;font-size:12px}.custom-chart-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-chart-list i{height:7px;background:linear-gradient(90deg,var(--chart-accent) var(--value),rgba(51,116,181,.18) var(--value))}.custom-chart-list b{font-variant-numeric:tabular-nums}
.rail-toggle{margin-left:8px;padding:2px 8px;border:1px solid rgba(42,131,235,.55);background:rgba(4,31,66,.92);color:#b9d8ef;font:inherit;cursor:pointer}.rail-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.province-track.is-paused{animation-play-state:paused!important}
