:root{color-scheme:light;--bg:#F2F3F5;--surface:#FFFFFF;--surface-2:#F7F8FA;--hover:#F1F2F5;--border:#E4E6EA;--border-strong:#D5D8DE;--ink:#121212;--ink-2:#3B3F46;--mid:#6B7077;--faint:#9A9FA6;--acc:#FF4D17;--acc-ink:#E5410F;--acc-soft:rgba(255,77,23,.1);--acc-ring:rgba(255,77,23,.28);--ok:#0E9F6E;--ok-soft:rgba(14,159,110,.12);--warn:#B25E09;--warn-soft:rgba(245,158,11,.16);--bad:#D92D20;--bad-soft:rgba(217,45,32,.1);--info:#3B3F46;--info-soft:rgba(18,18,18,.06);--shadow-sm:0 1px 2px rgba(16,24,40,.05);--shadow:0 1px 2px rgba(16,24,40,.04),0 8px 24px -12px rgba(16,24,40,.14);--shadow-lg:0 24px 60px -20px rgba(16,24,40,.35);--r-sm:8px;--r:10px;--r-lg:14px;--sb:248px;--sb-c:64px;--top:56px;--panel:440px;--m-bg:#E9ECF0;--m-block:#F6F7F9;--m-road:#FFFFFF;--m-park:#DDEFE3;--m-water:#CFE3F4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg:#0B0B0D;--surface:#141417;--surface-2:#18181C;--hover:#1D1D22;--border:#26262B;--border-strong:#34343A;--ink:#F4F4F5;--ink-2:#D4D4D8;--mid:#9A9AA2;--faint:#6B6B73;--acc:#FF5A26;--acc-ink:#FF7A4D;--acc-soft:rgba(255,90,38,.14);--acc-ring:rgba(255,90,38,.35);--ok:#34C08F;--ok-soft:rgba(52,192,143,.14);--warn:#F5A524;--warn-soft:rgba(245,165,36,.14);--bad:#FF6B5E;--bad-soft:rgba(255,107,94,.14);--info:#D4D4D8;--info-soft:rgba(255,255,255,.07);--shadow-sm:none;--shadow:0 0 0 1px rgba(255,255,255,.04);--shadow-lg:0 24px 60px -20px rgba(0,0,0,.8);--m-bg:#101215;--m-block:#16191E;--m-road:#22262D;--m-park:#13211A;--m-water:#0F1A28}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}.num{font-variant-numeric:tabular-nums}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}svg{flex:none}.app{display:grid;grid-template-columns:var(--sb) 1fr;height:100dvh;transition:grid-template-columns .25s cubic-bezier(.2,.8,.2,1)}.app.collapsed{grid-template-columns:var(--sb-c) 1fr}.side{position:relative;z-index:30;display:flex;flex-direction:column;min-height:0;background:var(--surface);border-right:1px solid var(--border)}.brand{display:flex;align-items:center;gap:10px;height:var(--top);padding:0 14px;border-bottom:1px solid var(--border);flex:none}.logo{width:30px;height:30px;border-radius:9px;background:#121212;display:grid;place-items:center;flex:none}:root[data-theme=dark] .logo{background:#000;box-shadow:inset 0 0 0 1px #2a2a2e}.brand b{font-size:15px;font-weight:800;letter-spacing:-.3px;white-space:nowrap}.brand b span{color:var(--acc)}.brand small{display:block;font-size:11px;color:var(--mid);font-weight:600;margin-top:-1px}.nav{flex:1;overflow-y:auto;padding:10px 8px;scrollbar-width:thin}.nav h6{margin:14px 10px 6px;font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--faint);white-space:nowrap}.nav h6:first-child{margin-top:4px}.ni{position:relative;display:flex;align-items:center;gap:10px;width:100%;height:34px;padding:0 10px;border:0;border-radius:8px;background:none;color:var(--ink-2);font-size:13.5px;font-weight:600;text-align:left;text-decoration:none;white-space:nowrap}.ni:hover{background:var(--hover);color:var(--ink)}.ni svg{color:var(--mid)}.ni[aria-current=page]{background:var(--acc-soft);color:var(--acc-ink)}.ni[aria-current=page] svg{color:var(--acc)}.ni .cnt{margin-left:auto;min-width:20px;height:18px;padding:0 6px;border-radius:9px;background:var(--hover);color:var(--mid);font-size:11px;font-weight:700;display:grid;place-items:center}.ni .cnt.hot{background:var(--acc);color:#fff}.ni .lock{margin-left:auto;color:var(--faint)}.ni[aria-disabled=true]{opacity:.45;cursor:not-allowed}.collapsed .brand b,.collapsed .brand small,.collapsed .nav h6,.collapsed .ni span,.collapsed .ni .cnt,.collapsed .ni .lock,.collapsed .side-foot .who{display:none}.collapsed .ni{justify-content:center;padding:0}.collapsed .nav h6{height:1px;margin:10px 8px;background:var(--border)}.side-foot{border-top:1px solid var(--border);padding:10px 8px;display:flex;align-items:center;gap:8px}.side-foot .who{flex:1;min-width:0}.side-foot .who b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-foot .who small{display:block;font-size:11.5px;color:var(--mid);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collapsed .side-foot{flex-direction:column}.mainwrap{display:flex;flex-direction:column;min-width:0;min-height:0}.top{display:flex;align-items:center;gap:8px;height:var(--top);padding:0 16px;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--border);flex:none;position:relative;z-index:20}.crumbs{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--mid);min-width:0;white-space:nowrap}.crumbs b{color:var(--ink);overflow:hidden;text-overflow:ellipsis}.search{display:flex;align-items:center;gap:8px;height:34px;width:min(340px,32vw);padding:0 10px;margin-left:auto;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--mid);font-size:13px;font-weight:500}.search:hover{border-color:var(--border-strong)}.search kbd,.kbd{margin-left:auto;font:600 11px/1 Inter,sans-serif;padding:3px 5px;border-radius:5px;border:1px solid var(--border);background:var(--surface-2);color:var(--mid)}.ib{position:relative;width:34px;height:34px;border:1px solid transparent;border-radius:9px;background:none;display:grid;place-items:center;color:var(--ink-2)}.ib:hover{background:var(--hover)}.ib .dot{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 2px var(--bg)}.demo{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:999px;background:var(--warn-soft);color:var(--warn);font-size:11.5px;font-weight:700;white-space:nowrap}.rolepick{display:flex;align-items:center;gap:6px;height:34px;padding:0 8px 0 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);font-size:12.5px;font-weight:700;white-space:nowrap}.rolepick select{border:0;background:none;font-weight:700;font-size:12.5px;outline:none;cursor:pointer;max-width:150px}.content{flex:1;display:flex;min-height:0;min-width:0}.main{flex:1;overflow:auto;min-width:0;scroll-behavior:smooth}.page{max-width:1440px;margin:0 auto;padding:20px 24px 40px}.page.full{max-width:none;padding:0;height:100%}.ph{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.ph h1{margin:0;font-size:22px;font-weight:800;letter-spacing:-.5px;line-height:1.2}.ph p{margin:3px 0 0;color:var(--mid);font-size:13px}.ph .acts{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 13px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:650;white-space:nowrap;box-shadow:var(--shadow-sm);transition:background .15s,border-color .15s}.btn:hover{background:var(--hover);border-color:var(--border-strong)}.btn.pri{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn.pri:hover{opacity:.9}.btn.acc{background:var(--acc);border-color:var(--acc);color:#fff}.btn.danger{background:var(--bad);border-color:var(--bad);color:#fff}.btn.ghost{background:none;border-color:transparent;box-shadow:none}.btn.ghost:hover{background:var(--hover)}.btn.sm{height:28px;padding:0 9px;font-size:12.5px;border-radius:8px}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn:focus-visible,.ib:focus-visible,.ni:focus-visible,.chip:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.tr:focus-visible,.seg button:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card .ch{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border)}.card .ch h3{margin:0;font-size:13.5px;font-weight:750}.card .ch .sub{color:var(--mid);font-size:12px;font-weight:500}.card .ch .r{margin-left:auto;display:flex;gap:6px;align-items:center}.card .cb{padding:14px}.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:999px;font-size:11.5px;font-weight:700;white-space:nowrap;background:var(--info-soft);color:var(--ink-2)}.badge i{width:6px;height:6px;border-radius:50%;background:currentColor}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.acc{background:var(--acc-soft);color:var(--acc-ink)}.badge.mute{color:var(--mid)}.badge.pulse i{animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.25}}.av{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff;flex:none;background:#121212}.av.lg{width:44px;height:44px;font-size:15px}.seg{display:inline-flex;gap:2px;padding:3px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border)}.seg button{height:26px;padding:0 10px;border:0;border-radius:6px;background:none;font-size:12.5px;font-weight:650;color:var(--mid);white-space:nowrap}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm),0 0 0 1px var(--border)}.chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:1px dashed var(--border-strong);border-radius:8px;background:none;font-size:12.5px;font-weight:650;color:var(--ink-2);white-space:nowrap}.chip.on{border-style:solid;background:var(--acc-soft);border-color:var(--acc-ring);color:var(--acc-ink)}.chip select{border:0;background:none;outline:none;font-weight:650;font-size:12.5px;cursor:pointer}.input{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);min-width:0}.input:focus-within{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-ring)}.input input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:13px}.input svg{color:var(--mid)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field label{font-size:12.5px;font-weight:700;color:var(--ink-2)}.field .hint{font-size:12px;color:var(--mid)}.field .err{font-size:12px;color:var(--bad);font-weight:600}.field input,.field select,.field textarea{height:36px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);font-size:13.5px;outline:none;width:100%}.field textarea{height:auto;min-height:84px;padding:9px 10px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-ring)}.field.bad input,.field.bad textarea{border-color:var(--bad)}.unit{position:relative}.unit input{padding-right:48px}.unit span{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:700;color:var(--mid)}.toggle{position:relative;width:36px;height:20px;border-radius:10px;border:0;background:var(--border-strong);flex:none;transition:background .2s}.toggle:after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .2s cubic-bezier(.2,1.2,.3,1)}.toggle[aria-checked=true]{background:var(--acc)}.toggle[aria-checked=true]:after{transform:translate(16px)}.toggle:disabled{opacity:.5;cursor:not-allowed}.kv{display:grid;grid-template-columns:minmax(110px,auto) 1fr;gap:8px 14px;font-size:13px}.kv dt{color:var(--mid)}.kv dd{margin:0;font-weight:600;min-width:0;overflow-wrap:anywhere}.muted{color:var(--mid)}.faint{color:var(--faint)}.empty{padding:36px 16px;text-align:center;color:var(--mid)}.empty .ei{width:44px;height:44px;margin:0 auto 10px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);display:grid;place-items:center;color:var(--mid)}.empty b{display:block;color:var(--ink);font-size:14px;margin-bottom:4px}.na{display:inline-flex;align-items:center;gap:5px;color:var(--faint);font-weight:600;cursor:help;border-bottom:1px dotted var(--faint)}.note{display:flex;gap:10px;padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border);font-size:12.5px;color:var(--ink-2);line-height:1.45}.note svg{color:var(--mid);margin-top:1px}.note.warn{background:var(--warn-soft);border-color:transparent;color:var(--ink)}.note.warn svg{color:var(--warn)}.note.acc{background:var(--acc-soft);border-color:transparent}.note.acc svg{color:var(--acc)}.sk{border-radius:6px;background:linear-gradient(90deg,var(--hover),var(--surface-2),var(--hover));background-size:200% 100%;animation:sk 1.2s linear infinite}@keyframes sk{to{background-position:-200% 0}}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:14px;overflow-x:auto;scrollbar-width:none}.tabs button{position:relative;height:36px;padding:0 12px;border:0;background:none;font-size:13px;font-weight:650;color:var(--mid);white-space:nowrap}.tabs button[aria-selected=true]{color:var(--ink)}.tabs button[aria-selected=true]:after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;border-radius:2px;background:var(--acc)}.tabs button .cnt{margin-left:6px;font-size:11px;color:var(--faint)}.kpi{padding:14px;display:flex;flex-direction:column;gap:6px;min-width:0}.kpi .l{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:650;color:var(--mid)}.kpi .l svg{color:var(--faint)}.kpi .v{display:flex;align-items:baseline;gap:6px;font-size:24px;font-weight:800;letter-spacing:-.6px;line-height:1.1}.kpi .v small{font-size:12px;font-weight:700;color:var(--mid);letter-spacing:0}.kpi .d{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--mid)}.up{color:var(--ok)}.down{color:var(--bad)}.kpi svg.spark{width:100%;height:28px;margin-top:2px}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--border)}.toolbar .input{width:min(280px,100%)}.toolbar .r{margin-left:auto;display:flex;gap:6px;align-items:center}.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.tbl th{position:sticky;top:0;z-index:1;height:36px;padding:0 12px;text-align:left;font-size:12px;font-weight:700;color:var(--mid);background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap}.tbl th button{border:0;background:none;padding:0;font:inherit;color:inherit;display:inline-flex;align-items:center;gap:4px}.tbl th[aria-sort] button{color:var(--ink)}.tbl td{height:44px;padding:0 12px;border-bottom:1px solid var(--border);white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}.tbl tr.tr{cursor:pointer}.tbl tr.tr:hover td{background:var(--hover)}.tbl tr.tr[aria-selected=true] td{background:var(--acc-soft)}.tbl td.r,.tbl th.r{text-align:right}.tblwrap{overflow:auto;max-width:100%}.cell2{display:flex;align-items:center;gap:9px;min-width:0}.cell2 b{display:block;font-weight:650;overflow:hidden;text-overflow:ellipsis}.cell2 small{display:block;font-size:12px;color:var(--mid);overflow:hidden;text-overflow:ellipsis}.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px}.pager{display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:12.5px;color:var(--mid)}.pager .r{margin-left:auto;display:flex;gap:6px}.cards{display:none}.mcard{display:flex;flex-direction:column;gap:6px;width:100%;padding:12px 14px;border:0;border-bottom:1px solid var(--border);background:none;text-align:left}.mcard .row{display:flex;align-items:center;gap:8px;min-width:0}.mcard .row .r{margin-left:auto}.svc{display:inline-flex;align-items:center;gap:6px;font-weight:650}.svc i{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:var(--acc-soft);color:var(--acc)}.bar{height:6px;border-radius:3px;background:var(--hover);overflow:hidden;min-width:60px}.bar i{display:block;height:100%;border-radius:3px;background:var(--acc)}.bar.ok i{background:var(--ok)}.bar.warn i{background:var(--warn)}.bar.bad i{background:var(--bad)}.panel{width:var(--panel);flex:none;display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--surface);min-height:0;animation:pin .25s cubic-bezier(.2,.8,.2,1)}@keyframes pin{0%{transform:translate(24px);opacity:0}}.panel .pt{display:flex;align-items:center;gap:8px;height:var(--top);padding:0 12px 0 16px;border-bottom:1px solid var(--border);flex:none}.panel .pt b{font-size:14px;font-weight:800}.panel .pt .r{margin-left:auto;display:flex;gap:4px}.panel .pb{flex:1;overflow:auto;padding:16px}.panel .pf{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid var(--border);flex:none}.psec{margin-bottom:18px}.psec h4{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:var(--mid)}.scrim{display:none}.tl{position:relative;margin:0;padding:0;list-style:none}.tl li{position:relative;display:flex;gap:10px;padding:0 0 14px 22px;font-size:13px}.tl li:before{content:"";position:absolute;left:5px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 2px var(--border-strong);z-index:1}.tl li:after{content:"";position:absolute;left:9px;top:12px;bottom:-4px;width:1px;background:var(--border)}.tl li:last-child:after{display:none}.tl li.ok:before{box-shadow:inset 0 0 0 2px var(--ok)}.tl li.bad:before{background:var(--bad);box-shadow:none}.tl li.cur:before{background:var(--acc);box-shadow:0 0 0 4px var(--acc-soft)}.tl li.warn:before{box-shadow:inset 0 0 0 2px var(--warn)}.tl li .t{margin-left:auto;color:var(--mid);font-size:12px;white-space:nowrap}.tl li small{display:block;color:var(--mid);font-size:12px}.live{display:grid;grid-template-columns:340px minmax(0,1fr);height:100%;min-height:0}.live .list{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border);background:var(--surface)}.live .list .lh{padding:12px 12px 10px;border-bottom:1px solid var(--border)}.live .list .ls{flex:1;overflow:auto}.lgrp{padding:10px 12px 4px;font-size:11.5px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:var(--mid);display:flex;align-items:center;gap:6px}.lrow{display:flex;gap:10px;width:100%;padding:10px 12px;border:0;border-bottom:1px solid var(--border);background:none;text-align:left}.lrow:hover{background:var(--hover)}.lrow[aria-selected=true]{background:var(--acc-soft)}.lrow .t{flex:1;min-width:0}.lrow .t b{display:flex;gap:6px;align-items:center;font-size:13px}.lrow .t small{display:block;font-size:12px;color:var(--mid);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrow .rt{text-align:right;font-size:12px;color:var(--mid);white-space:nowrap}.lrow .rt b{display:block;color:var(--ink);font-size:13px}.mapbox{position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--m-bg);touch-action:none}.mapbox svg.city{position:absolute;inset:0;width:100%;height:100%}.mapbox .layer{position:absolute;inset:0;transform-origin:0 0}.mk{position:absolute;transform:translate(-50%,-50%);transition:left 2.5s linear,top 2.5s linear;cursor:pointer}.mk.drv{width:14px;height:14px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px #00000059}.mk.drv.available{background:var(--ok)}.mk.drv.busy{background:var(--acc)}.mk.drv.offline{background:#8a8f96;opacity:.7}.mk.drv.stale{background:#8a8f96;border-style:dashed;opacity:.9}.mk.pin{width:26px;height:26px;margin-top:-13px;border-radius:50% 50% 50% 0;transform:translate(-50%,-50%) rotate(-45deg);display:grid;place-items:center;box-shadow:0 2px 6px #0000004d;border:2px solid #fff}.mk.pin svg{transform:rotate(45deg)}.mk.pin.pick{background:var(--acc);color:#fff}.mk.pin.drop{background:#121212;color:#fff}:root[data-theme=dark] .mk.pin.drop{background:#f4f4f5;color:#121212}.mk.pin.sel{box-shadow:0 0 0 5px var(--acc-ring),0 2px 6px #0000004d;z-index:3}.mk.cl{min-width:30px;height:30px;padding:0 6px;border-radius:15px;background:#121212;color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center;border:2px solid #fff;box-shadow:0 2px 6px #0000004d}.mk .tip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);padding:5px 8px;border-radius:7px;background:#121212;color:#fff;font-size:11.5px;font-weight:650;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}.mk:hover .tip{opacity:1}.mk.pin .tip{transform:translate(-50%) rotate(45deg)}.route{position:absolute;inset:0;pointer-events:none;width:100%;height:100%}.maptools{position:absolute;left:12px;top:12px;display:flex;gap:8px;flex-wrap:wrap;right:12px;pointer-events:none}.maptools>*{pointer-events:auto}.glass{background:color-mix(in srgb,var(--surface) 86%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.6);backdrop-filter:blur(12px) saturate(1.6);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.legend{position:absolute;left:12px;bottom:12px;display:flex;gap:12px;flex-wrap:wrap;padding:8px 10px;font-size:12px;font-weight:600}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:50%}.zoom{position:absolute;right:12px;bottom:12px;display:flex;flex-direction:column;overflow:hidden}.zoom button{width:34px;height:34px;border:0;background:none;display:grid;place-items:center}.zoom button+button{border-top:1px solid var(--border)}.mapnote{position:absolute;right:12px;top:12px;padding:6px 9px;font-size:11.5px;font-weight:650;color:var(--mid)}.lchips{display:flex;gap:4px;padding:4px}.lchips button{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 9px;border:0;border-radius:7px;background:none;font-size:12px;font-weight:650;color:var(--mid)}.lchips button[aria-pressed=true]{background:var(--surface-2);color:var(--ink);box-shadow:0 0 0 1px var(--border)}.lchips i{width:8px;height:8px;border-radius:50%}.dispatch{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px}.dispatch div{padding:8px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border);text-align:center}.dispatch b{display:block;font-size:16px;font-weight:800}.dispatch small{font-size:11px;color:var(--mid);font-weight:650}.cd{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:var(--acc-soft);margin-bottom:10px;font-size:13px;font-weight:650}.cd .ring{position:relative;width:34px;height:34px;flex:none}.cd .ring svg{transform:rotate(-90deg)}.cd .ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:11.5px;font-weight:800}.chart{width:100%;height:auto;display:block}.chart text{font:600 10px Inter,sans-serif;fill:var(--mid)}.chart .grid line{stroke:var(--border);stroke-dasharray:2 3}.chart .hit:hover{fill:var(--hover);opacity:.6}.legend2{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--mid);font-weight:600}.legend2 span{display:inline-flex;align-items:center;gap:6px}.legend2 i{width:10px;height:10px;border-radius:3px}.hbar{display:flex;align-items:center;gap:10px;font-size:13px;padding:5px 0}.hbar .n{width:92px;flex:none;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbar .b{flex:1;height:8px;border-radius:4px;background:var(--hover);overflow:hidden}.hbar .b i{display:block;height:100%;border-radius:4px;background:var(--acc)}.hbar .v{width:62px;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.ctip{position:fixed;z-index:90;padding:7px 9px;border-radius:8px;background:#121212;color:#fff;font-size:12px;font-weight:600;pointer-events:none;box-shadow:var(--shadow-lg);white-space:nowrap}:root[data-theme=dark] .ctip{background:#f4f4f5;color:#121212}.feed{list-style:none;margin:0;padding:0}.feed li{display:flex;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border);font-size:13px}.feed li:last-child{border-bottom:0}.feed .fi{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--surface-2);color:var(--mid)}.feed .fi.bad{background:var(--bad-soft);color:var(--bad)}.feed .fi.warn{background:var(--warn-soft);color:var(--warn)}.feed .fi.ok{background:var(--ok-soft);color:var(--ok)}.feed .fi.acc{background:var(--acc-soft);color:var(--acc)}.feed .t{flex:1;min-width:0}.feed .t b{display:block;font-weight:650}.feed .t small{color:var(--mid);font-size:12px}.feed .tm{font-size:12px;color:var(--faint);white-space:nowrap}.inbox{display:grid;grid-template-columns:360px minmax(0,1fr);height:100%;min-height:0}.inbox .il{border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;min-height:0}.inbox .il .ls{flex:1;overflow:auto}.inbox .id{display:flex;flex-direction:column;min-height:0;min-width:0}.msg{max-width:640px;padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--border);font-size:13.5px;margin-bottom:10px}.msg.note{background:var(--warn-soft);border-color:transparent}.msg header{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--mid);margin-bottom:6px}.msg header b{color:var(--ink)}.matrix th,.matrix td{text-align:center}.matrix td:first-child,.matrix th:first-child{text-align:left}.yes{color:var(--ok)}.no{color:var(--faint)}.diff{display:grid;grid-template-columns:1fr 1fr;gap:8px}.diff pre{margin:0;padding:10px;border-radius:9px;font-size:12px;overflow:auto;border:1px solid var(--border);background:var(--surface-2)}.diff .old{background:var(--bad-soft);border-color:transparent}.diff .new{background:var(--ok-soft);border-color:transparent}.modal-bg{position:fixed;inset:0;z-index:70;background:#0a0a0c73;display:grid;place-items:center;padding:16px;animation:fade .15s}@keyframes fade{0%{opacity:0}}.modal{width:min(520px,100%);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-lg);animation:rise .22s cubic-bezier(.2,.8,.2,1)}.modal.wide{width:min(720px,100%)}@keyframes rise{0%{transform:translateY(10px) scale(.98);opacity:0}}.modal .mh{display:flex;align-items:flex-start;gap:10px;padding:16px 18px 6px}.modal .mh h3{margin:0;font-size:16px;font-weight:800}.modal .mh p{margin:4px 0 0;color:var(--mid);font-size:13px}.modal .mb{padding:10px 18px;overflow:auto}.modal .mf{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px 16px;flex-wrap:wrap}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:60;width:min(420px,100%);display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);animation:slidein .25s cubic-bezier(.2,.8,.2,1)}@keyframes slidein{0%{transform:translate(100%)}}.cmdk{width:min(620px,100%);align-self:start;margin-top:10vh}.cmdk .ci{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.cmdk .ci input{flex:1;border:0;background:none;outline:none;font-size:15px}.cmdk .cl{max-height:min(420px,60vh);overflow:auto;padding:6px}.cmdk .cg{padding:8px 10px 4px;font-size:11.5px;font-weight:700;color:var(--faint);text-transform:uppercase;letter-spacing:.3px}.cmdk .co{display:flex;align-items:center;gap:10px;width:100%;height:38px;padding:0 10px;border:0;border-radius:8px;background:none;text-align:left;font-size:13.5px;font-weight:600}.cmdk .co[aria-selected=true]{background:var(--acc-soft);color:var(--acc-ink)}.cmdk .co small{margin-left:auto;color:var(--mid);font-weight:500}.toasts{position:fixed;right:16px;bottom:16px;z-index:80;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.toast{display:flex;align-items:center;gap:10px;min-width:260px;max-width:400px;padding:11px 14px;border-radius:12px;background:#121212;color:#fff;font-size:13px;font-weight:600;box-shadow:var(--shadow-lg);animation:rise .25s cubic-bezier(.2,.8,.2,1)}:root[data-theme=dark] .toast{background:#f4f4f5;color:#121212}.toast .ti{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--ok);color:#fff}.toast.bad .ti{background:var(--bad)}.menu{position:fixed;z-index:75;min-width:200px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);animation:rise .15s}.menu button{display:flex;align-items:center;gap:10px;width:100%;height:34px;padding:0 10px;border:0;border-radius:7px;background:none;font-size:13px;font-weight:600;text-align:left}.menu button:hover{background:var(--hover)}.menu hr{border:0;border-top:1px solid var(--border);margin:6px 0}.login{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);background:var(--bg)}.login .lf{display:flex;flex-direction:column;justify-content:center;padding:40px clamp(24px,6vw,80px)}.login .lf .box{width:min(380px,100%)}.login h1{margin:22px 0 6px;font-size:26px;font-weight:800;letter-spacing:-.7px}.login .lr{position:relative;overflow:hidden;background:#0e0e10;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:40px}.login .lr svg.city{position:absolute;inset:0;width:100%;height:100%;opacity:.55}.login .lr .q{position:relative;max-width:440px}.login .lr .q b{display:block;font-size:24px;font-weight:800;letter-spacing:-.6px;line-height:1.2}.login .lr .q p{color:#ffffffb3;font-size:14px}.otp{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:14px 0}.otp input{height:48px;border:1px solid var(--border);border-radius:10px;background:var(--surface);text-align:center;font-size:20px;font-weight:800;outline:none}.otp input:focus{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-ring)}@media(max-width:1279px){.panel{position:fixed;top:0;right:0;bottom:0;z-index:55;width:min(var(--panel),100%);box-shadow:var(--shadow-lg)}.scrim.on{display:block;position:fixed;inset:0;z-index:50;background:#0a0a0c59}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1fr)}}@media(max-width:1023px){.app,.app.collapsed{grid-template-columns:1fr}.side{position:fixed;left:0;top:0;bottom:0;width:min(280px,86vw);transform:translate(-100%);transition:transform .25s cubic-bezier(.2,.8,.2,1);box-shadow:var(--shadow-lg)}.app.navopen .side{transform:none}.app.navopen .navscrim{display:block;position:fixed;inset:0;z-index:25;background:#0a0a0c59}.collapsed .brand b,.collapsed .brand small,.collapsed .nav h6,.collapsed .ni span,.collapsed .ni .cnt,.collapsed .ni .lock,.collapsed .side-foot .who{display:revert}.collapsed .ni{justify-content:flex-start;padding:0 10px}.collapsed .nav h6{height:auto;margin:14px 10px 6px;background:none}.collapsed .side-foot{flex-direction:row}.search{width:auto;flex:0 1 220px}.live{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(0,42%)}.live .list{order:2;border-right:0;border-top:1px solid var(--border)}.inbox{grid-template-columns:1fr}.inbox.detail .il{display:none}.inbox:not(.detail) .id{display:none}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){:root{--top:52px}.page{padding:14px 12px 32px}.ph h1{font-size:19px}.ph .acts{margin-left:0;width:100%}.top{padding:0 8px;gap:4px}.search{flex:0 0 34px;width:34px;padding:0;justify-content:center;border-color:transparent;background:none}.search span,.search kbd,.crumbs .hide-sm,.demo .hide-sm{display:none}.rolepick{padding:0 6px}.rolepick .rl{display:none}.rolepick select{max-width:96px}.g2,.g3{grid-template-columns:minmax(0,1fr)}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi .v{font-size:20px}.tblwrap.resp{display:none}.cards{display:block}.toolbar .input{width:100%;order:-1}.toolbar .r{margin-left:0}.panel{width:100%}.login{grid-template-columns:1fr}.login .lr{display:none}.dispatch{grid-template-columns:repeat(2,1fr)}.diff{grid-template-columns:1fr}.toasts{left:12px;right:12px;align-items:stretch}.toast{min-width:0;max-width:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.side-ctrls{display:none}@media(max-width:1199px){.rolepick .rl,.demo .hide-sm{display:none}.search{width:auto;flex:0 1 200px}}@media(max-width:1023px){.tb-wide{display:none!important}.side-ctrls{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border)}.side-ctrls select{height:34px}.side-ctrls .demo{align-self:flex-start}.crumbs{flex:1}.search{margin-left:0}}.id>div:first-child{flex-wrap:wrap}.mcard .row[style*=flex-wrap]{column-gap:10px}@media(max-width:767px){.search{flex:0 0 34px;width:34px;padding:0;justify-content:center;border-color:transparent;background:none;margin-left:auto}}.ptbl td{height:52px}.ptbl tr.off td{opacity:.55}.ptbl tr.off td:nth-child(2){opacity:1}.pcell{display:inline-block;width:100px}.pcell input{width:100%;height:32px;padding:0 40px 0 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface);text-align:right;outline:none;font-size:13px}.pcell input:focus{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-ring)}.pcell input::placeholder{color:var(--faint)}.pcell.own input{border-color:var(--acc-ring);background:var(--acc-soft);color:var(--acc-ink);font-weight:700}.pcell.bad input{border-color:var(--bad);box-shadow:0 0 0 3px var(--bad-soft)}.pcell span{font-size:11px}.gl{border:0;background:none;padding:4px 8px;border-radius:7px;font:inherit;font-variant-numeric:tabular-nums;color:var(--ink-2)}.gl:hover{background:var(--hover)}.gl.own{background:var(--acc-soft);color:var(--acc-ink);font-weight:750}.gl small{font-size:11px;opacity:.8}.glance td{height:40px}.pcard{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border)}.pcard .row{display:flex;align-items:center;gap:8px}.pcard .row .r{margin-left:auto}.pcard.off .pgrid{opacity:.5}.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pgrid label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;font-weight:700;color:var(--mid)}.pgrid .pcell{width:100%}.pgrid .pcell input{padding-right:36px}.timer{display:flex;gap:10px;margin-bottom:10px}.timer .ti2{width:32px;height:32px;border-radius:9px;background:var(--acc-soft);color:var(--acc);display:grid;place-items:center;flex:none}.timer b{display:block;font-size:14px}.timer small{display:block;font-size:12.5px;color:var(--mid);line-height:1.4}.seg button:disabled{cursor:not-allowed;opacity:.6}.mnav,.navscrim,.back-sm{display:none}@media(max-width:1023px){.mnav,.back-sm{display:grid}}.login .err{margin:0;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--bad) 12%,transparent);color:var(--bad);font-size:13px;font-weight:600}a.btn,a.card,a.lrow,a.tr{text-decoration:none;color:inherit}.feed .tm .btn{margin:-4px -6px}input[type=range]{width:100%;height:4px;appearance:none;border-radius:2px;background:var(--border);outline-offset:4px}input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border:2px solid var(--surface);border-radius:50%;background:var(--acc);box-shadow:var(--shadow-sm);cursor:pointer}input[type=range]::-moz-range-thumb{width:16px;height:16px;border:2px solid var(--surface);border-radius:50%;background:var(--acc);cursor:pointer}.pcell input:disabled{opacity:1;color:var(--ink);background:var(--surface-2);cursor:default}.mapbox{isolation:isolate}.maptools,.mapbox .zoom,.mapbox .legend{z-index:5}.mapbox .gm-style{z-index:0}.sqlout td,.sqlout th{border-color:#1d2a21;padding:5px 10px;white-space:nowrap}.sqlout tr.tr:hover>td{background:#101a13}.sqlout a{color:#86efac}.logline{display:flex;align-items:baseline;gap:8px;width:100%;padding:3px 6px;margin:-3px -6px;border:0;border-radius:7px;background:none;text-align:left;font:inherit;color:var(--ink);cursor:pointer}.logline:hover{background:var(--hover)}.logline:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.logline.warn{background:var(--warn-soft)}.logline.bad{background:var(--bad-soft)}.logline .lvl{flex:none;display:inline-grid;place-items:center;transform:translateY(2px)}.logline .lvl.ok{color:var(--ok)}.logline .lvl.warn{color:var(--warn)}.logline .lvl.bad{color:var(--bad)}.logtag{flex:none;font-size:10.5px;letter-spacing:.2px}.logtext{flex:1 1 auto;min-width:0;font-size:12.5px;line-height:1.45;word-break:break-word}.lognote{flex:none;font-size:11px;white-space:nowrap}.logjson{margin:8px 0 2px;padding:10px 12px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border);font-size:11px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto}@media(max-width:640px){.logline{flex-wrap:wrap;gap:6px}.logtext{flex:1 0 100%}}.rphoto{display:block;max-width:100%;max-height:300px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2)}.enrol{display:flex;gap:16px;align-items:flex-start;margin-top:12px;padding:14px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2)}.enrolqr{flex:none;width:168px;height:168px;border-radius:10px;background:#fff;padding:8px}.enrolside{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1 1 auto}.enrolkey{display:inline-block;padding:7px 10px;border-radius:8px;background:var(--bg);border:1px solid var(--border);font-size:12px;letter-spacing:1.5px;word-break:break-all;user-select:all}@media(max-width:640px){.enrol{flex-direction:column}.enrolqr{align-self:center}}.hlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.hrow{display:grid;grid-template-columns:78px 1fr auto;gap:14px;padding:14px 0;border-top:1px solid var(--border)}.hrow:first-child{border-top:0;padding-top:2px}.hwhen{display:flex;flex-direction:column;gap:1px;font-size:12px;line-height:1.3}.hbody{min-width:0;display:flex;flex-direction:column;gap:6px}.hwho{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:650;flex-wrap:wrap}.hrec{font-size:11px;color:var(--mid)}.hchg{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.hchg li{display:flex;align-items:center;gap:7px;font-size:12.5px;flex-wrap:wrap}.hfield{color:var(--mid);min-width:116px}.hfrom{color:var(--faint);text-decoration:line-through}.hreason{font-size:12.5px;color:var(--ink-2);font-style:italic}.hact{display:flex;align-items:flex-start;justify-content:flex-end;max-width:190px}@media(max-width:720px){.hrow{grid-template-columns:1fr;gap:8px}.hwhen{flex-direction:row;gap:7px}.hact{max-width:none;justify-content:flex-start}}.sess{list-style:none;margin:0;padding:0 0 6px;display:flex;flex-direction:column}.sess li{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:9px 0;border-top:1px solid var(--border)}.sess li:first-child{border-top:0}.sdev{display:flex;align-items:center;gap:7px;font-size:13px;flex-wrap:wrap}.smeta{grid-column:1;font-size:11.5px}.sess li button{grid-column:2;grid-row:1 / span 2;align-self:center}.dgroups{display:flex;flex-direction:column;gap:22px}.dgroup+.dgroup{padding-top:20px;border-top:1px solid var(--border)}.dgroup h4{margin:0 0 12px;font-size:11.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--mid);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.dgroup h4 .dsub{font-size:11.5px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--faint)}.dformula{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 10px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);font-size:14.5px;line-height:1.5}.dbase{color:var(--mid)}.dvar{color:var(--mid);font-style:italic}.dop{color:var(--faint);font-weight:700}.dpar{display:inline-flex;align-items:center;gap:7px;color:var(--faint)}.dtok{padding:3px 9px;border-radius:999px;background:var(--acc-soft);color:var(--acc-ink);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.dcaption{margin:0;font-size:12.5px;line-height:1.55;color:var(--mid)}.dcaption b{color:var(--ink);font-variant-numeric:tabular-nums}.ladder{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:7px}.ladder li{display:grid;grid-template-columns:46px 1fr 64px;align-items:center;gap:11px}.rwhen{font-size:11.5px;color:var(--faint);text-align:right;font-variant-numeric:tabular-nums}.rbar{height:12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);overflow:hidden}.rbar i{display:block;height:100%;background:var(--acc);opacity:.9}.rbar i.held{background:repeating-linear-gradient(135deg,var(--acc) 0 5px,transparent 5px 10px);opacity:.55}.rhold .rwhen,.rhold .rkm{color:var(--faint)}.rkm{font-size:12.5px;font-weight:650;font-variant-numeric:tabular-nums}.dcap{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 16px}.dpips{display:inline-flex;gap:5px}.dpips i{width:13px;height:13px;border-radius:50%;background:var(--acc);opacity:.9}.dcapsaid{display:flex;flex-direction:column;gap:2px;font-size:13.5px;line-height:1.3}.dcapsaid small{font-size:11.5px;color:var(--faint)}.dlines{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 20px}.dline{display:flex;flex-direction:column;gap:2px;min-width:0}.dlab{display:block;font-size:12px;color:var(--mid);line-height:1.35}.dnum{display:block;font-size:17px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}.dnote{display:block;font-size:11px;color:var(--faint)}@media(max-width:420px){.ladder li{grid-template-columns:42px 1fr 58px;gap:8px}}.shape{display:flex;flex-direction:column}.shapemap{height:380px;border-radius:var(--r-lg);border:1px solid var(--border);overflow:hidden;background:var(--surface-2)}.shapebar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.shapecount{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--mid)}.shapecount b{color:var(--ink);font-variant-numeric:tabular-nums}.shapebar .acts{margin-left:auto;gap:8px}.shapewhy{margin:9px 0 0;font-size:12.5px;color:var(--warn);font-weight:600}.linky{display:inline;padding:0;margin-left:5px;border:0;background:none;font:inherit;color:var(--acc-ink);font-weight:650;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.linky:disabled{color:var(--faint);cursor:default}@media(max-width:640px){.shapemap{height:300px}.shapebar .acts{margin-left:0;width:100%}}.mcard[role=button]{cursor:pointer}.mcard[role=button]:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}.nav .ni.off{opacity:.42;cursor:not-allowed}.nav .ni.off:hover{background:none}.nav .ni.off .lock{margin-left:auto;display:inline-flex;opacity:.7}@media(min-width:1024px){.collapsed .brand .logo,.collapsed .nav .ni.off .lock{display:none}}:root{--ease-out:cubic-bezier(.23,1,.32,1)}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s}.chartline{animation:chartline .3s var(--ease-out)}@keyframes chartline{0%{stroke-dasharray:1;stroke-dashoffset:1}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chart .readout{font-size:11px;font-weight:700;fill:var(--ink)}.chart .slot{fill:var(--hover)}.chart .hit,.chart .hit:hover{fill:transparent}.kpi .v.moved{animation:moved .9s var(--ease-out)}@keyframes moved{0%{background:var(--acc-soft,rgba(249,91,34,.18));border-radius:6px}}.toast.leaving{animation:toastout .18s var(--ease-out) forwards;pointer-events:none}@keyframes toastout{to{transform:translateY(8px) scale(.97);opacity:0}}
