/* Design handoff after 0b30ac0c: shared compact geometry, existing palette. */
.drums-workshop .workshop-tooltip{position:fixed;z-index:10000;width:max-content;max-width:min(280px,calc(100vw - 16px));box-sizing:border-box;padding:6px 9px;border:1px solid var(--site-line);border-radius:5px;background:var(--workshop-paper);color:var(--site-ink);font:400 12px/1.4 Roboto,Arial,sans-serif;box-shadow:0 3px 10px #0002;pointer-events:none;white-space:normal;overflow-wrap:anywhere}
.drums-workshop .workshop-tooltip[hidden]{display:none}
.drums-workshop #sequence-rename{padding:0 4px;background:transparent;border:0;box-shadow:none;border-radius:4px;min-height:44px;max-width:100%;gap:8px}
.drums-workshop #sequence-rename:hover{background:var(--interaction-surface);color:var(--interaction-ink,var(--site-ink))}
.drums-workshop #sequence-rename svg{width:18px;height:18px;flex:none}
.drums-workshop :is(.editor-playback-group,.sequence-transport,.mobile-editor-transport,.mobile-chain-transport){display:grid;grid-template-columns:minmax(88px,1fr) repeat(3,44px);align-items:center;gap:6px;min-width:0}
.drums-workshop :is(.editor-playback-group,.sequence-transport,.mobile-editor-transport,.mobile-chain-transport)>:is(button,.chain-icon-button){width:100%;min-width:0;height:44px;margin:0;box-sizing:border-box}
.drums-workshop :is(.editor-playback-group,.sequence-transport)>#play,.drums-workshop :is(.editor-playback-group,.sequence-transport)>#sequence-play{white-space:nowrap}
.drums-workshop .sequence-transport,.drums-workshop .editor-playback-group{flex:1 1 270px}
.drums-workshop .party-score-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px;justify-content:flex-start;padding:0;margin:4px 0}
.drums-workshop .party-score-tools>.compact-chain-help{margin:0 auto 0 0;flex:none}
.drums-workshop .party-control-line:empty,.drums-workshop .notation-footer:empty,.drums-workshop .editor-input-actions:empty{display:none}
.drums-workshop #score-panel{position:relative;padding-bottom:42px}
.drums-workshop #score-panel>.notation-help-toggle{position:absolute;left:2px;bottom:0;margin:0;z-index:2}
.drums-workshop #score-panel>#score-zoom{position:absolute;right:2px;bottom:0;margin:0;z-index:2}
.drums-workshop .notation-footer:not(:has(>.notation-help-toggle,>#score-zoom)):has(>.editor-action-message:empty){display:none}
.drums-workshop :is(.workshop-settings-menu,.desktop-local-menu,.chain-menu,.quick-input-menu,.part-instrument-menu){padding:8px;font-size:13px;line-height:1.4;border-radius:6px;max-height:calc(100dvh - 16px);overflow-y:auto;overscroll-behavior:contain}
.drums-workshop :is(.workshop-settings-menu,.desktop-local-menu,.chain-menu,.quick-input-menu) :is(button,select){min-height:34px;padding:6px 8px;font-size:13px}
.drums-workshop :is(.workshop-settings-menu,.desktop-local-menu,.chain-menu) .chain-menu-heading{gap:8px;margin-bottom:4px;padding:0;min-height:36px}
.drums-workshop :is(.workshop-settings-menu,.desktop-local-menu,.chain-menu) .chain-menu-heading>button{min-width:36px;min-height:36px;padding:4px}
.drums-workshop .quick-instrument-menu{width:290px;max-width:calc(100vw - 16px)}
.drums-workshop .quick-instrument-menu .instrument-check-row{min-height:34px;padding-top:3px;padding-bottom:3px}
.drums-workshop .quick-instrument-menu .instrument-choice-group{padding-top:4px;padding-bottom:4px}
.drums-workshop .quick-instrument-menu .instrument-group-heading{min-height:34px}
.drums-workshop .quick-instrument-menu .hint{margin:6px 0 0;font-size:12px}
.drums-workshop .drums-file-dialog,.drums-workshop .chain-group-dialog{font-size:14px;padding:12px;gap:8px}
.drums-workshop :is(.drums-file-dialog,.chain-group-dialog) h2{font-size:17px;line-height:1.3;margin:0}
.drums-workshop :is(.drums-file-dialog,.chain-group-dialog) p{margin:8px 0;font-size:13px;line-height:1.45}
.drums-workshop .drums-file-actions{gap:8px;margin-top:10px}
.drums-workshop .chain-fill-dialog{width:380px;max-width:calc(100vw - 16px)}
.drums-workshop .chain-fill-dialog .drums-file-actions{margin-top:10px}
.drums-workshop .notation-help-dialog{width:440px;max-width:calc(100vw - 16px);padding:8px 12px;max-height:calc(100dvh - 16px)}
.drums-workshop .notation-help-dialog .drums-file-heading{padding:0;margin:0;top:-8px;z-index:6;min-height:44px}
.drums-workshop .notation-help-dialog .drums-file-heading h2{font-size:17px}
.drums-workshop .nh-mode-label{gap:10px;font-size:13px}
.drums-workshop .nh-mode-label select{min-height:38px;padding:6px 8px}
.drums-workshop .nh-tap-hint{font-size:12px;margin:8px 0 4px}
.drums-workshop .nh-picture{max-width:300px;margin:0 auto 4px;overflow:hidden}
.drums-workshop .nh-selected{gap:10px;padding:4px 0;min-height:142px;align-items:center}
.drums-workshop .nh-caption{font-size:13px}
.drums-workshop .nh-selected-name{font-size:14px;font-weight:500}
.drums-workshop .nh-selected-short,.drums-workshop .nh-selected-description{font-size:12px;margin:4px 0}
.drums-workshop .nh-note-sample{width:76px;flex:0 0 76px;height:112px;min-height:112px}
.drums-workshop .nh-note-sample>svg{width:76px!important;height:112px!important;max-height:none}
.drums-workshop .nh-hat-modes,.drums-workshop .nh-playing-modes{display:flex;gap:6px;min-height:40px;margin:4px 0 0}
.drums-workshop .nh-hat-modes button,.drums-workshop .nh-playing-modes button{flex:1;min-width:0;min-height:40px;padding:6px;font-size:13px}
.drums-workshop .nh-playing-modes button[aria-pressed=true]{background:var(--interaction-surface)}
.drums-workshop .nh-mode-reserve{min-height:44px}
.drums-workshop .nh-reference :is(.nh-hat-modes,.nh-playing-modes)[hidden]{display:none!important}
.drums-workshop :is(.nh-fallback,.nh-techniques){padding:0;position:relative}
.drums-workshop .nh-reference summary{padding:8px 0;min-height:44px;font-size:13px}
.drums-workshop .nh-reference .nh-choice-panel{position:absolute;z-index:5;bottom:100%;left:0;right:0;background:var(--workshop-paper);border:1px solid var(--site-line);border-radius:6px;padding:6px;max-height:310px;overflow:auto;box-shadow:0 4px 14px #0002}
.drums-workshop .nh-choice-panel>button{display:block;text-align:left;width:100%;border:0;padding:6px 8px;min-height:36px}
.drums-workshop .nh-choice-panel>button[aria-pressed=true]{background:var(--interaction-surface)}
.drums-workshop .nh-choice-heading{font-size:12px;color:var(--site-muted);padding:4px 8px}
.drums-workshop .nh-techniques p{font-size:12px;margin:6px 0}
.drums-workshop .nh-flam-sample{width:54px;flex:0 0 54px;min-height:44px}
.drums-workshop .nh-flam-sample svg{width:44px!important;height:44px!important;max-height:none}
.drums-workshop .nh-flam-row{min-height:52px;gap:8px}
.drums-workshop .technique-pending{font-size:12px;color:var(--site-muted);margin:4px 0}
.drums-workshop .chain-range-actions[data-compact=true]{box-sizing:border-box;padding:6px 8px;gap:4px;max-width:calc(100vw - 16px);box-shadow:0 3px 12px #0002}
.drums-workshop .chain-range-actions[data-compact=true] .chain-range-heading{display:flex;align-items:center;gap:8px;min-height:40px}
.drums-workshop .chain-range-actions[data-compact=true] .chain-range-heading strong{font-size:13px;font-weight:500;flex:1}
.drums-workshop .chain-range-actions[data-compact=true] .chain-range-commands{display:flex;flex-wrap:wrap;gap:4px}
.drums-workshop .chain-range-actions[data-compact=true] button{font-size:13px;padding:6px 8px;min-height:40px}
.drums-workshop .chain-range-actions[data-compact=true] .chain-range-secondary[hidden]{display:none}
.drums-workshop .chain-reprise-local-tools{display:flex;gap:4px;align-items:center;flex-wrap:wrap;margin:2px 0 6px;font-size:12px}
.drums-workshop .chain-reprise-local-tools button{min-height:32px;padding:4px 8px;font-size:12px;background:transparent;border:1px solid var(--site-line);border-radius:5px}
.drums-workshop .chain-reprise-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:4px 0;margin:0;font-size:12px}
@media (max-width:600px) and (pointer:coarse){
 .drums-workshop .nh-picture{max-width:280px}
 .drums-workshop .nh-mode-label select{font-size:16px}
 .drums-workshop .chain-range-actions[data-compact=true]{position:fixed;max-height:35dvh;overflow:auto}
}
@media (pointer:coarse){
 .drums-workshop :is(.workshop-settings-menu,.desktop-local-menu,.chain-menu,.quick-input-menu,.nh-choice-panel) :is(button,select),.drums-workshop .quick-instrument-menu .instrument-check-row,.drums-workshop .nh-hat-modes button,.drums-workshop .nh-playing-modes button{min-height:44px}
 .drums-workshop .chain-reprise-local-tools button{min-height:44px}
}

.drums-workshop .instrument-playing-techniques{padding:6px 0;margin:8px 0;border:0;border-top:1px solid var(--site-line);font-size:13px}
.drums-workshop .instrument-playing-techniques legend{font-size:12px;color:var(--site-muted);padding:0 4px 0 0}
.drums-workshop .instrument-playing-techniques .technique-current{display:inline-block;padding:6px 8px}

.drums-workshop .chain-reprise-choices{position:relative;margin:0}
.drums-workshop .chain-reprise-choices summary{min-height:36px;padding:6px 8px;box-sizing:border-box}
.drums-workshop .chain-reprise-choice-list{position:absolute;z-index:8;top:100%;left:0;min-width:240px;max-width:calc(100vw - 24px);max-height:220px;overflow:auto;background:var(--workshop-paper);border:1px solid var(--site-line);border-radius:6px;padding:4px;box-shadow:0 3px 12px #0002}
.drums-workshop .chain-reprise-choice-list button{display:block;width:100%;text-align:left;min-height:36px;padding:6px 8px;font-size:13px}
@media (pointer:coarse){.drums-workshop .chain-reprise-choice-list button{min-height:44px}}
.drums-workshop .party-control-line .sequence-transport{display:grid;grid-template-columns:minmax(88px,1fr) repeat(3,44px);flex:1 1 270px;gap:6px}
.drums-workshop .party-control-line .sequence-transport>button{width:100%;height:44px;margin:0;min-width:0}
.drums-workshop :is(.score-preferences-panel,.chain-view-menu,.compact-more-menu,.drums-file-menu,.quick-selection-panel){width:320px;max-width:calc(100vw - 16px);font-size:13px;padding:8px;gap:6px}
.drums-workshop :is(.score-preferences-panel,.chain-view-menu,.quick-selection-panel) :is(button,select){min-height:34px;font-size:13px;padding:6px 8px}
.drums-workshop .quick-selection-panel{max-height:min(440px,calc(100dvh - 16px));overflow-y:auto}
.drums-workshop .chain-range-secondary{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}
@media (pointer:coarse){.drums-workshop :is(.score-preferences-panel,.chain-view-menu,.quick-selection-panel) :is(button,select){min-height:44px}}
/* The compact controls already contain these original controls; their old docks
   hold only hidden return slots and must not reserve an empty bordered band. */
.drums-workshop[data-mobile-controls=compact] #editor-panel .toolbar,.drums-workshop[data-mobile-controls=compact] .party-control-line{display:none}
.drums-workshop[data-mobile-controls=compact] .party-score-tools>.compact-chain-help{order:0;flex:0 0 44px;width:44px;max-width:44px;min-height:44px;margin:0;padding:0;display:inline-flex;align-items:center;justify-content:center}
.drums-workshop[data-mobile-controls=compact] .party-score-tools{margin:4px 0;gap:4px;align-items:center}
.drums-workshop[data-mobile-controls=compact] .party-score-tools>.chain-form-toggle{padding-inline:8px}
.drums-workshop[data-mobile-controls=compact] .constructor-context-actions{display:none}

/* Phone Constructor acceptance, 24 October. Orientation changes presentation only. */
.drums-workshop[data-constructor-only=true] :is(#tab-sequence,#sequence-panel,#party-service-toolbar,#constructor-return-controls,#chain-fill-target,.mobile-editor-apply,#sequence-add-status,#workspace-listening-hint){display:none!important}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.workshop-settings-menu,.meter-popover){box-sizing:border-box;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;overflow-wrap:anywhere}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.workshop-settings-menu,.meter-popover) :is(label,select,.general-settings-group){min-width:0;max-width:100%;box-sizing:border-box}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.compact-more-menu,.quick-input-menu,.quick-selection-panel,#score-preferences-panel,#editor-playback-menu,#workshop-general-settings){width:300px;max-width:calc(100vw - 16px);padding:8px;gap:4px;font:400 13px/1.4 Roboto,Arial,sans-serif}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .compact-more-menu>.compact-menu-action{display:flex;width:100%;min-height:44px;margin:0;padding:8px;text-align:left;border:0;border-radius:5px;font-size:13px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .compact-more-menu>.note-scale-control{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 4px;min-height:44px;font-size:13px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.workshop-settings-menu,.compact-more-menu) .chain-menu-heading{position:sticky;top:-8px;background:var(--workshop-paper);z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:0;min-height:44px;font-size:14px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.workshop-settings-menu,.compact-more-menu) .chain-menu-heading>button{flex:none;width:44px;height:44px;padding:0;font-size:20px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #workshop-general-settings .general-settings-group{padding:6px 0;gap:6px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #workshop-general-settings .general-settings-group label{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;font-size:13px;white-space:normal}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #workshop-general-settings select{font-size:16px;min-height:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .workshop-settings-menu :is(button,select){box-sizing:border-box;font-size:13px;min-height:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .workshop-settings-menu select{font-size:16px}
/* Explicit columns prevent inherited button widths/order from creating another row. */
.drums-workshop[data-mobile-controls=compact] .mobile-editor-transport{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,44px);grid-template-rows:44px;gap:4px;min-width:0;width:100%}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-transport>:is(#play,#editor-undo,#editor-redo,#editor-history-toggle){grid-row:1;order:0;min-width:0;max-width:none;width:100%;height:44px;margin:0;padding:6px;justify-self:stretch}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-transport>#play{grid-column:1;font-size:14px;gap:6px}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-transport>#editor-undo{grid-column:2}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-transport>#editor-redo{grid-column:3}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-transport>#editor-history-toggle{grid-column:4}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-settings{grid-template-columns:minmax(134px,1.4fr) minmax(50px,.65fr) minmax(64px,.8fr);gap:4px}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-settings>.tempo-control{max-width:none;min-width:0;width:100%;flex-basis:auto}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-settings .tempo-value{flex:1 1 36px;min-width:0;width:auto}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-settings .tempo-readout{width:100%;min-width:0;max-width:none;font-size:18px}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-settings :is(#meter-picker>summary,.desktop-global-grid){font-size:16px;line-height:1;min-height:44px;height:44px}
/* In landscape retain the desktop control groups and the full instrument grid. */
.drums-workshop[data-mobile-controls=wide] #editor-panel .toolbar{display:flex;flex-flow:row wrap;align-items:center;gap:8px;margin:8px 0;padding:0 0 8px}
.drums-workshop[data-mobile-controls=wide] .constructor-transport,.drums-workshop[data-mobile-controls=wide] .constructor-options{display:contents}
.drums-workshop[data-mobile-controls=wide] .constructor-grid-options{display:flex;align-items:center;flex-wrap:nowrap;gap:6px;min-width:0}
.drums-workshop[data-mobile-controls=wide] .editor-playback-group{display:grid;grid-template-columns:minmax(88px,1fr) repeat(3,44px);flex:1 1 238px;gap:4px;max-width:340px}
.drums-workshop[data-mobile-controls=wide] .editor-playback-group>:is(#play,#editor-undo,#editor-redo,#editor-history-toggle){grid-row:1;grid-column:auto;width:100%;min-width:0;max-width:none;margin:0;order:0}
.drums-workshop[data-mobile-controls=wide] .toolbar .tempo-control{flex:0 0 188px;width:188px;min-width:188px;margin:0}
.drums-workshop[data-mobile-controls=wide] :is(#beat-navigation,#mobile-grid,.mobile-editor-tools){display:none!important}
.drums-workshop[data-mobile-controls=wide] .desktop-grid{display:block!important;overflow-x:auto;max-width:100%}
.drums-workshop[data-mobile-controls=wide] .constructor-context-actions{display:flex;align-items:center;margin-left:auto}
.drums-workshop[data-constructor-only=true] .constructor-context-actions{border:0;padding:0}
/* Help and loupe are inset on the score, alongside the count; no extra lane. */
.drums-workshop[data-mobile-controls=compact] #score-panel,.drums-workshop[data-mobile-controls=wide] #score-panel{padding-bottom:0}
.drums-workshop[data-mobile-controls=compact] #score-panel>.notation-help-toggle,.drums-workshop[data-mobile-controls=wide] #score-panel>.notation-help-toggle{left:0;bottom:0}
.drums-workshop[data-mobile-controls=compact] #score-panel>#score-zoom,.drums-workshop[data-mobile-controls=wide] #score-panel>#score-zoom{right:0;bottom:0}
@media (max-width:360px) and (pointer:coarse){.drums-workshop[data-mobile-controls=compact] .editor{padding:8px}.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #workshop-general-settings .general-settings-group label{grid-template-columns:minmax(0,1fr)}}
/* v45 acceptance: shared close target, no change to each window's close action. */
.drums-workshop button.workshop-close{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 36px;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;margin:0;border:0!important;background:transparent!important;color:var(--site-ink);font:400 22px/1 Arial,sans-serif;border-radius:5px;box-shadow:none}
@media (pointer:coarse){.drums-workshop button.workshop-close{flex-basis:44px;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}}
.drums-workshop .quick-dynamic-modifiers{padding-top:6px;border-top:1px solid var(--site-line)}
.drums-workshop .quick-input-menu .menu-separator,.drums-workshop .desktop-local-menu .menu-separator{border:0;border-top:1px solid var(--site-line);margin:5px 0}
html[data-drums-theme=dark] .drums-workshop .nh-vector-plane [data-note-track]{opacity:1;filter:drop-shadow(1px 0 #18221c) drop-shadow(-1px 0 #18221c) drop-shadow(0 1px #18221c) drop-shadow(0 -1px #18221c)}
.drums-workshop[data-constructor-only=true] #tab-sequence{display:inline-flex!important;color:var(--site-muted);background:transparent}
.drums-workshop .mobile-version-return[hidden]{display:none}
.drums-workshop .mobile-party-dialog{width:380px;max-width:calc(100vw - 24px)}
.drums-workshop .mobile-party-dialog .drums-file-actions{flex-wrap:wrap}
.drums-workshop .instrument-sidebar-toggle{display:none}
.drums-workshop[data-mobile-controls=wide] .instrument-sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:4px}
.drums-workshop[data-mobile-controls=wide] .editor[data-row-grids=true] :is(.desktop-grid-heading,.instrument-grid-row){grid-template-columns:252px minmax(0,1fr)}
.drums-workshop[data-mobile-controls=wide][data-sidebar-compact=true] .editor[data-row-grids=true] :is(.desktop-grid-heading,.instrument-grid-row){grid-template-columns:108px minmax(0,1fr)}
.drums-workshop[data-mobile-controls=wide] .editor[data-row-grids=true] #grid .row-label.instrument-label{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px 48px;gap:4px;padding-right:6px}
.drums-workshop[data-mobile-controls=wide][data-sidebar-compact=true] .editor[data-row-grids=true] #grid .row-label.instrument-label{grid-template-columns:minmax(0,1fr) 44px}
.drums-workshop[data-mobile-controls=wide][data-sidebar-compact=true] #grid :is(.mute-button,.solo-button){display:none!important}
.drums-workshop[data-mobile-controls=wide][data-sidebar-compact=false] #grid :is(.mute-button,.solo-button){display:inline-flex!important;align-items:center;justify-content:center}
.drums-workshop[data-mobile-controls=wide] #grid .desktop-header-spacer{display:grid;grid-template-columns:minmax(0,1fr) 144px;padding-right:6px;gap:4px}
.drums-workshop[data-mobile-controls=wide][data-sidebar-compact=true] #grid .desktop-header-spacer{grid-template-columns:minmax(0,1fr) 44px}
.drums-workshop[data-mobile-controls=wide] #grid #quick-instrument-toggle{width:100%!important;min-width:0;height:44px;margin:0!important;padding:4px}
.drums-workshop[data-mobile-controls=wide] #grid .instrument-name{min-width:0;white-space:normal}
/* Fixed full-window score survives width/height changes without changing its owner. */
.drums-workshop #score-dialog[open]{position:fixed;inset:8px;box-sizing:border-box;margin:0;width:calc(100vw - 16px)!important;max-width:none;height:calc(100dvh - 16px)!important;max-height:calc(100dvh - 16px);padding:8px;display:flex;flex-direction:column;overflow:hidden}
.drums-workshop #score-dialog-body{flex:1 1 0;min-height:0;min-width:0;overflow:auto}
.drums-workshop #score-dialog .score-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none}
.drums-workshop[data-full-desktop=true]{min-width:1100px}
.drums-workshop[data-full-desktop=true] .unified-desktop :is(#mobile-grid,#beat-navigation,.mobile-editor-tools){display:none!important}
.drums-workshop[data-full-desktop=true] #editor-panel .toolbar{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}
.drums-workshop[data-full-desktop=true] :is(.constructor-transport,.constructor-options){display:contents}
.drums-workshop[data-full-desktop=true] .editor[data-row-grids=true] :is(.desktop-grid-heading,.instrument-grid-row){grid-template-columns:252px minmax(0,1fr)}
.drums-workshop[data-full-desktop=true] .editor[data-row-grids=true] #grid .row-label.instrument-label{grid-template-columns:minmax(0,1fr) 44px 44px 48px}
.drums-workshop[data-full-desktop=true] #grid :is(.mute-button,.solo-button){display:inline-flex!important}
.drums-workshop:is([data-mobile-controls=wide],[data-mobile-controls=compact]) .compact-more-menu{display:block;width:280px;min-width:0;padding:6px}
.drums-workshop .compact-more-menu[hidden]{display:none!important}
.drums-workshop:is([data-mobile-controls=wide],[data-mobile-controls=compact]) .compact-more-menu>.compact-menu-action{min-height:44px;padding:6px 8px;margin:0;font-size:13px}
/* Acceptance repair: explicit owners for mobile tabs, menus, transport and zoom. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .workshop-workspace-bar>.workspace-tabs{display:flex;align-items:center;gap:4px;flex:0 0 auto}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .workspace-tabs>:is(#tab-editor,#tab-sequence){display:inline-flex!important;align-items:center;justify-content:center;vertical-align:middle;box-sizing:border-box;height:44px;min-height:44px;margin:0;padding:6px 10px;font:400 13px/20px Roboto,Arial,sans-serif;white-space:nowrap}
.drums-workshop[data-constructor-only=true] #tab-sequence #sequence-count{display:none}
.drums-workshop[data-constructor-only=true] #tab-sequence{align-self:center;color:var(--site-muted);background:transparent}
/* Same compact list geometry as the other workshop menus. The label and
   disclosure are separate columns; inherited service-button styling stops here. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .compact-more-menu{box-sizing:border-box;width:244px;max-width:calc(100vw - 16px);min-width:0;padding:6px;border:1px solid var(--site-line);border-radius:6px;box-shadow:0 4px 14px #0002;font:400 13px/1.4 Roboto,Arial,sans-serif;overflow-x:hidden}
.drums-workshop[data-mobile-controls] .compact-more-menu>.compact-menu-action{display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:8px;width:100%;margin:0;padding:6px 8px;min-height:40px;border:0;border-radius:4px;text-align:left;background:transparent;color:var(--site-ink);font:400 13px/1.4 Roboto,Arial,sans-serif}
.drums-workshop[data-mobile-controls] .compact-more-menu>.compact-menu-action:hover{background:var(--interaction-hover-surface,var(--workshop-sage))}
.drums-workshop[data-mobile-controls] .compact-more-menu .compact-menu-arrow{text-align:center;color:var(--site-muted)}
.drums-workshop[data-mobile-controls] .compact-more-menu>.chain-menu-heading{min-height:36px;padding:0 0 4px;margin:0;border-bottom:1px solid var(--site-line);font-size:13px}
.drums-workshop[data-mobile-controls] .compact-more-menu>.note-scale-control{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;margin:4px 0;padding:0 2px 5px;border-bottom:1px solid var(--site-line);font-size:12px}
.drums-workshop[data-mobile-controls] .compact-more-menu .compact-service-scale{--compact-scale-step-width:36px;--compact-scale-value-width:48px}
.drums-workshop[data-mobile-controls] .compact-more-menu .note-scale-buttons{height:36px}
.drums-workshop[data-mobile-controls] .compact-more-menu .note-scale-buttons :is(button,input){height:34px;min-height:34px;font-size:13px}
/* Compact fixed groups replace growing Play and the auto-pushed trash lane.
   A shorter landscape viewport wraps whole groups together, all left aligned. */
.drums-workshop[data-mobile-controls=wide] #editor-panel .toolbar{position:static;display:flex;flex-flow:row wrap;align-items:center;justify-content:flex-start;gap:6px;padding:8px 0;margin:0 0 8px}
.drums-workshop[data-mobile-controls=wide] #editor-panel .editor-playback-group{flex:0 0 228px;width:228px;min-width:228px;max-width:228px;grid-template-columns:84px repeat(3,44px);gap:4px}
.drums-workshop[data-mobile-controls=wide] #editor-panel .toolbar .tempo-control{flex:0 0 140px;width:140px;min-width:140px;max-width:140px;height:44px;gap:0;margin:0}
.drums-workshop[data-mobile-controls=wide] .toolbar .tempo-control :is(.tempo-bpm,.tempo-unit){display:none}
.drums-workshop[data-mobile-controls=wide] .toolbar .tempo-control .tempo-step{width:44px;min-width:44px;height:44px;padding:0;flex:0 0 44px}
.drums-workshop[data-mobile-controls=wide] .toolbar .tempo-control .tempo-value{flex:1 1 50px;width:50px;min-width:0}
.drums-workshop[data-mobile-controls=wide] .toolbar .tempo-control .tempo-readout{width:100%;min-width:0;max-width:none;font-size:18px}
.drums-workshop[data-mobile-controls=wide] .toolbar .constructor-grid-options{display:flex;flex:0 0 auto;align-items:center;gap:6px;margin:0}
.drums-workshop[data-mobile-controls=wide] .toolbar .constructor-grid-options #meter-picker{width:60px;flex:none}
.drums-workshop[data-mobile-controls=wide] .toolbar .constructor-grid-options #meter-picker>summary{height:44px;min-height:44px;min-width:0;padding:4px 6px;font-size:14px;justify-content:center}
.drums-workshop[data-mobile-controls=wide] .toolbar .desktop-global-grid{height:44px;min-height:44px;min-width:64px;width:auto;padding:4px 6px;font-size:14px}
.drums-workshop[data-mobile-controls=wide] .toolbar .constructor-context-actions{display:flex;flex:0 0 auto;align-items:center;gap:0;margin:0;padding:0;border:0}
.drums-workshop[data-mobile-controls=wide] .toolbar .editor-input-actions{padding:0;margin:0;border:0}
.drums-workshop[data-mobile-controls=wide] .toolbar #clear{width:44px;height:44px;min-width:44px;padding:8px;margin:0}
/* One header row: original view/share dock left, close at the right edge. */
.drums-workshop #score-dialog[open]{inset:auto;left:calc(var(--score-window-left,0px) + 8px);top:calc(var(--score-window-top,0px) + 8px);width:calc(var(--score-window-width,100vw) - 16px)!important;height:calc(var(--score-window-height,100dvh) - 16px)!important;max-height:none;display:flex;flex-direction:column;gap:4px;padding:6px;overflow:hidden}
.drums-workshop #score-dialog>.score-dialog-heading{display:grid;grid-template-columns:minmax(0,1fr) 44px;grid-template-rows:44px;align-items:center;gap:6px;flex:0 0 44px;width:100%;height:44px;min-height:44px;padding:0;margin:0}
.drums-workshop #score-dialog>.score-dialog-heading>.score-notation-dock{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:space-between;min-width:0;width:100%;height:44px;min-height:44px;padding:0;margin:0}
.drums-workshop #score-dialog #score-dialog-close{grid-column:2;grid-row:1;justify-self:end;align-self:center;margin:0;padding:0}
.drums-workshop #score-dialog #score-dialog-body{display:block;flex:1 1 0;min-width:0;min-height:0;margin:0;padding:0;overflow:hidden}
.drums-workshop #score-dialog #score-viewport{display:block;box-sizing:border-box;width:100%;height:100%;min-height:0!important;margin:0;padding:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}
.drums-workshop #score-dialog #notation{display:flex;align-items:center;justify-content:center;flex:none;box-sizing:border-box;width:var(--expanded-canvas-width,100%)!important;height:var(--expanded-canvas-height,100%)!important;min-width:0;min-height:0;margin:0;padding:0}
.drums-workshop #score-dialog #notation>svg{display:block;flex:none;width:var(--expanded-score-width,100%)!important;height:var(--expanded-score-height,auto)!important;max-width:none!important;max-height:none!important;margin:0}
.drums-workshop #score-dialog>.score-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;flex:0 0 auto;width:100%;min-height:44px;margin:0;padding:0}
.drums-workshop #score-dialog .score-dialog-footer>.note-scale-control{flex:0 1 auto;width:auto;max-width:calc(100% - 50px);margin-left:auto;gap:6px}
@media (pointer:coarse){.drums-workshop[data-mobile-controls] .compact-more-menu>.compact-menu-action{min-height:44px}.drums-workshop[data-mobile-controls] .compact-more-menu .note-scale-buttons{height:44px}.drums-workshop[data-mobile-controls] .compact-more-menu .note-scale-buttons :is(button,input){height:42px;min-height:42px}}
/* This former View wrapper now contains only a fixed popup. Its auto margin
   must not remain a zero-width flex spacer before the trash control. */
.drums-workshop[data-mobile-controls=wide] .toolbar .score-preferences{display:contents;position:static;margin:0;padding:0}
@media (pointer:coarse){.drums-workshop[data-mobile-controls] .compact-more-menu .compact-service-scale{--compact-scale-step-width:44px}}
/* Mobile input: same live grid, quick-input handlers and musical positions. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #mobile-grid{display:none!important}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation{display:flex!important;gap:4px;overflow:auto}
.drums-workshop #beat-navigation select{flex:0 0 auto;max-width:110px;min-height:44px;font:inherit}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #grid{display:block!important;min-width:var(--input-min,100%)!important;--row-grid-min:var(--input-min)!important}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.desktop-grid-heading,.instrument-grid-row){grid-template-columns:var(--input-side,108px) minmax(0,1fr)!important}
.drums-workshop #grid [data-window-hidden=true]{display:none!important}
.drums-workshop[data-mobile-controls=compact] .instrument-sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
.drums-workshop[data-mobile-controls=compact][data-sidebar-compact=true] #grid .row-label.instrument-label{grid-template-columns:minmax(0,1fr) 44px}
.drums-workshop[data-mobile-controls=compact][data-sidebar-compact=true] #grid :is(.mute-button,.solo-button){display:none!important}
.drums-workshop .mobile-input-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}
.drums-workshop .mobile-input-footer[hidden]{display:none}
.drums-workshop .mobile-input-footer>#quick-instrument-toggle{flex:0 0 44px;width:44px!important;min-height:44px;margin:0!important}
.drums-workshop .mobile-input-footer>#grid-hint{flex:1;margin:0;text-align:center}
.drums-workshop[data-mobile-controls=compact][data-sidebar-compact=false] #grid :is(.mute-button,.solo-button){display:inline-flex!important}
.drums-workshop[data-mobile-controls=compact] #grid .desktop-header-spacer{display:flex;align-items:center;justify-content:flex-start}
/* v50: reveal the containing scrollport as well as its live grid in portrait.
   Setting display on #grid alone cannot reveal a hidden ancestor. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .editor:not([data-empty-editor=true]) .desktop-grid{display:block!important;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
.drums-workshop[data-mobile-controls=compact] .mobile-input-footer{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:8px;box-sizing:border-box}
.drums-workshop .mobile-input-footer>#quick-instrument-toggle{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px!important;min-width:44px;height:44px;min-height:44px;padding:4px!important;margin:0!important;line-height:1}
.drums-workshop .mobile-input-footer>#quick-instrument-toggle .instrument-mobile-icon{display:block;flex:none;width:30px;height:22px;margin:0}
.drums-workshop .mobile-input-footer>#grid-hint{min-width:0;white-space:normal;overflow-wrap:break-word}
.drums-workshop .mobile-input-footer>.mobile-add-bar{box-sizing:border-box;min-height:44px;min-width:64px;margin:0;padding:6px 8px;font:inherit;white-space:nowrap}

/* Portrait formatting repair. Time windows retain the existing algorithm;
   only the occupied sidebar width is reduced. Row sound/solo stays in menus. */
.drums-workshop[data-mobile-controls=compact]{--portrait-input-side:120px}
.drums-workshop[data-mobile-controls=compact][data-sidebar-compact=true]{--portrait-input-side:80px}
.drums-workshop[data-mobile-controls=compact] #grid{min-width:calc(var(--input-min,100%) - var(--input-side,108px) + var(--portrait-input-side))!important;--row-grid-min:var(--input-min,0px)!important}
.drums-workshop[data-mobile-controls=compact] .editor[data-row-grids=true] :is(.desktop-grid-heading,.instrument-grid-row){grid-template-columns:var(--portrait-input-side) minmax(0,1fr)!important}
.drums-workshop[data-mobile-controls=compact] .editor[data-row-grids=true] #grid .row-label.instrument-label{display:grid;grid-template-columns:minmax(0,1fr) 44px;grid-template-rows:44px;align-items:center;gap:4px;padding:0 4px 0 0;min-height:44px;box-sizing:border-box}
.drums-workshop[data-mobile-controls=compact] #grid .instrument-label :is(.mute-button,.solo-button){display:none!important}
.drums-workshop[data-mobile-controls=compact] #grid .instrument-name{min-width:0;max-width:100%;white-space:normal;overflow-wrap:normal;word-break:normal;line-height:16px;font-size:12px;padding:2px 0;margin:0}
.drums-workshop[data-mobile-controls=compact] #grid .instrument-grid-control{width:44px;max-width:44px;height:44px;min-height:44px;margin:0}
.drums-workshop[data-mobile-controls=compact] #grid .instrument-grid-cells{align-items:stretch;min-width:0}
.drums-workshop[data-mobile-controls=compact] #grid .cell{min-height:44px;box-sizing:border-box}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation select{box-sizing:border-box;min-width:76px;width:auto;flex:none;height:44px;margin:0;padding:0 24px 0 10px;text-align:center;text-align-last:center;line-height:normal;align-self:center}
.drums-workshop[data-mobile-controls=compact] .mobile-input-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:4px;align-items:center;width:100%;min-width:0}
.drums-workshop[data-mobile-controls=compact] .mobile-input-tools :is(.quick-input-toggle,.quick-select-toggle){display:flex!important;justify-content:center;align-items:center;width:100%;min-width:0;max-width:100%;height:44px;margin:0;padding:4px 6px;box-sizing:border-box;white-space:normal;font-size:13px;line-height:16px}
.drums-workshop[data-mobile-controls=compact] .mobile-input-tools .quick-select-toggle:disabled{opacity:.5}
/* Touch targets remain 44px, but the menu is content-sized rather than 300px. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-input-menu{box-sizing:border-box;width:max-content;min-width:180px;max-width:calc(100vw - 16px);padding:6px;gap:0;font-size:13px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-input-menu :is(button,.quick-flam-option){box-sizing:border-box;min-height:44px;margin:0;padding:6px 8px;font-size:13px;line-height:18px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-input-menu hr{margin:4px 0}
/* Quiet count-group boundary; inset drawing does not change time geometry.
   Hover rules continue to provide their existing stronger inset treatment. */
.drums-workshop :is(.desktop-beat-header,.mobile-pulse-button){box-shadow:inset 0 0 0 1px var(--site-line)}
.drums-workshop .quick-selection-panel button:disabled{opacity:.45;cursor:default}

/* Explicit selection captures the gesture; normal input keeps native panning. */
.drums-workshop #grid[data-quick-mode=select],.drums-workshop #grid[data-quick-mode=select] .cell{touch-action:none}
.drums-workshop #grid:not([data-quick-mode=select]) .cell{touch-action:pan-x pan-y pinch-zoom}
/* A checkbox can paint focus on its label even though the label is not focused. */
html:not([data-drums-focus=keyboard]) .drums-workshop label:has(:focus-visible){outline:none!important;box-shadow:none!important}

.drums-workshop[data-mobile-controls=compact] .mobile-input-tools>.quick-select-toggle{grid-column:auto;grid-row:auto}
.drums-workshop[data-mobile-controls=wide] .editor-input-actions :is(.quick-input-toggle,.quick-select-toggle){min-height:44px;margin:0;font-size:13px;padding:4px 8px}
.drums-workshop[data-mobile-controls=wide] .editor-input-actions .quick-input-toggle{max-width:200px;white-space:normal}

/* Repair: explicit tracks avoid inherited full-row trash placement. */
.drums-workshop[data-mobile-controls=compact] .mobile-input-tools>.quick-input-toggle{grid-column:1;grid-row:1}
.drums-workshop[data-mobile-controls=compact] .mobile-input-tools>.quick-select-toggle{grid-column:2;grid-row:1}
.drums-workshop[data-mobile-controls=compact] .mobile-input-tools>#clear{grid-column:3;grid-row:1;width:44px;margin:0}
.drums-workshop[data-mobile-controls=compact] .mobile-input-tools :is(.quick-input-toggle,.quick-select-toggle){height:auto;min-height:44px;align-self:stretch;overflow-wrap:normal}
.drums-workshop #beat-navigation>select{appearance:none;-webkit-appearance:none;text-align:center;text-align-last:center;box-sizing:border-box;padding:0 24px;line-height:normal;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m2 2 4 4 4-4' fill='none' stroke='%23818b85' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}
.drums-workshop .editor[data-row-grids=true] .desktop-header-spacer{position:sticky;left:0;z-index:6;align-self:stretch;background:var(--workshop-paper)}
.drums-workshop .editor[data-row-grids=true] .desktop-beat-header{width:calc(100% - 6px);justify-self:start}
.drums-workshop .desktop-local-menu .grid-choice,.drums-workshop .grid-choice-text{overflow-wrap:normal;word-break:normal}
.drums-workshop .grid-choice-wide .grid-choice-hint{display:block}

/* Mobile v52 regression repair: one shared slot width, no overflowing targets. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .editor[data-row-grids=true] #grid .cell{min-width:0;width:calc(100% - 4px);max-width:100%;padding:0;min-height:44px;box-sizing:border-box;overflow:hidden}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .editor[data-row-grids=true] .desktop-beat-header{width:calc(100% - 4px);box-sizing:border-box}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #grid .instrument-grid-cells{min-width:0;column-gap:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation>select{width:112px;min-width:112px;max-width:112px;padding:0 22px 0 6px;text-align:left;text-align-last:left;text-indent:0;line-height:normal;background-position:right 6px center;vertical-align:middle}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-select-toggle[aria-pressed=true]{background:var(--workshop-sage);color:var(--workshop-green)}

.drums-workshop .input-window-field{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 112px;box-sizing:border-box;height:44px;margin:0;padding:0 24px;white-space:nowrap;border:1px solid var(--site-line);border-radius:4px;background:var(--workshop-paper);color:var(--site-ink);font:inherit;line-height:normal}
.drums-workshop .input-window-field::after{content:'⌄';position:absolute;right:8px;top:50%;transform:translateY(-50%);pointer-events:none}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation .input-window-field>select{position:absolute;inset:0;opacity:0;width:100%;height:100%;min-width:0;max-width:none;margin:0;padding:0;cursor:pointer}
html[data-drums-focus=keyboard] .drums-workshop .input-window-field:focus-within{outline:2px solid var(--focus-ring);outline-offset:-2px}

/* Accepted mobile toolbar, 26 Oct: minimum composition first, spare width second. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-constructor-controls{display:grid;gap:8px;margin:8px 0;min-width:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-editor-settings:empty{display:none!important}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.mobile-editor-transport,.mobile-input-tools){display:flex;flex-wrap:nowrap;gap:4px;align-items:center;width:100%;min-width:0}
.drums-workshop[data-mobile-controls=compact] .mobile-input-tools{gap:4px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.mobile-editor-transport,.mobile-input-tools)>*{grid-column:auto!important;grid-row:auto!important;order:0;box-sizing:border-box;margin:0!important;min-height:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-control{flex:0 0 auto;width:auto;min-width:44px;max-width:none;height:44px;box-sizing:border-box}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-editor-transport>#play{flex:0 0 90px;width:90px;min-width:90px;padding:4px}
.drums-workshop[data-mobile-controls=compact] .mobile-editor-transport>#play{flex:1 1 90px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-editor-transport>:is(#editor-undo,#editor-redo,#editor-history-toggle,#clear){flex:0 0 44px;width:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.mobile-input-tools,.mobile-editor-transport)>.quick-select-toggle{flex:1 0 44px;min-width:44px;width:44px;max-width:none;font-size:0!important;padding:4px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-select-toggle::before{content:'';display:block;width:16px;height:16px;border:1.5px dashed currentColor;border-radius:2px;margin:auto}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-input-toggle[data-mobile-caption]{flex:1 0 44px;min-width:44px;width:44px;max-width:none;font-size:0!important;padding:4px!important;white-space:nowrap}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-input-toggle[data-mobile-caption]::before{content:'';display:block;width:22px;height:22px;margin:auto;background:currentColor;mask:url('/assets/input-pencil-staff.svg') center/contain no-repeat}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-edit-more{display:inline-flex;align-items:center;justify-content:center;flex:1 0 44px;width:44px;min-width:44px;min-height:44px;padding:4px;margin:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-control[data-mobile-role=grid]{flex:0 0 var(--mobile-control-width,64px);width:var(--mobile-control-width,64px);min-width:var(--mobile-control-width,64px);max-width:var(--mobile-control-width,64px);padding:4px;white-space:normal}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-control[data-mobile-role=meter]{flex:0 0 52px;width:52px;min-width:52px;max-width:52px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-control[data-mobile-role=meter]>summary{padding:4px;min-height:44px;box-sizing:border-box}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation.mobile-window-navigation{display:flex!important;align-items:stretch;gap:0;flex:0 0 132px;width:132px;min-width:132px;height:44px;padding:0;margin:0;overflow:visible}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation.mobile-window-navigation>button{height:44px;min-height:44px;margin:0;box-sizing:border-box;padding:2px 4px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation .input-window-step{flex:0 0 44px;width:44px;min-width:44px;font-size:22px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation .input-window-step:first-child{border-radius:4px 0 0 4px;border-right:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation .input-window-step:last-child{border-radius:0 4px 4px 0;border-left:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #beat-navigation .input-window-scope{flex:0 0 44px;width:44px;min-width:44px;border-radius:0;display:flex;flex-direction:column;justify-content:center;align-items:center;font:13px/16px Arial,sans-serif;white-space:nowrap}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-wrap{flex-wrap:nowrap}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-input-footer{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;align-items:center}
.drums-workshop[data-mobile-controls=compact] #grid .desktop-header-spacer>.instrument-sidebar-toggle{width:100%;flex:1;min-height:44px}
.drums-workshop[data-mobile-controls=wide] #grid .desktop-header-spacer>.quick-input-toggle{flex:1 1 56px;width:44px;min-width:44px}
.drums-workshop[data-mobile-controls=wide] #grid .desktop-header-spacer>.instrument-sidebar-toggle{flex:0 0 44px;width:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.mobile-edit-menu,.input-window-popup){position:fixed;z-index:60;width:276px;box-sizing:border-box;padding:8px;overflow:auto;font-size:13px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0;min-height:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item[hidden]{display:none}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item>.mobile-toolbar-control{flex:0 0 150px;width:150px;min-width:150px;max-width:150px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item>.tempo-control{display:flex;height:44px;min-width:150px;width:150px;gap:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item .tempo-step{width:44px;min-width:44px;padding:2px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item :is(.tempo-bpm,.tempo-unit){display:block}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .input-window-mode{width:100%;min-height:44px;font:inherit}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .input-window-parts{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .input-window-parts>button{flex:1;min-width:44px;min-height:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .input-window-unit{margin-top:8px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-probe{display:flex;position:absolute;visibility:hidden;pointer-events:none;width:max-content;left:0;top:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-probe>*{flex:0 0 auto!important;margin:0!important}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-probe>.quick-select-toggle{width:44px;min-width:44px;font-size:0!important}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-probe>.quick-input-toggle{width:44px;min-width:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-probe>.mobile-window-navigation{display:flex;width:132px;min-width:132px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-probe [data-mobile-role=history]{width:44px;min-width:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-toolbar-probe [data-mobile-role=play]{width:90px;min-width:90px}

/* v54 acceptance repair: empty legacy wrappers must not reserve a second toolbar. */
.drums-workshop[data-constructor-only=true]:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #editor-panel .toolbar{display:none!important}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-input-host{margin:4px 0 8px;padding:0;border:0}
.drums-workshop[data-mobile-controls=wide] .mobile-input-host{display:none}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #grid .desktop-header-spacer{display:flex;align-items:center;padding-right:4px;box-sizing:border-box;gap:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #grid .desktop-header-spacer>.instrument-sidebar-toggle{flex:1;width:100%;min-width:44px;margin:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-edit-menu{width:240px;max-width:calc(100vw - 16px)}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item{flex-direction:column;align-items:stretch;gap:4px;margin:4px 0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item>.mobile-toolbar-control{flex:none;width:100%;min-width:0;max-width:none}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item>.tempo-control{flex:none;width:212px;min-width:212px;max-width:100%;gap:4px;align-self:flex-start}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-input-footer{padding-bottom:env(safe-area-inset-bottom,0px)}

/* Restore full tempo composition and compact the overflow menu without shrinking targets. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item .tempo-unit{flex:0 0 24px;width:24px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-edit-menu .mobile-overflow-trash{flex-direction:row;align-items:center;justify-content:space-between;gap:8px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-trash>.mobile-toolbar-control{flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;padding:4px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-input-menu{width:220px;min-width:0}

/* Reference labels keep the same alignment in both orientations. */
.drums-workshop .nh-mode-label{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px;width:100%}
.drums-workshop .nh-mode-label select{display:block;min-width:0;width:100%;margin:0;box-sizing:border-box}
/* A list picker has one disclosure marker; the adjacent arrows navigate time. */
.drums-workshop .input-window-mode-field{position:relative;width:100%}
.drums-workshop .input-window-mode-field::after{content:"";position:absolute;right:16px;top:50%;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-70%) rotate(45deg);pointer-events:none}
/* Override shared workshop-select native appearance and intrinsic width only here. */
.drums-workshop #input-window-options .input-window-mode-field>select.input-window-mode{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;margin:0;appearance:none;-webkit-appearance:none;background-image:none;padding-inline-end:36px}

/* Mobile menu audit: border-box limits include padding; touch rows stay usable. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.desktop-local-menu,.quick-instrument-menu,.compact-more-menu,.mobile-edit-menu,.input-window-popup,.quick-input-menu,.quick-selection-panel,.workshop-settings-menu,.score-preferences-panel,.chain-view-menu,.chain-menu,.drums-file-menu,.drum-history-panel){box-sizing:border-box;min-width:0;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);overflow-y:auto;overscroll-behavior:contain}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.desktop-local-menu,.quick-instrument-menu,.compact-more-menu,.mobile-edit-menu,.input-window-popup,.quick-input-menu,.quick-selection-panel,.workshop-settings-menu,.score-preferences-panel,.chain-view-menu,.chain-menu,.drums-file-menu,.drum-history-panel) :is(button,select,summary,.instrument-check-row,.instrument-group-heading){box-sizing:border-box;min-height:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.desktop-local-menu,.quick-instrument-menu,.compact-more-menu,.mobile-edit-menu,.input-window-popup,.quick-input-menu,.quick-selection-panel,.workshop-settings-menu,.score-preferences-panel,.chain-view-menu,.chain-menu,.drums-file-menu,.drum-history-panel) button{white-space:normal;word-break:normal;overflow-wrap:break-word}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .quick-instrument-menu .instrument-group-heading{min-height:44px}

/* One stable action strip for the whole score, outside musical row geometry. */
.drums-workshop .chain-score-actions{position:relative;height:56px;min-height:56px;max-width:100%;line-height:1.4}
.drums-workshop .chain-score-local-actions>.chain-bar-selection-toolbar{position:static;height:44px;flex:0 0 auto;width:auto!important;pointer-events:auto}
.drums-workshop .chain-score-actions .chain-bar-local-tools{position:static;display:flex;flex-wrap:nowrap;width:max-content;height:44px}
.drums-workshop .chain-score-local-actions>.chain-reprise-local-tools{flex:0 0 auto;flex-wrap:nowrap;margin:0;line-height:1.4}
.drums-workshop .chain-score-actions .chain-reprise-local-tools button{min-height:44px;padding:8px 12px;white-space:nowrap;color:var(--interaction-ink,var(--workshop-green));background:var(--interaction-surface,var(--workshop-paper));border:1px solid var(--interaction-border,var(--site-line));border-radius:6px}
.drums-workshop .chain-score-actions .chain-reprise-local-tools button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}
@media print{.drums-workshop .chain-score-actions{display:none}}

.drums-workshop .chain-system:has(>.chain-section-heading)>.chain-section-heading{max-width:100%}

/* v63 mobile review: component geometry follows the selected layout. */
.drums-workshop .meter-popover select#meter-denominator.workshop-select{flex:0 0 72px;width:72px;min-width:72px;height:44px;padding:5px 28px 5px 9px;text-align:center;text-align-last:center}
html .drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(.quick-input-toggle,.quick-select-toggle)[aria-pressed=true]{background:var(--workshop-sage);color:var(--workshop-green);border-color:var(--workshop-green);box-shadow:inset 0 0 0 1px var(--workshop-green)}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-overflow-item>.tempo-control{width:100%;min-width:0;max-width:none;align-self:stretch}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-constructor-controls{margin-bottom:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .mobile-input-host{margin-top:8px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) .desktop-header-spacer>.instrument-sidebar-toggle{height:44px;min-height:44px;align-self:center;box-sizing:border-box;padding-block:4px}
.drums-workshop[data-mobile-controls=desktop] .constructor-context-actions{flex:0 0 auto}
.drums-workshop[data-mobile-controls=desktop] .constructor-return-controls .chain-fill-actions #sequence-add{flex:0 0 auto;min-width:max-content;max-width:none;white-space:nowrap}
/* Shared controls follow the selected bar without changing row geometry. */
.drums-workshop .chain-score-local-actions{position:fixed;z-index:20;display:flex;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 16px);box-sizing:border-box;overflow:auto;overscroll-behavior:contain;background:var(--workshop-paper);border:1px solid var(--interaction-border,var(--site-line));border-radius:6px}
.drums-workshop .chain-score-local-actions[hidden]{display:none}

/* v64 acceptance: compact notices, menu typography and bounded controls. */
.drums-workshop .workspace-notices{display:flex;flex-direction:column;gap:4px;margin:6px 0 12px;padding:0}
.drums-workshop .workspace-notices>.hint{margin:0;padding:0;min-height:0;line-height:1.45;font-size:12px}
.drums-workshop .workspace-notices>.hint:empty{display:none}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #workshop-general-settings .general-settings-group select.workshop-select{font-size:14px;line-height:1.4;min-height:40px;padding:6px 24px 6px 8px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #workshop-general-settings .general-settings-group label{grid-template-columns:minmax(0,1fr);gap:4px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(#editor-service-toolbar-more,#party-service-toolbar-more).compact-more-menu{width:232px}

.drums-workshop main>header h1 .drum-beta{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;margin-inline-start:8px;padding:4px 8px;min-height:44px;min-width:44px;font:400 12px/1.4 Roboto,Arial,sans-serif;letter-spacing:normal;border:1px solid var(--site-line);border-radius:6px;background:var(--workshop-paper);color:var(--site-ink)}
.drums-workshop .drum-beta-dialog{width:420px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);box-sizing:border-box;overflow:auto;padding:16px;background:var(--workshop-paper);color:var(--site-ink);border:1px solid var(--site-line);border-radius:8px}
.drum-beta-dialog .chain-menu-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.drum-beta-dialog h2{font-size:18px;line-height:1.4}.drum-beta-dialog .chain-menu-heading button{flex:none;min-width:44px;min-height:44px}.drum-beta-dialog p{font-size:14px;line-height:1.5}.drum-beta-dialog .drum-beta-build{font-size:12px;overflow-wrap:anywhere}

/* Long dialog actions must stay readable on narrow screens. */
.drums-workshop .note-conflict-dialog .part-paste-actions{flex-wrap:wrap}
.drums-workshop .note-conflict-dialog .part-paste-actions button{min-width:0;max-width:100%;height:auto;white-space:normal;overflow-wrap:anywhere}
@media (max-width:600px) and (pointer:coarse){.drums-workshop .note-conflict-dialog .part-paste-actions{flex-direction:column;align-items:stretch;position:static}.drums-workshop .note-conflict-dialog .part-paste-actions button{width:100%;min-height:44px;text-align:center}.drums-workshop .note-conflict-dialog .part-paste-heading{position:sticky;top:0;z-index:1;background:var(--workshop-paper)}}

/* Addressed mobile menu regressions; no dialog/form geometry changes. */
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(#score-preferences-panel,#chain-view-menu,#editor-playback-menu,#party-playback-menu){display:grid;grid-template-columns:minmax(0,1fr);width:min(288px,calc(100vw - 16px));min-width:0;gap:6px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(#score-preferences-panel,#chain-view-menu,#editor-playback-menu,#party-playback-menu)[hidden]{display:none}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(#score-preferences-panel,#chain-view-menu,#editor-playback-menu,#party-playback-menu)>.chain-menu-heading{display:grid;grid-template-columns:minmax(0,1fr) 44px;grid-column:1/-1;gap:6px;align-items:center;width:100%;min-width:0}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(#score-preferences-panel,#chain-view-menu,#editor-playback-menu,#party-playback-menu)>.chain-menu-heading:has(.compact-panel-back){grid-template-columns:auto minmax(0,1fr) 44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(#score-preferences-panel,#chain-view-menu,#editor-playback-menu,#party-playback-menu)>.chain-menu-heading strong{min-width:0;font-size:13px;line-height:1.3;word-break:normal;overflow-wrap:normal}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(#editor-playback-menu,#party-playback-menu)>label{display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0;gap:4px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) :is(#editor-playback-menu,#party-playback-menu)>label:has(input[type=checkbox]){flex-direction:row;align-items:center}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #mobile-edit-overflow{display:block;width:min(224px,calc(100vw - 16px));min-width:0;padding:8px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #mobile-edit-overflow[hidden]{display:none}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #mobile-edit-overflow>.chain-menu-heading{position:static;display:flex;justify-content:space-between;min-height:44px}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #mobile-edit-overflow .mobile-overflow-label{flex:none;min-height:18px;line-height:1.4}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #mobile-edit-overflow .tempo-control{width:100%;min-width:0;max-width:100%;gap:2px;box-sizing:border-box}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #mobile-edit-overflow .tempo-control .tempo-value{flex:1;min-width:36px;width:auto}
.drums-workshop:is([data-mobile-controls=compact],[data-mobile-controls=wide]) #mobile-edit-overflow .tempo-control .tempo-bpm{flex:none;font-size:12px}

/* Desktop workshop keeps its accepted geometry; narrow windows scroll. */
@media(pointer:fine){body.drums-workshop{min-width:1100px} .drums-workshop .workshop-workspace-bar{flex-wrap:nowrap}}

@media(pointer:fine){
 html.drums-viewport{overflow-x:auto}
 body.drums-workshop{overflow-x:visible;max-width:none}
 .drums-workshop #editor-panel .desktop-grid{display:block!important}
 .drums-workshop #editor-panel .mobile-grid{display:none!important}
}

/* View is a floating panel, independent of hidden transport toolbars. */
.drums-workshop #score-preferences-panel{width:min(320px,calc(100vw - 16px));min-width:0;box-sizing:border-box;grid-template-columns:minmax(0,1fr);gap:8px}
.drums-workshop #score-preferences-panel>label{min-width:0;max-width:100%;width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:4px;white-space:normal;overflow-wrap:anywhere}
.drums-workshop #score-preferences-panel>label:has(input[type=checkbox]){display:flex;flex-wrap:nowrap;align-items:center;gap:8px}
.drums-workshop #score-preferences-panel select{min-width:0;max-width:100%;width:100%;box-sizing:border-box}

.drums-workshop #score-preferences-panel>.editor-mode{display:none}

/* VA02-R4/R5: local UI only. No score geometry or global selection tokens. */
.drums-workshop .chain-bar-local-tools>.chain-bar-dismiss{position:relative;isolation:isolate;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:6px;background:transparent;color:var(--interaction-ink,var(--workshop-green));font-size:22px;line-height:1}
.drums-workshop .chain-bar-local-tools>.chain-bar-dismiss::before{content:'';position:absolute;inset:6px;z-index:-1;pointer-events:none;border:1px solid var(--interaction-border,var(--site-line));border-radius:6px;background:var(--interaction-surface,var(--workshop-paper))}
.drums-workshop .chain-bar-hit:is([data-selected=true],[data-range-selected=true]){background:var(--selection-empty)!important}
.drums-workshop .chain-bar-hit[data-selected=true]:not([data-range-selected=true]){box-shadow:inset 0 0 0 1px var(--selection-border)}
.drums-workshop .chain-bar-hit[data-range-selected=true]{box-shadow:none!important}
.drums-workshop .chain-range-outline{border:1px solid var(--selection-border)}
.drums-workshop .chain-bar-hit[data-active=true]:is([data-selected=true],[data-range-selected=true]){outline:1px dashed var(--workshop-green);outline-offset:-3px}

/* Addressed return controls use the existing idle/hover/pressed palette. */
.drums-workshop .constructor-return-controls :is(#sequence-save-return,#sequence-go-chain):not(.primary){
 background:var(--interaction-surface,var(--workshop-paper));
 color:var(--interaction-ink,var(--site-ink));
 border-color:var(--interaction-border,var(--site-line));
}
.drums-workshop #constructor-extra-toggle{
 background:var(--interaction-surface,var(--workshop-paper));
 color:var(--interaction-ink,var(--workshop-green));
 border-color:var(--interaction-border,var(--site-line));
}
.drums-workshop .constructor-return-menu>button{
 background:var(--interaction-surface,transparent);
 color:var(--interaction-ink,var(--site-ink));
}

.drums-workshop .constructor-return-menu>button:hover{background:var(--interaction-surface,transparent)}

/* All five bar actions use the same 44px target / 32px surface. */
.drums-workshop .chain-score-local-actions :is(.chain-bar-listen,.chain-bar-repeat,.chain-bar-edit,.chain-bar-more,.chain-bar-dismiss){position:relative;isolation:isolate;display:grid;place-items:center;flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;margin:0;border:0;border-radius:6px;background:transparent;color:var(--interaction-ink,var(--workshop-green));line-height:1}
.drums-workshop .chain-score-local-actions :is(.chain-bar-listen,.chain-bar-repeat,.chain-bar-edit,.chain-bar-more,.chain-bar-dismiss)::before{content:'';position:absolute;inset:6px;z-index:-1;border:1px solid var(--interaction-border,var(--site-line));border-radius:6px;background:var(--interaction-surface,var(--workshop-paper));pointer-events:none}
.drums-workshop .chain-score-local-actions>.chain-bar-dismiss:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-1px}

.drums-workshop .chain-score-local-actions>.chain-bar-dismiss{font-size:22px}

/* VA-02 selection revision: historical fill below notation; no ink tint. */
.drums-workshop .chain-bar-hit[data-range-selected=true]{border-radius:0}
.drums-workshop [data-annotation-selection-root]{position:relative;isolation:isolate}
.drums-workshop [data-annotation-selection-root]>.chain-system{z-index:1}
.annotation-selection-underlay{position:absolute;inset:0;z-index:0;pointer-events:none!important}
.annotation-selection-underlay>div{position:absolute;background:var(--selection-empty);border-radius:3px;pointer-events:none!important}
@media print{.annotation-selection-underlay{display:none!important}}

/* Shared Party panel: same surface/target profile for the new delete action. */
.drums-workshop .chain-score-local-actions .chain-bar-delete{position:relative;isolation:isolate;display:grid;place-items:center;flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;margin:0;border:0;border-radius:6px;background:transparent;color:var(--interaction-ink,var(--workshop-green));line-height:1}
.drums-workshop .chain-score-local-actions .chain-bar-delete::before{content:'';position:absolute;inset:6px;z-index:-1;border:1px solid var(--interaction-border,var(--site-line));border-radius:6px;background:var(--interaction-surface,var(--workshop-paper));pointer-events:none}
.drums-workshop .chain-score-local-actions .chain-bar-delete:hover::before{background:var(--interaction-hover,var(--workshop-sage))}
.drums-workshop .chain-score-local-actions .chain-bar-delete:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-1px}

/* MP1–MP7: scoped compact mobile Party transition, unchanged actions. */
.drums-workshop dialog.mobile-party-dialog{box-sizing:border-box;width:min(380px,calc(100vw - 16px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-width:calc(100vw - 16px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:0;gap:0;overflow:hidden;border:1px solid var(--site-line);border-radius:8px;background:var(--workshop-paper);color:var(--site-ink)}
.drums-workshop dialog.mobile-party-dialog[open]{display:flex;flex-direction:column}
.drums-workshop dialog.mobile-party-dialog>header{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;margin:0;border-bottom:1px solid var(--site-line)}
.drums-workshop dialog.mobile-party-dialog>header h2{font-size:17px;line-height:1.3;font-weight:500;margin:0}
.drums-workshop dialog.mobile-party-dialog>header button{flex:none;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;margin:0}
.drums-workshop dialog.mobile-party-dialog>.mobile-party-body{min-width:0;min-height:0;flex:0 1 auto;overflow-y:auto;display:grid;gap:8px;padding:10px 12px;font-size:14px;line-height:1.4}
.drums-workshop dialog.mobile-party-dialog>.mobile-party-body p{margin:0}
.drums-workshop dialog.mobile-party-dialog>footer.drums-file-actions{flex:none;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:8px 12px;margin:0;border-top:1px solid var(--site-line)}
.drums-workshop dialog.mobile-party-dialog>footer button{box-sizing:border-box;width:100%;min-width:0;min-height:44px;height:auto;margin:0;padding:6px 10px;font-size:13px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;text-align:center}

/* PARTY-TOP-SPACE-01: first section controls share the existing 56px lane.
   DOM, drag ownership and music geometry stay intact. Oversized headings keep
   their original row instead of being clipped or growing over the score. */
.drums-workshop .chain-system[data-shared-section-heading=true]>.chain-section-heading{position:absolute;top:-56px;left:0;max-width:100%;max-height:none;align-self:start}
@media print{.drums-workshop .chain-system[data-shared-section-heading=true]>.chain-section-heading{display:none}}
/* LA approved local panel profile, never a global button standard. */
.drums-workshop :is(.chain-score-local-actions,.annotation-local-panel){background:var(--workshop-paper);border:1px solid color-mix(in srgb,var(--site-line) 70%,var(--workshop-green) 30%);border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,.14);opacity:1}
html[data-drums-theme=dark] .drums-workshop :is(.chain-score-local-actions,.annotation-local-panel){box-shadow:0 2px 6px rgba(0,0,0,.30)}
.drums-workshop .chain-score-local-actions[data-action-layout=two]{display:grid;grid-template-columns:minmax(0,max-content);gap:4px;align-items:start}
.drums-workshop .chain-score-local-actions[data-action-layout=two]>.chain-reprise-local-tools{justify-self:stretch;min-width:0;max-width:100%;width:100%;display:flex}
.drums-workshop .chain-score-local-actions>.chain-reprise-local-tools button{position:relative;isolation:isolate;box-sizing:border-box;min-height:44px;padding:6px 14px;border:0;background:transparent;color:var(--workshop-green);font-size:13px;line-height:1.4}
.drums-workshop .chain-score-local-actions>.chain-reprise-local-tools button::before{content:'';position:absolute;inset:6px;z-index:-1;border:1px solid var(--site-line);border-radius:6px;background:var(--workshop-paper);pointer-events:none}
.drums-workshop .chain-score-local-actions[data-action-layout=two]>.chain-reprise-local-tools button{width:100%;max-width:100%;white-space:normal;overflow-wrap:break-word}
.drums-workshop .chain-score-local-actions>.chain-reprise-local-tools button:hover::before{background:var(--interaction-hover,var(--workshop-sage))}
.drums-workshop .chain-score-local-actions .chain-bar-delete{color:var(--workshop-green)}
.drums-workshop .chain-score-local-actions .chain-bar-delete:is(:hover,:focus-visible):not(:disabled){color:var(--danger-fg)}
.drums-workshop .chain-score-local-actions .chain-bar-delete:is(:hover,:focus-visible):not(:disabled)::before{background:var(--danger-hover-bg);border-color:var(--danger-fg)}
.drums-workshop .chain-score-local-actions .chain-bar-delete:active:not(:disabled)::before{background:var(--danger-pressed-bg);border-color:var(--danger-fg)}
.drums-workshop .chain-score-local-actions[data-action-layout=two]>.chain-reprise-local-tools{width:0;min-width:100%;max-width:100%}
/* LA-C1: 4px visual gaps on fine, nonoverlapping 44px targets on coarse. */
.drums-workshop .chain-score-local-actions{--la-target:32px;padding:4px;gap:4px}
.drums-workshop .chain-score-local-actions>.chain-bar-selection-toolbar,.drums-workshop .chain-score-actions .chain-bar-local-tools{height:var(--la-target,32px)}
.drums-workshop .chain-score-local-actions .chain-bar-local-tools{gap:4px}
.drums-workshop .chain-score-local-actions :is(.chain-bar-listen,.chain-bar-repeat,.chain-bar-edit,.chain-bar-more,.chain-bar-delete,.chain-bar-dismiss){flex:0 0 var(--la-target);width:var(--la-target);min-width:var(--la-target);height:var(--la-target);min-height:var(--la-target)}
.drums-workshop .chain-score-local-actions :is(.chain-bar-listen,.chain-bar-repeat,.chain-bar-edit,.chain-bar-more,.chain-bar-delete,.chain-bar-dismiss)::before{inset:calc((var(--la-target) - 32px)/2)}
.drums-workshop .chain-score-local-actions>.chain-reprise-local-tools button{min-height:var(--la-target);padding:calc((var(--la-target) - 32px)/2 + 5px) calc((var(--la-target) - 32px)/2 + 8px)}
.drums-workshop .chain-score-local-actions>.chain-reprise-local-tools button::before{inset:calc((var(--la-target) - 32px)/2)}
@media(pointer:coarse){.drums-workshop .chain-score-local-actions{--la-target:44px}}
/* Accepted desktop sidebar proportions: 252 expanded, 96 collapsed. */
.drums-workshop[data-mobile-controls=desktop] #grid .desktop-header-spacer{display:flex;align-items:stretch;gap:4px;padding-right:6px;box-sizing:border-box}
.drums-workshop[data-mobile-controls=desktop] #grid .desktop-header-spacer>.quick-controls{display:flex;flex:1;gap:4px;min-width:0}
.drums-workshop[data-mobile-controls=desktop] #grid .quick-controls>button{flex:1;width:0;min-width:0;height:40px;box-sizing:border-box;margin:0;padding:4px;white-space:nowrap}
.drums-workshop[data-mobile-controls=desktop] .instrument-sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;min-width:0;width:32px;height:40px;margin:0;padding:4px;box-sizing:border-box}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] .editor[data-row-grids=true] :is(.desktop-grid-heading,.instrument-grid-row){grid-template-columns:96px minmax(0,1fr)}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] #grid .row-label.instrument-label{display:grid;grid-template-columns:56px 32px;gap:4px;padding-right:4px}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] #grid :is(.mute-button,.solo-button){display:none!important}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] #grid .instrument-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] #grid .instrument-grid-control{min-width:0;width:32px;padding-inline:2px}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] #grid .desktop-header-spacer{gap:2px;padding-right:2px}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] #grid .desktop-header-spacer>.quick-controls{gap:2px}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] .instrument-sidebar-toggle{flex-basis:30px;width:30px}
.drums-workshop[data-mobile-controls=desktop] .quick-input-toggle::before{content:'';display:inline-block;width:18px;height:18px;vertical-align:middle;margin-right:4px;background:currentColor;mask:url('/assets/input-pencil-staff.svg') center/contain no-repeat}
.drums-workshop[data-mobile-controls=desktop] .quick-select-toggle::before{content:'';display:inline-block;width:15px;height:15px;vertical-align:middle;border:1.5px dashed currentColor;box-sizing:border-box;margin-right:4px}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] #grid .quick-controls>button{font-size:0}
.drums-workshop[data-mobile-controls=desktop][data-sidebar-compact=true] #grid .quick-controls>button::before{margin:0}
.drums-workshop .desktop-input-status{display:none}
.drums-workshop[data-mobile-controls=desktop] .desktop-input-status{display:block;margin:4px 0;font-size:12px;color:var(--site-muted)}

/* First heading shares the action lane, with its lower edge at the score. */
.drums-workshop .chain-system[data-shared-section-heading=true]>.chain-section-heading{top:auto;bottom:100%}
.drums-workshop .chain-system[data-shared-section-heading=true]>.chain-system-canvas{grid-area:1/1}
/* Party View rows share label/control columns, including the caption stepper. */
.drums-workshop #chain-view-menu{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:12px}
.drums-workshop #chain-view-menu> :is(.chain-menu-heading,label,button,p,.hint,#chain-label-scale-controls){grid-column:1/-1}
.drums-workshop #chain-view-menu>label:has(>select),.drums-workshop #chain-view-menu>#chain-label-scale-controls,.drums-workshop #chain-label-scale-controls>.note-scale-control{display:grid;grid-template-columns:subgrid;column-gap:12px;align-items:center;min-width:0}
.drums-workshop #chain-label-scale-controls>.note-scale-control{grid-column:1/-1;box-sizing:border-box;margin:0;padding:3px 4px;font-size:var(--menu-font-size);color:var(--site-muted)}
.drums-workshop #chain-label-scale-controls .note-scale-buttons{justify-self:start;box-sizing:border-box;border:0;box-shadow:inset 0 0 0 1px var(--site-line);height:var(--menu-row-height)}
.drums-workshop #chain-label-scale-controls .note-scale-buttons :is(button,input){box-sizing:border-box;height:var(--menu-row-height);min-height:var(--menu-row-height);margin:0;padding:4px 6px;font-size:var(--menu-font-size)}
.drums-workshop #chain-label-scale-controls .note-scale-buttons>button{width:var(--menu-row-height);min-width:var(--menu-row-height)}
.drums-workshop #chain-label-scale-controls .note-scale-value{width:64px}
.drums-workshop #chain-label-scale-controls .note-scale-error{grid-column:1/-1}
.drums-workshop #chain-view-menu[hidden],.drums-workshop #chain-view-menu>#chain-label-scale-controls[hidden]{display:none}
@media (max-width:480px) and (pointer:coarse){.drums-workshop #chain-view-menu{grid-template-columns:minmax(0,1fr)}.drums-workshop #chain-label-scale-controls>.note-scale-control{row-gap:4px}}
/* Caption steppers share the accepted View component in both contexts. */
.drums-workshop dialog#print-dialog #pdf-label-scale-controls>.note-scale-control{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;min-width:0;margin:0;font-size:var(--menu-font-size);line-height:1.5;color:var(--site-muted)}
.drums-workshop dialog#print-dialog #pdf-label-scale-controls .note-scale-buttons{justify-self:start;box-sizing:border-box;border:0;box-shadow:inset 0 0 0 1px var(--site-line);height:var(--menu-row-height);background:transparent}
.drums-workshop dialog#print-dialog #pdf-label-scale-controls .note-scale-buttons :is(button,input){box-sizing:border-box;height:var(--menu-row-height);min-height:var(--menu-row-height);margin:0;padding:4px 6px;font-size:var(--menu-font-size)}
.drums-workshop dialog#print-dialog #pdf-label-scale-controls .note-scale-buttons>button{width:var(--menu-row-height);min-width:var(--menu-row-height)}
.drums-workshop dialog#print-dialog #pdf-label-scale-controls .note-scale-value{width:64px}
.drums-workshop dialog#print-dialog #pdf-label-scale-controls .note-scale-error{max-width:100%;box-sizing:border-box}
@media(pointer:coarse){.drums-workshop dialog#print-dialog #pdf-label-scale-controls{--menu-row-height:44px}}
/* Desktop Party retains its fixed composition while the page scrolls. */
.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) .party-sticky-header{position:sticky;top:0;z-index:40;background:var(--workshop-paper)}
.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) .party-sticky-header .party-control-line{flex-wrap:nowrap}
.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) .party-sticky-header .sequence-toolbar{flex-wrap:nowrap;flex-shrink:0}
.drums-workshop .party-view-navigation{display:flex;align-items:center;flex:none;gap:8px;flex-wrap:nowrap}
.drums-workshop .party-view-navigation[hidden]{display:none}
.drums-workshop .party-view-navigation>.mode-switch{display:flex;flex:none;flex-wrap:nowrap;width:auto;margin:0;gap:2px}
.drums-workshop .party-view-navigation>.mode-switch button{width:auto;min-height:40px;margin:0;padding:6px 10px;white-space:nowrap}
.drums-workshop .party-view-navigation>.chain-form-toggle{flex:none;white-space:nowrap;margin:0}
html:has(body.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) #sequence-panel:not([hidden])){scroll-padding-top:var(--party-header-clearance,140px)}
@media print{.drums-workshop .party-sticky-header{position:static}}

/* Preserve the original segmented switch and Form button after relocation. */
.drums-workshop .party-view-navigation>.mode-switch{display:inline-flex;gap:0;padding:0;border:1px solid var(--site-line);border-radius:6px;overflow:visible;background:transparent}
.drums-workshop .party-view-navigation>.mode-switch>button{border:0;margin:0;border-radius:0;box-shadow:none}
.drums-workshop .party-view-navigation>.mode-switch>button:first-child{border-radius:5px 0 0 5px}
.drums-workshop .party-view-navigation>.mode-switch>button:last-child{border-left:1px solid var(--site-line);border-radius:0 5px 5px 0}
.drums-workshop .party-view-navigation>.chain-form-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;order:0;width:auto;min-height:44px;margin:0;padding:6px 10px;border:1px solid var(--site-line);border-radius:6px;background:var(--interaction-surface,var(--workshop-paper));color:var(--site-ink);font:inherit;font-size:13px;white-space:nowrap}
.drums-workshop .party-view-navigation>.chain-form-toggle[aria-expanded=true]{background:var(--workshop-sage);color:var(--workshop-green)}
.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) .party-sticky-header .party-score-tools{flex-wrap:nowrap}



.drums-workshop .party-help-dialog{box-sizing:border-box;width:max-content;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--site-line);border-radius:8px;background:var(--workshop-paper);color:var(--site-ink);overflow:hidden}
.drums-workshop .party-help-dialog[open]{display:flex;flex-direction:column}
.drums-workshop .party-help-dialog::backdrop{background:#0007}
.drums-workshop .party-help-dialog>.chain-menu-heading{flex:none;margin:0;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--site-line)}
.drums-workshop .party-help-dialog>.chain-menu-heading button{flex:none;width:44px;min-height:44px;margin:0;padding:4px;border:0;background:transparent;color:inherit;font-size:22px}
.drums-workshop .party-help-text{overflow:auto;min-height:0;padding:12px;overscroll-behavior:contain}
.drums-workshop .party-help-text .hint{margin:0;max-width:none;white-space:pre-line}

/* Party action row: common lower edge, centered help, symmetric score clearance. */
.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) .party-sticky-header .party-control-line{margin-bottom:0}
.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) .party-sticky-header .party-score-tools{box-sizing:border-box;align-items:flex-end;margin:0;padding:14px 0;border-bottom:1px solid var(--site-line)}
.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) .party-sticky-header .party-score-tools>:is(.notation-picker-toggle,.chain-form-toggle,#sequence-clear){box-sizing:border-box;height:44px;min-height:44px;margin-block:0}
.drums-workshop:is([data-full-desktop=true],[data-mobile-controls=desktop]) .party-sticky-header .party-score-tools>.compact-chain-help{align-self:center;margin-block:0}

.quarter-grid-hint{position:fixed;z-index:1500;display:flex;gap:8px;align-items:center;max-width:calc(100vw - 16px);box-sizing:border-box;padding:6px 8px;border:1px solid var(--site-line);border-radius:6px;background:var(--workshop-paper);color:var(--site-ink);font-size:13px}.quarter-grid-hint button{min-height:44px}.quarter-grid-target{position:fixed;z-index:1100;pointer-events:none;box-sizing:border-box;border:2px solid var(--selection-border)}.quarter-grid-menu{z-index:1600}.quarter-grid-menu strong{display:block;padding:4px;white-space:normal}.quarter-grid-menu button{display:block;min-height:44px}.quarter-grid-hint[hidden],.quarter-grid-target[hidden],.quarter-grid-menu[hidden]{display:none}

/* Addressed grid menu profiles; preferred 22rem remains subject to user acceptance. */
.drums-workshop .desktop-local-menu:is(.quarter-grid-options,.quarter-grid-menu){width:22rem;max-width:calc(100vw - 16px);box-sizing:border-box;overflow-x:hidden;overflow-y:auto}
.drums-workshop .desktop-local-menu:is(.quarter-grid-options,.quarter-grid-menu) :is(button,strong,p,summary,.grid-choice-text){min-width:0;max-width:100%;white-space:pre-line;overflow-wrap:anywhere;box-sizing:border-box}
.drums-workshop .desktop-local-menu.quarter-grid-options>button{width:100%}
.drums-workshop .quarter-grid-hint{width:max-content;gap:4px;padding:4px;font-size:13px;flex-wrap:wrap;min-height:32px}
.drums-workshop .quarter-grid-hint>button{box-sizing:border-box;min-width:32px;min-height:32px;margin:0;padding:4px;font:inherit;white-space:normal;overflow-wrap:anywhere}
.drums-workshop .grid-change-feedback{white-space:pre-line}
@media(pointer:coarse){.drums-workshop .quarter-grid-hint{min-height:44px}.drums-workshop .quarter-grid-hint>button{min-width:44px;min-height:44px}}

/* Intrinsic grid menus: stable icon/check columns, descriptions do not set width. */
.drums-workshop .desktop-local-menu:is(.quarter-grid-options,.quarter-grid-menu){width:max-content}
.drums-workshop .desktop-local-menu:is(.quarter-grid-options,.quarter-grid-menu)>.grid-choice{display:grid;grid-template-columns:24px minmax(0,1fr) 18px;column-gap:8px;width:100%}
.drums-workshop .desktop-local-menu:is(.quarter-grid-options,.quarter-grid-menu) .grid-choice-check{width:18px;min-width:18px}
.drums-workshop .desktop-local-menu:is(.quarter-grid-options,.quarter-grid-menu)>.grid-choice::before{display:none}
.drums-workshop .desktop-local-menu:is(.quarter-grid-options,.quarter-grid-menu)>:is(button:disabled,details,strong,p){max-width:100%;white-space:pre-line;overflow-wrap:anywhere}
.drums-workshop .desktop-local-menu:is(.quarter-grid-options,.quarter-grid-menu) [role=alert]{font-weight:400;white-space:normal}
/* Addressed desktop control spacing; musical columns and end strip retained. */
.drums-workshop[data-mobile-controls=desktop] #editor-panel .desktop-grid{margin-top:4px}
.drums-workshop[data-mobile-controls=desktop] #grid .desktop-grid-heading{padding-top:0;align-items:start}
.drums-workshop[data-mobile-controls=desktop] #grid .desktop-header-spacer{align-self:start;align-items:flex-start;gap:4px;padding-right:6px}
.drums-workshop[data-mobile-controls=desktop] #grid .desktop-header-spacer>.quick-controls{gap:4px;align-items:stretch}
.drums-workshop[data-mobile-controls=desktop] #grid .quick-controls>button{display:flex;align-items:center;justify-content:center;flex:1 1 0;min-width:0;height:40px;min-height:40px;margin:0;padding:4px}
.drums-workshop[data-mobile-controls=desktop] #grid .desktop-header-spacer>.instrument-sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:40px;min-height:40px;margin:0;padding:4px}
@media(pointer:coarse){.drums-workshop[data-mobile-controls=desktop] #grid .quick-controls>button,.drums-workshop[data-mobile-controls=desktop] #grid .desktop-header-spacer>.instrument-sidebar-toggle{min-height:44px;height:44px}}
/* Same surface tokens as Party local actions, retaining the compact hint geometry. */
.drums-workshop .quarter-grid-hint{background:var(--workshop-paper);border:1px solid color-mix(in srgb,var(--site-line) 70%,var(--workshop-green) 30%);border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,.14);opacity:1}
html[data-drums-theme=dark] .drums-workshop .quarter-grid-hint{box-shadow:0 2px 6px rgba(0,0,0,.30)}

/* Stable musical anchors own scroll restoration during whole-Party rebuilds. */
.drums-workshop #sequence-list{overflow-anchor:none}
