/* v21: taktgebundener Editor, Auto-Pausen, Copy/Paste und Touch-Auswahl */
.console-inner{
  grid-template-columns:minmax(0,1fr) auto !important;
  grid-template-rows:auto auto !important;
  align-items:end !important;
}
.rhythm-strip{
  grid-column:1 / -1 !important;
  grid-row:1 !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 0 5px !important;
}
.input-panel{grid-column:1 !important;grid-row:2 !important;min-width:0 !important}
.dpad{grid-column:2 !important;grid-row:2 !important;align-self:end !important}
.rhythm-scroll{width:100% !important;padding-right:2px !important}
.rhythm-key.clipboard-key{flex-basis:48px;width:48px;font-size:17px;font-weight:850}
.rhythm-key.clipboard-key[disabled]{opacity:.38;filter:grayscale(1)}
.rhythm-key.clipboard-key .clip-label{font-size:8px;line-height:1;display:block;margin-top:-2px;text-transform:uppercase;letter-spacing:.04em}
.tg-overflow-zone{fill:rgba(203,52,68,.055)}
.tg-overflow-divider{stroke:#c73448;stroke-width:1.15;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}
.tg-overflow-event .tg-note-head,
.tg-overflow-event .tg-harmonic,
.tg-overflow-event .tg-dead,
.tg-overflow-event .tg-ghost-paren,
.tg-overflow-event .tg-tab-number,
.tg-overflow-event .tg-rest,
.tg-overflow-event .tg-articulation,
.tg-overflow-stroke{
  fill:#c73448 !important;
  stroke:#c73448 !important;
}
.tg-overflow-event .tg-tab-mask{fill:#fff2f3 !important}
.tg-overflow-hit{fill:rgba(203,52,68,.10) !important;stroke:rgba(203,52,68,.48) !important}
.measure-card.touch-range-active{outline:1px solid rgba(92,108,128,.38);outline-offset:-1px}
.measure-card svg{touch-action:pan-y}
@media(max-width:650px){
  :root{--console-height:276px}
  .rhythm-key.clipboard-key{flex-basis:44px;width:44px}
  .console-inner{gap:6px !important}
}


/* v22: appartige Touch-UX, Merge/Split und kompakte Drums */
html,body,.app-shell{
  -webkit-user-select:none !important;
  user-select:none !important;
  -webkit-touch-callout:none !important;
  -webkit-tap-highlight-color:transparent !important;
}
body{touch-action:manipulation !important}
button,[role="button"],select,label{touch-action:manipulation !important}
input,textarea,select{user-select:text !important;-webkit-user-select:text !important}
img,svg{user-drag:none !important;-webkit-user-drag:none !important}
.score-viewport{touch-action:pan-y !important}
.measure-card svg{touch-action:pan-y !important}
.measure-card text,.measure-card path,.measure-card ellipse,.measure-card rect{-webkit-touch-callout:none !important}
.transform-key{font-size:18px !important}
.tg-rest-tab-hit{cursor:pointer}
.tg-tab-rest-label{
  font:italic 700 7px Arial,sans-serif;
  fill:#778291;
  text-anchor:middle;
  dominant-baseline:middle;
  pointer-events:all;
}
.drum-pad{display:none !important}
.tg-drum-head{fill:#252e3b;stroke:#252e3b;stroke-width:.7;vector-effect:non-scaling-stroke}
.tg-drum-x{fill:none;stroke:#252e3b;stroke-width:1.05;stroke-linecap:round;vector-effect:non-scaling-stroke}
.tg-drum-midi{
  font:700 7.6px Arial,sans-serif;
  fill:#202936;
  text-anchor:middle;
  dominant-baseline:middle;
}
.tg-drum-mask{fill:#fff}
.tg-drum-clef{font-family:"Bravura","Noto Music","Segoe UI Symbol",serif;font-size:29px;fill:#202936}
.tg-drum-tab-title{font:800 8.5px Arial,sans-serif;fill:#4b5664}
.cell-hit.selected + .drum-token .tg-drum-mask{fill:#f0f3f6}
.cell-hit.primary + .drum-token .tg-drum-mask{fill:#fbf4e5}
.cell-hit.selected + .drum-token .note-halo{stroke:#6c7c8d;stroke-width:2.3}
.cell-hit.primary + .drum-token .note-halo{stroke:#ad741f;stroke-width:3}
@media(max-width:650px){
  .rhythm-key.clipboard-key{flex-basis:43px;width:43px}
  .tg-drum-midi{font-size:7.2px}
}


/* v24: Techniken unter TAB, Ein-Tap-Auswahl und übereinanderliegende Spuren */
.track-card{grid-template-columns:40px 42px minmax(0,1fr) 39px !important}
.track-eye{
  width:38px;height:38px;border:1px solid rgba(255,255,255,.14);border-radius:10px;
  display:grid;place-items:center;background:rgba(255,255,255,.045);color:#91a0b5;padding:0
}
.track-eye svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.track-eye.visible{color:#8ee7db;border-color:rgba(45,212,191,.52);background:rgba(0,168,150,.16)}
.track-eye.active-track{color:#fff;background:rgba(0,168,150,.28);border-color:var(--teal);cursor:default}
.track-eye:disabled{opacity:1}
.track-card.overlay-visible{border-color:rgba(142,231,219,.35)}
.tg-track-overlay{opacity:.27;pointer-events:none}
.tg-track-overlay .tg-overlay-staff,.tg-track-overlay .tg-overlay-tab{stroke:#68788e;stroke-width:.72;stroke-dasharray:2.2 2.2}
.tg-track-overlay .tg-note-head,.tg-track-overlay .tg-note-stem,.tg-track-overlay .tg-note-flag,
.tg-track-overlay .tg-beam,.tg-track-overlay .tg-ledger{stroke:#3d5875}
.tg-track-overlay .tg-note-head:not(.open){fill:#3d5875}
.tg-track-overlay .tg-tab-mask{fill:#f2f5f8;fill-opacity:.78}
.tg-track-overlay .tg-tab-number{fill:#304c69;font-weight:850}
.tg-track-overlay-label{font-size:6.5px;font-weight:800;fill:#506982;letter-spacing:.02em}
.tg-tech-label{font-size:6.7px !important;font-weight:750 !important}
.tg-tech-line,.tg-tech-hook{stroke-width:.85 !important}


/* v25: allgemeine Instrumentenspuren, Tuning-Dialog und gemischte Overlays */
.track-icon{
  border:0;color:#fff;cursor:pointer;padding:0;font:inherit;
}
.track-icon:hover,.track-icon:focus-visible{background:rgba(255,255,255,.16)}
.track-icon .track-program-icon{font-size:22px;line-height:1}
.track-icon .track-program-number{display:block;font-size:7px;color:#aebbd0;margin-top:1px;font-weight:800}
.track-card{grid-template-columns:40px 42px minmax(0,1fr) 39px !important}
.track-info small{line-height:1.28}
.track-type-pill{display:inline-flex;align-items:center;margin-right:4px;padding:1px 5px;border-radius:999px;background:rgba(255,255,255,.09);font-size:8px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#cdd7e6}
.tg-track-overlay{opacity:.24 !important;mix-blend-mode:multiply}
.tg-track-overlay.track-overlay-drums{opacity:.28 !important}
.tg-track-overlay .tg-overlay-stem,.tg-track-overlay .tg-overlay-flag{fill:none;stroke:#405a75;stroke-width:1.05;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.tg-track-overlay .tg-overlay-head{fill:#405a75;stroke:#405a75;stroke-width:.6;vector-effect:non-scaling-stroke}
.tg-track-overlay .tg-overlay-x{fill:none;stroke:#405a75;stroke-width:1.15;stroke-linecap:round;vector-effect:non-scaling-stroke}
.tg-track-overlay .tg-overlay-mask{fill:#f1f4f7;fill-opacity:.82}
.tg-track-overlay .tg-overlay-number{font:850 7.6px/1 Arial,sans-serif;fill:#304b67;text-anchor:middle;dominant-baseline:middle}
.tg-track-overlay .tg-overlay-name{font:850 6.2px/1 Arial,sans-serif;fill:#46627e;letter-spacing:.02em}
.track-settings-card{width:min(620px,100%);max-height:min(90vh,820px);overflow:auto;padding:0;border-radius:22px}
.track-settings-head{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:52px minmax(0,1fr) 42px;align-items:center;gap:11px;padding:15px 16px 12px;background:#fff;border-bottom:1px solid var(--line)}
.track-settings-head h2{margin:0;font-size:19px}.track-settings-head p{margin:2px 0 0;color:var(--muted);font-size:11px}
.track-settings-preview{width:50px;height:50px;border-radius:15px;background:#eaf1f7;display:grid;place-items:center;font-size:27px}
.track-settings-body{padding:14px 16px 8px}
.track-settings-body label{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:850;margin-bottom:12px}
.track-settings-body input,.track-settings-body select{height:45px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);padding:0 11px;font-weight:760}
.track-settings-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(110px,.5fr);gap:10px}
.tuning-card{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#f8fafc;margin-top:5px}
.tuning-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line);background:#eef3f7}
.tuning-toolbar strong{font-size:12px}.tuning-toolbar small{color:var(--muted);font-size:9px}
.tuning-all-buttons{display:flex;gap:5px}.tuning-all-buttons button{height:34px;min-width:42px;border:1px solid #cfd8e3;border-radius:9px;background:#fff;font-weight:900;color:var(--ink)}
.tuning-list{display:grid;padding:4px 9px 8px}
.tuning-row{display:grid;grid-template-columns:minmax(78px,1fr) 42px 52px 42px;align-items:center;gap:6px;min-height:43px;border-bottom:1px solid #e4e9ef}
.tuning-row:last-child{border-bottom:0}.tuning-row-label{font-size:10px;color:var(--muted);font-weight:800}.tuning-row-label strong{display:block;color:var(--ink);font-size:11px}
.tuning-note{height:31px;display:grid;place-items:center;border-radius:8px;background:#fff;border:1px solid #d8e0e8;font:900 13px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.tuning-step{height:34px;border:1px solid #cfd8e3;border-radius:9px;background:#fff;font-size:19px;font-weight:900;color:var(--ink)}
.track-settings-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:8px;padding:11px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}
.track-settings-actions button{height:44px;padding:0 17px;border:0;border-radius:11px;font-weight:850}.track-settings-actions .secondary{background:#edf2f7;color:var(--ink)}.track-settings-actions .primary{background:var(--teal);color:#fff}
.instrument-hint{margin:-3px 0 12px;padding:9px 10px;border-radius:10px;background:#eef6f5;color:#526477;font-size:10px;line-height:1.4}
@media(max-width:520px){
  .track-settings-card{max-height:94vh;border-radius:18px}
  .track-settings-grid{grid-template-columns:1fr}
  .track-settings-head{padding:12px 12px 10px}
  .track-settings-body{padding:11px 12px 7px}
  .tuning-row{grid-template-columns:minmax(68px,1fr) 39px 48px 39px;gap:4px}
  .track-settings-actions{padding-left:12px;padding-right:12px}
}


/* v26: exaktes Tap-Raster und einheitliche X-Funktion */
.number-pad .v26-delete-wide{
  grid-column:span 2;
  color:#b9323d;
  font-size:22px;
}
.number-pad .v26-delete-wide small{
  display:block;
  margin-left:5px;
  font-size:8px;
  line-height:1;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.measure-card svg,.measure-card .measure-scroll{touch-action:pan-y !important}


/* v31: klare Schlagauswahl ohne umlaufendes gestricheltes Rechteck */
.tg-cursor-time{display:none !important}


/* v34: präzise Saitenauswahl, ruhige Cursor-UX und kompakter Instrumentdialog */
.tg-tab-rest-label{display:none !important}
.tg-rest-tab-hit.cell-hit.selected,
.tg-rest-tab-hit.cell-hit.primary,
.tg-rest-tab-hit.selected,
.tg-rest-tab-hit.primary{fill:transparent !important;stroke:transparent !important;stroke-width:0 !important}
.tg-lane-cursor{fill:transparent !important;stroke:#ad741f !important;stroke-width:1.45 !important}
.tg-lane-caret{display:none !important}

.dpad-stack{grid-column:2 !important;grid-row:2 !important;display:flex;flex-direction:column;align-items:center;gap:4px;align-self:end;min-width:0}
.dpad-stack .dpad{grid-column:auto !important;grid-row:auto !important;align-self:auto !important}
.dpad-clipboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;width:100%}
.dpad-clipboard .rhythm-key{width:auto !important;min-width:0 !important;height:35px !important;flex:none !important;border-radius:9px !important;font-size:15px !important}
.dpad-clipboard .clip-label{font-size:7px !important;margin-top:-3px !important}

#trackPanel.active{display:grid !important;grid-template-rows:minmax(0,1fr) auto;overflow:hidden !important;padding:0 !important}
#trackList{min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px 12px 4px;overscroll-behavior:contain;scrollbar-width:none}
#trackList::-webkit-scrollbar{display:none}
.track-add-row{position:relative;z-index:2;margin:0 !important;padding:9px 12px calc(10px + env(safe-area-inset-bottom));background:#0d1422;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -8px 18px rgba(4,11,24,.22)}
.track-add-row button{height:47px !important}
.track-program-number,.track-type-pill{display:none !important}
.track-card .track-info small{line-height:1.35 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.track-card{grid-template-columns:40px 42px minmax(0,1fr) 39px !important}

#trackSettingsModal{padding:10px !important;align-items:center !important;overflow:hidden !important}
.track-settings-card{margin:auto !important;width:min(560px,100%) !important;max-height:calc(100dvh - 20px) !important;overflow:hidden !important;display:grid !important;grid-template-rows:auto auto auto !important;border-radius:17px !important}
.track-settings-head{position:relative !important;grid-template-columns:38px minmax(0,1fr) 34px !important;gap:7px !important;padding:7px 9px 6px !important}
.track-settings-head h2{font-size:16px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.track-settings-head p,#instrumentHint{display:none !important}
.track-settings-preview{width:38px !important;height:38px !important;border-radius:10px !important;font-size:21px !important}
.track-settings-head .icon-button{width:32px !important;height:32px !important}
.track-settings-body{min-height:0;overflow:hidden !important;padding:6px 9px 5px !important;scrollbar-width:none}
.track-settings-body::-webkit-scrollbar{display:none}
.track-settings-body>label{margin-bottom:5px !important;gap:2px !important}
.track-settings-body input,.track-settings-body select{height:35px !important;padding:0 9px !important;border-radius:9px !important}
.track-settings-grid{grid-template-columns:minmax(0,1.65fr) minmax(92px,.65fr) !important;gap:6px !important;margin-bottom:5px !important}
.track-settings-grid label{gap:2px !important;margin-bottom:0 !important}
.tuning-card{border-radius:10px !important;margin-top:2px !important}
.tuning-toolbar{padding:4px 7px !important;min-height:34px !important}
.tuning-toolbar small{display:none !important}
.tuning-all-buttons button{min-width:34px !important;height:29px !important;padding:0 8px !important;font-size:17px !important;border-radius:8px !important}
.tuning-list{padding:2px 6px 4px !important}
.tuning-row{grid-template-columns:minmax(70px,1fr) 31px 56px 31px !important;gap:4px !important;min-height:31px !important}
.tuning-row-label{font-size:8px !important;line-height:1.05 !important}
.tuning-row-label strong{font-size:9.5px !important}
.tuning-step{width:31px !important;height:27px !important;font-size:17px !important;border-radius:8px !important}
.tuning-note{height:27px !important;font-size:11px !important;border-radius:7px !important}
.track-settings-actions{position:relative !important;padding:6px 9px calc(7px + env(safe-area-inset-bottom)) !important}
.track-settings-actions button{height:36px !important;padding:0 14px !important;border-radius:9px !important}

@media(max-width:650px){
  #trackSettingsModal{padding:8px !important}
  .track-settings-card{max-height:calc(100dvh - 16px) !important}
  .dpad-clipboard .rhythm-key{height:32px !important}
  .track-settings-head{padding:6px 8px 5px !important}
  .track-settings-body{padding:5px 8px 4px !important}
  .track-settings-actions{padding:5px 8px calc(6px + env(safe-area-inset-bottom)) !important}
}


