/* Load after the storefront theme. Native <dialog> supplies focus containment. */
.bottom-sheet[data-sheet]{position:fixed;inset:auto 0 0;margin:0 auto;width:min(100%,480px);max-height:calc(100dvh - 16px);border-radius:24px 24px 0 0;overscroll-behavior:contain;padding-bottom:calc(22px + env(safe-area-inset-bottom));transform:translateY(0);opacity:1}
.bottom-sheet[data-sheet][open]{animation:sheet-open 200ms cubic-bezier(.2,.75,.25,1) backwards}
.bottom-sheet[data-sheet]::backdrop{background:rgb(10 15 19 / .56);backdrop-filter:blur(3px);animation:sheet-backdrop 180ms ease-out backwards}
.bottom-sheet[data-sheet] .sheet-handle{display:block;position:relative;width:35px;height:4px;background:#d6d6cd;border-radius:4px;margin:0 auto 20px;touch-action:none;user-select:none;cursor:grab}
.bottom-sheet[data-sheet] .sheet-handle::before{content:"";position:absolute;inset:-12px -36px}
.bottom-sheet[data-sheet] [data-sheet-drag]{touch-action:none;user-select:none;cursor:grab}
.bottom-sheet[data-sheet][data-sheet-dragging]{animation:none;transition:none;transform:translateY(var(--sheet-drag-y,0px))}
.bottom-sheet[data-sheet][data-sheet-dragging] .sheet-handle,.bottom-sheet[data-sheet][data-sheet-dragging] [data-sheet-drag]{cursor:grabbing}
.bottom-sheet[data-sheet][data-sheet-settling]{animation:none;transition:transform 180ms ease-out}
@keyframes sheet-open{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:translateY(0)}}
@keyframes sheet-backdrop{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.bottom-sheet[data-sheet][open],.bottom-sheet[data-sheet]::backdrop{animation:none}.bottom-sheet[data-sheet][data-sheet-settling]{transition:none}}
