.library{min-height:100vh}.library.dragging{outline-offset:-8px;outline:3px dashed #7a1f1f}.library-heading{color:#5b4e40;font-size:1rem}.file-button{cursor:pointer;background:#fff;border:1px solid #b9a88f;border-radius:4px;padding:.3rem .6rem;position:relative}.file-button input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.file-button:focus-within{outline:2px solid #7a1f1f}.library-list{padding:.5rem 1rem 1rem;font-family:-apple-system,system-ui,sans-serif;font-size:.9rem}.library-list .empty{color:#5b4e40}.library-list table{border-collapse:collapse;background:#fffaf2;border-radius:6px;width:100%;box-shadow:0 1px 3px #0000001f}.library-list th,.library-list td{text-align:left;vertical-align:top;border-bottom:1px solid #eadfcc;padding:.55rem .7rem}.library-list th{color:#5b4e40;font-size:.8rem;font-weight:600}.title-link{font:inherit;color:#7a1f1f;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-family:TeX Gyre Schola,Century Schoolbook,Georgia,serif;font-size:1.05rem}.library-list .subtitle,.library-list .slug{color:#8a7c6c;font-size:.75rem}.library-list .arr{margin-right:.5rem;display:inline-block}.library-list .arr small{color:#8a7c6c}.library-list .actions{white-space:nowrap}.library-list .actions button{font:inherit;margin:0 .25rem .25rem 0;padding:.3rem .55rem;font-size:.8rem}.library-list .danger{color:#7a1f1f}.set-lists-note{color:#8a7c6c;margin-top:1rem;font-size:.75rem}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=700px){.library-list thead{display:none}.library-list tr{border-bottom:1px solid #eadfcc;grid-template-columns:1fr auto;padding:.4rem 0;display:grid}.library-list td{border:0;padding:.15rem .7rem}.library-list td:first-child,.library-list td.actions{grid-column:1/-1}}.score{--fingering:#8c0d0d;--pedal-marks:#8c0d0d;--letters:#1a3860;--cue:#999;--font-text:"Harp Termes", "Harp Signs", "Harp Symbols", Times, serif;--font-titles:var(--font-text);--font-lyrics:var(--font-text);--font-chords:"Harp Heros", "Harp Signs", "Harp Symbols", Helvetica, Arial, sans-serif;--font-fingering:var(--font-text);flex-direction:column;align-items:center;gap:1.25rem;padding:1rem 0 3rem;display:flex}.score-sheet{width:min(100%,60rem);margin:0}.score-page{aspect-ratio:210/280;background:#fff;box-shadow:0 1px 4px #00000040}.score-page>svg{width:100%;height:auto;display:block}.score-page-number{text-align:center;color:#6b5d4f;margin-top:.4rem;font-size:.85rem}.score-page svg text{font-family:var(--font-text)}.score-page svg .pgHead text,.score-page svg .page-footer .page-number{font-family:var(--font-titles)}.score-page svg .verse text{font-family:var(--font-lyrics)}.score-page svg .harm text,.score-page svg .page-footer .footer{font-family:var(--font-chords)}.score-page svg .fing text{font-family:var(--font-fingering)}.score.tapping .score-page svg g.measure{cursor:pointer}.score.tapping .score-page svg g.measure:hover{fill:#7a1f1f}.score-page svg g.staff.cue,.score-page svg g.staff.cue *{color:var(--cue);fill:var(--cue)}.score-page svg g.staff.cue .verse,.score-page svg g.staff.cue .verse *{color:#000;fill:#000}.score-page svg .fingering,.score-page svg .placing,.score-page svg .slide,.score-page svg .release{color:var(--fingering);fill:var(--fingering);stroke:var(--fingering)}.score-page svg .placing path,.score-page svg .placing polyline,.score-page svg .slide path{stroke:var(--fingering)}.score-page svg .pedal-letter,.score-page svg .pedal-letter *{color:var(--pedal-marks);fill:var(--pedal-marks)}.score-page svg .top-letter,.score-page svg .top-letter *{color:var(--letters);fill:var(--letters)}.score-page svg .pedal-diagram text{fill:#0000}.score-clean .score-page svg .fingering,.score-clean .score-page svg .placing,.score-clean .score-page svg .slide,.score-clean .score-page svg .release,.score-clean .score-page svg .pedal-letter,.score-clean .score-page svg .top-letter{opacity:0}.score-loading,.score-error{text-align:center;padding:3rem 1rem}.score-error{color:#8c0d0d}.grid-view{--zoom:1;flex-direction:column;align-items:center;padding:1rem 0 3rem;display:flex;overflow-x:auto}.grid-pages{flex-direction:column;align-items:center;gap:1.25rem;width:100%;display:flex}.grid-sheet{width:min(calc(100% * var(--zoom)), calc(60rem * var(--zoom)));max-width:none;margin:0}.grid-page{aspect-ratio:210/280;background:#fff;box-shadow:0 1px 4px #00000040}.grid-page>svg{width:100%;height:auto;display:block}.grid-checks{box-sizing:border-box;background:#fffaf2;border:1px solid #e2d6c3;border-radius:6px;width:min(100%,60rem);margin-top:1.5rem;padding:.75rem 1rem;font-family:-apple-system,system-ui,sans-serif;font-size:.85rem}.grid-checks h2{color:#7a1f1f;margin:0 0 .4rem;font-size:.95rem;font-weight:600}.grid-checks ul{margin:0;padding-left:1.2rem}.grid-checks li.warning{color:#8c0d0d}.grid-checks li.note{color:#5b4e40}.view-switch button,.toolbar .zoom input{font:inherit}.view-switch button{background:#fff;border:1px solid #b9a88f}.view-switch button:first-child{border-radius:4px 0 0 4px}.view-switch button:last-child{border-radius:0 4px 4px 0}.view-switch button+button{border-left:0}.view-switch button[aria-pressed=true]{color:#fff;background:#7a1f1f;border-color:#7a1f1f}.workspace{grid-template-columns:minmax(0,1fr) 19rem;align-items:start;display:grid}.pages-area{min-width:0}.layout-panel{box-sizing:border-box;color:#3b3229;background:#fffaf2;border:1px solid #e2d6c3;border-radius:6px;max-height:calc(100vh - 3.6rem);margin:1rem .75rem 1rem 0;padding:.6rem .8rem 1rem;font-family:-apple-system,system-ui,sans-serif;font-size:.8rem;position:sticky;top:3.2rem;overflow-y:auto}.layout-panel h2{color:#7a1f1f;margin:0 0 .2rem;font-size:1rem;font-weight:600}.layout-panel details{border-top:1px solid #eadfcd;padding:.3rem 0}.layout-panel summary{cursor:pointer;padding:.2rem 0;font-weight:600}.lc-where,.lc-note{color:#7a6c5b;margin:0 0 .4rem;font-size:.75rem}.lc-row{grid-template-columns:7.2rem minmax(0,1fr);align-items:center;gap:.15rem .4rem;margin:.25rem 0;display:grid}.lc-label{align-items:center;gap:.2rem;display:flex}.lc-changed .lc-label{font-weight:600}.lc-input{align-items:center;gap:.35rem;min-width:0;display:flex}.lc-input input[type=range]{flex:1;min-width:0}.lc-input input[type=number]{width:4.5rem}.lc-input select,.lc-input input,.lc-actions button,.lc-breaks button{font:inherit}.lc-value{text-align:right;font-variant-numeric:tabular-nums;color:#5b4e40;min-width:3.4rem}.lc-revert{color:#7a1f1f;cursor:pointer;background:0 0;border:0;padding:0 .15rem;font-size:.85rem}.lc-warning{color:#8c0d0d;grid-column:1/-1;margin:0;font-size:.75rem}.lc-pages{margin:.4rem 0 0;padding-left:1.2rem}.lc-pages li.lc-turn-warn{color:#8c0d0d}.lc-actions{border-top:1px solid #eadfcd;flex-direction:column;gap:.4rem;padding-top:.6rem;display:flex}.lc-actions button{cursor:pointer;background:#fff;border:1px solid #b9a88f;border-radius:4px;padding:.35rem .5rem}.lc-actions button.lc-quiet{color:#7a1f1f;text-align:left;background:0 0;border-color:#0000}.lc-notice{color:#2f5d2f;margin:0}.lc-history{color:#7a6c5b;margin:0;font-size:.72rem}.grid-view.tapping [data-bar]{cursor:pointer}@media (width<=760px){.workspace{grid-template-columns:minmax(0,1fr)}.layout-panel{max-height:none;margin:0 .75rem 2rem;position:static}}@page{size:210mm 280mm;margin:0}@media print{html,body,.app{margin:0;padding:0;background:#fff!important}.toolbar,.status,.core-status,.save-errors,.kept-notice,.banner,.layout-panel,.grid-checks,.score-page-number{display:none!important}.workspace{display:block}.score,.grid-view,.grid-pages{gap:0;padding:0;display:block}.page-sheet{break-after:page;break-inside:avoid;height:280mm;margin:0;width:210mm!important}.page-sheet:last-child{break-after:auto}.score-page,.grid-page{box-shadow:none;width:210mm;height:280mm}.score-page>svg,.grid-page>svg{width:210mm!important;height:280mm!important}}@font-face{font-family:Harp Termes;src:url(/fonts/harp-termes-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Harp Termes;src:url(/fonts/harp-termes-bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Harp Termes;src:url(/fonts/harp-termes-italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Harp Termes;src:url(/fonts/harp-termes-bolditalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Harp Heros;src:url(/fonts/harp-heros-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Harp Heros;src:url(/fonts/harp-heros-bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Harp Heros;src:url(/fonts/harp-heros-italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Harp Heros;src:url(/fonts/harp-heros-bolditalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Harp Schola;src:url(/fonts/harp-schola-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Harp Schola;src:url(/fonts/harp-schola-bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Harp Schola;src:url(/fonts/harp-schola-italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Harp Schola;src:url(/fonts/harp-schola-bolditalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Harp Signs;src:url(/fonts/harp-signs.ttf)format("truetype");font-display:block}@font-face{font-family:Harp Symbols;src:url(/fonts/harp-symbols.ttf)format("truetype");font-display:block}svg text{font-kerning:none;font-synthesis:none}svg text.footer{white-space:pre}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#222;background:#f6efe4;font-family:TeX Gyre Schola,Century Schoolbook,Georgia,serif}body{margin:0}.app{min-height:100vh}.toolbar{z-index:2;background:#fffaf2;flex-wrap:wrap;align-items:center;gap:.6rem 1.25rem;padding:.6rem 1rem;font-family:-apple-system,system-ui,sans-serif;font-size:.9rem;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #00000026}.toolbar h1{color:#7a1f1f;margin:0 .5rem 0 0;font-family:TeX Gyre Schola,Century Schoolbook,Georgia,serif;font-size:1.2rem;font-weight:400}.toolbar label{align-items:center;gap:.4rem;display:flex}.toolbar select,.toolbar button{font:inherit;padding:.3rem .5rem}.edition button{background:#fff;border:1px solid #b9a88f}.edition button:first-child{border-radius:4px 0 0 4px}.edition button:last-child{border-left:0;border-radius:0 4px 4px 0}.edition button[aria-pressed=true]{color:#fff;background:#7a1f1f;border-color:#7a1f1f}.status,.core-status{color:#5b4e40;margin:.5rem 1rem 0;font-family:-apple-system,system-ui,sans-serif;font-size:.85rem}.core-status{color:#8a7c6c;font-size:.75rem}.toolbar .back{background:#fff;border:1px solid #b9a88f;border-radius:4px}.version-tag{color:#5b4e40;vertical-align:middle;background:#efe3cf;border-radius:3px;margin-left:.5rem;padding:.05rem .4rem;font-family:-apple-system,system-ui,sans-serif;font-size:.75rem}.file-buttons{gap:.35rem;display:flex}.unsaved{color:#7a1f1f;font-weight:600}.status-error{color:#7a1f1f}.save-errors,.kept-notice,.banner,.messages .message{border-radius:6px;margin:.6rem 1rem 0;padding:.6rem .9rem;font-family:-apple-system,system-ui,sans-serif;font-size:.85rem}.save-errors,.message-error{color:#5a1a12;background:#fbe9e7;border:1px solid #d9a39b}.kept-notice,.message-info{color:#24401a;background:#eef5ea;border:1px solid #a9c79c}.save-errors p,.kept-notice p,.banner p,.message p{margin:0 0 .4rem}.save-errors ul,.message ul{margin:0 0 .4rem;padding-left:1.2rem}.save-errors code{color:#8a5a50;font-size:.75rem}.kept-notice button,.save-errors button,.banner button{font:inherit;margin-right:.4rem;padding:.25rem .6rem}.banner-warning{color:#4d3b00;background:#fff4d6;border:1px solid #e0c46c}.banner-hint{color:#1d2a40;background:#eef2f8;border:1px solid #a7b6cf}
