:root{--f-sans: var(--hn-f-sans);--f-mono: var(--hn-f-mono);--t-xs: 12px;--t-s: 13.5px;--t-m: 15.5px;--t-l: 19px;--t-xl: 24px;--t-xxl: clamp(28px, 4.2vw, 40px);--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--radius: var(--hn-r);--maxw: var(--hn-maxw);--bg: var(--hn-bg);--surface: var(--hn-surface);--surface-2: var(--hn-surface-2);--line: var(--hn-line);--line-strong: var(--hn-line-strong);--ink: var(--hn-ink);--muted: var(--hn-muted);--faint: var(--hn-faint);--brand: var(--hn-brand);--brand-soft: var(--hn-brand-soft);--live: var(--hn-live);--live-ink: var(--hn-live-ink);--live-soft: var(--hn-live-soft);--down: var(--hn-down);--down-soft: var(--hn-down-soft);--warn: var(--hn-warn);--warn-soft: var(--hn-warn-soft);--link: var(--hn-link)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--t-m) / 1.55 var(--f-sans);font-feature-settings:"tnum" 1}a{color:var(--link);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:2px}.skip{position:absolute;left:-9999px;top:8px;z-index:3000;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.skip:focus{left:8px}h1,h2,h3{font-weight:650;line-height:1.2;margin:0;letter-spacing:-.012em;text-wrap:balance}h1{font-weight:750;letter-spacing:-.025em}h1{font-size:var(--t-xxl)}h2{font-size:var(--t-l)}h3{font-size:var(--t-m)}p{margin:0}.mono,code,kbd{font-family:var(--f-mono);font-size:.92em}.call{font-family:var(--f-mono);font-weight:500;letter-spacing:.01em;white-space:nowrap}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:var(--t-s)}.xs{font-size:var(--t-xs)}.nowrap{white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--hn-gutter);padding-right:var(--hn-gutter-r);box-sizing:content-box}main.wrap{min-height:50vh}.page-head{padding-block:40px var(--s5);display:grid;gap:10px}.page-head p{color:var(--muted);max-width:70ch;font-size:16.5px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding:var(--s3) var(--s4);border-bottom:1px solid var(--line)}.panel-head h2{font-size:var(--t-m)}.panel-head .aside{font-size:var(--t-xs);color:var(--muted)}.panel-body{padding:var(--s4)}.panel-foot{padding:var(--s2) var(--s4);border-top:1px solid var(--line);font-size:var(--t-s)}.label{font-size:var(--t-xs);font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--faint);flex:none}.dot.up{background:var(--live)}.dot.down{background:var(--down)}.dot.wait{background:transparent;border:1px solid var(--faint)}.dot.pulse{box-shadow:0 0 0 0 var(--live);animation:pulse 1.6s ease-out infinite}@keyframes pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--live) 55%,transparent)}to{box-shadow:0 0 0 7px transparent}}@media(prefers-reduced-motion:reduce){.dot.pulse{animation:none}}.tag{display:inline-block;font:500 11px/1.6 var(--f-mono);padding:0 6px;border-radius:3px;border:1px solid var(--line-strong);color:var(--muted);white-space:nowrap;vertical-align:1px}.tag-unv{border-color:transparent;background:var(--warn-soft);color:var(--warn)}.tag-own{border-color:transparent;background:var(--live-soft);color:var(--live)}.tag-net{min-width:3.4em;text-align:center}.tag-gr{border-color:transparent;background:var(--brand-soft);color:var(--link)}.ct-list{list-style:none;margin:0;padding:0}.ct-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"dot title count" "dot when when";align-items:center;gap:2px var(--s2);padding:var(--s2) var(--s4);border-bottom:1px solid var(--line)}.ct-item:last-child{border-bottom:0}.ct-item .dot{grid-area:dot;align-self:start;margin-top:7px}.ct-item .ct-title{grid-area:title;font-weight:550;min-width:0}.ct-item .ct-count{grid-area:count}.ct-item .ct-when{grid-area:when}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--t-s)}th{text-align:left;font-weight:500;font-size:var(--t-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:var(--s2) var(--s3);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:7px var(--s3);border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:0}td.num,th.num{text-align:right;font-family:var(--f-mono);font-size:var(--t-xs)}tbody tr.fresh{animation:fresh 2.4s ease-out}@keyframes fresh{0%{background:var(--live-soft)}to{background:transparent}}@media(prefers-reduced-motion:reduce){tbody tr.fresh{animation:none}}.controls{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center}input[type=search]:focus,select:focus{border-color:var(--brand);outline:2px solid var(--brand-soft);outline-offset:0}input[type=search],select{font:inherit;font-size:var(--t-s);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:7px 10px;min-width:0}input[type=search]{flex:1 1 220px}.seg{display:inline-flex;max-width:100%;border:1px solid var(--line-strong);border-radius:var(--radius);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg button{font:inherit;font-size:var(--t-s);background:transparent;color:var(--muted);border:0;border-right:1px solid var(--line-strong);padding:6px 11px;cursor:pointer;flex:none;white-space:nowrap}.seg button:last-child{border-right:0}.seg button[aria-pressed=true]{background:var(--brand);color:var(--hn-on-brand)}.seg button:hover{color:var(--ink)}.empty{padding:var(--s5) var(--s4);color:var(--muted);font-size:var(--t-s)}.map{height:100%;min-height:320px;background:var(--surface-2)}.leaflet-container{font:inherit;background:var(--surface-2)}.leaflet-popup-content{font-size:var(--t-s);line-height:1.45;margin:10px 12px}.leaflet-popup-content .call{font-size:var(--t-m)}.leaflet-tile-pane{filter:var(--hn-map-filter)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--surface);color:var(--ink)}.leaflet-control-attribution{background:color-mix(in srgb,var(--surface) 80%,transparent)!important;color:var(--muted)}.leaflet-control-attribution a{color:var(--muted)}.leaflet-bar a{background:var(--surface);color:var(--ink);border-color:var(--line)}[hidden]{display:none!important}.btn{font:inherit;font-size:var(--t-s);font-weight:550;padding:7px 14px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn:hover:not(:disabled){border-color:var(--brand);color:var(--ink)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--hn-on-brand)}.btn.primary:hover:not(:disabled){background:var(--hn-brand-strong);border-color:var(--hn-brand-strong);color:var(--hn-on-brand)}.btn.danger{color:var(--down);border-color:var(--down)}.btn.danger:hover:not(:disabled){background:var(--down-soft);border-color:var(--down);color:var(--down)}.field{display:grid;gap:4px;min-width:0}.field>span{font-size:var(--t-xs);font-weight:550;color:var(--muted)}.field>small{font-size:var(--t-xs);color:var(--faint)}.input,input[type=text].input,input[type=email],input[type=number],input[type=date],input[type=time],input[type=url],textarea{font:inherit;font-size:var(--t-s);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:7px 10px;min-width:0;width:100%}input.input:focus,input[type=email]:focus,input[type=number]:focus,input[type=date]:focus,input[type=time]:focus,input[type=url]:focus,textarea:focus{border-color:var(--brand);outline:2px solid var(--brand-soft);outline-offset:0}.input.mono,.input.call-in{font-family:var(--f-mono)}.input.call-in{text-transform:uppercase}textarea{resize:vertical;min-height:5em;line-height:1.45}.form-grid{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-items:end}.form-grid .wide{grid-column:1 / -1}.check{display:inline-flex;gap:8px;align-items:flex-start;font-size:var(--t-s)}.check input{margin-top:3px;accent-color:var(--brand)}.msg{font-size:var(--t-s);padding:8px 12px;border-radius:var(--radius);background:var(--brand-soft);color:var(--ink)}.msg.err{background:var(--down-soft);color:var(--down)}.msg:empty{display:none}.figs{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.fig{display:grid;gap:2px}.fig b{font:600 var(--t-xl)/1.1 var(--f-mono)}.fig span{font-size:var(--t-xs);color:var(--muted)}.bars{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:var(--t-s)}.bars li{display:grid;grid-template-columns:5.5em minmax(0,1fr) 4.5em;gap:var(--s2);align-items:center}.bars .k{font-family:var(--f-mono);font-size:var(--t-xs)}.bars .n{text-align:right;font-family:var(--f-mono);font-size:var(--t-xs);color:var(--muted)}.bars i{display:block;height:8px;border-radius:4px;background:var(--brand);width:var(--w);min-width:2px}.gm{display:block;width:100%;height:auto;overflow:hidden}.gm .gm-land{fill:var(--surface-2);stroke:var(--line-strong);stroke-width:.8}.gm-mono .gm-gr{fill:color-mix(in srgb,var(--brand) 13%,var(--surface));stroke:color-mix(in srgb,var(--brand) 38%,var(--surface));stroke-width:.7;stroke-linejoin:round}.gm-areas .gm-gr{stroke:var(--surface);stroke-width:.9;stroke-linejoin:round;transition:fill .15s;cursor:pointer}.gm-areas .gm-t-a{fill:color-mix(in srgb,var(--brand) 62%,var(--surface))}.gm-areas .gm-t-b{fill:color-mix(in srgb,var(--brand) 40%,var(--surface))}.gm-areas .gm-t-c{fill:color-mix(in srgb,var(--brand) 24%,var(--surface))}.gm-areas .gm-t-n{fill:var(--faint)}.gm-areas .gm-gr.on,.gm-areas .gm-gr:hover{fill:var(--brand)}.gm-digit circle{fill:var(--surface);stroke:var(--brand);stroke-width:2}.gm-digit text{font:750 22px/1 var(--f-sans);fill:var(--brand);pointer-events:none}.gm-digit{cursor:pointer}.gm-digit.on circle{fill:var(--brand)}.gm-digit.on text{fill:var(--hn-on-brand)}.gm .rp-faint{fill:color-mix(in srgb,var(--ink) 26%,transparent)}.gm .ap{fill:var(--brand);stroke:var(--surface);stroke-width:1}.gm .ap-fresh{fill:var(--brand);stroke:color-mix(in srgb,var(--brand) 35%,transparent);stroke-width:6}.gm .ap-own{fill:var(--hn-on-brand);stroke:var(--brand);stroke-width:3}.gm .rp{stroke:var(--surface);stroke-width:1;fill:var(--faint)}.gm .rp-2m{fill:var(--brand)}.gm .rp-70cm{fill:var(--hn-c2)}.gm .me{fill:var(--surface);stroke:var(--ink);stroke-width:3.5}.m-cw{--m: var(--brand)}.m-ssb{--m: var(--hn-c2)}.m-digi{--m: var(--hn-c3)}.m-vhf{--m: var(--hn-c4)}.m-mix,.m-ev,.m-act{--m: var(--hn-c5)}.m-ev{--m: var(--ink)}.tl{--name-w: 250px;position:relative}.tl-scroll{overflow-x:auto;overscroll-behavior-x:contain}.tl-in{position:relative;min-width:760px}.tl-row{display:grid;grid-template-columns:var(--name-w) minmax(0,1fr);align-items:stretch;border-top:1px solid var(--line)}.tl-row:hover{background:var(--surface-2)}.tl-headrow{border-top:0;background:transparent!important;position:sticky;top:0}.tl-name{position:sticky;left:0;z-index:2;display:flex;align-items:center;gap:8px;min-width:0;padding:7px 12px 7px 16px;background:var(--surface);border-right:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:13.5px;font-weight:550}.tl-row:hover .tl-name{background:var(--surface-2)}.tl-name span:not(.tl-gr){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-name>i{width:9px;height:9px;border-radius:3px;background:var(--m);flex:none}.tl-name:hover span:not(.tl-gr){color:var(--brand)}.tl-corner{padding-top:26px;font:600 11.5px/1 var(--f-mono);color:var(--faint);letter-spacing:.06em}.tl-gr{flex:none;font:700 10px/1 var(--f-mono);padding:3px 4px;border-radius:4px;color:var(--brand);background:var(--brand-soft);margin-left:auto}.tl-head{display:grid;grid-template-columns:repeat(var(--days),1fr)}.tl-day{display:grid;gap:2px;justify-items:center;padding:26px 0 8px;border-left:1px solid var(--line);font-size:12.5px}.tl-day b{font-weight:650;text-transform:capitalize}.tl-day span{color:var(--muted);font:500 11.5px/1 var(--f-mono)}.tl-day.we{background:color-mix(in srgb,var(--brand) 6%,transparent)}.tl-day.today b{color:var(--brand)}.tl-track{position:relative;display:grid;grid-template-columns:repeat(var(--days),1fr);min-height:34px}.tl-track>i{border-left:1px solid var(--line)}.tl-track>i.we{background:color-mix(in srgb,var(--brand) 6%,transparent)}.tl-bar{position:absolute;top:7px;bottom:7px;min-width:6px;border-radius:6px;background:color-mix(in srgb,var(--m) 78%,transparent);border:1px solid var(--m);display:flex;align-items:center;overflow:hidden;text-decoration:none;transition:filter .12s,transform .12s}.tl-bar span{padding:0 6px;font:600 10.5px/1 var(--f-mono);color:#fff;white-space:nowrap}:root[data-theme=dark] .tl-bar span{color:#07101e}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .tl-bar span{color:#07101e}}.tl-bar:hover{filter:brightness(1.12);transform:scaleY(1.12)}.tl-bar.cut-l{border-top-left-radius:0;border-bottom-left-radius:0}.tl-bar.cut-r{border-top-right-radius:0;border-bottom-right-radius:0}.tl-bar.on{box-shadow:0 0 0 2px var(--surface),0 0 0 4px color-mix(in srgb,var(--m) 45%,transparent)}.tl-now{position:absolute;top:0;bottom:0;left:calc(var(--name-w) + (100% - var(--name-w)) * var(--nowf, 0));width:0;pointer-events:none;z-index:3}.tl-now:before{content:"";position:absolute;top:20px;bottom:0;left:-1px;border-left:2px solid var(--down)}.tl-now span{position:absolute;top:2px;left:0;transform:translate(-50%);font:600 10.5px/1 var(--f-mono);color:#fff;background:var(--down);padding:3px 5px;border-radius:4px;white-space:nowrap}.tl-compact{--name-w: 200px}.tl-compact .tl-track{min-height:28px}.tl-compact .tl-bar{top:5px;bottom:5px}.tl-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--muted)}.tl-legend li{display:inline-flex;align-items:center;gap:6px}.tl-legend i{width:12px;height:12px;border-radius:3px;background:var(--m)}.tl-legend .tl-gr{margin:0}@media(max-width:640px){.tl{--name-w: 150px}.tl-in{min-width:640px}.tl-name{font-size:12.5px;padding-left:10px}}.mg-title{font:700 18px/1.2 var(--f-sans);text-transform:capitalize}.mg{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:12px}.mg-wd{padding:8px;font:600 12px/1 var(--f-sans);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.mg-wd.we,.mg-cell.we{background:color-mix(in srgb,var(--brand) 5%,transparent)}.mg-cell{min-height:112px;padding:6px;display:flex;flex-direction:column;gap:3px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}.mg-cell.out{background:var(--surface-2)}.mg-cell.past{opacity:.55}.mg-n{font:600 13px/1 var(--f-mono);color:var(--muted);padding:3px 4px;align-self:flex-start;border-radius:6px}.mg-cell.today .mg-n{background:var(--down);color:#fff}.mg-chip{display:block;padding:3px 6px;border-radius:5px;font-size:11.5px;line-height:1.3;text-decoration:none;color:var(--ink);background:color-mix(in srgb,var(--m) 16%,var(--surface));border-left:3px solid var(--m);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mg-chip b{font:600 10.5px/1 var(--f-mono);color:var(--m)}.mg-chip:hover{background:color-mix(in srgb,var(--m) 28%,var(--surface))}.mg-chip.on{box-shadow:inset 0 0 0 1px var(--m)}.mg-more{font-size:11.5px;color:var(--muted);padding:0 4px}@media(max-width:760px){.mg-cell{min-height:64px;padding:3px}.mg-chip{font-size:0;padding:0;height:6px;border-left:0;background:var(--m);border-radius:3px}.mg-chip b{display:none}.mg-more{font-size:10px}.mg-wd{padding:6px 2px;text-align:center;font-size:10.5px;letter-spacing:0}}
