/* Meridian docs site — responsive layer. Inline styles carry the desktop layout; these overrides adapt it. */
.site-nav{min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.site-top a{white-space:nowrap}
.site-nav::-webkit-scrollbar{display:none}
.site-search{width:220px}
@media (max-width:1080px){
.site-toc{display:none!important}
.site-top{gap:16px!important}
.site-search{width:150px!important}
.hide-md{display:none!important}
}
@media (max-width:900px){
.site-side{display:none!important}
.grid-2{grid-template-columns:1fr!important}
.grid-4{grid-template-columns:1fr 1fr!important}
}
@media (max-width:760px){
.hide-sm{display:none!important}
.site-search{width:36px!important;justify-content:center!important;padding:0!important;border-color:var(--border-strong)!important;background:transparent!important}
.site-search .site-search-label,.site-search .site-search-kbd{display:none}
.grid-3,.grid-4{grid-template-columns:1fr!important}
.stack-sm{flex-direction:column!important;align-items:stretch!important}
.pad-sm{padding-left:18px!important;padding-right:18px!important}
.frame-scroll{overflow-x:auto!important}
.site-foot-row{flex-wrap:wrap;row-gap:8px}
.site-top{padding:0 16px!important;gap:14px!important}
.hero-h1{font-size:38px!important}
.hero-pad{padding-top:56px!important}
}

/* Header menu (≤1080px) and sidebar drawers (≤900px) — native details/summary */
.site-menu{display:none;position:relative}
.site-menu>summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-primary);background:transparent}
.site-menu>summary::-webkit-details-marker{display:none}
.site-menu>summary:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.site-menu[open]>summary{background:var(--surface-sunken)}
.site-menu__panel{position:absolute;top:calc(100% + 8px);right:0;min-width:190px;background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:6px;z-index:60;display:flex;flex-direction:column}
.site-menu__panel a{display:block;padding:8px 12px;border-radius:var(--radius-sm);font-size:var(--text-md);color:var(--text-primary)!important;text-decoration:none}
.site-menu__panel a:hover{background:var(--surface-sunken)}
.side-drawer{display:none}
.side-drawer>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:500;background:var(--surface-card)}
.side-drawer>summary::-webkit-details-marker{display:none}
.side-drawer>summary:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.side-drawer__chev{transition:transform var(--dur-med) var(--ease-out);flex:none}
.side-drawer[open] .side-drawer__chev{transform:rotate(180deg)}
.side-drawer__panel{position:static;box-shadow:none;border:1px solid var(--border-default);margin-top:8px;max-height:50vh;overflow:auto;display:block}
@media (max-width:1220px){
.site-top{gap:18px!important}
.site-nav{gap:14px!important;font-size:13.5px!important}
}
@media (max-width:1080px){
.site-nav{display:none!important}
.site-menu{display:block}
}
@media (max-width:900px){
.side-drawer{display:block;margin:0 0 20px}
}

/* Header control consistency: 36px hamburger, search, GitHub, and theme toggle */
.site-theme,.site-gh{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;flex:none;text-decoration:none}
.site-theme:focus-visible,.site-gh:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.site-search:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.site-theme .icon-moon{display:none}
[data-theme="dark"] .site-theme .icon-sun{display:none}
[data-theme="dark"] .site-theme .icon-moon{display:block}
