/* Design: Apple HIG on the web. System type (SF on Apple devices), grouped backgrounds, materials,
   segmented controls, 44pt targets, large titles. iPad/desktop = split view (map + inspector);
   iPhone = full-screen map, draggable sheet with three detents, tab bar.
   Map follows the theme: daylight map in light mode, "election night" map in dark mode.
   Tint = systemIndigo, the closest system colour to the IEC's indelible-ink violet. */
:root{
  --bg:#f2f2f7; --card:#ffffff; --card-2:#f2f2f7; --fill:rgba(120,120,128,.12); --fill-2:rgba(120,120,128,.2);
  --label:#000000; --label-2:rgba(60,60,67,.62); --label-3:rgba(60,60,67,.38); --sep:rgba(60,60,67,.18);
  --tint:#5856d6; --tint-soft:rgba(88,86,214,.12); --orange:#ff9500; --green:#248a3d; --red:#d70015; --blue:#0a64d8;
  --material:rgba(249,249,251,.78); --material-line:rgba(0,0,0,.08); --shadow:0 12px 40px rgba(0,0,0,.12);
  --map-bg:#dfe5ec; --map-land:#f4f6f9; --map-line:rgba(28,32,44,.55); --map-line-2:rgba(28,32,44,.18); --map-label:#1c1f29; --map-halo:rgba(255,255,255,.92); --hatch-a:#e6eaf0; --hatch-b:#cfd6e0;
  --f-text:-apple-system,BlinkMacSystemFont,"SF Pro Text","Hanken Grotesk","Segoe UI",Roboto,sans-serif;
  --f-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Hanken Grotesk","Segoe UI",Roboto,sans-serif;
  --f-round:ui-rounded,"SF Pro Rounded",-apple-system,"Hanken Grotesk",sans-serif;
  --r-l:22px; --r-m:14px; --r-s:10px; --tab-h:56px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#000000; --card:#1c1c1e; --card-2:#2c2c2e; --fill:rgba(118,118,128,.24); --fill-2:rgba(118,118,128,.36);
  --label:#ffffff; --label-2:rgba(235,235,245,.62); --label-3:rgba(235,235,245,.32); --sep:rgba(84,84,88,.6);
  --tint:#7d7aff; --tint-soft:rgba(125,122,255,.18); --orange:#ff9f0a; --green:#30d158; --red:#ff453a; --blue:#409cff;
  --material:rgba(28,28,30,.78); --material-line:rgba(255,255,255,.08); --shadow:0 12px 40px rgba(0,0,0,.5);
  --map-bg:#070a12; --map-land:#161b29; --map-line:rgba(244,246,251,.82); --map-line-2:rgba(244,246,251,.3); --map-label:#f4f6fb; --map-halo:rgba(5,8,15,.88); --hatch-a:#141a28; --hatch-b:#252e44; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#000000; --card:#1c1c1e; --card-2:#2c2c2e; --fill:rgba(118,118,128,.24); --fill-2:rgba(118,118,128,.36);
  --label:#ffffff; --label-2:rgba(235,235,245,.62); --label-3:rgba(235,235,245,.32); --sep:rgba(84,84,88,.6);
  --tint:#7d7aff; --tint-soft:rgba(125,122,255,.18); --orange:#ff9f0a; --green:#30d158; --red:#ff453a; --blue:#409cff;
  --material:rgba(28,28,30,.78); --material-line:rgba(255,255,255,.08); --shadow:0 12px 40px rgba(0,0,0,.5);
  --map-bg:#070a12; --map-land:#161b29; --map-line:rgba(244,246,251,.82); --map-line-2:rgba(244,246,251,.3); --map-label:#f4f6fb; --map-halo:rgba(5,8,15,.88); --hatch-a:#141a28; --hatch-b:#252e44; color-scheme:dark}

*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{height:100%;background:var(--bg);color:var(--label)}
body{margin:0;font-family:var(--f-text);font-size:15px;line-height:1.4;-webkit-font-smoothing:antialiased;overflow:hidden;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:0}
button,select,input{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--tint);outline-offset:2px;border-radius:8px}
.tnum{font-variant-numeric:tabular-nums}
[hidden]{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- app shell: split view ---------- */
.app{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;padding-block:max(14px,env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-bottom,0px));max-width:1600px;margin:0 auto}
.top{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 28px;flex-wrap:wrap}
.title h1{margin:0;font-family:var(--f-display);font-weight:800;font-size:34px;line-height:1.05;letter-spacing:-.022em;text-wrap:balance}
.title p{margin:4px 0 0;color:var(--label-2);font-size:15px}
.count{display:flex;gap:22px;align-items:flex-end;flex-wrap:wrap}
.big{font-family:var(--f-round);font-weight:800;font-size:40px;line-height:.9;letter-spacing:-.02em}
.big small{font-size:20px;font-weight:700;margin-left:1px}
.kpi{display:flex;flex-direction:column;gap:5px;min-width:120px}
.kpi .l{font-size:12px;color:var(--label-2);font-weight:500}
.kpi .v{font-size:15px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.meterbar{height:4px;border-radius:2px;background:var(--fill);overflow:hidden}
.meterbar i{display:block;height:100%;background:var(--tint);border-radius:2px}
.asof{font-size:12px;color:var(--label-2);display:flex;gap:6px;align-items:center;margin-top:6px}
.live{width:8px;height:8px;border-radius:50%;background:var(--tint);box-shadow:0 0 0 3px var(--tint-soft)}
.iconbtn{width:36px;height:36px;border-radius:50%;border:0;background:var(--fill);display:grid;place-items:center;color:var(--label)}
.iconbtn svg{width:18px;height:18px}

.brand{display:flex;gap:14px;align-items:center}
.appmark{width:52px;height:52px;flex:none;border-radius:12px;box-shadow:0 4px 14px rgba(59,43,184,.35)}
.appmark svg{width:100%;height:100%;display:block}
.credit{font-size:12.5px;color:var(--label-2)}
.credit a{color:var(--tint);font-weight:650;text-decoration:none}
.credit a:hover{text-decoration:underline}
.credit b{color:var(--label);font-weight:700;letter-spacing:.02em}
.disclaimer{border-radius:14px;padding:12px 14px;background:var(--fill);font-size:12.5px;line-height:1.5;color:var(--label-2)}
.disclaimer b{color:var(--label)}
.split{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:14px;min-height:0}
.mapcard{position:relative;border-radius:var(--r-l);overflow:hidden;background:var(--map-bg);min-height:0;box-shadow:var(--shadow)}
.mapcard canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab}
.mapcard canvas.drag{cursor:grabbing}
.inspector{background:var(--card);border-radius:var(--r-l);display:flex;flex-direction:column;min-height:0;box-shadow:var(--shadow);overflow:hidden}

/* ---------- materials & controls ---------- */
.mat{background:var(--material);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border:1px solid var(--material-line)}
.seg{display:inline-flex;padding:2px;border-radius:9px;background:var(--fill);gap:2px}
.seg button{border:0;background:transparent;border-radius:7px;padding:6px 12px;min-height:32px;font-size:13px;font-weight:600;color:var(--label);white-space:nowrap;transition:background .2s,box-shadow .2s}
.seg button[aria-pressed="true"],.seg button[aria-selected="true"]{background:var(--card);box-shadow:0 3px 8px rgba(0,0,0,.12),0 3px 1px rgba(0,0,0,.04)}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{border:0;border-radius:999px;padding:6px 12px;min-height:32px;font-size:13px;font-weight:600;background:var(--fill);color:var(--label);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.chip[aria-pressed="true"]{background:var(--tint);color:#fff}
.chip.ghost[aria-pressed="false"]{color:var(--label-2)}
.chip.clearsel{background:var(--label);color:var(--card)}
.chip.clearsel:hover{opacity:.85}
.hud{position:absolute;left:12px;top:12px;right:12px;display:flex;justify-content:space-between;gap:10px;align-items:flex-start;pointer-events:none;z-index:2}
.hud > *{pointer-events:auto}
.hudcol{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:8px;border-radius:16px;max-width:100%}
.search{position:relative;width:300px;max-width:100%}
.search input{width:100%;border:0;border-radius:12px;padding:10px 12px 10px 36px;min-height:40px;font-size:15px;background:var(--material);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);color:var(--label);border:1px solid var(--material-line)}
.search input::placeholder{color:var(--label-2)}
.search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--label-2)}
.results{position:absolute;right:0;left:0;top:calc(100% + 6px);border-radius:14px;padding:6px;list-style:none;margin:0;max-height:340px;overflow:auto;z-index:6;box-shadow:var(--shadow)}
.results li{padding:10px 12px;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;gap:10px;font-size:15px;min-height:44px;align-items:center}
.results li:hover,.results li[aria-selected="true"]{background:var(--fill)}
.results li small{color:var(--label-2);font-size:12px;text-align:right}
.zoom{position:absolute;right:12px;bottom:12px;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;z-index:2}
.zoom button{width:44px;height:44px;border:0;background:transparent;color:var(--label);font-size:20px;display:grid;place-items:center}
.zoom button + button{border-top:1px solid var(--sep)}
.legend{position:absolute;left:12px;bottom:12px;border-radius:14px;padding:10px 12px;font-size:12px;display:flex;flex-direction:column;gap:6px;max-width:min(320px,calc(100% - 90px));z-index:2}
.legend .t{font-size:11px;font-weight:600;color:var(--label-2)}
.legend .items{display:flex;flex-wrap:wrap;gap:5px 12px}
.legend .it{display:flex;align-items:center;gap:6px;font-weight:600}
.legend .hint{font-size:11px;color:var(--label-2)}
.ramp{height:8px;border-radius:4px;width:200px;max-width:100%}
.ramp-l{display:flex;justify-content:space-between;font-size:10.5px;color:var(--label-2);width:200px;max-width:100%}
.sw{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}
.lg{display:inline-block;width:20px;height:20px;border-radius:50%;flex:none;background-repeat:no-repeat;background-color:#fff;box-shadow:0 0 0 1.5px var(--ring,transparent)}
.lg.big{width:28px;height:28px}
.tip{position:absolute;pointer-events:none;border-radius:12px;padding:8px 11px;font-size:13px;line-height:1.35;max-width:260px;transform:translate(-50%,calc(-100% - 14px));z-index:5}
.tip b{font-weight:700}
.tip .k{font-size:11.5px;color:var(--label-2)}
.loading{position:absolute;inset:0;display:grid;place-items:center;color:var(--label-2);font-size:13px}

/* ---------- inspector ---------- */
.ihead{padding:14px 16px 10px;border-bottom:1px solid var(--sep);display:flex;flex-direction:column;gap:10px}
.ihead .seg{width:100%;display:grid;grid-template-columns:repeat(5,1fr)}
.pane{overflow:auto;padding:16px 18px 28px;display:flex;flex-direction:column;gap:22px;min-height:0;flex:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.pane h2{margin:0;font-family:var(--f-display);font-weight:800;font-size:28px;line-height:1.08;letter-spacing:-.02em;text-wrap:balance}
.pane h3{margin:0 0 10px;font-size:13px;font-weight:600;color:var(--label-2);text-transform:uppercase;letter-spacing:.04em}
.lede{margin:6px 0 0;color:var(--label-2);font-size:14.5px;line-height:1.45}
.note{margin:8px 0 0;color:var(--label-2);font-size:12.5px;line-height:1.45}
.crumbs{display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--label-2)}
.crumbs button{border:0;background:none;padding:6px 0;color:var(--tint);font-weight:600}
.crumbs .sep{color:var(--label-3)}
.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:4px 9px;border-radius:999px;background:var(--fill);color:var(--label-2)}
.badge.hung{background:color-mix(in srgb,var(--orange) 18%,transparent);color:var(--orange)}
.badge.maj{background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}
.badge.off{background:var(--tint-soft);color:var(--tint)}
.group{background:var(--card-2);border-radius:var(--r-m);padding:4px 14px}
:root:not([data-theme="dark"]) .group{background:var(--bg)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .group{background:var(--card-2)}}
.prog{display:flex;flex-direction:column;gap:6px}
.prog .bar{height:6px;border-radius:3px;background:var(--fill);overflow:hidden}
.prog .bar i{display:block;height:100%;background:var(--tint);border-radius:3px}
.prog .k{font-size:12.5px;color:var(--label-2)}
.rows{display:flex;flex-direction:column}
.prow{display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr) 56px 50px;gap:10px;align-items:center;font-size:14px;min-height:40px;border-bottom:1px solid var(--sep)}
.prow:last-child{border-bottom:0}
.prow .n{display:flex;align-items:center;gap:8px;font-weight:650;min-width:0}
.prow .n span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tr{position:relative;height:10px;background:var(--fill);border-radius:5px}
.tr i{position:absolute;left:0;top:0;bottom:0;border-radius:5px}
.tr b{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--label);opacity:.6;border-radius:1px}
.v{text-align:right;font-variant-numeric:tabular-nums;font-size:13.5px}
.up{color:var(--blue)}.down{color:var(--red)}.flat{color:var(--label-3)}
.kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.kv div{background:var(--card-2);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}
:root:not([data-theme="dark"]) .kv div{background:var(--bg)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .kv div{background:var(--card-2)}}
.kv .l{font-size:12px;color:var(--label-2)}
.kv .x{font-family:var(--f-round);font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}
.hemi{width:100%;display:block}
.coal{display:flex;flex-wrap:wrap;gap:6px}
.coal button{display:inline-flex;align-items:center;gap:7px;border:0;background:var(--fill);border-radius:999px;padding:5px 12px 5px 6px;min-height:36px;font-size:13.5px;font-weight:650}
.coal button[aria-pressed="true"]{background:var(--label);color:var(--card)}
.coal .c{font-size:12px;opacity:.7;font-weight:500;font-variant-numeric:tabular-nums}
.cbar{position:relative;height:28px;border-radius:8px;background:var(--fill);overflow:hidden;display:flex;margin-top:12px}
.cbar i{display:block;height:100%}
.cbar .mk{position:absolute;top:0;bottom:0;width:2px;background:var(--label)}
.cstat{font-size:15px;font-weight:700;margin-top:10px}
.list{list-style:none;margin:0;padding:0}
.list > li > button,.rowbtn{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;align-items:center;width:100%;padding:11px 0;border-bottom:1px solid var(--sep);min-height:44px}
.list > li:last-child > button{border-bottom:0}
.rowbtn:focus-visible{outline:3px solid var(--tint);outline-offset:2px}
.rowbtn .nm{font-weight:650;font-size:15px}
.rowbtn .meta{font-size:12.5px;color:var(--label-2);grid-column:1/-1}
.stack{grid-column:1/-1;display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--fill);position:relative}
.stack i{display:block;height:100%}
.stack b{position:absolute;left:50%;top:-2px;bottom:-2px;width:2px;background:var(--label);opacity:.7}
.mwc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.mwc li button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--fill);font-size:13.5px;min-height:44px}
.mwc .parts{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.pw{display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr) 46px;gap:10px;align-items:center;font-size:14px;min-height:40px}
.pw .bars{display:flex;flex-direction:column;gap:3px}
.pw .bars i{display:block;height:7px;border-radius:3px}
.pw .bars i.s{opacity:.28}
.wardgrid{display:flex;flex-wrap:wrap;gap:4px}
.wardgrid button{width:30px;height:30px;border-radius:7px;border:0;font-size:10.5px;font-weight:700;color:rgba(0,0,0,.62);padding:0;display:grid;place-items:center;font-variant-numeric:tabular-nums}
.wardgrid button.unc{background:repeating-linear-gradient(45deg,var(--hatch-a) 0 3px,var(--hatch-b) 3px 6px)!important;color:var(--label-2)}
.pills{display:flex;flex-wrap:wrap;gap:6px}
.lev{display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr) 56px;gap:10px;align-items:center;min-height:44px;border-bottom:1px solid var(--sep);font-size:14px}
.lev .bars{display:flex;flex-direction:column;gap:4px}
.lev .bars i{display:block;height:7px;border-radius:3px}
.lev .bars i.s{background:var(--fill-2)!important}
.lev .x{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.levkey{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--label-2)}
.levkey span{display:flex;align-items:center;gap:6px}
.hc{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:7px;padding:12px 0;border-bottom:1px solid var(--sep);width:100%}
.hc .top2{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.hc .nm{font-weight:650;font-size:15px}
.hc .meta{font-size:12.5px;color:var(--label-2)}
.about p{margin:0 0 10px;font-size:14px;color:var(--label-2);line-height:1.5}
.about b{color:var(--label)}
.shield{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:14px;background:var(--tint-soft);color:var(--label);font-size:13.5px;line-height:1.45}
.shield svg{flex:none;width:22px;height:22px;color:var(--tint);margin-top:1px}

/* ---------- iPhone: full-screen map, bottom sheet, tab bar ---------- */
.mtop,.tabbar,.grab{display:none}
@media (max-width:899px){
  body{padding:0}
  .app{display:block;padding:0;height:100%;max-width:none}
  .app > .top{display:none}
  .split{display:block;height:100%}
  .mapcard{position:fixed;inset:0;border-radius:0;box-shadow:none}
  .mtop{display:flex;position:fixed;left:0;right:0;top:0;z-index:4;padding:calc(env(safe-area-inset-top,0px) + 8px) max(12px,env(safe-area-inset-right,0px)) 8px max(12px,env(safe-area-inset-left,0px));align-items:center;justify-content:space-between;gap:10px;border-width:0 0 1px 0;border-radius:0}
  .mtop .appmark{width:34px;height:34px;border-radius:8px;box-shadow:none}
  .mtop .t{font-family:var(--f-display);font-weight:800;font-size:17px;letter-spacing:-.01em;line-height:1.1}
  .mtop .t small{display:block;font-size:12px;font-weight:500;color:var(--label-2);letter-spacing:0}
  .mtop .pct{font-family:var(--f-round);font-weight:800;font-size:22px;line-height:1}
  .mtop .pct small{font-size:11px;font-weight:600;color:var(--label-2);display:block;text-align:right;font-family:var(--f-text)}
  .hud{top:calc(env(safe-area-inset-top,0px) + 66px);left:max(8px,env(safe-area-inset-left,0px));right:max(8px,env(safe-area-inset-right,0px))}
  .hud .search{display:none}
  .hudcol{padding:6px;gap:6px}
  .hudcol .chips{flex-wrap:nowrap;overflow-x:auto;max-width:calc(100vw - 32px);scrollbar-width:none}
  .seg button{padding:6px 10px;font-size:13px}
  .legend,.zoom{bottom:calc(var(--sheet-vis,170px) + 10px)}
  .zoom{right:max(10px,env(safe-area-inset-right,0px))}
  .legend{left:max(10px,env(safe-area-inset-left,0px));max-width:calc(100% - 80px);padding:8px 10px}
  .legend .hint{display:none}
  .legend .items .it:nth-child(n+7){display:none}
  .inspector{position:fixed;left:0;right:0;bottom:0;height:calc(100dvh - env(safe-area-inset-top,0px) - 58px);border-radius:16px 16px 0 0;z-index:5;transform:translateY(var(--sheet-y,60%));transition:transform .38s cubic-bezier(.2,.9,.25,1);box-shadow:0 -6px 30px rgba(0,0,0,.18);padding-bottom:calc(var(--tab-h) + env(safe-area-inset-bottom,0px))}
  .inspector.dragging{transition:none}
  .legend{transition:opacity .25s}
  [data-detent="half"] .legend,[data-detent="full"] .legend{opacity:0;pointer-events:none}
  .grab{display:flex;justify-content:center;padding:8px 0 2px;touch-action:none;cursor:grab}
  .grab span{width:36px;height:5px;border-radius:3px;background:var(--fill-2)}
  .ihead{padding:4px 16px 8px;touch-action:none}
  .ihead .seg{display:none}
  .msearch{display:block!important}
  .pane{padding:8px 16px 28px}
  .pane h2{font-size:26px}
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:6;padding:4px max(8px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(8px,env(safe-area-inset-left,0px));border-width:1px 0 0 0;border-radius:0}
  .tabbar button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0 4px;min-height:var(--tab-h);font-size:10.5px;font-weight:600;color:var(--label-2)}
  .tabbar button svg{width:24px;height:24px}
  .tabbar button[aria-selected="true"]{color:var(--tint)}
  .tip{display:none}
}
.clab{border-radius:18px;background:var(--fill);padding:16px 16px 18px}
.clab-h{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:16px}
.clab-tip{margin:0;font-size:12.5px;line-height:1.45;color:var(--label-2);background:var(--card);border-radius:12px;padding:9px 12px}
.clab-tip b{color:var(--label)}
.ctally{margin-top:14px;background:var(--card);border-radius:14px;padding:12px 14px}
.ctally-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.ctally .cbar{margin-top:0;background:var(--fill)}
.cscale{position:relative;height:16px;margin-top:4px;font-size:11px;color:var(--label-2)}
.cscale span{position:absolute;top:0;white-space:nowrap}
.cscale span:first-child{left:0}.cscale span:last-child{right:0}
.cscale span:nth-child(2){transform:translateX(-50%);color:var(--label);font-weight:600}
.ctally .cstat{margin:8px 0 0}
.clab-l .note{margin-top:10px}
@media (min-width:900px){ .clab-h{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center} }
.clab-h h3{margin:0}
.clab-g{display:grid;grid-template-columns:1fr;gap:18px}
.clab h4{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--label-2);text-transform:uppercase;letter-spacing:.04em}
.clab .coal button{min-height:42px;font-size:14px;padding:6px 14px 6px 7px;background:var(--card)}
.clab .coal button[aria-pressed="true"]{background:var(--label);color:var(--card)}
.clab .cbar{height:34px;border-radius:10px;background:var(--card)}
.clab .cstat{font-size:16px}
.clab-mw{margin-top:20px}
.clab .mwc li button{background:var(--card)}
@media (min-width:900px){ .clab-g{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start} .inspector .pane > .clab{column-span:all} .inspector .pane > div:has(> .wardgrid){column-span:all} }
.msearch{display:none}
.chat{display:flex;flex-direction:column;gap:10px}
.msg{border-radius:18px;padding:10px 14px;font-size:14.5px;line-height:1.45;max-width:92%}
.msg p{margin:0 0 8px}.msg p:last-child{margin-bottom:0}
.msg ul{margin:4px 0 8px;padding-left:2px;list-style:none;display:flex;flex-direction:column;gap:4px}
.msg li{display:flex;align-items:center;gap:8px}
.msg .chip{margin-top:6px}
.msg.me{align-self:flex-end;background:var(--tint);color:#fff;border-bottom-right-radius:6px}
.msg.bot{align-self:flex-start;background:var(--fill);border-bottom-left-radius:6px}
.msg-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:11.5px;color:var(--label-2);flex-wrap:wrap}
.askbar{position:sticky;bottom:-8px;z-index:3;box-shadow:0 0 0 8px var(--card);display:flex;gap:8px;align-items:center;background:var(--card);border:1px solid var(--sep);border-radius:999px;padding:4px 4px 4px 16px}
.askbar input{flex:1;border:0;background:transparent;font-size:15px;min-height:38px;outline:none;min-width:0}
.askbar button{width:38px;height:38px;border-radius:50%;border:0;background:var(--tint);color:#fff;font-size:18px;font-weight:800}
.lt{all:unset;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:11px;font-weight:600;color:var(--label-2);min-height:22px;width:100%}
.lt:focus-visible{outline:2px solid var(--tint);border-radius:6px}
.lt svg{width:14px;height:14px;transition:transform .2s;flex:none}
.legend.collapsed .lt svg{transform:rotate(180deg)}
.legend.collapsed > :not(.lt){display:none}
.legend.collapsed{padding:6px 12px}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.mcard{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:7px;padding:11px 12px;border-radius:14px;background:var(--fill);min-width:0}
.mcard:hover{background:var(--fill-2)}
.mcard:focus-visible{outline:3px solid var(--tint);outline-offset:2px}
.mcard .top2{display:flex;justify-content:space-between;align-items:center;gap:6px}
.mcard .nm{font-weight:700;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mcard .badge{font-size:11px;padding:3px 8px;white-space:nowrap}
.mcard .meta{font-size:12px;color:var(--label-2)}
.more{display:block;margin:10px auto 0;border:0;border-radius:999px;padding:7px 16px;min-height:34px;background:var(--fill);color:var(--tint);font-weight:700;font-size:13px}
.selcard{margin-top:8px;border-radius:14px;padding:12px 12px 12px 14px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow)}
.selcard .h{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.selcard .nm{font-family:var(--f-display);font-weight:800;font-size:18px;line-height:1.15;letter-spacing:-.01em}
.selcard .sub{font-size:12.5px;color:var(--label-2)}
.selcard .ln{font-size:13.5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.selcard .x{width:30px;height:30px;border-radius:50%;border:0;background:var(--fill);display:grid;place-items:center;flex:none;color:var(--label-2);font-size:16px;line-height:1}
.selcard .acts{display:flex;gap:6px;flex-wrap:wrap}
.selcard .acts button{border:0;border-radius:999px;padding:6px 12px;min-height:32px;font-size:13px;font-weight:650;background:var(--tint);color:#fff}
.selcard .acts button.sec{background:var(--fill);color:var(--label)}
.toast{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);border-radius:999px;padding:8px 8px 8px 16px;font-size:13.5px;font-weight:600;display:flex;gap:10px;align-items:center;z-index:8;box-shadow:var(--shadow);white-space:nowrap}
.toast button{border:0;border-radius:999px;padding:6px 14px;min-height:32px;background:var(--tint);color:#fff;font-weight:700;font-size:13px}
.toast.plain{padding-right:16px}
.iconbtn.spin svg{animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:899px){ .selcard{display:none!important} .toast{position:fixed;bottom:calc(var(--sheet-vis,170px) + 14px)} .mtop .iconbtn{width:34px;height:34px} }
/* ---------- desktop & iPad: Zaron app shell (left menu, as Xeno Tracker) + one-page sections ---------- */
.filterbar,.sec.page,.side,.sechead,.maphead,.mapfoot,.infocard,.ov,.ovcards,.leaders{display:none}
.mapwrap{display:contents}
@media (min-width:900px){
  html,body{height:auto}
  body{overflow-x:hidden;overflow-y:auto;padding-left:max(12px,env(safe-area-inset-left,0px))}
  .app{display:grid;grid-template-columns:232px minmax(0,1fr);column-gap:32px;align-items:start;height:auto;max-width:1560px;padding-bottom:0;padding-top:12px}
  .app.scol-on{grid-template-columns:72px minmax(0,1fr)}
  .app > *:not(.side){grid-column:2}
  .app > .top{display:none!important}
  .side{display:flex;flex-direction:column;gap:14px;grid-column:1;grid-row:1 / span 30;position:sticky;top:12px;height:calc(100vh - 24px);background:var(--card);border:1px solid var(--sep);border-radius:22px;padding:14px 10px}
  .sbrand{display:flex;align-items:center;gap:10px;padding:2px 4px 6px}
  .appmark.sm{width:36px;height:36px;border-radius:9px;box-shadow:none}
  .sbrand .lab{display:flex;flex-direction:column;line-height:1.15;min-width:0;flex:1}
  .sbrand b{font-family:var(--f-display);font-size:16px;font-weight:800}
  .sbrand small{font-size:11.5px;color:var(--label-2)}
  .scol{border:0;background:none;color:var(--label-2);width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex:none}
  .scol:hover{background:var(--fill)}
  .scol svg{width:18px;height:18px}
  .snav{display:flex;flex-direction:column;gap:3px}
  .si{border:0;background:none;display:flex;align-items:center;gap:11px;padding:7px 8px;border-radius:12px;font-size:15px;font-weight:600;color:var(--label);text-align:left;min-height:44px}
  .si:hover{background:var(--fill)}
  .si[aria-selected="true"]{background:var(--tint);color:#fff}
  .si .tile{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--c);color:#fff;flex:none}
  .si[aria-selected="true"] .tile{background:rgba(255,255,255,.22)}
  .si .tile svg{width:17px;height:17px}
  .sfoot{margin-top:auto;display:flex;flex-direction:column;gap:10px}
  .status{background:var(--fill);border-radius:14px;padding:10px 12px}
  .st-h{display:flex;align-items:center;gap:8px;font-size:13px}
  .st-h .live{background:#30d158;box-shadow:0 0 0 3px rgba(48,209,88,.2)}
  .st-h .iconbtn.sm{width:28px;height:28px;margin-left:auto;background:var(--fill)}
  .st-h .iconbtn.sm svg{width:15px;height:15px}
  .status p{margin:4px 0 0;font-size:12px;color:var(--label-2);line-height:1.4}
  .theme{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:2px;border-radius:10px;background:var(--fill)}
  .theme button{border:0;background:none;border-radius:8px;height:30px;display:grid;place-items:center;color:var(--label-2)}
  .theme button svg{width:16px;height:16px}
  .theme button[aria-pressed="true"]{background:var(--card);color:var(--label);box-shadow:0 2px 6px rgba(0,0,0,.12)}
  .app.scol-on .lab,.app.scol-on .status p{display:none}
  .app.scol-on .sbrand{flex-direction:column}
  .app.scol-on .si{justify-content:center;padding:7px 0}
  .app.scol-on .status{padding:8px;display:grid;place-items:center}
  .app.scol-on .st-h .iconbtn.sm{margin:0}
  .app.scol-on .st-h .live{display:none}
  .app.scol-on .theme{grid-template-columns:1fr}
  .sechead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding-top:8px;scroll-margin-top:12px}
  .sechead h1{margin:0;font-family:var(--f-display);font-weight:800;font-size:34px;letter-spacing:-.022em;display:flex;align-items:center;gap:10px}
  .sechead p{margin:4px 0 0;color:var(--label-2);font-size:14.5px}
  .sechead p b{color:var(--label)}
  .sh-r{display:flex;gap:8px;align-items:center}
  .pill{border:0;border-radius:999px;padding:8px 14px;min-height:38px;font-size:14px;font-weight:600;background:var(--card);color:var(--label);border:1px solid var(--sep);cursor:pointer}
  .ibtn{border:0;width:30px;height:30px;border-radius:50%;background:var(--fill);color:var(--label-2);display:inline-grid;place-items:center;vertical-align:middle}
  .ibtn svg{width:16px;height:16px}
  .ibtn[aria-expanded="true"]{background:var(--tint);color:#fff}
  .infocard{position:relative;margin-top:12px;background:var(--card);border:1px solid var(--sep);border-radius:16px;padding:14px 52px 14px 16px;font-size:13.5px;line-height:1.5;color:var(--label-2)}
  .infocard:not([hidden]){display:block}
  .infocard b{color:var(--label)}
  .infocard p{margin:6px 0 0}
  .infocard .x{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;border:0;background:var(--fill);color:var(--label);font-size:14px;display:grid;place-items:center}
  .maphead{padding:18px 20px 12px}
  .maphead h2{margin:0;font-family:var(--f-display);font-size:22px;font-weight:800;letter-spacing:-.01em}
  .maphead p{margin:3px 0 0;font-size:13px;color:var(--label-2)}
  .maphead p b{color:var(--label)}
  .filterbar{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:10px 20px 12px;border-top:1px solid var(--sep);border-radius:16px}
  .filterbar .hudcol{background:none;border:0;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 10px}
  .filterbar .search{width:280px;margin-left:auto}
  .filterbar .search input{background:var(--card)}
  .filterbar .legend{position:static;flex-basis:100%;max-width:none;max-height:none;background:none;border:0;padding:8px 2px 0;-webkit-backdrop-filter:none;backdrop-filter:none;border-top:1px solid var(--sep);border-radius:0;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 16px;box-shadow:none}
  .filterbar .legend .lt{width:auto;font-size:12px}
  .filterbar .legend.collapsed{padding:8px 2px 0}
  .split{display:block;margin-top:12px}
  .mapwrap{display:block}
  .maphead,.mapfoot{display:block}
  .mapfoot{display:flex}
  .mapwrap{background:var(--card);border:1px solid var(--sep);border-radius:var(--r-l);overflow:hidden;box-shadow:var(--shadow)}
  .mapcard{position:relative;height:clamp(460px,66vh,780px);border-radius:0;box-shadow:none}
  .mapfoot{display:flex;flex-direction:column;border-top:1px solid var(--sep)}
  .mapfoot .legend{position:static;max-width:none;max-height:none;background:none;border:0;padding:10px 20px;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 16px;box-shadow:none}
  .mapfoot .legend .lt{width:auto;font-size:12px}
  .mapfoot .legend.collapsed{padding:10px 20px}
  .mapfoot .selcard{display:flex!important;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0;border-radius:0;border:0;border-top:1px solid var(--sep);box-shadow:none;background:none;padding:12px 20px;-webkit-backdrop-filter:none;backdrop-filter:none}
  .mapfoot .selcard[hidden]{display:none!important}
  .mapfoot .selcard .h{order:0;flex:1 1 auto;align-items:center}
  .mapfoot .selcard .h .x{order:9}
  .mapfoot .selcard .nm{font-size:16px}
  .inspector{margin-top:16px;background:var(--card);border:1px solid var(--sep);border-radius:var(--r-l);box-shadow:var(--shadow)}
  .inspector .pane{display:block;column-count:2;column-gap:32px;padding:22px 24px 24px}
  .inspector .pane > *{break-inside:avoid;margin:0 0 18px}
  .inspector .pane > nav.crumbs,.inspector .pane > div:has(> h2),.inspector .pane > .kv,.inspector .pane > .prog,.inspector .pane > .disclaimer{column-span:all}
  .inspector .pane > :last-child{margin-bottom:0}
  .inspector .pane > div:has(> .mgrid),.inspector .pane > .span,.inspector .pane > div:has(> .wardgrid),.inspector .pane > .credit{column-span:all}
  .inspector .mgrid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
  .inspector{position:static;overflow:visible}
  .ihead,.hud{display:none!important}
  .zoom{top:12px;bottom:auto;right:12px;flex-direction:row}
  .zoom button + button{border-top:0;border-left:1px solid var(--sep)}
  .split .search .selcard{display:none!important}
  .pane{overflow:visible;flex:none}
  .sec.page{display:block;margin-top:16px;background:var(--card);border-radius:var(--r-l);box-shadow:var(--shadow);scroll-margin-top:12px}
  .sec.page .pane{max-width:none;margin:0;padding:26px 28px 30px;gap:16px}
  #pane-results,#pane-power,#pane-ask{display:grid;column-gap:32px;row-gap:14px;align-items:start}
  #pane-results{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
  #pane-results > :first-child{grid-column:1 / -1}
  #pane-results > :nth-child(2){grid-column:1;grid-row:2 / span 4}
  #pane-results > :nth-child(n+3){grid-column:2}
  #pane-results > p.note{margin-top:0!important}
  #pane-power{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
  #pane-power > :nth-child(1){grid-column:1;grid-row:1}
  #pane-power > .levkey{grid-column:1;grid-row:2}
  #pane-power > p.note{grid-column:1;grid-row:3}
  #pane-power > .group{grid-column:2;grid-row:1 / span 4}
  #pane-hung .group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:none;padding:0}
  #pane-hung .hc{background:var(--fill);border:0;border-radius:14px;padding:12px 14px}
  #pane-hung .hc:hover{background:var(--fill-2)}
  #pane-ask{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
  #pane-ask > :first-child,#pane-ask > .pills,#pane-ask > p.note{grid-column:1}
  #pane-ask > .chat{grid-column:2;grid-row:1 / span 3;min-height:220px;background:var(--fill);border-radius:18px;padding:14px;max-height:520px;overflow:auto}
  #pane-ask > .chat:empty::before{content:"Your answers appear here. Pick a suggestion or type a question below.";color:var(--label-2);font-size:14px}
  #pane-ask > .askbar{grid-column:2;position:static;box-shadow:none}
  #pane-ask .msg.bot{background:var(--card)}
  .sec.page .pane h2{font-size:32px}
  .foot{margin:16px 0 14px}
  .ov{display:block;scroll-margin-top:12px}
  .leaders{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;border-radius:16px;background:var(--card);border:1px solid var(--sep)}
  .leaders .lt{font-size:11px;font-weight:700;color:var(--label-2);text-transform:uppercase;letter-spacing:.05em;margin-right:4px}
  .leaders .sep{width:1px;height:22px;background:var(--sep);margin:0 4px}
  .lchip{display:inline-flex;align-items:center;gap:7px;padding:3px 11px 3px 3px;border-radius:999px;background:var(--fill);font-size:13px;font-weight:600;border:0;color:var(--label);cursor:pointer;min-height:32px}
  .lchip:hover{background:var(--fill-2)}
  .lchip[aria-pressed="true"]{background:var(--tint);color:#fff}
  .lchip[aria-pressed="true"] em,.lchip[aria-pressed="true"] .d{color:rgba(255,255,255,.85)}
  .lchip .lg{width:22px;height:22px}
  .lchip em{font-style:normal;color:var(--label-2);font-weight:500;font-variant-numeric:tabular-nums}
  .lchip .d{font-size:11.5px;font-weight:600;font-variant-numeric:tabular-nums}
  .lchip.st{padding:5px 11px;cursor:default}
  .lchip.st:hover{background:var(--fill)}
  .lchip.st i{width:8px;height:8px;border-radius:50%;display:inline-block}
  .ovgrid.ovcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}
  .ovgrid.ovcards .ovc{grid-column:auto}
  .ov + *{margin-top:0}
  .mapwrap{scroll-margin-top:12px}
  .mh-row{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}
  .maphead h2{display:flex;align-items:center;gap:10px}
  #info-map{margin:0 0 12px}
  .ovgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}
  .ovt{background:var(--card);border:1px solid var(--sep);border-radius:18px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}
  .ovt .l{font-size:12.5px;color:var(--label-2);font-weight:600}
  .ovt .x{font-family:var(--f-round);font-size:30px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
  .ovt .x small{font-size:15px;color:var(--label-2);font-weight:700}
  .ovt .s{font-size:12px;color:var(--label-2)}
  .ovc{grid-column:span 2;background:var(--card);border:1px solid var(--sep);border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:10px}
  .ovc h3{margin:0;font-size:13px;font-weight:600;color:var(--label-2);text-transform:uppercase;letter-spacing:.04em;display:flex;justify-content:space-between;align-items:center}
  .ovc h3 button{all:unset;cursor:pointer;color:var(--tint);font-size:12.5px;text-transform:none;letter-spacing:0;font-weight:700}
  .ovc .prow{min-height:32px}
  .ovout{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
  .ovout div{background:var(--fill);border-radius:12px;padding:10px 12px}
  .ovout .l{font-size:12px;color:var(--label-2)}
  .ovout .x{display:block;font-family:var(--f-round);font-size:24px;font-weight:800}
  .ovlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
  .ovlist button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--sep)}
  .ovlist li:last-child button{border-bottom:0}
  .ovlist .nm{font-weight:650;font-size:14px}
  .ovlist .meta{font-size:12px;color:var(--label-2)}
  .ovlist .stack{height:6px}
  .provbox{background:var(--fill);border-radius:18px;padding:16px 16px 18px}
  .provbox .pb-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
  .provbox .pb-h h3{margin:0;font-family:var(--f-display);font-size:22px;font-weight:800;text-transform:none;letter-spacing:-.01em;color:var(--label)}
  .provbox .pbx{width:34px;height:34px;border-radius:50%;border:0;background:var(--card);color:var(--label);display:grid;place-items:center;flex:none}
  .provbox .pb-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:14px}
  .provbox .group,.provbox .kv div{background:var(--card)}
  .provbox .mgrid{margin-top:14px}
  .provbox .mcard{background:var(--card)}
}
.steps{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.steps li{display:flex;gap:10px;align-items:flex-start;background:var(--fill);border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.4;color:var(--label-2)}
.steps li b{flex:none;width:22px;height:22px;border-radius:50%;background:var(--tint);color:#fff;display:grid;place-items:center;font-size:12px}
@media (max-width:899px){ .steps{grid-template-columns:1fr} }
@media (min-width:900px){
}
@media (min-width:900px) and (max-width:1180px){ .inspector .pane{column-count:1} }
.dlg{border:0;padding:0;border-radius:22px;width:min(1120px,calc(100vw - 32px));max-height:calc(100dvh - 48px);background:var(--card);color:var(--label);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.dlg::backdrop{background:rgba(0,0,0,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.dlg-in{position:relative;max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain}
.dlg .x{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;border:0;background:var(--fill);color:var(--label);font-size:16px;z-index:2;display:grid;place-items:center}
.dpane{padding:26px 28px 28px;overflow:visible}
@media (min-width:900px){ .dpane{display:block;column-count:3;column-gap:28px;padding:28px 32px 28px} .dpane > *{break-inside:avoid;margin:0 0 14px} .dpane > :first-child{column-span:all;padding-right:48px} .dpane .about{display:contents} .dpane .about p{break-inside:avoid;margin:0 0 12px;font-size:13.5px} .dpane .disclaimer{font-size:12.5px} .dpane > .credit{column-span:all;margin:4px 0 0!important} }
.foot{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:8px 32px;font-size:12.5px;line-height:1.5;color:var(--label-2);border-top:1px solid var(--sep);padding-top:14px}
.foot h4{margin:0 0 4px;font-size:13px;font-weight:700;color:var(--label)}
.foot p{margin:0 0 6px}
.foot p:last-child{margin-bottom:0}
.foot .dis{flex:1 1 560px;max-width:1100px}
.linkbtn{all:unset;cursor:pointer;color:var(--tint);font-weight:700}
.linkbtn:focus-visible{outline:2px solid var(--tint);border-radius:4px}
.foot .dis b{color:var(--label)}
.foot .by{white-space:nowrap;font-size:12.5px}
.foot a{color:var(--tint);font-weight:700;text-decoration:none}
.foot a:hover{text-decoration:underline}
.m-only,.m-only-grid{display:none}
@media (max-width:899px){ .foot{display:none} .m-only{display:block} .m-only-grid{display:grid} }
@media (min-width:900px) and (max-width:1500px){ .title h1{font-size:27px} .title p{font-size:13.5px} .appmark{width:44px;height:44px;border-radius:10px} .big{font-size:32px} .big small{font-size:16px} .count{gap:16px} .kpi{min-width:96px} .kpi .v{font-size:14px} .app{gap:12px} }
@media (min-width:900px) and (max-height:860px){ .legend .hint{display:none} .pane{gap:14px;padding:14px 18px 18px} .pane h2{font-size:24px} .lede{font-size:13.5px;margin-top:4px} .pane h3{margin-bottom:7px;font-size:12px} .kv div{padding:7px 10px} .kv .x{font-size:19px} .pane .pills .chip{min-height:28px;padding:4px 10px;font-size:12.5px} .mcard{padding:8px 11px;gap:5px} .ihead{padding:10px 14px 8px} .prow{min-height:34px} }
@media (min-width:900px) and (max-height:700px){ .pane .lede{display:none} }
@media (min-width:900px) and (max-width:1180px){ .count .kpi:nth-child(2){display:none} .title p{display:none} .app > .top{align-items:center} }
@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
