@media(max-width:800px) {
  .layout { grid-template-columns:1fr; height:auto; }
  aside { order:2; border-right:0; border-top:1px solid var(--line); }
  #map { height:55vh; min-height:360px; }
}

@media(max-width:800px) {
  .sessionbar { left:12px; right:12px; bottom:12px; }
}

@media(max-width:800px) {
  .sessionbar { left:auto; right:12px; bottom:12px; }
  .session-panel { max-width:calc(100vw - 24px); flex-wrap:wrap; justify-content:flex-end; }
  .session-panel strong { font-size:12px; }
  .session-panel .primary { font-size:12px; padding:8px 10px; }
}
