@font-face{font-family:Bravura;src:url('/editor/vendor/font/Bravura.woff2') format('woff2');font-display:block}
:root{color-scheme:dark;--chrome:#282a32;--chrome-deep:#22242b;--panel:#2c2e37;--panel-hover:#393c46;--line:#3c3e48;--text:#d8dbe3;--muted:#9298a6;--accent:#79a3f3;--accent-soft:#405579;--paper:#fff;--paper-width:1000px;--dock-height:144px;--left-width:142px;--right-width:218px;--font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{display:grid;grid-template-rows:38px 27px minmax(0,1fr) var(--dock-height);font:11px/1.4 var(--font);background:var(--chrome-deep);color:var(--text)}button,input,select,summary{font:inherit}button{color:inherit;cursor:pointer}button:disabled{opacity:.3;cursor:default}button,input,select,summary{outline-offset:2px}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[role=separator]:focus-visible{outline:2px solid var(--accent)}button{border:0}button .button-label{display:none}.icon{display:block;flex:none;width:16px;height:16px;stroke:currentColor;fill:none;pointer-events:none}.separator{width:1px;height:18px;background:var(--line);flex:none;margin:0 5px}[hidden]{display:none!important}
.app-header{display:flex;align-items:center;gap:13px;padding:0 10px;background:var(--chrome-deep);border-bottom:1px solid #181a20;white-space:nowrap;min-width:0;z-index:6}.brand{display:flex;align-items:center;gap:7px;flex:none;width:116px;color:#e7e9ee;text-decoration:none;font-size:11px;font-weight:600;letter-spacing:-.15px}.brand>.icon{width:19px;height:19px;color:#b5bfd3}.toolbar-group{display:flex;align-items:center;gap:2px;min-width:0}.file-actions{flex:none}.main-transport{gap:3px;flex:none;margin-left:6px}.view-controls{margin-left:auto;gap:4px}.icon-button,.transport-button{height:26px;width:27px;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;background:transparent;color:#bbc1ce;padding:4px;flex:none}.icon-button:hover,.transport-button:hover{background:var(--panel-hover);color:#fff}.icon-button.active,.transport-button.active{background:var(--accent-soft);color:#d9e6ff}.play-button{width:30px;height:30px;border:1px solid #747d8e;border-radius:50%;margin:0 3px;color:#eef1f7}.play-button .icon{width:17px;height:17px}.play-button:hover{border-color:var(--accent);background:#354660}.play-button .pause-symbol{display:none}.play-button.playing .play-symbol{display:none}.play-button.playing .pause-symbol{display:block}.play-button.playing{background:#415b83;border-color:#8bb1fb}.transport-lcd{font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:5px;margin:0 7px;font-size:11px;min-width:76px;color:#cbd3e3}.time-separator,#time-total{color:#838b9b}.tempo-control{display:flex;align-items:center;gap:3px;padding:0 5px;color:#929aab;font-size:9px}.tempo-mark{font-family:Bravura,serif;font-size:17px;line-height:1;color:#d3d8e2}.tempo-control input{width:33px;height:23px;border:0;padding:0;background:transparent;color:#d9deea;font-weight:600;text-align:right;appearance:textfield}.tempo-control input::-webkit-inner-spin-button{appearance:none}.view-field{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:9px}.view-field>span{display:none}.view-field select{background:#333640;border:1px solid #454956;border-radius:3px;color:#d2d7e1;padding:0 4px;height:24px;max-width:104px;font-size:10px}.view-field #zoom-select{width:79px}.view-field #layout-select{width:78px}.view-field #notation-select{width:99px}
.file-tabs{display:flex;align-items:stretch;gap:0;overflow-x:auto;overflow-y:hidden;background:#30323b;border-bottom:1px solid #191b21;scrollbar-width:none;padding-left:0;min-width:0}.file-tab{min-width:138px;max-width:250px;display:flex;align-items:center;gap:7px;padding:0 11px;border-right:1px solid #41434d;border-radius:0;background:#2a2c34;color:#939aaa;text-align:left;font-size:10px;flex:none}.file-tab.is-active{background:#3d404c;color:#e6ebf6;box-shadow:inset 0 2px #7f9dd1}.file-tab>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-note{display:flex;color:#9ca8be}.tab-note .icon{width:12px;height:12px}.tab-unsaved{color:#a8c5ff;font-size:13px;margin-left:auto}.tab-dirty{display:none}.tabs-spacer{flex:1}.file-tabs .tab-add{height:26px;width:30px;margin-right:5px}
.editor-layout{display:grid;grid-template-columns:var(--left-width) minmax(0,1fr) var(--right-width);min-height:0;min-width:0;overflow:hidden}.panel{background:var(--panel);min-width:0;min-height:0}.palette{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;border-right:1px solid #191b22;scrollbar-width:thin;scrollbar-color:#555966 transparent}.palette-heading{height:31px;min-height:31px;display:flex;align-items:center;justify-content:space-between;padding:0 9px;border-bottom:1px solid var(--line);font-size:10px;color:#c0c7d4;font-weight:600}.edit-toggle{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:9px;color:#9fa7b7;font-weight:400}.edit-toggle input{width:11px;height:11px;margin:0;accent-color:#83a7ed}.toggle-track{display:none}.palette-section{padding:10px 9px;border-bottom:1px solid var(--line)}.section-label{margin:0 0 7px;font-size:9px;letter-spacing:.02em;color:#a0a8b8;font-weight:500}.duration-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;align-items:center}.palette-tool{height:30px;min-width:0;border-radius:3px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;color:#d9dce5;overflow:hidden}.palette-tool:hover,.effect-tool:hover{background:#41444e;color:#fff}.palette-tool.active{background:#516d9c;color:#fff}.music-glyph{font-family:Bravura;font-weight:400;font-size:24px;line-height:1;transform:translateY(-1px)}.dot-tool{font-size:24px;line-height:20px}.palette-tool small{display:none}.palette-inline{display:flex;align-items:center;justify-content:space-between;margin-top:7px}.check-control{display:flex;align-items:center;gap:5px;color:#b6bdcc;font-size:10px;cursor:pointer}.check-control input{margin:0;width:12px;height:12px;accent-color:var(--accent)}.mini-tool{display:flex;align-items:center;gap:4px;background:none;color:#bfc6d4;font-size:10px;padding:2px}.mini-tool:hover{color:white}kbd{font:9px/14px var(--font);border:1px solid #505461;color:#a0aabb;background:#30333c;border-radius:2px;padding:0 3px;min-width:16px;text-align:center}.effect-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.effect-tool{height:29px;min-width:0;padding:1px;border-radius:3px;display:flex;align-items:center;justify-content:center;background:transparent;color:#ced4df}.effect-tool small{display:none}.effect-tool .icon{width:19px;height:19px}.effect-tool.active{background:#516d9c;color:white}.effect-symbol{font-family:var(--font);font-size:14px;line-height:1;font-weight:500}.effect-tool:first-child .effect-symbol{font-size:10px;letter-spacing:-.5px}.compact-field{display:grid;grid-template-columns:35px minmax(0,1fr);gap:4px;align-items:center;margin-top:6px;font-size:9px;color:#9fa8ba}.compact-field input,.compact-field select{width:100%;height:24px;border:1px solid #474b57;border-radius:3px;background:#24262e;color:#d6dbe6;padding:0 5px;font-size:10px}.compact-field input::placeholder{color:#717c8e}.wide-tool{display:flex;align-items:center;gap:6px;min-height:25px;padding:3px 1px;width:100%;border-radius:2px;background:none;color:#b8c0d0;text-align:left;font-size:9px;white-space:nowrap}.wide-tool>.icon{height:13px;width:13px;color:#929fb5}.wide-tool:hover{background:#3b3e48;color:white}.wide-tool span:nth-child(2){flex:1}.wide-tool kbd{font-size:8px;margin-left:auto}.danger-tool{color:#aab3c4}.danger-tool:hover{color:#f2b3ad}.palette-actions{padding-top:9px}.palette-foot{display:none}
.work-area{display:flex;flex-direction:column;min-height:0;min-width:0;background:#494c55}.score-tools-row{height:31px;min-height:31px;display:flex;align-items:center;justify-content:space-between;gap:9px;background:#333640;border-bottom:1px solid #24262d;padding:0 9px;z-index:4}.track-context,.practice-controls{display:flex;align-items:center;gap:5px;min-width:0}.track-context>label{font-size:9px;color:#929bad}.track-context select{width:170px;max-width:22vw;height:23px;background:#292c34;border:1px solid #464b58;border-radius:3px;padding:0 4px;color:#d9dfeb;font-size:10px}.selection-summary{font-size:9px;white-space:nowrap;color:#929db1;margin-left:5px}.practice-controls{gap:3px}.practice-controls .icon-button{width:25px;height:24px}.loop-bound{display:flex;align-items:center;gap:4px;font-size:9px;color:#9aa5b9}.loop-bound input{width:30px;height:21px;background:#292c34;border:1px solid #484e5d;border-radius:3px;color:#cbd5e8;text-align:center;font-size:9px;padding:0;appearance:textfield}.loop-bound input::-webkit-inner-spin-button{appearance:none}.range-dash{font-size:10px;color:#707c91}.practice-controls .separator{height:16px;margin:0 4px}.speed-control{display:flex;align-items:center;gap:4px;margin:0 7px;font-size:9px;color:#9ba6b9}.speed-control select{height:22px;background:#292c34;border:1px solid #484e5d;border-radius:3px;color:#d1daeb;font-size:9px;width:50px;padding:0 2px}.export-menu{position:relative}.export-menu summary{display:flex;align-items:center;gap:5px;list-style:none;cursor:pointer;font-size:10px;color:#c4ccdb;padding:4px 5px;border-radius:3px}.export-menu summary::-webkit-details-marker{display:none}.export-menu summary .icon{width:13px;height:13px}.export-menu summary:hover,.export-menu[open] summary{background:#464b58}.menu-items{position:absolute;right:0;top:28px;min-width:150px;padding:5px;background:#2c303a;border:1px solid #535b6c;box-shadow:0 6px 18px #16192155;border-radius:4px;z-index:20}.menu-item{background:none;width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:7px 8px;color:#d5dcea;border-radius:2px;font-size:11px}.menu-item .button-label{display:block}.menu-item:hover{background:#435b82}
.score-stage{position:relative;flex:1;min-height:0;min-width:0;overflow:hidden}.score-scroll{position:absolute;inset:0;overflow:auto;overscroll-behavior:contain;padding:16px;scrollbar-width:thin;scrollbar-color:#7c8089 #40434c;color-scheme:light}.score-page{box-sizing:border-box;width:var(--paper-width);min-width:0;min-height:500px;margin:0 auto 24px;background:white;box-shadow:0 2px 6px #191c2455;padding:0;position:relative;color:#151515;overflow:visible}.score-page-top,.score-meta,.score-empty-hint{display:none}#alphatab{position:relative;min-height:450px;width:100%;color:#151515}#alphatab svg{max-width:none!important;transform:none!important}#selection-marker{position:absolute;z-index:2;pointer-events:none;border:1px solid #7ba4d688;background:#8eb7ef18;border-radius:1px}.at-cursor-bar{background:#b2cfb322!important;pointer-events:none}.at-cursor-beat{background:#1769c2!important;pointer-events:none}.at-selection{background:#89b6e833!important}.score-scroll.drag-over{outline:2px dashed #aac7fa;outline-offset:-8px}.loading-overlay{position:absolute;inset:0;background:#414650bb;color:#e1e8f7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;z-index:3;font-size:10px}.loading-overlay strong{font-size:12px}.loader{width:23px;height:23px;border:2px solid #b3c8e444;border-top-color:#bdd5fa;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.timeline-strip{display:flex;align-items:center;gap:8px;height:29px;min-height:29px;background:#30343e;border-top:1px solid #22262f;padding:0 9px}.timeline-head{display:flex;align-items:center;gap:5px;flex:none;color:#949fb4;font-size:8px;font-weight:500}.timeline-hint{display:none}.timeline{display:flex;align-items:center;gap:1px;min-width:0;overflow-x:auto;scrollbar-width:none;flex:1}.timeline-bar{flex:none;min-width:24px;height:18px;padding:0 3px;border:1px solid #4d5361;background:#383e4a;color:#a9b4c8;border-radius:1px;font-size:8px;position:relative}.timeline-bar span{display:none}.timeline-bar:has(span){border-top-color:#bdcdec}.timeline-bar:hover{background:#52627d;color:white}.timeline-bar.selected{border-color:#8fb1e7;background:#475d7c;color:#e3edff}.timeline-bar.playing{background:#4d7158;border-color:#93b09c;color:#e5f7e7}.workspace-status{display:flex;align-items:center;gap:10px;height:18px;min-height:18px;background:#292d36;border-top:1px solid #1e2229;font-size:8px;color:#8591a7;padding:0 9px;overflow:hidden;white-space:nowrap}#file-title{color:#afb9cb;max-width:35%;overflow:hidden;text-overflow:ellipsis}.status-help{margin-left:auto;color:#76839a}
.inspector{display:flex;flex-direction:column;border-left:1px solid #1e2028;overflow:hidden}.inspector-tabs{height:31px;min-height:31px;display:flex;border-bottom:1px solid #1e2028;background:#282b33}.inspector-tab{flex:1;position:relative;background:transparent;color:#929db0;padding:0 3px;font-size:10px;font-weight:500;border-right:1px solid #343843}.inspector-tab.active,.inspector-tab.is-active{background:#3d4658;color:#dce7fb;box-shadow:inset 0 -2px #799cd6}.inspector-tab:hover{color:white;background:#3b404c}.inspector-scroll{overflow-y:auto;overflow-x:hidden;min-height:0;flex:1;scrollbar-width:thin;scrollbar-color:#555e70 transparent}.inspector-panel{padding:11px 12px 14px}.inspector-title{display:flex;align-items:center;justify-content:space-between;margin:0 0 9px;font-size:10px;font-weight:600;letter-spacing:.035em;text-transform:uppercase;color:#bac6db}.field-label{display:block;margin:9px 0 4px;font-size:10px;color:#9ba8bf}.text-input{height:25px;width:100%;padding:0 6px;background:#262932;border:1px solid #464d5d;border-radius:3px;color:#d5deed;font-size:11px;min-width:0}.text-input::placeholder{color:#6b7990}.text-input:focus{border-color:#91b4f1;outline:none;box-shadow:0 0 0 1px #7b9dd755}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0}.number-unit{position:relative}.number-unit .text-input{padding-right:62px}.number-unit>span{position:absolute;right:6px;top:6px;font-size:9px;color:#72829d;pointer-events:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:27px;padding:0 9px;font-size:10px;font-weight:500;border-radius:3px;border:1px solid #55627b;background:#3e4c64;color:#d8e5fc;white-space:nowrap}.button:hover{background:#4d6386;border-color:#809cc9}.button-primary{background:#456391;border-color:#5277ae;color:#edf3ff}.button-wide{width:100%;margin-top:10px}.button-secondary{background:#3c424f;border-color:#4f586c}.inspector-divider{height:1px;background:#424857;margin:14px 0}.range-line{display:flex;align-items:center;gap:7px;min-height:18px}.range-line input[type=range],.dock-volume input[type=range],.mix-volume{appearance:none;height:3px;border-radius:1px;background:#545e72;accent-color:#a1bce8;min-width:0;flex:1;margin:0;cursor:pointer}.range-line input[type=range]::-webkit-slider-thumb,.dock-volume input[type=range]::-webkit-slider-thumb,.mix-volume::-webkit-slider-thumb{appearance:none;height:11px;width:5px;border-radius:1px;background:#b1bfd6;border:0}.range-value{font-size:9px;color:#8f9eb9;min-width:24px;text-align:right}.pan-end{font-size:9px;color:#8899b4}.small-icon{height:13px;width:13px;color:#9aadc9}.inspector-note{font-size:9px;line-height:1.5;color:#7d8ea9;margin-top:12px}.secondary-tool{display:flex;align-items:center;gap:7px;width:100%;background:none;color:#a8b8d1;font-size:10px;padding:8px 0;margin-top:8px;text-align:left}.secondary-tool>.icon{height:14px;width:14px}.secondary-tool .arrow-icon{margin-left:auto;width:12px}.selected-note-card{padding:5px 0 10px;border-bottom:1px solid #41495a;margin-bottom:8px;overflow:hidden}.selected-note-card strong{display:block;font-size:10px;font-weight:500;color:#bfcfe8}.selected-note-card div span{display:block;color:#72839e;font-size:9px;margin-top:3px}.check-list{display:grid;grid-template-columns:1fr 1fr;gap:9px 4px;padding-top:12px}.check-list .check-control{font-size:9px;color:#a7b8d3}.inspector-footer{border-top:1px solid #41495a;min-height:26px;padding:0 11px;display:flex;justify-content:flex-end;align-items:center;background:#292e38}.text-action{display:flex;align-items:center;gap:5px;background:none;color:#a1b6d7;font-size:10px;padding:3px 0}.text-action .button-label{display:block}.text-action .icon{width:14px;height:14px}.fretboard-panel{max-height:180px;overflow:auto;padding:5px 8px 7px;border-top:1px solid #41495a;background:#2a303b}.fretboard-heading{font-size:8px;color:#8299bb;margin-bottom:4px}.fretboard-grid{overflow:auto;max-width:100%}.fret-row{display:grid;grid-template-columns:24px repeat(16,18px);height:19px}.fret-row>span{color:#a5bad9;text-align:center;align-self:center;font-size:8px}.fret{position:relative;background:#333c4b;border:0;border-right:1px solid #596b86;font-size:9px;color:#90a7ca;padding:0}.fret:before{content:'';position:absolute;top:50%;left:0;right:0;height:1px;background:#667790;pointer-events:none}.fret:hover{background:#536d94}.fret.sounding{background:#6485b8;border-radius:50%;color:white}.fret.sounding:before{display:none}.fret-numbers{display:grid;grid-template-columns:24px repeat(16,18px);font-size:8px;color:#7a91b4;text-align:center}.empty-fretboard{font-size:9px;color:#9baece;margin:6px}
.track-dock{display:flex;flex-direction:column;background:#292d36;border-top:1px solid #161a22;min-height:0;position:relative}.dock-resizer{position:absolute;top:-3px;left:0;right:0;height:6px;cursor:row-resize;z-index:8}.dock-resizer:hover,.dock-resizer:focus-visible{background:#6a8ab06b}.dock-topline{display:flex;align-items:center;gap:9px;height:27px;min-height:27px;padding:0 10px;border-bottom:1px solid #414959;background:#272c35}.dock-title{display:flex;align-items:center;gap:6px;font-size:10px;color:#b9c9e0}.dock-title>.icon{height:13px;width:13px}.dock-title strong{font-weight:500}.track-count{font-size:9px;color:#788da9;white-space:nowrap}.dock-add{display:flex;align-items:center;gap:4px;font-size:9px;color:#a5bce0;background:none;padding:3px}.dock-add .icon{height:12px;width:12px}.dock-add:hover{color:white}.dock-spacer{flex:1}.dock-status{font-size:8px;color:#6f839f}.dock-status i{display:none}.dock-volume{display:flex;align-items:center;gap:7px;width:142px;font-size:8px;color:#8499b8}.dock-volume input{width:72px}.dock-volume>span:last-child{width:24px;text-align:right}.track-list{overflow:auto;min-height:0;flex:1;padding:2px 7px 3px;scrollbar-width:thin;scrollbar-color:#53627c #292e38}.mixer-track{display:grid;grid-template-columns:17px 18px minmax(115px,180px) 22px 22px 83px 91px minmax(0,1fr);align-items:center;gap:4px;height:22px;min-width:700px;border-bottom:1px solid #363e4e;background:#2c323e;border-left:2px solid transparent;padding:0 5px;color:#a2b4d0}.mixer-track:hover{background:#353f4f}.mixer-track.selected{background:#3b485d;border-left-color:#91b1df}.track-number{font-size:8px;color:#6e87aa;text-align:center;font-variant-numeric:tabular-nums}.track-visible{width:11px;height:11px;margin:0;accent-color:#92b1df;cursor:pointer}.track-name-btn{display:flex;align-items:center;background:none;padding:0 3px;color:#bdcde5;font-size:10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left}.track-name-btn:before{content:'';flex:none;width:5px;height:13px;background:var(--track-color,#7495c2);margin-right:6px;border-radius:1px}.mix-btn{width:18px;height:15px;padding:0;background:#303a4a;color:#8298ba;border:1px solid #53627a;border-radius:2px;font-size:8px}.mix-btn.active{background:#75849e;color:#192538;border-color:#a1b6d3}.mix-btn.solo.active{background:#c3aa6f;border-color:#ccb989;color:#292c32}.mixer-track .mix-volume{width:100%;margin-right:5px}.track-instrument{font-size:8px;color:#6c87ad;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-spark{height:16px;display:flex;gap:1px;overflow:hidden;align-items:stretch;padding:0;margin-left:3px}.measure-cell{flex:1;min-width:3px;max-width:16px;height:16px;border:0;border-radius:0;background:var(--track-color,#86a5d1);padding:0;opacity:.45}.measure-cell.empty{opacity:.06}.measure-cell:hover{opacity:1;outline:1px solid #dceaff;outline-offset:-1px}.measure-cell.current{outline:1px solid #e1ebf9;outline-offset:-1px;opacity:.9}
.toast{position:fixed;bottom:calc(var(--dock-height) + 27px);left:50%;max-width:calc(100vw - 30px);transform:translate(-50%,5px);background:#252f3fee;color:#d6e7ff;padding:7px 11px;border:1px solid #617598;border-radius:3px;font-size:10px;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:30;box-shadow:0 2px 7px #0b152a33}.toast.visible{opacity:1;transform:translate(-50%,0)}.toast.error{background:#623a3e;border-color:#ae737a;color:#ffe0de}.shortcuts-dialog{width:min(410px,calc(100vw - 30px));padding:0;background:#2b313d;border:1px solid #5c7092;border-radius:5px;color:#ccdbf2;box-shadow:0 14px 35px #111b2c77}.shortcuts-dialog::backdrop{background:#141a2777}.shortcuts-dialog form{padding:17px}.dialog-header{display:flex;align-items:center;justify-content:space-between}.dialog-header h2{font-size:14px;font-weight:500;margin:0}.dialog-kicker{display:none}.shortcut-list{margin:12px 0}.shortcut-list>div{display:flex;align-items:center;justify-content:space-between;height:29px;border-bottom:1px solid #43516a;color:#a6bad9;font-size:11px}.dialog-note{font-size:10px;line-height:1.6;color:#849dbf;margin:10px 0}.dialog-footer{display:flex;justify-content:flex-end;margin-top:14px}
body.hide-palette{--left-width:0px}body.hide-palette .palette{display:none}body.hide-inspector{--right-width:0px}body.hide-inspector .inspector{display:none}body.hide-mixer{grid-template-rows:38px 27px minmax(0,1fr) 0}body.hide-mixer .track-dock{display:none}body.focus-score{--left-width:0px;--right-width:0px;grid-template-rows:38px 27px minmax(0,1fr) 0}body.focus-score .palette,body.focus-score .inspector,body.focus-score .track-dock{display:none}
@media(max-width:1180px){.app-header{gap:6px;padding:0 7px}.brand{width:93px;font-size:10px;gap:4px}.brand .icon{width:16px}.main-transport{margin-left:0}.transport-lcd{margin:0 3px}.view-controls{gap:2px}.view-controls .separator{margin:0 1px}.icon-button{width:24px}.file-actions .separator{margin:0 2px}.view-field #notation-select{width:88px}.view-field #layout-select{width:65px}#btn-fullscreen{display:none}.selection-summary{display:none}}
@media(max-width:1020px){:root{--right-width:0px}.inspector{display:none}body.show-inspector .inspector{display:flex;position:fixed;right:0;top:65px;bottom:var(--dock-height);width:218px;z-index:12;box-shadow:-6px 0 20px #10162144}.brand{width:24px}.brand>span{display:none}.view-field #notation-select{width:80px}.app-header{gap:4px}.tempo-control>span:last-child{display:none}.transport-lcd{font-size:10px;min-width:66px}.view-controls #btn-focus{display:none}.view-controls .separator{display:none}.track-context select{max-width:28vw}.speed-control{margin:0 3px}}
@media(max-width:760px){:root{--left-width:0px;--right-width:0px;--dock-height:122px}.palette{display:none}.app-header{overflow-x:auto;scrollbar-width:none;padding:0 5px}.file-actions #btn-new,.file-actions #btn-undo,.file-actions #btn-redo,.file-actions .separator{display:none}.view-controls{margin-left:auto}.main-transport{gap:1px}.transport-lcd{display:none}.tempo-control{padding:0 2px}.view-field #notation-select{display:none}.view-field #layout-select{width:60px}.view-field #zoom-select{width:66px}.view-controls .icon-button{width:23px}.brand{width:19px}.toolbar-group{gap:1px}.play-button{width:26px;height:26px;margin:0}.score-tools-row{padding:0 5px;height:30px;min-height:30px;gap:4px}.track-context label{display:none}.track-context select{width:130px;max-width:33vw}.practice-controls{gap:1px}.speed-control>span{display:none}.speed-control select{width:47px}.loop-bound{font-size:0;gap:0}.loop-bound input{width:25px;font-size:9px}.practice-controls .separator{margin:0 3px}.export-menu summary{font-size:9px;padding:3px}.export-menu summary>.icon:last-child{display:none}.practice-controls #btn-count-in{display:none}.score-scroll{padding:9px}.timeline-strip{padding:0 5px;height:26px;min-height:26px}.timeline-head{display:none}.workspace-status{font-size:8px;padding:0 5px}.status-help{display:none}.dock-topline{padding:0 6px;gap:6px}.dock-status{display:none}.dock-volume{width:117px;gap:5px}.mixer-track{grid-template-columns:17px 18px 148px 22px 22px 65px 70px minmax(0,1fr);min-width:680px}.dock-add{font-size:0}.dock-add .icon{width:15px;height:15px}.inspector-panel{padding:10px 12px}body.show-palette .palette{display:flex;position:fixed;left:0;top:65px;bottom:var(--dock-height);width:156px;z-index:13;box-shadow:6px 0 20px #10162144}body.show-inspector .inspector{bottom:var(--dock-height)}body.hide-mixer.show-palette .palette,body.hide-mixer.show-inspector .inspector{bottom:0}}
@media(max-height:650px){:root{--dock-height:112px}.palette-section{padding-top:8px;padding-bottom:8px}.palette-tool{height:27px}.score-scroll{padding-top:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.loader{animation:none}}
.palette{grid-column:1;grid-row:1}.work-area{grid-column:2;grid-row:1}.inspector{grid-column:3;grid-row:1}.horizontal-score #alphatab .at-viewport{background:#fff}
.status-action{background:none;color:#95aac9;font-size:8px;padding:0 3px}.status-action:hover{color:#e1ebff}.track-spark .measure-cell:focus-visible{outline:1px solid white;outline-offset:-1px}
.score-scroll{scrollbar-gutter:stable}
/* Library actions and the read-only practice workspace. */
.cloud-save{height:25px;padding:0 9px;background:#4b6385;border:1px solid #607b9f;color:#e0ebfa;border-radius:3px;font-size:9px;white-space:nowrap}.cloud-save:hover{background:#5b769c}.cloud-save:disabled{opacity:.5}.library-link{display:flex;align-items:center;justify-content:center}.lesson-badge{font-size:8px;color:#7f94b1;padding:0 10px;white-space:nowrap}.lesson-notes-button{font-size:9px;background:#46566f;border:1px solid #617797;color:#c8d9f1;border-radius:3px;padding:3px 8px;margin-right:8px}.lesson-notes-text{white-space:pre-wrap;line-height:1.8;color:#b3c6e2;font-size:12px;margin:20px 0 5px}.viewer{--left-width:0px!important;--right-width:0px!important}.viewer .palette,.viewer .inspector,.viewer .file-actions,.viewer .tab-add,.viewer #btn-toggle-palette,.viewer #btn-toggle-inspector,.viewer #btn-add-track,.viewer #btn-demo,.viewer .export-menu,.viewer #btn-shortcuts{display:none!important}.viewer .main-transport{margin-left:12px}.viewer .tab-dirty,.viewer .tab-unsaved{display:none}.viewer .workspace-status .status-help{display:block}.viewer #selection-marker{pointer-events:none}.viewer .brand{pointer-events:none}.viewer .tempo-control input{color:#859abb;opacity:1}.viewer .file-tab{pointer-events:none}.viewer .view-controls{margin-left:auto}.viewer .track-dock{min-height:0}@media(max-width:1280px){body:not(.viewer) .view-field>span{display:none}body:not(.viewer) .view-controls #btn-fullscreen{display:none}body:not(.viewer) .brand{width:24px}body:not(.viewer) .brand>span{display:none}}@media(max-width:760px){.cloud-save{padding:0 6px;font-size:8px}.lesson-badge{display:none}.viewer .brand{width:24px}.viewer .main-transport{margin-left:4px}.viewer .view-controls #btn-fullscreen{display:block}.viewer .practice-controls #btn-count-in{display:flex}.viewer .score-tools-row{flex-wrap:wrap;height:auto;min-height:38px;padding:4px 6px}.viewer .track-context{flex:1}.viewer .track-context select{max-width:100%;width:145px}.viewer .practice-controls{margin-left:auto}.viewer .selection-summary{display:none}}
/* Keep workspace in its intended grid row even when other body children appear. */
body{grid-template-columns:minmax(0,1fr)}
#note-selection-markers{position:absolute;inset:0;z-index:3;pointer-events:none}.note-selection-marker{position:absolute;border:2px solid #1769c2;border-radius:3px;background:#3b82f61a;pointer-events:none}
body>.app-header,body>.file-tabs,body>.editor-layout,body>.track-dock{min-width:0;max-width:100%}
body>.app-header{grid-column:1;grid-row:1}body>.file-tabs{grid-column:1;grid-row:2}body>.editor-layout{grid-column:1;grid-row:3}body>.track-dock{grid-column:1;grid-row:4}
@media(max-width:760px){body:not(.viewer) .file-actions #btn-new,body:not(.viewer) .file-actions #btn-undo,body:not(.viewer) .file-actions #btn-redo{display:flex}body:not(.viewer) .view-field #notation-select{display:block}}
.score-page,#alphatab{min-height:0}.loop-shortcut{background:#404755;color:#c4d1e3;border:1px solid #586477;border-radius:3px;padding:3px 6px;white-space:nowrap;font-size:9px}.loop-shortcut:hover{background:#53627a}
@media(max-height:500px){:root{--dock-height:72px}.score-scroll{padding-top:6px}}

body{grid-template-rows:38px 27px minmax(0,1fr) min(var(--dock-height),35vh)}
body.hide-mixer,body.focus-score{grid-template-rows:38px 27px minmax(0,1fr) 0}
@media(max-width:760px){body:not(.viewer) .score-tools-row{height:auto;min-height:30px;flex-wrap:wrap;padding:4px 6px}body:not(.viewer) .practice-controls{flex-wrap:wrap}}

/* Compact suite actions use the same filled and tonal button language. */
.cloud-save{border-radius:14px;background:#0b57d0;border-color:transparent;color:#fff;padding-inline:12px}
.cloud-save:hover{background:#0847af}
.play-button{border-radius:50%;background:#0b57d0;border-color:transparent;color:#fff}
.play-button:hover{background:#0847af}
.icon-button{border-radius:7px}
.loop-shortcut,.lesson-notes-button{border-radius:14px}

/* Editor workspace: keep score prominent while making editing tools legible. */
body:not(.viewer){--left-width:190px;--right-width:236px;--dock-height:144px;grid-template-rows:48px 30px minmax(0,1fr) min(var(--dock-height),35vh);font-size:12px}
body:not(.viewer).hide-palette{--left-width:0px}
body:not(.viewer).hide-inspector{--right-width:0px}
body:not(.viewer).hide-mixer,body:not(.viewer).focus-score{grid-template-rows:48px 30px minmax(0,1fr) 0}
body:not(.viewer).focus-score{--left-width:0px;--right-width:0px}
body:not(.viewer) .app-header{gap:10px;padding:0 12px;background:#242730}
body:not(.viewer) .brand{width:auto;min-width:24px;font-size:12px}
body:not(.viewer) .brand>svg{width:20px;height:20px}
body:not(.viewer) .file-actions{gap:3px}
body:not(.viewer) .file-actions .icon-button{width:auto;gap:5px;padding:0 7px}
body:not(.viewer) .file-actions #btn-new .button-label,body:not(.viewer) .file-actions #btn-open .button-label,body:not(.viewer) .file-actions #btn-save .button-label{display:inline;font-size:11px}
body:not(.viewer) .cloud-save{height:30px;border-radius:4px;background:#42658e;padding:0 10px;font-size:11px}
body:not(.viewer) .cloud-save:hover{background:#5279a8}
body:not(.viewer) .main-transport{margin:0 auto;gap:4px}
body:not(.viewer) .play-button{width:34px;height:34px;background:#537aa9}
body:not(.viewer) .view-controls{margin-left:0;gap:3px}
body:not(.viewer) .icon-button{height:30px;min-width:30px;border-radius:4px}
body:not(.viewer) .transport-lcd{min-width:76px;padding:4px 6px;background:#1c2028;border:1px solid #414854;border-radius:3px}
body:not(.viewer) .view-field select{height:28px;font-size:11px}
body:not(.viewer) .file-tabs{background:#2c303a}
body:not(.viewer) .file-tab{min-width:185px;font-size:11px;background:#353a46}
body:not(.viewer) .file-tabs .tab-add{height:29px}
body:not(.viewer) .lesson-badge{font-size:10px}
body:not(.viewer) .palette,body:not(.viewer) .inspector{background:#2c3039}
body:not(.viewer) .palette-heading,body:not(.viewer) .inspector-tabs{height:38px;min-height:38px}
body:not(.viewer) .palette-heading{padding:0 12px;font-size:12px}
body:not(.viewer) .edit-toggle{font-size:11px}
body:not(.viewer) .palette-section{padding:11px 10px}
body:not(.viewer) .section-label{margin-bottom:8px;color:#aeb8c9;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
body:not(.viewer) .duration-grid{gap:3px}
body:not(.viewer) .palette-tool{height:45px;flex-direction:column;gap:0;background:#363c48;border:1px solid #454d5b}
body:not(.viewer) .palette-tool small{display:block;font-size:9px;line-height:11px;color:#b9c5d8}
body:not(.viewer) .palette-tool.active,body:not(.viewer) .palette-tool.is-selected,body:not(.viewer) .effect-tool.active{background:#4b6993;border-color:#83a6d5;color:#fff}
body:not(.viewer) .palette-tool:hover,body:not(.viewer) .effect-tool:hover{background:#485365}
body:not(.viewer) .effect-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
body:not(.viewer) .effect-tool{height:33px;justify-content:flex-start;gap:5px;padding:0 6px;background:#363c48;border:1px solid #454d5b}
body:not(.viewer) .effect-tool .icon,body:not(.viewer) .effect-symbol{width:20px;height:18px;flex:none;text-align:center}
body:not(.viewer) .effect-tool small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
body:not(.viewer) .check-control,body:not(.viewer) .mini-tool,body:not(.viewer) .compact-field,body:not(.viewer) .wide-tool{font-size:11px}
body:not(.viewer) .compact-field{grid-template-columns:45px minmax(0,1fr)}
body:not(.viewer) .compact-field input,body:not(.viewer) .compact-field select{height:27px;font-size:11px}
body:not(.viewer) .wide-tool{min-height:29px;padding:4px}
body:not(.viewer) .score-tools-row{min-height:38px;height:38px;background:#343944}
body:not(.viewer) .track-context>label,body:not(.viewer) .selection-summary,body:not(.viewer) .loop-bound,body:not(.viewer) .speed-control{font-size:10px}
body:not(.viewer) .track-context select,body:not(.viewer) .speed-control select{height:27px;font-size:11px}
body:not(.viewer) .loop-bound input{height:26px;font-size:11px}
body:not(.viewer) .loop-shortcut{border-radius:3px;font-size:10px}
body:not(.viewer) .work-area{background:#555a64}
body:not(.viewer) .score-scroll{padding:18px}
body:not(.viewer) .timeline-head,body:not(.viewer) .timeline-bar,body:not(.viewer) .workspace-status{font-size:10px}
body:not(.viewer) .timeline-bar{min-width:27px;height:21px}
body:not(.viewer) .workspace-status{height:22px;min-height:22px}
body:not(.viewer) .inspector-tab{font-size:11px}
body:not(.viewer) .inspector-panel{padding:13px}
body:not(.viewer) .inspector-title,body:not(.viewer) .field-label{font-size:11px}
body:not(.viewer) .text-input{height:29px;font-size:12px}
body:not(.viewer) .inspector-note,body:not(.viewer) .selected-note-card div span,body:not(.viewer) .check-list .check-control{font-size:10px}
body:not(.viewer) .button{height:30px;font-size:11px}
body:not(.viewer) .dock-topline{height:32px;min-height:32px}
body:not(.viewer) .dock-title,body:not(.viewer) .dock-add,body:not(.viewer) .track-name-btn{font-size:11px}
body:not(.viewer) .mixer-track{height:28px}
body:not(.viewer) .mix-btn{height:20px;width:20px;font-size:10px}
body:not(.viewer) .track-number,body:not(.viewer) .track-instrument,body:not(.viewer) .dock-volume{font-size:10px}
@media(max-width:1400px){body:not(.viewer) .file-actions .button-label{display:none!important}body:not(.viewer) .file-actions .icon-button{width:30px;padding:4px}}
@media(max-width:1280px){body:not(.viewer) .brand>span{display:none}body:not(.viewer) .brand{width:24px}}
@media(max-width:1020px){body:not(.viewer){--right-width:0px}body:not(.viewer).show-inspector .inspector{top:78px;width:236px}}
@media(max-width:760px){
  body:not(.viewer){--left-width:0px;--right-width:0px;--dock-height:122px}
  body:not(.viewer) .app-header{gap:6px;overflow-x:auto;justify-content:flex-start;padding:0 8px}
  body:not(.viewer) .main-transport{margin:0}
  body:not(.viewer) .view-controls{margin-left:0}
  body:not(.viewer) .transport-lcd{display:flex}
  body:not(.viewer) .view-field #notation-select{display:block}
  body:not(.viewer) .score-tools-row{height:auto;min-height:38px;padding:5px 7px}
  body:not(.viewer) .track-context{flex:1}
  body:not(.viewer) .practice-controls{justify-content:flex-start}
  body:not(.viewer) .practice-controls #btn-count-in{display:flex}
  body:not(.viewer) .score-scroll{padding:10px}
  body:not(.viewer).show-palette .palette{top:78px;width:190px}
  body:not(.viewer).show-inspector .inspector{top:78px;width:236px;max-width:90vw}
  body:not(.viewer) .dock-add{font-size:11px}
}
@media(max-height:650px){body:not(.viewer){--dock-height:112px}body:not(.viewer) .palette-tool{height:42px}}
@media(max-height:500px){body:not(.viewer){--dock-height:72px}}
@media(max-width:1280px){body:not(.viewer) .view-controls #btn-fullscreen{display:inline-flex}}
@media(max-width:1020px){body:not(.viewer) .view-controls #btn-focus{display:inline-flex}}
@media(max-width:1400px){body:not(.viewer) .app-header{overflow-x:auto;scrollbar-width:thin}body:not(.viewer) .toolbar-group{min-width:max-content}}
body:not(.viewer) .effect-tool[data-effect="isHammerPullOrigin"]{grid-column:span 2}
body:not(.viewer) .effect-tool{gap:3px;padding:0 3px}
body:not(.viewer) .effect-tool .icon,body:not(.viewer) .effect-symbol{width:15px;height:16px}

.shortcuts-dialog{max-height:calc(100dvh - 24px);overflow-y:auto}
