/* sportsbub extras on top of the compiled tailwind file: the menu drawer and the survey bits. */

.sb-drawer { position: fixed; inset: 0; z-index: 50; }
.sb-drawer[hidden] { display: block; visibility: hidden; pointer-events: none; }
.sb-scrim { position: absolute; inset: 0; background: rgb(0 0 0 / .6); opacity: 0; transition: opacity .25s ease; }
.sb-panel { position: absolute; inset: 0 auto 0 0; height: 100%; overflow-y: auto; transform: translateX(-100%);
  transition: transform .3s cubic-bezier(.16, 1, .3, 1); box-shadow: 0 0 40px rgb(0 0 0 / .4); }
.sb-drawer.open .sb-scrim { opacity: 1; }
.sb-drawer.open .sb-panel { transform: none; }
.sb-close { position: absolute; top: 1rem; right: 1rem; display: grid; place-items: center; width: 2rem; height: 2rem;
  border-radius: .375rem; background: none; border: 0; cursor: pointer; }
body.sb-locked { overflow: hidden; }
.sb-panel:focus { outline: none; }
/* drawer links: a little side room so the yellow focus box wraps the whole row instead of hugging the text */
.sb-panel nav { margin-inline: -.75rem; }
.sb-panel nav a { padding-inline: .75rem; }
.sb-panel nav a:focus-visible { outline-offset: -2px; border-radius: .75rem; }

/* survey */
.sv-radio { display: grid; place-items: center; flex-shrink: 0; }
.sv-radio::after { content: ""; width: .5rem; height: .5rem; border-radius: 9999px; background: currentColor; transform: scale(0);
  transition: transform .15s ease; }
.sv-choice[aria-checked="true"] .sv-radio::after { transform: scale(1); }
.sv-choice:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
#sv-map { height: 18rem; z-index: 0; }
#sv-map .leaflet-control-attribution { font-size: 10px; }
@media (prefers-reduced-motion: reduce) { .sb-panel, .sb-scrim { transition: none; } }
