:root{color:#232629;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f5f6f0;font-family:system-ui,sans-serif;line-height:1.5}*{box-sizing:border-box}html{min-height:100%}body{min-height:100%;margin:0}button,textarea{font:inherit}button,a{color:inherit}a{text-decoration:none}code,pre,textarea{font-family:ui-monospace,monospace}main{width:min(1440px,100vw - 32px);margin:0 auto;padding:18px 0 48px}.audio-controls{color:#244e50;background:#f8faf7;border:1px solid #dce5df;border-radius:14px;gap:12px;min-width:0;margin-bottom:14px;padding:12px;font-size:13px;display:grid}.audio-controls button,.audio-controls label,.audio-controls input{-webkit-tap-highlight-color:transparent}.control-button{color:#315b5d;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d3dfd9;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-width:44px;min-height:44px;padding:0 12px;font-size:13px;font-weight:600;line-height:1.3;display:inline-flex}.control-button svg{flex:none}.control-icon-button{width:44px;padding:0}.audio-controls button:focus-visible,.audio-controls input:focus-visible,.notation-selector input:focus-visible+span{outline-offset:3px;outline:2px solid #176e6e}.audio-controls button:disabled{opacity:.45;cursor:default}.playback-transport{grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.playback-toggle{color:#fff;background:#176e6e;border-color:#176e6e;min-width:88px}.playback-toggle[aria-busy=true]{cursor:wait}.playback-progress,.playback-speed,.playback-transpose{min-width:0}.control-field-heading{justify-content:space-between;align-items:center;gap:8px;min-height:20px;font-weight:600;display:flex}.audio-controls output,.practice-summary{font-variant-numeric:tabular-nums;white-space:nowrap}.control-field-heading output{color:#527373;margin-left:auto;font-size:12px;font-weight:500}.audio-controls input[type=range]{appearance:none;accent-color:#176e6e;cursor:pointer;touch-action:pan-y;background:0 0;width:100%;min-width:0;height:44px;margin:0;display:block}.audio-controls input[type=range]::-webkit-slider-runnable-track{background:#d9e4dd;border-radius:4px;height:4px}.audio-controls input[type=range]::-moz-range-track{background:#d9e4dd;border-radius:4px;height:4px}.audio-controls input[type=range]::-webkit-slider-thumb{appearance:none;background:#176e6e;border:3px solid #fff;border-radius:50%;width:18px;height:18px;margin-top:-7px;box-shadow:0 0 0 1px #176e6e}.audio-controls input[type=range]::-moz-range-thumb{background:#176e6e;border:3px solid #fff;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 1px #176e6e}.score-control-actions{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.notation-selector{background:#e8eeea;border:0;border-radius:12px;flex:none;gap:2px;min-width:0;margin:0 auto 0 0;padding:3px;display:inline-flex}.notation-selector label{cursor:pointer;min-width:52px;min-height:44px;display:flex;position:relative}.notation-selector input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.notation-selector span{color:#58706c;white-space:nowrap;border-radius:9px;place-items:center;width:100%;padding:0 12px;font-weight:600;display:grid}.notation-selector input:checked+span{color:#176e6e;background:#fff;box-shadow:0 1px 3px #244e501a}.notation-selector input:disabled+span{opacity:.4;cursor:not-allowed}.practice-toggle[aria-expanded=true]{color:#176e6e;background:#e8f1eb;border-color:#a8c6bb}.practice-summary{color:#627b74;align-items:center;gap:5px;font-size:12px;font-weight:500;display:inline-flex}.practice-changed{background:#176e6e;border-radius:50%;width:5px;height:5px}.practice-chevron{display:flex}.practice-toggle[aria-expanded=true] .practice-chevron{transform:rotate(180deg)}.practice-panel{border-top:1px solid #dce5df;gap:8px;padding-top:8px;display:grid}.practice-panel[hidden]{display:none}.practice-panel-heading{justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:600;display:flex}.control-reset{color:#176e6e;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:44px;padding:0 8px;font-size:12px}.practice-settings-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.practice-settings-grid>div,.playback-metronome{background:#fff;border:1px solid #e0e7e1;border-radius:10px;padding:12px}.speed-presets{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.speed-presets button{color:#5b7470;cursor:pointer;background:#f8faf7;border:1px solid #e1e8e2;border-radius:8px;min-width:44px;min-height:44px;padding:0;font-size:12px}.speed-presets button[aria-pressed=true]{color:#176e6e;background:#eaf3ec;border-color:#b4d0c5;font-weight:600}.transpose-stepper{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:6px;margin-top:12px;display:grid}.transpose-stepper output{text-align:center;font-weight:600}.playback-metronome{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-width:0;min-height:68px;display:flex}.control-field-title,.playback-metronome .control-hint{display:block}.control-field-title{font-weight:600}.control-hint{color:#7a8980;font-size:11px;font-weight:400}.playback-metronome .control-hint{margin-top:4px}.audio-controls .switch-control input:checked+.switch-track{background:#176e6e}@media (hover:hover){.audio-controls button:hover:not(:disabled){background:#edf4ee;border-color:#91b4a5}.audio-controls .playback-toggle:hover:not(:disabled){background:#125a5b;border-color:#125a5b}}@container (width<=680px){.practice-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.playback-speed{grid-column:1/-1}}@container (width<=480px){.audio-controls{gap:10px;padding:10px}.playback-transport{gap:8px}.playback-toggle{min-width:80px;padding:0 10px}.playback-progress .control-field-heading>span,.practice-toggle>svg,.practice-summary,.practice-chevron,.settings-toggle>span{display:none}.score-control-actions{gap:6px}.notation-selector{padding:2px}.notation-selector label{min-width:44px}.notation-selector span,.practice-toggle{padding:0 8px}.settings-toggle{width:44px;padding:0}.practice-settings-grid{grid-template-columns:minmax(0,1fr)}}@container (width<=270px){.playback-toggle{width:44px;min-width:44px;padding:0}.playback-toggle>span{display:none}}.top-nav{border-bottom:1px solid #d9dbd4;justify-content:space-between;align-items:center;gap:24px;min-height:58px;display:flex}.brand-mark{color:#163f45;letter-spacing:0;align-items:center;gap:9px;font-size:1.05rem;font-weight:800;display:inline-flex}.brand-mark img{flex:none;display:block}.top-nav nav{gap:8px;display:flex}.top-nav nav a,.primary-link,.secondary-link,.toolbar-actions button,.book-toc button{background:#fff;border:1px solid #cfd3ca;border-radius:6px}.top-nav nav a{padding:8px 12px}.top-nav nav a.active{color:#174f54;border-color:#2f6f73}.hero{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:stretch;gap:32px;min-height:calc(100vh - 124px);padding:48px 0 24px;display:grid}.hero-copy{flex-direction:column;justify-content:center;max-width:820px;display:flex}.eyebrow{color:#2f6f73;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}h1,h2,h3{margin:0;line-height:1.15}.hero h1{max-width:900px;margin-top:14px;font-size:clamp(2.6rem,5vw,5.6rem)}.hero p{color:#5c6468;max-width:760px;font-size:1.05rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.primary-link,.secondary-link,.toolbar-actions button{cursor:pointer;padding:10px 14px}.primary-link{color:#fff;background:#2f6f73;border-color:#2f6f73;font-weight:700}.secondary-link{color:#174f54;font-weight:700}.hero-summary{align-content:center;gap:14px;display:grid}.hero-summary section,.score-card,.book-toc,.markdown-panel{background:#fff;border:1px solid #d9dbd4;border-radius:8px}.hero-summary section{padding:22px}.hero-summary h2{font-size:1.1rem}.hero-summary p{color:#62696c;margin:8px 0 0}.editor-container{border:1px solid #cfd3ca;border-radius:8px;flex-direction:column;gap:0;width:100%;min-width:0;margin:16px 0;display:flex;overflow:hidden}.editor-header{justify-content:space-between;align-items:baseline;padding:9px 12px;display:flex}.editor-header-left{align-items:center;gap:12px;display:flex}.editor-header-left h1,.editor-header-left h2{margin:0;font-size:1rem}.editor-header-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.editor-save-status{color:#5c6468;margin:0;padding:0 12px 10px;font-size:.8rem}.editor-mode-note{color:#285b5c;white-space:nowrap;border:1px solid #b8cfca;border-radius:10px;padding:3px 8px;font-size:12px;font-weight:600}.editor-share-error{color:#9a3a25;margin:0 12px 10px}.editor-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"render source""render-diagnostics source-diagnostics";align-items:stretch;gap:0 10px;min-width:0;padding:0 10px 10px;display:grid}.editor-body>.source-editor{grid-area:source}.editor-body>.score-card{grid-area:render}.converter-dialog-overlay{z-index:20;background:#1f232661;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.converter-dialog{background:#fffef9;border:1px solid #cfd3ca;border-radius:6px;flex-direction:column;width:min(920px,100%);height:80vh;display:flex;overflow:hidden;box-shadow:0 20px 48px #1f23263d}.converter-dialog-header,.converter-dialog-actions{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.converter-dialog-header{border-bottom:1px solid #d9e3df}.converter-dialog-header h2{margin:0;font-size:1.15rem}.converter-dialog-actions{border-top:1px solid #d9e3df;justify-content:flex-end}.converter-result{resize:none;flex:1;min-height:360px}.format-switch{border:1px solid #b8cfca;border-radius:4px;display:flex;overflow:hidden}.format-switch button{color:#285b5c;cursor:pointer;background:#fffef9;border:0;border-right:1px solid #b8cfca;min-height:30px;padding:0 10px}.format-switch button:last-child{border-right:0}.format-switch button.is-active{color:#fff;background:#176e6e}.embedded-editor{width:100%;min-width:0;margin-top:18px}.pane-toolbar{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.pane-toolbar h2{margin-top:4px;font-size:1.25rem}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.toolbar-actions button:hover{border-color:#2f6f73}.source-editor{background:#fbfcf8;border:1px solid #cfd3ca;border-radius:6px;flex:auto;width:100%;min-height:0;display:flex;overflow:hidden}textarea{tab-size:2;min-height:unset;resize:none;color:#1f2326;white-space:pre;background:0 0;border:0;margin:0;padding:14px;font-size:.95rem;line-height:1.65}textarea::selection{background:#cfe8e5}.embedded-editor .source-editor,.embedded-editor textarea{min-height:unset}.diagnostics{overflow-wrap:anywhere;color:#9a3a25;margin:12px 0 0;padding-left:20px}.editor-source-diagnostics{grid-area:source-diagnostics}.editor-render-diagnostics{grid-area:render-diagnostics}.score-card{padding:14px;overflow:hidden;container-type:inline-size}.score-card.compact{padding:10px}.score-library{gap:20px;display:grid}.library-toolbar{justify-content:space-between;align-items:end;gap:20px;padding:28px 20px 4px;display:flex}.library-toolbar h1{margin-top:4px;font-size:1.6rem}.score-search{width:min(440px,100%)}.score-search input{color:#1f2326;background:#fffef9;border:1px solid #b8cfca;border-radius:4px;width:100%;min-height:38px;padding:7px 10px}.score-search input:focus{outline-offset:1px;outline:2px solid #1683ff}.search-empty{color:#5c6468;margin:0;padding:20px}.score-reader-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 12px;display:flex}.score-reader-navigation,.score-reader-tools{gap:8px;display:flex}.score-reader-actions .action-button{border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:0 12px;font-weight:500;display:inline-flex}.score-reader-tools{margin-left:auto}.score-reader-actions .action-button.is-disabled{color:#9aa2a6;cursor:default;background:#f4f5f1;border-color:#d9dbd4;align-items:center;display:inline-flex}.score-reader{min-height:360px}.score-reader-diagnostics{margin-bottom:16px}.score-list{grid-template-columns:repeat(auto-fill,minmax(260px,280px));justify-content:start;gap:12px;display:grid}.score-list .score-card{flex-direction:column;justify-content:space-between;max-width:280px;height:160px;padding:16px;display:flex;overflow:hidden}.score-list .score-card:hover,.score-list .score-card.is-local-card:hover{border-color:#2f6f73}.score-list .score-card.is-error-score{background:#fff5f4;border-color:#bd3026}.score-list .score-card.is-error-score:hover{background:#ffecea;border-color:#98241d}.score-list .score-card.is-lyric-score{background:#fff9e8;border-color:#b07a00}.score-list .score-card.is-lyric-score:hover{background:#fff3cf;border-color:#896000}.score-list .score-card>div:first-child{flex-direction:column;flex:1;justify-content:center;display:flex;overflow:hidden}.score-list h3{text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:1.12rem;overflow:hidden}.score-list p{color:#5c6468;text-align:center;margin:8px 0 0}.score-notation-tags{justify-content:center;gap:4px;margin-top:12px;display:flex;overflow:hidden}.score-card-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.score-card-footer-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.score-card-marker{background:#1683ff}.score-card.is-local-card{cursor:pointer;position:relative}.score-card-delete{box-sizing:border-box;color:#9a3a25;cursor:pointer;background:#fffef9;border:1px solid #d8b4ae;border-radius:4px;min-height:26px;padding:0 8px;font-size:12px;font-weight:600;line-height:1;position:absolute;top:10px;right:10px}.score-card-delete:hover{background:#ffecea;border-color:#98241d}.score-composer{color:#174f54;font-weight:700}.score-tags{flex-shrink:0;gap:4px;display:flex}.score-tag{color:#fff;background:#2f6f73;border-radius:10px;padding:2px 7px;font-size:.72rem;font-weight:600;display:inline-block}.score-notation-tags .score-tag{text-overflow:ellipsis;white-space:nowrap;color:#285b5c;background:#dcebe6;flex:0 auto;min-width:0;overflow:hidden}.score-paper{min-height:unset;background:#fff;border-radius:6px;overflow:auto}.score-paper[aria-busy=true]{min-height:1.5rem}.score-paper[aria-busy=true]:empty{color:#59616d;place-items:center;font-size:.9rem;line-height:1.5rem;display:grid}.score-paper[data-render-phase=loading-library]:empty:before{content:"正在加载渲染库"}.score-paper[data-render-phase=initializing-engine]:empty:before{content:"正在初始化五线谱引擎"}.score-paper[data-render-phase=loading-fonts]:empty:before{content:"正在准备简谱字体"}.score-paper[data-render-phase=waiting-layout]:empty:before{content:"等待排版乐谱"}.score-paper[data-render-phase=layout]:empty:before{content:"正在排版乐谱"}.score-paper svg{width:100%;max-width:100%;height:auto;display:block}.score-paper[data-render-mode=paged] .score-page-sheet{aspect-ratio:210/297;box-sizing:border-box;background:#fff;width:100%;margin:0 auto 14px;position:relative;overflow:hidden;box-shadow:0 2px 8px #1f232638}.score-paper[data-render-mode=paged] .score-page-sheet svg{object-fit:contain;object-position:center top;width:90.4762%;height:93.266%;box-shadow:none;background:#fff;position:absolute;inset:3.367% 4.7619%}.score-paper[data-notation=numbered][data-render-mode=paged] .score-page-sheet{aspect-ratio:auto}.score-paper[data-notation=numbered][data-render-mode=paged] .score-page-sheet svg{width:100%;height:auto;position:relative;inset:auto}.score-paper[data-render-mode=paged]{background:#dfe3dd;padding:16px 20px}.score-paper .measure-playback-highlight,.score-paper .measure-cursor-highlight{pointer-events:none;display:none}.score-paper .measure-error-highlight{fill:#e9a7a0;opacity:.28;pointer-events:none}.score-paper .is-playing-measure>.measure-playback-highlight{fill:#f0c66b;opacity:.18;display:block}.score-paper .is-cursor-active-measure>.measure-cursor-highlight{fill:#1683ff;opacity:.1;display:block}.score-paper[data-notation=numbered] .measure-cursor-highlight{display:none!important}.score-paper .is-cursor-active,.score-paper .is-cursor-active *{fill:#1683ff;stroke:#1683ff}.score-paper .is-cursor-active .stem path{stroke:#1683ff!important}.score-paper .is-playing,.score-paper .is-playing *{fill:#d95f2a;stroke:#d95f2a}.score-paper[data-notation=numbered] :is(.is-playing,.is-cursor-active) text,.score-paper[data-notation=numbered] text:is(.is-playing,.is-cursor-active){stroke:none}.score-paper[data-notation=numbered] :is(.is-playing,.is-cursor-active) [fill=none]{fill:none}.score-paper[data-notation=numbered] :is(.is-playing,.is-cursor-active) [stroke=none]{stroke:none}.score-paper .is-playing.stem path,.score-paper .is-playing .stem path{stroke:#d95f2a!important}.renderer-settings-dialog{color:#1f2326;background:#fffef9;border:1px solid #cfd3ca;border-radius:6px;width:min(440px,100vw - 32px);padding:0;box-shadow:0 20px 48px #1f23263d}.renderer-settings-dialog::backdrop{background:#1f23263d}.renderer-settings-header{border-bottom:1px solid #d9e3df;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.renderer-settings-header h2{margin:0;font-size:1.05rem}.renderer-settings-header .action-button{min-height:44px}.renderer-settings-body{gap:18px;padding:18px;display:grid}.renderer-settings-switch{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.renderer-settings-choice{justify-content:space-between;align-items:center;gap:10px;display:flex}.switch-control{flex-shrink:0;display:inline-flex;position:relative}.switch-control input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.switch-track{background:#d7e2dd;border-radius:11px;width:40px;height:22px;transition:background .15s}.switch-control input:checked+.switch-track{background:#1683ff}.switch-control input:focus-visible+.switch-track{outline-offset:2px;outline:2px solid #1683ff}.switch-control input:disabled{cursor:not-allowed}.switch-control input:disabled+.switch-track{opacity:.52}.switch-thumb{background:#fff;border-radius:50%;width:18px;height:18px;margin:2px;transition:transform .15s;display:block;box-shadow:0 1px 2px #1f23263d}.switch-control input:checked+.switch-track .switch-thumb{transform:translate(18px)}.notation-mode-choice{align-items:center;gap:12px;display:flex}.notation-mode-choice label{color:#285b5c;cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.notation-mode-choice input[type=radio]{appearance:auto;accent-color:#1683ff;cursor:pointer;width:auto;height:auto}.renderer-settings-row{grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.action-button{color:#285b5c;cursor:pointer;box-sizing:border-box;background:#fffef9;border:1px solid #b8cfca;border-radius:4px;min-height:36px;padding:0 14px;font-size:13px;font-weight:700;line-height:1}a.action-button{align-items:center;text-decoration:none;display:inline-flex}.action-button:hover{background:#dcebe6;border-color:#2f6f73}.export-dialog{color:#1f2326;background:#fffef9;border:1px solid #cfd3ca;border-radius:6px;width:min(1240px,100vw - 32px);height:min(860px,100vh - 32px);padding:0;box-shadow:0 20px 48px #1f23263d}.export-dialog::backdrop{background:#1f232661}.export-dialog form{grid-template-rows:auto minmax(0,1fr) auto;height:100%;display:grid}.export-header{border-bottom:1px solid #d9e3df;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.export-dialog h2{margin:0;font-size:1.15rem}.export-header span{color:#5c6468;font-size:13px}.export-content{grid-template-columns:220px minmax(0,1fr);min-height:0;display:grid}.export-settings{border-right:1px solid #d9e3df;align-content:start;gap:20px;padding:20px;display:grid}.export-width-summary{color:#5c6468;margin:0;font-size:13px}.export-width-summary output{color:#285b5c;font-weight:600}.export-dialog fieldset{border:0;gap:16px;margin:0;padding:0;display:grid}.export-dialog legend{color:#5c6468;margin-bottom:8px;font-size:13px}.export-dialog label{color:#285b5c;align-items:center;gap:6px;font-size:14px;display:inline-flex}.export-actions{border-top:1px solid #d9e3df;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.export-preview{background:#f0f3ee;min-width:0;min-height:0;padding:16px;overflow:auto}.export-preview-paper{min-width:100%}.export-preview-paper>div{gap:12px;display:grid}.export-preview svg{background:#fff;width:100%;min-width:0;height:auto;display:block;box-shadow:0 1px 3px #1f23261f}.export-preview-page{aspect-ratio:210/297;box-sizing:border-box;background:#fff;position:relative;overflow:hidden;box-shadow:0 1px 3px #1f23261f}.export-preview-page svg{object-fit:contain;object-position:center top;width:90.4762%;height:93.266%;box-shadow:none;background:#fff;position:absolute;inset:3.367% 4.7619%}.export-actions button{color:#285b5c;cursor:pointer;background:#fffef9;border:1px solid #b8cfca;border-radius:4px;min-height:34px;padding:0 12px}.export-actions button[type=submit]{color:#fff;background:#176e6e;border-color:#176e6e}.export-actions button:disabled{cursor:wait;opacity:.6}.renderer-settings-row input{appearance:none;accent-color:#176e6e;cursor:pointer;background:0 0;width:100%;min-width:0;height:44px;margin:0}.renderer-settings-row input::-webkit-slider-runnable-track{background:#d7e2dd;border-radius:2px;height:4px}.renderer-settings-row input::-moz-range-track{background:#d7e2dd;border-radius:2px;height:4px}.renderer-settings-row input::-webkit-slider-thumb{appearance:none;background:#176e6e;border:2px solid #fff;border-radius:50%;width:18px;height:18px;margin-top:-7px;box-shadow:0 0 0 1px #176e6e}.renderer-settings-row input::-moz-range-thumb{background:#176e6e;border:2px solid #fff;border-radius:50%;width:14px;height:14px}.renderer-settings-row output{color:#285b5c;font-variant-numeric:tabular-nums;text-align:right;min-width:52px;font-size:13px}@media (width<=720px){.editor-body{grid-template-columns:1fr}.library-toolbar{align-items:stretch;padding-top:20px;display:grid}.score-search{width:100%}.export-dialog{width:calc(100vw - 16px);height:calc(100vh - 16px)}.export-content{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.export-settings{border-bottom:1px solid #d9e3df;border-right:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px 16px}}.render-message{color:#9a3a25}.markdown-panel pre{color:#f6f1e8;background:#202428;border-radius:6px;padding:14px;overflow:auto}.markdown-panel :not(pre)>code{color:#164c50;overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#e9f3f1;border:1px solid #b9d4d0;border-radius:3px;padding:1px 4px;font-size:.9em;font-weight:600;line-height:1.45}.book-layout{grid-template-columns:minmax(220px,270px) minmax(0,1fr);align-items:start;gap:18px;margin-top:18px;display:grid}.book-toc{max-height:calc(100vh - 36px);padding:16px;position:sticky;top:18px;overflow:auto}.doc-toc-toggle{background:#d95f2ad1;display:none}.toc-tree{gap:14px;margin-top:12px;display:grid}.toc-group{gap:6px;display:grid}.book-toc button{text-align:left;cursor:pointer;gap:4px;width:100%;display:grid}.toc-root{padding:10px}.toc-root:hover{border-color:#2f6f73}.toc-group.active .toc-root{color:#174f54;border-color:#2f6f73}.toc-root span{color:#697276;font-size:.82rem}.toc-children{border-left:1px solid #d9dbd4;gap:4px;margin-left:10px;padding-left:10px;display:grid}.toc-section{gap:4px;display:grid}.toc-section-heading{color:#42494c;background:0 0;border-color:#0000;padding:7px 8px;font-size:.94rem}.toc-section-heading:hover{background:#fff;border-color:#cfd3ca}.toc-section.active .toc-section-heading{color:#174f54;background:#eef7f6;border-color:#2f6f73;font-weight:700}.toc-subsections{border-left:1px solid #d9dbd4;gap:4px;margin-left:10px;padding-left:10px;display:grid}.toc-leaf{color:#42494c;background:0 0;border-color:#0000;padding:6px 8px;font-size:.92rem}.toc-leaf:hover{background:#fff;border-color:#cfd3ca}.toc-leaf.active{color:#174f54;background:#eef7f6;border-color:#2f6f73;font-weight:700}.markdown-panel{padding:28px;overflow:hidden}.document-notation-controls{justify-content:flex-end;margin-bottom:18px;display:flex}.document-notation-toggle{color:#285b5c;white-space:nowrap;align-items:center;gap:7px;font-size:13px;display:inline-flex}.markdown-panel h1,.markdown-panel h2,.markdown-panel h3,.markdown-panel h4{margin-top:1.4em}.markdown-panel h1:first-child,.markdown-panel h2:first-child,.markdown-panel h3:first-child{margin-top:0}.markdown-panel p,.markdown-panel li{color:#42494c}.markdown-panel a{color:#1683ff;text-decoration:underline}.markdown-panel a:hover{color:#0d6efd}.markdown-panel table{border-collapse:collapse;width:100%;margin:16px 0}.markdown-panel th,.markdown-panel td{text-align:left;border:1px solid #d9dbd4;padding:8px 10px}.markdown-panel blockquote{background:#f0f5f2;border-left:4px solid #2f6f73;margin:16px 0;padding:10px 14px}.doc-toc-toggle{z-index:21;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #ffffff94;border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.2rem;font-weight:700;position:fixed;bottom:16px;right:16px}@media (width<=720px){.book-layout{margin-top:0;display:block}.book-toc{z-index:20;width:min(320px,100vw - 32px);max-height:calc(100vh - 148px);display:none;position:fixed;bottom:72px;right:16px;box-shadow:0 12px 28px #1f23262e}.book-toc.is-open{display:block}.doc-toc-toggle{display:grid}}@media (width<=1100px){.hero,.editor-body{grid-template-columns:1fr}.editor-body{grid-template-areas:"render""render-diagnostics""source""source-diagnostics";align-items:start}.editor-body>.source-editor{width:100%;max-height:calc(133.333vw - 85.3333px)}.editor-body>.score-card{margin-top:10px}.source-editor{flex:0 auto;max-height:calc(133.333vw - 85.3333px)}}@media (width<=720px){main{width:min(100vw - 18px,1440px)}.pane-toolbar{flex-direction:column;align-items:stretch}.toolbar-actions{justify-content:flex-start}.hero{padding-top:28px}.markdown-panel{padding:14px}.editor-header{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.editor-header-right{margin-left:0}.editor-body{padding:8px}}.page-status{color:#42494c;text-align:center;place-content:center;justify-items:center;gap:12px;min-height:100vh;padding:24px;display:grid}.page-error h1,.page-error p{margin:0}.source-editor .cm-editor{background:#fbfcf8;width:100%;min-width:0;height:100%;font-size:15px;line-height:1.7}.source-editor .cm-scroller{font-family:ui-monospace,monospace;overflow:auto}.source-editor .cm-content{min-height:320px;padding:12px 0}.source-editor .cm-gutters{color:#6b756e;background:#f0f2eb;border-right:1px solid #dce1d7}.diagnostic-link{text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;padding:4px;text-decoration:underline}.editor-tabs{display:none}.resizable-editor{grid-template-areas:"render divider source""render-diagnostics divider source-diagnostics";align-items:start;column-gap:4px}.editor-divider{cursor:col-resize;touch-action:none;background:#e5e9df;border-radius:4px;grid-area:divider;align-self:stretch;min-height:420px}.editor-divider:focus-visible{outline:2px solid #2f6f73}.embedded-editor .editor-tabs,.embedded-editor .editor-divider{display:none}.embedded-editor .resizable-editor{flex-direction:column;gap:8px;padding:0;display:flex}.embedded-editor .cm-content{min-height:0}@media (width<=720px){.editor-tabs{gap:8px;padding:4px 8px;display:flex}.editor-tabs button{background:#f0f2eb;border:1px solid #d3d9ce;border-radius:5px;flex:1;min-height:44px}.editor-tabs [aria-selected=true]{background:#dcece6;border-color:#2f6f73}.resizable-editor{flex-direction:column;align-items:stretch;display:flex}.editor-divider{display:none}.editor-header{flex-wrap:wrap;display:flex}.editor-header-right{flex-wrap:wrap}}.score-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.score-list .score-card{max-width:none}.library-filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.library-filters select{background:#fff;border:1px solid #cfd3ca;border-radius:5px;min-height:44px}.recent-edits{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}.recent-edits a{padding:8px}.score-list.is-compact-list{grid-template-columns:1fr}.score-list.is-compact-list .score-card{flex-direction:row;align-items:center;gap:16px;height:auto;min-height:80px}.home-sample{max-width:900px;margin:32px auto}.document-example>.action-button{margin:8px 0 20px;display:inline-flex}.practice-range-controls{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.practice-range-controls label{align-items:center;gap:4px;min-height:44px;display:inline-flex}.embedded-editor .resizable-editor{align-items:stretch}.practice-range-controls button{min-height:44px}.editor-source-pane{grid-area:source;min-width:0;height:65vh;min-height:420px;max-height:75vh;display:flex}.editor-preview-pane{grid-area:render;min-width:0}.embedded-editor .editor-source-pane{height:auto;min-height:0;max-height:260px}.embedded-editor .editor-preview-pane{order:-1}.score-paper[data-reading-fit=true][data-render-mode=paged]{background:#fff;padding:0}.score-paper[data-reading-fit=true] .score-page-sheet{aspect-ratio:auto;box-shadow:none}.score-paper[data-reading-fit=true] .score-page-sheet svg{width:100%;height:auto;position:relative;inset:auto}@media (width<=720px){.editor-source-pane{height:60vh}.editor-container .resizable-editor[data-mobile-pane=source]>.editor-preview-pane,.editor-container .resizable-editor[data-mobile-pane=preview]>.editor-source-pane{display:none}}.export-error{color:#9a3a25;margin:0;padding:8px 16px}
