/* This document is a viewport-bound explorer, not a scrolling landing page. */
html:has(.explore-page){height:100%;overflow:hidden;scroll-behavior:auto}
.explore-page{height:100vh;height:100dvh;overflow:hidden;display:grid;grid-template-rows:72px minmax(0,1fr);background:#091426}
.explore-header{position:static;padding:12px 28px;border-bottom:1px solid rgb(247 250 255 / .15);min-width:0;gap:16px}
.explore-header .brand{font-size:24px;gap:10px}.explore-header .brand img{width:40px;height:40px}.explore-header nav{gap:24px}.explore-header [aria-current]{color:#3ed7f4}
.explore-page main{min-height:0;min-width:0;overflow:hidden;padding:0 28px 16px}
.explore-page .capability-map{height:100%;min-height:0;display:flex;flex-direction:column;margin:0;padding:0;border:0;scroll-margin:0}
.explore-page .map-intro{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin:0;padding:20px 0 16px;flex:none}
.explore-page .map-intro h1{font-size:26px;line-height:1.2;font-weight:400;letter-spacing:-.035em;margin:0}
.explore-page .map-intro p{font-size:14px;margin:0;line-height:1.5;max-width:none}
.explore-page .network-app{flex:1;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:visible}
.explore-page .map-toolbar{padding:10px 0}.explore-page .map-crumbs{min-height:40px;max-height:72px;overflow:auto;padding:0 0 6px}
.explore-page .map-workspace{height:100%;min-height:0;grid-template-columns:minmax(0,1fr) minmax(300px,34%);gap:24px;padding:0;overflow:hidden}
.explore-page .map-stage{position:relative;top:auto;display:flex;flex-direction:column;height:100%;min-height:0;min-width:0;max-width:none}
.explore-page .map-visual{flex:1;height:auto;min-height:0;max-height:none;overflow:hidden;width:100%;margin:0}
.explore-page .network-svg{height:100%;width:100%;min-height:0;min-width:0}
.explore-page .connection-detail{flex:none;min-height:0;max-height:100px;overflow:auto;padding:0 8px}
.explore-page .map-instruction{flex:none;margin:8px 0;font-size:12px}
.explore-page .map-details{height:100%;max-height:none;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;margin:0;max-width:none;border-left:1px solid rgb(247 250 255 / .16);border-top:0;padding:24px 16px 32px 24px}
.explore-page .map-tabs{position:sticky;top:-1px}.explore-page .map-list{flex:1;min-height:0;max-height:none;overflow:auto;align-content:start}
.explore-page .focus-fallback{min-height:0;overflow:auto;flex:1}.explore-page noscript{flex:none}
@media(max-width:900px){.explore-page .map-intro p{display:none}.explore-page .map-workspace{grid-template-columns:minmax(0,1fr) minmax(280px,40%);gap:12px}.explore-page .map-details{padding-left:16px}.explore-header nav{gap:16px}}
@media(max-width:1000px),(max-height:600px){
 .explore-page{grid-template-rows:60px minmax(0,1fr)}.explore-header{padding:8px 16px}.explore-header .brand{font-size:21px}.explore-header .brand img{width:32px;height:32px}.explore-header nav a[href="index.html#perspective"]{display:none}
 .explore-page main{padding:0 16px 8px}.explore-page .map-intro{padding:12px 0 8px}.explore-page .map-intro h1{font-size:22px}
 .explore-page .map-visual,.explore-page .map-view,.explore-page .map-instruction,.explore-page .connection-detail{display:none!important}
 .explore-page .map-workspace{grid-template-columns:1fr;grid-template-rows:minmax(64px,24%) minmax(0,1fr);gap:8px}
 .explore-page .map-list[hidden],.explore-page .map-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:auto;max-height:none;padding:4px 0;gap:4px 8px}
 .explore-page .map-list button{font-size:14px;min-height:44px;padding:8px;text-align:left}
 .explore-page .map-details{border-left:0;border-top:1px solid rgb(247 250 255 / .16);padding:16px 4px 24px}.explore-page .topic-title{font-size:28px}
 .explore-page .map-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:8px 0}.explore-page .map-search-wrap{width:100%;order:0}.explore-page .map-search{font-size:16px}.explore-page .map-home{font-size:0}.explore-page .map-home::after{content:'All';font-size:13px}.explore-page .map-crumbs{max-height:52px;min-height:32px}
}
@media(max-height:430px){.explore-page .map-intro{display:none}.explore-page .map-workspace{grid-template-columns:minmax(140px,30%) minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.explore-page .map-list{grid-template-columns:1fr!important}.explore-page .map-crumbs{max-height:36px}.explore-page .map-crumbs button{min-height:28px}}

/* Compact navigation; spacing carries hierarchy instead of stacked rules. */
.explore-page .explore-header,.explore-page .network-app,.explore-page .map-toolbar,.explore-page .map-crumbs,.explore-page .map-tabs,.explore-page .map-related,.explore-page .map-product+.map-product{border-top:0;border-bottom:0}
.explore-page .map-toolbar{gap:8px;padding:4px 0 6px}
.explore-page .map-history{gap:4px}
.explore-page .map-toolbar button{min-height:34px;padding:6px 10px;font-size:12px;border-color:transparent;background:rgb(247 250 255 / .04)}
.explore-page .map-toolbar button:hover{background:rgb(36 107 254 / .12);border-color:transparent}
.explore-page .map-search-wrap{width:min(260px,40%)}
.explore-page .map-search{min-height:34px;padding:6px 10px;font-size:13px;border-color:rgb(247 250 255 / .15)}
.explore-page .map-crumbs{gap:3px 8px;min-height:30px;padding-bottom:6px;font-size:12px}
.explore-page .map-crumbs button{min-height:28px;padding:3px 0;font-size:12px}
.explore-page .map-tabs{gap:18px;padding-top:4px}.explore-page .map-tabs button{min-height:34px;font-size:13px;padding:8px 0}
.explore-page .related-topics{gap:4px 8px}.explore-page .related-topics button{min-height:32px;padding:5px 8px;font-size:12px;border:0;background:rgb(247 250 255 / .04)}
.explore-page .map-list button{border:0;border-radius:3px;background:rgb(247 250 255 / .035);font-size:14px;padding:8px 10px}
.explore-page .map-related{padding-top:20px;margin-top:12px}
@media(max-width:1000px),(max-height:600px){.explore-page .map-search-wrap{width:100%}.explore-page .map-search{font-size:16px}.explore-page .map-home{font-size:12px}.explore-page .map-home::after{content:none}.explore-page .map-details{border-top:0}}
@media(pointer:coarse){.explore-page .map-toolbar button,.explore-page .map-search,.explore-page .map-crumbs button,.explore-page .map-tabs button,.explore-page .related-topics button{min-height:44px}}

/* Align the introduction and utilities with the reading pane's text column. */
@media(min-width:1001px) and (min-height:601px){
 .explore-page .map-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,34%);gap:24px}
 .explore-page .map-intro p{padding-left:25px;text-align:left}
 .explore-page .map-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,calc(max(300px,34%) - 119px)) 86px;column-gap:8px}
 .explore-page .map-search-wrap{width:100%;margin:0}
 .explore-page .map-view{width:86px}
}

/* Final responsive fit: useful reading space and a full-width phone search. */
.explore-header .brand .brand-wordmark{width:100px;height:auto}
@media(max-width:1000px),(max-height:600px){
 .explore-header .brand .brand-wordmark{width:88px;height:auto}
 .explore-page .map-workspace{grid-template-rows:minmax(64px,112px) minmax(0,1fr)}
}
@media(max-width:600px) and (min-height:431px){
 .explore-page .map-toolbar{grid-template-columns:1fr;gap:6px}
 .explore-page .map-search-wrap{grid-row:2}
 .explore-page .map-details{padding-top:12px}
 .explore-page .topic-title{margin-bottom:16px}
 .explore-page .topic-summary{margin-bottom:18px}
}
@media(max-width:360px){.explore-header{gap:8px}.explore-header nav{gap:12px}.explore-header .brand{gap:6px}.explore-header .brand .brand-wordmark{width:78px}}
@media(max-height:430px){.explore-page .map-workspace{grid-template-rows:minmax(0,1fr)}}

/* Connection explanations must not resize the SVG and discard keyboard focus. */
@media(min-width:1001px) and (min-height:601px){
 .explore-page .connection-detail{position:absolute;left:8px;bottom:36px;z-index:4;width:min(460px,calc(100% - 16px));max-height:160px;background:#091426;padding:0;border-radius:4px;box-shadow:0 12px 30px rgb(9 20 38 / .45)}
 .explore-page .connection-detail:has(.connection-note:not([hidden])){padding:14px}
}
