/* The contents and preferred heights stay with each feature; the surface and
   interaction affordance are shared by every mobile bottom sheet. */
@keyframes subcal-sheet-enter{from{transform:translateY(100%)}to{transform:translateY(0)}}
:is(dialog.mobile-sheet,dialog#arc-picker){
 transition:transform .26s cubic-bezier(.2,.8,.2,1),display .26s allow-discrete,overlay .26s allow-discrete;
 transform:translateY(100%);animation:none!important;
}
:is(dialog.mobile-sheet,dialog#arc-picker)[open]{transform:translateY(0);animation:subcal-sheet-enter .26s cubic-bezier(.2,.8,.2,1)!important}
:is(dialog.mobile-sheet,dialog#arc-picker)::backdrop{background:#08091088;backdrop-filter:blur(3px)}
@media(max-width:700px){
 :is(dialog.mobile-sheet,dialog#arc-picker,dialog#arc-profile-dialog,dialog#updates-picker,dialog#update-detail,dialog#games-dialog,dialog#detail-dialog.pickup-sheet){
  position:fixed;inset:auto 0 0;margin:0 auto;width:100%;max-width:100%;border:0;border-top:1px solid var(--line);border-radius:22px 22px 0 0;background:var(--bg);color:var(--text);
  transition:transform .26s cubic-bezier(.2,.8,.2,1),display .26s allow-discrete,overlay .26s allow-discrete;transform:translateY(100%);animation:none!important;
 }
 :is(dialog.mobile-sheet,dialog#arc-picker,dialog#arc-profile-dialog,dialog#updates-picker,dialog#update-detail,dialog#games-dialog,dialog#detail-dialog.pickup-sheet)[open]{transform:translateY(0);animation:subcal-sheet-enter .26s cubic-bezier(.2,.8,.2,1)!important}
 :is(dialog.mobile-sheet,dialog#arc-picker,dialog#arc-profile-dialog,dialog#updates-picker,dialog#update-detail,dialog#games-dialog,dialog#detail-dialog.pickup-sheet)::backdrop{background:#08091088;backdrop-filter:blur(3px)}
 :is(.sheet-handle,.arc-sheet-handle,.pickup-sheet-grip,.games-editor-grip,.updates-sheet-handle){display:flex;align-items:center;justify-content:center;width:100%;height:36px;min-height:36px;flex:none;margin:0;padding:0;border:0;background:transparent;opacity:1;touch-action:none;cursor:grab}
 :is(.sheet-handle,.arc-sheet-handle,.pickup-sheet-grip,.games-editor-grip)>span,.updates-sheet-handle::after{content:'';display:block;width:40px;height:4px;flex:none;border-radius:4px;background:var(--muted);opacity:.6}
 :is(.sheet-handle,.arc-sheet-handle,.pickup-sheet-grip,.games-editor-grip,.updates-sheet-handle):active{cursor:grabbing}
}
/* Resizing is a separate gesture, not a fresh open animation. */
dialog:is(.mobile-sheet,#arc-picker,#arc-profile-dialog,#updates-picker,#update-detail,#games-dialog,#detail-dialog.pickup-sheet).sheet-sizing[open]{animation:none!important;transition:none!important}
/* A gesture already animated the sheet away; do not start another exit when
   close() removes [open] and the gesture controller clears its inline height. */
dialog.sheet-gesture-dismissed{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){
 :is(dialog.mobile-sheet,dialog#arc-picker,dialog#arc-profile-dialog,dialog#updates-picker,dialog#update-detail,dialog#games-dialog,dialog#detail-dialog.pickup-sheet){transition:none!important;animation:none!important}
 :is(dialog.mobile-sheet,dialog#arc-picker,dialog#arc-profile-dialog,dialog#updates-picker,dialog#update-detail,dialog#games-dialog,dialog#detail-dialog.pickup-sheet)[open]{animation:none!important}
}
