.map-glass{background:var(--maplibre-glass-bg);backdrop-filter:var(--blur-lg);border:1px solid var(--maplibre-glass-border);border-radius:var(--shape-sm)}.maplibregl-ctrl-group{backdrop-filter:var(--blur-lg);background:var(--maplibre-glass-bg)!important;border:1px solid var(--maplibre-glass-border)!important;border-radius:var(--shape-sm)!important}.maplibregl-ctrl-group button{color:var(--maplibre-glass-fg)!important;background:0 0!important}.maplibregl-ctrl-group button+button{border-top:1px solid var(--maplibre-glass-divider)!important}.maplibregl-ctrl-group button:hover{background:var(--maplibre-glass-hover)!important}.maplibregl-ctrl-scale{backdrop-filter:var(--blur-lg);background:var(--maplibre-glass-bg)!important;border:1px solid var(--maplibre-glass-border)!important;border-radius:var(--shape-xs)!important;color:var(--maplibre-glass-fg-dim)!important;padding:2px 6px!important;font-size:10px!important}.maplibregl-ctrl-attrib{backdrop-filter:var(--blur-sm);background:var(--maplibre-attrib-bg)!important;border-radius:var(--shape-xs)!important;font-size:10px!important}.maplibregl-ctrl-attrib a{color:var(--maplibre-attrib-fg)!important}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{color-scheme:dark;--sys-zinc-50:#fafafa;--sys-zinc-100:#f5f5f5;--sys-zinc-200:#e6e5e5;--sys-zinc-250:#dddddc;--sys-zinc-300:#d4d4d3;--sys-zinc-350:#bcbcbb;--sys-zinc-375:#b0b0af;--sys-zinc-400:#a4a3a2;--sys-zinc-500:#747371;--sys-zinc-600:#535251;--sys-zinc-700:#41403f;--sys-zinc-800:#272626;--sys-zinc-850:#201f1f;--sys-zinc-900:#181817;--sys-zinc-925:#111110;--sys-zinc-950:#0a0a0a;--sys-zinc-975:#050505;--sys-slate-50:#f8fafc;--sys-slate-100:#f1f5f9;--sys-slate-200:#e2e8f0;--sys-slate-300:#cbd5e1;--sys-slate-400:#94a3b8;--sys-slate-500:#64748b;--sys-slate-600:#475569;--sys-slate-700:#334155;--sys-slate-800:#1e293b;--sys-slate-900:#0f172a;--sys-slate-950:#020617;--sys-slate-975:#010310;--sys-white:#fff;--sys-white-4:#ffffff0a;--sys-white-5:#ffffff0d;--sys-white-7:#ffffff12;--sys-white-8:#ffffff14;--sys-white-9:#ffffff17;--sys-white-10:#ffffff1a;--sys-white-12:#ffffff1f;--sys-white-14:#ffffff24;--sys-white-16:#ffffff29;--sys-black-4:#0000000a;--sys-black-6:#0000000f;--sys-black-8:#00000014;--sys-black-12:#0000001f;--sys-black-40:#0006;--sys-black-50:#00000080;--sys-black-60:#0009;--sys-indigo-50:#eef2ff;--sys-indigo-100:#e0e7ff;--sys-indigo-200:#c7d2fe;--sys-indigo-300:#a5b4fc;--sys-indigo-400:#818cf8;--sys-indigo-500:#6366f1;--sys-indigo-600:#4f46e5;--sys-indigo-700:#4338ca;--sys-indigo-800:#3730a3;--sys-indigo-900:#312e81;--sys-indigo-950:#1e1b4b;--sys-indigo-500-8:#6366f114;--sys-indigo-500-12:#6366f11f;--sys-indigo-500-15:#6366f126;--sys-indigo-500-20:#6366f133;--sys-blue-50:#eff6ff;--sys-blue-100:#dbeafe;--sys-blue-200:#bfdbfe;--sys-blue-300:#93c5fd;--sys-blue-400:#60a5fa;--sys-blue-500:#3b82f6;--sys-blue-600:#2563eb;--sys-blue-700:#1d4ed8;--sys-blue-800:#1e40af;--sys-blue-900:#1e3a8a;--sys-blue-950:#172554;--sys-blue-500-12:#3b82f61f;--sys-sky-50:#f0f9ff;--sys-sky-100:#e0f2fe;--sys-sky-200:#bae6fd;--sys-sky-300:#7dd3fc;--sys-sky-400:#38bdf8;--sys-sky-500:#0ea5e9;--sys-sky-600:#0284c7;--sys-sky-700:#0369a1;--sys-sky-800:#075985;--sys-sky-900:#0c4a6e;--sys-sky-950:#082f49;--sys-sky-500-12:#0ea5e91f;--sys-cyan-50:#ecfeff;--sys-cyan-100:#cffafe;--sys-cyan-200:#a5f3fc;--sys-cyan-300:#67e8f9;--sys-cyan-400:#22d3ee;--sys-cyan-500:#06b6d4;--sys-cyan-600:#0891b2;--sys-cyan-700:#0e7490;--sys-cyan-800:#155e75;--sys-cyan-900:#164e63;--sys-cyan-950:#083344;--sys-cyan-500-12:#06b6d41f;--sys-teal-50:#f0fdfa;--sys-teal-100:#ccfbf1;--sys-teal-200:#99f6e4;--sys-teal-300:#5eead4;--sys-teal-400:#2dd4bf;--sys-teal-500:#14b8a6;--sys-teal-600:#0d9488;--sys-teal-700:#0f766e;--sys-teal-800:#115e59;--sys-teal-900:#134e4a;--sys-teal-950:#042f2e;--sys-teal-500-12:#14b8a61f;--sys-violet-50:#f5f3ff;--sys-violet-100:#ede9fe;--sys-violet-200:#ddd6fe;--sys-violet-300:#c4b5fd;--sys-violet-400:#a78bfa;--sys-violet-500:#8b5cf6;--sys-violet-600:#7c3aed;--sys-violet-700:#6d28d9;--sys-violet-800:#5b21b6;--sys-violet-900:#4c1d95;--sys-violet-950:#2e1065;--sys-violet-500-12:#8b5cf61f;--sys-purple-50:#faf5ff;--sys-purple-100:#f3e8ff;--sys-purple-200:#e9d5ff;--sys-purple-300:#d8b4fe;--sys-purple-400:#c084fc;--sys-purple-500:#a855f7;--sys-purple-600:#9333ea;--sys-purple-700:#7e22ce;--sys-purple-800:#6b21a8;--sys-purple-900:#581c87;--sys-purple-950:#3b0764;--sys-purple-500-12:#a855f71f;--sys-pink-50:#fdf2f8;--sys-pink-100:#fce7f1;--sys-pink-200:#fbcfe8;--sys-pink-300:#f9a8d4;--sys-pink-400:#f472b6;--sys-pink-500:#ec4899;--sys-pink-600:#db2777;--sys-pink-700:#be185d;--sys-pink-800:#9d174d;--sys-pink-900:#831843;--sys-pink-950:#500724;--sys-pink-500-12:#ec48991f;--sys-fuchsia-50:#fdf4ff;--sys-fuchsia-100:#fae8ff;--sys-fuchsia-200:#f5d0fe;--sys-fuchsia-300:#f0abfc;--sys-fuchsia-400:#e879f9;--sys-fuchsia-500:#d946ef;--sys-fuchsia-600:#c026d3;--sys-fuchsia-700:#a21caf;--sys-fuchsia-800:#86198f;--sys-fuchsia-900:#701a75;--sys-fuchsia-950:#4a044e;--sys-fuchsia-500-12:#d946ef1f;--sys-green-50:#f0fdf4;--sys-green-100:#dcfce7;--sys-green-200:#bbf7d0;--sys-green-300:#86efac;--sys-green-400:#4ade80;--sys-green-500:#22c55e;--sys-green-600:#16a34a;--sys-green-700:#15803d;--sys-green-800:#166534;--sys-green-900:#14532d;--sys-green-950:#052e16;--sys-green-500-12:#22c55e1f;--sys-emerald-50:#ecfdf5;--sys-emerald-100:#d1fae5;--sys-emerald-200:#a7f3d0;--sys-emerald-300:#6ee7b7;--sys-emerald-400:#34d399;--sys-emerald-500:#10b981;--sys-emerald-600:#059669;--sys-emerald-700:#047857;--sys-emerald-800:#065f46;--sys-emerald-900:#064e3b;--sys-emerald-950:#022c22;--sys-emerald-500-12:#10b9811f;--sys-lime-50:#f7fee7;--sys-lime-100:#ecfccb;--sys-lime-200:#d9f99d;--sys-lime-300:#bef264;--sys-lime-400:#a3e635;--sys-lime-500:#84cc16;--sys-lime-600:#65a30d;--sys-lime-700:#4d7c0f;--sys-lime-800:#3f6212;--sys-lime-900:#365314;--sys-lime-950:#1a2e05;--sys-lime-500-12:#84cc161f;--sys-yellow-50:#fefee8;--sys-yellow-100:#fefbc3;--sys-yellow-200:#fdf486;--sys-yellow-300:#fbe83e;--sys-yellow-400:#f2d80e;--sys-yellow-500:#dfc504;--sys-yellow-600:#b89e03;--sys-yellow-700:#8a7606;--sys-yellow-800:#72600b;--sys-yellow-900:#5e4f10;--sys-yellow-950:#362d06;--sys-yellow-500-12:#dfc5041f;--sys-red-50:#fef2f2;--sys-red-100:#fee2e2;--sys-red-200:#fecaca;--sys-red-300:#fca5a5;--sys-red-400:#f87171;--sys-red-500:#ef4444;--sys-red-600:#dc2626;--sys-red-700:#b91c1c;--sys-red-800:#991b1b;--sys-red-900:#7f1d1d;--sys-red-950:#450a0a;--sys-red-500-12:#ef44441f;--sys-rose-50:#fff1f2;--sys-rose-100:#ffe4e6;--sys-rose-200:#fecdd3;--sys-rose-300:#fda4af;--sys-rose-400:#fb7185;--sys-rose-500:#f43f5e;--sys-rose-600:#e11d48;--sys-rose-700:#be123c;--sys-rose-800:#9f1239;--sys-rose-900:#881337;--sys-rose-950:#4c0519;--sys-rose-500-12:#f43f5e1f;--sys-amber-50:#fffbeb;--sys-amber-100:#fef3c7;--sys-amber-200:#fde68a;--sys-amber-300:#fcd34d;--sys-amber-400:#fbbf24;--sys-amber-500:#f59e0b;--sys-amber-600:#d97706;--sys-amber-700:#b45309;--sys-amber-800:#92400e;--sys-amber-900:#78350f;--sys-amber-950:#451a03;--sys-amber-500-12:#f59e0b1f;--sys-orange-50:#fff7ed;--sys-orange-100:#ffedd5;--sys-orange-200:#fed7aa;--sys-orange-300:#fdba74;--sys-orange-400:#fb923c;--sys-orange-500:#f97316;--sys-orange-600:#ea580c;--sys-orange-700:#c2410c;--sys-orange-800:#9a3412;--sys-orange-900:#7c2d12;--sys-orange-950:#431407;--sys-orange-500-12:#f973161f;--ind-red:red;--ind-green:#0f0;--ind-yellow:#ff0;--sig-0:#f33;--sig-1:#f41;--sig-2:#f50;--sig-3:#f60;--sig-4:#f70;--sig-5:#f80;--sig-6:#f90;--sig-7:#fa0;--sig-8:#fb0;--sig-9:#fc0;--sig-10:#dd0;--sig-11:#be0;--sig-12:#8f0;--sig-13:#4f0;--sig-14:#2f0;--sig-15:var(--ind-green);--font:"DM Sans", system-ui, -apple-system, sans-serif;--mono:"DM Mono", ui-monospace, monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fs-display-lg:3.5625rem;--lh-display-lg:4rem;--fs-display-md:2.8125rem;--lh-display-md:3.25rem;--fs-display-sm:2.25rem;--lh-display-sm:2.75rem;--fs-headline-lg:2rem;--lh-headline-lg:2.5rem;--fs-headline-md:1.75rem;--lh-headline-md:2.25rem;--fs-headline-sm:1.5rem;--lh-headline-sm:2rem;--fs-title-lg:1.375rem;--lh-title-lg:1.75rem;--fs-title-md:1rem;--lh-title-md:1.5rem;--fs-title-sm:.875rem;--lh-title-sm:1.25rem;--fs-body-lg:1rem;--lh-body-lg:1.5rem;--fs-body-md:.875rem;--lh-body-md:1.25rem;--fs-body-sm:.75rem;--lh-body-sm:1rem;--fs-label-lg:.875rem;--lh-label-lg:1.25rem;--fs-label-md:.75rem;--lh-label-md:1rem;--fs-label-sm:.6875rem;--lh-label-sm:1rem;--fs-label-xs:.625rem;--lh-label-xs:.875rem;--ls-display-lg:-.01em;--ls-display-md:-.01em;--ls-display-sm:-.01em;--ls-headline-lg:-.01em;--ls-headline-md:-.01em;--ls-headline-sm:-.01em;--ls-title-lg:-.01em;--ls-title-md:-.01em;--ls-title-sm:-.01em;--ls-body-lg:-.01em;--ls-body-md:-.01em;--ls-body-sm:-.01em;--ls-label-lg:-.01em;--ls-label-md:-.01em;--ls-label-sm:-.01em;--ls-label-xs:-.01em;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--map-ctrl-size:42.5px;--sp-5:20px;--sp-6:24px;--sp-7:28px;--sp-8:32px;--sp-9:36px;--sp-10:40px;--sp-12:48px;--sp-15:60px;--sp-20:80px;--sp-25:100px;--shape-3xs:1px;--shape-2xs:2px;--shape-xs:4px;--shape-sm:8px;--shape-md:12px;--shape-lg:16px;--shape-xl:28px;--shape-full:9999px;--blur-sm:blur(8px);--blur-md:blur(10px);--blur-lg:blur(12px);--blur-xl:blur(16px);--blur-2xl:blur(20px);--bg:var(--sys-zinc-950);--bg-raised:var(--sys-slate-900);--surface:var(--sys-zinc-925);--surface-hover:transparent;--surface-active:var(--sys-white-10);--overlay:var(--sys-black-50);--text:var(--sys-zinc-300);--text-muted:var(--sys-zinc-400);--text-tertiary:var(--sys-zinc-500);--text-accent:var(--sys-indigo-400);--on-primary:var(--sys-white);--border:var(--sys-zinc-850);--border-subtle:var(--sys-white-8);--border-hover:var(--sys-white-14);--border-focus:var(--sys-indigo-400);--border-accent:var(--sys-indigo-500-20);--chart-grid:var(--sys-zinc-850);--accent:var(--sys-indigo-500);--accent-light:var(--sys-indigo-400);--accent-dark:var(--sys-indigo-600);--accent-subtle:var(--sys-indigo-500-8);--glow:var(--sys-indigo-500-15);--surface-1:var(--bg-raised);--surface-sunken:var(--sys-zinc-975);--surface-glass:color-mix(in srgb, var(--sys-zinc-900) 75%, transparent);--outline-glass:var(--sys-zinc-800);--surface-tint-1:var(--sys-white-4);--surface-tint-2:var(--sys-white-7);--surface-tint-3:var(--sys-white-8);--surface-tint-4:var(--sys-white-12);--surface-tint-5:var(--sys-white-14);--maplibre-glass-bg:#000000b3;--maplibre-glass-border:#ffffff1f;--maplibre-glass-fg:#fffc;--maplibre-glass-fg-dim:#ffffffb3;--maplibre-glass-divider:#ffffff14;--maplibre-glass-hover:#ffffff14;--maplibre-attrib-bg:#00000080;--maplibre-attrib-fg:#ffffff80;--violet:var(--sys-violet-500);--grid-columns:12;--grid-gutter:var(--sp-6);--grid-margin:var(--sp-2);--grid-body:1200px;--pane-spacer:var(--sp-6);--pane-padding:var(--sp-4);--page-pt:var(--sp-10);--page-pb:var(--sp-15);--page-px:var(--sp-4);--section-gap:var(--sp-12);--block-gap:var(--sp-4);--card-pad:var(--sp-5);--card-pad-tight:var(--sp-4);--card-pad-hero:var(--sp-7);--card-gap:var(--sp-4);--dur-short-2:.1s;--dur-short-3:.2s;--dur-short-4:.3s;--dur-medium-3:.5s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-emphasized-decel:cubic-bezier(.05, .7, .1, 1);--elevation-1:0 1px 3px 1px #00000026, 0 1px 2px #0000004d;--elevation-2:0 2px 6px 2px #00000026, 0 1px 2px #0000004d;--elevation-3:0 3px 5px -1px #0003, 0 6px 10px #00000024, 0 1px 18px #0000001f;--elevation-4:0 5px 5px -3px #0003, 0 8px 10px 1px #00000024, 0 3px 14px 2px #0000001f;--shadow-container:0 2px 3px 0 #ffffff0d inset, 0 -2px 3px 0 #0000000d inset, 0 1.5px 5.5px 0 #0000001a;--container-bg:linear-gradient(var(--surface), var(--surface)) padding-box, linear-gradient(-1deg, #00000040 0%, #ffffff26 100%) border-box;--container-border:1px solid transparent;--container-bg-sunken:linear-gradient(var(--surface-sunken), var(--surface-sunken)) padding-box, linear-gradient(-1deg, #ffffff26 0%, #00000040 100%) border-box;--modal-bg:var(--surface);--modal-container-bg:linear-gradient(var(--modal-bg), var(--modal-bg)) padding-box, linear-gradient(-1deg, #00000040 0%, #ffffff26 100%) border-box;--card-fill-zinc:var(--surface);--card-fill-indigo-tonal:var(--glow);--ctl-h-compact:32px;--ctl-h-default:40px;--ctl-pad-inline:var(--sp-4);--ctl-pad-inline-compact:var(--sp-3);--ctl-fs:var(--fs-label-lg);--ctl-lh:var(--lh-label-lg);--ctl-ls:var(--ls-label-lg);--ctl-fw:var(--fw-medium);--ctl-fs-compact:var(--fs-label-md);--ctl-shape-pill:var(--shape-full);--ctl-shape-rect:var(--shape-lg);--state-filled-bg:var(--accent-dark);--state-filled-bg-hover:var(--accent-dark);--state-tonal-bg:var(--glow);--state-tonal-bg-hover:var(--glow);--state-text-bg:var(--accent-subtle);--state-outlined-bg:var(--accent);--state-outlined-fg:var(--on-primary);--ctl-neutral-bg:var(--surface);--ctl-neutral-bg-hover:var(--sys-zinc-800);--ctl-neutral-bg-on-surface:var(--sys-zinc-800);--ctl-neutral-bg-on-surface-hover:var(--sys-zinc-700);--ctl-neutral-fg:var(--text);--z-bg:0;--z-default:1;--z-nav:10;--z-overlay:50;--z-modal:100;--z-toast:200}@supports (color:color(display-p3 0 0 0)){@media (color-gamut:p3){:root{--sys-indigo-400:color(display-p3 .47 .52 .98);--sys-indigo-500:color(display-p3 .36 .38 .96);--sys-indigo-600:color(display-p3 .27 .24 .92);--sys-indigo-500-15:color(display-p3 .36 .38 .96/.15);--sys-indigo-500-20:color(display-p3 .36 .38 .96/.2);--sys-blue-500:color(display-p3 .22 .5 .97);--sys-cyan-500:color(display-p3 0 .72 .85);--sys-violet-500:color(display-p3 .54 .36 .96);--sys-violet-600:color(display-p3 .44 .2 .95);--sys-pink-500:color(display-p3 .94 .23 .6);--sys-green-500:color(display-p3 .1 .8 .35);--sys-yellow-500:color(display-p3 .93 .72 .02);--sys-red-500:color(display-p3 .95 .24 .24);--sys-emerald-500:color(display-p3 .063 .725 .506);--ind-red:color(display-p3 1 0 0);--ind-green:color(display-p3 0 1 0);--ind-yellow:color(display-p3 1 1 0)}}}@supports (color:color-mix(in srgb, red 50%, blue)){:root{--sys-indigo-500-8:color-mix(in srgb, var(--sys-indigo-500) 8%, transparent);--sys-indigo-500-12:color-mix(in srgb, var(--sys-indigo-500) 12%, transparent);--sys-indigo-500-15:color-mix(in srgb, var(--sys-indigo-500) 15%, transparent);--sys-indigo-500-20:color-mix(in srgb, var(--sys-indigo-500) 20%, transparent);--sys-blue-500-12:color-mix(in srgb, var(--sys-blue-500) 12%, transparent);--sys-cyan-500-12:color-mix(in srgb, var(--sys-cyan-500) 12%, transparent);--sys-violet-500-12:color-mix(in srgb, var(--sys-violet-500) 12%, transparent);--sys-pink-500-12:color-mix(in srgb, var(--sys-pink-500) 12%, transparent);--sys-green-500-12:color-mix(in srgb, var(--sys-green-500) 12%, transparent);--sys-yellow-500-12:color-mix(in srgb, var(--sys-yellow-500) 12%, transparent);--sys-red-500-12:color-mix(in srgb, var(--sys-red-500) 12%, transparent);--sys-amber-500-12:color-mix(in srgb, var(--sys-amber-500) 12%, transparent);--sys-orange-500-12:color-mix(in srgb, var(--sys-orange-500) 12%, transparent);--sys-sky-500-12:color-mix(in srgb, var(--sys-sky-500) 12%, transparent);--sys-teal-500-12:color-mix(in srgb, var(--sys-teal-500) 12%, transparent);--sys-purple-500-12:color-mix(in srgb, var(--sys-purple-500) 12%, transparent);--sys-fuchsia-500-12:color-mix(in srgb, var(--sys-fuchsia-500) 12%, transparent);--sys-emerald-500-12:color-mix(in srgb, var(--sys-emerald-500) 12%, transparent);--sys-lime-500-12:color-mix(in srgb, var(--sys-lime-500) 12%, transparent);--sys-rose-500-12:color-mix(in srgb, var(--sys-rose-500) 12%, transparent)}}:root[data-theme=light]{color-scheme:light;--bg:var(--sys-zinc-375);--bg-raised:var(--sys-zinc-100);--surface:var(--sys-zinc-350);--surface-hover:transparent;--surface-active:var(--sys-black-8);--text:var(--sys-zinc-800);--text-muted:var(--sys-zinc-700);--text-tertiary:var(--sys-zinc-600);--text-accent:var(--sys-indigo-600);--border:transparent;--border-subtle:var(--sys-black-12);--border-hover:var(--sys-black-12);--border-focus:var(--sys-indigo-500);--chart-grid:var(--sys-zinc-400);--surface-1:var(--sys-zinc-100);--surface-sunken:var(--sys-zinc-375);--surface-glass:color-mix(in srgb, var(--sys-zinc-50) 80%, transparent);--outline-glass:var(--sys-slate-400);--surface-tint-1:var(--sys-black-4);--surface-tint-2:var(--sys-black-6);--surface-tint-3:var(--sys-black-8);--surface-tint-4:var(--sys-black-12);--surface-tint-5:var(--sys-black-12);--maplibre-glass-bg:#ffffffbf;--maplibre-glass-border:#0000001f;--maplibre-glass-fg:#000c;--maplibre-glass-fg-dim:#000000a6;--maplibre-glass-divider:#00000014;--maplibre-glass-hover:#0000000f;--maplibre-attrib-bg:#ffffff8c;--maplibre-attrib-fg:#0000008c;--shadow-container:0 2px 3px 0 #ffffff26 inset, 0 -2px 3px 0 #0000000d inset, 0 1.5px 5.5px 0 #0000001a;--sys-indigo-400:var(--sys-indigo-700);--sys-indigo-300:var(--sys-indigo-800);--sys-violet-400:var(--sys-violet-700);--sys-violet-300:var(--sys-violet-800);--sys-pink-400:var(--sys-pink-700);--sys-pink-300:var(--sys-pink-800);--sys-cyan-400:var(--sys-cyan-700);--sys-cyan-300:var(--sys-cyan-800);--sys-amber-400:var(--sys-amber-700);--sys-amber-300:var(--sys-amber-800);--sys-yellow-400:var(--sys-yellow-700);--sys-yellow-300:var(--sys-yellow-800);--sys-red-400:var(--sys-red-700);--sys-red-300:var(--sys-red-800);--sys-green-400:var(--sys-green-700);--sys-green-300:var(--sys-green-800);--sys-emerald-400:var(--sys-emerald-700);--sys-emerald-300:var(--sys-emerald-800);--sys-blue-400:var(--sys-blue-700);--sys-blue-300:var(--sys-blue-800);--sys-teal-400:var(--sys-teal-700);--sys-teal-300:var(--sys-teal-800);--sys-orange-400:var(--sys-orange-700);--sys-orange-300:var(--sys-orange-800);--sys-purple-400:var(--sys-purple-700);--sys-purple-300:var(--sys-purple-800);--sys-fuchsia-400:var(--sys-fuchsia-700);--sys-fuchsia-300:var(--sys-fuchsia-800);--sys-rose-400:var(--sys-rose-700);--sys-rose-300:var(--sys-rose-800);--sys-sky-400:var(--sys-sky-700);--sys-sky-300:var(--sys-sky-800);--sys-lime-400:var(--sys-lime-700);--sys-lime-300:var(--sys-lime-800);--sys-slate-200:var(--sys-slate-700);--accent-light:var(--sys-indigo-700);--ctl-neutral-bg-hover:var(--surface-1);--ctl-neutral-bg-on-surface:var(--bg);--ctl-neutral-bg-on-surface-hover:var(--sys-zinc-400);--modal-bg:var(--bg)}:root[data-theme=dim]{color-scheme:dark;--chart-grid:var(--sys-zinc-700);--bg:var(--sys-zinc-850);--bg-raised:#30302f;--surface:#262525;--surface-hover:transparent;--surface-active:var(--sys-white-12);--text:var(--sys-zinc-200);--text-muted:var(--sys-zinc-300);--text-tertiary:var(--sys-zinc-400);--text-accent:var(--sys-indigo-400);--border:transparent;--border-subtle:var(--sys-white-12);--border-hover:var(--sys-white-16);--border-focus:var(--sys-indigo-400);--surface-1:#30302f;--surface-sunken:#1c1c1b;--surface-glass:#1c1c1bbf;--outline-glass:var(--sys-zinc-500);--surface-tint-1:var(--sys-white-5);--surface-tint-2:var(--sys-white-9);--surface-tint-3:var(--sys-white-10);--surface-tint-4:var(--sys-white-14);--surface-tint-5:var(--sys-white-16);--maplibre-glass-bg:#1c1c1bbf;--maplibre-glass-border:#ffffff1f;--maplibre-glass-fg:#fffc;--maplibre-glass-fg-dim:#ffffffb3;--maplibre-glass-divider:#ffffff14;--maplibre-glass-hover:#ffffff14;--maplibre-attrib-bg:#1c1c1b8c;--maplibre-attrib-fg:#ffffff8c;--shadow-container:0 2px 3px 0 #ffffff0d inset, 0 -2px 3px 0 #0000000d inset, 0 1.5px 5.5px 0 #0000004d;--ctl-neutral-bg-hover:#363535;--ctl-neutral-bg-on-surface:#363535;--ctl-neutral-bg-on-surface-hover:#424241;--modal-bg:var(--bg)}:root[data-theme=dim] .nav--map{border-bottom-color:var(--sys-zinc-800)}:root[data-theme=dim] .map-ctrl-glass.m3-card--elevated,:root[data-theme=dim] .map-search-bar,:root[data-theme=dim] .map-search-bar[data-active=true],:root[data-theme=dim] .map-search-dropdown,:root[data-theme=dim] .map-info-card,:root[data-theme=dim] .map-stats-glass{border-color:var(--sys-zinc-800)}:root[data-theme=dark] :is(.m3-card,.feature-card,.pkt-card,.edge-shelf-disclosure,.connect-card,.connect-section,.net-rank-row,.nd-status-card):not(.m3-card--flat-inset):not(.m3-card--flat){box-shadow:inset 0 2px 3px #ffffff0d,inset 0 -2px 3px #0000000d,0 1.5px 5.5px #000c}.theme-swapping,.theme-swapping *,.theme-swapping :before,.theme-swapping :after{transition:none!important}:root[data-theme=dark]{color-scheme:dark;--bg:var(--sys-zinc-950);--bg-raised:var(--sys-slate-900);--surface:var(--sys-zinc-925);--surface-hover:transparent;--surface-active:var(--sys-white-10);--text:var(--sys-zinc-300);--text-muted:var(--sys-zinc-400);--text-tertiary:var(--sys-zinc-500);--text-accent:var(--sys-indigo-400);--border:var(--sys-zinc-850);--border-subtle:var(--sys-white-8);--border-hover:var(--sys-white-14);--border-focus:var(--sys-indigo-400);--surface-1:var(--sys-slate-900);--surface-sunken:var(--sys-zinc-975);--surface-glass:color-mix(in srgb, var(--sys-zinc-900) 75%, transparent);--outline-glass:var(--sys-zinc-800);--surface-tint-1:var(--sys-white-4);--surface-tint-2:var(--sys-white-7);--surface-tint-3:var(--sys-white-8);--surface-tint-4:var(--sys-white-12);--surface-tint-5:var(--sys-white-14);--maplibre-glass-bg:#000000b3;--maplibre-glass-border:#ffffff1f;--maplibre-glass-fg:#fffc;--maplibre-glass-fg-dim:#ffffffb3;--maplibre-glass-divider:#ffffff14;--maplibre-glass-hover:#ffffff14;--maplibre-attrib-bg:#00000080;--maplibre-attrib-fg:#ffffff80;--ctl-neutral-bg-hover:var(--sys-zinc-800);--ctl-neutral-bg-on-surface:var(--sys-zinc-800);--ctl-neutral-bg-on-surface-hover:var(--sys-zinc-700);--modal-bg:var(--surface)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;overscroll-behavior-y:none;scrollbar-gutter:stable;font-size:16px}body{font-family:var(--font);font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);font-weight:var(--fw-medium);letter-spacing:var(--ls-body-lg);background:var(--bg);color:var(--text);overscroll-behavior-y:none;-webkit-overflow-scrolling:touch;min-height:100dvh;overflow-x:hidden}a{color:inherit;text-decoration:none}img,picture,video,canvas,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit;background:0 0;border:0}strong,b{font-weight:var(--fw-semibold)}code,kbd{font-family:var(--mono);letter-spacing:var(--ls-body-md);font-size:.875em}pre{font-family:var(--mono);font-size:var(--fs-body-md);line-height:var(--lh-body-md);-webkit-overflow-scrolling:touch;overflow-x:auto}hr{border:none;border-top:1px solid var(--border-subtle);margin-block:var(--sp-6)}::selection{background:var(--accent);color:var(--on-primary)}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}h1,h2,h3,h4,h5,h6{text-wrap:balance}p{text-wrap:pretty}h1{font-size:var(--fs-headline-lg);line-height:var(--lh-headline-lg);font-weight:var(--fw-semibold);letter-spacing:var(--ls-headline-lg)}h2{font-size:var(--fs-headline-md);line-height:var(--lh-headline-md);font-weight:var(--fw-semibold);letter-spacing:var(--ls-headline-md)}h3{font-size:var(--fs-headline-sm);line-height:var(--lh-headline-sm);font-weight:var(--fw-semibold);letter-spacing:var(--ls-headline-sm)}h4{font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);font-weight:var(--fw-medium);letter-spacing:var(--ls-title-lg);color:var(--text-muted)}h5{font-size:var(--fs-title-md);line-height:var(--lh-title-md);font-weight:var(--fw-medium);letter-spacing:var(--ls-title-md)}h6{font-size:var(--fs-title-sm);line-height:var(--lh-title-sm);font-weight:var(--fw-medium);letter-spacing:var(--ls-title-sm)}small{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm)}.mesh-bg{z-index:var(--z-bg);pointer-events:none;position:fixed;inset:0;overflow:hidden}.route-transition{opacity:0;transition:opacity var(--dur-short-3) var(--ease-standard);z-index:var(--z-default);position:relative}.route-transition--visible{opacity:1}.page{z-index:var(--z-default);grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);min-height:100vh;display:grid;position:relative}.nav{width:100%;min-height:64px;padding-block:var(--sp-2);z-index:var(--z-nav);grid-template-columns:1fr auto 1fr;align-items:center;transition:padding-inline .5s;display:grid;position:relative}.nav--contained{padding-inline:max(var(--sp-2), calc((100% - var(--grid-body) + 2 * var(--grid-margin)) / 2))}.nav--map{padding-inline:var(--sp-4);background:var(--surface-glass);backdrop-filter:var(--blur-md);border-bottom:1px solid var(--outline-glass)}.nav-leading{justify-self:start;align-items:center;gap:var(--sp-2);display:flex}.nav-pre-alpha-badge{height:18px;padding-inline:var(--sp-1);border-radius:var(--shape-xs);font-size:10px;font-weight:var(--fw-medium);font-family:var(--mono);letter-spacing:var(--ls-label-xs);white-space:nowrap;background:var(--sys-emerald-500-12);color:var(--sys-emerald-400);user-select:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.nav-center{justify-self:center;align-items:center;display:flex}.nav-center a{line-height:0;display:block}.nav-trailing{justify-self:end;align-items:center;gap:var(--sp-2);display:flex}.nav-logo{width:clamp(160px,20vw,260px);height:auto;color:var(--text);max-height:32px;overflow:visible}.nav .m3-btn--outlined{background:var(--surface);color:var(--sys-slate-500);border:none}.nav .m3-btn--outlined:hover{background:var(--surface-hover);color:var(--text)}.nav .m3-icon-btn--standard{color:var(--sys-slate-500)}.login-social-btn{justify-content:center;width:100%}.login-email{gap:var(--sp-3);flex-direction:column;display:flex}.login-field-label{font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md);color:var(--text-muted);font-weight:var(--fw-medium);margin-bottom:calc(var(--sp-2) - var(--sp-3))}.login-error{font:var(--body-sm);color:var(--sys-red-400)}.login-sent{align-items:center;gap:var(--sp-3);padding:var(--sp-4) 0;text-align:center;flex-direction:column;display:flex}.login-sent-icon{color:var(--sys-green-400)}.login-sent-text{font:var(--body-md);color:var(--text)}.hero-badge{font-size:var(--fs-label-lg);font-weight:var(--fw-medium);letter-spacing:var(--ls-label-lg);color:var(--text-accent);padding:var(--sp-1) var(--sp-4);border-radius:var(--shape-full);outline:2px solid var(--border-focus);outline-offset:2px;display:inline-block}.hero{grid-template-columns:repeat(var(--grid-columns), 1fr);column-gap:var(--grid-gutter);row-gap:var(--sp-15);padding-block:var(--sp-15) var(--sp-20);align-items:center;display:grid}.hero-content{grid-column:2/span 5}.hero-title{font-size:clamp(var(--fs-display-sm), 5vw, var(--fs-display-lg));font-weight:var(--fw-semibold);letter-spacing:var(--ls-display-lg);margin-top:var(--sp-5);line-height:1.1}.hero-gradient{background:linear-gradient(135deg, var(--violet) 0%, var(--accent-dark) 100%);-webkit-text-fill-color:transparent;background-clip:text}.waev-brand{font-weight:var(--fw-semibold);color:var(--sys-slate-200)}.hero-subtitle{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);color:var(--text-muted);margin-top:var(--sp-5);max-width:480px}.btn{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-7);border-radius:var(--shape-md);font-size:var(--fs-label-lg);font-weight:var(--fw-semibold);letter-spacing:var(--ls-label-lg);font-family:var(--font);cursor:pointer;transition-property:background,color,border-color,transform,box-shadow;transition-duration:var(--dur-short-4);transition-timing-function:var(--ease-standard);border:none;display:inline-flex}.btn--primary{background:linear-gradient(135deg, var(--violet) 0%, var(--accent-dark) 100%);color:var(--on-primary);box-shadow:0 0 0 1px #6366f14d,0 4px 20px #6366f140}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #6366f180,0 8px 30px #6366f159}.btn--ghost{background:var(--surface);color:var(--text);border:1px solid var(--border);backdrop-filter:var(--blur-lg)}.btn--ghost:hover{background:var(--surface-hover);border-color:var(--border-hover)}.hero-stats{margin-top:var(--sp-12);padding-top:var(--sp-8);border-top:1px solid var(--border-subtle)}.stat{flex-direction:column;display:flex}.stat-value{font-size:var(--fs-headline-sm);line-height:var(--lh-headline-sm);font-weight:var(--fw-medium);letter-spacing:var(--ls-headline-sm);font-family:var(--mono);color:var(--text-accent)}.stat-label{font-size:var(--fs-label-md);line-height:var(--lh-label-md);color:var(--text-muted);font-family:var(--mono);letter-spacing:var(--ls-label-md);margin-top:var(--sp-1)}.stat-sublabel{font-size:var(--fs-label-sm,.75rem);line-height:var(--lh-label-sm,1);color:var(--text-muted);font-family:var(--mono);opacity:.6;margin-top:var(--sp-1)}.hero-visual{aspect-ratio:1;grid-column:span 5/-2;justify-self:center;width:100%;max-width:520px;position:relative}.hero-grid{z-index:-1;pointer-events:none;width:100vw;max-width:none;height:100dvh;position:fixed;top:0;left:0}.features{padding-block:0 var(--sp-25)}.feature-card{padding:var(--card-pad-hero);backdrop-filter:var(--blur-xl)}.feature-icon{font-size:var(--sp-7);margin-bottom:var(--sp-4);display:block}.feature-card h3{font-size:var(--fs-title-md);margin-bottom:var(--sp-2)}.feature-card p{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--text-muted)}.footer{border-top:1px solid var(--border-subtle);padding-block:var(--sp-7)}.footer-inner{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-muted)}.footer-brand{font-weight:var(--fw-semibold);color:var(--text)}.footer-sep{opacity:.3}.waev-grad-start{stop-color:var(--violet)}.waev-grad-end{stop-color:var(--accent-dark)}.waev-logo--animate .waev-wave{opacity:0;animation-duration:var(--dur-medium-3);animation-timing-function:cubic-bezier(.16,1,.3,1);animation-fill-mode:forwards;animation-delay:var(--wave-delay,0s);will-change:opacity, transform, filter}.waev-logo--animate .waev-wave--top{animation-name:waev-slide-top}.waev-logo--animate .waev-wave--bottom{animation-name:waev-slide-bottom}@keyframes waev-slide-top{0%{opacity:0;filter:brightness(3);transform:translateY(-30px)}40%{opacity:1;filter:brightness(3);transform:translateY(0)}to{opacity:1;filter:brightness();transform:translateY(0)}}@keyframes waev-slide-bottom{0%{opacity:0;filter:brightness(3);transform:translateY(30px)}40%{opacity:1;filter:brightness(3);transform:translateY(0)}to{opacity:1;filter:brightness();transform:translateY(0)}}@media (hover:hover){.waev-logo:not(.waev-logo--animate):hover .waev-wave{animation:waev-flash .4s cubic-bezier(.16, 1, .3, 1) var(--flash-delay,0s) 1 both}}@keyframes waev-flash{0%{filter:brightness()}30%{filter:brightness(3)}to{filter:brightness()}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.waev-logo--animate .waev-wave{opacity:1}}.waev-icon-bar--top,.waev-icon-bar--bottom{animation:waev-icon-flash 1.2s ease-in-out var(--bar-delay,0s) infinite;will-change:opacity, filter;animation-play-state:paused}.route-transition--visible .waev-icon-bar--top,.route-transition--visible .waev-icon-bar--bottom{animation-play-state:running}@keyframes waev-icon-flash{0%{opacity:.3;filter:brightness()}20%{opacity:1;filter:brightness(3)}40%{opacity:1;filter:brightness()}to{opacity:.3;filter:brightness()}}.map-loading-overlay{z-index:25;pointer-events:none;will-change:opacity;background:#0000008c;justify-content:center;align-items:center;transition:opacity .6s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;inset:0}.map-loading-overlay[data-visible=false]{opacity:0;visibility:hidden;transition:opacity .6s cubic-bezier(.4,0,.2,1),visibility 0s linear .6s}.truncatable{align-items:center;gap:var(--sp-1);min-width:0;max-width:100%;display:inline-flex;position:relative}.truncatable__text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.truncatable__tooltip{z-index:2147483647;max-width:420px;padding:var(--sp-2) var(--sp-3);border-radius:var(--shape-sm);background:var(--bg-raised);border:1px solid var(--border);color:var(--text);font-family:var(--mono);font-size:var(--fs-label-xs);line-height:var(--lh-label-xs);letter-spacing:var(--ls-label-xs);white-space:normal;word-break:break-all;overflow-wrap:break-word;pointer-events:none;box-shadow:0 4px 12px var(--sys-black-60);position:fixed;transform:translateY(-100%)}.truncatable__tooltip-line{display:block}.truncatable__copy{all:unset;border-radius:var(--shape-full);width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;transition:color var(--dur-short-2) var(--ease-standard), background var(--dur-short-2) var(--ease-standard);flex-shrink:0;justify-content:center;align-items:center;display:none}.truncatable--clipped:hover .truncatable__copy,.truncatable--interactive:hover .truncatable__copy{display:inline-flex}.truncatable__copy:hover{color:var(--text);background:var(--surface-hover)}.truncatable__copy:active{background:var(--surface-active)}.truncatable__copy--done{color:var(--sys-green-400)}.layout-container{width:calc(100% - 2 * var(--grid-margin));max-width:calc(var(--grid-body) - 2 * var(--grid-margin));margin-inline:auto;overflow:clip}.layout-grid{grid-template-columns:repeat(var(--grid-columns), 1fr);column-gap:var(--grid-gutter);display:grid}.pane-row{gap:var(--grid-gutter);min-width:0;display:flex;container-type:inline-size}.pane-stack{gap:var(--pane-spacer);flex-direction:column;min-width:0;display:flex}.pane{min-width:0;overflow:clip}.pane--flex{flex:1}.pane--fixed{width:calc(var(--pane-span,var(--grid-columns)) * (100% + var(--grid-gutter)) / var(--grid-columns) - var(--grid-gutter));flex:none}.layout-align{flex:1;display:flex}.layout-aspect-ratio{overflow:hidden}.layout-center{flex:1;justify-content:center;align-items:center;display:flex}.layout-constrained{box-sizing:border-box}.layout-fitted{position:relative;overflow:hidden}.layout-fitted__inner{width:100%;height:100%}.layout-fractional{box-sizing:border-box}.layout-intrinsic-h{flex-direction:row;align-items:stretch;display:flex}.layout-intrinsic-w{width:fit-content}.layout-limited{box-sizing:border-box}.layout-offstage--hidden{visibility:hidden;pointer-events:none;position:absolute}.layout-overflow{overflow:visible}.layout-padding{box-sizing:border-box}.layout-sizedbox{box-sizing:border-box;flex-shrink:0}.layout-row{flex-direction:row;min-width:0;display:flex}.layout-column{flex-direction:column;min-width:0;display:flex}.layout-stack{min-width:0;display:grid;position:relative}.layout-stack>*{grid-area:1/1}.layout-positioned{z-index:1;position:absolute}.layout-wrap{flex-wrap:wrap;min-width:0;display:flex}.layout-gridview{min-width:0;display:grid}.layout-listview{min-width:0;min-height:0;display:flex}.layout-listview--divider>*+*{border-top:1px solid var(--border-subtle);padding-top:var(--sp-2)}.layout-indexed-stack{min-width:0;display:grid}.layout-indexed-stack__child{grid-area:1/1}.layout-table{min-width:0;display:grid}.layout-table-row{display:contents}.layout-table-cell{padding:var(--sp-2) var(--sp-3)}.layout-table-cell--header{font-weight:var(--fw-semibold);font-size:var(--fs-label-sm);letter-spacing:var(--ls-label-sm);color:var(--text-muted);border-bottom:1px solid var(--border-subtle)}.layout-carousel{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;min-width:0;display:flex;overflow-x:auto}.layout-carousel::-webkit-scrollbar{display:none}.layout-carousel>*{scroll-snap-align:start;flex-shrink:0}.layout-scrollview{-webkit-overflow-scrolling:touch}.layout-sticky-header{background:var(--bg)}.layout-sticky-sentinel{height:0}.layout-sliver-list,.layout-sliver-grid{-webkit-overflow-scrolling:touch;overflow-y:auto}.layout-sliver-padding{box-sizing:border-box}.layout-fill-remaining{flex:1;min-height:0}.live-map-main{overscroll-behavior:none;touch-action:none;user-select:none;will-change:contents;-webkit-tap-highlight-color:transparent;flex:1;height:calc(100dvh - 64px);min-height:0;position:relative;overflow:hidden}.map-info-card-container{top:var(--sp-4);bottom:var(--sp-4);left:var(--sp-4);width:320px;max-width:calc(100% - var(--sp-4) - var(--sp-2) - var(--sp-4) - 320px);pointer-events:none;flex-direction:column;display:flex;position:absolute}.map-search-bar{z-index:2;align-items:center;gap:var(--sp-3);height:var(--map-ctrl-size);padding:0 var(--sp-4);background:var(--surface-glass);backdrop-filter:var(--blur-md);border-radius:var(--shape-md);border:1px solid var(--outline-glass);box-shadow:var(--elevation-2);pointer-events:auto;transition:border-radius var(--dur-short-3) var(--ease-standard);flex-shrink:0;display:flex;position:relative}.map-search-bar[data-active=true]{border-radius:var(--shape-md) var(--shape-md) 0 0;background:var(--surface-glass);backdrop-filter:var(--blur-md);border:1px solid var(--outline-glass);border-bottom:none}.map-search-bar__icon{color:var(--text-muted);flex-shrink:0}.map-search-bar__input{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);color:var(--text);white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;outline:none;flex:1;min-width:0;overflow:hidden}.map-search-bar__input::placeholder,.map-search-bar[data-active=false] .map-search-bar__input::placeholder{color:var(--text-muted)}.map-search-dropdown{background:var(--surface-glass);backdrop-filter:var(--blur-md);border:1px solid var(--outline-glass);border-radius:var(--shape-lg);box-shadow:var(--elevation-2);z-index:100;pointer-events:auto;max-height:400px;padding:var(--sp-2) 0;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden auto}.map-search-result{all:unset;align-items:center;gap:var(--sp-2);box-sizing:border-box;width:100%;padding:var(--sp-3) var(--sp-4);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard);display:flex}.map-search-result[data-highlighted=true]{background:var(--surface-tint-3)}.map-search-result:active{background:var(--surface-tint-4)}.map-search-result__icon{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.map-search-result__name{font-size:var(--fs-body-md);line-height:var(--lh-body-md);color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.map-search-result__badge{width:16px;height:16px;color:var(--sys-cyan-400);flex-shrink:0;justify-content:center;align-items:center;display:flex}.map-search-result__location{font-size:var(--fs-label-sm);color:var(--text-muted);flex-shrink:0;align-items:center;gap:2px;display:flex}.map-search-result__distance{font-family:var(--mono);font-size:var(--fs-label-xs);color:var(--text-tertiary);text-align:right;flex-shrink:0;min-width:48px}.map-info-card{z-index:1;background:var(--surface-glass);backdrop-filter:var(--blur-md);border:1px solid var(--outline-glass);border-radius:0 0 var(--shape-lg) var(--shape-lg);box-shadow:var(--elevation-2);pointer-events:auto;border-top:none;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.map-info-card__handle{display:none}.map-info-card__content{padding:var(--sp-4);flex:1;overflow-y:auto}@media (width<=599px){.map-info-card-container{pointer-events:none;flex-direction:column;justify-content:flex-end;width:auto;max-width:none;inset:0}.map-info-card-container>.map-search-bar{top:var(--sp-4);left:var(--sp-4);right:calc(176px + var(--sp-4) + var(--sp-2));z-index:10;position:absolute}.map-search-bar[data-active=true]{border-radius:var(--shape-md);border:1px solid var(--outline-glass)}.m3-icon-btn[data-control=fullscreen],.m3-icon-btn[data-control=basemap]{display:none}.map-info-card{z-index:30;border-radius:var(--shape-xl) var(--shape-xl) 0 0;max-height:75%;box-shadow:var(--elevation-3,var(--elevation-2));padding-bottom:env(safe-area-inset-bottom,0px);border-top:1px solid var(--outline-glass);border-bottom:none;flex:none;position:relative}.map-info-card__handle{padding:var(--sp-3) 0 var(--sp-1);cursor:grab;touch-action:none;justify-content:center;display:flex}.map-info-card__handle:after{content:"";border-radius:var(--shape-full);background:var(--text-muted);opacity:.4;width:32px;height:4px}.map-info-card__handle:active{cursor:grabbing}.map-info-card__handle:active:after{opacity:.6}}.node-info{flex-direction:column;height:100%;display:flex}.node-info__iata{font-family:var(--mono);font-size:var(--fs-label-sm);color:var(--text-muted);background:var(--surface);border-radius:var(--shape-sm);padding:2px 6px}.node-info__mono{font-family:var(--mono);font-size:var(--fs-label-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}.node-info__chart{min-height:120px;margin:var(--sp-2) 0;flex:1}.node-info__footer{padding-top:var(--sp-4);margin-top:auto}.node-info__footer .m3-btn--tonal:hover{background:var(--accent);color:var(--on-primary)}.edge-shelf-header__title{flex-direction:column;gap:2px;line-height:1.2;display:inline-flex}.edge-shelf-header__eyebrow{font-family:var(--mono);font-size:var(--fs-label-sm);color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase}.edge-shelf-disclosure{margin:0 0 var(--sp-3)}.edge-shelf-disclosure:first-of-type{margin-top:var(--sp-3)}.edge-shelf-disclosure__summary{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);cursor:pointer;font-family:var(--font);color:var(--text);text-align:left;transition:background var(--dur-short-2) var(--ease-standard);background:0 0;border:none;display:flex}.edge-shelf-disclosure__summary:hover{background:var(--surface-tint-1)}.edge-shelf-disclosure__summary:focus-visible{outline:2px solid var(--border-focus);outline-offset:-2px}.edge-shelf-disclosure__icon{width:var(--sp-9);height:var(--sp-9);border-radius:var(--shape-sm);background:var(--sys-indigo-500-12);color:var(--text-accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.edge-shelf-disclosure__titles{flex-direction:column;flex:1;gap:2px;min-width:0;display:inline-flex}.edge-shelf-disclosure__title{font-size:var(--fs-title-sm,14px);line-height:var(--lh-title-sm);letter-spacing:var(--ls-title-sm);font-weight:var(--fw-medium);color:var(--text)}.edge-shelf-disclosure__subtitle{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-muted)}.edge-shelf-disclosure__chevron{color:var(--text-muted);transition:transform var(--dur-short-3) var(--ease-standard);flex-shrink:0;margin-left:auto}.edge-shelf-disclosure[data-open=true] .edge-shelf-disclosure__chevron{transform:rotate(180deg)}.edge-shelf-disclosure__content{border-top:1px solid var(--border-subtle);padding-block:var(--sp-2);flex-direction:column;display:flex}.edge-shelf-derivation{gap:var(--sp-1);padding:var(--sp-3) var(--sp-4);flex-direction:column;display:flex}.edge-shelf-derivation__label{justify-content:space-between;align-items:center;gap:var(--sp-2);font-size:var(--fs-label-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;display:flex}.edge-shelf-derivation__swatch{border-radius:var(--shape-2xs);border:1px solid var(--border-subtle);flex-shrink:0;width:28px;height:12px;display:inline-block}.edge-shelf-cols{gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.edge-shelf-col{gap:var(--sp-2);flex-direction:column;min-width:0;display:flex}.edge-shelf-col__header{flex-direction:column;gap:2px;min-width:0;display:flex}.edge-shelf-col__label{font-size:var(--fs-label-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.edge-shelf-col__name{font-size:var(--fs-title-sm,14px);font-weight:var(--fw-medium);color:var(--text);-webkit-line-clamp:2;word-break:break-word;overflow-wrap:break-word;hyphens:none;-webkit-box-orient:vertical;min-height:2lh;line-height:1.25;display:-webkit-box;overflow:hidden}.edge-shelf-col__hash{max-width:100%}.edge-shelf-col__hash .truncatable__text{font-family:var(--mono);font-size:var(--fs-label-sm);color:var(--text-muted);letter-spacing:.02em}.edge-shelf-col__heard{align-items:center;gap:var(--sp-1);font-size:var(--fs-label-xs,11px);color:var(--text-muted);min-width:0;display:inline-flex}.edge-shelf-col__heard>svg{flex-shrink:0}.edge-shelf-col__heard-label{font-style:italic}.edge-shelf-col__heard-id{font-family:var(--mono);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.edge-shelf-col__signal{border-radius:var(--shape-2xs);border:1px solid var(--border-subtle);width:100%;height:10px}.edge-shelf-col__metrics{gap:2px var(--sp-3);font-size:var(--fs-label-sm);font-variant-numeric:tabular-nums;grid-template-columns:auto 1fr;margin:0;display:grid}.edge-shelf-col__metrics dt{color:var(--text-muted);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.04em}.edge-shelf-col__metrics dd{font-family:var(--mono);color:var(--text);text-align:right;margin:0}.edge-shelf-derivation__block{padding:var(--sp-3);background:var(--surface);border-radius:var(--shape-sm);font-family:var(--mono);font-size:var(--fs-label-sm);color:var(--text);white-space:pre;font-variant-numeric:tabular-nums;margin:0;line-height:1.5;overflow-x:auto}.edge-shelf-derivation__footnote{font-size:var(--fs-label-sm);color:var(--text-muted);font-style:italic}.edge-shelf-lq-row{align-items:start;column-gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);grid-template-columns:18px minmax(0,1fr);min-width:0;display:grid}.edge-shelf-lq-row__leading{width:18px;height:18px;color:var(--text-muted);justify-content:center;align-items:center;margin-top:13px;display:flex}.edge-shelf-lq-row__body{flex-direction:column;gap:3px;min-width:0;display:flex}.edge-shelf-lq-row__eyebrow{font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.edge-shelf-lq-row__value{align-items:baseline;row-gap:2px;column-gap:var(--sp-1);font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.02em;overflow-wrap:anywhere;flex-wrap:wrap;min-width:0;display:flex}.edge-shelf-lq-row__metric{white-space:nowrap;align-items:baseline;max-width:100%;display:inline-flex}.edge-shelf-lq-row__metric--muted{color:var(--text-muted);font-style:italic}.edge-shelf-lq-row__metric-num{color:var(--text)}.edge-shelf-lq-row__metric-unit{color:var(--text-muted)}.edge-shelf-lq-row__sep{color:var(--text-muted);opacity:.45;padding:0 2px}.edge-shelf-lq-row__arrow{font-family:var(--font);font-weight:var(--fw-medium);color:var(--text-muted);display:inline-block;transform:translateY(.5px)}.edge-shelf-lq-row__eyebrow .edge-shelf-lq-row__arrow{font-weight:var(--fw-medium);color:inherit}.edge-shelf-lq-group{flex-direction:column;display:flex}.edge-shelf-lq-group .edge-shelf-lq-row+.edge-shelf-lq-row{border-top:1px solid var(--border-subtle)}.edge-shelf-lq-group+.edge-shelf-lq-group{border-top:1px solid var(--border);margin-top:var(--sp-1);padding-top:var(--sp-1)}.edge-shelf-packets{gap:var(--sp-2);padding:var(--sp-2) var(--sp-4) var(--sp-3);flex-direction:column;min-width:0;display:flex}.edge-shelf-packets__summary{font-size:var(--fs-label-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.edge-shelf-packets__empty{font-size:var(--fs-label-sm);color:var(--text-muted);margin:0}.edge-shelf-packets__footnote{font-size:var(--fs-label-xs);color:var(--text-muted);margin:0;font-style:italic}.edge-shelf-packets__error{font-size:var(--fs-label-sm);color:var(--sys-red-400);margin:0}.edge-shelf-packets__loadmore{padding:var(--sp-2) var(--sp-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--shape-sm);font-family:inherit;font-size:var(--fs-label-sm);color:var(--text);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard);align-self:stretch}.edge-shelf-packets__loadmore:hover:not(:disabled){background:var(--surface-hover)}.edge-shelf-packets__loadmore:disabled{opacity:.6;cursor:progress}.edge-shelf-packets__table{font-size:var(--fs-label-sm);font-variant-numeric:tabular-nums;flex-direction:column;gap:0;min-width:0;display:flex}.edge-shelf-packets__header,.edge-shelf-packet-row__cells{align-items:center;gap:var(--sp-2);grid-template-columns:5.5ch 44px 6ch minmax(0,1fr) 7ch 8ch 3ch;min-width:0;display:grid}.edge-shelf-packets__header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-family:var(--mono);font-size:var(--fs-label-xs);padding-bottom:var(--sp-1);border-bottom:1px solid var(--border-subtle)}.edge-shelf-packets__header>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.edge-shelf-packets__header-num{text-align:right}.edge-shelf-packet-row{padding:var(--sp-1) 0;flex-direction:column;gap:2px;display:flex}.edge-shelf-packet-row+.edge-shelf-packet-row{border-top:1px solid var(--border-subtle)}.edge-shelf-packet-row__cells>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.edge-shelf-packet-row__time{color:var(--text-muted);font-family:var(--mono)}.edge-shelf-packet-row__dir{font-family:var(--mono);font-size:var(--fs-label-xs);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--shape-full);border:1px solid;justify-content:center;align-items:center;width:100%;padding:1px 0;line-height:1.4;display:inline-flex}.edge-shelf-packet-row__type{font-family:var(--mono);color:var(--text-muted)}.edge-shelf-packet-row__obs{color:var(--text)}.edge-shelf-packet-row__snr,.edge-shelf-packet-row__rssi{font-family:var(--mono);color:var(--text);text-align:right}.edge-shelf-packet-row__hops{font-family:var(--mono);color:var(--text-muted);text-align:right}.edge-shelf-packet-row__trace{align-items:center;gap:var(--sp-2);padding-left:var(--sp-3);font-size:var(--fs-label-xs);color:var(--text-muted);min-width:0;display:flex}.edge-shelf-packet-row__trace-label{text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.edge-shelf-packet-row__trace-values{gap:0 var(--sp-1);font-family:var(--mono);flex-wrap:wrap;min-width:0;display:inline-flex}.edge-shelf-packets__skeleton{gap:var(--sp-1);flex-direction:column;display:flex}.edge-shelf-packets__skeleton-row{border-radius:var(--shape-xs);background:linear-gradient(90deg, var(--surface) 0%, var(--surface-hover) 50%, var(--surface) 100%);background-size:200% 100%;height:16px;animation:1.2s linear infinite edge-shelf-packets-shimmer}@keyframes edge-shelf-packets-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.edge-shelf-packets__skeleton-row{animation:none}}.m3-card,.m3-card--elevated,.feature-card,.pkt-card,.edge-shelf-disclosure,.connect-card,.connect-section,.net-rank-row,.nd-status-card{--ctl-neutral-bg:var(--ctl-neutral-bg-on-surface);--ctl-neutral-bg-hover:var(--ctl-neutral-bg-on-surface-hover)}.m3-btn{justify-content:center;align-items:center;gap:var(--sp-2);height:var(--ctl-h-default);min-width:48px;padding-inline:var(--sp-6);border-radius:var(--ctl-shape-pill);font-size:var(--ctl-fs);line-height:var(--ctl-lh);font-weight:var(--ctl-fw);letter-spacing:var(--ctl-ls);font-family:var(--font);cursor:pointer;transition:background var(--dur-short-3) var(--ease-standard), color var(--dur-short-3) var(--ease-standard), box-shadow var(--dur-short-3) var(--ease-standard), border-color var(--dur-short-3) var(--ease-standard);user-select:none;white-space:nowrap;border:none;text-decoration:none;display:inline-flex}.m3-btn:disabled{opacity:.38;cursor:default;pointer-events:none}.m3-btn__icon{flex-shrink:0;align-items:center;width:18px;height:18px;display:flex}.m3-btn--has-icon{padding-inline-start:var(--sp-4)}.m3-btn--filled{background:var(--state-filled-bg);color:var(--on-primary)}.m3-btn--outlined{background:var(--state-outlined-bg);color:var(--state-outlined-fg);border:none}.m3-btn--outlined:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.m3-btn--text{background:var(--state-text-bg);color:var(--accent-light);padding-inline:var(--sp-3)}.m3-btn--elevated{background:var(--surface);color:var(--accent-light);box-shadow:var(--elevation-2)}.m3-btn--tonal{background:var(--state-tonal-bg);color:var(--accent-light)}.m3-btn--neutral{background:var(--ctl-neutral-bg-hover);color:var(--ctl-neutral-fg)}.m3-icon-btn{width:var(--ctl-h-default);height:var(--ctl-h-default);border-radius:var(--ctl-shape-pill);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard), color var(--dur-short-2) var(--ease-standard);border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:24px;display:inline-flex}.m3-icon-btn:disabled{opacity:.38;cursor:default;pointer-events:none}.m3-icon-btn--standard{color:var(--text);background:0 0}.m3-icon-btn--standard:hover{background:var(--sys-indigo-600);color:var(--on-primary)}.m3-icon-btn--filled{background:var(--state-filled-bg);color:var(--on-primary)}.m3-icon-btn--tonal{background:var(--state-tonal-bg);color:var(--accent-light)}.m3-icon-btn--outlined{background:var(--state-outlined-bg);color:var(--state-outlined-fg);border:none}.m3-icon-btn--neutral{background:var(--ctl-neutral-bg-hover);color:var(--ctl-neutral-fg)}.m3-fab{justify-content:center;align-items:center;gap:var(--sp-3);cursor:pointer;font-family:var(--font);background:var(--accent-subtle);color:var(--accent-light);box-shadow:var(--elevation-3);transition:box-shadow var(--dur-short-3) var(--ease-standard), background var(--dur-short-3) var(--ease-standard);border:none;display:inline-flex}.m3-fab:hover{box-shadow:var(--elevation-4)}.m3-fab--default{border-radius:var(--shape-lg);width:56px;height:56px;font-size:24px}.m3-fab--sm{border-radius:var(--shape-md);width:40px;height:40px;font-size:24px}.m3-fab--lg{border-radius:var(--shape-xl);width:96px;height:96px;font-size:36px}.m3-fab--extended{border-radius:var(--shape-lg);height:56px;padding-inline:var(--sp-4);font-size:var(--fs-label-lg);font-weight:var(--fw-medium);letter-spacing:var(--ls-label-lg)}.m3-fab__icon{flex-shrink:0;align-items:center;display:flex}.m3-fab__label{white-space:nowrap}.m3-segmented{border-radius:var(--shape-full);display:inline-flex;overflow:hidden}.m3-segmented__btn{justify-content:center;align-items:center;gap:var(--sp-2);height:var(--ctl-h-default);padding-inline:var(--ctl-pad-inline);color:var(--text);font-size:var(--ctl-fs);line-height:var(--ctl-lh);font-weight:var(--ctl-fw);letter-spacing:var(--ctl-ls);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard), color var(--dur-short-2) var(--ease-standard);background:0 0;border:none;display:inline-flex;position:relative}.m3-segmented__btn+.m3-segmented__btn{border-left:1px solid var(--border)}.m3-segmented__btn:hover{background:var(--surface-hover)}.m3-segmented__btn--selected{background:var(--state-tonal-bg);color:var(--accent-light)}.m3-segmented__btn--selected:hover{background:var(--state-tonal-bg-hover)}.m3-segmented--compact .m3-segmented__btn{height:var(--ctl-h-compact);padding-inline:var(--ctl-pad-inline-compact);font-size:var(--ctl-fs-compact);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md)}.m3-badge-anchor{display:inline-flex;position:relative}.m3-badge{z-index:1;border-radius:var(--shape-full);font-size:var(--fs-label-sm);font-weight:var(--fw-medium);letter-spacing:var(--ls-label-sm);line-height:1;position:absolute}.m3-badge--dot{background:var(--sys-red-500);width:6px;height:6px;top:0;right:0}.m3-badge--label{min-width:16px;height:16px;padding-inline:var(--sp-1);background:var(--sys-red-500);color:var(--sys-white);justify-content:center;align-items:center;display:flex;top:-4px;right:-4px}.m3-progress{overflow:hidden}.m3-progress--linear{border-radius:var(--shape-full);background:var(--surface);width:100%;min-width:0;height:4px}.m3-progress__bar{border-radius:var(--shape-full);background:var(--accent);height:100%;transition:width var(--dur-short-4) var(--ease-standard)}.m3-progress--linear.m3-progress--indeterminate .m3-progress__bar{width:50%;animation:m3-progress-slide 2s var(--ease-standard) infinite}@keyframes m3-progress-slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.m3-progress--circular{justify-content:center;align-items:center;display:inline-flex}.m3-progress__track-circle{fill:none;stroke:var(--surface);stroke-width:4px}.m3-progress__circle{fill:none;stroke:var(--accent);stroke-width:4px;stroke-linecap:round}.m3-progress--circular.m3-progress--indeterminate svg{animation:2s linear infinite m3-circular-rotate}.m3-progress--circular.m3-progress--indeterminate .m3-progress__circle{animation:m3-circular-dash 1.5s var(--ease-standard) infinite}@keyframes m3-circular-rotate{to{transform:rotate(360deg)}}@keyframes m3-circular-dash{0%{stroke-dasharray:1 150;stroke-dashoffset:0}50%{stroke-dasharray:90 150;stroke-dashoffset:-35px}to{stroke-dasharray:90 150;stroke-dashoffset:-124px}}.m3-ind{padding:var(--sp-1);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.m3-ind:after{content:"";background:var(--ind-color);display:block}.m3-ind--dot:after{border-radius:var(--shape-full);width:4px;height:4px}.m3-ind--line.m3-ind--horizontal:after{border-radius:var(--shape-full);width:10px;height:2px}.m3-ind--line.m3-ind--vertical:after{border-radius:var(--shape-full);width:2px;height:10px}.m3-ind--micro.m3-ind--dot:after{width:2px;height:2px}.m3-ind--micro.m3-ind--line.m3-ind--horizontal:after{width:5px;height:1px}.m3-ind--micro.m3-ind--line.m3-ind--vertical:after{width:1px;height:5px}.m3-ind--pulse:after{animation:1.2s ease-in-out infinite m3-ind-pulse}.m3-ind--blink:after{animation:3s step-start infinite m3-ind-blink}.m3-ind--flash:after{animation:.2s ease-out m3-ind-flash}@keyframes m3-ind-pulse{0%,to{opacity:1}50%{opacity:.25}}@keyframes m3-ind-blink{0%{opacity:1}50%{opacity:0}}@keyframes m3-ind-flash{0%{opacity:.1}to{opacity:1}}.m3-snackbar{bottom:var(--sp-6);align-items:center;gap:var(--sp-2);min-width:280px;max-width:560px;padding:var(--sp-3) var(--sp-4);border-radius:var(--shape-sm);background:var(--text);color:var(--bg);font-size:var(--fs-body-md);letter-spacing:var(--ls-body-md);z-index:var(--z-toast);pointer-events:auto;display:flex;position:fixed;left:50%}.m3-snackbar--show{pointer-events:auto}.m3-snackbar__message{flex:1}.m3-snackbar__action{padding:var(--sp-1) var(--sp-2);color:var(--accent-light);font-size:var(--fs-label-lg);font-weight:var(--fw-medium);cursor:pointer;border-radius:var(--shape-sm);background:0 0;border:none;flex-shrink:0}.m3-snackbar__action:hover{background:var(--surface-tint-3)}.m3-snackbar__close{width:28px;height:28px;color:inherit;cursor:pointer;border-radius:var(--shape-full);opacity:.7;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.m3-snackbar__close:hover{opacity:1;background:var(--surface-tint-3)}.m3-modal-glass,.m3-dialog,.m3-dialog--wide,.m3-sheet,.m3-menu,.m3-nav-drawer{background:var(--modal-container-bg);border:var(--container-border);box-shadow:var(--shadow-container)}.modal-blur-layer{z-index:calc(var(--z-modal) - 1);backdrop-filter:blur(7px);pointer-events:none;position:fixed;inset:0}.m3-dialog-overlay{z-index:var(--z-modal);background:var(--overlay);pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.m3-dialog-overlay--open{pointer-events:auto}.m3-dialog-anim{flex-direction:column;max-width:100%;max-height:100%;display:flex}.m3-dialog{border-radius:var(--shape-xl);min-width:280px;max-width:560px;max-height:80vh;padding:var(--sp-6);gap:var(--sp-4);flex-direction:column;display:flex}.m3-dialog--wide{width:min(960px,90vw);max-width:min(960px,90vw);height:min(720px,88vh);max-height:min(720px,88vh)}.m3-dialog--wide .m3-dialog__content{flex:1;min-height:0}@media (width<=839px){.m3-dialog--wide{width:92vw;max-width:92vw;height:88vh;max-height:88vh}}@media (width<=599px){.m3-dialog--wide{border-radius:var(--shape-xl) var(--shape-xl) 0 0;width:100%;max-width:100%;height:auto;min-height:60dvh;max-height:92dvh;padding-top:var(--sp-3);padding-bottom:calc(var(--sp-6) + env(safe-area-inset-bottom,0px));box-shadow:var(--elevation-3);margin:0;position:absolute;bottom:0;left:0;right:0}.m3-dialog--wide:before{content:"";border-radius:var(--shape-full);background:var(--text-muted);opacity:.4;flex-shrink:0;align-self:center;width:32px;height:4px}}.m3-dialog__title{font-size:var(--fs-headline-sm);font-weight:var(--fw-semibold);letter-spacing:var(--ls-headline-sm)}.m3-dialog__content{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--text-muted);overflow-y:auto}.m3-dialog__actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.m3-sheet-overlay{z-index:var(--z-modal);background:var(--overlay);pointer-events:none;position:fixed;inset:0}.m3-sheet-overlay--open{pointer-events:auto}.m3-sheet-anim{z-index:calc(var(--z-modal) + 1);flex-direction:column;max-height:90vh;display:flex;position:fixed;bottom:0;left:0;right:0}.m3-sheet{border-radius:var(--shape-xl) var(--shape-xl) 0 0;flex-direction:column;max-height:90vh;display:flex}.m3-sheet__handle{padding:var(--sp-3) 0 var(--sp-2);justify-content:center;display:flex}.m3-sheet__handle:after{content:"";border-radius:var(--shape-full);background:var(--text-muted);opacity:.4;width:32px;height:4px}.m3-sheet__content{padding:0 var(--sp-6) var(--sp-6);flex:1;overflow-y:auto}.m3-card,.feature-card,.pkt-card,.edge-shelf-disclosure,.connect-card,.connect-section,.net-rank-row,.nd-status-card{border-radius:var(--shape-lg);background:var(--container-bg);border:var(--container-border);box-shadow:var(--shadow-container);transition:box-shadow var(--dur-short-3) var(--ease-standard), background var(--dur-short-3) var(--ease-standard);overflow:hidden}.m3-card--flat-inset{background:var(--container-bg-sunken);box-shadow:none}.m3-card--flat{background:var(--card-fill-zinc);box-shadow:none;border:1px solid #0000}.m3-card--fill-indigo-tonal{background:var(--card-fill-indigo-tonal)}.m3-card .m3-card:not([class*=m3-card--]){box-shadow:none}.m3-card--clickable{cursor:pointer}.m3-card--clickable:hover{background:var(--surface-hover)}.m3-card--elevated{background:var(--bg-raised);box-shadow:var(--elevation-1);border:none}.m3-card--elevated:hover{box-shadow:var(--elevation-2)}.map-ctrl-glass.m3-card--elevated{background:var(--surface-glass);backdrop-filter:var(--blur-md);border:1px solid var(--outline-glass);box-shadow:var(--elevation-2)}.map-ctrl-glass .m3-icon-btn{border-radius:var(--shape-md);width:38px;height:34px}.map-stats-glass{background:var(--surface-glass);backdrop-filter:var(--blur-md);border:1px solid var(--outline-glass);border-radius:var(--shape-sm)}.m3-icon-tile,.nd-status-icon-tile{width:var(--sp-8);height:var(--sp-8);border-radius:var(--shape-sm);background:var(--accent);color:var(--on-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.m3-icon-tile svg,.m3-icon-tile .nd-status-icon,.nd-status-icon-tile svg,.nd-status-icon-tile .nd-status-icon{color:var(--on-primary)}.m3-icon-tile--tonal{background:var(--glow);color:var(--text-accent)}.m3-icon-tile--tonal svg,.m3-icon-tile--tonal .nd-status-icon{color:var(--text-accent)}.m3-icon-tile--flat{color:var(--text-accent);background:0 0}.m3-icon-tile--flat svg,.m3-icon-tile--flat .nd-status-icon{color:var(--text-accent)}.card--hover-wash:hover,.net-rank-row:hover{background:linear-gradient(var(--surface-tint-1), var(--surface-tint-1)) padding-box, linear-gradient(var(--surface), var(--surface)) padding-box, linear-gradient(-1deg, #00000040 0%, #ffffff26 100%) border-box}.card--hover-lift:hover,.outpost-stat-card:hover{background:var(--sys-indigo-500-20);transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.m3-divider{border:none;border-top:1px solid var(--border-subtle);margin:0}.m3-divider--inset{margin-inline-start:var(--sp-4)}.m3-list-tile{align-items:center;gap:var(--sp-4);min-height:56px;padding:var(--sp-2) var(--sp-4);transition:background var(--dur-short-2) var(--ease-standard);display:flex}.m3-list-tile--clickable{cursor:pointer}.m3-list-tile--clickable:hover{background:var(--surface-hover)}.m3-list-tile__leading{color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;font-size:24px;display:flex}.m3-list-tile__content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.m3-list-tile__title{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);letter-spacing:var(--ls-body-lg)}.m3-list-tile__subtitle{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--text-muted)}.m3-list-tile__trailing{color:var(--text-muted);font-size:var(--fs-label-sm);flex-shrink:0;align-items:center;display:flex}.m3-app-bar{background:var(--bg);color:var(--text);z-index:var(--z-nav);flex-direction:column;display:flex}.m3-app-bar__row{align-items:center;gap:var(--sp-1);min-height:64px;padding-inline:var(--sp-1);display:flex}.m3-app-bar__leading{flex-shrink:0;align-items:center;display:flex}.m3-app-bar__title{min-width:0;font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);letter-spacing:var(--ls-title-lg);font-weight:var(--fw-medium);flex:1}.m3-app-bar--center-aligned .m3-app-bar__title{text-align:center}.m3-app-bar__actions{align-items:center;gap:var(--sp-1);flex-shrink:0;display:flex}.m3-app-bar__headline{padding:0 var(--sp-4) var(--sp-7)}.m3-app-bar--medium .m3-app-bar__headline{font-size:var(--fs-headline-sm);line-height:var(--lh-headline-sm);letter-spacing:var(--ls-headline-sm);font-weight:var(--fw-semibold)}.m3-app-bar--large .m3-app-bar__headline{font-size:var(--fs-headline-md);line-height:var(--lh-headline-md);letter-spacing:var(--ls-headline-md);font-weight:var(--fw-semibold)}.m3-nav-bar{background:var(--bg-raised);border-top:1px solid var(--border-subtle);height:80px;z-index:var(--z-nav);align-items:stretch;display:flex}.m3-nav-bar__item{color:var(--text-muted);font:inherit;font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md);cursor:pointer;transition:color var(--dur-short-3) var(--ease-standard);padding:var(--sp-3) 0 var(--sp-4);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;display:flex}.m3-nav-bar__item:hover{color:var(--text)}.m3-nav-bar__item--active{color:var(--accent)}.m3-nav-bar__icon{border-radius:var(--shape-full);width:64px;height:32px;transition:background var(--dur-short-3) var(--ease-standard);justify-content:center;align-items:center;display:flex}.m3-nav-bar__item--active .m3-nav-bar__icon{background:var(--accent-subtle)}.m3-nav-bar__label{font-weight:var(--fw-medium)}.m3-nav-rail{width:80px;padding:var(--sp-2) 0;background:var(--bg);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;align-items:center;display:flex}.m3-nav-rail--start .m3-nav-rail__items{justify-content:flex-start}.m3-nav-rail--center .m3-nav-rail__items{justify-content:center}.m3-nav-rail--end .m3-nav-rail__items{justify-content:flex-end}.m3-nav-rail__fab{padding:var(--sp-2) 0 var(--sp-4)}.m3-nav-rail__items{align-items:center;gap:var(--sp-3);flex-direction:column;flex:1;display:flex}.m3-nav-rail__item{color:var(--text-muted);font:inherit;font-size:var(--fs-label-md);line-height:var(--lh-label-md);cursor:pointer;transition:color var(--dur-short-3) var(--ease-standard);background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;padding:0;display:flex}.m3-nav-rail__item:hover{color:var(--text)}.m3-nav-rail__item--active{color:var(--accent)}.m3-nav-rail__icon{border-radius:var(--shape-full);width:56px;height:32px;transition:background var(--dur-short-3) var(--ease-standard);justify-content:center;align-items:center;display:flex}.m3-nav-rail__item--active .m3-nav-rail__icon{background:var(--accent-subtle)}.m3-nav-rail__label{font-weight:var(--fw-medium)}.m3-nav-drawer-scrim{z-index:var(--z-modal);background:var(--overlay);pointer-events:none;overscroll-behavior:contain;-webkit-tap-highlight-color:transparent;position:fixed;inset:0}.m3-nav-drawer-scrim--open{pointer-events:auto}.m3-nav-drawer-anim{width:360px;max-width:85vw;height:100%;position:relative}.m3-nav-drawer{border-radius:0 var(--shape-lg) var(--shape-lg) 0;width:100%;height:100%;padding:var(--sp-3) var(--sp-3);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;display:flex;overflow-y:auto}.m3-nav-drawer::-webkit-scrollbar{display:none}.m3-nav-drawer__headline{padding:var(--sp-4) var(--sp-4) var(--sp-2);font-size:var(--fs-title-sm);line-height:var(--lh-title-sm);letter-spacing:var(--ls-title-sm);color:var(--text-muted);font-weight:var(--fw-medium)}.m3-nav-drawer__item{align-items:center;gap:var(--sp-3);width:100%;min-height:56px;padding:0 var(--sp-6) 0 var(--sp-4);border-radius:var(--shape-full);color:var(--text-muted);font:inherit;font-size:var(--fs-label-lg);line-height:var(--lh-label-lg);letter-spacing:var(--ls-label-lg);font-weight:var(--fw-medium);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard), color var(--dur-short-2) var(--ease-standard);background:0 0;border:none;display:flex}.m3-nav-drawer__item:hover{background:var(--sys-indigo-500-12);color:var(--text)}.m3-nav-drawer__item--active{background:var(--accent-subtle);color:var(--accent)}.m3-nav-drawer__icon{flex-shrink:0;font-size:24px}.m3-nav-drawer__label{text-align:start;flex:1}.m3-nav-drawer__badge{flex-shrink:0}.m3-nav-drawer__items{flex:1}.m3-nav-drawer__footer{padding-top:var(--sp-2);border-top:1px solid var(--border-subtle);margin-top:auto}.m3-tab-bar{border-bottom:1px solid var(--border-subtle);scrollbar-width:none;display:flex;overflow-x:auto}.m3-tab-bar::-webkit-scrollbar{display:none}.m3-tab{min-height:48px;padding:var(--sp-4);color:var(--text-muted);font:inherit;font-size:var(--fs-title-sm);line-height:var(--lh-title-sm);letter-spacing:var(--ls-title-sm);font-weight:var(--fw-medium);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--dur-short-3) var(--ease-standard);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;display:flex;position:relative}.m3-tab:before{content:"";top:var(--sp-2);right:var(--sp-2);bottom:var(--sp-2);left:var(--sp-2);z-index:0;border-radius:var(--shape-md);pointer-events:none;transition:background var(--dur-short-2) var(--ease-standard);background:0 0;position:absolute}.m3-tab>*{z-index:1;position:relative}.m3-tab:hover{color:var(--text)}.m3-tab:hover:before{background:var(--surface-tint-2)}.m3-tab:active:before{background:var(--surface-tint-3)}.m3-tab:focus-visible{outline:none}.m3-tab:focus-visible:before{background:var(--surface-tint-2);outline:2px solid var(--border-focus);outline-offset:-2px}.m3-tab--active{color:var(--on-primary)}.m3-tab--active:before{background:var(--sys-indigo-500)}.m3-tab--active:hover:before{background:var(--sys-indigo-600)}.m3-tab--active:after{content:none}.m3-tab-bar--primary .m3-tab--active:after{height:3px}.m3-tab-bar--secondary .m3-tab--active:after{height:2px}.m3-tab__icon{transition:transform var(--dur-short-3) var(--ease-emphasized-decel);justify-content:center;align-items:center;font-size:24px;display:flex}.m3-tab--active .m3-tab__icon{transform:scale(1.08)}.m3-tab__label{white-space:nowrap}.m3-checkbox{cursor:pointer;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;position:relative}.m3-checkbox--disabled{opacity:.38;cursor:default}.m3-checkbox__input{opacity:0;width:100%;height:100%;cursor:inherit;z-index:1;margin:0;position:absolute}.m3-checkbox__box{border:2px solid var(--text-muted);border-radius:var(--shape-2xs);width:18px;height:18px;transition:background var(--dur-short-2) var(--ease-standard), border-color var(--dur-short-2) var(--ease-standard);justify-content:center;align-items:center;display:flex}.m3-checkbox__input:checked~.m3-checkbox__box,.m3-checkbox__input:indeterminate~.m3-checkbox__box{background:var(--accent);border-color:var(--accent)}.m3-checkbox__check{width:18px;height:18px;color:var(--on-primary);opacity:0;transition:opacity var(--dur-short-2) var(--ease-standard), transform var(--dur-short-2) var(--ease-standard);transform:scale(.6)}.m3-checkbox__input:checked~.m3-checkbox__box .m3-checkbox__check,.m3-checkbox__input:indeterminate~.m3-checkbox__box .m3-checkbox__check{opacity:1;transform:scale(1)}.m3-checkbox__input:focus-visible~.m3-checkbox__box{outline:2px solid var(--border-focus);outline-offset:2px}.m3-chip{align-items:center;gap:var(--sp-2);height:var(--ctl-h-compact);padding:0 var(--ctl-pad-inline);border-radius:var(--ctl-shape-rect);background:var(--ctl-neutral-bg);color:var(--text);font:inherit;font-size:var(--ctl-fs);line-height:var(--lh-label-lg);font-weight:var(--ctl-fw);letter-spacing:var(--ctl-ls);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard), color var(--dur-short-2) var(--ease-standard);border:none;display:inline-flex}.m3-chip:hover{background:var(--ctl-neutral-bg-hover)}.m3-chip--selected{background:var(--state-tonal-bg);color:var(--accent-light)}.m3-chip--filled{background:var(--state-filled-bg);color:var(--on-primary)}.m3-chip--filled:hover{background:var(--state-filled-bg-hover)}.m3-chip--filter .m3-chip__icon{font-size:18px}.m3-chip__icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:18px;line-height:1;display:flex}.m3-chip__icon>svg{display:block}.m3-chip__label{white-space:nowrap}.m3-chip--icon-only{justify-content:center;gap:0;width:32px;padding:0}.m3-chip__delete{color:var(--text-muted);cursor:pointer;border-radius:var(--shape-full);transition:color var(--dur-short-2) var(--ease-standard);align-items:center;margin-inline-start:calc(var(--sp-1) * -1);display:flex}.m3-chip__delete:hover{color:var(--text)}.m3-chip:disabled{opacity:.38;cursor:default}.m3-select{display:inline-flex;position:relative}.m3-select__trigger{align-items:center;gap:var(--sp-2);height:var(--ctl-h-compact);padding:0 var(--ctl-pad-inline);border-radius:var(--ctl-shape-rect);background:var(--ctl-neutral-bg);color:var(--text);font:inherit;font-size:var(--ctl-fs);line-height:var(--ctl-lh);font-weight:var(--ctl-fw);letter-spacing:var(--ctl-ls);cursor:pointer;white-space:nowrap;transition:background var(--dur-short-2) var(--ease-standard);border:none;display:inline-flex}.m3-select__trigger:hover,.m3-select--open .m3-select__trigger{background:var(--ctl-neutral-bg-hover)}.m3-select__label{text-align:start;flex:1}.m3-select__label--placeholder{color:var(--text-muted)}.m3-select__icon{color:var(--text-muted);transition:transform var(--dur-short-2) var(--ease-standard);flex-shrink:0}.m3-select--open .m3-select__icon,.m3-select--bottom .m3-select__icon{transform:rotate(180deg)}.m3-select--bottom.m3-select--open .m3-select__icon{transform:rotate(0)}.m3-radio{cursor:pointer;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;position:relative}.m3-radio--disabled{opacity:.38;cursor:default}.m3-radio__input{opacity:0;width:100%;height:100%;cursor:inherit;z-index:1;margin:0;position:absolute}.m3-radio__circle{border:2px solid var(--text-muted);border-radius:var(--shape-full);width:20px;height:20px;transition:border-color var(--dur-short-2) var(--ease-standard);justify-content:center;align-items:center;display:flex}.m3-radio__input:checked~.m3-radio__circle{border-color:var(--accent)}.m3-radio__dot{border-radius:var(--shape-full);background:var(--accent);width:10px;height:10px;transition:transform var(--dur-short-2) var(--ease-standard);transform:scale(0)}.m3-radio__input:checked~.m3-radio__circle .m3-radio__dot{transform:scale(1)}.m3-radio__input:focus-visible~.m3-radio__circle{outline:2px solid var(--border-focus);outline-offset:2px}.m3-slider{cursor:pointer;align-items:center;width:100%;height:40px;display:inline-flex;position:relative}.m3-slider--disabled{opacity:.38;cursor:default}.m3-slider__input{opacity:0;width:100%;height:100%;cursor:inherit;z-index:1;margin:0;position:absolute}.m3-slider__track{border-radius:var(--shape-2xs);background:var(--surface-active);width:100%;height:4px;position:relative}.m3-slider__fill{height:100%;width:var(--m3-slider-pct,0%);border-radius:var(--shape-2xs);background:var(--accent);transition:width var(--dur-short-2) var(--ease-standard);position:absolute;top:0;left:0}.m3-slider__thumb{top:50%;left:var(--m3-slider-pct,0%);border-radius:var(--shape-full);background:var(--accent);width:20px;height:20px;box-shadow:var(--elevation-1);transition:left var(--dur-short-2) var(--ease-standard), box-shadow var(--dur-short-2) var(--ease-standard);position:absolute;transform:translate(-50%,-50%)}.m3-slider__input:focus-visible~.m3-slider__track .m3-slider__thumb{box-shadow:0 0 0 8px var(--accent-subtle)}.m3-switch{cursor:pointer;align-items:center;display:inline-flex;position:relative}.m3-switch--disabled{opacity:.38;cursor:default}.m3-switch__input{opacity:0;width:0;height:0;position:absolute}.m3-switch__track{border-radius:var(--shape-full);background:var(--surface-active);border:2px solid var(--text-muted);width:52px;height:32px;transition:background var(--dur-short-3) var(--ease-standard), border-color var(--dur-short-3) var(--ease-standard);align-items:center;padding:0 2px;display:flex}.m3-switch--checked .m3-switch__track{background:var(--accent);border-color:var(--accent)}.m3-switch__thumb{border-radius:var(--shape-full);background:var(--text-muted);width:16px;height:16px;transition:transform var(--dur-short-3) var(--ease-standard), width var(--dur-short-3) var(--ease-standard), height var(--dur-short-3) var(--ease-standard), background var(--dur-short-3) var(--ease-standard)}.m3-switch--checked .m3-switch__thumb{background:var(--on-primary);width:24px;height:24px;transform:translate(20px)}.m3-switch__input:focus-visible~.m3-switch__track{outline:2px solid var(--border-focus);outline-offset:2px}.m3-menu-anim{z-index:var(--z-overlay);position:fixed}.m3-menu{border-radius:var(--shape-sm);min-width:112px;max-width:280px;padding:var(--sp-2) 0}.m3-menu__item{align-items:center;gap:var(--sp-2);width:100%;min-height:36px;padding:0 var(--sp-3);color:var(--text);font:inherit;font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard);background:0 0;border:none;display:flex}.m3-menu__item:hover{background:var(--ctl-neutral-bg)}.m3-menu__item:disabled{opacity:.38;cursor:default}.m3-menu__icon{color:var(--text-muted);flex-shrink:0;font-size:24px}.m3-menu__label{text-align:start;flex:1}.m3-menu__divider{border:none;border-top:1px solid var(--border-subtle);margin:var(--sp-2) 0}.m3-text-field{gap:var(--sp-1);flex-direction:column;display:flex;position:relative}.m3-text-field--disabled{opacity:.38}.m3-text-field__container{align-items:center;gap:var(--sp-3);min-height:56px;display:flex;position:relative}.m3-text-field--compact{gap:0}.m3-text-field--compact .m3-text-field__container{box-sizing:border-box;height:32px;min-height:32px}.m3-text-field--compact .m3-text-field__inner{padding:0}.m3-text-field--compact .m3-text-field__label{display:none}.m3-text-field--compact .m3-text-field__input{font-size:var(--fs-label-lg);line-height:var(--lh-label-lg)}.m3-text-field--compact .m3-text-field__input::placeholder{color:var(--text-muted)}.m3-text-field--outlined .m3-text-field__container{background:var(--bg);border-radius:var(--shape-sm);padding:0 var(--sp-4);transition:border-color var(--dur-short-2) var(--ease-standard);border:1px solid #818cf8cc}.m3-text-field--outlined.m3-text-field--focused .m3-text-field__container{border-color:var(--accent);padding:0 calc(var(--sp-4) - 1px);border-width:2px}.m3-text-field--outlined.m3-text-field--error .m3-text-field__container{border-color:var(--sys-red-500)}.m3-text-field--filled .m3-text-field__container{background:var(--surface);border-radius:var(--shape-sm);border-bottom:1px solid var(--text-muted);padding:0 var(--sp-4);transition:border-color var(--dur-short-2) var(--ease-standard)}.m3-text-field--filled.m3-text-field--focused .m3-text-field__container{border-bottom:2px solid var(--accent);padding-bottom:0}.m3-text-field--filled.m3-text-field--error .m3-text-field__container{border-bottom-color:var(--sys-red-500)}.m3-text-field__inner{min-width:0;padding:var(--sp-2) 0;flex-direction:column;flex:1;justify-content:center;display:flex}.m3-text-field__label{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);color:var(--text-muted);pointer-events:none;transform-origin:0 0;transition:transform var(--dur-short-3) var(--ease-standard), font-size var(--dur-short-3) var(--ease-standard), color var(--dur-short-3) var(--ease-standard)}.m3-text-field--label-up .m3-text-field__label{font-size:var(--fs-body-sm);color:var(--accent)}.m3-text-field--error .m3-text-field__label{color:var(--sys-red-500)}.m3-text-field__input{width:100%;color:var(--text);font:inherit;font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);background:0 0;border:none;outline:none;padding:0}.m3-text-field__input::placeholder{color:#0000}.m3-text-field--label-up .m3-text-field__input::placeholder,.m3-text-field--focused .m3-text-field__input::placeholder{color:var(--text-tertiary)}.m3-text-field__icon{color:var(--text-muted);flex-shrink:0;align-items:center;font-size:24px;display:flex}.m3-text-field__helper{padding:0 var(--sp-4);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--text-muted)}.m3-text-field--error .m3-text-field__helper{color:var(--sys-red-500)}.m3-btn,.m3-icon-btn,.m3-chip,.m3-select__trigger,.m3-fab,.m3-segmented{position:relative}.m3-btn:after,.m3-icon-btn:after,.m3-chip:after,.m3-select__trigger:after,.m3-fab:after,.m3-segmented:after{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(-1deg,#00000040 0%,#ffffff26 100%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.m3-icon-btn--standard:after{content:none}.m3-btn:hover,.m3-icon-btn:hover,.m3-chip:hover,.m3-select__trigger:hover,.m3-fab:hover,.m3-segmented__btn:hover,.m3-select--open .m3-select__trigger,.m3-select__trigger.m3-select--open{background:var(--sys-indigo-600);color:var(--on-primary)}.m3-select__trigger>svg{color:var(--text-muted);transition:color var(--dur-short-2) var(--ease-standard)}.m3-btn--filled .m3-btn__icon,.m3-btn--filled svg,.m3-btn--outlined .m3-btn__icon,.m3-btn--outlined svg,.m3-icon-btn--filled svg,.m3-icon-btn--outlined svg,.m3-chip--filled .m3-chip__icon,.m3-chip--filled svg,.m3-tab--active .m3-tab__icon,.m3-tab--active .m3-tab__label,.m3-tab--active svg,.m3-btn:hover .m3-btn__icon,.m3-btn:hover svg,.m3-icon-btn:hover svg,.m3-chip:hover .m3-chip__icon,.m3-chip:hover svg,.m3-select__trigger:hover .m3-select__icon,.m3-select__trigger:hover .m3-select__label--placeholder,.m3-select__trigger:hover>svg,.m3-fab:hover .m3-fab__icon,.m3-fab:hover svg,.m3-segmented__btn:hover svg,.m3-select--open .m3-select__trigger .m3-select__icon,.m3-select--open .m3-select__trigger .m3-select__label--placeholder,.m3-select--open .m3-select__trigger>svg,.m3-select__trigger.m3-select--open .m3-select__icon,.m3-select__trigger.m3-select--open .m3-select__label--placeholder,.m3-select__trigger.m3-select--open>svg{color:var(--on-primary)}.pkt-page{--page-pt:var(--sp-1);--page-px:0;padding:var(--page-pt) var(--page-px) var(--page-pb)}.pkt-error-inline{font-size:var(--fs-body-sm);color:var(--sys-red-400);white-space:nowrap;text-overflow:ellipsis;max-width:280px;overflow:hidden}.pkt-empty{padding:var(--sp-15) var(--sp-6);text-align:center;color:var(--text-muted);font-size:var(--fs-body-md)}.pkt-card-header{padding:var(--sp-2) var(--sp-6);border-bottom:1px solid var(--border-subtle)}.pkt-header-wrap{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.pkt-header-wrap>:last-child{margin-left:auto}@media (width<=839px){.pkt-header-wrap{gap:var(--sp-2);grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;display:grid}.pkt-header-wrap>:first-child{grid-area:1/1}.pkt-header-wrap>:nth-child(3){grid-area:1/2}.pkt-header-wrap>:nth-child(2){grid-area:2/1/auto/-1;min-width:0}}.pkt-title{font-size:var(--fs-title-lg);font-weight:var(--fw-medium);letter-spacing:var(--ls-title-lg)}.pkt-loading-label{font-size:var(--fs-label-sm);color:var(--text-muted);font-family:var(--mono);letter-spacing:var(--ls-label-sm)}.m3-status-pill{border-radius:var(--shape-full);background:var(--container-bg-sunken);border:var(--container-border);flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}.pkt-filter-card{gap:var(--sp-3);padding:var(--sp-3) var(--sp-6);border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.pkt-filter-search{flex:140px;min-width:140px}.pkt-filter-selects .m3-btn{min-width:auto;height:32px;padding-inline:var(--sp-3);font-size:var(--fs-label-lg);border-radius:var(--shape-lg)}.pkt-filter-slider-row{align-items:center;gap:var(--sp-3);padding-top:var(--sp-3);display:flex;overflow:visible}@media (width<=839px){.pkt-filter-slider-row--desktop,.pkt-filter-selects .m3-chip__label{display:none}.pkt-filter-selects .m3-chip{padding-inline:var(--sp-2);min-width:auto}.pkt-card{border-inline:none;border-radius:0}.pkt-card-header,.pkt-filter-card{padding-inline:var(--sp-3)}.pkt-page>.pkt-card:first-child{border-inline:none;border-radius:0}.pkt-page>.pkt-card:first-child .wc-container{padding-inline:var(--sp-2)}}.pkt-progress{border-radius:0}.pkt-table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.pkt-compact{display:none}@media (width<=1100px){.pkt-full{display:none}.pkt-compact{display:inline}}.pkt-table{width:100%;min-width:900px}.pkt-thead{z-index:2;position:sticky;top:0}.pkt-th{height:40px;padding:0 var(--sp-2);font-size:var(--fs-label-md);line-height:var(--lh-label-md);font-weight:var(--fw-semibold);letter-spacing:var(--ls-label-md);color:var(--text-muted);background:var(--bg);border-bottom:1px solid var(--border-subtle);align-items:center;gap:var(--sp-1);white-space:nowrap;user-select:none;padding-inline-start:var(--sp-2);display:flex}@media (width<=599px){.pkt-th{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm)}}.pkt-th--numeric{text-align:left;justify-content:flex-start}.pkt-thead .pkt-th:first-child{padding-inline-start:var(--sp-4)}.pkt-thead .pkt-th:last-child{padding-inline-end:var(--sp-4)}.pkt-th--sortable{cursor:pointer;transition:color var(--dur-short-2) var(--ease-standard)}.pkt-th--sortable:hover{color:var(--text)}.pkt-sort-icon{font-size:var(--fs-label-xs);color:var(--text-tertiary);opacity:0;transition:opacity var(--dur-short-2) var(--ease-standard)}.pkt-th--sortable:hover .pkt-sort-icon{opacity:.6}.pkt-sort-icon--active{color:var(--text);opacity:1!important}.pkt-row{cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard)}.pkt-row:focus-visible>.pkt-td{outline:2px solid var(--border-focus);outline-offset:-2px}.pkt-row:focus{outline:none}.pkt-row:nth-child(2n)>.pkt-td{background:var(--surface-tint-1)}.pkt-row:hover>.pkt-td{background:var(--surface-hover)}.pkt-row--expanded>.pkt-td{background:var(--surface-sunken)}.pkt-td{height:36px;padding:0 var(--sp-2);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid var(--border-subtle);align-items:center;display:flex;overflow:hidden}.pkt-td--mono{font-family:var(--mono);letter-spacing:var(--ls-body-sm)}.pkt-td--observer{font-size:var(--fs-label-lg);line-height:var(--lh-label-lg);font-weight:var(--fw-medium);letter-spacing:var(--ls-label-lg)}@media (width<=839px){.pkt-td--observer{font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md)}}.pkt-td--upper{text-transform:uppercase}.pkt-td--numeric{text-align:left;font-variant-numeric:tabular-nums;justify-content:flex-start}.pkt-row .pkt-td:first-child{padding-inline-start:var(--sp-4)}.pkt-row .pkt-td:last-of-type{padding-inline-end:var(--sp-4)}.pkt-td--detail{white-space:normal;border-bottom:2px solid var(--border-accent);height:auto;padding:0;overflow:visible}.pkt-badge{height:18px;padding-inline:var(--sp-1);border-radius:var(--shape-xs);font-size:10px;font-weight:var(--fw-medium);font-family:var(--mono);letter-spacing:var(--ls-label-xs);white-space:nowrap;justify-content:center;align-items:center;line-height:1;display:inline-flex}.pkt-badge--region{background:var(--sys-indigo-500-12);color:var(--sys-indigo-400)}.pkt-badge--model,.pkt-badge--firmware,.pkt-badge--client{background:var(--surface-tint-2);color:var(--text-muted)}.pkt-badge--truncate{text-overflow:ellipsis;vertical-align:middle;max-width:24ch;padding-block:3px;line-height:1;display:inline-block;overflow:hidden}.pkt-badge--lg{height:24px;font-size:var(--fs-label-md);padding-inline:var(--sp-2);border-radius:var(--shape-sm)}.pkt-badge--lg.pkt-badge--truncate{padding-block:6px}.pkt-badge--rx{background:var(--sys-indigo-500-12);color:var(--sys-indigo-400)}.pkt-badge--tx_forward,.pkt-badge--tx_local{background:var(--sys-amber-500-12);color:var(--sys-amber-400)}.pkt-badge--type{background:var(--surface-hover);color:var(--text)}.pkt-badge--ADVERT{background:var(--sys-violet-500-12);color:var(--sys-violet-400)}.pkt-badge--TRACE{background:var(--sys-pink-500-12);color:var(--sys-pink-400)}.pkt-badge--ACK{background:var(--sys-yellow-500-12);color:var(--sys-yellow-400)}.pkt-badge--PATH{background:var(--sys-cyan-500-12);color:var(--sys-cyan-400)}.pkt-badge--REQ{background:var(--sys-indigo-500-12);color:var(--sys-indigo-400)}.pkt-badge--RESPONSE{background:var(--sys-green-500-12);color:var(--sys-green-400)}.pkt-badge--GRP_TXT,.pkt-badge--GRP_DATA{background:var(--sys-amber-500-12);color:var(--sys-amber-400)}.pkt-badge--ANON_REQ{background:var(--sys-indigo-500-12);color:var(--sys-indigo-400)}.pkt-badge--TXT_MSG{background:var(--sys-cyan-500-12);color:var(--sys-cyan-400)}.pkt-badge--MULTIPART{background:var(--sys-pink-500-12);color:var(--sys-pink-400)}.pkt-badge--CONTROL,.pkt-badge--RAW_CUSTOM,.pkt-badge--drop{background:var(--sys-red-500-12);color:var(--sys-red-400)}.pkt-badge--rpt{background:var(--sys-cyan-500-12);color:var(--sys-cyan-400);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard)}.pkt-badge--rpt:hover{background:var(--sys-cyan-500-24,#00bcd43d)}.pkt-badge--flood{background:var(--sys-red-500-12);color:var(--sys-red-400)}.pkt-badge--zero-hop{background:var(--sys-green-500-12);color:var(--sys-green-400)}.pkt-badge--observed{background:var(--sys-cyan-500-12);color:var(--sys-cyan-400)}.pkt-badge--signed{background:var(--sys-green-500-12);color:var(--sys-green-400)}.pkt-badge--route-flood{background:var(--sys-red-500-12);color:var(--sys-red-400)}.pkt-badge--route-direct{color:var(--sys-zinc-300);background:#71717a1f}.pkt-badge--route-transport_flood{background:var(--sys-orange-500-12);color:var(--sys-orange-400)}.pkt-badge--route-transport_direct{color:var(--sys-slate-400);background:#64748b1f}:root[data-theme=light] .pkt-badge--route-direct{color:var(--sys-zinc-800)}.pkt-badge--src-hash{background:var(--sys-green-500-12);color:var(--sys-green-400)}.pkt-badge--dst-hash{background:var(--sys-cyan-500-12);color:var(--sys-cyan-400)}.pkt-badge--path-hash{background:var(--sys-indigo-500-12);color:var(--sys-indigo-400)}.pkt-badge--score,.pkt-badge--size{color:var(--slate-500,#64748b);background:#64748b1f}.pkt-detail-grid{gap:var(--sp-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-width:0;display:grid}.pkt-detail-grid__byte,.pkt-detail-grid__panels{gap:var(--sp-3);flex-direction:column;min-width:0;display:flex}.pkt-detail-grid--single{grid-template-columns:minmax(0,1fr)}@media (width<=839px){.pkt-detail-grid{grid-template-columns:minmax(0,1fr)}}.pkt-detail-pad-x{padding-inline:var(--sp-4)}.pkt-detail-grid__panels .nd-topo-quality-grid{padding:var(--sp-2) var(--sp-4) var(--sp-3);grid-template-columns:repeat(4,minmax(0,1fr))}.pkt-detail-title-count{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text-muted)}.pkt-detail-grid__panels .nd-status-body{padding-block:var(--sp-3) var(--sp-4)}.pkt-detail-source .m3-list-tile{min-height:64px;padding-block:var(--sp-3)}.pkt-col-popover{z-index:var(--z-overlay,10);min-width:140px;max-height:400px;padding:var(--sp-1) 0;background:var(--surface);border:1px solid var(--border);border-radius:var(--shape-sm);box-shadow:var(--elevation-2);position:absolute;top:100%;right:0;overflow-y:auto}.pkt-col-popover::-webkit-scrollbar{width:4px}.pkt-col-popover::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--shape-2xs)}.pkt-col-popover-header{padding:var(--sp-1) var(--sp-3);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.pkt-col-popover-reset{color:var(--accent);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);cursor:pointer;background:0 0;border:none;padding:0}.pkt-col-popover-reset:hover{text-decoration:underline}.pkt-col-popover-item{align-items:center;gap:var(--sp-1);min-height:28px;padding:var(--sp-1) var(--sp-3);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);cursor:pointer;white-space:nowrap;color:var(--text);display:flex}.pkt-col-popover-item:hover{background:var(--ctl-neutral-bg)}.pkt-col-popover-item .m3-checkbox{width:28px;height:28px}.pkt-col-popover-item--active{background:var(--surface-active)}.pkt-iata-search-wrap{z-index:1;background:var(--surface);padding:var(--sp-2) var(--sp-2) var(--sp-1);box-shadow:0 calc(-1 * var(--sp-2)) 0 0 var(--surface);position:sticky;top:0}.pkt-iata-search{border:1px solid var(--border);border-radius:var(--shape-sm);background:var(--surface);width:100%;color:var(--text);font:inherit;font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);padding:var(--sp-1) var(--sp-2);outline:none}.pkt-iata-search:focus{border-color:var(--accent)}.pkt-iata-search::placeholder{color:var(--text-muted)}.pkt-iata-search-progress{height:2px;margin-top:var(--sp-1);border-radius:var(--shape-2xs);background:var(--border-subtle);position:relative;overflow:hidden}.pkt-iata-search-progress:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--accent) 50%, transparent 100%);animation:1.1s linear infinite pkt-iata-search-progress-slide;position:absolute;inset:0}@keyframes pkt-iata-search-progress-slide{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.pkt-iata-search-progress:after{animation:none}}.m3-dropdown-skeleton{contain:content}.m3-dropdown-skeleton__row{pointer-events:none}.m3-dropdown-skeleton__chip{border-radius:var(--shape-xs);background:linear-gradient(90deg, var(--surface) 0%, var(--surface-hover) 50%, var(--surface) 100%);background-size:200% 100%;height:12px;animation:1.4s linear infinite m3-dropdown-skeleton-shimmer;display:inline-block}.m3-dropdown-skeleton__chip--code{flex-shrink:0;width:32px}.m3-dropdown-skeleton__chip--name{margin:0 var(--sp-1);flex:1;min-width:0}.m3-dropdown-skeleton__chip--tail{flex-shrink:0;width:24px}@keyframes m3-dropdown-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.m3-dropdown-skeleton__chip{animation:none}}.pkt-path-cell{white-space:nowrap;align-items:center;gap:3px;display:inline-flex;overflow:hidden}.pkt-path-arrow{color:var(--text-tertiary);flex-shrink:0;font-size:10px}.pkt-path-hop{align-items:center;gap:3px;display:inline-flex}.pkt-path-overflow{font-size:var(--fs-label-xs);color:var(--text-muted);font-family:var(--mono)}.pkt-obs-expand-row{background:var(--surface-sunken)}.pkt-obs-table{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);grid-template-columns:1fr 60px 60px 60px 80px;gap:0;display:grid}.pkt-obs-header{display:contents}.pkt-obs-header>span{padding:var(--sp-1) var(--sp-2);font-weight:var(--fw-semibold);color:var(--text-muted);border-bottom:1px solid var(--border-subtle)}.pkt-obs-row{display:contents}.pkt-obs-row>span{padding:var(--sp-1) var(--sp-2);border-bottom:1px solid var(--border-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pkt-signal--critical{color:var(--sig-0)}.pkt-signal--poor{color:var(--sig-4)}.pkt-signal--fair{color:var(--sig-8)}.pkt-signal--good{color:var(--sig-12)}.pkt-signal--excellent{color:var(--sig-15)}.pkt-detail-field{gap:var(--sp-1);text-align:left;flex-direction:column;display:flex}.pkt-detail-label{font-size:var(--fs-label-xs);font-weight:var(--fw-semibold);color:var(--text-muted);letter-spacing:var(--ls-label-xs);line-height:var(--lh-label-xs);text-transform:uppercase}.pkt-detail-value{font-family:var(--mono);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--text);word-break:break-all}.pkt-detail-value--hex{text-transform:uppercase;flex-direction:column;display:flex}.pkt-detail-hex-line{word-break:break-all;display:block}.pkt-detail-block{padding:var(--sp-2) var(--sp-3);border-radius:var(--shape-sm);white-space:pre-wrap;max-height:200px;display:block;overflow-y:auto}.pkt-footer{height:52px;padding:0 var(--sp-6);border-top:1px solid var(--border-subtle);justify-content:flex-end;align-items:center;display:flex}.pkt-footer-label{font-size:var(--fs-label-sm);font-family:var(--mono);color:var(--text-muted);letter-spacing:var(--ls-label-sm);white-space:nowrap}@media (width>=1200px){:root{--grid-margin:var(--sp-2);--page-pt:var(--sp-15);--page-pb:var(--sp-20)}}@media (width>=1600px){:root{--grid-body:1400px;--grid-margin:var(--sp-3)}}@media (width<=839px){:root{--grid-columns:8}.hero{row-gap:var(--sp-10);padding-block:var(--sp-10) var(--sp-15);padding-inline:var(--sp-4)}.hero-content,.hero-visual{grid-column:1/-1}.hero-visual{order:-1;max-width:360px}.features-grid{grid-template-columns:1fr 1fr}.features{padding-bottom:var(--sp-15)}.footer{padding-block:var(--sp-6);padding-inline:var(--sp-4)}.pane-row{flex-direction:column}.pane--fixed{width:100%}.page-bleed{--grid-margin:0px}.m3-segmented{scrollbar-width:none;max-width:100%;overflow-x:auto}.m3-segmented::-webkit-scrollbar{display:none}.kit>.layout-column{gap:var(--sp-8)}.kit-nav{gap:0}}@media (width<=599px){:root{--grid-columns:4;--grid-gutter:var(--sp-4);--grid-margin:var(--sp-4);--page-pt:var(--sp-6);--page-pb:var(--sp-12);--page-px:var(--sp-1);--section-gap:var(--sp-8);--card-pad:var(--sp-4);--card-pad-hero:var(--sp-5)}.features-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column}.btn{justify-content:center}.hero,.footer{padding-inline:var(--sp-5)}.hero-visual{max-width:280px}.hero-title{font-size:clamp(var(--fs-headline-lg), 8vw, var(--fs-display-sm))}.m3-snackbar{min-width:0;width:calc(100% - var(--sp-8));max-width:560px}.layout-grid>[style*=span\ 6],.layout-grid>[style*=span\ 9]{grid-column:1/-1}.kit>.layout-column{gap:var(--sp-6)}.kit-section-hd{font-size:var(--fs-title-md);margin-bottom:var(--sp-4)}.kit-sub-hd{margin-top:var(--sp-4)}.pkt-filter-search{flex-basis:100%;min-width:0}.pkt-filter-slider-row{padding-inline:var(--sp-2)}.pkt-table{min-width:0}.m3-chip--filter .m3-chip__label{display:none}.m3-chip--filter{padding:0 var(--sp-3);gap:0}.m3-dual-slider{--_sl-handle-h:28px;--_sl-handle-h-press:28px;--_sl-touch:36px}.live-map-main{height:calc(100dvh - 64px - env(safe-area-inset-bottom,0px))}.map-glass{padding:3px 8px!important;font-size:10px!important}}.m3-dual-slider{--_sl-gap:6px;--_sl-track-h:12px;--_sl-touch:48px;--_sl-handle-w:4px;--_sl-handle-h:44px;--_sl-handle-w-hover:6px;--_sl-handle-w-press:2px;--_sl-handle-h-press:var(--_sl-handle-h);--_sl-handle-inset:calc(var(--_sl-track-h) / 2);--_sl-stop:4px;--_sl-stop-inset:var(--_sl-gap);--_sl-indicator-size:40px;--_sl-indicator-offset:28px;--_sl-color-active:var(--accent);--_sl-color-active-hov:var(--accent-dark);--_sl-color-inactive:var(--surface-active);--_sl-color-handle:var(--accent);--_sl-color-handle-idle:var(--text-muted);--_sl-color-stop:var(--bg);--_sl-color-ind-bg:var(--accent-subtle);--_sl-color-ind-text:var(--accent-light);flex-direction:column;flex:1;gap:2px;min-width:160px;display:flex;overflow:visible}.m3-dual-slider__labels{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);font-family:var(--mono);color:var(--text-muted);font-variant-numeric:tabular-nums;user-select:none;justify-content:space-between;align-items:center;display:flex}.m3-dual-slider__label--active{color:var(--_sl-color-active)}.m3-dual-slider__track{height:var(--_sl-touch);touch-action:none;user-select:none;cursor:pointer;position:relative;overflow:visible}.m3-dual-slider__seg{height:var(--_sl-track-h);border-radius:var(--shape-full);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.m3-dual-slider__seg--inactive{background:var(--_sl-color-inactive)}.m3-dual-slider__seg--active{background:var(--_sl-color-active);pointer-events:auto;cursor:grab;transition:background var(--dur-short-2) var(--ease-standard)}.m3-dual-slider__seg--active:hover{background:var(--_sl-color-active-hov)}.m3-dual-slider__seg--dragging{cursor:grabbing;background:var(--_sl-color-active-hov)}.m3-dual-slider__stop{width:var(--_sl-stop);height:var(--_sl-stop);border-radius:var(--shape-full);background:var(--_sl-color-stop);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.m3-dual-slider__stop--start{left:var(--_sl-stop-inset)}.m3-dual-slider__stop--end{right:var(--_sl-stop-inset)}.m3-dual-slider__indicator{bottom:calc(50% + var(--_sl-indicator-offset));min-width:var(--_sl-indicator-size);height:var(--_sl-indicator-size);padding-inline:var(--sp-2);border-radius:var(--shape-full);background:var(--_sl-color-ind-bg);color:var(--_sl-color-ind-text);font-size:var(--fs-label-sm);font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:var(--ls-label-sm);white-space:nowrap;box-shadow:var(--elevation-2);pointer-events:none;z-index:4;animation:m3-slider-indicator-in var(--dur-short-2) var(--ease-emphasized-decel);justify-content:center;align-items:center;display:flex;position:absolute;transform:translate(-50%)}@keyframes m3-slider-indicator-in{0%{opacity:0;transform:translate(-50%)scale(.6)}to{opacity:1;transform:translate(-50%)scale(1)}}.m3-dual-slider__handle{width:var(--_sl-handle-w);height:var(--_sl-handle-h);border-radius:var(--shape-full);background:var(--_sl-color-handle-idle);touch-action:none;cursor:ew-resize;transition:width var(--dur-short-2) var(--ease-standard), height var(--dur-short-2) var(--ease-standard), background var(--dur-short-2) var(--ease-standard), box-shadow var(--dur-short-2) var(--ease-standard);z-index:2;outline:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.m3-dual-slider__handle:before{content:"";width:var(--_sl-touch);height:var(--_sl-touch);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.m3-dual-slider__handle:hover{background:var(--_sl-color-handle);width:var(--_sl-handle-w-hover)}.m3-dual-slider__handle:focus-visible{background:var(--_sl-color-handle);box-shadow:0 0 0 8px var(--accent-subtle)}.m3-dual-slider__handle--active{background:var(--_sl-color-handle)}.m3-dual-slider__handle--active:hover{width:var(--_sl-handle-w-hover)}.m3-dual-slider__handle--dragging,.m3-dual-slider__handle--dragging:hover{cursor:grabbing;will-change:left;background:var(--_sl-color-handle);width:var(--_sl-handle-w-press);height:var(--_sl-handle-h-press);z-index:3;transition:none}.obs-page{padding:var(--page-pt) var(--page-px) var(--page-pb)}.obs-page-title{font-size:var(--fs-display-md);line-height:var(--lh-display-md);letter-spacing:var(--ls-display-md);font-weight:var(--fw-semibold);color:var(--text);margin-bottom:var(--sp-2);text-wrap:balance}.obs-type-pills{margin-bottom:var(--sp-4);flex-wrap:wrap;gap:8px;display:flex}.net-type-badge{height:18px;padding-inline:var(--sp-1);border-radius:var(--shape-sm);font-size:10px;font-weight:var(--fw-medium);font-family:var(--mono);letter-spacing:var(--ls-label-xs);white-space:nowrap;text-transform:uppercase;justify-content:center;align-items:center;line-height:1;display:inline-flex}.net-type-badge--observer{background:var(--sys-violet-500-12);color:var(--sys-violet-400)}.net-type-badge--repeater{background:var(--sys-amber-500-12);color:var(--sys-amber-400)}.net-type-badge--sensor{background:var(--sys-orange-500-12);color:var(--sys-orange-400)}.net-type-badge--node{background:var(--surface-tint-2);color:var(--text-muted)}.obs-table-wrap{-webkit-overflow-scrolling:touch;border-radius:var(--shape-sm);border:1px solid var(--border);background:var(--surface);max-width:100%;overflow-x:auto}.obs-table{width:100%;min-width:0}.obs-table-header{z-index:2;background:var(--bg);position:sticky;top:0}.obs-th{height:40px;padding:0 var(--sp-2);font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md);font-weight:var(--fw-semibold);color:var(--text-muted);background:var(--bg);border-bottom:1px solid var(--border-subtle);white-space:nowrap;user-select:none;align-items:center;display:flex}.obs-table-header .obs-th:first-child{padding-inline-start:var(--sp-4)}.obs-table-header .obs-th:last-child{padding-inline-end:var(--sp-4)}.obs-td{height:36px;padding:0 var(--sp-2);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid var(--border-subtle);align-items:center;display:flex;overflow:hidden}.obs-td--mono{font-family:var(--mono);letter-spacing:var(--ls-body-sm)}.obs-td--num{font-variant-numeric:tabular-nums;text-align:right}.obs-td--muted{color:var(--text-muted)}.obs-td--no-clip{text-overflow:unset;overflow:visible}.obs-row{cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard)}.obs-row:nth-child(2n)>.obs-td{background:var(--surface-tint-1)}.obs-row:hover>.obs-td{background:var(--surface-hover)}.obs-row:focus-visible>.obs-td{outline:2px solid var(--border-focus);outline-offset:-2px}.obs-row:focus{outline:none}.obs-row .obs-td:first-child{padding-inline-start:var(--sp-4)}.obs-row .obs-td:last-of-type{padding-inline-end:var(--sp-4)}.obs-td--name{font-size:var(--fs-label-lg);line-height:var(--lh-label-lg);font-weight:var(--fw-medium);letter-spacing:var(--ls-label-lg)}.obs-status-badge{height:18px;padding-inline:var(--sp-1);border-radius:var(--shape-xs);font-size:10px;font-weight:var(--fw-medium);font-family:var(--mono);letter-spacing:var(--ls-label-xs);white-space:nowrap;text-transform:uppercase;justify-content:center;align-items:center;line-height:1;display:inline-flex}.obs-status-badge--online{background:var(--sys-emerald-500-12);color:var(--sys-emerald-400)}.obs-status-badge--offline{background:var(--surface-tint-1);color:var(--text-muted)}.obs-empty{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--text-muted);text-align:center;padding:var(--sp-8) var(--sp-4)}.obs-error{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--sys-red-400);padding:var(--sp-4) 0}@media (width>=1200px){.obs-page-title{font-size:var(--fs-display-lg);line-height:var(--lh-display-lg);letter-spacing:var(--ls-display-lg)}}@media (width<=839px){.obs-page-title{font-size:var(--fs-headline-lg);line-height:var(--lh-headline-lg)}.obs-table-wrap{margin-inline:calc(-1 * var(--page-px));border-inline:none;border-radius:0}}@media (width<=599px){.obs-page-title{font-size:var(--fs-display-sm);line-height:var(--lh-display-sm)}}.net-mesh-banner{align-items:center;gap:var(--sp-3);padding:var(--card-pad-tight);margin-bottom:var(--block-gap);flex-wrap:wrap;display:flex}.net-report-card{padding:var(--card-pad);margin-top:var(--section-gap)}.net-report-card-preview{white-space:pre-wrap;word-break:break-word;font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-body-md);color:var(--text-tertiary);background:var(--surface-tint-1);padding:var(--sp-3);border-radius:var(--shape-sm);max-height:240px;margin:0;overflow:auto}.net-report-header{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.net-section{margin-top:var(--section-gap)}.net-report-title{align-items:center;gap:var(--sp-2);font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);letter-spacing:var(--ls-title-lg);color:var(--text);font-weight:var(--fw-medium);flex-wrap:nowrap;flex:1;min-width:0;display:flex}.net-report-title-text{min-width:0}.net-report-title .m3-chip{flex-shrink:0;margin-left:auto}.net-rank-info-icon{color:var(--text-tertiary);cursor:help;opacity:.6;transition:opacity var(--dur-short-2) var(--ease-standard), color var(--dur-short-2) var(--ease-standard);flex-shrink:0;align-items:center;display:inline-flex}.net-rank-info-icon:hover{opacity:1;color:var(--text-muted)}.net-rank-list{gap:var(--sp-2);margin-top:var(--sp-2);--m-pkts:8ch;--m-links:4ch;--m-score:5ch;--m-gap:clamp(12px, 2.2vw, 28px);flex-direction:column;display:flex}.net-rank-row{--rank-stack-gap:var(--sp-2);align-items:baseline;gap:2px var(--sp-3);padding-block:var(--sp-3);padding-inline:var(--sp-2);color:inherit;transition:background var(--dur-short-2) var(--ease-standard), transform var(--dur-short-2) var(--ease-standard);--rank-indent:24px;grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr) auto;text-decoration:none;display:grid}.net-rank-row:not(.net-rank-row--short){min-height:72px}.net-rank-row:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.net-rank-row.net-rank-row--short{padding-block:var(--sp-2);--rank-indent:20px;align-items:center;gap:1px 0}.net-rank-row--short .net-rank-identity{gap:1px}.net-rank-row--short .net-rank-name{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm)}.net-rank-row--short .net-rank-sub{gap:var(--sp-1);font-size:10px;line-height:1.1}.net-rank-row--short .nd-micro-stat-sub{display:none}.net-rank-row--short .net-rank-save{align-self:center}.net-rank-row--short .net-rank-meters-grid{align-items:baseline}.net-rank-save{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.net-rank-identity{grid-row:1/-1;grid-template-rows:subgrid;align-items:center;min-width:0;display:grid}.net-rank-name{align-items:center;gap:var(--sp-1);font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);font-weight:var(--fw-medium);color:var(--text);min-width:0;display:inline-flex}.net-rank-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:var(--fw-semibold);overflow:hidden}.net-rank-name-num{width:var(--rank-indent);font-family:var(--mono);font-weight:var(--fw-medium);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);font-variant-numeric:tabular-nums;vertical-align:baseline;flex-shrink:0;display:inline-block}.net-rank-sub{align-items:center;gap:var(--sp-2);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);color:var(--text-muted);padding-inline-start:var(--rank-indent);display:inline-flex}.net-rank-detail{padding-inline-start:var(--rank-indent)}.net-rank-zone{border-radius:var(--shape-xs);background:var(--surface-tint-2);height:16px;font-family:var(--mono);font-weight:var(--fw-medium);letter-spacing:.06em;white-space:nowrap;color:var(--text-muted);text-transform:uppercase;text-overflow:ellipsis;justify-content:center;align-items:center;max-width:200px;padding-inline:4px;font-size:9px;line-height:1;display:inline-flex;overflow:hidden}.net-rank-meters{grid-row:1/-1;grid-template-rows:subgrid;align-items:center;min-width:0;display:grid}.net-rank-empty{padding:var(--sp-8) var(--sp-4);text-align:center;color:var(--text-muted);border:1px dashed var(--border-subtle);border-radius:var(--shape-md);background:var(--surface)}.net-rank-meters-grid{grid-row:1/-1;grid-template-columns:5ch max-content;grid-template-rows:subgrid;gap:0 var(--sp-2);font-family:var(--mono);font-variant-numeric:tabular-nums;justify-content:end;align-items:center;display:grid}.net-rank-meters-grid .nd-micro-stat{display:contents}.net-rank-meters-grid .nd-micro-stat-sub{border-radius:var(--shape-xs);background:var(--surface-tint-2);height:16px;font-size:9px;font-family:var(--mono);font-weight:var(--fw-medium);letter-spacing:.06em;white-space:nowrap;color:var(--text-muted);text-transform:uppercase;justify-content:center;justify-self:start;align-items:center;width:max-content;padding-inline:4px;line-height:1;display:inline-flex}.net-rank-meters-grid .nd-micro-stat-value{font-size:var(--fs-label-sm);text-align:right;justify-self:end;line-height:1.2}.net-rank-right-slots{justify-content:end;place-items:center start;gap:var(--sp-6);grid-row:1/-1;grid-template-columns:max-content max-content;min-width:0;display:grid}.net-rank-right-slots .net-rank-slot{text-align:right;flex-direction:column;justify-content:center;align-items:flex-end;min-width:0;display:flex}.net-rank-right-slots .bento-card__content,.net-rank-right-slots .bento-card__label{text-align:right}.net-rank-right-slots .bento-card__headline{justify-content:flex-end}.net-rank-right-slots .bento-card__label{font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);font-variant-numeric:tabular-nums}.net-rank-right-slots .net-rank-slot:empty,.net-rank-right-slots .net-rank-slot:not(:has(.bento-card__content)):not(:has(.nd-micro-stat)){display:none}.net-rank-stack{flex-direction:column;gap:0;display:flex}.net-rank-stack__trigger{z-index:3;justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-1) var(--sp-2);border:1px solid var(--border);border-radius:var(--shape-md);background:var(--bg);cursor:pointer;color:var(--text-muted);text-align:left;width:100%;transition:background var(--dur-short-2) var(--ease-standard), border-color var(--dur-short-2) var(--ease-standard);font-family:inherit;display:flex;position:relative}.net-rank-stack__trigger:hover{border-color:var(--border-hover);background:var(--surface-hover)}.net-rank-stack__trigger:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.net-rank-stack__info{align-items:center;gap:var(--sp-2);display:inline-flex}.net-rank-stack__count-badge{border-radius:var(--shape-xs);background:var(--surface-tint-2);height:16px;font-size:9px;font-family:var(--mono);font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--text-muted);justify-content:center;align-items:center;padding-inline:5px;display:inline-flex}.net-rank-stack__text{font-size:var(--fs-label-xs);color:var(--text-tertiary);font-family:var(--mono);letter-spacing:.02em}.net-rank-stack__expand-btn{border-radius:var(--shape-xs);background:var(--surface-tint-2);height:16px;font-size:9px;font-family:var(--mono);font-weight:var(--fw-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:3px;padding-inline:5px;display:inline-flex}.net-rank-stack__peek{border-style:solid;border-width:0 1px 1px;border-color:var(--border);border-radius:0 0 var(--shape-md) var(--shape-md);background:var(--bg)}.net-rank-stack__peek--1{height:3px;margin-inline:5px}.net-rank-stack__peek--2{opacity:.5;height:3px;margin-inline:10px}.net-rank-collapse{all:unset;justify-content:center;align-items:center;gap:var(--sp-1);box-sizing:border-box;width:100%;padding:var(--sp-1) var(--sp-2);border:1px solid var(--border-subtle);border-radius:var(--shape-md);font-size:var(--fs-label-xs);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);cursor:pointer;transition:border-color var(--dur-short-2) var(--ease-standard), color var(--dur-short-2) var(--ease-standard);display:inline-flex}.net-rank-collapse:hover{border-color:var(--border);color:var(--text-muted)}.net-rank-collapse:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}@media (width<=1100px){.net-rank-list{--m-pkts:7ch;--m-links:3ch;--m-score:5ch;--m-gap:clamp(10px, 1.6vw, 20px)}}@media (width<=840px){.net-rank-list{--m-gap:clamp(10px, 2.2vw, 18px)}.obs-page .pane-row{gap:var(--sp-3)}.net-report-title{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);gap:var(--sp-1)}}.obs-page .pane-row{flex-direction:row}@media (width>=600px){.net-rank-row:has(.net-rank-right-slots){border-radius:var(--shape-xl);padding-inline:var(--sp-4)}}@media (width<=599px){.net-rank-row{align-items:start;column-gap:var(--sp-2);row-gap:var(--rank-stack-gap);padding-block:var(--sp-2);grid-template-rows:auto auto auto auto;grid-template-columns:minmax(0,1fr) auto}.net-rank-row:not(.net-rank-row--short){height:94px}.net-rank-row.net-rank-row--short{column-gap:var(--sp-1);grid-template-rows:auto auto auto;min-height:54px}.net-rank-identity{display:contents}.net-rank-name-text,.net-rank-name{grid-area:1/1/auto/-1;align-self:start;min-width:0}.net-rank-row:has(.net-rank-right-slots) .net-rank-name-text,.net-rank-row:has(.net-rank-right-slots) .net-rank-name{grid-column:1}.net-rank-name{font-size:var(--fs-body-md);line-height:1}.net-rank-name-text{line-height:1}.net-rank-save{align-self:center;padding-block:0}.net-rank-sub{flex-wrap:nowrap;grid-area:2/1;justify-content:flex-start;padding-block:0;line-height:1;overflow:hidden}.net-rank-detail{grid-area:4/1;padding-block:0;line-height:1}.net-rank-meters{flex-direction:column;grid-area:2/2/-1;align-self:stretch;display:flex}.net-rank-meters-grid{flex-direction:column;flex:1;justify-content:space-between;align-items:flex-end;gap:0;display:flex}.net-rank-meters-grid .nd-micro-stat{align-items:baseline;gap:var(--sp-1);white-space:nowrap;flex-direction:row;padding-block:0;display:flex!important}.net-rank-meters-grid .nd-micro-stat-value{text-align:right;font-variant-numeric:tabular-nums;order:0}.net-rank-meters-grid .nd-micro-stat-sub{flex-shrink:0;order:1}.net-rank-row:not(.net-rank-row--short) .net-rank-meters-grid .nd-micro-stat:only-child{margin-top:auto}.net-rank-row--short .nd-micro-stat:not(:first-child):not(:last-child){display:none}.net-rank-row--short .net-rank-meters-grid{align-items:flex-end}.net-rank-row--short .nd-micro-stat-sub{display:inline-flex}.net-rank-right-slots{display:contents}.net-rank-right-slots>.net-rank-slot:first-child{grid-area:3/1;min-width:0;padding-inline-start:var(--rank-indent);padding-inline-end:var(--sp-1)}.net-rank-right-slots>.net-rank-slot:first-child .bento-card__content{align-items:baseline;gap:var(--sp-2);flex-direction:row;width:100%;display:flex}.net-rank-right-slots>.net-rank-slot:first-child .bento-card__headline{order:0}.net-rank-right-slots>.net-rank-slot:first-child .bento-card__label{border-radius:var(--shape-xs);background:var(--surface-tint-2);height:16px;font-family:var(--mono);font-weight:var(--fw-medium);letter-spacing:.06em;white-space:nowrap;color:var(--text-muted);text-transform:uppercase;order:1;justify-content:center;align-self:center;align-items:center;padding-inline:4px;font-size:9px;line-height:1;display:inline-flex;margin-bottom:0!important}.net-rank-right-slots>.net-rank-slot:last-child{grid-area:1/2/-1;align-self:stretch;min-width:0;display:flex}.net-rank-right-slots .net-rank-meters-grid{column-gap:var(--sp-2);row-gap:var(--rank-stack-gap);flex:initial;grid-template-columns:5ch max-content;justify-content:end;align-self:stretch;align-items:center;display:grid}.net-rank-right-slots .net-rank-meters-grid .nd-micro-stat{display:contents!important}.net-rank-right-slots .net-rank-meters-grid .nd-micro-stat-value{order:unset;text-align:right;justify-self:end}.net-rank-right-slots .net-rank-meters-grid .nd-micro-stat-sub{order:unset;justify-self:start;width:max-content}.net-rank-right-slots:not(:has(.nd-micro-stat))>.net-rank-slot:first-child{grid-area:1/2/-1;align-self:center;min-width:0;max-width:100%;padding-inline:0;overflow:hidden}.net-rank-right-slots:not(:has(.nd-micro-stat))>.net-rank-slot:first-child .bento-card__content{justify-content:flex-end;min-width:0;max-width:100%}.net-rank-right-slots:not(:has(.nd-micro-stat)) .bento-card__value{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg)}.net-rank-right-slots .bento-card__value{font-size:var(--fs-body-md);line-height:var(--lh-body-md)}.net-rank-row:has(.net-rank-right-slots):not(.net-rank-row--short){grid-template-rows:auto auto auto;height:auto;min-height:0}.net-rank-list{gap:var(--sp-1)}.net-report-title{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);gap:var(--sp-1)}.obs-page .pane-row{gap:calc(var(--sp-3) - 2px)}}@media (width<=480px){.net-rank-sub .net-rank-zone~.net-rank-zone~.net-rank-zone,.net-rank-sub .net-rank-zone~.net-rank-zone~.net-rank-zone~.net-rank-zone{display:none}.net-rank-detail{line-height:var(--lh-label-xs)}}@media (width<=390px){.net-rank-row{column-gap:var(--sp-1)}.net-rank-row.net-rank-row--short{column-gap:var(--sp-1);padding-block:var(--sp-1)}.net-rank-row:not(.net-rank-row--short) .net-rank-meters-grid{row-gap:var(--sp-2)}.net-rank-zone{display:none}.net-rank-row:not(.net-rank-row--short){height:110px}.obs-page .pane-row{gap:calc(var(--sp-2) - 2px)}.net-rank-right-slots{gap:var(--sp-1)}.net-rank-right-slots .bento-card__value{font-size:var(--fs-title-sm)}.net-report-title .m3-chip{display:none}.net-report-title{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);gap:2px}.net-report-title>svg,.net-report-title .net-report-icon,.net-report-title .net-rank-info-icon{display:none}}.nd-page{--page-pt:var(--sp-4);--page-px:0;padding:var(--page-pt) var(--page-px) var(--page-pb)}.nd-back{margin-bottom:var(--sp-3)}.nd-error{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--sys-red-400);padding:var(--sp-6) 0}.nd-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--section-gap);flex-wrap:wrap;display:flex}.nd-header-left{gap:var(--sp-2);flex-direction:column;display:flex}.nd-title{font-size:var(--fs-display-sm);line-height:var(--lh-display-sm);letter-spacing:var(--ls-display-sm);color:var(--text)}.nd-pubkey-chip{all:unset;height:18px;padding-inline:var(--sp-1);border-radius:var(--shape-xs);font-family:var(--mono);font-size:10px;font-weight:var(--fw-medium);letter-spacing:var(--ls-label-xs);white-space:nowrap;text-transform:uppercase;background:var(--surface-tint-2);color:var(--text-muted);cursor:pointer;transition:color var(--dur-short-2) var(--ease-standard), background var(--dur-short-2) var(--ease-standard);align-items:center;gap:4px;line-height:1;display:inline-flex}.nd-pubkey-chip:hover{background:var(--surface-tint-4);color:var(--text)}.nd-sections{gap:var(--section-gap);flex-direction:column;display:flex}.nd-mini-charts{gap:var(--grid-gutter);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=839px){.nd-mini-charts{grid-template-columns:1fr 1fr}.nd-mini-charts>:first-child{grid-column:1/-1}}.nd-card{padding:var(--card-pad)}.nd-card-title{align-items:center;gap:var(--sp-2);font-size:var(--fs-title-md);line-height:var(--lh-title-md);letter-spacing:var(--ls-title-md);font-weight:var(--fw-medium);color:var(--text);margin-bottom:var(--sp-4);display:flex}.nd-neighbours-wrap,.nd-adverts-wrap{-webkit-overflow-scrolling:touch;border-radius:var(--shape-sm);border:1px solid var(--border);overflow-x:auto}.nd-table-header{z-index:1;background:var(--surface);position:sticky;top:0}.nd-th{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);font-weight:var(--fw-semibold);color:var(--text-muted);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.nd-th--num{text-align:right}.nd-td{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text);padding:var(--sp-2) var(--sp-3);white-space:nowrap;text-overflow:ellipsis;min-height:36px;overflow:hidden}.nd-td--num{font-variant-numeric:tabular-nums;text-align:right}.nd-td--muted{color:var(--text-muted)}.nd-row{transition:background var(--dur-short-2) var(--ease-standard)}.nd-row:hover{background:var(--surface-tint-1)}.nd-row--clickable{cursor:pointer}.nd-row--clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.nd-row:nth-child(2n)>.nd-td{background:var(--surface-tint-1)}@media (width<=599px){.nd-header{flex-direction:column}}.nd-chart-card{flex-direction:column;gap:0;min-height:280px;padding:0;display:flex;overflow:hidden}.nd-chart-card .wc-container{flex:1;min-height:0;padding:0}.nd-chart-card .wc-header{padding:var(--sp-2) var(--sp-3) var(--sp-1) var(--sp-3);padding-bottom:var(--sp-1);gap:var(--sp-2);justify-content:space-between;align-items:center;display:flex}.nd-chart-card .wc-footer{padding:0}.nd-chart-card .wc-chart-zone{flex:1;min-height:0}.nd-chart-card .wc-y-frame,.nd-chart-card .wc-well{border:none}.nd-chart-title{align-items:center;gap:var(--sp-2);font-size:var(--fs-label-md);line-height:var(--lh-label-md);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;display:flex}.nd-chart-empty{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-muted);padding:var(--sp-4) 0}.bento-grid{grid-template-columns:repeat(var(--bento-cols,2), 1fr);gap:var(--sp-4);display:grid}@media (width<=899px){.bento-grid{grid-template-columns:1fr}}.bento-card{flex-direction:column;justify-content:space-between;padding:0;display:flex;overflow:hidden}.bento-card__content{padding:var(--sp-4) var(--sp-4) var(--sp-2)}.bento-card__label{font-size:var(--fs-body-md);line-height:var(--lh-body-md);color:var(--text-muted);margin-bottom:6px}.bento-card__headline{align-items:baseline;gap:var(--sp-2);display:flex}.bento-card__value{font-size:26px;font-family:var(--mono);font-weight:var(--fw-medium);color:var(--text);line-height:1}.bento-card__delta{font-size:var(--fs-title-sm);font-weight:var(--fw-medium);white-space:nowrap;align-items:baseline;gap:4px;display:inline-flex}.bento-card__delta>svg{flex-shrink:0;align-self:center}.nd-stat-card{align-items:center;gap:var(--sp-2);padding:var(--sp-6) var(--sp-4);text-align:center;flex-direction:column;display:flex}.nd-stat-icon{color:var(--accent-light)}.nd-stat-value{font-size:var(--fs-headline-md);line-height:var(--lh-headline-md);letter-spacing:var(--ls-headline-md);color:var(--text);font-variant-numeric:tabular-nums}.nd-stat-label{font-size:var(--fs-label-md);line-height:var(--lh-label-md);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.nd-neighbours-map{border-radius:var(--shape-md);border:1px solid var(--border);height:280px;margin-bottom:var(--sp-3);overflow:hidden}.nd-neighbours-map .maplibregl-canvas{border-radius:var(--shape-md)}.nd-status-card{padding:0}.nd-status-card .m3-tab-bar{border-bottom:1px solid var(--border-subtle)}.nd-status-body{padding:var(--sp-3) 0}.nd-status-panel{animation:.2s nd-fade-in}@keyframes nd-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.nd-status-icon-wrap{justify-content:center;align-items:center;width:32px;height:32px;display:flex}.nd-status-ago{font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);color:var(--text-muted);white-space:nowrap}.nd-status-mono{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);font-family:var(--mono);color:var(--text)}.nd-status-empty{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-muted);text-align:center;padding:var(--sp-6) var(--sp-4)}.nd-status-card .m3-list-tile{align-items:center;column-gap:var(--sp-4);grid-template-columns:auto auto minmax(0,1fr);display:grid}.nd-status-card .m3-list-tile:not(:has(.m3-list-tile__leading)){grid-template-columns:auto minmax(0,1fr)}.nd-status-card .m3-list-tile__title{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.nd-status-card .m3-list-tile__trailing{justify-content:flex-end;min-width:0}.nd-status-card .pkt-badge--truncate{max-width:100%}.nd-micro-stat{padding:var(--sp-4) var(--sp-4) var(--sp-3);gap:var(--sp-2);background:0 0;flex-direction:column;display:flex}.nd-micro-stat-value{font-size:26px;font-family:var(--mono);font-weight:var(--fw-medium);color:var(--text);letter-spacing:var(--ls-headline-sm);font-variant-numeric:tabular-nums;line-height:1}.nd-micro-stat-sub{font-size:var(--fs-label-xs);font-family:var(--mono);color:var(--text-muted)}.nd-broker-cards{gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);flex-direction:column;display:flex}.nd-broker-card{padding:var(--sp-3) var(--sp-4)}.nd-broker-card-row{align-items:center;gap:var(--sp-3);display:flex}.nd-broker-card-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.nd-broker-card-host{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);font-family:var(--mono);color:var(--text);font-weight:var(--fw-medium)}.nd-broker-card-time{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);color:var(--text-muted)}.nd-broker-card-icon{color:var(--text-muted);flex-shrink:0}@media (width<=599px){.nd-status-body{padding:var(--sp-2) 0}.nd-status-card .m3-list-tile{gap:var(--sp-3);padding:var(--sp-2) var(--sp-3)}.nd-status-card .m3-list-tile__title{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md)}.nd-broker-cards,.nd-broker-card{padding:var(--sp-2) var(--sp-3)}.nd-broker-card-row{gap:var(--sp-2)}.nd-status-card .outpost-event-row{column-gap:var(--sp-2);min-height:auto;padding:var(--sp-2) var(--sp-3);flex-wrap:wrap;row-gap:2px}.nd-status-card .outpost-event-label{min-width:0}.nd-status-card .outpost-event-broker{display:none}.nd-status-ago,.nd-status-dim{font-size:var(--fs-label-sm)}}.nd-strength-val{font-variant-numeric:tabular-nums;font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.nd-infotip{color:var(--text-muted);cursor:pointer;vertical-align:middle;align-items:center;margin-left:4px;transition:color .15s;display:inline-flex;position:relative}.nd-infotip:hover,.nd-infotip--open{color:var(--accent-light)}.nd-infotip-bubble{width:max-content;max-width:260px;padding:var(--sp-2) var(--sp-3);border-radius:var(--shape-sm);background:var(--sys-slate-800);border:1px solid var(--border);color:var(--text);font-family:var(--font);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);font-weight:var(--fw-medium);white-space:normal;text-transform:none;z-index:9999;box-shadow:0 4px 16px var(--sys-black-60);animation:.12s ease-out nd-infotip-in;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}@keyframes nd-infotip-in{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.nd-infotip-bubble:after{content:"";border:5px solid #0000;border-top-color:var(--sys-slate-800);position:absolute;top:100%;left:50%;transform:translate(-50%)}.nd-topo-summary{gap:var(--sp-2);padding:0 var(--sp-4) var(--sp-3);flex-wrap:wrap;display:flex}.nd-topo-list{flex-direction:column;display:flex}.nd-topo-row{border-top:1px solid var(--border-subtle)}.nd-topo-row:last-child{border-bottom:none}.nd-topo-row--expanded{background:var(--surface)}.nd-topo-row-main{padding:var(--sp-3) var(--sp-4);cursor:pointer;justify-content:space-between;align-items:center;gap:var(--sp-3);transition:background .15s;display:flex}.nd-topo-row-main:hover{background:var(--surface-hover)}.nd-topo-peer{align-items:center;gap:var(--sp-2);flex:1;min-width:0;display:flex}.nd-topo-quality-dot{border-radius:var(--shape-full);flex-shrink:0;width:8px;height:8px}.nd-topo-peer-info{flex-direction:column;min-width:0;display:flex}.nd-topo-peer-name{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);font-weight:var(--fw-medium);color:var(--text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nd-topo-peer-name--link{cursor:pointer}.nd-topo-peer-name--link:hover{color:var(--accent-light);text-decoration:underline}.nd-topo-peer-meta{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);color:var(--text-muted)}.nd-topo-row-stats{align-items:center;gap:var(--sp-4);flex-shrink:0;display:flex}.nd-topo-stat{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap}.nd-topo-strength{align-items:center;gap:6px;min-width:80px;display:flex}.nd-strength-track{border-radius:var(--shape-full);background:var(--surface-active);flex-shrink:0;width:48px;height:6px;overflow:hidden}.nd-strength-fill{border-radius:var(--shape-full);height:100%;transition:width .3s}.nd-topo-chevron{color:var(--text-muted);flex-shrink:0}.nd-topo-detail{padding:var(--sp-2) var(--sp-4) var(--sp-4);gap:var(--sp-3);flex-direction:column;display:flex}.nd-topo-section{padding:var(--sp-3);gap:var(--sp-2);border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.nd-topo-section-header{font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md);font-weight:var(--fw-semibold);color:var(--text-muted);margin-bottom:var(--sp-1);align-items:center;gap:6px;display:flex}.nd-topo-quality-grid{gap:var(--sp-2);text-align:center;padding:var(--sp-2) 0;grid-template-columns:repeat(3,1fr);display:grid}.nd-topo-quality-item{flex-direction:column;align-items:center;display:flex}.nd-topo-quality-value{font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);letter-spacing:var(--ls-title-lg);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;color:var(--text)}.nd-topo-quality-unit{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);font-weight:var(--fw-medium);color:var(--text-muted);margin-top:1px}.nd-topo-quality-label{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);color:var(--text-muted);margin-top:2px}.nd-topo-trailing-value{font-size:var(--fs-body-md);line-height:var(--lh-body-md);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;color:var(--text);align-items:center;gap:4px;display:inline-flex}.nd-topo-detail-pct{font-weight:var(--fw-medium);color:var(--text-muted);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.nd-topo-flow{gap:var(--sp-2);flex-direction:column;display:flex}.nd-topo-flow-bar-wrap{flex-direction:column;gap:4px;display:flex}.nd-topo-flow-labels{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--text-muted);justify-content:space-between;display:flex}.nd-topo-flow-bar{border-radius:var(--shape-full);background:var(--surface-active);height:8px;display:flex;overflow:hidden}.nd-topo-flow-out{background:var(--sys-cyan-400);height:100%;transition:width .3s}.nd-topo-flow-in{background:var(--sys-indigo-400);height:100%;transition:width .3s}.nd-topo-flow-dot{border-radius:var(--shape-full);width:8px;height:8px;display:inline-block}.nd-topo-flow-dot--out{background:var(--sys-cyan-400)}.nd-topo-flow-dot--in{background:var(--sys-indigo-400)}.nd-topo-flow-label{color:var(--text-muted);align-items:center;gap:4px;font-size:.78rem;display:inline-flex}.nd-topo-flow-chips{padding-top:var(--sp-1);flex-wrap:wrap;gap:6px;display:flex}.nd-topo-flow-empty{color:var(--text-muted);padding:var(--sp-2) 0;font-size:.8rem}.nd-topo-detail-age{color:var(--text-muted);padding-top:var(--sp-2);border-top:1px solid var(--border-subtle);justify-content:space-between;font-size:.72rem;display:flex}.outpost-hero{text-align:center;padding-block:var(--sp-20);flex-direction:column;align-items:center;display:flex}.outpost-hero .hero-title{margin-top:var(--sp-4);margin-bottom:0}.outpost-art-wrapper{pointer-events:none;z-index:0;width:480px;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.outpost-pulse-origin{width:1px;height:1px;position:absolute;top:72px;left:50%;transform:translate(-50%)}.outpost-hero-subtitle{margin-top:var(--sp-4);max-width:36ch;color:var(--text);text-wrap:balance}.outpost-hero-actions{margin-top:var(--sp-9);z-index:1;justify-content:center;display:flex;position:relative}.outpost-hero .hero-title,.outpost-hero .hero-subtitle{z-index:1;position:relative}.outpost-header-row{margin-bottom:var(--sp-4)}.outpost-title{font-size:var(--fs-headline-sm);line-height:var(--lh-headline-sm);letter-spacing:var(--ls-headline-sm);color:var(--text);white-space:nowrap;margin:0}.outpost-feature-stats{margin-bottom:var(--sp-5)}.outpost-tonal{background:0 0}.outpost-stat-card{align-items:center;gap:var(--sp-2);padding:var(--card-pad);text-align:center;transition:transform var(--dur-short-3) var(--ease-standard), box-shadow var(--dur-short-3) var(--ease-standard), background var(--dur-short-3) var(--ease-standard);flex-direction:column;display:flex}.outpost-stat-value{font-size:var(--fs-headline-md);line-height:var(--lh-headline-md);letter-spacing:var(--ls-headline-md);font-weight:var(--fw-semibold);color:var(--text);font-variant-numeric:tabular-nums}.outpost-stat-label{font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md);color:var(--text-muted);font-family:var(--mono)}.outpost-card-grid{margin-bottom:var(--sp-6)}.outpost-obs-card.m3-card{transition:transform var(--dur-short-4) var(--ease-standard), box-shadow var(--dur-short-4) var(--ease-standard);flex-direction:row;gap:0;padding:0;display:flex;overflow:hidden}.outpost-obs-card.m3-card:hover{box-shadow:var(--elevation-2);transform:translateY(-2px)}.outpost-obs-map{border-radius:var(--shape-lg) 0 0 var(--shape-lg);background:var(--surface-sunken);flex-shrink:0;width:320px;min-height:220px;overflow:hidden}.outpost-obs-map .maplibregl-canvas{border-radius:var(--shape-lg) 0 0 var(--shape-lg)}.outpost-obs-map-empty{width:100%;height:100%;color:var(--text-muted);background:var(--surface-sunken);justify-content:center;align-items:center;display:flex}.outpost-obs-info{gap:var(--sp-3);padding:var(--card-pad-hero);flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.outpost-obs-title-row{align-items:center;gap:var(--sp-3);display:flex}.outpost-obs-name{font:var(--title-lg);font-weight:var(--fw-medium);color:var(--text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.outpost-obs-subtitle{font:var(--body-md);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.outpost-obs-stats{align-items:center;gap:var(--sp-3);font:var(--label-md);color:var(--text);font-variant-numeric:tabular-nums;font-family:var(--mono);flex-wrap:wrap;display:flex}.outpost-obs-stats-sep{color:var(--text-muted);opacity:.5}.outpost-obs-footer{font:var(--label-sm);color:var(--text-tertiary);font-family:var(--mono)}.outpost-obs-delete-btn{border-radius:var(--shape-full);width:28px;height:28px;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--dur-short-2) var(--ease-standard), background var(--dur-short-2) var(--ease-standard), color var(--dur-short-2) var(--ease-standard);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.outpost-obs-card:hover .outpost-obs-delete-btn{opacity:1}.outpost-obs-delete-btn:hover{background:var(--sys-red-500-12);color:var(--sys-red-400)}@media (width<=839px){.outpost-obs-map{width:240px;min-height:180px}.outpost-obs-info{padding:var(--card-pad);gap:var(--sp-2)}.outpost-obs-name{font:var(--title-md);font-weight:var(--fw-medium)}.outpost-obs-subtitle{font:var(--body-sm)}.outpost-obs-stats{font:var(--label-sm);gap:var(--sp-2)}.outpost-obs-footer{font:var(--label-xs)}}@media (width<=479px){.outpost-obs-card.m3-card{flex-direction:column}.outpost-obs-map{width:100%;height:180px;min-height:unset;border-radius:var(--shape-lg) var(--shape-lg) 0 0}.outpost-obs-map .maplibregl-canvas{border-radius:var(--shape-lg) var(--shape-lg) 0 0}.outpost-obs-info{padding:var(--card-pad-tight);gap:var(--sp-2)}.outpost-obs-name{font:var(--title-md);font-weight:var(--fw-medium)}}.outpost-hero-art{opacity:.9;width:100%;height:auto;display:block}.account-page{--page-px:0;padding:var(--page-pt) var(--page-px) var(--page-pb);max-width:640px}.account-header{margin-bottom:var(--section-gap)}.account-title{font-size:var(--fs-display-sm);line-height:var(--lh-display-sm);letter-spacing:var(--ls-display-sm);color:var(--text);margin-bottom:var(--sp-1)}.account-subtitle{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);letter-spacing:var(--ls-body-lg);color:var(--text-muted)}.account-card{padding:var(--card-pad);margin-bottom:var(--card-gap)}.account-card-title{align-items:center;gap:var(--sp-2);font-size:var(--fs-title-md);line-height:var(--lh-title-md);letter-spacing:var(--ls-title-md);font-weight:var(--fw-medium);color:var(--text);margin-bottom:var(--sp-4);display:flex}.account-card-title svg{color:var(--text-accent)}.account-field{padding:var(--sp-3) 0;justify-content:space-between;align-items:center;display:flex}.account-field+.account-field{border-top:1px solid var(--border-subtle)}.account-field-label{font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.account-field-value{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--text);font-family:var(--mono);text-align:right;word-break:break-all}.account-provider-badge{font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);font-weight:var(--fw-semibold);border-radius:var(--shape-full);background:var(--sys-indigo-500-12);color:var(--text-accent);text-transform:capitalize;padding:2px 8px;display:inline-block}.account-actions{gap:var(--sp-3);margin-top:var(--sp-3);display:flex}.account-hint{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-muted)}.account-danger-zone{border-color:var(--sys-red-500-12)}.account-danger-zone .account-card-title svg{color:var(--sys-red-400)}.account-delete-btn.m3-btn--filled{background:var(--sys-red-500);color:var(--sys-white)}.account-delete-btn.m3-btn--filled:hover{background:var(--sys-red-600)}.wc-container{min-height:0;padding:var(--sp-4);flex-direction:column;display:flex}.wc-header{justify-content:space-between;align-items:center;gap:var(--sp-3);padding-bottom:var(--sp-3);flex-shrink:0;display:flex}.wc-chart-zone{flex:1;min-height:0;position:relative}.wc-y-axis{flex-direction:column;justify-content:space-between;align-items:flex-start;padding-top:6px;padding-bottom:6px;display:flex;position:absolute;top:0;bottom:20px;left:0}.wc-y-frame{border:1px solid var(--border);border-radius:var(--shape-sm);background:0 0;position:absolute}.wc-y-label{font-family:var(--mono);font-size:var(--fs-label-xs);line-height:var(--lh-label-xs);color:var(--text-tertiary);white-space:nowrap;pointer-events:none;padding-left:8px;padding-right:8px}.wc-well{border-radius:var(--shape-sm);border:1px solid var(--border);z-index:1;position:absolute;overflow:hidden}.wc-canvas{border-radius:inherit;width:100%;height:100%;overflow:hidden}.wc-empty{height:100%;font-family:var(--mono);font-size:var(--fs-label-sm);color:var(--text-tertiary);justify-content:center;align-items:center;display:flex}.wc-x-axis{pointer-events:none;align-items:center;padding-top:4px;display:flex;position:absolute;bottom:0;left:0;right:0}.wc-x-label{font-family:var(--mono);font-size:var(--fs-label-xs);line-height:var(--lh-label-xs);color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;position:absolute}@media (width<=599px){.wc-x-label--mobile-hidden{display:none}}.wc-footer{padding:var(--sp-2) var(--sp-3) 0;flex-shrink:0}.wc-legend{gap:var(--sp-1) var(--sp-4);font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);flex-wrap:wrap;display:flex}.wc-legend-item{transition:opacity var(--dur-short-2) var(--ease-standard);align-items:center;gap:6px;display:flex}.wc-legend-item--dimmed{opacity:.3}.wc-legend-swatch{border-radius:var(--shape-sm);flex-shrink:0;width:12px;height:12px}.wc-legend-label{color:var(--text-muted)}.wc-legend-value{color:var(--text-tertiary);font-variant-numeric:tabular-nums}.save-node-btn{cursor:pointer;border-radius:var(--shape-sm);color:var(--text-tertiary);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:color .15s,transform .15s;display:inline-flex}.save-node-btn:hover{color:var(--sys-yellow-400);transform:scale(1.15)}.save-node-btn--saved{color:var(--sys-yellow-400)}.outpost-section-card.m3-card{margin-top:var(--section-gap);padding:var(--card-pad);background:var(--surface)}.outpost-saved-header{justify-content:space-between;align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.outpost-saved-title{align-items:center;gap:var(--sp-2);font-size:var(--fs-title-md);line-height:var(--lh-title-md);letter-spacing:var(--ls-title-md);font-weight:var(--fw-medium);color:var(--text);margin:0;display:flex}.outpost-saved-count{font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md);color:var(--text-muted)}.outpost-saved-filters{gap:var(--sp-2);flex-wrap:wrap;display:flex}.outpost-saved-empty{text-align:center;padding:var(--sp-6);color:var(--text-tertiary);font-family:var(--mono);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm)}.outpost-event-log{background:var(--surface);border-radius:var(--shape-lg);flex-direction:column;gap:1px;max-height:400px;display:flex;overflow:hidden auto}.outpost-event-row{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);min-height:36px;display:flex}.outpost-event-row:hover{background:var(--surface-hover)}.outpost-event-dot{border-radius:var(--shape-full);flex-shrink:0;width:6px;height:6px}.outpost-event-icon{flex-shrink:0;display:inline-flex}.outpost-event-label{font-weight:var(--fw-semibold);color:var(--text);white-space:nowrap;min-width:90px}.outpost-event-device{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);overflow:hidden}.outpost-event-reason{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);flex:1;overflow:hidden}.outpost-event-broker{color:var(--text-tertiary);font-family:var(--mono);font-size:var(--fs-label-sm);line-height:var(--lh-label-sm);letter-spacing:var(--ls-label-sm);white-space:nowrap;flex-shrink:0}.outpost-event-time{color:var(--text-tertiary);white-space:nowrap;text-align:right;flex-shrink:0;min-width:48px}.connect-page{padding:var(--page-pt) var(--page-px) var(--page-pb)}.connect-card{padding:var(--card-pad);margin-bottom:var(--card-gap)}.connect-card-heading{align-items:center;gap:var(--sp-3);font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);letter-spacing:var(--ls-title-lg);font-weight:var(--fw-medium);color:var(--text);margin:0 0 var(--sp-3);display:flex}.connect-eyebrow{font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:.08em;font-weight:var(--fw-semibold);color:var(--text-tertiary);text-transform:uppercase;margin:var(--sp-12) 0 var(--sp-3)}.connect-eyebrow:first-child{margin-top:0}.connect-lead{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);letter-spacing:var(--ls-body-lg);color:var(--text);margin:0 0 var(--sp-8);max-width:72ch}.connect-body{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--text-muted);margin-bottom:var(--sp-6);max-width:72ch}.connect-body:last-child{margin-bottom:0}.connect-caption{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-tertiary);margin:var(--sp-2) 0 var(--sp-6);max-width:72ch}.connect-body strong,.connect-list strong,.connect-note strong,.connect-caption strong{color:var(--text)}.connect-note{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-muted);border-left:2px solid var(--sys-indigo-500);padding:var(--sp-1) 0 var(--sp-1) var(--sp-4);margin:var(--sp-8) 0;background:0 0;border-radius:0;max-width:72ch}.connect-settings-grid{background:var(--surface-tint-1);border-radius:var(--shape-sm);padding:0 var(--sp-4);margin-bottom:var(--sp-8);flex-direction:column;gap:0;display:flex}.connect-setting{padding:var(--sp-2) 0;border-bottom:1px solid var(--surface-tint-2);justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.connect-setting:last-child{border-bottom:none}.connect-setting-label{font-size:var(--fs-label-md);line-height:var(--lh-label-md);letter-spacing:var(--ls-label-md);font-weight:var(--fw-semibold);color:var(--text);white-space:nowrap}.connect-setting-value{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text);font-family:var(--mono);text-align:right;word-break:break-word}.connect-list{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);color:var(--text-muted);padding-left:var(--sp-5);margin-bottom:var(--sp-6);max-width:72ch}.connect-list li{margin-bottom:var(--sp-2)}.connect-list li::marker{color:var(--text-accent)}.connect-list:has(li:only-child){padding-left:0;list-style:none}.connect-link{color:var(--text-accent);transition:color var(--dur-short-2) var(--ease-standard);text-decoration:none}.connect-link:hover{color:var(--sys-indigo-300);text-decoration:underline}.connect-link svg{vertical-align:middle;margin-left:2px;display:inline-block}.connect-code{margin-bottom:var(--sp-6);position:relative}.connect-code:has(+.connect-caption){margin-bottom:0}.connect-code pre{border-radius:var(--shape-sm);padding:var(--sp-4);padding-right:var(--sp-10);-webkit-overflow-scrolling:touch;overflow-x:auto}.connect-code code{font-family:var(--mono);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text);white-space:pre}.connect-inline-code{font-family:var(--mono);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--text-accent)}.connect-copy-btn{top:var(--sp-2);right:var(--sp-2);border-radius:var(--shape-sm);background:var(--surface-tint-3);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-short-2) var(--ease-standard), color var(--dur-short-2) var(--ease-standard);border:none;justify-content:center;align-items:center;display:flex;position:absolute}.connect-copy-btn:hover{background:var(--surface-tint-5);color:var(--text)}.connect-methods-row{margin-top:var(--section-gap);margin-bottom:var(--block-gap)}.connect-methods-heading{font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);letter-spacing:var(--ls-title-lg);font-weight:var(--fw-medium);color:var(--text);margin:0}.connect-iata-btn{flex-shrink:0}.m3-dialog.connect-iata-dialog{height:min(480px,80vh)}.connect-iata-result{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);margin-top:var(--sp-3);background:var(--sys-indigo-500-12);border-radius:var(--shape-lg);display:flex}.connect-iata-code{font-family:var(--mono);font-size:var(--fs-title-md);line-height:var(--lh-title-md);font-weight:var(--fw-medium);color:var(--text)}.connect-iata-name{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--text-muted)}.connect-iata-results{height:240px;overflow-y:auto}.connect-iata-list{border-radius:var(--shape-sm);border:1px solid var(--border);flex-direction:column;display:flex}.connect-iata-row{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border-subtle);display:flex}.connect-iata-row:last-child{border-bottom:none}.connect-section{margin-bottom:var(--sp-3)}.connect-section-header{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-4) var(--sp-5);cursor:pointer;text-align:left;font-family:var(--font);color:var(--text);transition:background var(--dur-short-2) var(--ease-standard);background:0 0;border:none;display:flex}.connect-section-header:hover{background:var(--surface-tint-1)}.connect-section-chevron{color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.connect-section-icon{width:var(--sp-9);height:var(--sp-9);border-radius:var(--shape-sm);background:var(--accent);color:var(--on-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.connect-section-text{gap:var(--sp-1);flex-direction:column;min-width:0;display:flex}.connect-section-title{font-size:var(--fs-title-sm);line-height:var(--lh-title-sm);letter-spacing:var(--ls-title-sm);font-weight:var(--fw-medium);color:var(--text)}.connect-section-subtitle{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-muted)}.connect-section-body{counter-reset:step;padding:0 var(--sp-5) var(--sp-5);border-top:1px solid var(--border-subtle);padding-top:var(--sp-4)}.connect-step{counter-increment:step;padding-left:var(--sp-7);margin:0 0 var(--sp-12);position:relative}.connect-step:before{content:counter(step);width:var(--sp-5);height:var(--sp-5);background:var(--sys-indigo-500);color:var(--on-primary);font-family:var(--mono);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);border-radius:var(--shape-full);justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:0;left:0}.connect-step-heading{font-size:var(--fs-title-sm);line-height:var(--lh-title-sm);letter-spacing:var(--ls-title-sm);font-weight:var(--fw-semibold);color:var(--text);margin:0 0 var(--sp-2)}@media (width>=1200px){.connect-section-header{padding:var(--sp-5) var(--sp-6)}.connect-section-body{padding:0 var(--sp-8) var(--sp-6);padding-top:var(--sp-5)}}@media (width<=599px){.connect-section-subtitle{display:none}.connect-step{padding-left:var(--sp-6)}.connect-setting{align-items:flex-start;gap:var(--sp-1);flex-direction:column}.connect-setting-value{text-align:left}}.about-page{padding:var(--page-pt) var(--page-px) var(--page-pb)}.about-header{margin-bottom:var(--section-gap)}.about-title{font-size:var(--fs-display-md);line-height:var(--lh-display-md);letter-spacing:var(--ls-display-md);color:var(--text);margin-bottom:var(--sp-4);text-wrap:balance}.about-subtitle{font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);letter-spacing:var(--ls-title-lg);font-weight:var(--fw-medium);color:var(--text-muted);max-width:50ch}.about-card{padding:var(--sp-8) 0 0;border:none;border-top:1px solid var(--border-subtle);background:0 0;border-radius:0;margin-bottom:0}.about-card-title{font-size:var(--fs-label-lg);line-height:var(--lh-label-lg);letter-spacing:.06em;font-weight:var(--fw-bold);text-transform:uppercase;color:var(--text-accent);margin-bottom:var(--sp-4)}.about-card--highlight{border:none;border-left:3px solid var(--sys-indigo-500);padding:0 0 0 var(--sp-6);margin-bottom:var(--section-gap);background:0 0;border-radius:0}.about-lead{font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);letter-spacing:var(--ls-title-lg);font-weight:var(--fw-medium);color:var(--text);text-wrap:pretty;max-width:65ch;margin:0}.about-section{margin-bottom:var(--section-gap)}.about-section-title{align-items:center;gap:var(--sp-2);font-size:var(--fs-label-lg);line-height:var(--lh-label-lg);letter-spacing:.06em;font-weight:var(--fw-bold);text-transform:uppercase;color:var(--text-accent);margin-bottom:var(--sp-4);display:flex}.about-body{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);letter-spacing:var(--ls-body-lg);font-weight:var(--fw-medium);color:var(--text-muted);margin-bottom:var(--sp-4);text-wrap:pretty;max-width:65ch}.about-body:last-child{margin-bottom:0}.about-link{color:var(--text-accent);transition:color var(--dur-short-2) var(--ease-standard);text-decoration:none}.about-link:hover{color:var(--sys-indigo-300);text-decoration:underline}.about-features{gap:var(--sp-6);margin-top:var(--sp-8);grid-template-columns:repeat(3,1fr);display:grid}.about-feature{padding:var(--card-pad-hero);border-radius:var(--shape-xl)}.about-feature-header{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.about-feature-icon{color:var(--text-accent);flex-shrink:0;align-items:center;display:flex}.about-feature-title{font-size:var(--fs-title-lg);line-height:var(--lh-title-lg);letter-spacing:var(--ls-title-lg);font-weight:var(--fw-semibold);color:var(--text)}.about-feature-body{font-size:var(--fs-body-md);line-height:var(--lh-body-md);letter-spacing:var(--ls-body-md);font-weight:var(--fw-medium);color:var(--text-muted);text-wrap:pretty;margin:0}.about-footer{font-family:var(--mono);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);letter-spacing:var(--ls-body-sm);color:var(--text-tertiary);text-align:center;margin-top:var(--section-gap);padding-top:var(--sp-6);border-top:1px solid var(--border-subtle)}@media (width>=1200px){.about-title{font-size:var(--fs-display-lg);line-height:var(--lh-display-lg);letter-spacing:var(--ls-display-lg)}.about-subtitle,.about-lead{font-size:var(--fs-headline-sm);line-height:var(--lh-headline-sm)}.about-card--highlight{padding-left:var(--sp-8)}}@media (width<=839px){.about-title{font-size:var(--fs-headline-lg);line-height:var(--lh-headline-lg)}.about-features{grid-template-columns:1fr}}@media (width<=599px){.about-title{font-size:var(--fs-display-sm);line-height:var(--lh-display-sm)}}
