@font-face{font-family:"Source Sans 3";src:url(/fonts/source-sans/SourceSans3VF-Upright.ttf)format("truetype");font-weight:200 900;font-style:normal;font-display:swap}@font-face{font-family:Noto Serif;src:url(/fonts/noto-serif/NotoSerif-Regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Noto Serif;src:url(/fonts/noto-serif/NotoSerif-Bold.ttf)format("truetype");font-weight:700;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#1c1e1a;--surface:#272a24;--surface-muted:#32362d;--text:#f7f4ee;--text-muted:#c9beac;--accent:#b7c5a5;--accent-strong:#cbd6be;--accent-text:#1c1e1a;--song-heading:var(--text);--chord-color:#d0aa86;--border:#41463b;--border-strong:#79826e;--shadow:#00000029;--error-background:#422c27;--error-text:#f6b7a4;--link:#b7c5a5;--link-hover:#d6e2c8;--selection:#3a4032;--serif:"Noto Serif", Georgia, serif;--singer-0:#f6b69f;--singer-1:#9ac7fa;--singer-2:#cdb3f4;--singer-3:#90d5b2;--singer-4:#ead083;--singer-5:#f2acd0;--singer-shared:#cbd5e1;color:var(--text);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;font-family:"Source Sans 3",ui-sans-serif,system-ui,sans-serif;line-height:1.5}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f7f4ee;--surface:#fff;--surface-muted:#eee7db;--text:#302c28;--text-muted:#674c3b;--accent:#3f5745;--accent-strong:#314637;--accent-text:#fff;--song-heading:#302c28;--chord-color:#674c3b;--border:#e1d9cd;--border-strong:#958675;--shadow:#302c2814;--error-background:#f7e7e1;--error-text:#8a3224;--link:#3f5745;--link-hover:#263c2c;--selection:#ede4d6;--singer-0:#a14b30;--singer-1:#30669f;--singer-2:#74519c;--singer-3:#28754b;--singer-4:#81651b;--singer-5:#a03d76;--singer-shared:#475569}*{box-sizing:border-box}body{background:var(--background);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.page{width:min(960px,100% - 32px);margin:0 auto;padding:32px 0 64px}.theme-toggle,.member-switch{min-height:44px;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;display:inline-flex}.theme-toggle{width:44px;padding:8px}.theme-toggle:hover,.member-switch:hover{background:var(--surface-muted)}.app-chrome{align-items:center;gap:12px;margin-left:auto;display:flex}.member-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.member-card{border:1px solid var(--border);background:var(--surface);color:var(--text);text-align:left;border-radius:8px;padding:24px;transition:border-color .16s}.member-card:hover{border-color:var(--accent)}.member-card h2{margin:0}.hero,.player-header{margin-bottom:32px}.eyebrow{color:var(--text-muted);margin:0 0 8px;font-size:1rem;font-weight:500}h1,h2,p{margin-top:0}h1{font-family:var(--serif);letter-spacing:-.04em;margin-bottom:12px;font-size:clamp(2rem,3.6vw,3rem);font-weight:400;line-height:1.2}h2{margin-bottom:6px}.hero p,.player-header p,.stem-row p{color:var(--text-muted)}.stem-row,.transport{border:1px solid var(--border);background:var(--surface);border-radius:8px}.status-message{background:var(--surface-muted);color:var(--text);border-radius:14px;margin:16px 0;padding:14px 16px}.status-message.error{background:var(--error-background);color:var(--error-text)}.back-link{color:var(--link);margin-bottom:24px;font-weight:700;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--link-hover)}.transport{align-items:center;gap:20px;margin-bottom:24px;padding:18px;display:flex}.primary-button,.toggle{border:0;border-radius:6px;font-weight:600}.primary-button{background:var(--accent);min-width:112px;min-height:44px;color:var(--accent-text);padding:10px 20px}.timeline{color:var(--text-muted);flex:1;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.timeline input,.stem-volume input{width:100%;accent-color:var(--accent)}.stem-list{gap:14px;display:grid}.stem-row{flex-direction:column;align-items:stretch;gap:18px;padding:18px;display:flex}.stem-row p{word-break:break-all;margin-bottom:0}.stem-controls,.stem-volume{gap:12px;display:grid}.stem-volume label{color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;font-size:.9rem;font-weight:600;display:flex}.stem-actions{gap:10px;width:100%;display:flex}.toggle{border:1px solid var(--border-strong);background:var(--surface-muted);color:var(--text);flex:1;min-height:44px;padding:10px 16px}.toggle.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--accent-strong)}@media (width<=680px){.transport{flex-direction:column;align-items:stretch}}@media (width>=681px){.stem-row{flex-direction:row;justify-content:space-between;align-items:center}.stem-controls{width:min(360px,46%)}.toggle{flex:1}}.app-header{border-bottom:1px solid var(--border);align-items:center;gap:48px;width:min(1440px,100% - 64px);min-height:106px;margin:0 auto;display:flex}.brand{text-align:center;color:var(--text-muted);flex:none;line-height:1;text-decoration:none;display:grid}.brand span:first-child{font:400 2.45rem/1 var(--serif);letter-spacing:-.07em}.brand span:last-child{letter-spacing:.08em;font:italic 1rem/1.35 Georgia,serif}.app-nav{gap:8px;display:flex}.app-nav a{color:var(--text-muted);border-radius:6px;padding:9px 20px;font-size:1.1rem;text-decoration:none}.app-nav a.active{background:var(--selection);color:var(--text-muted);font-weight:600}.app-nav a:hover{background:var(--surface-muted)}.library-page{padding-top:24px}.library-page input,.library-page select,.library-page textarea{width:100%;font:inherit;color:var(--text);background:var(--background);border:1px solid var(--border-strong);border-radius:8px;min-height:44px;padding:10px 12px}.library-page textarea{resize:vertical}.library-page label{gap:6px;font-weight:600;display:grid}.library-field{gap:6px;display:grid}.chordpro-editor{border:1px solid var(--border-strong);background:var(--background);border-radius:8px;min-width:0;overflow:hidden}.chordpro-editor:focus-within{outline:2px solid var(--accent);outline-offset:3px}.chordpro-editor[data-invalid=true]{border-color:var(--error-text)}.chordpro-editor[data-disabled=true]{opacity:.55}.chordpro-editor-toolbar{border-bottom:1px solid var(--border);background:var(--surface-muted);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 8px;padding:4px 8px;font-size:.8rem;display:flex}.chordpro-editor-toolbar>span{margin-right:auto}.chordpro-editor-toolbar button{min-height:36px;color:inherit;background:0 0;border:1px solid #0000;border-radius:5px;padding:4px 8px}.chordpro-editor-toolbar button:hover:not(:disabled){background:var(--surface-muted);color:var(--text)}.chordpro-editor .cm-editor{color:var(--text);font-size:1rem}.chordpro-editor .cm-editor.cm-focused{outline:none}.chordpro-editor .cm-scroller{min-height:24rem;max-height:70vh;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.65;overflow:auto}.chordpro-editor .cm-content{caret-color:var(--text);padding:12px 0}.chordpro-editor .cm-line{padding:0 12px}.chordpro-editor .cm-content:focus-visible{outline:none}.chordpro-editor .cm-gutters{border-right:1px solid var(--border);background:var(--surface-muted);color:var(--text-muted);font-size:.8em}.chordpro-editor .cm-foldGutter .cm-gutterElement{cursor:pointer;padding:0 8px}.chordpro-editor .cm-cursor{border-left-color:var(--text)}.chordpro-editor .cm-selectionBackground,.chordpro-editor .cm-focused .cm-selectionBackground{background:color-mix(in srgb, var(--accent) 28%, transparent)}.chordpro-editor .chordpro-directive{color:#c4b5fd;font-size:.85em}.chordpro-editor .chordpro-chord{color:var(--chord-color);font-weight:700}:root[data-theme=light] .chordpro-editor .chordpro-directive{color:#6d28d9}.chordpro-editor .cm-foldPlaceholder{border:1px solid var(--border-strong);background:var(--surface-muted);color:var(--accent);cursor:pointer;border-radius:4px;padding:0 6px}.library-page :focus-visible,.app-header :focus-visible{outline:2px solid var(--accent);outline-offset:3px}.library-page [aria-invalid=true]{border-color:var(--error-text)}.library-access{width:fit-content;max-width:100%;color:var(--text-muted);margin:0 0 20px auto;font-size:.9rem}.library-access>summary{cursor:pointer;text-align:right;padding:8px 4px}.library-access-content{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:20px}.library-access p:last-child{margin-bottom:0}.library-login,.library-heading,.library-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.library-login{align-items:end}.library-login label{flex:1;min-width:180px;max-width:340px}.library-login .toggle,.library-actions .toggle{color:var(--text);flex:none}.library-heading{justify-content:space-between;margin-bottom:24px}.library-heading h1{overflow-wrap:anywhere}.library-heading>div{flex:260px;min-width:0}.library-button{text-align:center;text-decoration:none;display:inline-block}.library-search{gap:8px;margin-bottom:24px;display:grid}.library-search input{flex:1;width:auto;min-width:160px}.library-pagination{justify-content:center;margin-top:24px}.library-metadata{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:24px 0;display:grid}.library-metadata dt{color:var(--text-muted)}.library-metadata dd{margin:6px 0 0;font-weight:700}.library-source{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-muted);border-radius:12px;padding:20px;line-height:1.7}.library-notes{white-space:pre-wrap;overflow-wrap:anywhere}.library-transpose{border:1px solid var(--border);border-radius:12px;min-width:0;margin:0;padding:16px}.library-transpose .library-actions{align-items:end;gap:10px}.library-transpose legend{font-weight:700}.library-transpose label{flex:130px;max-width:180px}.library-transpose .toggle{min-height:44px}.library-transpose p{color:var(--text-muted);margin-bottom:0}.library-diagnostics,.library-source-details{overflow-wrap:anywhere}.library-source-details{margin-top:24px}.library-source-details summary{cursor:pointer;min-height:44px}.chord-sheet{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:clamp(12px,3vw,28px);font-size:1.05rem}.chord-sheet-section h3{color:var(--song-heading);overflow-wrap:anywhere;margin:20px 0 8px}.chord-sheet-section:first-child h3{margin-top:0}.chord-sheet-line{flex-wrap:wrap;align-items:start;row-gap:6px;margin:6px 0;display:flex}.chord-sheet-pair{grid-template-columns:minmax(0,1fr);min-width:0;max-width:100%;display:inline-grid}.chord-sheet-chord{min-height:1.5em;color:var(--chord-color);overflow-wrap:anywhere;padding-right:.55ch;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:700}.chord-sheet-chord:empty{padding:0}.chord-sheet-lyric{white-space:pre-wrap;overflow-wrap:anywhere;tab-size:4;min-height:1.5em}.chord-sheet-blank{height:1.5em}.chord-sheet-comment{color:var(--text-muted);white-space:pre-wrap;overflow-wrap:anywhere;font-style:italic}.library-editor fieldset{border:0;gap:18px;min-width:0;margin:0;padding:0;display:grid}.library-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.library-source{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.library-editor details{margin-bottom:8px}.library-editor summary{cursor:pointer}.library-editor .library-actions{margin-top:24px}.library-field-error{color:var(--error-text);font-size:.9rem}.library-conflict-help{color:var(--text-muted);margin-top:24px}.library-text-button{color:var(--link);font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=540px){.library-form-grid{grid-template-columns:1fr}.library-login{flex-direction:column;align-items:stretch}.library-login label{min-width:0;max-width:none}.app-header .app-chrome{gap:8px}}.service-title,.service-occurrence,.service-picker-results li{overflow-wrap:anywhere}.service-picker{border:1px solid var(--border);border-radius:14px;margin:28px 0;padding:18px}.service-picker-results,.service-setlist{padding:0;list-style:none}.service-picker-results{max-height:340px;overflow-y:auto}.service-picker-results li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;display:flex}.service-picker-results li>div{min-width:0}.service-picker-results span{color:var(--text-muted);display:block}.service-picker-results .toggle{color:var(--text);flex:none;min-height:44px}.service-occurrence{border:1px solid var(--border);background:var(--surface);border-radius:14px;margin:16px 0;padding:20px}.service-occurrence h3{margin-top:0}.service-occurrence fieldset{border:0;min-width:0;margin:0;padding:0}.service-order-controls{margin-top:16px}.service-order-controls button{min-height:44px}.service-notice{min-height:1.5em}.service-pdf-export{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:14px;margin:24px 0;padding:18px}.service-pdf-export .toggle{min-height:44px}.service-pdf-columns{gap:6px;max-width:220px;margin-bottom:16px;display:grid}.library-page input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light] .library-page input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.app-nav{flex-wrap:wrap}.presentation-profile-controls{border:1px solid var(--border);border-radius:12px;min-width:0;margin:16px 0;padding:16px}.presentation-profile-controls label{gap:6px;min-width:0;display:grid}.presentation-profile-controls input,.presentation-profile-controls select{width:100%;min-width:0}.presentation-profile-controls input[type=color]{height:44px;padding:4px}.presentation-profile-controls .presentation-checkbox{align-items:center;margin:12px 0;display:flex}.presentation-profile-controls input[type=checkbox]{flex-shrink:0;width:20px;height:20px}.presentation-profile-controls .library-actions{margin-top:12px}.presentation-profile-controls details{margin-top:16px}.presentation-profile-controls summary{cursor:pointer;margin-bottom:16px}.song-pdf-preview{border:1px solid var(--border-strong);background:var(--background);width:min(1100px,100vw - 24px);max-width:none;max-height:calc(100dvh - 24px);color:var(--text);box-shadow:0 20px 80px var(--shadow);border-radius:16px;padding:20px;overflow:auto}.song-pdf-preview::backdrop{background:#000000a6}.song-preview-header,.song-preview-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.song-preview-header h2{margin:0;position:relative}.song-preview-toolbar label{gap:6px;display:grid}.song-preview-toolbar select{min-height:44px}.song-preview-frame{border:1px solid var(--border);background:#fff;flex:auto;width:100%;height:auto;min-height:240px;display:block}@media (width<=540px){.song-pdf-preview{padding:14px}.song-preview-header{align-items:flex-start}}.song-pdf-preview[open]{flex-direction:column;height:min(920px,100dvh - 24px);display:flex}.song-pdf-preview>:not(iframe){flex-shrink:0}.song-preview-header .toggle{flex:none}.song-pdf-preview>p{margin:8px 0}.stem-reading-actions{margin:20px 0}.stem-reading-actions>p{color:var(--text-muted)}.stem-reading-toolbar{flex-wrap:wrap;gap:12px;display:flex}.stem-reading-toolbar .toggle{flex:0 auto}.stem-song-modal{border:1px solid var(--border-strong);background:var(--background);width:min(960px,100vw - 24px);max-width:none;max-height:calc(100dvh - 24px);color:var(--text);box-shadow:0 20px 80px var(--shadow);border-radius:16px;padding:0;overflow:hidden}.stem-song-modal[open]{flex-direction:column;display:flex}.stem-song-modal::backdrop{background:#000000a6}.stem-reading-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:20px;display:flex}.stem-reading-header h2{overflow-wrap:anywhere;min-width:0;margin:0}.stem-reading-header .toggle{flex:none}.stem-song-modal>.stem-reading-toolbar{padding:0 20px 16px}.stem-reading-header,.stem-song-modal>.stem-reading-toolbar{flex-shrink:0}.stem-reading-body{overscroll-behavior:contain;min-height:0;padding:0 20px 20px;overflow-y:auto}.stem-lyrics{font-size:1.2rem;line-height:1.6}@media (width<=540px){.stem-reading-header{padding:14px}.stem-song-modal>.stem-reading-toolbar,.stem-reading-body{padding:0 14px 14px}}.chord-renderer-select{gap:6px;max-width:260px;margin-bottom:16px;display:grid}.chordsheetjs .csjs-row{flex-wrap:wrap;align-items:flex-start;display:flex}.chordsheetjs .csjs-pair{flex-direction:column;min-width:0;max-width:100%;display:flex}.chordsheetjs .chord-sheet-chord:after,.chordsheetjs .chord-sheet-lyric:after{content:"​"}.chordsheetjs .chord-sheet-lyric{overflow-wrap:anywhere}.chordsheetjs.lyrics-only .chord-sheet-chord{display:none}.song-preview-toolbar .chord-renderer-select{margin-bottom:0}.chord-sheet-grid{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:4;margin:0 0 12px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.5}.chord-sheet-grid .chord-sheet-chord{min-height:0;padding:0}.chordsheetjs .chord-sheet-grid .chord-sheet-chord:after{content:none}.chord-voices{width:100%;min-width:0;margin:12px 0}.chord-voices-stack{gap:20px;display:grid}.chord-voice{min-width:0}.chord-voice-label,.chord-voices-label{color:var(--song-heading);overflow-wrap:anywhere;margin:0 0 8px}.chord-sheet-spaced-pair{flex-shrink:0}.singer-reading-controls,.singer-view-buttons,.singer-assignment-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.singer-reading-controls{margin:0 0 16px}.singer-reading-controls .singer-show-assignments{align-items:center;gap:8px;display:flex}.singer-show-assignments input{width:18px;height:18px;accent-color:var(--accent-strong)}.singer-view-buttons .toggle,.singer-assignment-actions .toggle{flex:none}.singer-focus-select{align-items:center;gap:10px;min-width:0;display:flex}.singer-focus-select select{max-width:240px;min-height:44px;font:inherit;color:var(--text);background:var(--background);border:1px solid var(--border-strong);border-radius:8px;padding:10px 12px}.singer-reading-note{color:var(--text-muted)}.singer-lyrics-section{min-width:0}.singer-lyrics-section+.singer-lyrics-section{margin-top:28px}.singer-lyrics-section>h3{color:var(--song-heading);margin:0 0 8px}.singer-part{min-width:0;margin-bottom:12px}.singer-view-plain .singer-part{margin-bottom:0}.singer-part-lyrics{min-width:0}.singer-part-label{overflow-wrap:anywhere;color:var(--text);font:600 .95rem/1.5 "Source Sans 3",system-ui,sans-serif}.singer-lyrics .chord-sheet-line{line-height:1.8}.singer-view-brackets .singer-part.is-assigned{grid-template-columns:minmax(0,max-content) 170px;gap:24px;width:fit-content;max-width:100%;display:grid}.singer-view-brackets .singer-part-label{align-items:center;gap:16px;display:flex}.singer-view-brackets .singer-part-label:before{content:"";border:2px solid var(--singer-color);border-left:0;border-radius:0 4px 4px 0;flex-shrink:0;align-self:stretch;width:12px;min-height:1.8em}.singer-view-blocks .singer-part.is-assigned{border-left:3px solid var(--singer-color);background:color-mix(in srgb, var(--singer-color) 9%, transparent);border-radius:0 8px 8px 0;flex-direction:column;gap:8px;padding:14px 18px;display:flex}.singer-view-blocks .singer-part-label{order:-1}.singer-view-focus .singer-part.is-assigned{border-left:3px solid var(--singer-color);grid-template-columns:140px minmax(0,1fr);gap:20px;padding-left:16px;display:grid}.singer-view-focus .singer-part-label{grid-area:1/1;padding-top:3px}.singer-view-focus .singer-part-lyrics{grid-area:1/2}.singer-view-focus .singer-part.is-other{opacity:.6;border-left-color:var(--border-strong)}.singer-assignment-editor{border-bottom:1px solid var(--border);padding:12px}.singer-assignment-editor>label{margin-bottom:8px;display:block}.singer-assignment-actions input{flex:190px;min-width:0}.singer-assignment-editor p{color:var(--text-muted);margin:8px 0 0;font-size:.9rem}@media (width<=700px){.singer-view-brackets .singer-part.is-assigned{grid-template-columns:minmax(0,max-content) 105px;gap:12px}.singer-view-brackets .singer-part-label{gap:8px}.singer-view-focus .singer-part.is-assigned{grid-template-columns:90px minmax(0,1fr);gap:10px;padding-left:10px}.singer-focus-select{flex-wrap:wrap}}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:not(:disabled):hover,a.primary-button:hover{filter:brightness(.96)}svg{vertical-align:middle;flex-shrink:0}.skip-link{z-index:100;color:var(--accent-text);background:var(--accent);padding:12px 20px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:12px}.text-action{color:var(--link);font:inherit;background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:8px 0;text-decoration:none;display:inline-flex}.text-action:hover{text-decoration:underline}.muted,.empty-copy{color:var(--text-muted)}.catalog-page{width:min(1440px,100% - 64px);padding-top:10px}.catalog-page>.library-access{margin-bottom:10px}.catalog-workspace{grid-template-columns:minmax(0,46fr) minmax(0,54fr);min-height:calc(100dvh - 180px);display:grid}.catalog-list{min-width:0;padding:22px 32px 40px 0}.catalog-list-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;display:flex}.catalog-list-heading h1{margin:0;font-size:clamp(2rem,3vw,2.7rem)}.catalog-list-heading .text-action{font-size:.95rem}.catalog-search{position:relative}.catalog-search>svg{color:var(--text-muted);pointer-events:none;position:absolute;top:14px;left:14px}.catalog-search input{background:var(--surface);border-color:var(--border-strong);width:100%;padding:12px 12px 12px 46px;font-weight:400}.catalog-search input::placeholder{color:var(--text-muted);opacity:.85}.catalog-filters{align-items:center;gap:8px;margin:18px 0 24px;display:flex}.catalog-filters button{min-height:40px;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:6px;padding:8px 14px}.catalog-filters button[aria-pressed=true]{background:var(--selection);color:var(--text)}.catalog-filters>span{color:var(--text-muted);margin-left:auto;font-size:.85rem}.catalog-rows{display:grid}.catalog-song{text-align:left;border:0;border-bottom:1px solid var(--border);width:100%;min-height:97px;color:var(--text);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) 34px 112px;align-items:center;gap:14px;padding:18px 16px;display:grid;position:relative}.catalog-song:hover{background:var(--surface-muted)}.catalog-song.is-selected{background:var(--selection);border-bottom-color:#0000;border-radius:6px}.catalog-song.is-selected:before{content:"";background:var(--accent);border-radius:3px;width:4px;position:absolute;top:0;bottom:0;left:0}.catalog-song-name{gap:4px;min-width:0;display:grid}.catalog-song-name strong{font:400 clamp(1.1rem, 1.6vw, 1.4rem)/1.3 var(--serif);letter-spacing:-.03em;overflow-wrap:anywhere}.catalog-song-name>span{color:var(--text-muted);font-size:.97rem}.catalog-song-key{font:400 1.1rem var(--serif);text-align:center}.catalog-song-resource{color:var(--text-muted);align-items:center;gap:9px;font-size:.87rem;display:flex}.catalog-song-resource svg{width:19px;height:19px}.catalog-detail{background:var(--surface);border-left:1px solid var(--border);border-radius:0 8px 8px 0;min-width:0;padding:44px clamp(24px,3.5vw,56px) 56px}.catalog-detail-heading h2{font:400 clamp(2rem, 3.5vw, 3.4rem)/1.18 var(--serif);letter-spacing:-.055em;overflow-wrap:anywhere;margin:0 0 12px}.catalog-detail-heading h2:focus{outline:none}.catalog-artist{font:400 1.3rem/1.4 var(--serif);color:var(--text-muted);margin-bottom:0}.edit-song-link{margin-top:8px;font-size:.9rem}.catalog-metadata{flex-wrap:wrap;gap:10px 22px;margin:32px 0;display:flex}.catalog-metadata>div{align-items:baseline;gap:10px;display:flex}.catalog-metadata>div+div{border-left:1px solid var(--border);padding-left:22px}.catalog-metadata dt{color:var(--text-muted)}.catalog-metadata dd{margin:0;font-weight:600}.song-tabs{border-bottom:1px solid var(--border);gap:12px;margin-bottom:16px;display:flex}.song-tabs button{min-height:48px;color:var(--text-muted);background:0 0;border:0;flex:1;padding:14px 4px;font-size:1.08rem;position:relative}.song-tabs button[aria-pressed=true]{color:var(--text);font-weight:600}.song-tabs button[aria-pressed=true]:after{content:"";background:var(--accent);border-radius:3px;height:3px;position:absolute;bottom:-1px;left:0;right:0}.song-resource{border-bottom:1px solid var(--border);grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:18px;padding:28px 0;display:grid}.song-resource>svg{width:30px;height:32px;color:var(--text-muted)}.song-resource h3,.catalog-notes h3,.catalog-detail-content>h3{font:400 1.3rem/1.4 var(--serif);letter-spacing:-.025em;margin:0 0 6px}.song-resource p{color:var(--text-muted);margin:0;font-size:.95rem}.song-resource .toggle{color:var(--accent);background:0 0}.song-resource .primary-button,.song-resource .toggle{white-space:nowrap;padding:10px 16px;font-size:.95rem}.catalog-notes{margin-top:34px}.catalog-notes p{margin-top:16px;line-height:1.7}.catalog-detail-content>section{padding-top:16px}.recording-resource{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;display:flex}.recording-resource h4{margin:0 0 6px;font-size:1.1rem}.recording-resource p{color:var(--text-muted);margin:0}.recording-resource .library-button{align-items:center;gap:8px;display:inline-flex}.recording-note{color:var(--text-muted);margin-top:24px;font-size:.9rem;line-height:1.6}.catalog-placeholder{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.catalog-placeholder svg{width:40px;height:40px}.catalog-empty,.catalog-loading{color:var(--text-muted);padding:28px 16px}.catalog-empty h2{font:400 1.4rem/1.4 var(--serif);color:var(--text)}.catalog-mobile-back{display:none}.catalog-detail .chord-sheet{border:0;border-radius:0;padding:16px 0}.catalog-detail .library-transpose{border-radius:6px;padding:12px}.catalog-detail .library-transpose .library-actions{gap:8px}.catalog-detail .library-transpose label{flex-basis:100px}.catalog-detail .chord-sheet-chord{font-family:inherit}.player-header h1{margin-bottom:12px}.player-header .eyebrow{font:400 1.2rem/1.5 var(--serif);margin-top:12px}.player-meta{color:var(--text-muted)}.player-page .transport{z-index:2;border-color:var(--border-strong);box-shadow:0 6px 24px var(--shadow);position:sticky;top:12px}.player-page .stem-list{border-top:1px solid var(--border);gap:0}.player-page .stem-row{border:0;border-bottom:1px solid var(--border);background:0 0;border-radius:0;padding:24px 8px}.player-page .stem-row h2{font:400 1.3rem/1.4 var(--serif)}.player-page .stem-controls{grid-template-columns:1fr auto;align-items:center;gap:24px;width:min(440px,55%)}.player-page .stem-actions .toggle{padding:8px 14px}.player-page .stem-actions .toggle[aria-pressed=true]{background:var(--accent);color:var(--accent-text)}.player-page .timeline{font-variant-numeric:tabular-nums;min-width:0}.player-page input[type=range]{min-height:32px}.library-heading h1,.service-title{font-family:var(--serif)}.service-list{border-top:1px solid var(--border);display:grid}.service-card{border-bottom:1px solid var(--border);align-items:center;gap:28px;padding:28px 16px;text-decoration:none;display:flex}.service-card:hover{background:var(--selection)}.service-date{text-align:center;min-width:68px;color:var(--text-muted);display:grid}.service-date strong{font:400 2rem/1.2 var(--serif)}.service-date span{font-size:.9rem}.service-card h2{font:400 1.7rem/1.3 var(--serif);letter-spacing:-.03em}.service-card p{color:var(--text-muted);margin:6px 0 0}.service-card>span:last-child{color:var(--link);margin-left:auto}.service-occurrence{box-shadow:none;border-radius:6px}.service-occurrence h3{font:400 1.3rem/1.5 var(--serif)}.service-occurrence h3 a{text-underline-offset:4px;text-decoration-thickness:1px}.service-exports{border-top:1px solid var(--border);margin-top:40px;padding-top:24px}.service-exports>summary{cursor:pointer;font:400 1.4rem/1.4 var(--serif);padding:12px 0}.service-introduction{max-width:72ch;color:var(--text-muted)}.member-select-page h1{max-width:22ch}.member-card h2{font:400 1.4rem var(--serif)}@media (width>=1100px){.catalog-list{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;align-self:start;max-height:100dvh;position:sticky;top:0;overflow-y:auto}}@media (width<=1100px){.app-header{gap:24px}.catalog-list{padding-right:20px}.catalog-song{grid-template-columns:minmax(0,1fr) 28px;gap:6px 12px;padding:16px 12px}.catalog-song-resource{grid-column:1/-1}.song-resource{grid-template-columns:28px minmax(0,1fr)}.song-resource>.toggle,.song-resource>.primary-button{grid-column:2;justify-self:start}.catalog-detail{padding:32px 24px}}@media (width<=760px){.app-header{grid-template-columns:1fr auto;gap:12px;width:calc(100% - 32px);min-height:128px;padding:16px 0 10px;display:grid}.brand{justify-self:start}.brand span:first-child{font-size:2rem}.brand span:last-child{font-size:.85rem}.app-header .app-chrome{grid-area:1/2;gap:2px}.member-change{display:none}.app-nav{grid-area:2/1/auto/-1}.app-nav a{text-align:center;flex:1;padding:8px 18px}.catalog-page{width:calc(100% - 32px);padding-top:4px}.catalog-workspace{min-height:65dvh;display:block}.catalog-list{padding:12px 0 28px}.catalog-list-heading{margin-bottom:22px}.catalog-song{grid-template-columns:minmax(0,1fr) 30px 100px;gap:10px;min-height:96px}.catalog-song-resource{grid-column:auto;font-size:.8rem}.catalog-song-name strong{font-size:1.12rem}.catalog-workspace>.catalog-detail,.catalog-workspace.has-selection>.catalog-list{display:none}.catalog-workspace.has-selection>.catalog-detail{border:0;border-radius:8px;padding:16px 20px 32px;display:block}.catalog-mobile-back{margin:0 0 24px;display:inline-flex}.catalog-detail-heading h2{font-size:2.2rem}.catalog-artist{font-size:1.1rem}.catalog-metadata{margin:24px 0 12px;font-size:.95rem}.catalog-metadata>div+div{padding-left:12px}.song-tabs{gap:0}.song-tabs button{font-size:1rem}.song-resource{gap:12px;padding:24px 0}.song-resource h3{font-size:1.15rem}.player-page .stem-controls{grid-template-columns:minmax(0,1fr) auto;gap:16px;width:100%}.player-page .stem-row{flex-direction:column;align-items:stretch;gap:12px}.player-page .stem-actions{gap:6px}.player-page .stem-actions .toggle{padding:8px 10px;font-size:.9rem}.service-card{gap:16px;padding:24px 8px}.service-card h2{font-size:1.35rem}.service-card>span:last-child{display:none}}@media (width<=380px){.catalog-song{grid-template-columns:minmax(0,1fr) 28px}.catalog-song-resource{grid-column:1/-1}.catalog-filters{gap:4px}.catalog-filters button{padding:8px 10px}.catalog-workspace.has-selection>.catalog-detail{padding:12px}.catalog-metadata{gap:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
