.sml-switcher {
  --sml-bg: var(--bg, var(--bg-primary, Canvas));
  --sml-text: var(--text, var(--text-primary, CanvasText));
  --sml-border: var(--border, var(--border-color, #b8b8b8));
  color: var(--sml-text);
  font: 400 .9375rem/1.6 system-ui, sans-serif;
  min-width: 0;
}
.sml-switcher[hidden] { display: none !important; }
.sml-switcher .sml-list { display: flex; flex-wrap: wrap; gap: .25rem .75rem; list-style: none; padding: 0; margin: 0; }
.sml-switcher .sml-list > li { display: block; float: none; padding: 0; margin: 0; border: 0; }
.sml-switcher .sml-list a, .sml-switcher .sml-current {
  display: inline-block; padding: .3rem .1rem; color: inherit; background: none;
  font: inherit; text-decoration: none; border: 0; box-shadow: none; overflow-wrap: anywhere;
}
.sml-switcher .sml-current { font-weight: 700; }
.sml-switcher .sml-list a:hover { text-decoration: underline; }
.sml-switcher :is(a, summary):focus-visible { outline: 2px solid currentColor; outline-offset: 3px; border-radius: 3px; }
.sml-footer { margin-block: .75rem; }
.sml-mobile { clear: both; padding-block: 1rem; border-block-start: 1px solid var(--sml-border); }
.sml-desktop { position: relative; margin-inline-start: .75rem; }
.sml-placement { list-style: none; }
#nav-menu > .sml-desktop { float: right; }
#nav-menu .sml-switcher .sml-list a {
  float: none; height: auto; margin: 0; padding: .3rem .1rem;
  line-height: inherit; color: inherit; background: none; border: 0;
}
.sml-disclosure { position: relative; }
.sml-disclosure > summary { cursor: pointer; display: grid; place-items: center; width: 40px; height: 40px; list-style: none; }
.sml-disclosure > summary::-webkit-details-marker { display: none; }
.sml-disclosure > summary svg { display: block; width: 22px; height: 22px; }
.sml-disclosure > .sml-list {
  position: absolute; inset-block-start: 100%; inset-inline-end: 0; z-index: 100;
  display: flex; flex-direction: column; flex-wrap: nowrap; gap: .1rem;
  width: max-content; min-width: 9rem; max-width: min(18rem, 80vw);
  max-height: 65vh; overflow-y: auto; padding: .5rem .75rem;
  border: 1px solid var(--sml-border); border-radius: .5rem;
  background: var(--sml-bg); color: var(--sml-text); box-shadow: 0 .25rem 1rem rgb(0 0 0 / .15);
}
.sml-disclosure:not([open]) > .sml-list { display: none; }
.sml-disclosure .sml-list a, .sml-disclosure .sml-current { display: block; }
@media (prefers-reduced-motion: reduce) {
  .sml-switcher, .sml-switcher * { transition: none !important; animation: none !important; }
}
