:root{--white-key-width:30px;--black-key-width:18px;--white-key-height:180px;--black-key-height:110px;--keyboard-height:var(--white-key-height);--knob-size-min:58px;--knob-size-max:72px;--knob-dial-min-size:36px;--knob-dial-max-size:48px;--header-btn-min-size:72px;--header-btn-max-size:92px;--z-app-header:100;--z-modal:110;--z-library:80;--z-library-upload:90;--z-login:130;--z-audio-activation:140}html{box-sizing:border-box;overflow-x:hidden}*,:before,:after{box-sizing:inherit}body{text-align:center;color:#e8e8e8;--page-inset:16px;padding:var(--page-inset);background:#171717;margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;overflow-x:hidden}.container{width:100%;max-width:100%;margin:0 auto}.header-menu-button{min-width:var(--header-btn-min-size);width:clamp(var(--header-btn-min-size), 20vw, var(--header-btn-max-size));height:clamp(var(--header-btn-min-size), 20vw, var(--header-btn-max-size));color:#baffd9;background:linear-gradient(145deg,#315f4b,#263d33);border-color:#75d3aa8c;padding:18px;box-shadow:inset 0 0 0 1px #baffd914,0 8px 24px #0000002e}.header-menu-button:hover{color:#e2ffef;background:linear-gradient(145deg,#397158,#2b493b);border-color:#75d3aa;transform:translateY(-1px)}.header-menu-button.active{color:#e2ffef;background:#2b493b;border-color:#75d3aa;box-shadow:inset 0 0 0 1px #baffd91f}.header-menu-button svg{fill:currentColor;stroke:none;filter:drop-shadow(0 3px 7px #0000003d);width:100%;height:100%;display:block}.header-section{box-sizing:border-box;background:#202020;border:1px solid #2d2d2d;border-radius:4px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:10px 12px;display:flex;position:relative}.header-wordmark{z-index:0;color:#0000007a;letter-spacing:.26em;text-indent:.26em;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;font-family:Avenir Next,Segoe UI Variable Display,Helvetica Neue,sans-serif;font-size:clamp(36px,4.8vw,62px);font-weight:800;font-stretch:75%;line-height:.9;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.header-section>button,.header-section>.controls-row,.header-section>.header-left-actions{z-index:1;position:relative}.header-left-actions{align-items:center;gap:7px;display:flex}.container.menu-active>:not(.header-section):not(.library-menu):not(.login-backdrop){display:none}body:has(.container.menu-active){overflow:hidden}.library-menu .library-menu-brand,.library-menu .library-close{display:none}.library-menu:not(.library-menu-competitive) .library-menu-header{grid-template-columns:minmax(220px,1fr) 118px auto 44px auto}@media (max-width:800px){.library-menu{grid-template-rows:auto minmax(0,1fr);height:auto;top:88px}.library-menu:not(.library-menu-competitive) .library-menu-header{grid-template-rows:44px 44px 44px;grid-template-columns:minmax(0,1fr) auto auto}.library-menu:not(.library-menu-competitive) .library-menu-header>input{grid-area:1/1/auto/-1}.library-menu:not(.library-menu-competitive) .library-menu-header>select{grid-area:2/1}.library-menu:not(.library-menu-competitive) .library-view-switch{grid-area:2/2/auto/4}.library-menu:not(.library-menu-competitive) .library-import{grid-area:3/1}.library-menu:not(.library-menu-competitive) .library-login,.library-menu:not(.library-menu-competitive) .library-account{grid-area:3/2/auto/4}}@media (max-width:920px){.header-wordmark{display:none}}.controls-row{flex-wrap:nowrap;flex:0 auto;justify-content:flex-end;align-items:flex-end;gap:20px;width:auto;min-width:0;display:flex}.library-menu{z-index:var(--z-library);color:#e8e8e8;text-align:left;background:#171717;grid-template-rows:80px minmax(0,1fr);display:grid;position:fixed;inset:0}.library-menu button,.library-menu input,.library-menu select{min-width:0}.library-menu svg:not(.ds-artwork-rift):not(.ds-rift-fallback):not(.ds-glass-edge):not(.catalogue-seam):not(.ds-midi-roll-grid):not(.ds-radar):not(.ds-command-glyph>svg):not(.ds-studio-part-role){fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px;display:block}.library-menu-header{background:#202020;border-bottom:1px solid #2d2d2d;grid-template-columns:155px minmax(220px,1fr) 118px auto 44px auto 44px;align-items:center;gap:9px;padding:14px 22px;display:grid}.library-menu-brand{background:0 0;border-color:#0000;align-items:center;gap:8px;height:48px;padding:4px 8px;display:flex;min-width:0!important}.library-menu-brand:hover{background:#292929;border-color:#75d3aa59}.library-menu-brand img{width:38px;height:38px;display:block}.library-menu-brand strong{color:#e8e8e8;letter-spacing:.12em;font-family:Avenir Next,Segoe UI Variable Display,Helvetica Neue,sans-serif;font-size:18px;font-weight:800}.library-view-switch{border:1px solid #373737;border-radius:8px;gap:4px;padding:4px;display:flex}.library-view-switch button{background:0 0;border:0;width:38px;height:38px;padding:8px}.library-view-switch button[aria-pressed=true]{color:#f4fff9;background:#3d4f48;box-shadow:inset 0 0 0 1px #75d3aa2e}.library-import,.library-close{width:44px;height:44px;padding:7px}.library-login{color:#fff;background:#7a3030;border-color:#984b4b;height:44px;font-weight:800;min-width:82px!important}.library-login:hover{background:#943c3c;border-color:#cb6666}.library-account{align-items:center;gap:7px;height:44px;display:flex;min-width:92px!important}.library-account .user-avatar{flex-basis:26px;width:26px;height:26px}.library-menu-body{grid-template-columns:230px minmax(0,1fr);min-height:0;display:grid}.library-menu-nav{border-right:1px solid #2d2d2d;flex-direction:column;gap:5px;padding:14px;display:flex}.library-menu-nav button{text-align:left;background:0 0;border-color:#0000;align-items:center;gap:10px;width:100%;min-height:44px;display:flex}.library-menu-nav button.active{color:#f4fff9;background:#3d4f48;border-color:#75d3aa47}.library-menu-nav .library-scope{color:#aaa;min-height:36px;padding-left:38px}.library-menu-nav .library-scope.active{color:#e8e8e8;background:#303030}.library-menu-content{min-width:0;padding:38px;overflow:auto}.library-error{color:#ffc4bc;background:#302020;border:1px solid #753e3e;padding:10px}.library-songs{margin:0;padding:0;list-style:none}.library-songs.list{gap:8px;display:grid}.library-songs li article{background:#242424;border:1px solid #2d2d2d;border-radius:8px;gap:8px;min-width:0;min-height:66px;padding:9px;display:flex}.library-song-main{text-align:left;background:0 0;border:0;flex:1;grid-template-columns:44px minmax(160px,1fr) minmax(300px,36%);align-items:center;gap:12px;padding:0;display:grid;min-width:0!important}.library-song-main:hover{background:0 0}.library-song-art,.library-detail-art{color:#8fe0b8;background:#203128;border:1px solid #365044;place-items:center;display:grid}.library-song-art{border-radius:4px;width:44px;height:44px;font-size:20px}.library-song-main strong,.library-song-main small{display:block}.library-song-main strong{font-size:16px;line-height:1.15}.library-song-main small{color:#999;margin-top:3px;font-size:12px}.library-song-meta{color:#bbb;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;margin:0;display:grid}.library-song-meta div{grid-template-rows:auto 1fr;align-content:center;gap:4px;min-width:0;display:grid}.library-song-meta dt{color:#888;text-transform:uppercase;font-size:10px;line-height:1}.library-song-meta dd{white-space:nowrap;margin:0;font:12px Consolas,monospace}.library-songs article>button:not(.library-song-main){align-self:center;width:40px;height:40px;padding:8px}.library-songs.grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.library-songs.grid article{flex-wrap:wrap;min-height:220px;position:relative}.library-songs.grid .library-song-main{flex-basis:100%;grid-template-rows:110px auto auto;grid-template-columns:1fr}.library-songs.grid .library-song-art{width:100%;height:110px}.library-songs.grid .library-song-meta{align-self:end}.library-empty{color:#aaa;text-align:center;padding:30px}.library-detail{max-width:900px;margin:0 auto;padding:20px}.library-detail>button:first-child{margin-bottom:22px}.library-detail-art{border-radius:8px;width:100%;height:220px;font-size:56px}.library-detail h2{margin-bottom:4px;font-size:34px}.library-detail dl{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.library-detail dl div{background:#242424;border:1px solid #2d2d2d;border-radius:8px;padding:12px}.library-detail dt{color:#888;text-transform:uppercase;font-size:10px}.library-detail dd{margin:5px 0 0}.library-detail .library-detail-play{color:#f4fff9;background:#315f4b;border-color:#75d3aa80;justify-content:center;align-items:center;gap:10px;width:100%;min-height:52px;font-weight:800;display:flex}.library-detail .library-detail-play:hover{background:#397158;border-color:#75d3aa}.library-detail .library-detail-play svg{width:22px;height:22px}.library-detail-actions{gap:8px;display:grid}.library-detail-secondary-actions{grid-template-columns:minmax(0,1fr) 42px;align-items:start;gap:8px;display:grid}.library-detail-favorite{color:#ead58b;width:100%;height:42px;min-height:42px}.library-song-art img,.library-detail-art img{object-fit:cover;width:100%;height:100%;display:block}.library-song-art,.library-detail-art{overflow:hidden}.library-icon-action{border-radius:7px;place-items:center;width:38px;height:38px;padding:8px;display:inline-grid;color:#bdbdbd!important;background:#292929!important;border-color:#444!important;min-width:38px!important}.library-icon-action:hover{color:#fff!important;background:#333!important;border-color:#666!important}.library-icon-action svg{width:18px;height:18px}.library-song-management{background:#202a25;border:1px solid #365044;border-radius:8px;margin-top:28px;padding:18px}.library-song-management-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.library-song-management-head h3{margin:0}.library-song-form{gap:8px;margin-top:18px;display:grid}.library-song-form input{width:100%}.library-song-form small{color:#999}.library-song-form>div,.library-song-danger>div{flex-wrap:wrap;gap:8px;display:flex}.library-song-form>div{justify-content:flex-end;margin-top:6px}.library-cover-preview{background:#181818;border:1px solid #444;border-radius:6px;width:160px;height:90px;display:block;overflow:hidden}.library-cover-preview img{object-fit:cover;width:100%;height:100%;display:block}.library-song-danger{border-top:1px solid #633b3b;margin-top:20px;padding-top:18px}.danger-button{color:#ffd4d4;background:#542929;border-color:#7a4141}.song-version-editor,.song-version-form{gap:var(--ds-step);display:grid}.song-version-form fieldset{gap:var(--ds-step);min-width:0;max-height:260px;padding:var(--ds-step);border:1px solid var(--ds-line);border-radius:var(--ds-radius);margin:0;display:grid;overflow:auto}.song-version-form legend{padding:0 var(--ds-step);color:var(--ds-muted)}.song-version-form .ds-check-field{min-width:0;padding:var(--ds-step);border-radius:var(--ds-command-radius)}.song-version-form .ds-check-field:hover:not(:has(:disabled)){background:var(--ds-command-hover)}.song-version-form .ds-check-field span{overflow-wrap:anywhere;min-width:0}.song-version-help,.song-version-current span{color:var(--ds-muted)}.song-version-form .catalogue-song-actions{justify-content:flex-end;display:flex}.song-version-current{gap:var(--ds-step);display:grid}.song-version-current>div{align-items:baseline;gap:var(--ds-step);display:flex}.song-version-current ul{gap:var(--ds-step) calc(var(--ds-step)*2);padding-left:calc(var(--ds-step)*2);flex-wrap:wrap;margin:0;display:flex}.song-version-help{margin:0;font-size:12px}.library-board-wrap{overscroll-behavior:contain;scrollbar-width:auto;scrollbar-color:auto;width:100%;min-width:0;max-width:100%;max-height:min(60dvh,40rem);overflow:auto}.library-board-wrap:focus-visible{outline:2px solid var(--ds-focus);outline-offset:-2px}.library-board-wrap::-webkit-scrollbar{width:8px;height:8px}.library-board-wrap::-webkit-scrollbar-track{background:var(--ds-ground)}.library-board-wrap::-webkit-scrollbar-corner{background:var(--ds-ground)}.library-board-wrap::-webkit-scrollbar-thumb{background:var(--ds-muted);border:2px solid var(--ds-ground);border-radius:8px}.library-board{border-collapse:collapse;background:#202020;width:100%}.library-board th,.library-board td{text-align:left;white-space:nowrap;border-bottom:1px solid #343434;padding:11px 13px}.library-board th{z-index:1;background:var(--ds-ground);color:#999;text-transform:uppercase;font-size:10px;position:sticky;top:0}.library-board td:first-child{color:#8fe0b8;font-weight:800}.library-load-more{margin:16px auto 0;display:block}.copyright-report,.copyright-report-success{text-align:left;background:#29231e;border:1px solid #664c35;border-radius:8px;margin-top:24px;padding:18px}.copyright-report>button{color:#f0c797;background:#382b20;border-color:#715436}.copyright-report form{gap:13px;margin-top:18px;display:grid}.copyright-report form>p{color:#bbb;margin:0}.copyright-report label{color:#ddd;text-transform:none;letter-spacing:normal;gap:6px;font-size:13px;font-weight:650;display:grid}.copyright-report input,.copyright-report select,.copyright-report textarea{box-sizing:border-box;width:100%}.copyright-report textarea{resize:vertical;min-height:92px}.copyright-report .copyright-check{grid-template-columns:20px 1fr;align-items:start;font-weight:400;line-height:1.45}.copyright-report .copyright-check input{width:auto;margin-top:3px}.copyright-report-success strong{overflow-wrap:anywhere;color:#8fe0b8;font-family:Consolas,monospace;display:block}.copyright-report:not(.is-open){background:0 0;border:0;width:fit-content;padding:0}.library-song-management:not(.is-editing){margin-top:18px;padding:10px 12px}.library-song-management:not(.is-editing) .library-song-management-head h3{font-size:14px}.library-detail-secondary-actions .copyright-report{margin:0}.library-detail-secondary-actions .copyright-report:not(.is-open){background:0 0;border:0;width:42px;height:42px;padding:0}.library-detail-secondary-actions .copyright-report.is-open{grid-column:1/-1}.library-report-action{width:42px;height:42px;color:#faa!important;background:#3a2424!important;border-color:#713f3f!important;min-width:42px!important}.library-report-action:hover{color:#ffd1d1!important;background:#522929!important;border-color:#a65454!important}.library-profile-settings{max-width:720px;margin:0 auto}.library-profile-settings>section{background:#202020;border:1px solid #303030;border-radius:8px;margin-top:14px;padding:18px}.library-profile-settings h3{margin:0 0 14px;font-size:15px}.library-profile-card{background:#203128;border:1px solid #365044;border-radius:8px;align-items:center;gap:14px;margin:18px 0;padding:18px;display:flex}.library-profile-avatar{color:#173326;background:#8fe0b8;border-radius:50%;place-items:center;width:52px;height:52px;font-size:22px;font-weight:900;display:grid}.library-profile-card strong,.library-profile-card small{display:block}.library-profile-card small{color:#aaa;margin-top:4px}.library-profile-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.library-profile-view{gap:8px;display:flex}.library-profile-view button[aria-pressed=true]{color:#f4fff9;background:#315f4b;border-color:#75d3aa}.library-profile-status{background:#28332e;border-radius:6px;padding:10px}.library-profile-danger{border-color:#633b3b!important}.library-profile-danger>div{flex-wrap:wrap;gap:8px;display:flex}.user-avatar{color:#173326;background:#8fe0b8;border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;font-weight:900;display:inline-grid;overflow:hidden}.user-avatar img{object-fit:cover;width:100%;height:100%;display:block}.library-profile-avatar{flex-basis:52px;width:52px;height:52px}.library-profile-settings input[type=url]{width:100%;margin-top:6px}.library-upload-overlay{z-index:var(--z-library-upload);text-align:center;background:#0a0a0ae0;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.library-upload-overlay>div{background:#202020;border:1px solid #424242;border-radius:10px;width:min(440px,100%);padding:30px;box-shadow:0 22px 80px #000}.library-upload-overlay button{margin-top:12px}.library-spinner{border:3px solid #3c5148;border-top-color:#8fe0b8;border-radius:50%;width:34px;height:34px;margin:0 auto 18px;animation:.8s linear infinite library-spin}@keyframes library-spin{to{transform:rotate(360deg)}}.login-backdrop{z-index:var(--z-login);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080808db;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.login-panel{text-align:left;background:#202020;border:1px solid #365044;border-radius:12px;width:min(440px,100%);padding:34px;position:relative;box-shadow:0 24px 90px #000000b3}.login-panel h2{margin:4px 0 12px;font-size:30px}.login-panel>p:not(.detail-kicker){color:#b8b8b8;line-height:1.55}.login-close{width:42px;min-width:42px;height:42px;padding:0;font-size:22px;position:absolute;top:12px;right:12px}.login-submit{color:#f4fff9;background:#315f4b;border-color:#75d3aa80;width:100%;min-height:50px;margin-top:12px;font-weight:800}.login-submit:hover{background:#397158;border-color:#75d3aa}.detail-kicker{color:#8fe0b8;letter-spacing:.14em;margin:0;font-size:11px;font-weight:800}@media (max-width:800px){.library-menu{grid-template-rows:auto minmax(0,1fr);height:100dvh}.library-menu-header{grid-template-rows:44px 44px 44px;grid-template-columns:minmax(0,1fr) auto auto auto;padding:8px 10px}.library-menu-brand{grid-area:1/1}.library-import{grid-area:1/2}.library-login,.library-account{grid-area:1/3}.library-close{grid-area:1/4}.library-menu-header>input{grid-area:2/1/auto/-1;height:44px}.library-menu-header>select{grid-area:3/1/auto/2;height:44px}.library-view-switch{grid-area:3/2/auto/5;justify-self:end;height:44px}.library-menu-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.library-menu-nav{border-bottom:1px solid #2d2d2d;border-right:0;flex-direction:row;align-items:center;min-height:58px;padding:7px;overflow-x:auto}.library-menu-nav .library-scope{display:none}.library-menu-nav button{white-space:nowrap;flex:none;width:auto;height:44px;min-height:44px}.library-menu-content{padding:12px}.library-song-meta{display:none}.library-songs.grid{grid-template-columns:1fr}.library-detail{padding:8px}.library-detail dl{grid-template-columns:1fr}}@media (max-width:430px){.library-login,.library-account{padding-inline:8px;min-width:68px!important}.library-menu-nav button{gap:6px;padding-inline:9px}.library-menu-nav button svg{width:19px;height:19px}.library-songs li article{padding:7px}.library-song-main{grid-template-columns:42px minmax(0,1fr)}.library-song-art,.library-songs article>button:not(.library-song-main){width:42px;height:42px}}.admin-shell{box-sizing:border-box;place-items:center;min-height:calc(100vh - 28px);display:grid}.admin-login,.admin-dashboard{box-sizing:border-box;text-align:left;width:min(920px,100%)}.admin-login{background:#202020;border:1px solid #365044;border-radius:12px;max-width:420px;padding:30px;box-shadow:0 22px 80px #00000073}.admin-login h1,.admin-dashboard h1{margin:5px 0 8px}.admin-login>p{color:#aaa}.admin-login form{gap:9px;margin-top:24px;display:grid}.admin-login input,.admin-login button{box-sizing:border-box;min-height:46px}.admin-dashboard{align-self:start;padding:28px 0}.admin-dashboard>header{justify-content:space-between;align-items:center;gap:18px;display:flex}.admin-stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:24px 0;display:grid}.admin-stats-grid article,.admin-panel{background:#202020;border:1px solid #303030;border-radius:9px;padding:18px}.admin-stats-grid span{color:#999;font-size:12px;display:block}.admin-stats-grid strong{color:#8fe0b8;margin-top:8px;font-size:28px;display:block}.admin-panel h2{margin-top:0;font-size:18px}.admin-panel ol{margin:0;padding:0;list-style:none}.admin-panel li{border-top:1px solid #303030;justify-content:space-between;gap:16px;padding:11px 0;display:flex}.admin-panel li span,.admin-panel li small{display:block}.admin-panel li small,.admin-updated{color:#888;margin-top:3px}.admin-panel li b{color:#ead58b}.admin-updated{text-align:right;font-size:11px}.admin-reports{margin-top:12px}.admin-reports h2{justify-content:space-between;display:flex}.admin-reports h2 span{color:#8fe0b8}.admin-reports>article{border-top:1px solid #343434;padding:14px 0}.admin-reports article>header{justify-content:space-between;gap:12px;display:flex}.admin-reports article header small,.admin-reports article>small{color:#999;margin-top:4px;display:block}.admin-reports article header b{color:#e1b36f;text-transform:uppercase;font-size:11px}.admin-reports article>p{color:#ccc}.admin-reports article>div{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.admin-reports article button{min-height:36px;padding:7px 10px}.control-group{flex-direction:column;align-items:flex-start;display:flex}.control-group.hidden{display:none}label{text-transform:uppercase;color:#888;letter-spacing:1px;margin-bottom:6px;font-size:11px;font-weight:700}select,button,input{color:#fff;min-width:140px;transition:background-color var(--ds-fast,.14s), color var(--ds-fast,.14s), border-color var(--ds-fast,.14s), box-shadow var(--ds-fast,.14s);background:#282828;border:1px solid #373737;border-radius:6px;padding:9px 10px;font-size:13px}select,button{cursor:pointer}@media (prefers-reduced-motion:reduce){select,button,input{transition:none}}select:hover,button:hover,input:hover{background:#303030;border-color:#505050}button:focus-visible,select:focus-visible,input:focus-visible,[role=button]:focus-visible,[role=slider]:focus-visible,.knob-surround:focus-visible,.knob-label:focus-visible{outline-offset:2px;outline:2px solid #75d3aad1}button:disabled,button[aria-disabled=true]{opacity:.45;cursor:not-allowed}button:disabled:hover,button[aria-disabled=true]:hover{background:#282828;border-color:#373737;transform:none}.icon-button{min-width:44px;height:38px;padding:0 10px;font-size:13px;font-weight:700;line-height:1}.learning-controls{text-align:left;flex:auto;align-items:stretch;gap:7px;min-width:0;display:flex}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.learning-desktop-controls{align-items:stretch;gap:7px;min-width:0;display:flex}.learning-card{aspect-ratio:1;min-width:var(--header-btn-min-size);width:clamp(var(--header-btn-min-size), 20vw, var(--header-btn-max-size));max-width:var(--header-btn-max-size);color:#f2f2f2;text-align:center;box-sizing:border-box;background:#242424;border:1px solid #3a3a3a;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:0;padding:7px;display:flex;position:relative}.game-selector{min-height:var(--header-btn-min-size);height:clamp(var(--header-btn-min-size), 20vw, var(--header-btn-max-size));color:#f2f2f2;box-sizing:border-box;background:#242424;border:1px solid #3a3a3a;border-radius:8px;align-items:stretch;gap:4px;padding:7px;display:flex}.learning-card:hover,.game-selector:hover{background:#303030;border-color:#505050}.learning-card.active{border-color:#97ffa957;box-shadow:inset 0 0 0 1px #55c36a1f}.learning-card[aria-disabled=true]{opacity:.48}.learning-card svg,.transport-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:64px;height:36px;display:block}.learning-card strong{color:#f5f5f5;overflow-wrap:anywhere;width:100%;min-height:22px;font-size:11px;line-height:1.15;display:block}.learning-card span{color:#aaa;overflow-wrap:anywhere;font-size:10px;line-height:1.15}.segment-button{color:#bdbdbd;white-space:nowrap;background:0 0;border:0;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:66px;height:100%;padding:5px 8px;font-size:11px;display:flex}.segment-button:hover{background:#303030}.segment-button.active{color:#f4fff9;background:#3d4f48;box-shadow:inset 0 0 0 1px #75d3aa2e}.segment-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:30px;height:22px;display:block}.segment-button .gem-icon{color:#55c36a}.segment-button .hard-icon{color:#d98282}.segment-button strong{color:#f5f5f5;font-size:11px;line-height:1.1}.segment-button .compact-icon,.learning-menu-button.add-config-card{display:none}.learning-modal-backdrop{z-index:30;box-sizing:border-box;background:#000000b8;justify-content:center;align-items:center;padding:16px;display:none;position:fixed;inset:0}.learning-modal-backdrop.open{display:flex}.learning-modal-panel{box-sizing:border-box;background:#202020;border:1px solid #333;border-radius:8px;width:min(360px,100%);padding:14px;box-shadow:0 24px 80px #00000073}.learning-modal-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.learning-modal-head strong{color:#f5f5f5;font-size:13px}.learning-modal-close{width:40px;min-width:40px;height:40px;padding:0}.learning-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.learning-modal-grid .learning-card,.learning-modal-grid .segment-button{width:100%;min-width:0;max-width:none}.learning-modal-grid .game-selector{width:100%;height:auto;min-height:var(--header-btn-min-size);grid-column:1/-1;justify-content:stretch}.learning-modal-grid .game-selector .segment-button{aspect-ratio:auto;flex:1 1 0;min-height:68px}.settings-modal-backdrop{z-index:var(--z-modal);box-sizing:border-box;background:#000000b8;justify-content:center;align-items:center;padding:16px;display:none;position:fixed;inset:0}.settings-modal-backdrop.open{display:flex}.settings-modal-panel{box-sizing:border-box;text-align:left;background:#202020;border:1px solid #333;border-radius:8px;width:min(420px,100%);max-height:calc(100vh - 32px);padding:14px;overflow:auto;box-shadow:0 24px 80px #00000073}.settings-modal-head{border-bottom:1px solid #303030;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:12px;display:flex}.settings-modal-head strong{color:#f5f5f5;text-transform:uppercase;letter-spacing:.8px;font-size:13px}.settings-modal-close{width:40px;min-width:40px;height:40px;padding:0}.settings-section{border-bottom:1px solid #303030;padding:12px 0}.settings-section:last-child{border-bottom:0;padding-bottom:0}.settings-section-title{color:#dfe5e2;text-transform:uppercase;letter-spacing:.8px;margin:0 0 10px;font-size:12px;line-height:1.2}.settings-speed-head{color:#bfc8c5;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-family:Consolas,monospace;font-size:12px;display:flex}.settings-speed-head span{white-space:nowrap}.settings-speed-slider{accent-color:#75d3aa;width:100%;min-width:0}.theme-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.theme-choice{color:#f2f2f2;text-align:center;background:#242424;border:1px solid #373737;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:100%;min-width:0;min-height:118px;padding:9px;display:flex;position:relative}.theme-choice:hover{background:#303030;border-color:#505050}.theme-choice.active{background:#29352f;border-color:#75d3aa80;box-shadow:inset 0 0 0 1px #75d3aa29}.theme-choice svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:128px;max-width:100%;height:74px;display:block}.theme-choice .theme-sheet-preview{color:#8d8a82;stroke-width:1.25px}.theme-sheet-preview rect{fill:#f4f1e7;stroke:#c9c2ad}.theme-sheet-preview ellipse{fill:#292824;stroke:none}.theme-choice strong{color:#f5f5f5;overflow-wrap:anywhere;font-size:12px;line-height:1.15;display:block}.theme-choice-beta{color:#aaa;letter-spacing:.06em;text-transform:uppercase;background:#343434;border:1px solid #505050;border-radius:999px;padding:3px 6px;font-size:9px;font-weight:700;line-height:1;position:absolute;top:7px;right:7px}.theme-choice-with-notation{cursor:pointer;min-height:158px}.theme-choice-with-notation .notation-choice-buttons{width:100%;margin-top:2px}.notation-choice-buttons{box-sizing:border-box;background:#0000001f;border:1px solid #373737;border-radius:8px;gap:6px;padding:3px;display:inline-flex}.notation-choice-button{color:#c7cfcc;background:0 0;border:0;border-radius:6px;min-width:64px;min-height:32px;padding:0 10px;font-size:12px;font-weight:700}.theme-choice-with-notation .notation-choice-button{flex:1 1 0;min-width:0}.notation-choice-button:hover{background:#ffffff0e}.notation-choice-button.active{color:#f4fff9;background:#3d4f48;box-shadow:inset 0 0 0 1px #75d3aa2e}.knobs-container{--knob-cols:8;grid-template-columns:repeat(var(--knob-cols), minmax(0, 1fr));box-sizing:border-box;background:#202020;border:1px solid #2d2d2d;border-radius:4px;gap:10px;margin-bottom:10px;padding:12px;display:grid}body.knob-dragging{cursor:none;-webkit-user-select:none;user-select:none}body.knob-dragging *{cursor:none!important}.cc-tag{display:none}.cc-tag.active{color:#4caf50;background:#1a2e1a;border-color:#2e7d32}#midi-log{display:none}.transport-panel{box-sizing:border-box;text-align:left;background:#202020;border:1px solid #2d2d2d;border-radius:4px;grid-template-columns:auto minmax(160px,1fr) auto;align-items:center;gap:10px 12px;margin-bottom:0;padding:10px 12px;display:grid}.transport-actions{align-items:center;gap:7px;display:flex}.transport-button{border-radius:8px;justify-content:center;align-items:center;width:40px;min-width:40px;height:38px;padding:0;display:inline-flex}.transport-actions .game-selector{background:#242424;border:1px solid #3a3a3a;gap:7px;height:40px;min-height:40px;padding:0}.transport-actions .game-selector:hover{background:#303030;border-color:#505050}.transport-actions .segment-button{background:0 0;border:0;border-radius:8px;width:40px;min-width:40px;height:38px;padding:0}.transport-actions .segment-button:hover{background:#ffffff0e}.transport-actions .segment-button.active{color:#f4fff9;background:#3d4f48;box-shadow:inset 0 0 0 1px #75d3aa2e}.transport-actions .segment-button svg{width:22px;height:22px}.transport-actions .segment-button strong{display:none}.transport-settings-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:20px;height:20px;display:block}.transport-meta{min-width:0}.transport-title{color:#e5e5e5;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.2;overflow:hidden}.transport-hint{color:#8d9b98;min-height:14px;margin-top:3px;font-size:11px}.transport-time{color:#bfc8c5;white-space:nowrap;justify-self:end;font-family:Consolas,monospace;font-size:12px}.timeline-track{cursor:pointer;background:#151b1a;border:1px solid #313b38;border-radius:999px;outline:none;grid-column:1/-1;height:9px;overflow:hidden}.timeline-track:focus-visible{box-shadow:0 0 0 2px #75d3aa3d}.timeline-track.disabled{cursor:not-allowed;opacity:.42;filter:saturate(.7)}.timeline-progress{border-radius:inherit;opacity:.55;background:linear-gradient(90deg,#57c78f,#7fd7d2);width:0%;height:100%}.song-result-backdrop{z-index:var(--z-modal);box-sizing:border-box;background:#000000c2;justify-content:center;align-items:center;padding:16px;display:none;position:fixed;inset:0}.song-result-backdrop.open{display:flex}.song-result-panel{--result-accent:#72d69d;--result-accent-soft:#72d69d29;--result-border:#476954;--result-ok-bg:#29302d;--result-ok-hover:#303632;box-sizing:border-box;text-align:left;background:#202020;border:1px solid #343434;border-radius:8px;width:min(450px,100%);max-height:calc(100vh - 32px);padding:14px;overflow:auto;box-shadow:0 28px 90px #00000080}.song-result-panel.fail{--result-accent:#d98282;--result-accent-soft:#d9828224;--result-border:#744646;--result-ok-bg:#302828;--result-ok-hover:#382e2e}.song-result-head{border-bottom:1px solid #303030;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:12px;display:grid}.song-result-title-wrap{min-width:0}.song-result-title{color:#f5f5f5;text-transform:uppercase;letter-spacing:.8px;overflow-wrap:anywhere;font-size:13px;line-height:1.2;display:block}.song-result-kicker{color:#8f9895;margin-top:3px;font-size:11px;line-height:1.2;display:block}.song-result-close{width:40px;min-width:40px;height:40px;padding:0}.song-result-subtitle{color:#9aa7a3;margin-top:7px;font-size:12px}.song-result-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.song-result-stat{box-sizing:border-box;background:#181818;border:1px solid #303030;border-radius:6px;min-width:0;padding:8px}.song-result-stat-head{align-items:center;gap:6px;min-width:0;margin-bottom:6px;display:flex}.song-result-stat-icon{width:18px;height:18px;color:var(--stat-color,#9aa7a3);background:#ffffff06;border-radius:5px;flex:0 0 18px;justify-content:center;align-items:center;display:flex}.song-result-stat-icon svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:14px;height:14px;display:block}.song-result-label{color:#8f9895;text-transform:uppercase;letter-spacing:.8px;overflow-wrap:anywhere;min-width:0;font-size:10px;line-height:1.1;display:block}.song-result-stat.perfect{--stat-color:var(--ds-stat-perfect,#60dcff)}.song-result-stat.good{--stat-color:var(--ds-stat-good,#70d89a)}.song-result-stat.accepted{--stat-color:var(--ds-stat-accepted,#e2be56)}.song-result-stat.miss,.song-result-stat.wrong{--stat-color:var(--ds-stat-miss,#d98282)}.song-result-value{color:#f0f0f0;font-family:Consolas,monospace;font-size:16px}.song-result-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.song-result-actions button{justify-content:center;align-items:center;gap:7px;min-width:110px;display:inline-flex}#practiceStage{background:#090909;border-radius:4px;width:100%;margin-top:8px;position:relative}#keyboard-container[data-measured=false]>*{visibility:hidden}.falling-visualizer{background:var(--song-bg,#101211);box-sizing:border-box;border:1px solid #2a2a2a;border-bottom:0;border-radius:4px 4px 0 0;height:clamp(180px,29vh,310px);position:relative;overflow:hidden}.sheet-visualizer{background:#f7f3e8;height:clamp(250px,38vh,390px)}.sheet-render{position:absolute;inset:0;overflow:hidden}.sheet-render svg{will-change:transform;width:100%;height:100%;display:block;overflow:visible;transform:translate(0,0)}.sheet-context{z-index:3;inset-block:0;pointer-events:none;background:#f7f3e8;position:absolute;left:0;overflow:hidden}.sheet-context:empty{display:none}.sheet-context svg{display:block}.sheet-playhead{z-index:4;pointer-events:none;background:#d3483f;width:2px;position:absolute;top:0;bottom:0;transform:translate(-1px)}.sheet-score-hud{color:#f4fff9;background:#181b19c7}.visual-grid{display:none}.note-layer,.feedback-layer,.hit-line-feedback-layer{pointer-events:none;position:absolute;inset:0}.feedback-layer{z-index:1}.note-layer{z-index:2}.hit-line-feedback-layer{z-index:4}.falling-note{z-index:1;box-sizing:border-box;border:1px solid rgba(var(--note-border-rgb), .62);background:rgba(var(--note-rgb), .5);border-radius:3px;position:absolute;box-shadow:inset 0 0 0 1px #ffffff0f}.falling-note.black-note{z-index:2}.falling-note.holding-note{border-color:rgba(var(--note-border-rgb), .82);background:rgba(var(--note-rgb), .36);box-shadow:inset 0 0 0 1px #ffffff1a, 0 0 12px rgba(var(--note-glow-rgb), .2)}.falling-note.missed-note{background:#be3e344d;border-color:#ee70608f;box-shadow:inset 0 0 0 1px #ffffff0d,0 0 10px #ee706021}.falling-note-keyboard-label{color:#1c1e1be6;text-shadow:0 1px 1px #ffffff61;pointer-events:none;justify-content:center;align-items:center;font-size:clamp(10px,1.7vw,16px);font-weight:900;line-height:1;display:flex;position:absolute;inset:0}.falling-note.black-note .falling-note-keyboard-label{color:#fffffff0;text-shadow:0 1px 2px #000000b8}.falling-note-map-badge{color:#f5f7f4;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;background:#080d1299;border-radius:2px;justify-content:center;align-items:center;min-height:12px;padding:0 2px;font-size:8px;font-weight:800;line-height:1;display:flex;position:absolute;inset:2px 1px auto;overflow:hidden}.falling-note-map-badge.spread{letter-spacing:0;font-size:7px}.hit-line{z-index:3;pointer-events:none;background:#d2ebe047;height:3px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -1px 8px #78dcb41f,0 1px #ffffff12}.note-feedback-light{--feedback-rgb:96, 220, 255;width:var(--light-width);height:var(--light-height);transform-origin:50% 100%;transform:translate(-50%, calc(-1 * var(--light-height))) scaleX(.42) scaleY(.16);background:radial-gradient(ellipse at 50% 100%, rgba(var(--feedback-rgb), .86) 0%, rgba(var(--feedback-rgb), .62) 5%, rgba(var(--feedback-rgb), .4) 8%, rgba(var(--feedback-rgb), .1) 13%, rgba(var(--feedback-rgb), 0) 18%), radial-gradient(ellipse at 50% 96%, rgba(var(--feedback-rgb), .8) 0%, rgba(var(--feedback-rgb), .54) 12%, rgba(var(--feedback-rgb), .24) 46%, rgba(var(--feedback-rgb), 0) 76%);filter:blur(3px);opacity:0;animation:noteFeedbackLight var(--light-duration) ease-out forwards;mix-blend-mode:screen;border-radius:999px;position:absolute}.note-feedback-light.perfect{--feedback-rgb:var(--song-judge-perfect,96, 220, 255)}.note-feedback-light.good{--feedback-rgb:var(--song-judge-good,112, 216, 154)}.note-feedback-light.accepted{--feedback-rgb:var(--song-judge-accepted,226, 190, 86)}.note-feedback-light.miss{--feedback-rgb:var(--song-judge-miss,230, 86, 74)}.hit-line-local{--feedback-rgb:96, 220, 255;width:var(--line-width);background:radial-gradient(ellipse at center, rgba(var(--feedback-rgb), .86) 0%, rgba(var(--feedback-rgb), .62) 32%, rgba(var(--feedback-rgb), .22) 68%, rgba(var(--feedback-rgb), 0) 88%);filter:blur(.35px);opacity:0;height:9px;animation:hitLineLocalGlow var(--line-duration) ease-out forwards;mix-blend-mode:screen;border-radius:999px;position:absolute;transform:translate(-50%,-50%)scaleX(.45)}.hit-line-local.perfect{--feedback-rgb:var(--song-judge-perfect,96, 220, 255)}.hit-line-local.good{--feedback-rgb:var(--song-judge-good,112, 216, 154)}.hit-line-local.accepted{--feedback-rgb:var(--song-judge-accepted,226, 190, 86)}.hit-line-local.miss{--feedback-rgb:var(--song-judge-miss,230, 86, 74)}.feedback-effect{display:contents}@keyframes noteFeedbackLight{0%{opacity:0;transform:translate(-50%, calc(-1 * var(--light-height))) scaleX(.42) scaleY(.16)}18%{opacity:1}58%{opacity:.78}to{opacity:0;transform:translate(-50%, calc(-1 * var(--light-height))) scaleX(var(--light-scale,1.1)) scaleY(1)}}@keyframes hitLineLocalGlow{0%{opacity:0;transform:translate(-50%,-50%)scaleX(.45)}14%{opacity:1}62%{opacity:.84}to{opacity:0;transform:translate(-50%,-50%)scaleX(1.35)}}.note-feedback-light.holding{animation:.42s ease-out forwards noteFeedbackHold}.note-feedback-light.returning{animation:.52s ease-in-out forwards noteFeedbackReturn}.hit-line-local.holding{animation:.36s ease-out forwards hitLineHold}.hit-line-local.returning{animation:.52s ease-in-out forwards hitLineReturn}@keyframes noteFeedbackHold{0%{opacity:0;transform:translate(-50%,calc(-1 * var(--light-height))) scaleX(.42) scaleY(.16)}to{opacity:.68;transform:translate(-50%,calc(-1 * var(--light-height))) scaleX(var(--light-scale,1.1)) scaleY(1)}}@keyframes noteFeedbackReturn{0%{opacity:.78;transform:translate(-50%,calc(-1 * var(--light-height))) scaleX(var(--light-scale,1.1)) scaleY(1)}68%{opacity:.42}to{opacity:0;transform:translate(-50%,calc(-1 * var(--light-height))) scaleX(.18) scaleY(.08)}}@keyframes hitLineHold{0%{opacity:0;transform:translate(-50%,-50%)scaleX(.45)}to{opacity:.82;transform:translate(-50%,-50%)scaleX(1.25)}}@keyframes hitLineReturn{0%{opacity:.9;transform:translate(-50%,-50%)scaleX(1.25)}to{opacity:0;transform:translate(-50%,-50%)scaleX(.12)}}.visualizer-empty{color:#a8aaa9;letter-spacing:.2px;pointer-events:none;box-sizing:border-box;text-align:center;justify-content:center;align-items:center;padding:16px;font-size:13px;line-height:1.35;display:flex;position:absolute;inset:0}.visualizer-actions{z-index:6;box-sizing:border-box;pointer-events:none;justify-content:center;align-items:center;padding:16px;display:none;position:absolute;inset:0}.visualizer-actions.visible{display:flex}.visualizer-action-button{pointer-events:auto;background:0 0;border:0;width:min(210px,68vw);min-width:72px;min-height:72px;padding:0}.viewer-menu-button{color:#baffd9;background:linear-gradient(145deg,#315f4bf0,#182d24f0);border:1px solid #75d3aa8f;border-radius:18px;width:86px;min-width:86px;height:86px;padding:20px;box-shadow:0 18px 48px #00000057,inset 0 0 0 1px #baffd914}.viewer-menu-button:hover{background:linear-gradient(145deg,#397158,#2b493b);border-color:#75d3aa}.viewer-menu-button svg{fill:currentColor;stroke:none;filter:drop-shadow(0 5px 10px #0000004d);width:100%;height:100%}.viewer-menu-button{border-radius:clamp(14px,3vmin,18px);width:clamp(64px,14vmin,86px);min-width:clamp(64px,14vmin,86px);height:clamp(64px,14vmin,86px);min-height:clamp(64px,14vmin,86px);padding:clamp(14px,3vmin,20px)}#visualizerImportButton{background:#242424;border:1px solid #3a3a3a;border-radius:8px;justify-content:center;align-items:center;width:92px;height:92px;padding:12px;display:inline-flex}#visualizerImportButton:hover{background:#303030;border-color:#505050}#visualizerImportButton svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;filter:none;width:72px;height:44px}.visualizer-action-button:hover{background:0 0;transform:translateY(-1px)}.visualizer-action-button svg{pointer-events:none;filter:drop-shadow(0 10px 24px #00000057);width:100%;height:auto;display:block}.ds-command.visual-fullscreen-button{z-index:8;position:absolute;top:10px;right:10px}.visual-orientation-hint{z-index:7;color:#d8dfdc;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080a0a85;border:1px solid #ffffff17;border-radius:6px;padding:6px 9px;font-size:11px;line-height:1;display:none;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}#keyboard-container{width:100%;height:var(--keyboard-height);box-sizing:border-box;background:#171717;border:1px solid #2d2d2d;border-radius:0 0 4px 4px;margin-top:0;padding:0;overflow:hidden}#keyboard{height:var(--white-key-height);-webkit-user-select:none;user-select:none;margin:0;position:relative}.key{box-sizing:border-box;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;border:1px solid #111;border-radius:0 0 5px 5px;justify-content:center;align-items:flex-end;padding:0 1px 7px;font-size:10px;transition:background 50ms;display:flex;position:absolute;overflow:hidden}.white{height:var(--white-key-height);width:var(--white-key-width);z-index:1;color:#999;background:linear-gradient(#ddd 0%,#fff 100%)}.terminal-white-placeholder{pointer-events:none}.black{height:var(--black-key-height);width:var(--black-key-width);z-index:2;color:#666;background:linear-gradient(#333 0%,#000 100%)}.key-label{pointer-events:none;flex-direction:column;align-items:center;gap:3px;width:100%;min-width:0;line-height:1;display:flex}.key-shortcut{color:#242424;white-space:nowrap;min-width:14px;max-width:calc(100% - 2px);height:14px;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.key-label-midi{gap:1px;padding-bottom:1px}.key-note{color:#3d4742;white-space:nowrap;justify-content:center;align-items:baseline;gap:1px;max-width:100%;font-weight:800;line-height:1;display:inline-flex}.key-note-name{text-overflow:ellipsis;min-width:0;font-size:10px;overflow:hidden}.key-note-octave{opacity:.72;font-size:7px;transform:translateY(-2px)}.sheet-note{color:#1d211f;flex-direction:column;align-items:center;gap:0}.sheet-note .key-note-name{text-transform:lowercase;font-family:Georgia,Times New Roman,serif;font-size:11px;font-weight:700}.sheet-note .key-note-octave{opacity:.82;font-size:8px;line-height:.9;transform:none}.black .key-label{gap:2px;padding-bottom:1px}.black .key-shortcut{color:#f5f5f5;min-width:13px;height:13px}.black .key-note{color:#ededed}.black .sheet-note{color:#f5f5f5}.white.active{height:calc(var(--white-key-height) - 3px);box-shadow:inset 0 5px 12px #00000047,0 2px 10px #00000080;background:#a5d6a7!important}.black.active{height:calc(var(--black-key-height) - 3px);box-shadow:inset 0 5px 10px #0000008c;background:#2e7d32!important}.pedals-container{justify-content:center;gap:18px;margin-top:16px;padding:16px 0 2px;display:flex}.pedals-container.hidden{display:none}.pedal{opacity:.82;cursor:pointer;touch-action:none;background:0 0;border:0;border-radius:0;width:82px;min-width:0;height:72px;padding:0;transition:opacity .12s,transform .12s}.pedal:hover{background:0 0;border:0}.pedal.active{opacity:1;transform:translateY(5px)}.pedal svg{pointer-events:none;width:100%;height:100%;display:block}.pedal .pedal-body{fill:#b8b8b8;stroke:#222;stroke-width:2.4px}.pedal .pedal-icon{fill:none;stroke:#050505;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.pedal.active .pedal-body{fill:#d0d0d0;stroke:#f0f0f0}.modal-backdrop{z-index:20;box-sizing:border-box;background:#000000b8;justify-content:center;align-items:center;padding:18px;display:none;position:fixed;inset:0}.modal-backdrop.open{display:flex}.setup-panel{text-align:center;background:#202020;border:1px solid #333;border-radius:8px;width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 24px 80px #00000073}.setup-body{padding:22px;position:relative}.setup-body>.setup-close{color:#aaa;width:40px;min-width:40px;height:40px;padding:0;position:absolute;top:10px;right:10px}#setupInstrument{width:100%}.instrument-grid{box-sizing:border-box;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;margin-bottom:14px;display:grid}.instrument-card{color:#f2f2f2;text-align:center;background:#242424;border:1px solid #3a3a3a;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:148px;padding:14px;display:flex}.instrument-card[disabled]{opacity:.34;cursor:not-allowed}.instrument-card svg{width:128px;height:78px;display:block}.instrument-card strong{font-size:14px;display:block}.setup-title{margin:0 0 7px;font-size:16px}.setup-title:empty{display:none}.setup-copy{color:#bcbcbc;margin:0 0 12px;font-size:13px;line-height:1.35}.setup-copy:empty{display:none}.setup-actions{justify-content:center;align-items:center;gap:0;width:100%;margin-top:12px;display:flex}.setup-choice{background:0 0;border:0;width:138px;min-width:0;padding:0}.setup-choice:hover{background:0 0;transform:translateY(-1px)}.setup-choice svg{pointer-events:none;width:100%;height:auto;display:block}.setup-action-stack{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.setup-choice-row{justify-content:flex-start;gap:8px;width:100%;padding-left:18px;display:flex}.setup-svg-action{background:0 0;border:0;width:min(360px,100%);min-width:0;padding:0}.setup-svg-action:hover{background:0 0;transform:translateY(-1px)}.setup-svg-action svg{width:100%;height:auto;display:block}.setup-svg-action .click-zone{cursor:pointer}.range-preview{background:#141414;border:1px solid #303030;border-radius:8px;margin-top:12px;padding:10px;display:none;overflow-x:auto}.range-preview.visible{display:block}.range-keyboard{height:84px;margin:0 auto;position:relative}.range-key{box-sizing:border-box;border:1px solid #111;border-radius:0 0 4px 4px;position:absolute;bottom:0}.range-white{z-index:1;background:#f1f1f1;width:18px;height:84px}.range-black{z-index:2;background:#050505;width:11px;height:52px;margin-left:-5.5px}.range-key.no-key{background:#9c2b2b}.range-key.yes-key{background:#2d7b3d}.setup-summary{display:none}.config-grid{text-align:left;grid-template-columns:repeat(auto-fit,104px);justify-content:center;gap:8px;width:100%;margin-top:10px;display:grid}.config-card,.add-config-card,.input-card{aspect-ratio:1;color:#f2f2f2;text-align:left;background:#242424;border:1px solid #3a3a3a;border-radius:8px;flex-direction:column;justify-content:center;gap:4px;width:104px;min-width:0;min-height:0;padding:8px;display:flex}.config-card{text-align:center;justify-content:center;align-items:center;gap:4px;padding:8px;position:relative}.config-card.with-controls{justify-content:stretch;gap:0;padding:0;overflow:hidden}.config-card-main{box-sizing:border-box;width:100%;min-width:0;min-height:0;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:3px;padding:7px 7px 0;display:flex}.config-card-main:hover{background:0 0}.config-card-main:focus-visible{outline-offset:-2px;border-radius:7px 7px 0 0;outline:1px solid #f0f0f0b3}.config-card strong,.input-card strong{color:#f5f5f5;font-size:14px}.config-card strong{overflow-wrap:anywhere;width:100%;min-height:24px;line-height:1.15;display:block}.config-card span,.input-card span{color:#aaa;font-size:12px;line-height:1.35}.config-logo-wrap{box-sizing:border-box;justify-content:center;align-items:center;width:100%;height:46px;display:flex}.config-logo{width:78px;height:44px;display:block}.add-config-card{text-align:center;color:#f5f5f5;align-items:center;font-size:34px;line-height:1}.menu-config-card{letter-spacing:1px;font-size:28px}.config-stack-icon{fill:none;stroke:currentColor;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;width:42px;height:42px;display:block}.header-midi-box{width:auto;min-width:0;max-width:calc((var(--header-btn-max-size) * 4) + 21px);scrollbar-width:none;align-items:stretch;gap:7px;margin-left:auto;display:flex;overflow-x:auto}.header-midi-box .header-instrument-card{width:100%;min-width:var(--header-btn-min-size);max-width:var(--header-btn-max-size);cursor:pointer;gap:3px;min-height:0;padding:7px}.header-midi-box .header-instrument-card.with-controls{aspect-ratio:1;cursor:default;background:#242424;gap:0;padding:0;overflow:hidden}.header-midi-box .header-instrument-card .config-card-main{min-height:0;padding:5px 7px 0}.header-midi-box .header-instrument-card.standalone-card .config-card-main{padding-top:7px}.header-midi-box .header-instrument-card .config-expand-button{background:#202020;min-height:24px}.header-midi-box .header-add-config{width:clamp(var(--header-btn-min-size), 20vw, var(--header-btn-max-size));min-width:var(--header-btn-min-size);max-width:var(--header-btn-max-size);flex:none;font-size:34px}.header-midi-box .header-instrument-card,.header-midi-box .header-instrument-card.with-controls,.header-midi-box .header-instrument-card:hover{box-shadow:none;background:0 0;border-color:#0000}.header-midi-box .header-instrument-card .config-expand-button,.header-midi-box .header-instrument-card .config-expand-button:hover{background:0 0;border-color:#0000}.header-midi-box .header-instrument-card:focus-visible{outline-offset:2px;outline:2px solid #f0f0f0bf}.header-midi-box .config-logo-wrap{height:36px}.header-midi-box .config-logo{width:64px;height:36px}.header-midi-box .config-card strong{min-height:22px;font-size:12px}.config-expand-button{color:#a8a8a8;cursor:pointer;background:#ffffff04;border:0;border-top:1px solid #333;flex:0 0 24px;justify-content:center;align-items:center;width:100%;min-width:0;padding:0;display:flex}.config-expand-button:hover{color:#f0f0f0;background:#ffffff0a}.config-expand-button:focus-visible{outline-offset:1px;border-radius:6px;outline:1px solid #f0f0f0b3}.config-expand-button svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:14px;height:14px;display:block}.config-card.expanded .config-expand-button svg{transform:rotate(180deg)}.knobs-container.hidden-by-config{display:none}.editor-grid{text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;margin-top:12px;display:grid}.editor-stack{width:100%}.editor-field{flex-direction:column;gap:5px;display:flex}.editor-field input,.editor-field select{box-sizing:border-box;width:100%;min-width:0}.editor-field input[type=number]{appearance:textfield}.editor-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.editor-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.editor-bind-button{color:#fff;cursor:pointer;text-align:left;background:#282828;border:1px solid #373737;border-radius:6px;width:100%;min-height:34px;padding:6px 8px;font-size:13px}.editor-bind-button.listening{border-color:#55c36a;box-shadow:0 0 0 2px #55c36a33}.editor-error{color:#ff8a80;text-align:left;min-height:16px;margin-top:10px;font-size:12px;display:none}.modal-actions-row{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;margin-top:14px;display:flex}.danger-button{background:#3a2020;border-color:#743333}.danger-button:hover{background:#4a2525;border-color:#9c4444}body.visual-focus-mode{--page-inset:0px;background:#050606;overflow:hidden}body.visual-focus-mode .container{flex-direction:column;min-height:100dvh;display:flex}body.visual-focus-mode .header-section,body.visual-focus-mode .learning-modal-backdrop,body.visual-focus-mode .modal-backdrop,body.visual-focus-mode .song-result-backdrop,body.visual-focus-mode .settings-modal-backdrop,body.visual-focus-mode .knobs-container,body.visual-focus-mode #midi-log,body.visual-focus-mode .loading-bar,body.visual-focus-mode .transport-panel,body.visual-focus-mode .pedals-container{display:none}body.visual-focus-mode #practiceStage,#practiceStage:fullscreen{background:#050606;border-radius:0;flex-direction:column;justify-content:stretch;width:100%;height:100dvh;min-height:0;margin:0;display:flex;position:relative;overflow:hidden}body.visual-focus-mode .falling-visualizer,#practiceStage:fullscreen .falling-visualizer{border-left:0;border-right:0;border-radius:0;flex:auto;height:auto;min-height:0}body.visual-focus-mode #keyboard-container,#practiceStage:fullscreen #keyboard-container{flex:0 0 var(--keyboard-height);height:var(--keyboard-height);border-bottom:0;border-left:0;border-right:0;border-radius:0;overflow:hidden}body.visual-focus-mode .visual-fullscreen-button,#practiceStage:fullscreen .visual-fullscreen-button{top:calc(12px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right))}@media (orientation:portrait) and (pointer:coarse){body.visual-focus-mode .visual-orientation-hint,#practiceStage:fullscreen .visual-orientation-hint{bottom:max(12px, env(safe-area-inset-bottom));display:block}}@media (max-width:1100px){.knobs-container{--knob-cols:4}}@media (max-width:700px){body{--page-inset:6px}.header-section{flex-direction:row;align-items:stretch;gap:8px;padding:8px;overflow:hidden}.header-menu-button{width:clamp(58px,18vw,72px);min-width:clamp(58px,18vw,72px);height:clamp(58px,18vw,72px);padding:clamp(7px,2.5vw,12px)}.learning-controls{flex-wrap:nowrap;flex:none;justify-content:flex-start;width:auto}.learning-desktop-controls{display:none}.learning-menu-button.add-config-card{display:flex}.learning-card,.learning-menu-button.add-config-card{width:72px;min-width:72px;max-width:72px;padding:6px}.learning-menu-button.add-config-card svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:34px;height:34px;display:block}.learning-card svg{width:56px;height:32px}.learning-card strong{min-height:20px;font-size:11px}.controls-row{flex-wrap:nowrap;flex:auto;justify-content:flex-end;gap:8px;width:auto;min-width:0;overflow:hidden}.header-midi-box{width:152px;min-width:152px;max-width:152px}.header-midi-box .header-instrument-card{width:72px;min-width:72px;max-width:72px;padding:6px}.header-midi-box .header-instrument-card.with-controls{padding:0}.header-midi-box .header-add-config{width:72px;min-width:72px;max-width:72px;padding:6px;display:flex}.header-midi-box .config-logo-wrap{height:32px}.header-midi-box .config-logo{width:56px;height:32px}.header-midi-box .config-card strong{min-height:20px;font-size:12px}.knobs-container{--knob-cols:4}.instrument-grid,.editor-grid{grid-template-columns:1fr}.transport-panel{grid-template-columns:auto minmax(0,1fr);gap:8px 9px;padding:9px}.transport-actions{gap:8px}.transport-button{width:42px;min-width:42px;height:40px}.transport-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.transport-time{grid-column:1/-1;justify-self:start}.timeline-track{height:10px}.song-result-backdrop{align-items:center;padding:10px}.song-result-panel{width:min(380px,100%);padding:13px}.song-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.song-result-actions{justify-content:stretch}.song-result-actions button{flex:1 1 0;min-width:0;min-height:42px}.falling-visualizer{height:clamp(155px,31vh,245px)}.visualizer-action-button{width:min(190px,68vw)}.viewer-menu-button{width:clamp(64px,22vw,82px);min-width:clamp(64px,22vw,82px);height:clamp(64px,22vw,82px);min-height:clamp(64px,22vw,82px);padding:clamp(14px,5vw,19px)}#visualizerImportButton{width:82px;height:82px;padding:10px}.visual-fullscreen-button{top:8px;right:8px}body.visual-focus-mode .visual-fullscreen-button,#practiceStage:fullscreen .visual-fullscreen-button{top:calc(8px + env(safe-area-inset-top));right:calc(8px + env(safe-area-inset-right))}}#status{color:#cfcfcf;text-transform:uppercase;letter-spacing:1px;min-height:16px;font-size:13px;font-weight:700;display:none}.loading-bar{background:#333;border-radius:3px;width:100%;height:6px;margin-top:15px;display:none;overflow:hidden}#progress{background:#4caf50;width:0%;height:100%;transition:width .1s}.audio-activation-button{z-index:10000;color:#fff;cursor:pointer;background:#17231f;border:1px solid #75d3aa;border-radius:999px;padding:12px 20px;font-weight:800;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #00000073}.library-songs article.library-song-selected{background:#29352f;border-color:#75d3aa;box-shadow:inset 0 0 0 1px #75d3aa24}.container>.header-section{z-index:var(--z-app-header)}.audio-activation-button{z-index:var(--z-audio-activation)}.library-menu{border:1px solid #2d2d2d;border-radius:8px;inset:138px 16px 16px;overflow:hidden;box-shadow:0 18px 55px #00000052}.library-menu-header>input[type=search],.library-menu-header>select,.library-menu-header>button,.library-menu-header>.library-view-switch{align-self:center;height:48px;min-height:48px}.library-menu-header>.library-view-switch>button{height:100%;min-height:0}@media (max-width:800px){.library-menu{border-radius:6px;inset:94px 6px 6px}}.container.menu-active .library-menu{border-radius:0 0 8px 8px;top:130px;box-shadow:0 18px 55px #00000047}@media (max-width:800px){.container.menu-active .library-menu{border-radius:0 0 6px 6px;top:86px}}.container.menu-active .header-section{border-radius:4px;margin-bottom:8px}.container.menu-active .library-menu{width:100%;height:calc(100dvh - 154px);min-height:0;box-shadow:none;border-radius:8px;position:relative;inset:auto}@media (max-width:800px){.container.menu-active .library-menu{border-radius:6px;height:calc(100dvh - 100px);position:relative;inset:auto}}.setup-panel[data-editor]{text-align:left;width:min(520px,100%)}.setup-panel[data-editor] .editor-stack>h3{margin:0;font-size:15px}.setup-panel[data-editor] .editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:480px){.setup-panel[data-editor] .editor-grid{grid-template-columns:minmax(0,1fr)}}@media (orientation:landscape) and (max-height:500px){body:not(.visual-focus-mode){--page-inset:6px}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active){flex-direction:column;height:calc(100dvh - 12px);display:flex}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>.header-section,body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>.transport-panel{flex:none}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>#practiceStage{flex-direction:column;flex:1 1 0;min-height:0;display:flex}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>#practiceStage>.falling-visualizer{flex:1 1 0;height:auto;min-height:0}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>#practiceStage>#keyboard-container{flex:0 0 var(--keyboard-height)}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>.header-section{margin-bottom:6px;padding:6px 8px}body:not(.visual-focus-mode) .header-menu-button{width:44px;min-width:44px;height:44px;padding:8px}body:not(.visual-focus-mode) .header-midi-box{width:168px;min-width:168px;max-width:168px}body:not(.visual-focus-mode) .header-midi-box .header-instrument-card.with-controls{aspect-ratio:auto;flex-direction:row;width:116px;min-width:116px;max-width:116px;height:44px}body:not(.visual-focus-mode) .header-midi-box .header-instrument-card .config-card-main{flex-direction:column;gap:1px;height:42px;padding:2px 4px}body:not(.visual-focus-mode) .header-midi-box .config-logo-wrap{flex-shrink:0;width:24px;height:24px}body:not(.visual-focus-mode) .header-midi-box .config-logo{width:24px;height:24px}body:not(.visual-focus-mode) .header-midi-box .config-card strong{width:auto;min-height:0;font-size:12px}body:not(.visual-focus-mode) .header-midi-box .header-instrument-card .config-expand-button{border-top:0;width:44px;min-width:44px;height:42px}body:not(.visual-focus-mode) .header-midi-box .header-add-config{width:44px;min-width:44px;max-width:44px;height:44px;padding:6px}body:not(.visual-focus-mode) .transport-panel{grid-template-columns:auto minmax(0,1fr) auto;gap:6px;padding:6px}body:not(.visual-focus-mode) .transport-time{grid-column:auto}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>#practiceStage:has(>.sheet-visualizer){flex:none}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>#practiceStage>.sheet-visualizer{flex:0 0 220px;height:220px;min-height:220px}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>#practiceStage{min-height:calc(var(--keyboard-height) + 80px)}body:not(.visual-focus-mode) .container:not(.menu-active):not(.competitive-active)>.knobs-container:not(.audio-preferences-host):not(.hidden-by-config){overscroll-behavior:contain;flex:none;max-height:clamp(100px,30dvh,150px);overflow:auto}}.cover-editor{min-width:0}.cover-editor .editor-stack{gap:calc(var(--ds-step) * 1.5);min-width:0;display:grid}.cover-editor .ds-select-field,.cover-editor input{box-sizing:border-box;min-width:0;max-width:100%}.cover-editor .ds-command{white-space:normal;max-width:100%}.cover-editor-previews{gap:calc(var(--ds-step) * 2);grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));display:grid}.cover-editor-previews figure{min-width:0;margin:0}.cover-editor-previews .ds-cover{width:100%;display:block}.cover-editor-previews figcaption{margin-top:var(--ds-step);color:var(--ds-muted);font-variant-numeric:tabular-nums;font-size:12px}.visualizer-actions>.ds-command{pointer-events:auto}.library-song-art>.ds-cover{border-radius:inherit;width:100%;height:100%}
:root{--ds-workspace-icon-size:26px;--ds-workspace-title-size:20px;--ds-icon:20px;--ds-icon-small:16px;--ds-icon-large:24px;--ds-icon-stroke:1.5;--ds-paper:#f7f3e8;--ds-paper-ink:#171a18;--ds-radar-dim:#35443b;--ds-radar-trail:#75d3aa;--ds-radar-period:1.8s;--ds-ink:#e8e8e8;--ds-muted:#aaa;--ds-ground:#171717;--ds-panel:#202020;--ds-accent:#75d3aa;--ds-line:#373737;--ds-radius:8px;--ds-step:8px;--ds-fast:.14s;--ds-enter:.34s;--ds-focus:#75d3aad1;--ds-artwork-caption-shade:linear-gradient(transparent 60%,#0003);--ds-artwork-caption-local-shade:linear-gradient(180deg,transparent,#000000ad 54px,#000000d1);--ds-catalogue-backdrop-opacity:.34;--ds-catalogue-backdrop-blur:10px;--ds-catalogue-backdrop-shade:linear-gradient(90deg,#161716a6,transparent 80%),linear-gradient(0deg,#1617168c,transparent 65%);--ds-aurora-light-opacity:.36;--ds-aurora-color-1:#315f4b;--ds-aurora-color-2:#75d3aa;--ds-rift-shadow:#315f4b;--ds-rift-light:#75d3aa;--ds-rift-opacity:.6;--ds-artwork-edge-feather:3px;--ds-artwork-halo-bleed:24px;--ds-knob-compact-size:44px;--ds-knob-compact-dial:32px;--ds-side-menu-width:216px;--ds-side-menu-glyph:18px}html,body{overscroll-behavior-x:none;overflow-x:clip}:root{--ds-command-ground:#282828;--ds-command-edge:#373737;--ds-command-hover:#303030;--ds-command-hover-edge:#505050;--ds-command-selected:#3d4f48;--ds-command-selected-ink:#f4fff9;--ds-command-selected-edge:#75d3aa47;--ds-command-focus:#75d3aad1;--ds-command-radius:6px;--ds-command-duration:.2s}.ds-command{justify-content:center;align-items:center;gap:var(--ds-step);box-sizing:border-box;border:1px solid var(--ds-command-edge);border-radius:var(--ds-command-radius);background:var(--ds-command-ground);color:#fff;min-width:44px;min-height:44px;box-shadow:none;cursor:pointer;transition:background-color var(--ds-command-duration),border-color var(--ds-command-duration),color var(--ds-command-duration);padding:9px 10px;font-size:13px;display:inline-flex;position:relative}.ds-command[hidden]{display:none}.ds-command-glyph{z-index:1;flex:none;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:relative}.ds-command-glyph:empty{display:none}.ds-command-glyph>svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px;display:block}.ds-command-glyph>svg[viewBox="0 0 48 48"]{fill:currentColor;stroke:none}.ds-command-glyph>svg[viewBox="0 0 72 44"]{width:44px;height:27px}.ds-command>span:not(.ds-glass-surface):not(.visually-hidden){z-index:1;position:relative}.ds-command:hover:not(:disabled):not([aria-disabled=true]){background:var(--ds-command-hover);border-color:var(--ds-command-hover-edge);color:#fff}.ds-command:active:not(:disabled):not([aria-disabled=true]){background:var(--ds-command-hover);border-color:var(--ds-command-hover-edge)}.ds-command[aria-pressed=true]{color:var(--ds-command-selected-ink);background:var(--ds-command-selected);border-color:var(--ds-command-selected-edge)}.ds-command[aria-pressed=true]:hover:not(:disabled):not([aria-disabled=true]){background:var(--ds-command-selected);border-color:#75d3aa}.ds-command--accent{color:#f4fff9;background:#315f4b;border-color:#75d3aa80}.ds-command--accent:hover:not(:disabled):not([aria-disabled=true]){background:#397158;border-color:#75d3aa}.ds-command--danger{color:#ffc4bc;border-color:#633b3b}.ds-command--danger:hover:not(:disabled):not([aria-disabled=true]){color:#ffc4bc;border-color:#753e3e}.ds-command--navigation{text-align:left;color:#e8e8e8;background:0 0;border-color:#0000;justify-content:flex-start;gap:10px}.ds-command--navigation:hover:not(:disabled):not([aria-disabled=true]){background:#303030;border-color:#505050}.ds-command--navigation[aria-pressed=true]{color:#f4fff9;background:#3d4f48;border-color:#75d3aa47}.ds-command--navigation[aria-pressed=true]:hover:not(:disabled):not([aria-disabled=true]){background:#3d4f48;border-color:#75d3aa47}.ds-command:disabled,.ds-command[aria-disabled=true]{opacity:.45;cursor:not-allowed}.ds-command:focus-visible{outline:2px solid var(--ds-command-focus);outline-offset:2px}.ds-command--subtle{color:var(--ds-ink);background:0 0;border-color:#0000}.ds-command--subtle:hover:not(:disabled):not([aria-disabled=true]){background:var(--ds-command-hover);color:var(--ds-ink);border-color:#0000}.ds-command--subtle[aria-pressed=true]{color:var(--ds-command-selected-ink);background:var(--ds-command-selected);border-color:var(--ds-command-selected-edge)}.ds-command.ds-command--subtle:is(:disabled,[aria-disabled=true]){background:0 0;border-color:#0000}.ds-command:active:not(:disabled):not([aria-disabled=true]){box-shadow:inset 0 1px 2px #0004}.ds-command[aria-busy=true]{opacity:.8;cursor:progress}.ds-command.ds-command--bare,.ds-command.ds-command--bare:is(:hover,:active,[aria-pressed=true]):not(:disabled):not([aria-disabled=true]){box-shadow:none;background:0 0;border-color:#0000}.ds-command.ds-command--bare:is(:hover,[aria-pressed=true]):not(:disabled):not([aria-disabled=true]){color:var(--ds-accent)}.ds-optics-definitions{pointer-events:none;position:absolute}.ds-glass-surface,.ds-glass-backdrop,.ds-glass-edge{border-radius:inherit;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ds-glass-surface{z-index:0}.ds-glass-backdrop{-webkit-backdrop-filter:url(#diesio-glass-refraction)saturate(1.15);backdrop-filter:url(#diesio-glass-refraction)saturate(1.15);background:#12211824}.ds-glass-edge{overflow:visible}.ds-glass-edge rect{rx:var(--ds-radius);ry:var(--ds-radius)}[data-glass=off] .ds-glass-backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur()}@supports not ((-webkit-backdrop-filter:url(#diesio-glass-refraction)) or (backdrop-filter:url(#diesio-glass-refraction))){.ds-glass-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1d2822b8}}:where(.ds-input):focus-visible{outline:2px solid var(--ds-command-focus);outline-offset:2px}:where(.catalogue-cover,.song-rail button):focus-visible{outline:2px solid var(--ds-focus);outline-offset:4px}.ds-input{box-sizing:border-box;border:1px solid var(--ds-command-edge);border-radius:var(--ds-command-radius);background:var(--ds-command-ground);color:#fff;width:100%;min-width:0;min-height:44px;font:inherit;text-transform:none;letter-spacing:normal;transition:background-color var(--ds-command-duration),border-color var(--ds-command-duration);padding:9px 10px;font-size:13px;font-weight:400}.ds-input:hover:not(:disabled){background:var(--ds-command-hover);border-color:var(--ds-command-hover-edge)}.ds-field-surface .ds-input:hover:not(:disabled){background:0 0;border:0}.ds-cover{background:#242424;place-items:center;display:grid;overflow:hidden}.ds-cover img{object-fit:contain;width:100%;height:100%;display:block}.ds-cover[data-cover-empty]{background:var(--ds-panel)}.ds-cover>svg{width:32px;height:32px;color:var(--ds-muted);stroke-width:1.25px}.ds-status{color:var(--ds-muted);text-align:center;padding:24px;line-height:1.6}.ds-status[role=alert]{color:#ffc4bc}.ds-command-hints{align-items:center;gap:var(--ds-step);flex-wrap:wrap;display:flex}.ds-command-hints .ds-command{font-size:12px}.ds-command-hints .ds-glass-surface{display:none}.ds-command-hints .ds-command-glyph{width:auto;min-width:22px}.ds-command-hints kbd{font:inherit;color:var(--ds-muted);border:1px solid var(--ds-line);border-radius:4px;padding:2px 5px}.ds-loading{color:var(--ds-muted);flex-direction:column;align-items:center;gap:16px;padding:24px;display:flex}.ds-loading[data-compact]{--ds-radar-origin:18.125% 50%;color:var(--ds-accent);gap:0;padding:0;display:inline-flex}.ds-loading[data-compact] .ds-radar{aspect-ratio:auto;width:22px;height:22px}@property --ds-radar-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.ds-radar{aspect-ratio:640/180;width:192px;max-width:100%;height:auto;color:var(--ds-accent);display:block}.ds-radar-sweep{background:var(--ds-accent);background:conic-gradient(from var(--ds-radar-angle) at var(--ds-radar-origin,50% 50%),var(--ds-radar-dim),var(--ds-accent) 60deg,var(--ds-radar-trail) 100deg,var(--ds-radar-dim) 140deg);width:100%;height:100%;animation:ds-radar var(--ds-radar-period) linear infinite}@keyframes ds-radar{to{--ds-radar-angle:360deg}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}.ds-command,.ds-input{transition:none}.ds-radar-sweep{background:var(--ds-accent);animation:none}}.falling-note{overflow:visible}.ds-note-plane{pointer-events:none;position:absolute;inset:0}.ds-note-plane[data-tone=white]{z-index:1}.ds-note-plane[data-tone=black]{z-index:2}.ds-note-label{bottom:3px;color:#14231a;pointer-events:none;text-shadow:0 1px 1px #ffffff4a;flex-direction:column;align-items:center;gap:1px;line-height:1;display:flex;position:absolute;inset-inline:0}.ds-note-label small{font-size:clamp(8px,1vw,11px)}.ds-note-label strong{font-size:clamp(10px,1.4vw,15px)}.black-note .ds-note-label{color:#fff;text-shadow:0 1px 2px #0009}.ds-note-label--compact{flex-direction:row;justify-content:center;gap:4px;padding:0;bottom:2px}.ds-note-label--compact strong,.ds-note-label--compact small{font-size:10px}.ds-note-guides{z-index:4;pointer-events:none;position:absolute;inset:0}.ds-note-guide{height:16px;color:var(--ds-ink);position:absolute}.ds-note-guide .ds-note-label{color:var(--ds-ink);text-shadow:0 1px 3px var(--ds-ground),0 -1px 3px var(--ds-ground);white-space:nowrap;position:static}.ds-note-guide:after{content:"";background:var(--ds-muted);width:1px;height:3px;position:absolute;top:14px;left:50%}.ds-library{text-align:left;max-width:1120px;margin:0 auto;padding:32px clamp(16px,4vw,48px) 64px}.ds-library header{align-items:center;gap:20px;display:flex}.ds-library h1{flex:1;font-size:20px}.ds-library h2{color:var(--ds-muted);margin:40px 0 22px;font-size:15px;font-weight:500}.ds-library-row{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.ds-library-sample{color:var(--ds-muted);justify-items:center;gap:16px;font-size:12px;display:grid}.ds-library-key{--white-key-width:54px;--white-key-height:160px;--black-key-width:34px;--black-key-height:102px;width:54px;height:160px;position:relative}.ds-library-key .key{left:50%;transform:translate(-50%)}.ds-library-key .key.black{top:0}.ds-library-piano{min-width:0;margin-top:24px;overflow:hidden}.ds-library-notes{height:140px;margin-top:24px;position:relative}@media (max-width:500px){.ds-library{padding-inline:16px}.ds-library header{flex-wrap:wrap;gap:12px}.ds-library-row{gap:16px}}.ds-library header>a{color:var(--ds-muted)}.ds-library-sample{margin:0 16px 0 0}@media (prefers-reduced-transparency:reduce){.ds-glass-backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();background:#25332c}}.ds-material-tools{flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;display:flex}.ds-material-tools h2{margin:0 auto 0 0}.ds-material-scenes{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.ds-material-stage{background:#1c241f;border-radius:4px;height:360px;position:relative;overflow:hidden}.ds-material-photo{object-fit:cover;width:100%;height:100%;display:block}.ds-material-controls{gap:14px;display:flex;position:absolute;top:32%;left:12%}.ds-material-controls .ds-command{width:60px;height:56px}.ds-material-controls .ds-command-glyph,.ds-material-controls .ds-command-glyph>svg{width:24px;height:24px}.ds-material-lower{--ds-radius:24px;background:#16241b24;border-radius:24px;width:300px;height:145px;position:absolute;top:24%;left:8%}.ds-material-notes{width:156px;height:160px;position:absolute;top:36%;right:8%}.ds-material-caption{color:var(--ds-muted);font-size:12px;line-height:1.5}@media (max-width:600px){.ds-material-stage{height:330px}.ds-material-controls{top:18%;left:8%}.ds-material-notes{top:50%}.ds-material-lower{width:260px;top:10%;left:4%}}.ds-material-keys{gap:12px;display:flex;position:absolute;bottom:24px;left:45%}.ds-material-keys .ds-library-key{--white-key-width:40px;--black-key-width:40px;--white-key-height:120px;--black-key-height:120px;width:40px;height:120px}@media (max-width:600px){.ds-material-keys{bottom:18px;left:12%}}.ds-search-field{align-items:center;gap:var(--ds-step);width:100%;min-width:0;display:flex}.ds-search-entry{align-items:center;gap:var(--ds-step);flex:1;min-width:0;display:flex}.ds-search-entry>svg{width:20px;height:20px;color:var(--ds-muted);flex:none}.ds-search-entry input{min-width:0}.ds-search-entry input::-webkit-search-cancel-button{display:none}.ds-search-field>.ds-command{flex:none}.ds-path-trail{align-items:center;gap:var(--ds-step);min-height:48px;color:var(--ds-muted);margin-bottom:16px;display:flex}.ds-path-trail ol{scrollbar-width:thin;align-items:center;gap:var(--ds-step);flex-wrap:nowrap;flex:1;min-width:0;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.ds-path-trail li{align-items:center;gap:var(--ds-step);min-width:0;max-width:100%;display:flex}.ds-path-trail li>svg{flex:none;width:16px;height:16px}.ds-path-trail li>button,.ds-path-trail li>span{overflow-wrap:anywhere;text-align:start}.ds-path-trail li>button{min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:10px 2px}.ds-path-trail [aria-current]{color:var(--ds-ink)}.ds-path-trail button:focus-visible{outline:2px solid var(--ds-focus);outline-offset:2px}.ds-path-trail-actions{flex:none}@media (max-width:800px){.ds-path-trail{margin-bottom:8px}.ds-path-trail ol{overscroll-behavior-x:contain;scrollbar-width:thin;flex-wrap:nowrap;padding:4px;overflow-x:auto}.ds-path-trail li{flex:none;max-width:100%}.ds-path-trail li>button,.ds-path-trail li>span{white-space:nowrap;overflow-wrap:normal;text-overflow:ellipsis;min-width:0;overflow:hidden}}.catalogue-tools>.ds-search-field{flex:1}@media (max-width:800px){.catalogue-tools>.ds-search-field{flex-basis:calc(100% - 60px)}}.catalogue-path-picker{gap:16px;margin-block:16px;display:grid}.catalogue-path-picker>.ds-command{justify-self:start}.catalogue-path-proposal,.catalogue-identity-choice{gap:calc(var(--ds-step)*2);min-width:0;display:grid}.catalogue-path-proposal{max-width:720px;padding-block:calc(var(--ds-step)*2)}.catalogue-path-proposal>.ds-command{justify-self:start}.catalogue-path-creation-context{margin:0;font-weight:600}.catalogue-path-form,.catalogue-publications{gap:calc(var(--ds-step)*2);min-width:0;max-width:720px;padding-block:calc(var(--ds-step)*2);display:grid}.catalogue-path-form>.ds-command,.catalogue-publications>.ds-command{justify-self:start}.catalogue-form-group{gap:calc(var(--ds-step)*1.5);min-width:0;padding:calc(var(--ds-step)*2);border:1px solid var(--ds-line);border-radius:var(--ds-radius);margin:0;display:grid}.catalogue-form-group .catalogue-image-field{margin-block:0}.catalogue-form-group>legend{padding-inline:var(--ds-step);color:var(--ds-muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px}.catalogue-identity-details{gap:calc(var(--ds-step)*2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (max-width:520px){.catalogue-identity-details{grid-template-columns:minmax(0,1fr)}.catalogue-form-group .catalogue-image-field{grid-template-columns:64px minmax(0,1fr);gap:8px}.catalogue-form-group .ds-file-field{min-width:0}}.catalogue-publications ul{gap:var(--ds-step);margin:0;padding:0;list-style:none;display:grid}.catalogue-publications li small{color:var(--ds-muted);margin:0}.catalogue-publications li{align-items:center;gap:calc(var(--ds-step)*1.5);padding:var(--ds-step);border:1px solid var(--ds-line);border-radius:var(--ds-radius);grid-template-columns:48px minmax(0,1fr) auto;display:grid}.catalogue-publications li>.ds-cover{border-radius:calc(var(--ds-radius)/2);width:48px;height:48px;overflow:hidden}.catalogue-publications li>span{min-width:0;display:grid}.catalogue-publications li strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.catalogue-publications li>[role=group]:has(p){align-items:center;gap:var(--ds-step);flex-wrap:wrap;grid-column:1/-1;display:flex}.catalogue-publications li>[role=group]:has(p)>p{flex-basis:100%;margin:0}.catalogue-identity-choice [data-disclosure-trigger]{justify-self:start;width:auto}.catalogue-path-picker>div>.ds-command{justify-self:start}.catalogue-path-proposal>.ds-cover{max-width:320px;max-height:240px}.catalogue-path-picker ul{margin:0;padding:0;list-style:none}.catalogue-path-picker li{justify-content:space-between;align-items:center;gap:12px;display:flex}.knob-wrapper[data-disabled] .knob-surround{opacity:.45;cursor:not-allowed}.knob-description{color:var(--ds-muted,#aaa);text-align:center;font-size:10px}@media (prefers-reduced-motion:reduce){.knob-dial{transition:none}}.editorial-reviews{padding:0;list-style:none}.editorial-review-row{gap:calc(var(--ds-step)*2);width:100%;min-width:0;max-width:720px;padding-block:calc(var(--ds-step)*3);border-bottom:1px solid var(--ds-line);display:grid}.editorial-review-row>.ds-command{justify-self:start}.editorial-review-row>.ds-cover{max-width:320px;max-height:240px}.editorial-review-row .ds-library-row{flex-wrap:wrap}.midi-navigation-editor{margin-block:24px}.midi-navigation-editor p{color:var(--ds-muted);line-height:1.5}.midi-navigation-binding{align-items:center;gap:var(--ds-step);border-bottom:1px solid var(--ds-line);padding-block:8px;display:flex}.midi-navigation-binding>span{flex:1;min-width:0}.midi-navigation-binding small{color:var(--ds-muted);margin-top:4px;display:block}.ds-midi-review-controls{z-index:10001;background:var(--ds-ground);border:1px solid var(--ds-line);flex-wrap:wrap;align-items:end;gap:8px;max-width:min(420px,100vw - 24px);padding:12px;display:flex;position:fixed;bottom:12px;left:12px}.ds-midi-review-controls strong{color:var(--ds-muted);flex-basis:100%;font-size:12px}.ds-midi-review-controls label{max-width:110px}[data-midi-review-result]{overflow-wrap:anywhere;display:block}.ds-navigation-help{align-items:end;gap:var(--ds-step);flex-wrap:wrap;min-width:0;display:flex}.ds-navigation-help>.ds-select-field{max-width:240px}.ds-input-hint{align-items:center;gap:8px;display:flex}.ds-input-hint small{font:inherit;font-size:12px}.ds-midi-input-glyph{flex-shrink:0;width:48px;height:30px}.ds-select-field [data-adjusting]{outline:2px solid var(--ds-accent);outline-offset:2px}.ds-select-field>small{text-transform:none;letter-spacing:normal;color:var(--ds-muted);max-width:32ch;font-size:12px;font-weight:400;line-height:1.4}.ds-range-field{gap:var(--ds-step);display:grid}.ds-range-field input{width:100%;min-width:0;accent-color:var(--ds-accent)}.ds-range-field input[data-adjusting]{outline:2px solid var(--ds-focus);outline-offset:2px}.ds-range-field small{color:var(--ds-muted);font-size:12px;line-height:1.4}.ds-range-field[data-presentation=compact]{grid-template-columns:minmax(0,1fr) auto;align-items:center}.ds-range-field[data-presentation=compact]>output{grid-area:1/2}.ds-range-field[data-presentation=compact]>input,.ds-range-field[data-presentation=compact]>small{grid-column:1/-1}:root{--ds-scene-duration:.52s;--ds-cover-zoom-duration:.48s;--ds-scene-exit-duration:.24s;--ds-scene-ease:cubic-bezier(.16,1,.3,1);--ds-choice-duration:.38s}@media (prefers-reduced-motion:reduce){.song-rail li,.song-rail-main,.catalogue-cover .ds-cover,.catalogue-cover-caption,.catalogue-cover-arrow{transition:none}.catalogue-cover:is(:hover,:focus-visible) .catalogue-cover-caption,.catalogue-cover:is(:hover,:focus-visible) .catalogue-cover-arrow{transform:none}}.ds-command-choice{border:0;min-width:0;margin:0;padding:0}.ds-command-choice>legend{color:var(--ds-muted);margin-bottom:12px;padding:0;font-size:13px}.ds-command-choice>div{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:800px),(max-height:600px){.ds-command-hints{overscroll-behavior-x:contain;scrollbar-width:thin;flex-wrap:nowrap;min-width:0;max-width:100%;overflow-x:auto}.ds-command-hints>.ds-command{white-space:nowrap;flex:none}}.ds-dialog-navigation{min-width:0;margin-top:20px}.ds-dialog-navigation .ds-command-hints{overscroll-behavior-x:contain;scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.ds-dialog-navigation .ds-command-hints>.ds-command{white-space:nowrap;flex:none}:is(.settings-modal-panel,.song-result-panel){overscroll-behavior:contain;min-width:0;max-height:calc(100dvh - 32px);animation:ds-dialog-enter var(--ds-enter) cubic-bezier(.16,1,.3,1) both}@keyframes ds-dialog-enter{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){:is(.settings-modal-panel,.song-result-panel){animation:none}}.ds-measure-loop-fields{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.ds-measure-loop-fields .ds-select-field{flex:1;min-width:90px}.ds-measure-loop p{color:var(--ds-muted);margin:10px 0 0;font-size:12px}.ds-note-properties{gap:16px;display:grid}.ds-note-properties>p,.ds-studio-review>p{color:var(--ds-muted);line-height:1.6}.ds-note-properties-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:20px;display:grid}.ds-note-properties-actions{align-items:center;gap:10px;display:flex}.ds-studio-review{padding-block:24px}:root{--ds-roll-black:#171717;--ds-roll-white:#282828;--ds-roll-note:#3a3a3a}.ds-midi-roll{overscroll-behavior:contain;border-block:1px solid var(--ds-line);max-width:100%;margin-block:20px;overflow:auto}.ds-midi-roll:focus-visible{outline:2px solid var(--ds-focus);outline-offset:2px}.ds-midi-roll-inner{min-width:720px;position:relative}.ds-midi-roll-pitches{width:54px;color:var(--ds-muted);grid-auto-rows:22px;font-size:10px;display:grid;position:absolute;top:28px;left:0}.ds-midi-roll-pitches>span{justify-content:center;align-items:center;display:flex}.ds-midi-roll-plane{position:absolute;inset:28px 12px 0 54px}.ds-midi-roll-plane>svg{display:block}.ds-midi-roll-note{border:1px solid var(--ds-line);background:var(--ds-roll-note);min-width:2px;height:18px;min-height:0;color:var(--ds-ink);text-align:left;white-space:nowrap;cursor:pointer;border-radius:2px;padding:0 3px;font-family:inherit;font-size:10px;line-height:16px;display:block;position:absolute;overflow:hidden}.ds-midi-roll-note[aria-pressed=true]{background:var(--ds-accent);color:var(--ds-ground);border-color:var(--ds-ink)}.ds-midi-roll-note:focus-visible{outline:2px solid var(--ds-focus);outline-offset:2px;z-index:1}.ds-midi-roll-note:disabled{opacity:.45;cursor:default}.ds-studio-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-block:20px;display:flex}.ds-studio-toolbar>.ds-select-field{max-width:180px}.ds-studio-editor [role=alert]{color:var(--ds-danger,#efaaaa)}.ds-command-choice[data-presentation=illustrated]>div{grid-template-columns:repeat(auto-fit,minmax(68px,1fr));gap:10px;display:grid}.ds-command-choice[data-presentation=illustrated] .ds-command{min-width:0;min-height:94px;transition:background-color var(--ds-command-duration),border-color var(--ds-command-duration),color var(--ds-command-duration);flex-direction:column;gap:10px;padding:14px 6px;font-size:13px;font-weight:600}.ds-command-choice[data-presentation=illustrated] .ds-command-glyph,.ds-command-choice[data-presentation=illustrated] .ds-command-glyph>svg{width:28px;height:28px}@media (prefers-reduced-motion:reduce){.ds-command-choice[data-presentation=illustrated] .ds-command{transition:none}.ds-command-choice[data-presentation=illustrated] .ds-command[aria-pressed=true]{transform:none}}.sheet-load{background:var(--ds-ground);color:var(--ds-ink);place-items:center;display:grid}.sheet-load>.ds-status{text-align:center;max-width:42ch;padding:24px}.sheet-load .ds-radar{width:120px}.ds-textarea{resize:vertical;min-height:96px;line-height:1.5}.ds-check-field{cursor:pointer;align-items:flex-start;gap:12px;line-height:1.5;display:flex}.ds-check-field>input{appearance:auto;width:20px;min-width:20px;max-width:20px;height:20px;accent-color:var(--ds-accent);flex:none;margin:2px 0}.ds-check-field>input:focus-visible{outline:2px solid var(--ds-focus);outline-offset:4px}.ds-check-field:has(:disabled){opacity:.5;cursor:default}.ds-check-field[data-presentation=switch]{min-height:44px;color:var(--ds-ink);text-transform:none;letter-spacing:normal;justify-content:space-between;align-items:center;gap:16px;font-size:14px;font-weight:500}.ds-check-field[data-presentation=switch]>span{order:-1;min-width:0}.ds-check-field[data-presentation=switch]>input{appearance:none;box-sizing:border-box;border:1px solid var(--ds-muted);background:var(--ds-ground);width:40px;min-width:40px;max-width:40px;height:24px;cursor:inherit;border-radius:999px;margin:0;padding:0;transition:background-color .16s,border-color .16s;position:relative}.ds-check-field[data-presentation=switch]>input:after{content:"";background:var(--ds-muted);border-radius:50%;width:16px;height:16px;transition:transform .16s,background-color .16s;position:absolute;top:3px;left:3px}.ds-check-field[data-presentation=switch]>input:checked{border-color:var(--ds-accent);background:var(--ds-accent)}.ds-check-field[data-presentation=switch]>input:checked:after{background:var(--ds-ground);transform:translate(16px)}@media (prefers-reduced-motion:reduce){.ds-check-field[data-presentation=switch]>input,.ds-check-field[data-presentation=switch]>input:after{transition:none}}.ds-music-identity{grid-template-columns:clamp(88px,10vw,136px) minmax(0,1fr);align-items:center;gap:clamp(16px,2vw,24px);min-width:0;display:grid}.ds-music-identity>.ds-cover{aspect-ratio:1;background:0 0;width:100%;height:auto}.ds-music-identity>.ds-cover img{object-fit:contain;width:100%;height:100%}.ds-music-identity-copy{min-width:0}.ds-music-identity .ds-music-identity-copy h1{letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:balance;margin:0;font-size:clamp(24px,2.7vw,36px);font-weight:650;line-height:1.08}.ds-music-identity .ds-music-identity-copy p{color:var(--ds-muted);overflow-wrap:anywhere;margin:12px 0 0;font-size:14px;line-height:1.45}@media (max-width:500px){.ds-music-identity{grid-template-columns:72px minmax(0,1fr);gap:14px}.ds-music-identity .ds-music-identity-copy h1{font-size:24px}}.ds-command-choice[data-presentation=band]>div{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;display:grid}.ds-command-choice[data-presentation=band] .ds-command{border-radius:var(--ds-command-radius);justify-content:center;gap:7px;min-height:46px;padding:10px 8px;font-size:12px}.ds-command-choice[data-presentation=band] .ds-command-glyph,.ds-command-choice[data-presentation=band] .ds-command-glyph>svg{width:20px;height:20px}@media (prefers-reduced-motion:reduce){.ds-command-choice[data-presentation=band] .ds-command{transition:none;transform:none}.ds-command-choice[data-presentation=band] .ds-command[aria-pressed=true]{transform:none}}:root{--ds-stat-perfect:#60dcff;--ds-stat-good:#70d89a;--ds-stat-accepted:#e2be56;--ds-stat-miss:#d98282;--ds-stat-combo:#b8c7ff}.ds-result-statistics{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:24px 16px;margin:24px 0;display:grid}.ds-result-statistic{border-top:2px solid var(--stat-color,var(--ds-line));min-width:0;padding-top:12px}.ds-result-statistic[data-tone=perfect]{--stat-color:var(--ds-stat-perfect)}.ds-result-statistic[data-tone=good]{--stat-color:var(--ds-stat-good)}.ds-result-statistic[data-tone=accepted]{--stat-color:var(--ds-stat-accepted)}.ds-result-statistic[data-tone=miss]{--stat-color:var(--ds-stat-miss)}.ds-result-statistic[data-tone=combo]{--stat-color:var(--ds-stat-combo)}.ds-result-statistic dt{color:var(--ds-muted);overflow-wrap:anywhere;font-size:11px;line-height:1.4}.ds-result-statistic dd{color:var(--ds-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:6px 0 0;font-size:clamp(22px,3vw,32px);font-weight:650}.ds-result-statistics[data-compact]{gap:16px 12px;margin-block:16px}.ds-result-statistics[data-compact] dd{font-size:22px}.song-result-backdrop.open{background:#000000c2;padding:16px}.song-result-panel{width:min(450px,100%);animation:ds-result-enter var(--ds-scene-duration) var(--ds-scene-ease) both;background:#202020;border:1px solid #343434;border-radius:8px;padding:14px;box-shadow:0 28px 90px #0008}.song-result-head{border-bottom:1px solid #303030;margin-bottom:12px;padding-bottom:12px}.song-result-title{color:#f5f5f5;letter-spacing:.8px;font-size:13px}.song-result-kicker{color:#8f9895;overflow-wrap:anywhere;margin-top:3px;font-size:12px;font-weight:400;line-height:1.3}.song-result-main{background:#181818;border:1px solid #303030;border-radius:8px;gap:14px;margin:0 0 12px;padding:12px}.song-result-score{font-variant-numeric:tabular-nums;letter-spacing:0;font-family:Consolas,monospace;font-size:28px;font-weight:700}.song-result-score-label{font-size:11px}.song-result-rank{width:102px;height:82px;animation:ds-rank-enter var(--ds-scene-duration) var(--ds-scene-ease) both}.song-result-rank svg text{font-style:normal}.song-result-actions{flex-wrap:wrap;gap:8px;margin-top:16px}.song-result-actions .ds-command{min-width:140px;min-height:44px}.song-result-panel .ds-dialog-navigation{margin-top:24px}@keyframes ds-result-enter{0%{opacity:0;transform:translate(-36px)}to{opacity:1;transform:none}}@keyframes ds-rank-enter{0%{opacity:0;transform:translate(48px)scale(.85)}to{opacity:1;transform:none}}@media (max-width:600px){.song-result-panel{width:100%;padding:8px}.song-result-head{margin-bottom:20px}.song-result-main{gap:12px}.song-result-panel .ds-result-statistics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px}.song-result-actions{margin-top:20px}.song-result-actions .ds-command{flex:calc(50% - 6px);min-width:0}}@media (prefers-reduced-motion:reduce){.song-result-panel,.song-result-rank{animation:none}}.ds-search-context{flex:1;min-width:0}.ds-search-scope{color:var(--ds-muted);overflow-wrap:anywhere;padding:4px 0 0 28px;font-size:11px;line-height:1.3;display:block}.ds-search-field:has(.ds-search-scope){align-items:flex-start}.library-profile-settings{width:100%;min-width:0;max-width:720px;margin:0}.library-profile-settings>h2{letter-spacing:-.025em;margin:0 0 16px;font-size:clamp(22px,3vw,30px);font-weight:600}.library-profile-settings>p{color:var(--ds-muted);font-size:14px;line-height:1.6}.library-profile-card{background:0 0;border:0;border-radius:0;margin:24px 0 32px;padding:0}.library-profile-card>div{overflow-wrap:anywhere;min-width:0}.library-profile-settings>section{border:0;border-top:1px solid var(--ds-line);background:0 0;border-radius:0;margin-top:28px;padding:24px 0 0}.library-profile-settings h3{color:var(--ds-muted);font-size:13px;font-weight:500}.library-profile-settings .library-profile-danger{border-top-color:var(--ds-stat-miss)}.ds-studio-keyboard-zone{min-height:44px;padding:12px;font-size:13px}.settings-modal-panel{background:#202020;border-color:#333;padding:24px}.settings-modal-panel[data-study]{width:min(880px,100%)}.settings-modal-panel[data-study] .settings-body{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;display:grid}.settings-body>div{min-width:0}.settings-body .settings-section{border:0;padding:16px 0}.settings-body .settings-section-title{color:var(--ds-muted);font-size:11px;font-weight:500}.settings-body .ds-measure-loop-fields{flex-wrap:wrap;gap:8px}.settings-body .ds-measure-loop p{color:var(--ds-muted);font-size:12px}.settings-modal-panel .ds-dialog-navigation{border-top:1px solid var(--ds-line);margin-top:20px;padding-top:12px}@media (max-width:650px){.settings-modal-panel{padding:16px}.settings-modal-panel[data-study] .settings-body{grid-template-columns:minmax(0,1fr);gap:0}}.ds-piano-envelope{text-align:left;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:12px 24px;display:flex}.ds-piano-envelope>.ds-select-field{min-width:180px;max-width:280px}.ds-piano-envelope>p{max-width:52ch;color:var(--ds-muted);margin:0;font-size:12px;line-height:1.5}.ds-choice-description{color:var(--ds-muted);max-width:60ch;margin:12px 0 0;font-size:12px;line-height:1.5}:root{--ds-settings-width:380px;--ds-settings-top:clamp(112px,18vh,180px)}.ds-settings-layer{z-index:var(--z-modal);background:0 0;position:fixed;inset:0}.ds-settings-dock{top:var(--ds-settings-top);width:min(var(--ds-settings-width),calc(100vw - 48px));max-height:var(--ds-settings-available,calc(100dvh - var(--ds-settings-top) - 12px));color:var(--ds-ink);text-align:left;grid-template-rows:auto minmax(0,1fr);gap:12px;display:grid;position:absolute;left:24px}.ds-settings-dock[data-inline]{width:min(var(--ds-settings-width),100%);max-height:min(480px,80dvh);position:relative;top:auto;left:auto}.ds-settings-rail{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ds-settings-rail>.ds-command{background-color:var(--ds-ground);flex:0 0 44px;padding:10px}.ds-settings-rail>.ds-command:last-child{margin-left:auto}.ds-settings-content{border-radius:var(--ds-radius);overscroll-behavior:contain;min-height:0;animation:ds-setting-reveal var(--ds-fast) ease-out;background:#202020;border:1px solid #333;padding:20px;overflow:auto;box-shadow:0 12px 32px #0005}.ds-settings-content>h2{margin:0 0 20px;font-size:15px;font-weight:600}.ds-settings-content p{color:var(--ds-muted);font-size:13px;line-height:1.5}.ds-settings-content>:not(:first-child)+*{margin-top:16px}.ds-settings-content .ds-command-choice legend{font-size:11px}.ds-settings-content .ds-command-choice:first-of-type legend{display:none}.ds-settings-content .ds-measure-loop-fields{flex-wrap:wrap;gap:8px}.ds-settings-content .ds-measure-loop{margin-top:24px}.ds-settings-footer{font-size:11px}@keyframes ds-setting-reveal{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@media (max-width:600px){.ds-settings-dock{width:calc(100vw - 24px);left:12px}.ds-settings-content{padding:16px}.ds-settings-rail{gap:calc(var(--ds-step)/2)}}@media (prefers-reduced-motion:reduce){.ds-settings-content{animation:none}}.ds-settings-rail>.ds-command:hover:not(:disabled),.ds-settings-rail>.ds-command[aria-pressed=true],.ds-settings-rail>.ds-command:active:not(:disabled){background-color:var(--ds-command-selected)}.login-panel{border-radius:var(--ds-radius);background:#202020;border:1px solid #365044;width:min(380px,100%);padding:24px}.login-panel>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.login-panel h2{margin:0;font-size:22px;font-weight:600}.login-panel>p{font-size:13px}.login-panel>.login-provider{margin-top:12px}.login-panel>.ds-dialog-navigation{margin-top:20px}.ds-status[data-compact]{text-align:left;padding:8px 0;font-size:13px}.login-panel{overscroll-behavior:contain;max-height:calc(100dvh - 40px);overflow:auto}.ds-settings-dock[data-align=end]:not([data-inline]){left:auto;right:24px}@media (max-width:600px){.ds-settings-dock[data-align=end]:not([data-inline]){right:12px}}.ds-command-choice[data-presentation=preview]>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ds-command-choice[data-presentation=preview] .ds-command{flex-direction:column;gap:4px;padding:8px;font-size:12px}.ds-command-choice[data-presentation=preview] .ds-command-glyph{width:120px;max-width:100%;height:74px}.ds-command-choice[data-presentation=preview] .ds-command-glyph>svg{width:100%;height:100%}.ds-command-choice[data-presentation=inline]>div{gap:4px;display:flex}.ds-command-choice[data-presentation=inline] .ds-command{min-width:44px;min-height:44px;box-shadow:none;color:#bdbdbd;border-radius:var(--ds-command-radius);background:0 0;border-color:#0000;flex:1;padding:6px 8px;font-size:12px}.ds-command-choice[data-presentation=inline] .ds-glass-surface{display:none}.ds-command-choice[data-presentation=inline] .ds-command[aria-pressed=true]{color:var(--ds-command-selected-ink);background:var(--ds-command-selected);box-shadow:inset 0 0 0 1px #75d3aa2e}.ds-command-choice[data-presentation=inline] .ds-command:hover:not(:disabled){color:#fff;background:var(--ds-command-hover)}.ds-command-choice[data-presentation=inline] .ds-command[aria-pressed=true]:hover:not(:disabled){color:var(--ds-command-selected-ink);background:var(--ds-command-selected)}.ds-visual-preferences{flex-direction:column;align-items:stretch;gap:0;width:340px;min-width:0;max-width:100%;display:flex}.ds-visual-preferences>.ds-command-choice{width:100%;max-width:100%}.ds-visual-secondary{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px;min-width:0;display:grid}.ds-visual-secondary>.ds-command-choice{min-width:0}.ds-visual-secondary>.ds-command-choice:only-child{grid-column:1/-1}.ds-visual-preferences .ds-command-choice[data-presentation=inline]>legend{float:left;text-align:left;max-width:92px;margin:0 8px 0 0;padding-block:12px;font-size:11px}.ds-visual-preferences .ds-command-choice[data-presentation=preview] .ds-command{flex-direction:row;gap:6px;padding:6px}.ds-visual-preferences .ds-command-choice[data-presentation=preview] .ds-command-glyph{flex-shrink:0;width:72px;height:44px}.ds-visual-preferences:has(>.ds-visual-secondary)>.ds-command-choice[data-presentation=preview] button:first-child{border-bottom-right-radius:0;border-bottom-left-radius:0}.ds-visual-secondary>.ds-command-choice[data-presentation=inline]{background:var(--ds-ground);border-radius:0 0 8px 8px;padding:4px}.ds-visual-secondary>.ds-command-choice[data-presentation=inline] .ds-command{padding-inline:3px;font-size:11px}.ds-visual-secondary>.piano-visual-help{justify-self:end;padding-top:4px}.piano-visual-settings{box-sizing:border-box;flex-direction:column;gap:4px;width:max-content;max-width:100%;padding:12px;display:flex;position:relative}.piano-visual-help{width:auto;min-width:0}.piano-visual-help .ds-command-hints{gap:0}.piano-visual-help .ds-command{padding-inline:8px;font-size:11px}.piano-visual-help .ds-navigation-help>[data-help-toggle]{box-shadow:none;color:var(--ds-muted);background:0 0}.piano-visual-help .ds-navigation-help>[data-help-toggle]>.ds-glass-surface{display:none}.piano-visual-help .ds-navigation-help>[data-help-toggle]:is(:hover,[aria-expanded=true]){background:color-mix(in srgb,var(--ds-ink) 6%,transparent);color:var(--ds-ink)}@media (max-width:400px){.ds-visual-preferences .ds-command-choice[data-presentation=preview] .ds-command{flex-direction:column}}.sheet-notation-warning{z-index:6;color:var(--ds-paper-ink);background:var(--ds-paper);position:absolute;bottom:8px;left:12px;right:12px}.sheet-notation-warning>.ds-status{color:inherit}.ds-settings-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ds-settings-heading>h2{margin:0;font-size:15px;font-weight:600}.ds-settings-heading>.ds-command{flex-shrink:0}.transport-preferences{grid-column:1/-1;min-width:0}.piano-visual-settings[data-floating]{z-index:var(--z-modal);top:var(--ds-settings-top,12px);left:var(--ds-settings-left,12px);width:var(--ds-settings-width,348px);max-width:calc(100vw - 48px);max-height:var(--ds-settings-available,calc(100dvh - 24px));overscroll-behavior:contain;box-shadow:none;animation:ds-visual-settings-reveal var(--ds-fast) var(--ds-scene-ease);background:0 0;border:0;border-radius:0;padding:4px;position:fixed;overflow:auto}.piano-visual-settings .ds-command-choice[data-presentation=preview] .ds-command{background:var(--ds-ground)}.piano-visual-help .ds-navigation-help-details{background:var(--ds-ground);border-radius:8px}.piano-visual-settings .ds-command-choice[data-presentation=inline]>legend{margin-left:8px}@keyframes ds-visual-settings-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.piano-visual-settings[data-floating]{animation:none}}@media (max-width:600px){.piano-visual-settings[data-floating]{max-width:calc(100vw - 24px)}}@media (min-width:600px) and (max-height:500px) and (orientation:landscape){.piano-visual-settings .ds-visual-preferences{flex-direction:column;align-items:stretch;gap:0;width:340px}.piano-visual-settings .ds-visual-preferences>.ds-command-choice{width:100%}.piano-visual-settings{padding:3px}.piano-visual-settings .ds-command-choice[data-presentation=preview] .ds-command{min-height:44px;padding:4px}.piano-visual-settings .ds-command-choice[data-presentation=preview] .ds-command-glyph{width:48px;height:32px}.piano-visual-settings .ds-visual-secondary>.ds-command-choice[data-presentation=inline]{padding:0}.piano-visual-settings .ds-visual-secondary>.piano-visual-help{padding-top:0}}.ds-settings-layer[data-modeless]{pointer-events:none}.ds-settings-layer[data-modeless]>.ds-settings-dock{pointer-events:auto}.ds-settings-dock{grid-template-rows:minmax(0,1fr)}.ds-settings-dock:has(>.ds-settings-rail){grid-template-rows:auto minmax(0,1fr)}.ds-settings-dock[data-inline]>.ds-settings-content{box-shadow:none;background:0 0;border:0;border-radius:0;padding:8px 0}.ds-settings-dock[data-inline] .ds-settings-heading{align-items:center;margin-bottom:8px}.ds-settings-dock[data-inline] .ds-settings-heading>h2{margin:0}.visualizer-action-button.start{color:var(--ds-ink)}.sheet-visualizer .visualizer-action-button.start{color:var(--ds-paper-ink)}.ds-navigation-help[data-compact]{align-items:center;gap:4px}.ds-navigation-help[data-compact]>.ds-command-hints{flex-wrap:wrap;flex:1 1 0;min-width:0}.ds-navigation-help[data-compact]>.ds-command-hints:empty{display:none}.ds-navigation-help[data-compact]>.ds-command{flex:none}.ds-navigation-help-details{overscroll-behavior:contain;flex-basis:100%;max-height:min(32dvh,220px);padding:4px;overflow-y:auto}.ds-navigation-help-details>.ds-select-field{max-width:240px}.ds-navigation-help-details .ds-command-hints{flex-wrap:wrap;overflow-x:visible}@media (max-width:600px){.ds-navigation-help[data-compact]>.ds-command-hints .ds-command{padding-inline:6px;font-size:11px}}.ds-discovery-preferences{min-width:0;max-width:640px}.ds-discovery-preferences>ul{margin:16px 0;padding:0;list-style:none}.ds-discovery-preferences li{border-bottom:1px solid var(--ds-line);justify-content:space-between;align-items:center;gap:16px;padding:8px 0;display:flex}.ds-discovery-preferences li>div{min-width:0}.ds-discovery-preferences li strong{overflow-wrap:anywhere;font-size:14px;font-weight:500;display:block}.ds-discovery-preferences li small{color:var(--ds-muted)}.ds-discovery-preferences li>.ds-command{flex:none}.ds-discovery-preferences>h3:focus-visible{outline:2px solid var(--ds-focus);outline-offset:4px}.ds-status[data-inline]{font:inherit;text-align:inherit;padding:0;display:inline}.piano-visual-settings[data-compact]{width:100%;max-height:none;padding:0;overflow:visible}.ds-visual-preferences[data-presentation=toolbar]{flex-direction:row;align-items:center;gap:8px;width:100%}.ds-visual-choices{overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:12px;min-width:0;scroll-padding:4px;display:flex;overflow-x:auto}.ds-visual-choices::-webkit-scrollbar{display:none}.ds-visual-choices .ds-command-choice{flex:none;width:auto;min-width:0;margin:0;padding:0}.ds-visual-choices .ds-command-choice>div{flex-wrap:nowrap}.ds-visual-preferences[data-presentation=toolbar] .ds-visual-choices>.ds-command-choice .ds-command{flex:none;width:60px;min-height:44px;padding:4px}.ds-visual-preferences[data-presentation=toolbar] .ds-visual-choices>.ds-command-choice .ds-command-glyph,.ds-visual-preferences[data-presentation=toolbar] .ds-visual-choices>.ds-command-choice .ds-command-glyph>svg{width:50px;height:34px}.ds-visual-choices .ds-visual-secondary{flex:none;display:block}.ds-visual-choices .ds-visual-secondary>.ds-command-choice{background:0 0;border:0;padding:0}.ds-visual-choices .ds-visual-secondary .ds-command{white-space:nowrap;min-width:60px;min-height:44px;padding-inline:6px}.ds-visual-preferences[data-presentation=toolbar]>.piano-visual-help{flex:none}.piano-visual-settings[data-compact] .ds-navigation-help-details{z-index:var(--z-modal);width:min(320px,100vw - 48px);max-height:28dvh;padding:12px;position:absolute;top:100%;right:0;overflow:auto;box-shadow:0 8px 24px #0005}.transport-actions>.transport-button{min-height:44px}.ds-visual-choices .ds-command:focus-visible{outline-offset:-2px}.transport-meta>.transport-hint:empty{display:none}.transport-time[data-settings-open]{text-align:right;flex-direction:column;gap:4px;min-width:0;max-width:min(24vw,240px);display:flex}.transport-time[data-settings-open]>.transport-title{white-space:nowrap;max-width:100%;display:block}@media (max-width:600px) and (min-height:501px){.transport-time[data-settings-open]{text-align:left;flex-direction:row;align-items:center;gap:12px;width:100%;max-width:100%}.transport-time[data-settings-open]>.transport-title{min-width:0;font-size:inherit;line-height:inherit;flex:1}.transport-time[data-settings-open]>span{flex:none}}.ds-judgment-feedback-scene{background:var(--ds-ground);width:320px;max-width:100%;height:150px;margin-block:16px;position:relative;overflow:hidden}@media (prefers-reduced-motion:reduce){.viewer-particle{display:none}.feedback-layer .note-feedback-light:is(.burst,.holding,.returning){opacity:.3;animation:none}.hit-line-feedback-layer .hit-line-local:is(.burst,.holding,.returning){opacity:.5;animation:none}}@media (max-width:380px){.ds-command-hints[data-presentation=compact]{flex-wrap:nowrap;gap:4px}.ds-command-hints[data-presentation=compact]>.ds-command{flex-direction:column;flex:1 1 0;gap:2px;min-width:44px;min-height:44px;padding:3px 6px;line-height:1.15}.ds-command-hints[data-presentation=compact] .ds-command-glyph{min-width:0;max-width:100%}.ds-command-hints[data-presentation=compact] .ds-input-hint{gap:3px;min-width:0;max-width:100%}.ds-command-hints[data-presentation=compact] .ds-midi-input-glyph{width:28px;height:18px}.ds-command-hints[data-presentation=compact] .ds-input-hint small{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;max-width:52px;overflow:hidden}}@media (max-width:600px) and (min-height:501px){.transport-panel:has(.piano-visual-settings[data-compact]){grid-template-columns:auto minmax(0,1fr)}.transport-panel:has(.piano-visual-settings[data-compact])>.transport-meta{grid-area:2/1/auto/-1}.transport-panel:has(.piano-visual-settings[data-compact])>.transport-time{text-align:right;flex-direction:column;grid-area:1/2;justify-self:end;align-items:flex-end;gap:2px;width:auto}.transport-panel:has(.piano-visual-settings[data-compact]) .transport-time>.transport-title{max-width:100%}.ds-visual-preferences[data-presentation=toolbar]{gap:4px}.ds-visual-choices{flex:1;gap:8px}.ds-visual-preferences[data-presentation=toolbar] .ds-visual-choices>.ds-command-choice .ds-command{width:44px;padding:2px}.ds-visual-preferences[data-presentation=toolbar] .ds-visual-choices>.ds-command-choice .ds-command-glyph,.ds-visual-preferences[data-presentation=toolbar] .ds-visual-choices>.ds-command-choice .ds-command-glyph>svg{width:40px}.ds-visual-choices>.ds-command-choice[data-presentation=preview]>div{gap:4px}.ds-visual-choices .ds-visual-secondary .ds-command{flex:none;width:44px;min-width:44px;padding-inline:2px;font-size:10px}.ds-visual-choices .ds-visual-secondary .ds-command:last-child{width:60px}.ds-visual-choices{gap:4px}}.ds-command[data-size=compact]{min-width:44px;min-height:44px;padding:10px}.ds-command[data-size=large]{width:86px;height:86px;padding:20px}.ds-command[data-size=large] .ds-command-glyph,.ds-command[data-size=large] .ds-command-glyph>svg{width:40px;height:40px}.ds-command[data-size=illustrated]{width:min(210px,68vw);min-height:112px;padding:12px}.ds-command[data-size=illustrated] .ds-command-glyph{width:100%;height:106px}.ds-command[data-size=illustrated] .ds-command-glyph>svg{width:100%;height:100%}.transport-panel{background:var(--ds-panel);border-color:var(--ds-line);border-radius:var(--ds-radius)}:root{--ds-tooltip-layer:1200;--ds-tooltip-width:272px}.ds-command-tooltip{pointer-events:none;z-index:var(--ds-tooltip-layer);width:max-content;max-width:min(var(--ds-tooltip-width),calc(100vw - 16px));box-sizing:border-box;border:1px solid var(--ds-line);border-radius:var(--ds-command-radius);background:var(--ds-panel);color:var(--ds-ink);text-align:left;padding:10px 12px;font-family:inherit;font-size:13px;font-weight:500;line-height:1.45;position:fixed;box-shadow:0 3px 12px #0003}.ds-command-tooltip>span{display:block}.ds-command-tooltip-description{color:var(--ds-muted);margin-top:4px;font-weight:400}.practice-tools-content{gap:calc(var(--ds-step)*2);min-width:0;display:grid}.practice-tools-content .ds-measure-loop{margin-top:var(--ds-step)}.practice-tools-content .ds-measure-loop-fields{gap:var(--ds-step);grid-template-columns:1fr 1fr;display:grid}.practice-tools-content .ds-number-field{min-width:0}.practice-tools-section{gap:var(--ds-step);padding-top:calc(var(--ds-step)*2);border-top:1px solid var(--ds-line);min-width:0;display:grid}.practice-tools-section>h3{margin:0;font-size:13px;font-weight:600}.practice-tools-section p{color:var(--ds-muted);margin:0;font-size:12px;line-height:1.5}#settingsModal .ds-settings-heading{z-index:3;background:var(--ds-panel);padding-block:var(--ds-step);position:sticky;top:0}.ds-path-trail li{flex-shrink:0}.ds-path-trail li:last-child{flex-shrink:1}.ds-path-trail li>button,.ds-path-trail li>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ds-path-trail li>button:has(>svg){justify-content:center;align-items:center;min-width:44px;display:flex}.ds-path-trail li>button>svg{width:20px;height:20px}.ds-command-tooltip[data-compact]{padding:8px 10px;font-size:12px;line-height:1.4}:is(.ds-studio-editor,.catalogue-publication) .ds-command-glyph{width:var(--ds-icon);height:var(--ds-icon)}:is(.ds-studio-editor,.catalogue-publication) .ds-command-glyph>svg{width:var(--ds-icon);height:var(--ds-icon);stroke-width:var(--ds-icon-stroke)}:is(.ds-studio-editor,.catalogue-publication) :is(.ds-command-glyph,.ds-studio-title,.ds-studio-save-status,.ds-studio-part-name,.ds-studio-level,.ds-colour-choice-custom,.ds-transport-bpm,.ds-cover,.catalogue-image-frame,.ds-studio-start) svg{stroke-width:var(--ds-icon-stroke)}:is(.ds-studio-editor,.catalogue-publication) :is(.ds-command-glyph,.ds-studio-title,.ds-studio-save-status,.ds-studio-part-name,.ds-studio-level,.ds-colour-choice-custom,.ds-transport-bpm,.ds-cover,.catalogue-image-frame,.ds-studio-start) svg *{vector-effect:non-scaling-stroke}.catalogue-publication :is(.ds-cover,.catalogue-image-frame)>svg{width:var(--ds-icon-large);height:var(--ds-icon-large)}
