/* Desktop targets are deliberately small. Coarse pointers get larger touch targets. */
body{--menu-hit:28px;--menu-row:36px;--menu-icon:18px;--menu-rail:132px}
@media(pointer:coarse){body{--menu-hit:42px;--menu-row:50px;--menu-icon:22px;--menu-rail:136px}}
.compact-workspace .tool-dock{gap:3px!important;padding:3px 5px!important;box-sizing:border-box}
.compact-workspace .tool-dock.dock-horizontal:not(.dock-collapsed){height:var(--menu-row)!important;min-height:var(--menu-row)!important;max-height:var(--menu-row)!important;flex-basis:var(--menu-row)!important}
.compact-workspace .tool-dock :is(.tool-control,.workspace-button,.compact-command-heading){box-sizing:border-box;width:auto!important;min-width:var(--menu-hit)!important;max-width:none!important;height:var(--menu-hit)!important;min-height:var(--menu-hit)!important;padding:4px 6px!important;font:12px/1.1 system-ui,sans-serif;border-radius:4px;gap:4px;flex-shrink:0;white-space:nowrap;align-items:center;justify-content:center}
.compact-workspace .tool-dock :is(.tool-icon,svg){width:var(--menu-icon)!important;height:var(--menu-icon)!important;flex-shrink:0}
.tool-dock .tool-dock-head{gap:1px!important}.compact-workspace .tool-dock .tool-dock-head .workspace-button{width:var(--menu-hit)!important;padding:4px!important}
.compact-workspace .tool-dock.dock-compact :is(.tool-control,.workspace-button){width:var(--menu-hit)!important;max-width:var(--menu-hit)!important;padding:4px!important}
.compact-workspace .tool-dock .workspace-scroll,.compact-workspace .tool-dock .workspace-utility{gap:2px!important;scrollbar-width:thin}
.compact-workspace .tool-dock.dock-vertical:not(.dock-collapsed){width:var(--menu-rail)!important;height:calc(100% - var(--workspace-live-top,8px) - var(--tool-dock-bottom,8px) - 4px)!important;max-height:760px!important;min-height:var(--menu-row)!important}
.compact-workspace .tool-dock.dock-vertical.dock-compact:not(.dock-collapsed){width:calc(var(--menu-hit) + 10px)!important}
.compact-workspace .tool-dock.dock-vertical :is(.workspace-scroll,.workspace-utility)>*{height:var(--menu-hit)!important;min-height:var(--menu-hit)!important;white-space:nowrap!important}
.compact-workspace .tool-dock.dock-vertical .workspace-utility{max-height:40%;padding-top:3px}
.compact-workspace .tool-dock.dock-collapsed{width:calc(var(--menu-hit)*3 + 14px)!important;max-width:calc(var(--menu-hit)*3 + 14px)!important;height:var(--menu-row)!important;max-height:var(--menu-row)!important;min-height:var(--menu-row)!important;flex-basis:var(--menu-row)!important}
/* Labels have a single mode, unaffected by dock shape or an old compact setting. */
.compact-labels .tool-dock .tool-icon{display:block!important}.compact-labels .tool-dock .tool-label,.compact-labels .tool-dock .workspace-button-label{display:inline!important;position:static!important;width:auto!important;height:auto!important;margin:0!important;clip:auto!important;overflow:visible!important;white-space:nowrap!important}
body:not(.compact-labels):not(.compact-text-only) .tool-dock :is(.tool-label,.workspace-button-label){display:none!important}
.compact-text-only .tool-dock :is(.tool-icon,svg){display:none!important}.compact-text-only .tool-dock :is(.tool-label,.workspace-button-label){display:inline!important;position:static!important;width:auto!important;height:auto!important;clip:auto!important;margin:0!important;overflow:visible!important}
.compact-text-only .tool-dock .tool-dock-head svg{display:block!important}
#toolFlyout{width:246px;padding:7px;border-radius:6px;font:12px/1.3 system-ui,sans-serif;box-shadow:0 3px 12px #10284733}
#toolFlyout :is(button,input,select){min-height:var(--menu-hit);font-size:12px}#toolFlyout button{padding:4px 6px;border-radius:3px}#toolFlyout .flyout-head{margin:0 0 5px}#toolFlyout .flyout-head button{width:var(--menu-hit);height:var(--menu-hit);font-size:18px;padding:0}#toolFlyout .flyout-swatches{display:flex;gap:5px;flex-wrap:wrap}#toolFlyout .flyout-swatch{width:24px;height:24px;min-height:24px;border-radius:3px}#toolFlyout .flyout-weights{margin:5px 0;gap:4px}#toolFlyout label{margin:5px 0}#toolFlyout p{margin:6px 0}#toolFlyout select{width:154px}#toolFlyout input[type=color]{width:42px;padding:1px}
#toolFlyout.command-palette{width:280px}#toolFlyout .compact-command-group{display:flex;flex-direction:column;gap:2px;padding:3px 0 5px;border-bottom:1px solid #d3dce6}#toolFlyout .compact-command-group:last-child{border:0}#toolFlyout h3{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#5a6d80;margin:3px 5px}#toolFlyout .compact-command-group button{text-align:left;background:transparent;border:0;min-height:var(--menu-hit);width:100%;white-space:normal;line-height:1.25}#toolFlyout .compact-command-group button:hover:enabled{background:#e1ebfa}#toolFlyout button:disabled{opacity:.45;cursor:default}
@media(pointer:coarse){#toolFlyout .flyout-swatch{width:36px;height:36px;min-height:36px}#toolFlyout{font-size:14px}#toolFlyout :is(button,input,select){font-size:14px}}
@media(max-width:760px){.compact-workspace .tool-dock.dock-horizontal:not(.dock-collapsed){display:grid!important;grid-template-columns:auto minmax(0,1fr);grid-template-rows:var(--menu-hit) var(--menu-hit);height:calc(var(--menu-row)*2)!important;min-height:calc(var(--menu-row)*2)!important;max-height:calc(var(--menu-row)*2)!important;flex-basis:calc(var(--menu-row)*2)!important;align-content:center;row-gap:3px!important}.tool-dock.dock-horizontal .workspace-utility{grid-column:1/-1;width:100%!important;overflow:auto!important;border-left:0!important;border-top:1px solid #d1dcea!important;padding:2px 0 0!important;max-height:none!important;flex-direction:row!important;align-items:center!important}.tool-dock.dock-horizontal .workspace-scroll{width:100%!important}.tools-horizontal-overlay .workspace-student-help{top:calc(var(--workspace-live-top,8px) + var(--menu-row)*2 + 4px)}}
.compact-workspace :is(.workspace-top,.workspace-footer){height:var(--menu-row)!important;min-height:var(--menu-row)!important;max-height:var(--menu-row)!important;flex-basis:var(--menu-row)!important;padding:3px 6px!important;gap:4px!important;box-sizing:border-box}
.compact-workspace :is(.workspace-top,.workspace-footer) :is(button,.tool-control,.workspace-button){height:var(--menu-hit)!important;min-height:var(--menu-hit)!important;min-width:var(--menu-hit)!important;padding:4px 6px!important;font-size:12px;box-sizing:border-box}
.compact-workspace :is(.workspace-top,.workspace-footer) :is(.tool-icon,svg){width:var(--menu-icon)!important;height:var(--menu-icon)!important}
.compact-workspace :is(.workspace-top,.workspace-footer) .workspace-button{width:auto!important;gap:4px}.compact-workspace .workspace-summary{min-height:var(--menu-hit);font-size:12px}.compact-workspace .workspace-top>strong{font-size:14px}.compact-workspace .workspace-pages{gap:3px}
#tooltipstatus{padding:6px 10px;font-size:12px;border-radius:5px;max-width:min(440px,90vw);bottom:10px}
/* Responsive grid must never override the existing focus/join/presentation visibility. */
body.compact-workspace:is(.joining,.waiting,.board-focus,.present) nav.workspace-primary.tool-dock,body.compact-workspace nav.workspace-primary.tool-dock[hidden]{display:none!important}
