/* Layout repair only. Original colour, typography, content and handlers remain. */
/* The redesigned relative header already follows the owner-preview bar in flow. */
html.vt-dock body.vt-ds .main .topbar {top:0!important}
@media screen and (max-width:700px) {
  html body.vt-ds.se-student:not(.studio-exam-quiet):not(.exam-program-open) #student-utility-dock#student-utility-dock {
    position:relative!important;
    inset:auto!important;
    width:auto!important;
    max-width:100%;
    box-sizing:border-box;
    height:auto;
    min-height:62px;
    flex-wrap:wrap;
  }
  html.vx-ui body.vt-ds.se-student:has(#student-utility-dock) {padding-bottom:0!important}
}
@media screen and (min-width:701px) {
  html body.vt-ds.se-student:not(.studio-exam-quiet):not(.exam-program-open) #student-utility-dock#student-utility-dock {
    inset:auto!important;
    box-sizing:border-box;
    min-width:0;
    max-width:100%;
    height:auto;
    min-height:60px;
    flex-wrap:wrap;
  }
  html.vt-dock body.vt-ds.se-student:not(.studio-exam-quiet):not(.exam-program-open):not(.teacher-window) #student-utility-dock#student-utility-dock {
    margin-left:0;
  }
  html.vx-ui body.vt-ds.se-student:has(#student-utility-dock) {padding-bottom:0!important}
}
@media screen and (min-width:1100px), screen and (min-width:768px) and (pointer:fine) {
  html.vt-dock body.vt-ds.se-student:not(.studio-exam-quiet):not(.exam-program-open):not(.teacher-window) #student-utility-dock#student-utility-dock {
    margin-left:256px;
    max-width:calc(100% - 256px);
  }
}
/* Off-screen drawers must not remain keyboard/screen-reader destinations. */
.gs-sidebar[inert] {pointer-events:none}
/* Preserve the actual menu text; allow long labels to wrap instead of clipping. */
.gs-sidebar :is(button,a) {min-width:0;overflow-wrap:anywhere}
/* Confirmed at 320px: logo + login + join exceeded the header by 27px.
   Keep all labels and the 44px menu target; reclaim only empty gaps/padding. */
@media screen and (max-width:360px) {
  html body .gs-topbar {padding-inline:8px;gap:4px}
  html body .gs-topbar .gs-spacer {display:none}
  html body .gs-topbar .gs-login {padding-inline:4px}
  html body .gs-topbar .gs-join-top {padding-inline:8px}
}

/* /studio now uses browser history controls; hide a stale cached launcher during hydration. */
html body #studio-floating-back#studio-floating-back {display:none!important}
