.infra-banner{display:flex;align-items:center;gap:16px;margin:20px 0 4px;padding:13px 17px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(100deg,var(--violet-soft),var(--blue-soft));font-size:12px;color:#c8d6eb;flex-wrap:wrap}
#infra-updated{margin-left:auto;color:var(--muted);font-size:10px}
.infra-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.infra-metric{padding:16px;background:rgba(6,15,27,.5);border:1px solid var(--line);border-radius:14px;min-width:0}
.infra-metric small{display:block;color:var(--muted);font-size:10px;letter-spacing:.05em}
.infra-metric strong{display:block;font-size:23px;letter-spacing:-.03em;margin:8px 0;color:var(--text);font-variant-numeric:tabular-nums}
.infra-metric p{margin:0;font-size:10px;color:var(--subtle);line-height:1.5}
.infra-badge{display:inline-flex;align-items:center;white-space:nowrap;font-size:10px;font-weight:750;border-radius:20px;padding:6px 10px;border:1px solid var(--line)}
.infra-badge.ok{color:var(--green);background:var(--green-soft)}
.infra-badge.warning{color:var(--orange);background:var(--orange-soft)}
.infra-badge.down{color:var(--red);background:var(--red-soft)}
.infra-badge.unknown{color:#a3b1c8;background:rgba(151,174,207,.1)}
.infra-note{margin:16px 0 0;color:var(--muted);font-size:11px;line-height:1.65}
.infra-caption{font-size:10px;color:var(--muted)}
.infra-link{color:var(--blue);text-decoration:none;font-size:11px}
.infra-link:hover{text-decoration:underline}
.internet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.internet-card.router-origin{grid-column:1/-1;border-color:rgba(88,166,255,.38)}
.router-origin .internet-probes{grid-template-columns:repeat(2,minmax(0,1fr))}
.router-origin .probe-item small:last-child{line-height:1.6;margin-top:7px;overflow-wrap:anywhere}
.router-lan{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.native-heading{margin-top:26px}.native-heading h3{margin:6px 0}
.internet-card,.router-card{background:linear-gradient(145deg,rgba(22,39,63,.64),rgba(8,18,32,.8));border:1px solid var(--line);border-radius:17px;padding:20px;min-width:0}
.infra-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.infra-card-head h3{font-size:14px;margin:0;letter-spacing:-.015em}
.internet-path{font-size:10px;color:var(--muted);margin:10px 0 18px;line-height:1.6}
.internet-probes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}
.probe-item small{display:block;color:var(--muted);font-size:9px}
.probe-item strong{font-size:13px;display:block;margin-top:5px;font-variant-numeric:tabular-nums}
.probe-item.ok strong{color:var(--green)}.probe-item.down strong{color:var(--orange)}.probe-item.unknown strong{color:var(--muted)}
.infra-history{height:20px;display:flex;gap:2px;margin-top:20px;align-items:stretch}
.infra-history span{flex:1;max-width:14px;min-width:1px;border-radius:3px;background:#49566b}
.infra-history .ok{background:#2eb882}.infra-history .warning{background:#efa555}.infra-history .down{background:#ea6177}
.history-label{display:flex;gap:12px;justify-content:space-between;margin-top:7px;color:var(--muted);font-size:9px}
.infra-radio{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}
.router-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.router-card .infra-card-head{align-items:flex-start;flex-wrap:wrap}.router-card h3{font-size:12px}
.router-model{color:var(--violet);font-size:11px;margin:12px 0 5px}
.router-address{color:var(--muted);font-size:10px;line-height:1.7;overflow-wrap:anywhere}
.router-card .infra-link{display:inline-block;margin-top:12px}
.incident-list{display:grid;gap:9px}.incident{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:rgba(6,15,27,.3)}
.incident summary{cursor:pointer;padding:14px;font-size:12px;line-height:1.6;list-style:none;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.incident summary::after{content:'＋';margin-left:auto;color:var(--muted)}.incident[open] summary::after{content:'−'}
.incident-detail{padding:0 16px 16px;color:var(--muted);font-size:11px;line-height:1.7;overflow-wrap:anywhere}
.incident-detail p{margin:6px 0}.incident-detail pre{font:10px ui-monospace,monospace;white-space:pre-wrap;border-radius:9px;background:#07101d;padding:12px;overflow:auto;max-height:250px}
.infra-stale{opacity:.6}.infra-empty{color:var(--muted);padding:12px;font-size:12px}
.sidebar nav{gap:3px;margin-top:8px}.sidebar .nav-item{min-height:40px}
section[id]{scroll-margin-top:20px}
@media(max-width:1100px){.infra-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.router-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.internet-grid{grid-template-columns:1fr}}
@media(max-width:600px){.infra-banner{gap:8px}.infra-banner .eyebrow{width:100%}#infra-updated{margin-left:0}.infra-metrics{gap:8px}.infra-metric{padding:12px}.infra-metric strong{font-size:20px}.router-grid{grid-template-columns:1fr}.infra-card-head{flex-wrap:wrap}.internet-card{padding:15px}.section-heading{flex-wrap:wrap}.infra-caption{line-height:1.5}.sidebar nav{overflow-x:auto}.sidebar .nav-item{flex-shrink:0}.sidebar .nav-item span:last-child{display:inline}.infra-history{gap:1px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:780px){.sidebar{height:auto;flex-wrap:wrap;gap:8px}.sidebar nav{display:flex;order:3;width:100%;max-width:100%;overflow-x:auto;gap:4px;margin:0;padding:2px 0}.sidebar .nav-item{flex-shrink:0;font-size:10px;min-height:31px;padding:0 9px;gap:5px;white-space:nowrap}.sidebar .nav-icon{font-size:12px;width:16px;height:16px}.sidebar .nav-item b{font-size:8px;padding:2px 4px}section[id]{scroll-margin-top:120px}}
