.score-reader-page{--score-chrome:2.75rem;--score-gutter:1.25rem;--score-paper:#fffdfa;overflow:hidden}[data-theme="dark"] .score-reader-page{--score-paper:#1c1c1c}[data-theme="cappuccino"] .score-reader-page{--score-paper:#5e4230}@media (prefers-color-scheme:dark){:root:not([data-theme]) .score-reader-page{--score-paper:#1c1c1c}}.score-reader-bar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;gap:1rem;padding:0 1.25rem;height:var(--score-chrome);background:var(--bg);border-bottom:1px solid var(--border);font-family:var(--font-sans);font-size:0.825rem;transition:opacity 0.4s ease,transform 0.4s ease}.score-reader-bar-left{flex:0 1 auto;min-width:0}.score-reader-movements{display:flex;align-items:center;gap:0.25rem;flex:1 1 auto;overflow-x:auto;scrollbar-width:none}.score-reader-movements::-webkit-scrollbar{display:none}.score-reader-bar-right{display:flex;align-items:center;gap:0.75rem;flex:0 0 auto;margin-left:auto}.score-reader-back{display:block;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted);text-decoration:none;white-space:nowrap}.score-reader-back:hover{color:var(--text)}.score-reader-mvt{background:none;border:none;color:var(--text-muted);font-family:var(--font-sans);font-size:0.8rem;padding:0.2rem 0.5rem;cursor:pointer;white-space:nowrap;border-radius:3px;transition:background 0.15s,color 0.15s}.score-reader-mvt:hover,.score-reader-mvt.is-active{background:var(--bg-subtle);color:var(--text)}.score-reader-pdf{color:var(--text-muted);text-decoration:none;font-size:0.8rem}.score-reader-pdf:hover{color:var(--text)}.score-reader-zoom{display:flex;align-items:center;border:1px solid var(--border);border-radius:3px;overflow:hidden}.score-reader-zoom-btn{background:none;border:none;color:var(--text-muted);font-family:var(--font-sans);font-size:0.75rem;line-height:1;padding:0.35rem 0.5rem;cursor:pointer;transition:background 0.15s,color 0.15s}.score-reader-zoom-btn+.score-reader-zoom-btn{border-left:1px solid var(--border)}.score-reader-zoom-btn:hover:not(:disabled){background:var(--bg-subtle);color:var(--text)}.score-reader-zoom-btn:disabled{opacity:0.35;cursor:default}.score-reader-zoom-mode{min-width:3.6em;font-variant-caps:all-small-caps;letter-spacing:0.06em;font-variant-numeric:tabular-nums}.score-reader-stage{position:fixed;inset:0;background:var(--bg)}.score-reader-viewport{position:absolute;top:var(--score-chrome);left:0;right:0;bottom:0;overflow:auto;display:flex;padding:var(--score-gutter);overscroll-behavior:contain}.score-page{margin:auto;flex:0 0 auto;position:relative;--ar:var(--score-aspect-num,1.294);aspect-ratio:var(--ar) / 1;--score-fit-width:min(100%,calc((100vh - var(--score-chrome) - 2*var(--score-gutter))*var(--ar)));width:var(--score-fit-width);color:var(--text);fill:currentColor}.score-page[data-orient="portrait"]{--score-fit-width:100%;background:var(--score-paper);border:1px solid var(--border);box-shadow:0 1px 2px rgba(0,0,0,0.05),0 10px 28px rgba(0,0,0,0.06)}.js-ready .score-page{width:var(--score-page-width,var(--score-fit-width))}.score-page svg [fill="#000000" i],.score-page svg [fill="#000" i],.score-page svg [fill="black" i]{fill:currentColor}.score-page svg [stroke="#000000" i],.score-page svg [stroke="#000" i],.score-page svg [stroke="black" i]{stroke:currentColor}.score-page svg [fill="#ffffff" i],.score-page svg [fill="#fff" i],.score-page svg [fill="white" i]{fill:var(--score-paper)}.score-page svg{display:block;width:100%;height:100%}.score-page-fallback{display:block;width:100%;height:auto}.score-page.is-loading{opacity:0.35;transition:opacity 0.2s ease 0.15s}.score-page-error{display:flex;align-items:center;justify-content:center;height:100%;margin:0;padding:1rem;text-align:center;font-family:var(--font-sans);font-size:0.85rem;color:var(--text-muted)}.score-reader-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:50;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--border);border-radius:50%;color:var(--text-muted);font-size:1.15rem;cursor:pointer;transition:color 0.15s,border-color 0.15s,opacity 0.4s ease}.score-reader-nav:hover:not(:disabled){color:var(--text);border-color:var(--text-muted)}.score-reader-nav:disabled{opacity:0.25;cursor:default}.score-reader-prev{left:0.85rem}.score-reader-next{right:0.85rem}.score-folio{position:absolute;bottom:0.7rem;left:50%;transform:translateX(-50%);z-index:50;font-family:var(--font-sans);font-size:0.72rem;font-variant-caps:all-small-caps;font-variant-numeric:tabular-nums;letter-spacing:0.07em;color:var(--text-faint);pointer-events:none;transition:opacity 0.4s ease}.score-gutter{position:absolute;left:0;top:0;bottom:0;z-index:2;width:var(--score-gutter-w,0px);overflow:hidden;background:var(--score-paper);border-right:1px solid var(--border);box-shadow:3px 0 8px rgba(0,0,0,0.07);pointer-events:none;opacity:0;transition:opacity 0.15s ease}.score-gutter.is-visible{opacity:1}.score-gutter-inner{width:100%;height:100%}.score-gutter-inner svg{display:block;width:100%;height:100%}.is-panning .score-folio{background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:0.1rem 0.55rem}.score-reader-page.is-idle .score-reader-bar{opacity:0;transform:translateY(-100%);pointer-events:none}.score-reader-page.is-idle .score-reader-nav,.score-reader-page.is-idle .score-folio{opacity:0;pointer-events:none}@media (max-width:640px){.score-reader-page{--score-gutter:0.5rem}.score-reader-nav{display:none}.score-reader-zoom{display:none}}@media (prefers-reduced-motion:reduce){.score-reader-bar,.score-reader-nav,.score-folio,.score-gutter,.score-page.is-loading{transition:none}.score-reader-page.is-idle .score-reader-bar{transform:none}}.score-page-missing{max-width:28rem;margin:20vh auto 0;padding:0 var(--score-gutter);font-family:var(--font-serif);font-size:1.1rem;line-height:1.6;text-align:center;color:var(--text-muted)}.score-page-missing a{display:block;margin-top:0.75rem;color:var(--text);text-decoration:underline;text-decoration-color:var(--border-muted);text-decoration-thickness:0.1em;text-underline-offset:0.2em}.score-page-missing a:hover{text-decoration-color:var(--text)}.score-follow{display:flex;align-items:center;gap:0.6rem;margin-right:0.5rem}.score-follow-play{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--bg);color:var(--text);cursor:pointer;transition:background 0.15s,border-color 0.15s}.score-follow-play:hover{background:var(--bg-subtle);border-color:var(--text-muted)}.score-follow-play svg{width:0.9rem;height:0.9rem;fill:currentColor}.score-follow-icon-pause,.score-follow-play.is-playing .score-follow-icon-play{display:none}.score-follow-play.is-playing .score-follow-icon-pause{display:block}.score-follow-seek{width:10rem;accent-color:var(--text-muted)}.score-follow-time{font-family:var(--font-sans);font-size:0.78rem;font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap}.score-follow-label{font-family:var(--font-serif);font-size:0.88rem;font-style:italic;color:var(--text-muted);white-space:nowrap}.score-follow.is-failed{opacity:0.5}@media (max-width:1100px){.score-follow-label{display:none}}@media (max-width:760px){.score-follow-seek{display:none}}@media (max-width:540px){.score-follow-time{display:none}}.score-follow-layer{position:absolute;inset:0;z-index:1;pointer-events:none}.score-follow-mark{position:absolute}.score-follow-layer[data-style="bar"] .score-follow-mark{border-radius:2px;background:color-mix(in srgb,var(--text) 7%,transparent);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--text) 40%,transparent);transition:left 0.12s ease,top 0.12s ease,width 0.12s ease,height 0.12s ease}.score-follow-layer[data-style="cursor"] .score-follow-mark{width:0;margin-left:-1px;border-left:2px solid color-mix(in srgb,var(--text) 55%,transparent)}@media (prefers-reduced-motion:reduce){.score-follow-layer[data-style="bar"] .score-follow-mark{transition:none}}.score-follow-return{position:fixed;left:50%;bottom:3.2rem;z-index:120;padding:0.45rem 1.1rem;border:1px solid var(--text);background:var(--bg);color:var(--text);font-family:var(--font-serif);font-size:0.95rem;cursor:pointer;transform:translateX(-50%);box-shadow:0 2px 10px color-mix(in srgb,var(--text) 12%,transparent)}.score-follow-return:hover,.score-follow-return:focus-visible{background:var(--text);color:var(--bg)}.score-follow-return[hidden]{display:none}