@import"https://fonts.googleapis.com/css2?family=Source+Serif+4:opsz,wght@8..60,500;8..60,650;8..60,750&display=swap";:root{--ink: #333333;--paper: #f8f9fa;--card: #ffffff;--muted: #6d716f;--line: #d9dee7;--line-strong: #333333;--blue: #4f80ff;--yellow: #ffd13b;--red: #e63c48;--purple: #7b52d9;--pink: #f280ed;--green: #1e9e5a;--font-ui: "Avenir Next", "Segoe UI", sans-serif;--font-sheet: "Source Serif 4", Georgia, serif;font-family:var(--font-ui);color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html,body,#root{margin:0;min-width:320px;min-height:100%}body{min-height:100vh;background-color:var(--paper)}button,input,select,textarea{font:inherit}button{color:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--blue),white 30%);outline-offset:2px}button:disabled{opacity:.4;cursor:not-allowed}h1,h2,h3,p{margin:0}.primary-action,.studio-header button,.workspace button,.library-screen button,.file-action,.modal-card button{border:2px solid var(--ink);border-radius:6px;background:var(--card);min-height:36px;padding:7px 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:800;font-size:13px}.primary-action{background:var(--blue)!important;color:#fff!important}.danger{color:var(--red)!important}.page-kicker,.panel-eyebrow,.brand-kicker{display:block;font-size:10px;line-height:1;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.library-screen{min-height:100vh}.library-hero{min-height:286px;padding:48px max(28px,calc((100vw - 1240px)/2));display:flex;align-items:flex-end;justify-content:space-between;gap:40px;background:linear-gradient(90deg,color-mix(in srgb,var(--yellow) 34%,transparent),transparent 54%),var(--card);color:var(--ink);border-bottom:2px solid var(--ink);position:relative;overflow:hidden}.library-hero:after{content:"";position:absolute;width:260px;height:260px;right:6vw;top:-128px;border:48px solid var(--blue);border-radius:50%;opacity:.82}.library-hero>*{position:relative;z-index:1}.brand-kicker{color:var(--blue);margin-bottom:10px}.library-hero h1{font-size:clamp(38px,5vw,60px);line-height:.94;letter-spacing:-.04em;font-weight:900}.library-hero h1 span{color:var(--blue);margin-left:.16em}.library-hero p{max-width:650px;margin-top:20px;color:var(--muted);font-size:16px;line-height:1.55;font-weight:700}.library-actions{display:flex;flex-direction:column;gap:10px;min-width:190px}.library-actions .primary-action{background:var(--blue)!important;color:#fff!important}.file-action{background:#fff;color:var(--ink);border-color:var(--ink)}.file-action input{display:none}.library-content{max-width:1240px;margin:0 auto;padding:42px 28px 80px}.library-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:3px solid var(--ink);padding-bottom:14px;margin-bottom:24px}.library-heading h2{font-size:23px}.library-heading>strong{width:42px;height:42px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--yellow)}.song-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.song-card{background:var(--card);border:2px solid var(--ink);border-radius:8px;box-shadow:5px 5px 0 var(--ink);overflow:hidden}.song-open{border:0!important;border-radius:0!important;width:100%;min-height:230px!important;padding:22px!important;display:grid!important;grid-template-columns:44px 1fr;align-content:start;text-align:left}.song-icon{width:38px;height:38px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff}.song-card h3{font-size:22px;line-height:1.1}.song-card p{margin:7px 0 18px;color:var(--muted);font-size:12px}.song-preview{display:flex;gap:5px;flex-wrap:wrap}.song-preview span{padding:5px 8px;border:1.5px solid var(--ink);border-radius:4px;background:#f3f5fb;font-weight:900;font-size:12px}.song-card time{display:block;margin-top:24px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.open-label{grid-column:1 / -1;align-self:end;color:var(--blue);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.song-card footer{border-top:2px solid var(--ink);display:flex}.song-card footer button{flex:1;border:0!important;border-radius:0!important}.song-card footer button+button{border-left:2px solid var(--ink)!important}.library-empty{padding:80px 24px;text-align:center;border:2px dashed #aaa;border-radius:8px;background:#ffffffa6}.library-empty svg{color:var(--blue)}.library-empty h3{margin:12px 0 6px;font-size:22px}.library-empty p{color:var(--muted);margin-bottom:18px}.sound-library-status{min-height:38px;border:2px solid var(--ink);border-radius:6px;background:#fff;padding:7px 10px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px;color:var(--ink);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;position:relative;overflow:hidden}.sound-library-status.phase-ready{background:#e4f7ec;color:#17653d}.sound-library-status.phase-error{background:#ffe4e6;color:#a92431}.sound-library-status i{position:absolute;inset:auto 0 0;height:4px;background:#dce4f3}.sound-library-status i b{display:block;height:100%;background:var(--blue)}.sound-library-status.is-compact{min-height:34px;padding:5px 8px;border-color:var(--line);font-size:8px;white-space:nowrap}.studio-app{min-height:100vh}.studio-header{height:70px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border-bottom:2px solid var(--ink);position:sticky;top:0;z-index:50}.brand-group,.header-controls{display:flex;align-items:center;gap:9px;min-width:0}.library-button{padding:7px!important}.brand-lockup{border-left:2px solid var(--ink);padding-left:10px;line-height:.98;white-space:nowrap}.brand-lockup span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:900;margin-bottom:3px}.brand-lockup strong{font-size:17px;letter-spacing:-.035em}.brand-lockup i{font-style:normal;color:var(--blue);margin-left:3px}.song-title-field{margin-left:9px;display:flex;align-items:center;gap:7px;min-width:160px}.song-title-field span,.header-select span,.tempo-control span{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.song-title-field input{width:min(240px,19vw);border:0;border-bottom:2px solid var(--line);padding:7px 2px;font-weight:800;font-size:15px}.save-state{font-size:9px;font-weight:900;text-transform:uppercase;color:var(--green);white-space:nowrap}.save-state.is-dirty{color:var(--purple)}.header-select,.tempo-control{border:2px solid var(--ink);border-radius:6px;height:38px;display:flex;align-items:center;gap:5px;padding:0 8px;background:#fafafa}.header-select select,.tempo-control input{border:0;background:transparent;font-weight:900}.tempo-control input{width:48px}.icon-button{min-width:36px;padding:6px!important}.save-button{background:var(--yellow)!important}.studio-body{display:grid;grid-template-columns:64px minmax(0,1fr);min-height:calc(100vh - 70px)}.mode-rail{background:var(--card);border-right:2px solid var(--ink);padding:8px;display:flex;flex-direction:column;gap:8px;position:sticky;top:70px;height:calc(100vh - 70px);z-index:20;overflow:visible}.mode-rail button{position:relative;flex:none;width:48px;min-height:48px;padding:0;border:2px solid var(--ink);border-radius:12px;color:var(--ink);background:var(--card);display:flex;align-items:center;justify-content:center}.mode-rail button>span{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);border:2px solid var(--ink);border-radius:999px;background:var(--ink);color:#fff;padding:5px 10px;font-size:10px;font-weight:900;white-space:nowrap;opacity:0;pointer-events:none}.mode-rail button:hover>span,.mode-rail button:focus-visible>span{opacity:1}.mode-rail button.is-active{background:var(--blue);color:#fff;border-color:var(--ink)}.studio-main{min-width:0}.transport-strip{min-height:58px;background:#fff;border-bottom:2px solid var(--ink);padding:8px max(16px,calc((100vw - 1360px)/2));display:grid;grid-template-columns:auto auto minmax(160px,1fr) auto;align-items:center;gap:14px;position:sticky;top:70px;z-index:18}.transport-play{background:var(--blue)!important;color:#fff!important;min-width:132px;font-weight:900!important}.transport-play.is-playing{background:var(--red)!important}.transport-position{display:grid;grid-template-columns:auto auto;-moz-column-gap:10px;column-gap:10px;align-items:baseline;min-width:180px}.transport-position span{text-transform:uppercase;font-size:9px;font-weight:900;color:var(--muted)}.transport-position strong{font-size:19px}.transport-position small{grid-column:1 / -1;font-size:9px;color:var(--muted)}.transport-meter{height:8px;background:#e8e8e5;border:1.5px solid var(--ink);border-radius:999px;overflow:hidden}.transport-meter i{display:block;height:100%;background:var(--yellow)}.transport-hint{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.mobile-nav{display:none}.workspace{max-width:1360px;margin:0 auto;padding:32px clamp(16px,3vw,40px) 80px}.workspace-header{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}.workspace-header h2{margin-top:7px;font-size:clamp(28px,4vw,44px);line-height:1;font-weight:900;letter-spacing:-.03em}.workspace-actions{display:flex;gap:10px;align-items:end}.select-control{display:flex;align-items:center;gap:7px;border:1.5px solid var(--line);border-radius:6px;background:#f7f7f5;padding:5px 7px}.select-control span{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.select-control select{border:0;background:transparent;font-weight:800;font-size:12px;min-height:24px}.midi-control,.performance-control{display:flex;align-items:center;gap:6px;padding:4px;border:2px solid var(--ink);border-radius:7px;background:var(--card)}.performance-control>span{padding-left:2px;color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.performance-key-map{color:var(--muted);font-size:8px;font-weight:900;white-space:nowrap}.midi-control select{border:0;background:#eee;padding:7px;font-weight:800;font-size:11px}.midi-control button,.performance-control button{min-height:29px;padding:4px 8px;font-size:10px}.midi-control button.is-on,.performance-control button.is-on{background:var(--yellow)}.segmented{display:inline-flex;border:1.5px solid var(--line);padding:3px;border-radius:6px;background:#f6f6f4;gap:2px;flex-wrap:wrap}.segmented button{border:0;min-height:27px;padding:4px 9px;border-radius:4px;background:transparent;font-size:10px}.segmented button.is-active{background:var(--ink);color:#fff}.bar-choice{margin-left:auto}.select-menu{position:relative;min-width:92px;color:var(--ink)}.select-menu-trigger{width:100%;min-height:29px!important;padding:5px 7px!important;border:1.5px solid var(--ink)!important;border-radius:5px!important;background:#fff!important;display:flex!important;justify-content:space-between!important;gap:12px!important;font-size:11px!important;font-weight:900!important;white-space:nowrap}.select-menu-trigger[aria-expanded=true]{background:color-mix(in srgb,var(--blue),white 88%)!important;box-shadow:2px 2px 0 var(--ink)}.select-menu-list{position:absolute;top:calc(100% + 5px);left:0;z-index:120;width:max(100%,160px);max-height:260px;overflow-y:auto;padding:5px;border:2px solid var(--ink);border-radius:6px;background:#fff;box-shadow:5px 5px 0 var(--ink)}.select-menu-list button{width:100%;min-height:32px!important;padding:6px 8px!important;border:0!important;border-radius:4px!important;background:#fff!important;display:flex!important;justify-content:space-between!important;font-size:11px!important;font-weight:800!important;text-align:left}.select-menu-list button.is-active{background:#edf2ff!important}.select-menu-list button.is-selected{color:#234fbe;background:color-mix(in srgb,var(--blue),white 86%)!important}.header-select .select-menu{min-width:68px}.header-select .select-menu-trigger{border:0!important;background:transparent!important;box-shadow:none!important}.midi-control .select-menu{min-width:145px}.midi-control .select-menu-trigger{border:0!important;background:#eee!important}.composer-block{margin-bottom:18px}.instrument-rack{border:2px solid var(--ink);border-radius:8px;background:var(--card);overflow:visible;box-shadow:4px 4px color-mix(in srgb,var(--tone),transparent 30%);--tone: var(--blue)}.instrument-rack.tone-bass{--tone: var(--purple)}.instrument-rack.tone-drums{--tone: var(--red)}.instrument-rack.tone-chords{--tone: var(--blue)}.instrument-title{padding:9px 12px;border-bottom:2px solid var(--ink);background:color-mix(in srgb,var(--tone),white 82%);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}.instrument-line{min-height:50px;padding:7px 10px;display:flex;align-items:center;gap:8px}.instrument-line+.instrument-line{border-top:1.5px solid var(--line)}.control-kicker{width:45px;flex:none;text-transform:uppercase;font-size:8px;font-weight:900;letter-spacing:.1em;color:var(--muted)}.instrument-line-primary .select-control{margin-left:2px}.instrument-line-primary .track-play{margin-left:auto}.instrument-line-primary .track-play.is-active{background:var(--tone);color:#fff}.preset-content{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.compact-select{margin-left:auto}.palette-panel,.midi-piano-panel,.sequence-shell,.pad-workspace,.bass-grid-wrap{border:2px solid var(--ink);border-top:0;background:var(--card);margin:0 10px}.palette-panel{padding:14px}.midi-piano-panel{padding:14px;overflow-x:auto}.palette-heading,.pad-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}.palette-heading strong,.pad-toolbar strong{display:block;font-size:12px;margin-top:4px}.chord-palette{display:grid;gap:7px;overflow-x:auto;padding-bottom:2px}.chord-palette-row{display:grid;grid-template-columns:repeat(6,minmax(78px,1fr));gap:7px;min-width:510px}.chord-chip{min-width:78px;min-height:62px!important;padding:5px 22px 5px 11px!important;flex-direction:column;position:relative;background:color-mix(in srgb,var(--blue),white 84%)!important}.chord-chip.is-color-chord{background:color-mix(in srgb,var(--purple),white 84%)!important}.chord-chip.is-color-chord span{color:var(--purple)}.chord-chip span{font-size:10px;color:var(--blue)}.chord-chip strong{font-size:16px}.chord-chip kbd{position:absolute;right:6px;top:6px;min-width:18px;padding:1px 4px;border:1.5px solid var(--ink);border-radius:3px;background:#fff;font-size:9px;text-align:center}.palette-actions,.pad-record-controls{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.record-quantize-control{display:flex;align-items:center;gap:5px;padding:3px 4px 3px 7px;border:1.5px solid var(--line);border-radius:5px;background:#fff}.record-quantize-control>span{color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.record-quantize-control .select-menu-trigger{min-height:27px;padding:3px 7px;font-size:9px}.midi-editor-summary{color:var(--blue);font-size:11px}.chord-depth-control{display:grid;grid-template-columns:auto minmax(140px,320px) 70px;align-items:center;gap:10px;margin-bottom:12px;padding:9px 10px;border:1.5px solid var(--line);border-radius:6px;background:#f5f6fa}.chord-depth-control input{width:100%;accent-color:var(--blue)}.chord-depth-control strong{color:var(--blue);font-size:11px;text-transform:uppercase}.palette-record-status{min-width:92px;color:var(--red);font-size:10px!important;text-transform:uppercase;letter-spacing:.05em}.palette-record-status.phase-recording:before{content:"";display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:var(--red)}.sequence-shell{padding:12px;overflow-x:auto}.timeline-ruler{display:grid;grid-template-columns:repeat(var(--steps),minmax(14px,1fr));min-width:calc(var(--steps) * 17px);margin-left:0;height:28px;border-bottom:2px solid var(--ink)}.timeline-ruler>div{border-left:1px solid #e1e1dd;display:flex;align-items:center;padding-left:3px;color:#aaa;font-size:8px}.timeline-ruler .beat-start{border-left-color:#888;color:var(--muted)}.timeline-ruler .bar-start{border-left:2px solid var(--ink);color:var(--ink)}.timeline-ruler .is-current{background:var(--yellow);color:var(--ink)}.event-grid{position:relative;min-width:calc(var(--steps) * 17px);height:72px;background:#fafaf8;overflow:hidden}.grid-lines{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(var(--steps),1fr)}.grid-lines>span,.grid-lines>button{border:0;border-left:1px solid #e4e4df;border-radius:0;min-width:0;padding:0;background:transparent}.grid-lines>.beat-start{border-left-color:#999}.grid-lines>.bar-start{border-left:2px solid var(--ink)}.grid-lines>.is-current{background:color-mix(in srgb,var(--yellow),transparent 38%)}.cursor-marker{position:absolute;top:0;bottom:0;width:2px;background:var(--red);pointer-events:none;z-index:2}.sequence-event{position:absolute;top:11px;height:50px;z-index:4;min-width:14px;border:2px solid var(--ink);border-radius:5px;background:var(--blue);color:#fff;display:flex;align-items:center;padding:0 22px 0 8px;overflow:hidden;font-size:12px;font-weight:900}.sequence-event.is-selected{box-shadow:0 0 0 3px var(--yellow)}.event-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.event-move-handle{align-self:stretch;display:flex;align-items:center;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.event-move-handle:active{cursor:grabbing}.event-delete{display:none!important;position:absolute;top:3px;right:17px;width:19px;min-height:19px!important;padding:0!important;border:0!important;color:#fff;background:#00000040!important}.sequence-event:hover .event-delete,.sequence-event:focus .event-delete{display:inline-flex!important}.resize-handle{position:absolute;right:0;top:0;bottom:0;width:17px;background:#0000002e;cursor:ew-resize;display:grid;place-items:center}.resize-handle i{width:4px;height:18px;border-left:1px solid white;border-right:1px solid white}.midi-piano{position:relative;min-width:700px;height:150px;margin-top:10px;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.midi-piano-whites{position:absolute;top:0;right:0;bottom:0;left:0;display:flex}.midi-piano-whites button{flex:1;min-width:0;height:150px;padding:0 2px 7px!important;align-items:end;justify-content:center;border:1.5px solid var(--ink);border-radius:0 0 5px 5px;background:#fff;box-shadow:inset 0 -6px #d9dce3}.midi-piano-whites button+button{border-left-width:0}.midi-piano-whites button span{color:var(--muted);font-size:8px;font-weight:900}.midi-piano-whites button.is-active{background:var(--yellow);box-shadow:inset 0 -3px color-mix(in srgb,var(--yellow),black 18%)}.midi-piano-black{position:absolute;z-index:2;top:0;width:3.5%;height:94px;min-height:0!important;padding:0!important;transform:translate(-50%);border:2px solid var(--ink)!important;border-radius:0 0 4px 4px!important;background:var(--ink)!important;box-shadow:inset 0 -6px #000!important}.midi-piano-black.is-active{background:var(--blue)!important;box-shadow:inset 0 -3px color-mix(in srgb,var(--blue),black 25%)!important}.chord-piano-roll{max-height:420px;margin:0 10px;overflow:auto;border:2px solid var(--ink);border-top:0;background:#fff}.chord-piano-roll>.timeline-ruler{position:sticky;z-index:9;top:0;margin-left:72px;background:#fff}.chord-piano-roll-body{min-width:max(850px,calc(var(--steps, 64) * 17px))}.chord-piano-row{display:grid;grid-template-columns:72px minmax(calc(var(--steps) * 17px),1fr);min-width:calc(var(--steps) * 17px + 72px);height:29px}.chord-piano-row .row-label{position:sticky;z-index:7;left:0;min-height:29px;border-left-color:var(--blue);background:#fff}.chord-piano-row.is-black-key .row-label{background:var(--ink);color:#fff}.chord-piano-row.is-playing .row-label{background:var(--yellow);color:var(--ink)}.piano-event-grid{height:29px;min-width:calc(var(--steps) * 17px)}.piano-event-grid .sequence-event{top:2px;height:25px;padding-left:6px;background:var(--blue);font-size:9px}.piano-event-grid .grid-lines button:hover{background:color-mix(in srgb,var(--blue),transparent 84%)}.capture-button.is-armed{background:var(--red)!important;color:#fff!important}.drum-pads{width:min(100%,620px);margin:4px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:center;gap:14px 18px}.drum-pad{width:min(100%,170px);min-height:0!important;padding:0!important;border:0!important;display:inline-flex!important;flex-direction:column;align-items:center;gap:6px;position:relative;background:none!important;box-shadow:none!important}.drum-pad-surface{width:clamp(104px,12vw,142px);height:clamp(104px,12vw,142px);display:flex;align-items:flex-start;justify-content:flex-end;padding:8px;border:2px solid var(--ink);border-radius:16px;background:var(--voice);box-shadow:inset 0 -7px color-mix(in srgb,var(--voice),black 20%)}.drum-pad kbd{min-width:27px;height:27px;display:inline-grid;place-items:center;border:1.5px solid var(--ink);border-radius:6px;padding:1px 5px;background:#fff;color:var(--ink);font-size:10px;font-weight:900}.drum-pad-label{color:var(--ink);font-size:13px;font-weight:900}.drum-pad.is-pressed .drum-pad-surface,.drum-pad:active .drum-pad-surface{transform:scale(.94);border-width:3px;padding:7px;box-shadow:inset 0 -3px color-mix(in srgb,var(--voice),black 20%)}.pad-workspace{padding:14px}.pad-notation-heading{margin:18px 0 7px;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.pad-notation-heading strong{color:var(--muted);font-size:9px}.pad-workspace .drum-grid-shell{margin:0;border:2px solid var(--ink);background:#f8f8f5}.drum-grid-shell{padding-bottom:16px}.drum-grid-shell .timeline-ruler{margin-left:74px}.drum-row{display:grid;grid-template-columns:74px minmax(calc(var(--steps) * 17px),1fr);min-width:calc(var(--steps) * 17px + 74px)}.row-label{min-height:38px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-left:5px solid var(--voice, var(--purple));font-size:10px;font-weight:900;text-transform:uppercase;background:#fff}.row-label small{font-size:7px;color:var(--muted)}.step-row{display:grid;grid-template-columns:repeat(var(--steps),minmax(14px,1fr))}.step-row>*{min-width:0;min-height:38px;display:block;border:0;border-radius:0;border-left:1px solid var(--line);background:#f3f3f0;padding:0}.step-row>*.beat-start{border-left-color:#888;background:#e9e9e5}.step-row>*.bar-start{border-left:2px solid var(--ink)}.step-row>*.is-active{background:var(--voice);box-shadow:inset 0 0 0 4px #ffffff4d}.step-row>*.is-current{outline:3px solid var(--yellow);outline-offset:-3px}.custom-pattern-notice{margin:0 10px;border:2px solid var(--ink);border-top:0;padding:9px 12px;background:var(--yellow);display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800}.bass-grid-wrap{max-height:370px;overflow:auto}.bass-grid-content{min-width:max(850px,calc(var(--steps, 64) * 17px))}.bass-grid-wrap .timeline-ruler{margin-left:76px;position:sticky;top:0;z-index:8;background:#fff}.bass-row{display:grid;grid-template-columns:76px minmax(calc(var(--steps) * 17px),1fr);min-width:calc(var(--steps) * 17px + 76px);height:30px}.bass-row .row-label{position:sticky;left:0;z-index:7;min-height:30px;border-left-color:var(--purple);background:#fff}.bass-row .row-label.is-black-key{background:var(--ink);color:#fff}.bass-event-grid{height:30px;min-width:calc(var(--steps) * 17px)}.bass-event-grid .sequence-event{top:2px;height:26px;background:var(--purple);padding-left:6px;font-size:9px}.bass-event-grid .grid-lines button:hover{background:color-mix(in srgb,var(--purple),transparent 82%)}.bass-performance-keys{margin:0 10px;padding:12px;border:2px solid var(--ink);border-top:0;background:color-mix(in srgb,var(--purple),white 91%);display:grid;grid-template-columns:minmax(190px,.7fr) minmax(420px,1.3fr);align-items:center;gap:14px}.bass-performance-keys>div>strong{display:block;margin-top:4px;font-size:11px}.bass-record-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.bass-degree-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(7,minmax(48px,1fr));gap:5px}.bass-degree-row button{min-height:64px;padding:6px!important;position:relative;flex-direction:column;background:#fff;box-shadow:inset 0 -5px color-mix(in srgb,var(--purple),black 18%)}.bass-degree-row button.is-active{color:#fff;background:var(--purple);transform:translateY(2px);box-shadow:inset 0 -2px color-mix(in srgb,var(--purple),black 28%)}.bass-degree-row kbd{position:absolute;top:4px;right:5px;min-width:17px;padding:1px 3px;border:1px solid currentColor;border-radius:3px;font-size:8px}.bass-degree-row span{font-size:9px;color:var(--muted)}.bass-degree-row button.is-active span{color:#fff}.bass-degree-row strong{font-size:13px}.form-summary{display:flex;align-items:baseline;gap:5px;padding:10px 14px;border:2px solid var(--ink);background:var(--yellow);border-radius:6px}.form-summary strong{font-size:20px}.form-summary span{font-size:9px;text-transform:uppercase;font-weight:900}.form-summary i{width:1px;height:20px;background:var(--ink);margin:0 6px}.form-map-card{border:2px solid var(--ink);border-radius:8px;background:#fff;padding:14px;margin-bottom:14px;box-shadow:4px 4px 0 var(--ink)}.form-track{min-height:76px;display:flex;gap:5px}.form-track button{min-width:90px;flex-basis:0;position:relative;overflow:hidden;flex-direction:column;background:color-mix(in srgb,var(--section),white 58%)}.form-track button.is-selected{box-shadow:inset 0 0 0 3px #fff}.form-track button.is-current{background:var(--section);color:#fff}.form-track small{font-size:8px}.form-progress{position:absolute;bottom:0;left:0;height:6px;background:var(--yellow);border-top:1px solid var(--ink)}.section-add-panel{padding:13px;border:2px solid var(--ink);border-radius:8px;background:#fff;margin-bottom:18px}.section-type-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.section-type-list button{border-left:7px solid var(--section)}.arrangement-list{display:flex;flex-direction:column;gap:10px}.arrangement-card{min-height:100px;display:grid;grid-template-columns:36px 48px minmax(0,1fr) auto;align-items:center;border:2px solid var(--ink);border-left:10px solid var(--section);border-radius:8px;background:#fff;box-shadow:3px 3px #bbb}.arrangement-card.is-selected{box-shadow:4px 4px 0 var(--section)}.drag-handle{border:0!important;background:transparent!important;padding:0!important;cursor:grab}.arrangement-index{font-size:19px;font-weight:900;color:#aaa}.arrangement-main{padding:10px}.arrangement-name{display:flex;align-items:center;gap:8px}.arrangement-name input{border:0;border-bottom:2px solid var(--line);font-size:17px;font-weight:900;min-width:140px}.arrangement-name span{display:inline-flex;align-items:center;gap:3px;font-size:9px;text-transform:uppercase;color:var(--blue);font-weight:900}.arrangement-controls{display:flex;gap:20px;margin-top:9px}.arrangement-controls label{display:flex;align-items:center;gap:7px;font-size:9px;text-transform:uppercase;font-weight:900;color:var(--muted)}.stepper{display:flex;border:1.5px solid var(--line);border-radius:5px;overflow:hidden}.stepper button{min-height:28px;border:0;border-radius:0;padding:3px 9px}.stepper output{min-width:30px;display:grid;place-items:center;background:#f3f3f0;color:var(--ink)}.arrangement-actions{padding:10px;display:flex;gap:5px}.lyrics-header{align-items:center}.lyrics-toolbar{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.lyrics-toolbar>label{display:flex;align-items:center;gap:6px;font-size:9px;text-transform:uppercase;font-weight:900;color:var(--muted)}.lyrics-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px}.lyrics-sections{border:2px solid var(--ink);border-radius:8px;background:#fff;padding:10px;align-self:start;position:sticky;top:145px;box-shadow:4px 4px #c7cfdd}.lyrics-sections .panel-eyebrow{padding:5px 7px 10px}.lyrics-sections button{width:100%;justify-content:space-between;border-left:7px solid var(--section);margin-bottom:5px;text-align:left}.lyrics-sections button small{display:block;font-size:8px;color:var(--muted)}.lyrics-sections button.is-active{background:var(--blue);color:#fff}.lyric-repeat-control{display:flex;align-items:center;gap:7px;margin-left:auto;font-size:9px;font-weight:900;text-transform:uppercase;color:var(--muted)}.lyrics-sections button.is-active small{color:#fff;opacity:.78}.lyric-page{border:2px solid var(--ink);border-radius:8px;background:#fff;box-shadow:5px 5px 0 var(--ink);overflow:hidden}.lyric-page-header{min-height:82px;padding:13px 16px;border-bottom:2px solid var(--ink);border-left:12px solid var(--section);display:flex;align-items:center;justify-content:space-between;gap:12px;background:color-mix(in srgb,var(--section),white 82%)}.lyric-page-header span{display:block;font-size:9px;text-transform:uppercase;font-weight:900;color:var(--muted)}.lyric-page-header input{font-size:22px;font-weight:900;border:0;border-bottom:2px solid transparent;background:transparent}.section-recording{display:flex;align-items:center;gap:8px}.section-recording button.is-recording,.line-actions button.is-recording{background:var(--red);color:#fff}.count-display{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);border:2px solid var(--ink);font-size:20px}.record-display{color:var(--red);display:flex;align-items:center;gap:5px;font-size:12px}.record-display i{width:9px;height:9px;border-radius:50%;background:var(--red)}.section-takes{padding:12px 16px;border-bottom:1.5px solid var(--line);display:grid;grid-template-columns:92px minmax(0,1fr);align-items:start;gap:12px;background:#fafbfe}.take-label{padding-top:9px;font-size:9px;font-weight:900;text-transform:uppercase;color:var(--muted)}.take-stack{width:100%;display:flex;flex-direction:column;gap:6px}.take-stack-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.take-stack-heading span{font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}.take-stack-heading small{font-size:8px;font-weight:800;color:var(--muted)}.take-lane{min-width:0;display:grid;grid-template-columns:34px minmax(130px,1fr) 116px auto 31px;align-items:center;gap:7px;min-height:54px;padding:6px;border:1.5px solid #b9c1cf;border-radius:6px;background:#f5f6f8}.take-lane.is-selected{border-color:var(--blue);background:#edf3ff;box-shadow:inset 4px 0 0 var(--blue)}.take-lane.is-playing{border-color:var(--pink);background:color-mix(in srgb,var(--pink),white 91%)}.take-lane button{min-height:31px}.take-play{width:31px;padding:0;display:grid;place-items:center;border-color:var(--ink);background:#fff}.take-lane.is-playing .take-play{background:var(--pink);color:var(--ink)}.take-waveform-button{min-width:0;padding:0!important;border:0!important;background:transparent!important}.take-waveform{position:relative;width:100%;height:40px;overflow:hidden;border:1px solid #c3c9d3;border-radius:4px;background:#fff}.take-waveform svg{display:block;width:100%;height:100%}.take-waveform rect{fill:#9ba7b7}.take-lane.is-selected .take-waveform rect{fill:color-mix(in srgb,var(--blue),white 30%)}.take-waveform rect.is-played{fill:var(--pink)}.take-waveform i{position:absolute;top:0;bottom:0;width:2px;background:var(--ink);transform:translate(-1px);opacity:0}.take-lane.is-playing .take-waveform i{opacity:1}.take-info{min-width:0;display:flex;flex-direction:column;gap:2px}.take-info strong{font-size:10px}.take-info small{overflow:hidden;color:var(--muted);font-size:8px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.take-select{min-width:78px;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px 8px;font-size:9px}.take-select.is-selected{border-color:var(--blue);background:var(--blue);color:#fff}.take-delete{width:31px;padding:0;display:grid;place-items:center;color:var(--red);background:#fff}.no-takes{font-size:10px;color:#aaa;font-style:italic}.lyric-lines{padding:8px 16px}.lyric-line-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;padding:18px 0;border-bottom:1.5px solid var(--line)}.lyric-line-card.is-recording{background:#fff3f4}.line-number{font-size:20px;font-weight:900;color:#bbb;padding-top:63px}.line-chord-span{min-height:32px;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:3px}.line-chord-span>span{color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.line-chord-span .segmented{padding:2px}.line-chord-span .segmented button{min-width:28px;min-height:23px;padding:2px 7px;font-size:9px}.line-chords{min-height:42px;display:flex;gap:14px;align-items:center}.line-chords span{color:var(--blue);font-weight:900;font-family:var(--font-sheet);font-size:19px}.line-chords span.is-current{background:var(--yellow);color:var(--ink);padding:1px 5px}.lyric-chord-track{position:relative;height:46px;border-bottom:1px dashed #c9cfda;touch-action:none}.lyric-chord-track button{position:absolute;top:2px;min-height:39px;padding:6px 11px;transform:translate(-50%);border:2px solid var(--ink);border-radius:6px;background:#edf2ff;color:var(--blue);font-family:var(--font-sheet);font-size:18px;font-weight:900;white-space:nowrap;cursor:grab;touch-action:none}.lyric-chord-track button.is-current{background:var(--yellow);color:var(--ink)}.lyric-chord-track button.is-dragging{opacity:.16;cursor:grabbing}.lyric-chord-track button.is-drag-preview{z-index:8;opacity:1;pointer-events:none;cursor:grabbing;box-shadow:0 5px #2f68ff2b;transition:none;will-change:left}.lyric-chord-track button.is-drag-preview:after{content:"";position:absolute;top:calc(100% + 2px);left:50%;width:2px;height:17px;background:var(--blue);transform:translate(-1px)}.line-content textarea{width:100%;resize:vertical;border:0;border-bottom:2px solid var(--line);font-family:var(--font-sheet);font-size:22px;line-height:1.4;padding:7px 2px}.line-content .take-stack,.line-content .no-takes{margin-top:9px}.line-actions{display:flex;flex-direction:column;gap:5px;justify-content:center}.add-line{margin:8px 16px 18px;border-style:dashed!important;width:calc(100% - 32px)}.live-hero{width:100%;padding:22px;border:2px solid var(--ink);border-radius:8px;background:var(--yellow);display:flex;justify-content:space-between;align-items:end;box-shadow:5px 5px 0 var(--ink);margin-bottom:18px}.live-hero h2{margin-top:4px;font-size:clamp(30px,5vw,54px);line-height:.95;letter-spacing:-.06em}.live-title-block{flex:1;min-width:260px}.live-hero-controls{max-width:min(680px,58%);display:grid;justify-items:end;gap:11px}.live-hero-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.player-guide-picker{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.player-guide-picker>span{font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.instrument-guide-selector{display:flex;flex-wrap:wrap;gap:4px}.instrument-guide-selector button{min-height:28px;padding:4px 8px;display:inline-flex;align-items:center;gap:3px;border-width:1.5px;font-size:8px}.instrument-guide-selector button.is-active{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:inset 0 -3px #0000002e}.song-credits{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap}.song-credits label{display:grid;gap:2px;min-width:180px}.song-credits span{font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.song-credits input{border:0;border-bottom:1.5px solid color-mix(in srgb,var(--ink),transparent 35%);background:transparent;padding:3px 0;font-size:12px;font-weight:800}.live-form-strip{display:flex;gap:4px;border:2px solid var(--ink);border-radius:8px;background:#fff;padding:8px;margin-bottom:18px;overflow-x:auto}.live-form-strip button{min-width:92px;flex-basis:0;flex-direction:column;position:relative;overflow:hidden;border-left:8px solid var(--section)}.live-form-strip button.is-current{background:var(--section);color:#fff}.live-form-strip small{font-size:8px}.live-form-strip i{position:absolute;left:0;bottom:0;height:4px;background:var(--yellow)}.sheet-page{width:100%;max-width:none;margin:0;display:flex;flex-direction:column;gap:16px}.sheet-section{border:2px solid var(--ink);border-left:11px solid var(--section);border-radius:7px;background:#fffefa;font-family:var(--font-sheet);overflow:hidden;box-shadow:3px 3px #c4c2bb}.sheet-section.is-current{box-shadow:5px 5px 0 var(--section)}.sheet-section>header{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1.5px solid var(--line)}.sheet-section>header>div{display:flex;align-items:center;gap:9px}.sheet-section h3{font-family:var(--font-ui);font-size:18px}.section-tag{font-family:var(--font-ui);font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:var(--muted)}.repeat-badge,.take-count{font-family:var(--font-ui);font-size:9px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--ink);border-radius:999px;padding:3px 7px}.sheet-chord-bars{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1.5px solid var(--line)}.sheet-chord-bars>div{min-height:62px;padding:9px;display:grid;grid-template-columns:16px 1fr;gap:4px;border-right:1px solid var(--line)}.sheet-chord-bars>div:nth-child(4n){border-right:0}.sheet-chord-bars>div.is-current{background:#fff9d5}.sheet-chord-bars small{font-family:var(--font-ui);font-size:8px;color:#aaa}.sheet-chord-bars span{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.sheet-chord-bars strong{font-size:19px}.sheet-chord-bars strong.is-current{background:var(--yellow);padding:3px 7px;border:1.5px solid var(--ink);border-radius:4px}.sheet-lyrics{padding:13px 40px 18px}.sheet-lyrics p{min-height:30px;padding:4px 7px;font-size:19px;line-height:1.4;border-left:4px solid transparent}.sheet-lyrics p.is-current{border-left-color:var(--section);background:#f5f3ed}.sheet-lyrics em{color:#aaa}.live-lyric-lines{padding:8px 20px 18px}.live-lyric-line{position:relative;padding:10px 12px;border-bottom:1.5px solid var(--line);overflow:hidden}.live-lyric-line:last-child{border-bottom:0}.live-lyric-line.is-current{background:#f1f4fb;box-shadow:inset 5px 0 0 var(--section)}.live-lyric-playhead{position:absolute;z-index:1;top:5px;bottom:5px;width:2px;transform:translate(-1px);background:var(--blue);box-shadow:0 0 0 1px #ffffffbf;pointer-events:none}.live-chord-track{position:relative;z-index:2;height:31px}.live-chord-track strong{position:absolute;z-index:2;top:2px;transform:translate(-50%);color:var(--blue);font-size:17px;line-height:1;white-space:nowrap}.live-chord-track strong.is-current{padding:3px 6px;border:1.5px solid var(--ink);border-radius:4px;background:var(--yellow);color:var(--ink)}.live-lyric-line p{position:relative;z-index:2;min-height:28px;font-size:19px;line-height:1.45}.live-lyric-line em{color:#aaa}.lead-sheet-staff{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));overflow-x:auto;border-top:1.5px solid var(--line)}.lead-sheet-measure{position:relative;display:grid;grid-template-columns:repeat(4,minmax(38px,1fr));grid-template-rows:58px 54px;min-height:112px;border-right:2px solid color-mix(in srgb,var(--ink) 35%,var(--line))}.lead-sheet-measure:last-child{border-right:0}.lead-sheet-measure>small{position:absolute;top:5px;left:7px;z-index:3;color:#9aa0aa;font-family:var(--font-ui);font-size:8px}.lead-sheet-measure>strong{position:absolute;z-index:4;top:27px;transform:translate(8px);font-size:clamp(18px,2.2vw,28px);line-height:1}.lead-sheet-measure>strong.is-current{padding:3px 6px;border:1.5px solid var(--ink);border-radius:4px;background:var(--yellow)}.lead-sheet-measure>span{z-index:2;grid-row:2;align-self:start;justify-self:center;padding-top:12px;color:#b9bdc5;font-size:25px;font-weight:900}.lead-beat-highlight{z-index:1;grid-row:1 / span 2;margin:4px 2px;border:2px solid var(--yellow);border-radius:5px;background:color-mix(in srgb,var(--yellow),transparent 72%)}.lead-measure-playhead{position:absolute;z-index:3;top:0;bottom:0;width:3px;transform:translate(-1px);background:var(--blue);box-shadow:0 0 0 1px #fff,0 0 8px #2f68ff4d;pointer-events:none}.lead-sheet-staff.is-compact{border-bottom:1.5px solid var(--line);background:#f8f9fc}.lead-sheet-staff.is-compact .lead-sheet-measure{grid-template-rows:45px 38px;min-height:83px}.lead-sheet-staff.is-compact .lead-sheet-measure>strong{top:20px;font-size:clamp(15px,1.7vw,21px)}.lead-sheet-staff.is-compact .lead-sheet-measure>span{padding-top:5px;font-size:21px}.section-learning-tools{padding:12px;display:grid;gap:10px;border-top:1.5px solid var(--ink);background:#f4f6fa;font-family:var(--font-ui)}.instrument-guide{overflow:hidden;border:1.5px solid var(--ink);border-radius:6px;background:#fff}.instrument-guide>header{min-height:32px;padding:6px 9px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);background:#eef2f8}.instrument-guide>header strong{font-size:9px;letter-spacing:.08em;text-transform:uppercase}.instrument-guide>header small{color:var(--muted);font-size:8px;font-weight:800}.chord-guide-grid{padding:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:7px}.guide-bass .chord-guide-grid,.guide-piano .chord-guide-grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr))}.chord-guide-card{min-width:0;min-height:126px;padding:6px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:3px;border:1px solid #c5cbd5;border-radius:5px;background:#fffefa}.chord-guide-card.is-current{border-color:var(--ink);background:color-mix(in srgb,var(--yellow),white 28%);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue),transparent 68%)}.chord-guide-card>strong{align-self:stretch;min-height:24px;padding-bottom:3px;border-bottom:1px solid var(--line);text-align:center;font-family:var(--font-sheet);font-size:17px}.guide-bass .chord-guide-card,.guide-piano .chord-guide-card{min-height:112px}.string-chord-diagram{width:100px;height:104px}.bass-root-diagram{width:min(100%,220px);height:82px}.piano-chord-diagram{width:min(100%,205px);height:84px}.diagram-string,.diagram-fret,.diagram-nut{stroke:var(--ink);vector-effect:non-scaling-stroke}.diagram-string{stroke-width:1}.diagram-fret{stroke-width:.8}.diagram-nut{stroke-width:3}.diagram-dot{fill:var(--yellow);stroke:var(--ink);stroke-width:1.5;vector-effect:non-scaling-stroke}.diagram-dot.is-root{fill:var(--blue)}.diagram-open{fill:#fff;stroke:var(--ink);stroke-width:1.5;vector-effect:non-scaling-stroke}.diagram-open.is-root{fill:var(--blue)}.diagram-mute,.diagram-string-name,.diagram-fret-number{fill:var(--muted);font-family:var(--font-ui);text-anchor:middle}.diagram-mute{font-size:9px;font-weight:900}.diagram-string-name{font-size:7px;font-weight:900}.diagram-fret-number{font-size:6px}.bass-root-label{fill:#fff;font-family:var(--font-ui);font-size:7px;font-weight:900;text-anchor:middle}.piano-white{fill:#fff;stroke:var(--ink);stroke-width:1;vector-effect:non-scaling-stroke}.piano-black{fill:var(--ink);stroke:var(--ink);stroke-width:1;vector-effect:non-scaling-stroke}.piano-white.is-active{fill:var(--yellow)}.piano-black.is-active{fill:var(--pink)}.piano-white.is-root,.piano-black.is-root{fill:var(--blue)}.drum-notation-bars{padding:8px;display:grid;grid-template-columns:minmax(280px,1fr);gap:8px}.drum-notation-bar{min-width:0;padding:6px;border:1px solid #c5cbd5;border-radius:5px;background:#fffefa}.drum-notation-bar>strong{display:block;margin-bottom:4px;font-size:8px;text-transform:uppercase}.drum-notation-grid{position:relative;display:grid;grid-template-columns:28px repeat(16,minmax(7px,1fr));align-items:center}.drum-notation-grid>small{min-height:11px;color:#8c929c;font-size:6px;text-align:center}.drum-notation-row{display:contents}.drum-notation-row>span{min-height:15px;display:grid;place-items:center start;border-top:1px solid #d5d9df;color:var(--muted);font-size:7px;font-weight:900}.drum-notation-row>i{min-height:15px;display:grid;place-items:center;border-top:1px solid #d5d9df;border-left:1px solid #e6e8ec;background:transparent}.drum-notation-row>i:nth-child(4n+2){border-left-color:#9299a5}.drum-notation-row>i.has-hit:after{content:"";width:70%;aspect-ratio:1;max-width:8px;border:1px solid var(--ink);border-radius:2px;background:color-mix(in srgb,var(--voice) calc(var(--hit-strength) * 100%),white)}.drum-notation-row>i.is-current{background:color-mix(in srgb,var(--yellow),white 35%)}.drum-guide-playhead{position:absolute;z-index:3;top:11px;bottom:0;width:2px;transform:translate(-1px);background:var(--blue);box-shadow:0 0 0 1px #ffffffb3;pointer-events:none}.print-title,.print-form-summary{display:none}.export-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.export-card{border:2px solid var(--ink);border-radius:8px;background:#fff;min-height:280px;padding:22px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:4px 4px 0 var(--ink)}.export-card.featured{grid-column:1 / -1;min-height:230px;background:color-mix(in srgb,var(--yellow),white 54%)}.export-icon{width:48px;height:48px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;margin-bottom:18px}.export-card h3{font-size:22px;margin:6px 0 8px}.export-card p{color:var(--muted);line-height:1.5;font-size:13px;max-width:720px}.export-card button{margin-top:auto}.export-card small{margin-top:9px;color:var(--muted);font-size:9px}.export-guide-options{width:100%;max-width:760px;margin:17px 0;padding:12px;display:grid;gap:6px;border:1.5px solid var(--ink);border-radius:6px;background:#fff}.export-guide-options>strong{font-size:10px;text-transform:uppercase}.export-guide-options>span{color:var(--muted);font-size:9px}.floating-mixer{position:fixed;z-index:120;min-width:680px;min-height:390px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);border:2px solid var(--ink);border-radius:8px;background:var(--paper);box-shadow:10px 10px #33333340;resize:both;overflow:auto}.floating-mixer>header{height:46px;padding:0 12px;border-bottom:2px solid var(--ink);display:flex;justify-content:space-between;align-items:center;cursor:move;background:#eef2f7;box-shadow:inset 7px 0 0 var(--blue)}.floating-mixer>header>div{display:flex;align-items:center;gap:8px}.floating-mixer>header span{font-size:9px;color:#666}.floating-mixer>header button{width:30px;height:30px;border:2px solid var(--ink);border-radius:5px;background:#fff;padding:0}.mixer-channels{height:calc(100% - 46px);display:flex;justify-content:center;gap:8px;padding:12px}.mixer-strip{width:118px;min-height:320px;border:2px solid var(--ink);border-top:9px solid var(--track);border-radius:6px;background:#fff;display:flex;flex-direction:column;align-items:center;padding:7px}.fx-toggle{width:100%;min-height:29px!important;padding:3px!important;font-size:9px!important}.fx-toggle.is-open{background:color-mix(in srgb,var(--track),white 68%)!important}.fx-drawer{height:0;width:100%;overflow:hidden;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;align-items:start}.fx-drawer.is-open{height:82px;padding-top:8px;border-bottom:1px solid var(--line)}.knob-control{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:7px;text-transform:uppercase;font-weight:900}.knob-face{position:relative;width:30px;height:30px;border:2px solid var(--ink);border-radius:50%;background:conic-gradient(from 225deg,var(--track) 0 var(--knob-fill),#ddd var(--knob-fill) 75%,transparent 75%)}.knob-face input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;cursor:ns-resize}.knob-pointer{position:absolute;left:50%;top:4px;width:2px;height:9px;background:var(--ink);transform-origin:50% 11px;transform:translate(-50%) rotate(var(--knob-angle))}.knob-control output{font-size:7px;color:var(--muted)}.fader-wrap{flex:1;min-height:120px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.fader-wrap output{font-size:9px;font-weight:900}.vertical-fader{writing-mode:vertical-lr;direction:rtl;-webkit-appearance:slider-vertical;-moz-appearance:slider-vertical;appearance:slider-vertical;width:30px;height:130px;accent-color:var(--track, var(--ink))}.mute-solo{display:flex;gap:4px}.mute-solo button{width:32px;min-height:27px!important;padding:2px!important;font-size:9px!important}.mute-solo .is-muted{background:var(--red)!important;color:#fff}.mute-solo .is-solo{background:var(--yellow)!important}.mixer-strip>strong{margin-top:7px;text-transform:uppercase;font-size:10px}.master-gap{width:24px;border-left:2px solid #bbb}.master-strip{--track: var(--ink)}.master-badge{font-size:8px;font-weight:900;background:var(--ink);color:#fff;padding:4px 7px;border-radius:3px}.master-space{height:90px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:20px;background:#181818a8}.modal-card{width:min(460px,100%);border:2px solid var(--ink);border-radius:8px;background:#fff;box-shadow:8px 8px 0 var(--ink);overflow:hidden}.modal-card>header{min-height:54px;padding:10px 14px;background:var(--yellow);border-bottom:2px solid var(--ink);display:flex;justify-content:space-between;align-items:center}.modal-card.tone-danger>header{background:var(--red);color:#fff}.modal-content{padding:22px;line-height:1.55}.modal-card>footer{padding:12px 14px;border-top:1.5px solid var(--line);display:flex;justify-content:flex-end;gap:7px}.toast-message{position:fixed;z-index:300;left:50%;bottom:24px;transform:translate(-50%);min-width:280px;max-width:520px;min-height:44px;display:flex;align-items:center;gap:9px;padding:9px 12px;border:2px solid var(--ink);border-radius:6px;background:#fff;box-shadow:5px 5px 0 var(--ink);font-size:12px;font-weight:800}.toast-message.tone-success{background:#dff7e9}.toast-message.tone-error{background:#ffe1e4}.toast-message button{margin-left:auto;border:0;background:transparent}@media (max-width: 1050px){.brand-lockup,.save-state,.header-controls .icon-button,.transport-hint{display:none}.transport-strip{grid-template-columns:auto auto minmax(100px,1fr)}.workspace-header{align-items:flex-start;flex-direction:column}.workspace-actions{width:100%;justify-content:space-between}.arrangement-card{grid-template-columns:30px 40px 1fr}.arrangement-actions{grid-column:2 / -1;border-top:1px solid var(--line)}.lyrics-layout{grid-template-columns:1fr}.lyrics-sections{position:static;display:flex;overflow-x:auto}.lyrics-sections .panel-eyebrow{display:none}.lyrics-sections button{min-width:170px}}@media (max-width: 760px){.library-hero{min-height:420px;padding:38px 22px;flex-direction:column;align-items:stretch;justify-content:flex-end}.library-actions{flex-direction:row}.library-actions>*{flex:1}.sound-library-status.is-compact{display:none}.studio-header{height:auto;min-height:64px;padding:8px 10px}.brand-group{flex:1}.song-title-field{margin-left:0;min-width:0;flex:1}.song-title-field span{display:none}.song-title-field input{width:100%}.header-controls .header-select,.header-controls .tempo-control,.header-controls>button:not(.save-button){display:none}.studio-body{display:block;min-height:calc(100vh - 64px)}.mode-rail{display:none}.transport-strip{top:64px;padding:6px 10px;grid-template-columns:auto 1fr}.transport-meter{grid-column:1 / -1}.transport-position{min-width:0}.workspace{padding:20px 12px 90px}.mobile-nav{position:fixed;z-index:80;left:0;right:0;bottom:0;height:64px;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:2px solid var(--ink);padding:5px;gap:3px}.mobile-nav button{border:0;border-radius:6px;background:transparent;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:8px;font-weight:900}.mobile-nav button.is-active{color:#fff;background:var(--blue)}.workspace-actions,.lyrics-toolbar{flex-direction:column;align-items:stretch}.midi-control,.performance-control{overflow-x:auto}.instrument-line{align-items:flex-start;flex-wrap:wrap}.control-kicker{width:100%}.instrument-line-primary .track-play{margin-left:0}.instrument-line-primary .select-control{order:3}.instrument-line-primary .segmented{flex:1}.preset-content{flex-direction:column;align-items:stretch}.bar-choice{margin-left:0}.palette-heading,.pad-toolbar{align-items:flex-start;flex-direction:column}.palette-actions,.pad-record-controls{width:100%;justify-content:flex-start}.chord-depth-control{grid-template-columns:1fr}.drum-pads{grid-template-columns:repeat(2,1fr)}.bass-performance-keys{grid-template-columns:1fr;overflow-x:auto}.bass-record-controls{justify-content:flex-start}.bass-degree-row{min-width:480px}.form-track{min-width:700px}.form-map-card{overflow-x:auto}.arrangement-card{grid-template-columns:30px 34px minmax(0,1fr)}.arrangement-controls{flex-direction:column;gap:6px}.arrangement-actions{flex-wrap:wrap}.lyric-page-header{align-items:flex-start;flex-direction:column}.section-takes{grid-template-columns:1fr}.section-takes>.take-label{display:none}.lyric-line-card{grid-template-columns:30px 1fr}.line-actions{grid-column:2;flex-direction:row;justify-content:flex-start}.take-lane{grid-template-columns:32px minmax(0,1fr) 31px;align-items:center}.take-play{grid-column:1;grid-row:1}.take-waveform-button{grid-column:2;grid-row:1}.take-info{grid-column:2;grid-row:2}.take-select{grid-column:2;grid-row:3;justify-self:start}.take-delete{grid-column:3;grid-row:1}.live-hero{align-items:flex-start;flex-direction:column;gap:18px}.live-hero-controls{max-width:none;width:100%;justify-items:start}.live-hero-actions{justify-content:flex-start;width:100%}.player-guide-picker{justify-content:flex-start}.song-credits{flex-direction:column}.song-credits label{width:100%}.lead-sheet-staff{grid-template-columns:repeat(4,minmax(150px,1fr))}.drum-notation-bars{grid-template-columns:1fr}.sheet-chord-bars{grid-template-columns:repeat(2,1fr)}.sheet-chord-bars>div:nth-child(2n){border-right:0}.sheet-lyrics{padding:10px 15px 15px}.export-grid{grid-template-columns:1fr}.export-card.featured{grid-column:auto}.floating-mixer{left:8px!important;top:72px!important;min-width:0;width:calc(100vw - 16px)!important;height:calc(100vh - 90px)!important}.mixer-channels{justify-content:flex-start;overflow-x:auto}.master-gap{min-width:18px}}@media print{@page{size:letter portrait;margin:.3in .34in .32in}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}html,body,#root{width:100%;min-height:0;background:#fff}body{font-size:9pt}.print-hide,.floating-mixer,.toast-message,.modal-backdrop,.lead-measure-playhead,.live-lyric-playhead,.drum-guide-playhead{display:none!important}.studio-body,.studio-main{display:block}.workspace{max-width:none;padding:0}.print-title{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;margin-bottom:5px;padding:7px 9px 6px;border:1.5px solid #000;border-bottom-width:4px;background:#eef2ff}.print-title-main{min-width:0}.print-title-main>span{display:block;margin-bottom:1px;color:var(--blue);font-family:var(--font-ui);font-size:6.5pt;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.print-title h1{overflow:hidden;font-family:var(--font-sheet);font-size:22pt;line-height:.95;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}.print-title p{margin-top:3px;font-family:var(--font-ui);font-size:7.5pt;font-weight:700}.print-metadata{display:grid;grid-template-columns:repeat(3,auto);gap:14px;margin:0}.print-metadata>div{min-width:50px}.print-metadata dt{color:#555;font-family:var(--font-ui);font-size:5.5pt;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.print-metadata dd{margin:1px 0 0;font-family:var(--font-sheet);font-size:10pt;font-weight:900}.print-form-summary{display:grid;grid-template-columns:54px 1fr;align-items:baseline;gap:8px;margin-bottom:7px;padding:3px 7px;border:1px solid #000;font-family:var(--font-ui)}.print-form-summary span{color:var(--blue);font-size:6pt;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.print-form-summary strong{font-size:7.5pt;line-height:1.15;overflow-wrap:anywhere}.sheet-page{max-width:none;gap:6px}.sheet-section{break-inside:avoid-page;border-width:1px;border-left-width:5px;border-radius:2px;box-shadow:none;border-color:#000;overflow:visible}.sheet-section>header{min-height:24px;padding:3px 7px;border-bottom-width:1px;-moz-column-break-after:avoid;break-after:avoid}.sheet-section>header>div{gap:5px}.sheet-section h3{font-size:10.5pt;line-height:1}.section-tag{font-size:5.5pt}.repeat-badge{padding:1px 4px;border-width:.75px;font-size:6pt}.sheet-section>header button,.take-count{display:none}.live-hero,.live-form-strip{display:none}.lead-sheet-staff{grid-template-columns:repeat(4,1fr);overflow:visible}.lead-sheet-measure{min-width:0;min-height:42px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:23px 19px;border-right-width:1px}.lead-sheet-measure>small{top:2px;left:3px;font-size:5pt}.lead-sheet-measure>strong{top:9px;transform:translate(4px);font-size:10pt}.lead-sheet-measure>span{padding-top:0;font-size:10pt;line-height:1}.lead-sheet-staff.is-compact .lead-sheet-measure{min-height:38px;grid-template-rows:21px 17px}.lead-sheet-staff.is-compact .lead-sheet-measure>strong{top:8px;font-size:9.5pt}.lead-sheet-staff.is-compact .lead-sheet-measure>span{padding-top:0;font-size:9pt}.live-lyric-lines{padding:2px 7px 4px}.live-lyric-line{padding:2px 4px 3px;border-bottom-width:.5px;-moz-column-break-inside:avoid;break-inside:avoid}.live-lyric-line.is-empty+.live-lyric-line.is-empty{display:none}.live-chord-track{height:14px}.live-chord-track strong{top:0;color:#000;font-size:10pt}.live-lyric-line p{min-height:13px;font-size:10pt;line-height:1.15}.section-learning-tools{grid-template-columns:repeat(2,minmax(0,1fr));padding:3px;gap:3px;border-top-width:1px;background:#fff}.instrument-guide{-moz-column-break-inside:avoid;break-inside:avoid}.instrument-guide.guide-drums{grid-column:1 / -1}.instrument-guide>header{min-height:14px;padding:1px 4px}.instrument-guide>header strong{font-size:6pt}.instrument-guide>header small{font-size:5.5pt}.chord-guide-grid,.guide-bass .chord-guide-grid,.guide-piano .chord-guide-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:2px;gap:2px}.chord-guide-card,.guide-bass .chord-guide-card,.guide-piano .chord-guide-card{min-height:52px;padding:1px;gap:0;border-radius:2px}.chord-guide-card>strong{min-height:10px;padding:0;font-size:7.5pt;line-height:1}.string-chord-diagram{width:47px;height:49px}.bass-root-diagram{width:min(100%,61px);height:34px}.piano-chord-diagram{width:min(100%,61px);height:35px}.drum-notation-bars{grid-template-columns:minmax(0,1fr);padding:2px;gap:2px}.drum-notation-bar{padding:2px;border-radius:2px}.drum-notation-bar>strong{margin-bottom:2px;font-size:5.5pt}.drum-notation-grid{grid-template-columns:21px repeat(16,minmax(0,1fr))}.drum-notation-grid>small{min-height:7px;font-size:4.5pt}.drum-notation-row>span,.drum-notation-row>i{min-height:10px}.drum-notation-row>span{font-size:5pt}.drum-notation-row>i.has-hit:after{max-width:5px}}
