.loop-timeline {
  height: 32px;
  position: relative;
  margin: 10px 0 18px;
  border-radius: 8px;
  background: #e3e9ed;
}
.loop-timeline span {
  position: absolute;
  top: 8px;
  height: 16px;
  background: #78bde8;
  border-radius: 5px;
  left: 0;
  width: 0;
}
.loop-timeline i {
  position: absolute;
  top: -3px;
  transform: translateX(-50%);
  font-style: normal;
  font-weight: 800;
  color: #145878;
}
.practice-song-queue .session-list { height: min(780px,72vh); max-height:780px; overflow:auto; }
.practice-song-queue form { margin: 0; }
.practice-song-queue button { text-align: left; width: 100%; }
.practice-song-queue .song-variant{display:inline-block;margin-left:5px;padding:1px 6px;border-radius:5px;background:#dcecf3;color:#174f63;font-size:.86em}
.practice-workspace-layout {
  display: grid;
  grid-template-columns: minmax(260px, 34%) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}
.practice-workspace-songs { position: sticky; top: 16px; }
.practice-workspace-player > * { margin-top: 0; margin-bottom: 18px; }
.practice-workspace-songs > .panel { margin-bottom: 18px; }
.practice-workspace-songs .file { white-space: nowrap; min-width: max-content; }
.practice-workspace-songs > .panel { max-height: 280px; overflow: auto; }
.practice-workspace-songs > .practice-song-queue{max-height:none;overflow:visible}
.practice-song-queue .session-list{height:min(780px,72vh);max-height:780px;overflow:auto;-webkit-overflow-scrolling:touch}
.practice-seek-controls { display:flex; gap:6px; flex-wrap:wrap; margin:10px 0; }
.practice-seek-controls .button { padding:6px 9px; font-size:12px; }
.loop-row.selected { outline:2px solid #78bde8; border-radius:7px; }
.loop-row.loop-suggestion{border-left:4px solid #d79b24;padding-left:6px;background:#fff9ea}
.practice-document-full { width:100%; margin-top:20px; }
.practice-document-full:fullscreen { background:#fff; padding:8px; }
.practice-document-full:fullscreen .practice-document { height:calc(100vh - 30px); }
.practice-document-controls { display:flex; gap:6px; margin:10px 0; position:sticky; top:0; z-index:2; }
.practice-document-controls select { padding:6px; border:1px solid var(--line); border-radius:7px; }
.practice-audio { min-height:54px; }
.practice-audio::-webkit-media-controls-timeline { display:flex !important; opacity:1 !important; }
.practice-progress-track{position:relative;height:30px;margin:2px 0 8px}.practice-visible-progress{position:absolute;z-index:3;inset:0;display:block;width:100%;height:30px;margin:0;background:transparent;accent-color:var(--accent);cursor:pointer}.practice-visible-progress::-webkit-slider-thumb{opacity:1;visibility:visible;width:16px;height:16px}.integrated-loop-range{position:absolute;z-index:1;left:7px;right:7px;top:5px;width:auto;height:20px;margin:0;background:#d9e0e4}.integrated-loop-range span{top:5px;height:10px;background:#45a7ddaa}.integrated-loop-range i{top:-9px;font-size:11px}.loop-capture-scope{padding:6px;border:1px solid var(--line);border-radius:7px}.loop-capture-main{min-width:36px;justify-content:center}
.practice-workspace-player > .loop-timeline { margin-bottom:4px; }
.practice-viewer-panel>.panel-heading{display:grid;grid-template-columns:1fr auto}.practice-document-navigation{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap;margin-bottom:8px}.practice-auto-start{display:flex;align-items:center;font-size:12px;white-space:normal}
.pdfjs-reader{width:100%;height:min(72vh,900px);min-height:420px;background:#394149;border-radius:8px;overflow:auto;touch-action:pan-x pan-y pinch-zoom}.pdfjs-toolbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:8px;background:#fff;border-bottom:1px solid var(--line)}.pdfjs-toolbar select{padding:7px;border:1px solid var(--line);border-radius:7px}.pdfjs-pages{display:grid;gap:12px;justify-items:center;padding:12px}.pdfjs-page{background:#fff;box-shadow:0 3px 15px #0006;max-width:none}.pdfjs-page canvas{display:block}.practice-viewer-panel:fullscreen{overflow:auto;background:#30373d;padding:8px}.practice-viewer-panel:fullscreen .pdfjs-reader{height:calc(100vh - 16px)}
.pdf-layout-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f5f8f9}.pdf-layout-controls legend{padding:0 6px;font-weight:700}.pdf-layout-controls .active{background:#176b87;color:#fff;border-color:#176b87;box-shadow:0 0 0 2px #a8d9e8}.pdf-page-navigation{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:8px 0}.pdf-page-navigation strong{min-width:150px;text-align:center}.pdfjs-pages[data-page-layout="spread"]{grid-template-columns:repeat(2,max-content);align-items:start;overflow-x:auto}.pdfjs-pages[data-page-layout="single"]{grid-template-columns:max-content;overflow-x:auto}@media(max-width:700px){.pdf-layout-controls{display:grid;grid-template-columns:1fr}.pdf-layout-controls .button{width:100%}.pdfjs-pages[data-page-layout="spread"]{grid-template-columns:repeat(2,max-content);justify-items:start}}
.practice-document-full { overflow:auto; touch-action:pan-x pan-y pinch-zoom; }
body.practice-loading{cursor:progress}body.practice-loading .practice-workspace-layout{opacity:.55;pointer-events:none}
body.practice-stage-active{overflow:hidden;background:#202a30}main.practice-fullscreen{position:fixed;z-index:100;inset:0;overflow:hidden;max-width:none;width:100%;height:100dvh;padding:8px 8px 58px;background:#263238}main.practice-fullscreen>*{display:none!important}main.practice-fullscreen>.practice-workspace-layout{display:contents!important}main.practice-fullscreen .practice-workspace-songs{display:none!important}main.practice-fullscreen .practice-workspace-player{display:contents!important}main.practice-fullscreen .practice-workspace-player>*{display:none!important}main.practice-fullscreen>.practice-viewer-panel{display:block!important;margin:0;padding:5px;height:calc(100dvh - 66px);overflow:hidden}main.practice-fullscreen .practice-viewer-panel>.panel-heading,main.practice-fullscreen .practice-scroll-settings:not(.stage-panel-open),main.practice-fullscreen .material-annotation-workspace:not(.stage-panel-open),main.practice-fullscreen .practice-transpose-panel:not(.stage-panel-open),main.practice-fullscreen .practice-display-panel:not(.stage-panel-open){display:none!important}main.practice-fullscreen .practice-document-navigation{display:none!important}main.practice-fullscreen .practice-document{margin:0}main.practice-fullscreen .pdfjs-reader{height:calc(100dvh - 78px);min-height:0}main.practice-fullscreen .stage-floating-panel{display:none!important}main.practice-fullscreen .stage-floating-panel.stage-panel-open{display:block!important;position:fixed;z-index:130;left:50%;bottom:62px;transform:translateX(-50%);width:min(94vw,900px);max-height:55vh;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;margin:0;padding:12px;background:#fff;border:1px solid #81949d;border-radius:10px;box-shadow:0 14px 40px #0008}main.practice-fullscreen .practice-session-mode.stage-panel-open,main.practice-fullscreen .practice-audio-role-switch.stage-panel-open,main.practice-fullscreen .practice-viewer-panel>.panel-heading.stage-panel-open{display:flex!important}main.practice-fullscreen>.stage-dock{display:flex!important}main.practice-fullscreen>.practice-stage-exit,main.practice-fullscreen>.practice-device-fullscreen{display:block!important}main.practice-fullscreen.practice-stage-controls-hidden>.stage-dock,main.practice-fullscreen.practice-stage-controls-hidden>.practice-stage-exit,main.practice-fullscreen.practice-stage-controls-hidden>.practice-device-fullscreen{display:none!important}
main.practice-fullscreen .practice-materials-panel:not(.stage-panel-open){display:none!important}
main.practice-fullscreen.practice-stage-controls-hidden{padding-bottom:8px!important}main.practice-fullscreen.practice-stage-controls-hidden>.practice-viewer-panel{height:calc(100dvh - 16px)!important}main.practice-fullscreen.practice-stage-controls-hidden .pdfjs-reader{height:calc(100dvh - 26px)!important}
.stage-dock{display:none;position:fixed;z-index:150;left:50%;bottom:max(7px,env(safe-area-inset-bottom));transform:translateX(-50%);align-items:center;gap:4px;max-width:96vw;padding:5px 7px;overflow-x:auto;background:#101820eF;border:1px solid #607682;border-radius:12px;box-shadow:0 8px 24px #0008}.stage-dock button{flex:0 0 auto;width:38px;height:38px;border:0;border-radius:8px;background:#314651;color:#fff;font-size:18px;cursor:pointer}.stage-dock button:hover,.stage-dock button.active{background:#1780a4}
.practice-stage-exit{display:none;position:fixed;z-index:170;top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));width:42px;height:42px;padding:0;border:2px solid #fff;border-radius:50%;background:#9f2828;color:#fff;font-size:28px;line-height:1;box-shadow:0 3px 14px #0008}
.practice-device-fullscreen{display:none;position:fixed;z-index:170;top:max(8px,env(safe-area-inset-top));right:max(58px,calc(env(safe-area-inset-right) + 58px));min-width:42px;height:42px;padding:0 8px;border:2px solid #fff;border-radius:21px;background:#176b87;color:#fff;font-size:20px;line-height:1;box-shadow:0 3px 14px #0008}
.stage-panel-handle{display:none!important;align-items:center;justify-content:space-between;gap:12px;margin:-8px -8px 9px;padding:6px 8px;background:#dfe8ec;color:#263238;border-radius:7px 7px 3px 3px;cursor:grab;touch-action:none;user-select:none}main.practice-fullscreen .stage-panel-handle,.performance-stage-mode .stage-panel-handle{display:flex!important}.stage-panel-handle:active{cursor:grabbing}.stage-panel-handle span{font-size:12px;font-weight:700}.stage-panel-handle button{width:32px;height:28px;padding:0;border:1px solid #91a4ad;border-radius:6px;background:#fff;color:#263238;font-size:18px}.stage-panel-handle button.active{background:#176b87;color:#fff}
.midi-song-settings{position:relative}.midi-song-settings.midi-collapsed>*:not(.midi-collapse-toggle){display:none!important}.midi-collapse-toggle{display:block!important;position:relative;z-index:4;margin-left:auto}.midi-song-settings label{min-width:150px}.midi-song-settings select{min-width:150px}.practice-scroll-step-setting{margin-left:auto}.practice-scroll-heading{display:flex;justify-content:space-between;gap:16px;align-items:start}.practice-scroll-heading>div{display:grid;gap:3px}.scroll-custom-badge{color:#b54708;font-size:12px;font-weight:700}.scroll-speed-custom{border-color:#e0a33a}
.practice-collapsible-section{position:relative;border-color:#c62828!important;box-shadow:inset 0 0 0 1px #c62828}.practice-section-collapsed{min-height:38px!important;max-height:48px!important;overflow:hidden!important;padding:5px 8px 5px 170px!important;border-color:#2e7d32!important;box-shadow:inset 0 0 0 1px #2e7d32}.practice-section-collapsed>*:not(.section-collapse-toggle):not(.stage-panel-handle){display:none!important}.section-collapse-toggle{position:absolute!important;z-index:6;top:5px;left:7px;right:auto;min-width:150px;white-space:nowrap}.stage-panel-open.practice-section-collapsed{max-height:55vh!important;overflow:auto!important;-webkit-overflow-scrolling:touch;touch-action:pan-y}.stage-panel-open.practice-section-collapsed>*:not(.section-collapse-toggle){display:revert!important}.loop-group>.section-collapse-toggle{top:7px;left:8px}.practice-playback-modes{display:flex;gap:5px;align-items:center}.practice-playback-modes button{min-width:42px;font-weight:800}.practice-playback-modes button.active{background:#176b87;color:#fff;box-shadow:0 0 0 2px #74c8e5}.practice-player-help{flex-basis:100%;width:100%;margin-top:8px;padding-top:7px;border-top:1px solid #c9d4d9}.practice-player-help p{margin:5px 0}.practice-fullscreen[data-practice-audio-role="a"] .practice-viewer-panel{border:5px solid #2387e8!important}.practice-fullscreen[data-practice-audio-role="k"] .practice-viewer-panel{border:5px solid #24a35a!important}
.material-annotation-workspace{box-sizing:border-box;margin:10px 0;padding:8px;border:2px solid #c62828;border-radius:10px;background:#fff}.annotation-workspace-collapsed{border-color:#2e7d32}.annotation-workspace-collapsed .material-annotation-tools>*:not([data-annotation-panel-toggle]):not([data-annotation-visibility]),.annotation-workspace-collapsed>.material-annotation-panel{display:none!important}.annotation-workspace-collapsed .material-annotation-tools{margin:3px 0}.stage-panel-open.annotation-workspace-collapsed .material-annotation-tools>*{display:revert!important}
.practice-collapsible-section{padding-top:50px!important}.practice-section-collapsed{padding-top:5px!important}.practice-scroll-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(360px,1.2fr);gap:18px;align-items:start;margin-top:12px}.practice-scroll-primary{display:grid;gap:12px;align-content:start}.practice-scroll-primary>[data-practice-scroll-toggle]{justify-self:start}.practice-scroll-layout #practice-scroll-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end}.practice-scroll-layout #practice-scroll-form>label{grid-column:1/-1}.practice-scroll-layout #practice-scroll-form>button{white-space:normal}.practice-scroll-step-setting{display:flex!important;align-items:center;gap:7px;margin:18px 8px 0!important}.practice-wake-setting{display:flex!important;align-items:center;gap:7px;margin:10px 8px 2px!important}main.practice-fullscreen .metronome.stage-floating-panel.stage-panel-open{display:flex!important;align-items:center;flex-wrap:wrap;width:min(94vw,760px)}main.practice-fullscreen .metronome.stage-panel-open>.stage-panel-handle{flex:1 0 100%;box-sizing:border-box}main.practice-fullscreen .metronome.stage-panel-open>label{display:flex!important;min-width:0;margin:0}main.practice-fullscreen .metronome.stage-panel-open>strong,main.practice-fullscreen .metronome.stage-panel-open>button,main.practice-fullscreen .metronome.stage-panel-open>.metronome-lamp{flex:0 0 auto}
.practice-heading-actions{display:grid;gap:12px;justify-items:end}.practice-nav{display:flex;align-items:center;gap:18px}.practice-stage-entry{flex:0 0 auto;margin-right:12px}.practice-transpose-panel>.reader-controls{display:flex;flex-direction:row;align-items:end;gap:10px;flex-wrap:wrap}.practice-display-panel .practice-document-controls{display:flex;flex-wrap:wrap;margin:0}.practice-display-primary{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.practice-display-diagrams{display:grid;justify-items:start;gap:4px;margin:10px 0 0;text-align:left}.practice-display-diagrams small{max-width:320px;color:#66727f}.practice-wake-setting{justify-self:center}.practice-wake-setting>input{position:absolute;opacity:0;pointer-events:none}.practice-wake-setting.active{background:#176b87!important;color:#fff}.practice-session-settings select[name="audio_mode"],.practice-session-settings select[aria-label="Tryb sesji"]{width:250px;min-width:250px}.practice-session-settings [data-practice-prefetch-status]{display:block;flex:1 0 100%;margin-bottom:8px}.practice-material-links{display:flex;align-items:center;gap:7px;overflow-x:auto}.practice-materials-panel .path-link{display:block;flex:0 0 auto;padding:9px 14px;border-radius:7px;background:#e8edef;color:#174f63;text-decoration:none;white-space:nowrap}.practice-materials-panel .path-link.selected-material{background:#176b87;color:#fff}.practice-viewer-panel>.practice-collapsible-section,.practice-viewer-panel>.material-annotation-workspace,.practice-progress-panel,.practice-session-mode,.practice-audio-role-switch,.midi-song-settings{margin-top:14px;margin-bottom:14px}.practice-heading~* .button{min-height:38px;padding:8px 12px;font:700 14px/1.2 system-ui,sans-serif}
.practice-session-settings select[name="variant_filter"]{min-width:245px}.practice-display-scroll-step{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.practice-display-scroll-step .practice-scroll-step-setting{margin:0!important}.practice-display-scroll-step small{max-width:360px;color:#66727f}
.practice-embedded-tool-panel{margin-top:14px;margin-bottom:14px}.practice-embedded-tool-panel>h2{margin-top:0}
.practice-scroll-settings{display:block!important}.practice-scroll-heading{display:block!important;width:100%;margin-bottom:12px}.practice-scroll-heading>div{display:grid;gap:4px}.practice-scroll-heading small{display:block}.practice-materials-panel{margin-top:14px!important;margin-bottom:14px!important}.practice-materials-panel>p.muted{margin:4px 0 10px}
.practice-reader-instrument-help{flex:1 0 100%;max-width:760px;color:#66727f}
.practice-tool-frame{display:block;box-sizing:border-box;width:100%;height:min(76vh,920px);border:1px solid #bdccd2;border-radius:8px;background:#fff}.practice-display-diagrams .button.active{background:#176b87!important;color:#fff!important;box-shadow:0 0 0 3px #75c7df}
main.practice-fullscreen .practice-transpose-panel.stage-panel-open>.reader-controls{display:flex!important;flex-direction:row!important;align-items:end;gap:10px;flex-wrap:wrap}
main.practice-fullscreen .practice-embedded-tool-panel{display:none!important}
@media (max-width: 800px) {
  .practice-workspace-layout { grid-template-columns: 1fr; }
  .practice-workspace-songs { position: static; }
  .practice-scroll-layout { grid-template-columns:1fr; }
  main.practice-fullscreen .stage-floating-panel.stage-panel-open{max-height:72dvh;width:calc(100vw - 20px)}
  main.practice-fullscreen .practice-transpose-panel>.reader-controls{display:flex!important;flex-direction:row;align-items:end;gap:7px;flex-wrap:wrap}
}
