/* ═══════════════════════════════════════════════════════════════
   Shared inner-page shell (DotsShell). Pairs with tokens.css + home.css
   (theme vars, logo, reset) + shell.js. Nav/footer come from
   /_partials/*.html via SSI.
   ═══════════════════════════════════════════════════════════════ */
#ds-root { min-height:100vh; display:flex; flex-direction:column; background-color:var(--bg,#FDFCFA); color:var(--fg,#191924); }
#ds-root > main { flex:1; }

.ds-burger { display:none; }
.ds-foot-grid > div { min-width:0; }

/* dark-mode toggle knob (logo recolors via vars) */
#ds-knob { left:2px; background-color:#191924; }
html.dark #ds-knob { left:30px; background-color:#C8B6FF; }

@media (max-width:880px){
  .ds-navlinks { display:none !important; }
  .ds-only-desk { display:none !important; }
  .ds-burger { display:inline-flex !important; }
  .ds-foot-grid { grid-template-columns:1fr 1fr !important; gap:30px 24px !important; }
}
@media (min-width:881px){ .ds-mobile-menu { display:none !important; } }
@media (max-width:560px){ .ds-foot-grid { grid-template-columns:1fr !important; } }
