#appGrid>.launcher-dock>div{height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important}
#appGrid>.launcher-dock .launcher-tile{display:grid!important;grid-template-rows:minmax(0,1fr) 20px!important;align-items:end!important;justify-items:center!important;gap:5px!important;padding:0!important}
#appGrid>.launcher-dock .launcher-icon-shell{height:100%!important;display:grid!important;place-items:end center!important}
#appGrid>.launcher-dock .launcher-label{height:20px!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;margin:0!important}

/* Include every column, gap and both margins in the dock's actual width. */
.launcher-page-mode #appGrid>.launcher-dock,.launcher-mobile-page #appGrid>.launcher-dock{
  --dock-cell:clamp(76px,6.6vw,102px);
  --dock-gap:clamp(12px,1.6vw,24px);
  --dock-padding:18px;
  grid-template-columns:repeat(var(--dock-count),minmax(0,1fr))!important;
  gap:var(--dock-gap)!important;
  width:min(calc(var(--dock-count) * var(--dock-cell) + (var(--dock-count) - 1) * var(--dock-gap) + 2 * var(--dock-padding) + 2px),calc(100vw - 36px))!important;
  padding-inline:var(--dock-padding)!important;
}
#appGrid>.launcher-dock>div{min-width:0!important}
#appGrid>.launcher-dock .launcher-tile{width:100%!important;min-width:0!important}
#appGrid>.launcher-dock .launcher-icon-shell{width:100%!important;min-width:0!important}
#appGrid>.launcher-dock .launcher-icon{width:min(76px,calc(var(--drive-dock-height) - 40px),100%)!important;height:auto!important;aspect-ratio:1}
@media(max-width:700px){.launcher-mobile-page #appGrid>.launcher-dock{--dock-cell:64px;--dock-gap:8px;--dock-padding:12px;width:min(calc(var(--dock-count) * var(--dock-cell) + (var(--dock-count) - 1) * var(--dock-gap) + 26px),calc(100vw - 18px))!important}}

/* Launcher gestures must not trigger native text selection or image dragging. */
:is(#catalogueSection,#driveStatusBar,#appDrawer,.launcher-dialog),
:is(#catalogueSection,#driveStatusBar,#appDrawer,.launcher-dialog) *{
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-touch-callout:none;
}
:is(#catalogueSection,#driveStatusBar,#appDrawer,.launcher-dialog) :is(input,textarea,[contenteditable]:not([contenteditable="false"])),
:is(#catalogueSection,#driveStatusBar,#appDrawer,.launcher-dialog) [contenteditable]:not([contenteditable="false"]) *{
  -webkit-user-select:text!important;
  user-select:text!important;
  -webkit-touch-callout:default;
}
:is(#catalogueSection,#driveStatusBar,#appDrawer,.launcher-dialog) :is(img,svg){
  -webkit-user-drag:none;
}
