:root{--bg:#f4ede2;--bg-2:#e6d3bf;--ink:#2a1f15;--muted:#6f5f52;--card:#fbf5ec;--card-2:#fffaf2;--accent:#c86c1a;--accent-2:#2f6f6a;--accent-3:#5b3b2a;--ring:#e3b277;--shadow:0 14px 28px #2a1f1524;--radius:14px}html[data-theme=sand]{--bg:#f4ede2;--bg-2:#e6d3bf;--ink:#2a1f15;--muted:#6f5f52;--card:#fbf5ec;--card-2:#fffaf2;--accent:#c86c1a;--accent-2:#2f6f6a;--accent-3:#5b3b2a;--ring:#e3b277;--shadow:0 14px 28px #2a1f1524}html[data-theme=midnight]{--bg:#1d1c1a;--bg-2:#2a2622;--ink:#f2ede6;--muted:#b3aaa0;--card:#2b2723;--card-2:#322e29;--accent:#f0a641;--accent-2:#66c4b5;--accent-3:#f2ede6;--ring:#f0c27c;--shadow:0 16px 28px #0006}html[data-theme=noir]{--bg:#101214;--bg-2:#191c1f;--ink:#f3f1ed;--muted:#b2a99f;--card:#1c1f22;--card-2:#22252a;--accent:#e38a4a;--accent-2:#5fb2a6;--accent-3:#f3f1ed;--ring:#e8b072;--shadow:0 18px 32px #0000008c}html[data-theme=midnight] .input,html[data-theme=noir] .input,html[data-theme=midnight] .spec-input,html[data-theme=noir] .spec-input,html[data-theme=midnight] .line-input:focus,html[data-theme=noir] .line-input:focus{color:var(--ink);background:#ffffff0d;border-color:#f2ede624}html[data-theme=midnight] .line:hover,html[data-theme=noir] .line:hover{background:#ffffff0a}html[data-theme=midnight] .line.active,html[data-theme=noir] .line.active{background:#ffffff12;box-shadow:inset 0 0 0 1px #66c4b540}html[data-theme=midnight] .line.locked:not(.active),html[data-theme=noir] .line.locked:not(.active){opacity:.9;background:#ffffff0a;box-shadow:inset 3px 0 #f0a64180}html[data-theme=midnight] .line.generating,html[data-theme=noir] .line.generating{background:#0c0f12d9}html[data-theme=midnight] .line.generating:before,html[data-theme=noir] .line.generating:before{background:repeating-linear-gradient(135deg,#66c4b5e6 0 6px,#66c4b540 6px 12px) 0 0/24px 24px;animation:1.1s linear infinite marchingBorderDark}html[data-theme=midnight] .line-panel,html[data-theme=noir] .line-panel{background:#ffffff0d;border-color:#f2ede61f}html[data-theme=midnight] .icon-btn,html[data-theme=noir] .icon-btn{color:var(--accent-2);background:#ffffff0a;border-color:#f2ede624}html[data-theme=midnight] .btn.secondary,html[data-theme=noir] .btn.secondary{color:var(--ink);border-color:#f2ede633}html[data-theme=midnight] .note-card,html[data-theme=noir] .note-card{background:#ffffff0a;border-left-color:#f0a64199}html[data-theme=midnight] .note-card.empty,html[data-theme=noir] .note-card.empty{background:#ffffff08;border-left-color:#f2ede633}html[data-theme=midnight] .list-item,html[data-theme=noir] .list-item{background:#ffffff0a;border-color:#f2ede61f}html[data-theme=midnight] .attachment-thumb,html[data-theme=noir] .attachment-thumb{background:#ffffff0f;border-color:#f2ede61f}html[data-theme=midnight] .theme-switch,html[data-theme=noir] .theme-switch{background:#ffffff0a;border-color:#f2ede61f}html[data-theme=midnight] .section-edit:hover,html[data-theme=noir] .section-edit:hover{color:var(--accent-2);background:#66c4b529}html[data-theme=midnight] .settings-nav-item:hover,html[data-theme=noir] .settings-nav-item:hover{background:#66c4b51f}html[data-theme=midnight] .settings-nav-item.active,html[data-theme=noir] .settings-nav-item.active{background:#66c4b52e;border-color:#66c4b566}html[data-theme=midnight] .toggle-group,html[data-theme=noir] .toggle-group{background:#ffffff0f}html[data-theme=midnight] .toggle-btn.active,html[data-theme=noir] .toggle-btn.active{color:var(--ink);background:#ffffff14}html[data-theme=midnight] .textarea,html[data-theme=noir] .textarea{color:var(--ink);background:#ffffff0d;border-color:#f2ede624}html[data-theme=midnight] select,html[data-theme=noir] select,html[data-theme=midnight] select option,html[data-theme=noir] select option{background:var(--card);color:var(--ink)}html[data-theme=citrus]{--bg:#fff7e8;--bg-2:#ffe0b5;--ink:#2d1e0f;--muted:#7a5a40;--card:#fff1dc;--card-2:#fff7ed;--accent:#f08c2b;--accent-2:#2d8b73;--accent-3:#7a3f1b;--ring:#f7c98b;--shadow:0 16px 30px #512c0e2e}html[data-theme=tide]{--bg:#edf7f6;--bg-2:#cfe6e6;--ink:#163031;--muted:#4f6f70;--card:#f7fbfb;--card-2:#fff;--accent:#2f7f7a;--accent-2:#1f5d7a;--accent-3:#1b3f3f;--ring:#7bd0c8;--shadow:0 16px 30px #133d3f29}html[data-theme=sage]{--bg:#edf3ef;--bg-2:#d4e0d6;--ink:#1b2c26;--muted:#596b61;--card:#f8fbf9;--card-2:#fff;--accent:#3f7a63;--accent-2:#b4673d;--accent-3:#2b3d35;--ring:#9fc4b0;--shadow:0 16px 30px #21423629}*{box-sizing:border-box}html,body{height:100%}body{font-family:var(--font-body,"IBM Plex Sans","Source Sans 3","Avenir Next",sans-serif);color:var(--ink);background:linear-gradient(180deg,var(--bg)0%,var(--bg-2)100%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-repeat:no-repeat;background-size:100% 100%;background-attachment:fixed;margin:0;line-height:1.55}a{color:inherit;text-decoration:none}button{font-family:inherit}.app{flex-direction:column;min-height:100vh;display:flex}.bg-texture{pointer-events:none;opacity:.35;background:linear-gradient(135deg,#00000008 25%,#0000 25%) 0 0/12px 12px,linear-gradient(225deg,#00000008 25%,#0000 25%) 6px 6px/12px 12px;position:fixed;inset:0}.topbar{z-index:10;background:var(--card);border-bottom:1px solid #2a1f1514;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:16px;padding:14px 24px;display:grid;position:relative}.brand{font-family:var(--font-display,"Fraunces","Source Serif 4",Georgia,serif);letter-spacing:.3px;min-width:0;color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-text{min-width:0}.brand-name{white-space:nowrap}.brand-subtitle{color:var(--muted);white-space:nowrap;font-size:12px}.brand .mark{background:conic-gradient(from 140deg,var(--accent),#f0c27c,var(--accent-2));width:36px;height:36px;box-shadow:var(--shadow);color:#ffffffe6;border-radius:50%;place-items:center;display:grid;position:relative}.brand .mark .mark-icon{width:24px;height:24px}.app.has-sidebar{flex-direction:row}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar{z-index:10;background:var(--card);border-right:1px solid #2a1f1514;flex-direction:column;flex-shrink:0;gap:22px;width:232px;height:100dvh;padding:20px 14px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{padding:0 8px}.sidebar-nav{color:var(--muted);flex-direction:column;flex:1;gap:4px;font-size:14px;display:flex}.sidebar-footer{border-top:1px solid #2a1f1514;flex-direction:column;padding-top:10px;display:flex}.nav-link{white-space:nowrap;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav-link:hover{color:var(--ink);background:#2a1f150f}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.nav-icon svg{width:100%;height:100%}.nav-link.active{color:var(--accent-3);background:#c86c1a1f;font-weight:600}.logout-link{color:var(--muted);font-size:14px}.mobile-topbar{display:none}@media (max-width:1100px) and (min-width:721px){.sidebar{align-items:center;width:72px;padding:20px 10px 16px}.sidebar .nav-label,.sidebar .brand-text{display:none}.sidebar-brand{padding:0}.sidebar-nav,.sidebar-footer{align-items:stretch;width:100%}.sidebar .nav-link{justify-content:center;padding:12px 0}.sidebar .nav-icon{width:20px;height:20px}}.bottom-nav{display:none}.actions{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.topbar-actions{justify-content:flex-end;display:flex}.subbar{background:var(--card);z-index:9;border-bottom:1px solid #2a1f1514;justify-content:flex-end;padding:10px 28px 14px;display:flex;position:sticky;top:0}.subbar-actions{justify-content:flex-end}.theme-switch{background:#2a1f150f;border:1px solid #2a1f151a;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;display:inline-flex}.theme-label{color:var(--muted);letter-spacing:.6px;text-transform:uppercase;font-size:12px;font-weight:600}.theme-select{border-radius:999px;padding:6px 10px;font-size:12px}.btn{background:var(--accent);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:600;display:inline-flex;box-shadow:0 6px 16px #d17a2b47}.btn.secondary{color:var(--accent-3);box-shadow:none;background:0 0;border-color:#5b3b2a4d}.btn.is-loading{pointer-events:none;opacity:.9;border-color:#c86c1a99;animation:1.2s ease-in-out infinite buttonPulse;position:relative;box-shadow:0 0 0 2px #c86c1a26}@keyframes buttonPulse{0%,to{box-shadow:0 0 0 2px #c86c1a26}50%{box-shadow:0 0 0 4px #c86c1a40}}.btn.small{padding:6px 12px;font-size:13px}.header-btn .btn-icon,.logout-btn .btn-icon{justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.logout-btn .btn-icon svg,.header-btn .btn-icon svg{width:100%;height:100%}.shell{gap:20px;padding:20px 22px 40px;display:grid}.shell.with-rail{grid-template-columns:minmax(0,1fr) 320px}@media (min-width:1500px){.shell.with-rail{grid-template-columns:minmax(0,1fr) 380px}}.shell.no-rail{grid-template-columns:minmax(0,1fr)}.content{flex-direction:column;gap:18px;min-width:0;display:flex}.loading-panel{justify-content:center;align-items:center;min-height:220px;padding:24px;display:flex}.loading-card{background:radial-gradient(120% 120% at 50% -20%,var(--card-2)0%,var(--card)55%,transparent 120%);width:min(520px,100%);box-shadow:var(--shadow);text-align:center;border:1px solid #5b3b2a2e;border-radius:18px;flex-direction:column;align-items:center;gap:10px;padding:24px 28px;display:flex}.loading-spinner{border:3px solid #5b3b2a33;border-top-color:var(--accent);border-right-color:var(--accent-2);border-radius:50%;width:46px;height:46px;animation:1.05s linear infinite spin}.loading-spinner.small{border-width:2px;width:18px;height:18px}.loading-title{color:var(--accent-3);font-size:16px;font-weight:600}.loading-subtitle{color:var(--muted);font-size:13px}.loading-action{margin-top:4px}.loading-inline{color:var(--muted);align-items:center;gap:10px;font-size:14px;display:inline-flex}.loading-inline-text{font-weight:500}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #2a1f1514;padding:16px;animation:.6s both fadeUp}.card:nth-child(2){animation-delay:50ms}.card:nth-child(3){animation-delay:.1s}.card:nth-child(4){animation-delay:.15s}.header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.meta-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:14px;display:grid}.title{font-size:24px;font-family:var(--font-display,"Fraunces","Source Serif 4",Georgia,serif)}.tags{flex-wrap:wrap;gap:8px;display:flex}.tag{color:var(--accent-3);letter-spacing:.4px;background:#d17a2b1f;border-radius:999px;padding:4px 10px;font-size:12px}.editor-header .title-input{font-size:20px;font-weight:600;font-family:var(--font-display,"Fraunces","Source Serif 4",Georgia,serif)}.meta-strip{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.section{background:var(--card-2);border-radius:var(--radius);border:1px solid #2a1f1514;width:100%;padding:16px}.section.section-dragging{opacity:.7}.section.drop-before{box-shadow:0 -2px #2f6f6ab3}.section.drop-after{box-shadow:0 2px #2f6f6ab3}.section.locked{background:#5b3b2a0a;border-color:#5b3b2a33;box-shadow:inset 0 0 0 1px #5b3b2a26}.section+.section{margin-top:14px}.section-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.section-title-row{align-items:center;gap:8px;display:flex}.section-edit{text-align:left;cursor:pointer;color:inherit;background:0 0;border:none;border-radius:10px;gap:2px;padding:6px 10px;transition:background .2s,color .2s;display:grid}.section-edit:hover{color:var(--accent-2);background:#2f6f6a14}.section-controls{align-items:end;gap:8px;display:grid}.section-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.section-label{text-transform:uppercase;letter-spacing:1px;color:var(--accent-2);font-size:13px;font-weight:700}.section-title{font-size:18px;font-weight:600}.section-footer{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.spec-accept-btn{color:#9f2d12;box-shadow:none;white-space:normal;text-align:left;background:#9f2d1214;border:1px solid #9f2d1233;align-items:center;gap:6px;max-width:100%;display:inline-flex}.spec-accept-btn svg{width:16px;height:16px}.section-body{padding-bottom:6px;overflow-x:auto}.section-canvas{flex-direction:column;gap:12px;width:max-content;min-width:100%;display:inline-flex}.chords-row{color:var(--accent-3);gap:12px;margin-bottom:6px;font-family:Courier New,monospace;font-weight:700;display:flex}.chords-row.line-chords{color:var(--accent-2);margin-bottom:4px;font-size:13px;font-weight:600}.line-chord-track{height:20px;font-family:var(--font-mono,"IBM Plex Mono",ui-monospace,"SFMono-Regular","SF Mono",Menlo,Consolas,"Liberation Mono",monospace);color:var(--accent-2);margin-bottom:4px;font-size:16px;line-height:1.4;position:relative}.line-chord{white-space:nowrap;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:16px;font-weight:600;display:inline-flex;position:absolute;top:0;transform:translate(0)}.line-chord:disabled{cursor:default;opacity:.7}.line-chord-remove{opacity:.6;font-size:11px}.line{cursor:pointer;border-bottom:1px dashed #2a1f1514;border-radius:12px;justify-content:flex-start;align-items:flex-start;gap:12px;padding:6px 8px;transition:background .15s,box-shadow .15s;display:flex}.line:last-child{border-bottom:none}.line.dragging{opacity:.6}.line:hover{background:#fff8ede6}.line.active{cursor:text;background:#fffdf7;box-shadow:inset 0 0 0 1px #e3b27740}.line.generating{isolation:isolate;background:#fff6e9d9;position:relative}.line.generating:before{content:"";-webkit-mask-composite:xor;pointer-events:none;background:repeating-linear-gradient(135deg,#2f6f6ae6 0 6px,#2f6f6a40 6px 12px) 0 0/24px 24px;border-radius:12px;padding:2px;animation:1.1s linear infinite marchingBorder;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.line-gutter{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:32px;display:flex}.line-spinner{border:2px solid #2f6f6a99;border-top-color:#0000;border-radius:50%;width:10px;height:10px;animation:.8s linear infinite spin}.drag-handle{color:var(--muted);cursor:grab;background:0 0;border:none;padding:0 4px;font-size:16px;line-height:1}.drag-handle:active{cursor:grabbing}.line-text{overflow-wrap:anywhere;flex:1;min-width:0;font-size:16px;font-weight:500}.line.locked:not(.active){opacity:.92;background:#5b3b2a0f;box-shadow:inset 3px 0 #5b3b2a73}.line-body{flex-direction:column;flex:1;gap:6px;display:flex}.line-input{width:100%;color:var(--ink);font-size:16px;font-weight:500;font-family:var(--font-mono,"IBM Plex Mono",ui-monospace,"SFMono-Regular","SF Mono",Menlo,Consolas,"Liberation Mono",monospace);background:0 0;border:none;padding:0;line-height:1.45}.line-input.read-only{cursor:pointer}.line-input:focus{outline:1px solid var(--ring);background:#fffdf7;border-radius:8px}.line-suggestions{color:var(--muted);flex-direction:column;gap:6px;margin-top:4px;font-size:11px;display:flex}.line-suggestions-label{text-transform:uppercase;letter-spacing:.4px;font-size:10px}.line-suggestions-list{flex-wrap:wrap;gap:6px;display:flex}.line-suggestion{color:var(--ink);cursor:pointer;background:#2f6f6a14;border:1px solid #2f6f6a33;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;font-weight:600;display:inline-flex}.line-suggestion:hover{border-color:#2f6f6a73}.line-suggestion-more{letter-spacing:.2px;border-style:dashed;font-weight:700}.line-suggestion-word{line-height:1.1}.line-suggestion-syll{color:var(--accent-2);background:#2f6f6a24;border-radius:999px;padding:1px 5px;font-size:10px;font-weight:700}.line-suggestions-popover{z-index:120;box-sizing:border-box;background:var(--card);max-width:calc(100vw - 24px);box-shadow:var(--shadow);border:1px solid #2a1f151f;border-radius:12px;padding:10px;position:fixed;overflow:auto}.line-suggestions-popover-header{text-transform:uppercase;letter-spacing:.4px;color:var(--muted);justify-content:space-between;align-items:center;font-size:10px;display:flex}.line-suggestions-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:16px;line-height:1}.line-suggestions-popover-list{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.input{width:100%;color:var(--ink);background:#fffdf9;border:1px solid #2a1f151f;border-radius:10px;padding:10px 12px;font-size:15px}.model-select{max-width:220px;padding:8px 10px;font-size:13px}.input:focus{border-color:#0000;outline:2px solid #e3b27799}.tag-picker{background:#fffdf9;border:1px solid #2a1f151f;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;width:100%;padding:6px 8px;display:flex}.tag-picker:focus-within{border-color:#0000;outline:2px solid #e3b27799}.tag-pill{background:var(--bg-2);color:var(--ink);border-radius:999px;align-items:center;gap:3px;padding:2px 4px 2px 9px;font-size:12.5px;display:inline-flex}.tag-pill-x{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:15px;line-height:1}.tag-pill-x:hover{color:var(--ink)}.tag-picker-input{min-width:110px;color:var(--ink);background:0 0;border:none;outline:none;flex:1;padding:3px 0;font-size:15px}.line-panel{background:#fff6e9e6;border:1px solid #2a1f1514;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:6px 8px;display:flex}.line-panel-meta{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.line-panel-actions,.spec-editor{align-items:center;gap:6px;display:inline-flex}.spec-input{width:70px;font-size:12px;font-weight:600;font-family:var(--font-mono,"IBM Plex Mono",ui-monospace,monospace);color:var(--ink);background:#fffdf7;border:1px solid #2a1f1529;border-radius:8px;padding:4px 6px}.spec-input:focus{outline:1px solid var(--ring);border-color:#0000}.spec-badge{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:inline-flex}.spec-badge:hover{box-shadow:inset 0 0 0 1px #c86c1a80}.spec-badge.mismatch{background:#fa03;border:1px solid #fa09}.line-spec-pill{cursor:pointer;text-align:center;border:none;border-radius:999px;justify-content:center;align-self:center;align-items:center;width:30px;height:30px;padding:0;font-size:10px;font-weight:700;display:inline-flex;position:relative}.line-spec-pill:hover{box-shadow:inset 0 0 0 1px #c86c1a80}.line-spec-text{line-height:1;display:block}.line-spec-warning{color:#fff;background:#c86c1af2;border-radius:999px;justify-content:center;align-items:center;width:12px;height:12px;font-size:9px;line-height:1;display:inline-flex;position:absolute;top:-3px;right:-3px}.line-meta{color:var(--muted);flex-shrink:0;align-items:center;gap:8px;font-size:12px;display:inline-flex}.badge{color:var(--accent-2);background:#2f6f6a24;border-radius:999px;padding:2px 8px}.badge.spec{color:var(--accent-3);letter-spacing:.2px;background:#c86c1a2e;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:10px;font-weight:700;display:inline-flex}.badge.chord-only{color:var(--accent-2);letter-spacing:.2px;background:#2f6f6a29;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:10px;font-weight:700;display:inline-flex}.line-spec-pill.chord-only{cursor:default}.line-input.read-only.chord-only{color:var(--muted);font-style:italic}.badge.warn{color:#9f2d12;background:#9f2d1229;font-weight:700}.badge.generating{color:var(--accent-2);background:#2f6f6a29;font-weight:700}.badge.lock{color:#364761;background:#36476133}.icon-btn{width:32px;height:32px;color:var(--accent-2);cursor:pointer;background:0 0;border:1px solid #2a1f151f;border-radius:8px;justify-content:center;align-items:center;transition:border-color .15s,box-shadow .15s,transform .15s;display:inline-flex}.icon-btn svg{width:16px;height:16px}.icon-btn:hover:not(:disabled){border-color:#2f6f6a80;transform:translateY(-1px);box-shadow:0 4px 12px #2f6f6a1f}.icon-btn:disabled{opacity:.5;cursor:default}.icon-btn.loading{animation:1.2s ease-in-out infinite pulse}.icon-btn.danger{color:#a33a22;border-color:#a33a224d}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.008)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulseLine{0%,to{background:#fff6e9b3;box-shadow:inset 0 0 0 2px #2f6f6ad9}50%{background:#fff6e9e6;box-shadow:inset 0 0 0 3px #2f6f6a73}}@keyframes pulseLineDark{0%,to{background:#66c4b50f;box-shadow:inset 0 0 0 2px #66c4b58c}50%{background:#66c4b51f;box-shadow:inset 0 0 0 3px #66c4b547}}@keyframes marchingBorder{0%{background-position:0 0}to{background-position:24px 24px}}@keyframes marchingBorderDark{0%{background-position:0 0}to{background-position:24px 24px}}.drop-indicator{background:linear-gradient(90deg,#2f6f6a1a,#2f6f6aa6,#2f6f6a1a);border-radius:999px;height:5px;margin:8px 12px 8px 28px;position:relative;box-shadow:0 0 0 3px #2f6f6a14}.drop-indicator:after{content:"";background:#2f6f6ad9;border-radius:50%;width:10px;height:10px;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.rail{flex-direction:column;gap:16px;min-width:0;display:flex}.global-indicator{z-index:100;background:var(--card);color:var(--ink);border:1px solid #2a1f1529;border-radius:999px;align-items:center;gap:12px;padding:12px 24px;font-weight:600;display:inline-flex;position:fixed;top:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 24px #2a1f1540}.note-card{border-left:4px solid var(--accent);background:#fff7ee;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;font-size:14px;display:flex}.note-card .icon-btn{flex-shrink:0}.note-card.empty{background:#fffaf2;border-left-color:#5b3b2a33}.note-body{flex:1;gap:4px;min-width:0;display:grid}.note-label{letter-spacing:1px;text-transform:uppercase;color:var(--accent-2);font-size:11px;font-weight:700}.note-composer{align-items:flex-start;gap:10px;margin-top:10px;margin-bottom:12px;display:flex}.note-composer-actions{flex-direction:column;gap:6px;display:flex}.note-input-text{resize:vertical;min-height:76px}.note-list,.list{gap:10px;display:grid}.list>*{min-width:0}.list-item{background:var(--card-2);border:1px solid #2a1f151a;border-radius:10px;padding:10px}.attachment-item{flex-direction:column;align-items:stretch;gap:10px;padding:12px;display:flex;position:relative}.attachment-link-card{min-width:0;color:inherit;flex:1;grid-template-columns:auto 1fr;align-items:start;gap:12px;text-decoration:none;display:grid}.attachment-media{justify-items:center;gap:6px;width:56px;display:grid}.attachment-thumb{background:#2f6f6a14;border:1px solid #2a1f1514;border-radius:12px;place-items:center;width:52px;height:52px;display:grid;overflow:hidden}.attachment-thumb img{object-fit:cover;width:100%;height:100%;display:block}.attachment-icon{letter-spacing:.6px;color:#fff;background:var(--accent-2);border-radius:10px;place-items:center;width:100%;height:100%;font-size:12px;font-weight:700;display:grid}.attachment-icon.youtube{background:#c0392b}.attachment-icon.spotify{background:#1db954}.attachment-icon.soundcloud{background:#f26f23}.attachment-icon.bandcamp{background:#1f6672}.attachment-icon.drive{background:#0f9d58}.attachment-icon.link{background:#6f5f52}.attachment-icon.file{background:#4f6d9e}.attachment-content{gap:4px;min-width:0;display:grid}.attachment-title{word-break:break-word;font-size:16px;font-weight:600;line-height:1.2}.attachment-meta-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.attachment-host{color:var(--muted);font-size:12px}.attachment-kind{color:var(--accent-3);text-align:center;background:#d17a2b1f;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.attachment-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.attachment-actions{align-items:center;gap:6px;display:inline-flex}.attachment-delete{flex-shrink:0;margin-left:0}.icon-btn.tiny{width:26px;height:26px}.icon-btn.tiny svg{width:13px;height:13px}.quick-textarea{width:100%;font-size:14px}.settings-layout{grid-template-columns:240px minmax(0,1fr);gap:18px;display:grid}.settings-nav{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #2a1f1514;gap:8px;height:fit-content;padding:16px;display:grid}.settings-nav-header{text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:6px;font-size:12px}.settings-nav-item{text-align:left;cursor:pointer;color:inherit;background:0 0;border:1px solid #0000;border-radius:12px;gap:4px;padding:10px;transition:border-color .2s,background .2s;display:grid}.settings-nav-item:hover{background:#2f6f6a14}.settings-nav-item.active{background:#2f6f6a1f;border-color:#2f6f6a66}.settings-nav-title{font-size:14px;font-weight:600}.settings-nav-desc{color:var(--muted);font-size:12px}.settings-content{flex-direction:column;gap:16px;display:flex}.settings-hero{border-radius:var(--radius);background:linear-gradient(135deg,#c86c1a2e,#2f6f6a24);border:1px solid #2a1f1514;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.settings-title{font-size:22px;font-family:var(--font-display,"Fraunces","Source Serif 4",Georgia,serif);font-weight:600}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:12px;display:grid}.settings-panel{background:var(--card-2);border:1px solid #2a1f1514;border-radius:12px;padding:12px}.settings-actions{gap:8px;display:flex}.token-secret{background:var(--card-2);overflow-wrap:anywhere;border:1px solid #2a1f1526;border-radius:10px;width:100%;padding:10px 12px;font-size:12px;display:block}.fragment-lines{gap:4px;margin-top:8px;display:grid}.fragment-line{color:var(--ink);font-size:14px}.fragment-actions{justify-content:flex-end;margin-top:8px;display:flex}.footer-note{color:var(--muted);font-size:12px}.toggle-group{background:#2a1f1514;border-radius:999px;gap:6px;padding:4px;display:inline-flex}.toggle-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:999px;padding:6px 12px;font-size:13px}.toggle-btn.active{background:var(--card);color:var(--accent-3);font-weight:600}.modal{z-index:130;background:#2a1f154d;place-items:center;display:grid;position:fixed;inset:0}.modal-body{background:var(--card);border-radius:var(--radius);width:min(620px,92vw);max-height:90dvh;box-shadow:var(--shadow);border:1px solid #2a1f1514;flex-direction:column;padding:18px;display:flex;overflow:hidden}.modal-header{flex:none;align-items:center;gap:10px;margin-bottom:12px;display:flex}.modal-header>:first-child{margin-right:auto}.modal-scroll{flex:auto;min-height:0;margin:0 -6px;padding:0 6px;overflow-y:auto}.modal-close{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.modal-close:hover{color:var(--ink);background:#2a1f1514}.modal-close svg{width:16px;height:16px}.modal-actions{flex:none;justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.intent-card{text-align:left;background:var(--card);cursor:pointer;width:100%;font:inherit;color:var(--ink);border:1px solid #2a1f151f;border-radius:10px;flex-direction:column;gap:3px;padding:12px 14px;display:flex}.intent-card:hover:not(:disabled){border-color:var(--sr-orange,#c86c1a)}.intent-card--ses:hover:not(:disabled){border-color:var(--sr-teal,#2f6f6a)}.intent-card:disabled{opacity:.6;cursor:default}.intent-card b{font-size:14px}.intent-card span{color:var(--muted);font-size:12.5px}.quick-menu-overlay{z-index:140;background:0 0;position:fixed;inset:0}.quick-menu{background:var(--card);box-shadow:var(--shadow);border:1px solid #2a1f151f;border-radius:12px;gap:10px;max-width:340px;padding:12px;display:grid;position:fixed}.quick-menu-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.quick-menu-note{color:var(--muted);font-size:12px}.quick-menu-list{gap:6px;max-height:260px;display:grid;overflow:auto}.quick-menu-item{background:var(--card-2);text-align:left;cursor:pointer;border:1px solid #2a1f151a;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex}.quick-menu-item.is-disabled{opacity:.6;cursor:default}.quick-menu-item-text{flex-direction:column;gap:1px;min-width:0;display:flex}.quick-menu-title{overflow-wrap:anywhere;font-size:14px;font-weight:600;line-height:1.3}.quick-menu-meta{color:var(--muted);font-size:12px}.quick-menu-chip{color:var(--accent-3);background:#d17a2b1f;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px}.quick-menu-divider{background:#2a1f151f;height:1px}.quick-menu-action{text-align:left;color:var(--accent-3);cursor:pointer;background:0 0;border:1px dashed #2a1f1533;border-radius:10px;padding:8px 10px;font-weight:600}.quick-menu-new{gap:8px;display:grid}.quick-menu .input{padding:8px 10px;font-size:14px}.quick-menu-actions{justify-content:flex-end;gap:8px;display:flex}.quick-menu-empty{background:#fff6e999;border:1px dashed #2a1f1529;border-radius:10px;padding:10px}.print-modal{flex-direction:column;width:min(1100px,94vw);max-height:84vh;display:flex;overflow:hidden}@media (min-width:1400px){.print-modal{width:min(1200px,90vw)}}.export-grid{flex:1;grid-template-columns:minmax(220px,.9fr) minmax(0,1.6fr);gap:16px;min-height:0;display:grid;overflow:hidden}.export-tabs{border-bottom:2px solid var(--border);margin-bottom:12px;display:none}.export-tab{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-2px;padding:10px 16px;font-size:14px;font-weight:500}.export-tab.active{border-bottom-color:var(--accent);color:var(--accent);font-weight:600}.export-options{flex-direction:column;gap:8px;display:flex}.export-actions{justify-content:space-between;align-items:center;display:flex}.export-actions-buttons{gap:8px;display:flex}.export-font-size{align-items:center;gap:8px;display:flex}.export-font-size .input{width:120px}.export-option-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.export-checkbox{cursor:pointer;align-items:center;gap:6px;display:flex}.export-checkbox input[type=checkbox]{width:auto;accent-color:var(--accent);margin:0}.export-card{text-align:left;background:var(--card-2);cursor:pointer;color:inherit;border:1px solid #2a1f151f;border-radius:12px;gap:6px;padding:12px;transition:border-color .2s,box-shadow .2s;display:grid}.export-card.active{background:#2f6f6a14;border-color:#2f6f6a80;box-shadow:0 8px 18px #2f6f6a1f}.export-card-title{font-size:15px;font-weight:600}.export-card-desc{color:var(--muted);font-size:13px}.export-card-focus{color:var(--accent-2);font-size:12px;font-weight:600}.export-preview{scrollbar-width:thin;background:#fff;border:1px solid #2a1f151f;border-radius:14px;min-height:0;padding:12px;overflow:auto}@media (min-width:900px){.export-preview::-webkit-scrollbar{width:6px}.export-preview::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.export-preview::-webkit-scrollbar-track{background:0 0}}.print-preview .print-sheet{width:100%;box-shadow:none;margin:0;padding:28px 24px}.print-preview .print-cover-page{background:linear-gradient(#fff 0%,#fafafa 100%);border:1px dashed #2a1f1526;border-radius:4px;min-height:600px;margin-bottom:16px}.print-preview .print-cover-brand{margin-top:auto;padding-top:24px}.print-root{display:none}.print-sheet{width:min(8.5in,100%);font-family:var(--font-body,"IBM Plex Sans","Source Sans 3","Avenir Next",sans-serif);color:#1f1d1a;margin:0 auto;padding:.5in .4in}.print-header{border-bottom:1px solid #00000026;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding-bottom:12px;display:flex}.print-title{margin-bottom:4px;font-size:28px;font-weight:600}.print-meta{color:#5a5a5a;font-size:12px}.print-brand{letter-spacing:1px;text-transform:uppercase;color:#777;font-size:12px;font-weight:600}.print-section{break-inside:avoid;margin-bottom:18px}.print-section-header{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.print-section-title{text-transform:uppercase;letter-spacing:1px;font-size:16px;font-weight:600}.print-section-chords{color:#4b4b4b;font-size:12px;font-weight:600}.print-lines{gap:6px;display:grid}.print-line-block{gap:0;display:grid}.print-lyric-line{white-space:pre-wrap;min-height:1.2em;font-size:14px;line-height:1.4}.print-lines-lyrics .print-lyric-line{font-family:var(--font-body,"IBM Plex Sans",sans-serif)}.print-chord-line{color:#2c5a55;white-space:pre;min-height:1.1em;font-size:12px;font-weight:600;line-height:1.3}.format-chords .print-line-block{font-family:var(--font-mono,"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace);font-size:14px}.format-chords .print-lyric-line{font-family:inherit;font-size:inherit;white-space:pre}.format-chords .print-chord-line{font-family:inherit;font-size:inherit;color:#2c5a55}.print-section-diagrams{border-bottom:1px solid #0000000f;flex-wrap:wrap;gap:8px;margin:8px 0 12px;padding:8px 0;display:flex}.print-notes-layout{gap:16px;display:grid}.print-block{border:1px solid #0000001a;border-radius:10px;padding:12px}.print-block-label{text-transform:uppercase;letter-spacing:1px;color:#5a5a5a;margin-bottom:6px;font-size:12px;font-weight:600}.print-block-body{font-size:14px}.print-notes,.print-attachments{gap:10px;display:grid}.print-note{gap:4px;display:grid}.print-note-divider{background:#0000001a;height:1px;margin:8px 0}.print-note-label{color:#2c5a55;text-transform:uppercase;letter-spacing:.8px;font-size:12px;font-weight:600}.print-note-text{font-size:14px}.print-size-x-small.format-notes .print-note-text,.print-size-x-small.format-notes .print-block-body{font-size:10px;line-height:1.3}.print-size-small.format-notes .print-note-text,.print-size-small.format-notes .print-block-body{font-size:12px}.print-size-medium.format-notes .print-note-text,.print-size-medium.format-notes .print-block-body{font-size:14px}.print-size-large.format-notes .print-note-text,.print-size-large.format-notes .print-block-body{font-size:16px}.print-size-x-large.format-notes .print-note-text,.print-size-x-large.format-notes .print-block-body{font-size:20px;line-height:1.5}.print-attachment-title{font-size:13px;font-weight:600}.print-attachment-url{color:#5a5a5a;word-break:break-all;font-size:12px}.print-muted{color:#7a7a7a;font-size:13px}.textarea{width:100%;color:var(--ink);background:#fffdf9;border:1px solid #2a1f151f;border-radius:12px;min-height:220px;padding:12px;font-family:Courier New,monospace;font-size:14px}.textarea.quick-textarea{min-height:44px;max-height:160px}.error-text{color:#9f2d12;margin-top:8px;font-size:13px}.input-error{border-color:#9f2d12!important;box-shadow:0 0 0 1px #9f2d12!important}.auth-shell{box-sizing:border-box;justify-content:center;align-items:center;min-height:100%;padding:32px 16px 48px;display:flex}.auth-card{max-width:420px;margin:0 auto}.auth-header{gap:6px;margin-bottom:16px;display:grid}.auth-google{width:100%;color:var(--accent-3);justify-content:center}.auth-divider{color:var(--muted);text-transform:uppercase;letter-spacing:1px;align-items:center;gap:12px;margin:16px 0;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#2a1f151a;flex:1;height:1px}.auth-form{gap:12px;display:grid}.form-field{gap:6px;display:grid}.auth-submit{justify-content:center;width:100%}.auth-footer{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin-top:12px;font-size:13px;display:flex}.link-button{color:var(--accent-2);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.shell{padding:16px 14px 28px}.shell.with-rail,.shell.no-rail{grid-template-columns:minmax(0,1fr)}.rail{grid-column:1/-1}.content{gap:14px}.card{padding:14px}.sections-card{box-shadow:none;background:0 0;border:none;margin:0 -14px;padding:0}.section{padding:12px}.sections-card .section{border-left:none;border-right:none;border-radius:0}.section+.section{margin-top:12px}.settings-layout{grid-template-columns:1fr}}@media (max-width:900px){.header-btn{justify-content:center;min-width:36px;padding:8px}.header-btn .btn-label{display:none}}@media (max-width:720px){:root{--bottom-nav-h:58px}.shell{padding:8px 6px calc(22px + var(--bottom-nav-h,0px) + env(safe-area-inset-bottom))}.sidebar{display:none}.mobile-topbar{display:grid}.topbar{grid-template-columns:minmax(0,1fr) auto;column-gap:12px;padding:10px 14px}.brand .mark{width:32px;height:32px}.brand .mark .mark-icon{width:21px;height:21px}.brand-name{font-size:15px}.brand-subtitle{font-size:11px}.logout-btn{border-radius:50%;justify-content:center;width:36px;height:36px;padding:0}.logout-btn .btn-label{display:none}.bottom-nav{z-index:60;background:var(--card);padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #2a1f151a;justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #2a1f1512}.bottom-nav-link{letter-spacing:.2px;color:var(--muted);border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:4px 0;font-size:10px;font-weight:500;text-decoration:none;display:flex}.bottom-nav-icon{width:21px;height:21px;display:inline-flex}.bottom-nav-icon svg{width:100%;height:100%}.bottom-nav-link.active{color:var(--accent-3)}.bottom-nav-link.active .bottom-nav-icon{color:var(--accent)}.floating-new-btn{bottom:calc(16px + var(--bottom-nav-h,0px) + env(safe-area-inset-bottom));width:50px;height:50px;right:16px}.save-toast{max-width:calc(100vw - 24px)}.subbar{justify-content:flex-start;padding:8px 12px 12px}.subbar-actions{justify-content:flex-start}.export-grid{grid-template-columns:1fr}.export-tabs{display:flex}.export-grid.export-tab-options .export-preview,.export-grid.export-tab-preview .export-options{display:none}.header-row{flex-direction:column;align-items:flex-start}.card{padding:12px}.sections-card .section{padding:8px}.sections-card .section-header{margin-bottom:6px}.sections-card .line{gap:8px;padding:4px}.sections-card .line-body{gap:4px}.sections-card .section-footer{margin-top:8px}.line-spec-pill{display:none}}@media (prefers-reduced-motion:reduce){.card{animation:none}}.confirm-dialog-overlay{z-index:1300;background:#2a1f1573;place-items:center;animation:.15s fadeIn;display:grid;position:fixed;inset:0}.confirm-dialog{background:var(--card);border-radius:var(--radius);border:1px solid #2a1f151a;width:min(400px,90vw);padding:20px;animation:.2s dialogSlideUp;box-shadow:0 20px 40px #2a1f1540}.confirm-dialog-title{font-size:18px;font-weight:600;font-family:var(--font-display,"Fraunces","Source Serif 4",Georgia,serif);color:var(--ink);margin-bottom:8px}.confirm-dialog-message{color:var(--muted);margin-bottom:16px;font-size:15px;line-height:1.5}.confirm-dialog-actions{justify-content:flex-end;gap:10px;display:flex}.save-toast{background:var(--card);box-shadow:var(--shadow);color:var(--ink);z-index:9999;border:1px solid #2a1f151f;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;animation:.2s toastSlideDown;position:fixed;top:16px;left:50%;transform:translate(-50%)}@keyframes toastSlideDown{0%{opacity:0;transform:translate(-50%)translateY(-20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.save-toast.success{color:var(--accent-2);border-color:#2f6f6a66}.save-toast.error{color:#c4472f;border-color:#c4472f80}.btn.danger{color:#fff;background:#a33a22;box-shadow:0 6px 16px #a33a2247}.btn.danger:hover{background:#8a2e1a}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes dialogSlideUp{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.rhyme-anchors{background:var(--card);border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--accent)20%,transparent);flex-direction:column;gap:12px;margin-top:12px;padding:16px;font-size:.9rem;display:flex}.rhyme-anchors-label{color:var(--muted);align-items:center;gap:6px;margin-bottom:4px;font-size:.95rem;font-weight:600;transition:color .2s;display:flex}.rhyme-anchors-label:hover{color:var(--ink)}.rhyme-anchors-collapse-icon{color:var(--muted);align-items:center;width:12px;font-size:.7rem;display:inline-flex}.rhyme-anchors-content{flex-direction:column;gap:12px;margin-top:8px;display:flex}.rhyme-anchors-section{flex-direction:column;gap:8px;display:flex}.rhyme-anchors-section-label{color:var(--accent);font-size:.9rem;font-weight:600}.rhyme-anchors-section-items{flex-wrap:wrap;gap:8px 20px;display:flex}.rhyme-anchor-item{background:color-mix(in srgb,var(--accent)8%,transparent);border-radius:4px;align-items:center;gap:5px;padding:4px 8px;display:inline-flex}.rhyme-anchor-group{color:var(--accent);font-size:.85rem;font-weight:700}.rhyme-anchor-word{color:var(--ink);font-style:italic;font-weight:500}@keyframes toastIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media print{body.printing>:not(.print-root){display:none!important}body.printing{background:#fff}body.printing .print-root{box-sizing:border-box;background:#fff;padding:0;display:block;position:static}body.printing .print-sheet{box-sizing:border-box;width:auto;margin:0;padding:0 .4in}@page{size:letter;margin:.4in .35in}}.performance-view{background:var(--bg);height:100dvh;color:var(--ink);--performance-scale:1;flex-direction:column;margin:0;padding:0;display:flex}.performance-header{background:var(--card);border-bottom:2px solid var(--bg-2);z-index:100;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 1rem;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0000001a}.performance-title-group{flex:1;min-width:0}.performance-title{color:var(--ink);margin:0;font-size:2rem;font-weight:700;line-height:1.2}.performance-meta{color:var(--muted);margin-top:.25rem;font-size:1rem}.performance-controls{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.performance-btn{background:var(--card-2);color:var(--ink);cursor:pointer;white-space:nowrap;border:1px solid #2a1f1529;border-radius:8px;padding:.5rem .95rem;font-size:.9rem;font-weight:500;transition:all .15s}.performance-btn.icon{justify-content:center;align-items:center;width:38px;height:38px;padding:0;font-size:1.05rem;display:inline-flex}.performance-font-controls{gap:.35rem;display:inline-flex}.performance-btn:hover{background:var(--bg-2);box-shadow:none;transform:none}.performance-btn:active{transform:translateY(0)}.performance-exit-btn{width:34px;height:34px;color:var(--accent-3);cursor:pointer;z-index:120;background:#fffdf9e6;border:1px solid #2a1f1533;border-radius:999px;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:inline-flex;box-shadow:0 6px 16px #2a1f152e}.performance-fullscreen-controls{z-index:120;gap:8px;display:flex;position:fixed;top:16px;right:16px}.performance-select{background:var(--card);color:var(--ink);cursor:pointer;border:1px solid #2a1f1533;border-radius:8px;padding:.35rem .5rem;font-size:.85rem}.performance-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.performance-tap-zone{color:#0000;cursor:pointer;z-index:110;background:0 0;border:none;justify-content:center;align-items:center;width:56px;font-size:2.2rem;display:flex;position:fixed;top:30%;bottom:30%}.performance-tap-zone.left{left:0}.performance-tap-zone.right{right:0}.performance-tap-zone:hover,.performance-tap-zone:active{color:var(--muted);background:linear-gradient(90deg,#2a1f150d,#0000)}.performance-tap-zone.right:hover,.performance-tap-zone.right:active{background:linear-gradient(270deg,#2a1f150d,#0000)}.performance-exit-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px #2a1f1538}.performance-exit-btn.danger{color:#9f2d21;background:#fff4f1f2;border-color:#9f2d2166}.performance-exit-btn.danger:hover{box-shadow:0 8px 20px #9f2d2140}.performance-content{column-width:34em;column-fill:auto;flex:1;column-gap:1.5rem;width:100%;min-height:0;padding:.5rem .75rem .75rem;overflow:auto hidden}.performance-section{background:var(--card);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:12px;min-width:0;margin-bottom:1.1rem;padding:.75rem .9rem;box-shadow:0 2px 8px #00000014}.performance-section-header{break-after:avoid;page-break-after:avoid}.performance-line-block{break-inside:avoid;page-break-inside:avoid}.performance-section-header{border-bottom:2px solid var(--bg-2);margin-bottom:.45rem;padding-bottom:.25rem}.performance-section-title{font-size:calc(1.35rem*var(--performance-scale));color:var(--accent);margin:0 0 .5rem;font-weight:700}.performance-section-chords{font-size:calc(1rem*var(--performance-scale));color:var(--accent-2);letter-spacing:.5px;font-family:Courier New,Courier,monospace;font-weight:600}.performance-lines{flex-direction:column;gap:.75rem;display:flex}.performance-line-block{flex-direction:column;gap:.2rem;display:flex}.performance-chord-line{font-family:Courier New,Courier,monospace;font-size:calc(.95rem*var(--performance-scale));color:var(--accent-2);white-space:pre-wrap;overflow-wrap:anywhere;letter-spacing:.05em;min-height:1.4em;font-weight:700;line-height:1.25}.performance-lyric-line{font-size:calc(1.125rem*var(--performance-scale));color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-weight:500;line-height:1.45}@media (min-width:768px){.performance-title{font-size:2.2rem}.performance-lyric-line{font-size:calc(1.3rem*var(--performance-scale));line-height:1.45}.performance-chord-line{font-size:calc(1rem*var(--performance-scale))}.performance-section-title{font-size:calc(1.45rem*var(--performance-scale))}}@media (min-width:1400px){.performance-lyric-line{font-size:calc(1.25rem*var(--performance-scale));line-height:1.4}.performance-chord-line{font-size:calc(1rem*var(--performance-scale))}}.performance-view:fullscreen{padding:0}.performance-view:fullscreen .performance-header{display:none}.performance-view:fullscreen .performance-content{column-gap:2.25rem;padding:4.75rem 2rem 1.5rem}.performance-view:fullscreen .performance-lyric-line{font-size:calc(1.75rem*var(--performance-scale));line-height:1.6}.performance-view:fullscreen .performance-chord-line{font-size:calc(1.375rem*var(--performance-scale))}.performance-empty{flex-direction:column;justify-content:center;align-items:center;gap:2rem;min-height:100vh;padding:2rem;display:flex}.performance-empty p{color:var(--muted);font-size:1.5rem}html[data-theme=midnight] .performance-view,html[data-theme=noir] .performance-view{background:var(--bg)}html[data-theme=midnight] .performance-section,html[data-theme=noir] .performance-section{background:var(--card);box-shadow:0 2px 12px #0000004d}html[data-theme=midnight] .performance-header,html[data-theme=noir] .performance-header{background:var(--card);border-bottom-color:var(--bg-2);box-shadow:0 2px 12px #0000004d}html[data-theme=midnight] .performance-exit-btn,html[data-theme=noir] .performance-exit-btn{color:var(--ink);background:#1c1814eb;border-color:#ffffff29;box-shadow:0 6px 16px #00000073}html[data-theme=midnight] .performance-exit-btn.danger,html[data-theme=noir] .performance-exit-btn.danger{color:#ff7b6d;background:#3b1814e6;border-color:#ff7b6d80}.print-options-page{max-width:1400px;margin:0 auto}.print-options-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.print-options-title{text-align:center;flex:1;font-size:20px;font-weight:600}.print-options-layout{grid-template-columns:340px minmax(0,1fr);gap:20px;height:calc(100vh - 180px);min-height:500px;max-height:900px;display:grid}.print-options-sidebar{flex-direction:column;gap:20px;display:flex}.print-options-section{background:var(--card);border-radius:var(--radius);border:1px solid #2a1f1514;padding:16px}.print-options-section-title{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:12px;font-size:13px;font-weight:600}.print-format-grid{gap:10px;display:grid}.print-format-card{background:var(--card-2);text-align:left;cursor:pointer;border:1px solid #2a1f151a;border-radius:10px;gap:4px;padding:12px;transition:all .2s;display:grid}.print-format-card:hover{background:#2f6f6a0a;border-color:#2f6f6a4d}.print-format-card.active{background:#2f6f6a1a;border-color:#2f6f6a80;box-shadow:0 4px 12px #2f6f6a1a}.print-format-icon{text-transform:uppercase;letter-spacing:.5px;color:var(--accent-2);font-size:11px;font-weight:700}.print-format-label{font-size:14px;font-weight:600}.print-format-desc{color:var(--muted);font-size:12px;line-height:1.4}.print-options-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.print-option-label{color:var(--muted);gap:6px;font-size:13px;display:grid}.print-option-label.disabled{opacity:.5;pointer-events:none}.print-option-label .input{font-size:14px}.print-options-controls{gap:12px;display:grid}.print-checkbox-label{cursor:pointer;align-items:center;gap:10px;font-size:13px;display:flex}.print-checkbox-label.disabled{opacity:.5;pointer-events:none}.print-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-2)}.print-options-info{background:#2f6f6a0f;border-radius:10px;gap:8px;padding:14px;display:grid}.print-info-item{justify-content:space-between;font-size:13px;display:flex}.print-info-item .info-label{color:var(--muted)}.print-info-item .info-value{font-weight:600}.print-preview-panel{background:var(--card);border-radius:var(--radius);border:1px solid #2a1f1514;flex-direction:column;padding:16px;display:flex;overflow:hidden}.print-preview-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.print-preview-title{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:12px;font-size:13px;font-weight:600}.print-preview-scroll{scrollbar-width:thin;background:#e8e4df;border-radius:10px;flex:1;min-height:0;padding:24px;overflow-y:auto}.print-preview-scroll::-webkit-scrollbar{width:8px}.print-preview-scroll::-webkit-scrollbar-thumb{background:#2a1f1533;border-radius:4px}.print-preview-scroll::-webkit-scrollbar-track{background:#2a1f150d;border-radius:4px}.print-preview-scroll .print-preview{background:#fff;border-radius:6px;width:100%;max-width:600px;margin:0 auto;padding:32px 28px;box-shadow:0 2px 12px #0000001a}.print-preview-scroll .print-preview.ppv{box-shadow:none;background:0 0;border-radius:0;max-width:none;padding:0}.print-page-controls{align-items:center;gap:8px;display:flex}.print-page-controls .btn{min-width:32px;padding:4px 10px}.print-page-indicator{color:var(--muted);text-align:center;min-width:100px;font-size:13px}.print-preview-container{background:#e8e4df;border-radius:10px;flex:1;justify-content:center;align-items:center;padding:24px;display:flex;overflow:hidden}.print-preview-pages{aspect-ratio:8.5/11;width:100%;max-width:425px;transition:transform .3s;display:flex}.print-page{box-sizing:border-box;font-family:var(--font-body,"IBM Plex Sans",sans-serif);color:#1f1d1a;background:#fff;border-radius:4px;flex:0 0 100%;padding:32px 28px;overflow:hidden;box-shadow:0 4px 20px #00000026}.print-preview-pages .print-page{transform-origin:0 0;font-size:10px}.print-preview-pages .print-title{font-size:2em}.print-preview-pages .print-meta{font-size:1em}.print-preview-pages .print-section-title{font-size:1.3em}.print-preview-pages .print-lines-lyrics .print-lyric-line{font-size:1.1em}.print-size-x-small .print-lyric-line{font-size:10px;line-height:1.3}.print-size-small .print-lyric-line{font-size:12px}.print-size-medium .print-lyric-line{font-size:14px}.print-size-large .print-lyric-line{font-size:16px}.print-size-x-large .print-lyric-line{font-size:20px;line-height:1.5}.print-size-x-small.format-chords .print-chord-line,.print-size-x-small.format-chords .print-lyric-line,.print-size-x-small .format-chords .print-chord-line,.print-size-x-small .format-chords .print-lyric-line{font-size:9px;line-height:1.3}.print-size-small.format-chords .print-chord-line,.print-size-small.format-chords .print-lyric-line,.print-size-small .format-chords .print-chord-line,.print-size-small .format-chords .print-lyric-line{font-size:11px}.print-size-medium.format-chords .print-chord-line,.print-size-medium.format-chords .print-lyric-line,.print-size-medium .format-chords .print-chord-line,.print-size-medium .format-chords .print-lyric-line{font-size:13px}.print-size-large.format-chords .print-chord-line,.print-size-large.format-chords .print-lyric-line,.print-size-large .format-chords .print-chord-line,.print-size-large .format-chords .print-lyric-line{font-size:15px}.print-size-x-large.format-chords .print-chord-line,.print-size-x-large.format-chords .print-lyric-line,.print-size-x-large .format-chords .print-chord-line,.print-size-x-large .format-chords .print-lyric-line{font-size:18px}.print-size-x-small .print-section-title{font-size:11px}.print-size-small .print-section-title{font-size:13px}.print-size-medium .print-section-title{font-size:15px}.print-size-large .print-section-title{font-size:17px}.print-size-x-large .print-section-title{font-size:22px}.print-sheet.print-cols-2 .print-sections{column-count:2;column-fill:auto;column-gap:.35in}.print-preview .print-sheet.print-cols-2 .print-sections{height:9.1in}.ppv-host{width:100%}.ppv{flex-direction:column;gap:18px;width:8.5in;display:flex}.ppv-page{box-sizing:border-box;background:#fff;border:1px solid #2a1f1524;border-radius:4px;width:8.5in;height:11in;padding:.4in .35in;overflow:hidden;box-shadow:0 2px 10px #00000014}.ppv-page.ppv-continuous{height:auto;min-height:11in}.ppv-page .print-sheet{width:100%;margin:0;padding:0}.ppv-continued .print-sheet>:not(.print-sections){display:none}.ppv-continued .print-sections{transform:translateX(calc(-1*var(--ppv-shift,0in)))}.ppv-lead .print-sheet>:not(.print-cover-page){display:none}.ppv-lead .print-cover-page{background:0 0;border:none;min-height:100%;margin-bottom:0}.ppv-after-lead .print-cover-page{display:none}.print-preview .print-sheet.format-comprehensive.print-cols-2 .print-sections{height:10.2in}.print-sheet.print-cols-2 .print-section{break-inside:avoid;page-break-inside:avoid}.print-sheet.print-allow-break .print-section{break-inside:auto;page-break-inside:auto}.print-sheet.print-allow-break .print-section-header{break-after:avoid;page-break-after:avoid}.print-sheet.print-allow-break .print-line-block{break-inside:avoid;page-break-inside:avoid}.print-line-flow{flex-wrap:wrap;align-items:flex-start;display:flex}.print-unit{vertical-align:top;white-space:pre;display:inline-block}.print-unit .print-unit-row{white-space:pre;min-height:0;display:block}.print-size-x-small .print-structure-title{font-size:12px}.print-size-x-small .print-structure-section-name{font-size:11px}.print-size-x-small .print-structure-preview,.print-size-x-small .print-structure-chords{font-size:9px}.print-size-small .print-structure-title{font-size:14px}.print-size-small .print-structure-section-name{font-size:13px}.print-size-small .print-structure-preview,.print-size-small .print-structure-chords{font-size:11px}.print-size-medium .print-structure-title{font-size:16px}.print-size-medium .print-structure-section-name{font-size:15px}.print-size-medium .print-structure-preview,.print-size-medium .print-structure-chords{font-size:13px}.print-size-large .print-structure-title{font-size:18px}.print-size-large .print-structure-section-name{font-size:17px}.print-size-large .print-structure-preview,.print-size-large .print-structure-chords{font-size:15px}.print-size-x-large .print-structure-title{font-size:24px}.print-size-x-large .print-structure-section-name{font-size:22px}.print-size-x-large .print-structure-preview,.print-size-x-large .print-structure-chords{font-size:18px}.print-page-break{page-break-after:always;break-after:page;height:0}.print-preview .print-page-break,.print-preview-collection .print-page-break{border-top:2px dashed #2a1f1533;height:auto;margin:24px 0;padding:8px 0;position:relative}.print-preview .print-page-break:after,.print-preview-collection .print-page-break:after{content:"Page Break";text-transform:uppercase;letter-spacing:1px;color:#2a1f1566;background:#f5f3f0;border-radius:4px;padding:2px 12px;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.print-header-continuation{padding-top:.4in}.print-cover-page{text-align:center;page-break-after:always;break-after:page;flex-direction:column;min-height:9in;padding:.6in .3in;display:flex}.print-cover-content{flex-direction:column;flex:1;justify-content:center;gap:16px;display:flex}.print-cover-title{font-size:32px;font-weight:700;line-height:1.1;font-family:var(--font-display,"Fraunces",Georgia,serif)}.print-cover-idea{color:#555;text-align:left;max-width:400px;margin:0 auto;font-size:14px;font-style:italic;line-height:1.5}.print-cover-meta{flex-wrap:wrap;justify-content:center;gap:16px;margin:12px 0;display:flex}.print-cover-meta-item{flex-direction:column;gap:2px;display:flex}.print-cover-meta-item .meta-label{text-transform:uppercase;letter-spacing:1px;color:#888;font-size:10px}.print-cover-meta-item .meta-value{font-size:14px;font-weight:600}.print-cover-tags{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.print-cover-tag{color:#2f6f6a;background:#2f6f6a1a;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:500}.print-cover-notes{text-align:left;border-top:1px solid #0000001a;margin-top:20px;padding-top:16px}.print-cover-notes-title{text-transform:uppercase;letter-spacing:1px;color:#666;margin-bottom:10px;font-size:12px;font-weight:600}.print-cover-notes-list{gap:8px;display:grid}.print-cover-note{background:#00000008;border-radius:6px;padding:8px 10px;font-size:13px}.print-cover-attachments{text-align:left;margin-top:16px}.print-cover-attachments-list{gap:8px;display:grid}.print-cover-attachment{gap:8px;font-size:12px;display:flex}.print-cover-attachment .attachment-label{min-width:100px;font-weight:600}.print-cover-attachment .attachment-url{color:#666;word-break:break-all}.print-cover-brand{text-transform:uppercase;letter-spacing:2px;color:#aaa;margin-top:auto;padding-top:32px;font-size:11px}.chord-diagram{vertical-align:top;display:inline-block}.chord-diagram-row{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.print-chord-diagrams-section{border-bottom:1px solid #0000001a;margin-bottom:24px;padding-bottom:16px}.print-diagrams-title{text-transform:uppercase;letter-spacing:1px;color:#666;margin-bottom:12px;font-size:12px;font-weight:600}.print-diagrams-grid{flex-wrap:wrap;gap:16px;display:flex}.print-diagrams-note{color:#666;margin-top:12px;font-size:12px;font-style:italic}.print-idea-block{background:#2f6f6a0f;border-radius:8px;margin-bottom:24px;padding:16px}.print-idea-text{font-size:16px;font-style:italic;line-height:1.5}.print-structure-title{text-transform:uppercase;letter-spacing:1px;color:#666;border-bottom:2px solid #0000001a;margin-bottom:16px;padding-bottom:8px;font-size:14px;font-weight:600}.print-structure-list{gap:12px;display:grid}.print-structure-item{background:#00000005;border-left:3px solid #2f6f6a;border-radius:8px;gap:16px;padding:12px;display:flex}.print-structure-number{color:#2f6f6a;min-width:32px;font-size:20px;font-weight:700}.print-structure-content{flex:1}.print-structure-section-name{margin-bottom:4px;font-size:16px;font-weight:600}.print-structure-chords{color:#2f6f6a;font-size:14px;font-weight:600;font-family:var(--font-mono);margin-bottom:4px}.print-structure-info{color:#666;font-size:12px}.print-structure-preview{color:#666;margin-bottom:4px;font-size:13px;font-style:italic}.print-all-chords{border-top:1px solid #0000001a;margin-top:24px;padding-top:16px}.print-chords-list{font-size:16px;font-weight:600;font-family:var(--font-mono);color:#2f6f6a}.format-teleprompter{padding:.4in .5in}.format-teleprompter .print-header-teleprompter{text-align:center;border-bottom:2px solid #333;margin-bottom:24px;padding-bottom:16px}.format-teleprompter .print-title{font-size:36px}.format-teleprompter .print-section-teleprompter{margin-bottom:28px}.format-teleprompter .print-section-title{color:#2f6f6a;font-size:20px}.format-teleprompter .print-lyric-line{font-size:24px;line-height:1.6}.format-teleprompter .print-section-chords{font-size:16px}.print-collection-cover{text-align:center;flex-direction:column;align-items:center;min-height:9in;padding:1in;display:flex}.print-collection-cover-content{flex-direction:column;flex:1;justify-content:center;gap:16px;display:flex}.print-collection-title{font-size:48px;font-weight:700;font-family:var(--font-display,"Fraunces",Georgia,serif);line-height:1.1}.print-collection-type{text-transform:uppercase;letter-spacing:2px;color:#2f6f6a;font-size:14px;font-weight:600}.print-collection-description{color:#555;max-width:400px;margin:0 auto;font-size:16px;line-height:1.5}.print-collection-count{color:#888;margin-top:16px;font-size:14px}.print-collection-brand{text-transform:uppercase;letter-spacing:2px;color:#aaa;margin-top:auto;padding-top:24px;font-size:11px}.print-toc{padding:.6in}.print-toc-title{border-bottom:2px solid #0000001a;margin-bottom:24px;padding-bottom:12px;font-size:24px;font-weight:600}.print-toc-list{gap:12px;display:grid}.print-toc-item{border-bottom:1px dotted #0000001a;align-items:baseline;gap:12px;padding:8px 0;display:flex}.print-toc-number{color:#888;min-width:28px;font-size:14px;font-weight:600}.print-toc-song-title{flex:1;font-size:16px;font-weight:500}.print-toc-key{color:#2f6f6a;font-size:13px;font-weight:600}.print-page-number{color:#888;font-size:14px;font-weight:600}.print-setlist-cover{min-height:9in;padding:.6in}.print-setlist-title{margin-bottom:8px;font-size:36px;font-weight:700}.print-setlist-date{text-transform:uppercase;letter-spacing:1px;color:#666;border-bottom:2px solid #0000001a;margin-bottom:32px;padding-bottom:16px;font-size:14px}.print-setlist-songs{gap:8px;display:grid}.print-setlist-song-item{border-bottom:1px solid #0000000f;align-items:center;gap:16px;padding:12px 0;display:flex}.print-setlist-song-item .setlist-number{color:#2f6f6a;min-width:36px;font-size:20px;font-weight:700}.print-setlist-song-item .setlist-song-name{flex:1;font-size:18px;font-weight:500}.print-setlist-song-item .setlist-key{color:#2f6f6a;min-width:40px;font-size:14px;font-weight:600}.print-setlist-song-item .setlist-tempo{color:#888;font-size:13px}.print-setlist-song{padding:.4in .5in}.print-header-setlist{justify-content:space-between;align-items:flex-start;display:flex}.print-setlist-header-left{flex:1}.print-setlist-header-right{text-align:right}.print-song-number{color:#2f6f6a;font-size:32px;font-weight:700}.print-song-chords-bar{border-bottom:1px solid #00000014;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:12px 0;display:flex}.print-chord-ref-header{text-align:center;border-bottom:1px solid #0000001a;margin-bottom:16px;padding:16px 24px}.print-chord-ref-title{margin-bottom:4px;font-size:20px;font-weight:700}.print-chord-ref-subtitle{color:#666;margin-bottom:2px;font-size:13px}.print-chord-ref-count{color:#888;font-size:11px}.print-chord-ref-grid{flex-wrap:wrap;justify-content:center;gap:24px;padding:0 .4in;display:flex}.print-chord-ref-item{text-align:center}.print-chord-ref-usage{color:#888;max-width:100px;margin-top:4px;font-size:10px;line-height:1.3}.print-chord-ref-other{border-top:1px solid #0000001a;margin-top:32px;padding:.4in}.print-chord-ref-other-title{text-transform:uppercase;letter-spacing:1px;color:#666;margin-bottom:16px;font-size:14px;font-weight:600}.print-chord-ref-other-list{gap:8px;display:grid}.print-chord-ref-other-item{gap:12px;font-size:13px;display:flex}.print-chord-ref-other-item .chord-name{min-width:60px;font-weight:600}.print-chord-ref-other-item .chord-songs{color:#666}.print-chord-ref-song{padding:.4in}.print-chord-ref-song-header{border-bottom:2px solid #0000001a;justify-content:space-between;align-items:baseline;margin-bottom:20px;padding-bottom:12px;display:flex}.print-chord-ref-song-title{font-size:24px;font-weight:700;font-family:var(--font-display,"Fraunces",Georgia,serif)}.print-chord-ref-song-key{color:#2f6f6a;font-size:14px;font-weight:600}.print-lyrics-cover{text-align:center;flex-direction:column;align-items:center;min-height:9in;padding:1in;display:flex}.print-lyrics-cover-content{flex-direction:column;flex:1;justify-content:center;gap:8px;display:flex}.print-lyrics-cover-title{font-size:42px;font-weight:700;font-family:var(--font-display,"Fraunces",Georgia,serif);margin-bottom:16px}.print-lyrics-cover-desc{color:#555;max-width:400px;margin-bottom:16px;font-size:16px;line-height:1.5}.print-lyrics-cover-count{color:#888;font-size:14px}.print-session-head{margin-bottom:28px}.print-session-eyebrow{text-transform:uppercase;letter-spacing:2px;color:#999;margin-bottom:10px;font-size:11px}.print-session-title{font-size:34px;font-weight:700;font-family:var(--font-display,"Fraunces",Georgia,serif);margin-bottom:6px}.print-session-meta{color:#666;font-size:13px}.print-mixnotes-credits{color:#777;margin-top:6px;font-size:12px}.print-mixnotes-group{break-inside:avoid;margin-bottom:24px}.print-mixnotes-song{text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:15px;font-weight:600}.print-mixnotes-note{color:#666;margin:0 0 6px 2px;font-size:12px;line-height:1.5}.print-mixnotes-note-label{color:#555;margin-right:6px;font-weight:600}.print-mixnotes-item{align-items:flex-start;gap:10px;padding:6px 0;display:flex}.print-mixnotes-check{box-sizing:border-box;color:#999;border:1.5px solid #444;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;width:13px;height:13px;margin-top:3px;font-size:10px;line-height:1;display:flex}.print-mixnotes-item-body{flex:1;display:block}.print-mixnotes-item-title{font-size:14px;line-height:1.4;display:block}.print-mixnotes-item-meta{color:#888;margin-top:2px;font-size:11px;display:block}.print-mixnotes-item.done .print-mixnotes-item-title{color:#999}.print-mixnotes-item.done .print-mixnotes-check{border-color:#aaa}.print-mixnotes-done-title{text-transform:uppercase;letter-spacing:1px;color:#aaa;margin:10px 0 2px;font-size:10px;font-weight:600}.print-mixnotes-empty{color:#777;padding:8px 0 24px;font-size:14px}.print-mixnotes-sheet .print-collection-brand{margin-top:32px}@media print{.print-options-page,.print-preview-panel,.print-options-sidebar,.print-options-header{display:none!important}body.printing .print-collection{display:block}body.printing .print-page-break{page-break-after:always;break-after:page}body.printing .page-break-before{page-break-before:always;break-before:page}body.printing .chord-diagram svg{print-color-adjust:exact;-webkit-print-color-adjust:exact}body.printing .print-section-header{page-break-after:avoid}}@media (max-width:900px){.print-options-layout{grid-template-columns:1fr}.print-options-sidebar{order:1}.print-preview-panel{order:2;height:500px}}.performance-exit-icon,.performance-fullscreen-icon{display:block}@media (max-width:768px){.performance-header{flex-direction:column;align-items:stretch;gap:.5rem;padding:.45rem .7rem}.performance-title{white-space:nowrap;text-overflow:ellipsis;font-size:1.3rem;overflow:hidden}.performance-meta{display:none}.performance-controls{flex-wrap:wrap;justify-content:flex-end;align-items:stretch;gap:.4rem}.performance-btn{background:var(--card-2);color:var(--ink);box-shadow:none;border:1px solid #2a1f1529;padding:.35rem .55rem;font-size:.78rem;font-weight:500}.performance-btn:hover{background:var(--bg-2);color:var(--ink);box-shadow:none;transform:none}.performance-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.performance-btn.icon{min-width:34px;padding:.35rem;font-weight:600}.performance-font-controls{gap:.3rem}.performance-fullscreen-btn{min-width:34px;padding:.35rem}.performance-fullscreen-icon{display:inline-block}.performance-fullscreen-label,.performance-select,.performance-auto,.performance-title-group{display:none}.performance-exit{border-radius:9px;min-width:34px;padding:.35rem}.performance-exit-icon{display:block}.performance-exit-label,.performance-fs-extra{display:none}}.toggle-switch{cursor:pointer;width:44px;height:24px;display:inline-block;position:relative}.toggle-switch input[type=checkbox]{opacity:0;width:0;height:0}.toggle-slider{background-color:#2a1f1526;border-radius:24px;transition:background-color .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;bottom:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-switch input:checked+.toggle-slider{background-color:var(--accent-2)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 2px var(--accent-1)}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.chat-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;background:#0000004d;animation:.2s fadeIn;position:fixed;inset:0}.chat-panel{background:var(--card);z-index:1000;flex-direction:column;width:480px;max-width:100vw;animation:.3s slideInFromRight;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 24px #0003}@keyframes slideInFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}.chat-header{border-bottom:1px solid var(--bg-2);background:var(--card-2);justify-content:space-between;align-items:center;padding:20px;display:flex}.chat-title{flex:1;align-items:center;gap:12px;display:flex}.chat-icon{font-size:24px;line-height:1}.chat-subtitle{color:var(--muted);margin-top:2px;font-size:13px}.chat-actions{gap:8px;display:flex}.chat-messages{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.chat-empty{text-align:center;padding:40px 20px}.chat-suggestions{text-align:left;max-width:320px;margin:16px auto 0;padding:0;list-style:none}.chat-suggestions li{color:var(--muted);padding:8px 0;font-size:14px}.chat-suggestions li:before{content:"•";color:var(--accent);margin-right:8px}.chat-message{flex-direction:column;gap:4px;display:flex}.chat-message-user{align-items:flex-end}.chat-message-assistant{align-items:flex-start}.chat-message-content{border-radius:var(--radius);word-wrap:break-word;max-width:85%;padding:12px 16px;line-height:1.5}.chat-message-user .chat-message-content{background:var(--accent);color:#fff;white-space:pre-wrap;border-bottom-right-radius:4px}.chat-message-assistant .chat-message-content{background:var(--bg-2);color:var(--ink);border-bottom-left-radius:4px}.chat-message-content p{margin:0 0 .5em}.chat-message-content p:last-child{margin-bottom:0}.chat-message-content ul,.chat-message-content ol{margin:.25em 0;padding-left:1.25em}.chat-message-content li{margin:.15em 0}.chat-message-content code{background:var(--bg-3);border-radius:3px;padding:.1em .3em;font-size:.9em}.chat-message-content pre{background:var(--bg-3);border-radius:var(--radius);margin:.5em 0;padding:.5em .75em;overflow-x:auto}.chat-message-content pre code{background:0 0;padding:0}.chat-message-content h1,.chat-message-content h2,.chat-message-content h3,.chat-message-content h4{margin:.5em 0 .25em;font-size:1em;font-weight:600}.chat-message-content blockquote{border-left:2px solid var(--ink-3);color:var(--ink-2);margin:.5em 0;padding-left:.75em}.chat-message-content strong{font-weight:600}.chat-loading{color:var(--muted);align-items:center;gap:4px;font-style:italic;display:flex}.chat-loading-dots{gap:2px;display:flex}.chat-loading-dots span{animation:1.4s infinite dotPulse}.chat-loading-dots span:nth-child(2){animation-delay:.2s}.chat-loading-dots span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-error{color:#c83232;background:#c832321a;border-top:1px solid #c832324d;padding:12px 20px;font-size:14px}.chat-input-area{border-top:1px solid var(--bg-2);background:var(--card-2);padding:20px}.chat-input{border:1px solid var(--bg-2);border-radius:var(--radius);background:var(--bg);width:100%;min-height:80px;color:var(--ink);resize:vertical;margin-bottom:12px;padding:12px;font-family:inherit;font-size:15px}.chat-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.chat-input:disabled{opacity:.5;cursor:not-allowed}.chat-input-actions{justify-content:space-between;align-items:center;display:flex}.chat-hint{color:var(--muted);font-size:12px}@media (max-width:768px){.chat-panel{width:100vw}}.text-editor-v2{background:var(--card);border-radius:var(--radius);flex-direction:column;flex:0 auto;gap:0;min-height:140px;display:flex;overflow:hidden}.te-main{flex-direction:row;flex:0 auto;min-height:0;display:flex;overflow:hidden}.text-editor-v2.edit-mode,.text-editor-v2.edit-mode .te-main{flex:1}.te-editor-area{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.te-left-gutter{background:var(--card-2);border-right:1px solid var(--bg-2);-webkit-user-select:none;user-select:none;flex-shrink:0;width:100px;overflow:hidden}.te-gutter-scroll{padding-top:8px}.te-gutter-line{color:var(--muted);box-sizing:border-box;align-items:center;gap:8px;padding:0 8px;font-size:12px;display:flex}.te-gutter-line.header{color:var(--accent)}.te-gutter-line.empty{opacity:.5}.te-gutter-line.hovered{background:#c86c1a14}.te-line-num{display:none}.te-section-badge{text-transform:uppercase;letter-spacing:.3px;color:var(--accent);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10px;font-weight:600;overflow:hidden}.te-spec-badge{background:var(--bg-2);color:var(--ink);text-align:center;border-radius:3px;flex-shrink:0;width:18px;padding:1px 2px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:9px;font-weight:500}.te-spec-badge.empty{opacity:.3;background:0 0}.te-spec-badge.mismatch{color:#c85032;background:#c8503233}.te-spec-badge.chord-only{color:var(--accent);opacity:.6;cursor:default;background:0 0}.te-spec-badge.recalculating{cursor:wait;animation:1.5s ease-in-out infinite spec-shimmer}@keyframes spec-shimmer{0%,to{opacity:.4}50%{opacity:1}}.te-display-line.chord-only{opacity:.85}.te-textarea{color:var(--ink);resize:none;white-space:pre-wrap;word-wrap:break-word;background:0 0;border:none;outline:none;flex:1;padding:8px 16px;font-family:SF Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:14px;line-height:22px;overflow:hidden auto}.te-textarea::placeholder{color:var(--muted);opacity:.5}.te-textarea-container{flex:1;display:flex;position:relative;overflow:hidden}.te-chord-overlay{pointer-events:none;white-space:pre;z-index:1;padding:8px 16px;font-family:SF Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:11px;line-height:22px;position:absolute;top:0;left:0;right:0}.te-chord-line{color:var(--accent,#2563eb);letter-spacing:.5px;height:22px;font-weight:600;position:relative;top:-10px;overflow:visible}.te-chord-line:empty,.te-chord-line.hidden{visibility:hidden}.te-right-gutter{background:var(--card-2);border-left:1px solid var(--bg-2);flex-shrink:0;width:60px;overflow:hidden}.te-action-row{opacity:0;justify-content:flex-start;align-items:center;gap:2px;padding:0 6px;transition:opacity .1s;display:flex}.te-action-row.visible{opacity:1}.te-action-btn{cursor:pointer;width:20px;height:20px;color:var(--muted);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.te-action-btn svg{width:12px;height:12px}.te-action-btn:hover:not(:disabled){background:var(--accent);color:#fff}.te-action-btn.active{color:var(--accent)}.te-action-btn:disabled{opacity:.3;cursor:default}.te-action-btn.danger:hover:not(:disabled){background:var(--error,#dc3545);color:#fff}.te-action-btn.loading{pointer-events:none}.te-spinner{border:2px solid var(--bg-2);border-top-color:var(--accent);border-radius:50%;width:10px;height:10px;animation:.8s linear infinite spin}.te-compact-header{background:var(--card);border-radius:var(--radius);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:8px;padding:12px 18px;display:flex}.te-title-row{flex:240px;align-items:center;gap:12px;min-width:0;display:flex}.te-title{font-family:var(--font-display,"Fraunces","Source Serif 4",Georgia,serif);letter-spacing:.2px;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:22px;font-weight:600;overflow:hidden}.te-quick-meta{flex-shrink:0;align-items:center;gap:8px;display:flex}.te-meta-tag{background:var(--bg-2);color:var(--muted);white-space:nowrap;border-radius:4px;padding:2px 8px;font-size:12px}.te-header-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.te-more-wrap{display:none;position:relative}.te-more-btn.active{background:var(--accent);color:#fff}.te-more-menu{z-index:50;background:var(--card);border:1px solid #2a1f151f;border-radius:10px;flex-direction:column;gap:2px;min-width:236px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #2a1f152e}.te-menu-item{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.te-menu-item svg{width:16px;height:16px;color:var(--muted);flex-shrink:0}.te-menu-item:hover:not(:disabled){background:var(--bg-2)}.te-menu-item:disabled{opacity:.5;cursor:not-allowed}.te-menu-item.danger{color:#b04330}.te-menu-item.danger svg{color:inherit}.te-menu-item.danger:hover:not(:disabled){background:#c4472f1a}.te-section-menu-wrap{display:flex;position:relative}@media (max-width:768px){.te-more-wrap{display:block}.te-header-btn{height:34px;padding:0 11px}.te-header-btn svg{width:16px;height:16px}.te-edit-btn{width:32px;height:32px}}.te-header-btn{background:var(--bg-2);cursor:pointer;min-width:36px;height:32px;color:var(--ink);border:none;border-radius:8px;justify-content:center;align-items:center;padding:0 9px;transition:all .15s;display:flex}.te-header-btn span{display:none}.te-header-btn svg{width:16px;height:16px}.te-header-btn:hover,.te-header-btn.primary,.te-header-btn.active{background:var(--accent);color:#fff}.te-header-btn.primary:hover{opacity:.9}.te-header-btn:disabled{opacity:.5;cursor:not-allowed}.te-header-btn:disabled:hover{opacity:.5}.te-edit-btn{border:1px solid var(--bg-2);cursor:pointer;width:28px;height:28px;color:var(--muted);background:0 0;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.te-edit-btn svg{width:14px;height:14px}.te-edit-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.te-mode-bar{background:var(--card-2);border-bottom:1px solid var(--bg-2);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.te-mode-label{color:var(--muted);font-size:12px;font-weight:500}.te-mode-label-group{align-items:center;gap:12px;display:flex}.te-saved-indicator{color:#22c55e;align-items:center;gap:4px;font-size:12px;font-weight:500;animation:.2s ease-out savedFadeIn;display:inline-flex}.te-saved-indicator svg{color:#22c55e}@keyframes savedFadeIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.te-mode-actions{gap:8px;margin-left:auto;display:flex}.te-mode-btn{background:var(--bg-2);cursor:pointer;height:28px;color:var(--ink);border:none;border-radius:6px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.te-mode-btn:hover:not(:disabled){background:var(--accent);color:#fff}.te-mode-btn:disabled{opacity:.5;cursor:default}.te-mode-btn.primary,.te-mode-btn.active{background:var(--accent);color:#fff}.te-mode-btn.secondary{border:1px solid var(--bg-2);background:0 0}.te-mode-btn.secondary:hover{background:var(--bg-2);color:var(--ink)}.te-edit-container{flex-direction:column;flex:1;display:flex;overflow:hidden}.te-edit-hint{color:var(--muted);background:var(--bg-2);border-bottom:1px solid var(--border);padding:8px 16px;font-size:11px}.te-edit-textarea{background:var(--card);color:var(--ink);resize:none;border:none;outline:none;flex:1;padding:16px;font-family:SF Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:14px;line-height:1.6;overflow-y:auto}.te-edit-textarea::placeholder{color:var(--muted);opacity:.5}.te-display-container{flex:0 auto;width:100%;max-width:1040px;min-height:0;margin-inline:auto;padding:8px 4px;transition:padding-bottom .18s;overflow-y:auto}.te-display-section{margin-bottom:24px}.te-display-section:last-child{margin-bottom:0}.te-display-section.locked{box-shadow:inset 3px 0 0 var(--accent);background:#8080801a;border-radius:8px}.te-display-section.locked .te-display-line{padding-left:14px}.te-display-section.locked .te-m-line{padding-left:12px}.te-display-section-header{background:var(--bg-2);border-radius:6px;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;display:flex}.te-display-section-header.generating{background:#c86c1a1a}.te-display-section-header.locked{border-left:3px solid var(--accent)}.te-display-section-header .te-section-actions{align-items:center;gap:4px;display:flex}.te-section-label{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);flex:1;font-size:12px;font-weight:600}.te-section-label.editable{cursor:text;border-radius:4px}.te-section-label.editable:hover{text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.te-section-label-input{background:var(--card);border:1px solid var(--accent);text-transform:uppercase;letter-spacing:.5px;min-width:80px;color:var(--accent);border-radius:4px;outline:none;flex:1;margin:-1px 0;padding:0 4px;font-size:12px;font-weight:600}.te-section-action{cursor:pointer;width:24px;height:24px;color:var(--muted);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.te-section-action:hover:not(:disabled){background:var(--accent);color:#fff}.te-section-action:disabled{opacity:.3;cursor:default}.te-section-action.danger:hover:not(:disabled){background:var(--danger,#dc3545);color:#fff}.te-section-action.active{background:var(--accent);color:#fff}.te-display-section-chords{letter-spacing:.5px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;margin:-2px 0 8px;padding:2px 6px;font-size:12px;font-weight:600;transition:all .15s;display:inline-block}.te-display-section-chords:hover:not(:disabled){background:var(--bg-2);color:var(--accent)}.te-display-section-chords:disabled{cursor:default}.te-section-chords-edit{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 8px;display:flex}.te-section-chords-input{background:var(--card);border:2px solid var(--accent);letter-spacing:.5px;min-width:160px;color:var(--ink);border-radius:4px;outline:none;flex:1;padding:4px 8px;font-size:12px;font-weight:600}.te-section-chords-input::placeholder{color:var(--muted);opacity:.5}.te-section-chords-btn{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .15s}.te-section-chords-btn:hover{background:var(--accent);color:#fff}.te-section-chords-error{color:var(--danger,#dc3545);flex-basis:100%;font-size:11px}.te-display-lines{flex-direction:column;display:flex}.te-display-line{border-radius:4px;align-items:flex-start;padding:4px 0;transition:background .1s;display:flex}.te-display-line.hovered{background:#c86c1a0d}.te-display-line.generating{background:#c86c1a14}.te-display-line.locked{background:#6464640f}.te-display-line.locked .te-display-lyrics{color:var(--muted)}.te-line-divider{justify-content:center;align-items:center;height:8px;display:flex;position:relative}.te-line-divider:before{content:"";background:0 0;height:1px;transition:background .15s;position:absolute;left:80px;right:60px}.te-line-divider:hover:before{background:var(--border)}.te-add-line-btn{opacity:0;border:1px solid var(--border);background:var(--bg);width:20px;height:20px;color:var(--muted);cursor:pointer;z-index:1;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex}.te-line-divider:hover .te-add-line-btn,.te-add-line-btn.visible{opacity:1}.te-add-line-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.te-empty-section-add{justify-content:center;padding:12px 0;display:flex}.te-empty-section-add .te-add-line-btn{border-radius:4px;gap:6px;width:auto;padding:6px 12px;font-size:12px}.te-display-left{flex-shrink:0;align-items:center;gap:4px;width:22px;padding:4px 3px 4px 0;display:flex}.te-display-content{flex:1;min-width:0;padding:0 4px}.te-display-chords{color:var(--accent);white-space:pre;margin-bottom:0;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:14px;font-weight:600;line-height:1.2}.te-display-lyrics{color:var(--ink);white-space:pre;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:14px;line-height:1.5}.te-display-text-wrapper.chords-interactive{font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:14px}.te-chord-layer{height:20px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:14px;position:relative}.te-char-probe{visibility:hidden;pointer-events:none;white-space:pre;position:absolute;top:0;left:0}.te-chord-tag{background:color-mix(in srgb,var(--accent)14%,transparent);border:1px solid color-mix(in srgb,var(--accent)40%,transparent);height:15px;color:var(--accent);white-space:nowrap;cursor:grab;-webkit-user-select:none;user-select:none;border-radius:3px;align-items:center;padding:0 2px;font-size:11px;font-weight:600;line-height:1;display:inline-flex;position:absolute;top:0;transform:translate(-3px)}.te-chord-tag:hover{background:color-mix(in srgb,var(--accent)22%,transparent);border-color:var(--accent)}.te-chord-tag:active{cursor:grabbing}.te-display-text-wrapper.chords-interactive{position:relative}.te-chord-drop-indicator{background:var(--accent);pointer-events:none;width:2px;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent)25%,transparent);border-radius:1px;position:absolute;top:0;bottom:0}.te-chord-drop-indicator.blocked{background:var(--danger,#dc3545);box-shadow:0 0 0 2px color-mix(in srgb,var(--danger,#dc3545)25%,transparent)}.te-display-text-wrapper.chord-drop-active{background:#c86c1a14}.te-chord-trash{background:var(--card);border:2px dashed var(--danger,#dc3545);color:var(--danger,#dc3545);border-radius:10px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:600;display:flex}.te-chord-trash.floating{z-index:115;box-shadow:var(--shadow);position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.te-chord-trash.in-tray{justify-content:center;margin-top:8px;padding:6px 12px;font-size:12px}.te-chord-trash.over{background:color-mix(in srgb,var(--danger,#dc3545)16%,var(--card));border-style:solid}.te-chord-tray{z-index:110;background:var(--card);border:1px solid var(--bg-2);width:min(640px,100vw - 48px);box-shadow:var(--shadow);border-radius:12px;padding:10px 12px;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.text-editor-v2.chord-tray-open .te-display-container{padding-bottom:200px}.te-chord-tray-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.te-chord-tray-title{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);font-size:12px;font-weight:700}.te-chord-tray-hint{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;overflow:hidden}.te-chord-tray-close{width:20px;height:20px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:16px;line-height:1;display:flex}.te-chord-tray-close:hover{background:var(--bg-2);color:var(--ink)}.te-chord-tray .te-chord-palette{max-height:96px;overflow-y:auto}.te-chord-palette{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.te-palette-chip{background:var(--card);border:1px solid var(--bg-2);color:var(--ink);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:12px;align-items:center;gap:2px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.te-palette-chip:hover{border-color:var(--accent);color:var(--accent)}.te-palette-chip:active{cursor:grabbing}.te-palette-chip.dragging-source{opacity:.85}.te-palette-remove{width:13px;height:13px;color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin-left:2px;padding:0;font-size:13px;line-height:1;display:inline-flex}.te-palette-remove:hover{color:var(--danger,#dc3545)}.te-chord-add{gap:6px;display:flex}.te-chord-add-input{background:var(--card);border:1px solid var(--bg-2);min-width:0;color:var(--ink);border-radius:4px;outline:none;flex:1;padding:4px 8px;font-size:12px}.te-chord-add-input:focus{border-color:var(--accent)}.te-chord-add-btn{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:600}.te-chord-add-btn:hover{background:var(--accent);color:#fff}.te-chord-add-error{color:var(--danger,#dc3545);margin-top:6px;font-size:11px}.te-empty-line{color:var(--muted);opacity:.5;font-style:italic}.te-display-text-wrapper{cursor:text;border-radius:4px;flex:1;min-width:0;margin:-2px -4px;padding:2px 4px;transition:background .1s}.te-display-text-wrapper:hover{background:#c86c1a0f}.te-inline-edit{border:2px solid var(--accent);background:var(--card);width:100%;color:var(--ink);border-radius:4px;outline:none;padding:4px 8px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:14px;line-height:1.5}.te-inline-edit::placeholder{color:var(--muted);opacity:.5}.te-display-right{opacity:0;flex-shrink:0;align-items:center;gap:4px;width:60px;padding:4px 8px;transition:opacity .1s;display:flex}.te-display-right.visible,.te-display-line.locked .te-display-right{opacity:1}@media (max-width:768px){.te-mode-bar{display:none}.te-compact-header{flex-wrap:nowrap;margin-bottom:6px;padding:9px 12px}.te-title{font-size:19px}.te-title-row{flex:auto;min-width:0}.te-edit-btn,.te-key-tag{display:none}.te-display-container{padding:10px 12px}.te-m-line{cursor:pointer;border-radius:9px;padding:9px 6px;position:relative}.te-m-line.sel{background:#c86c1a17}.te-m-line.locked{padding-right:34px}.te-m-line-lock{width:16px;height:16px;color:var(--accent);pointer-events:none;position:absolute;top:9px;right:8px}.te-m-line-lock svg{width:16px;height:16px}.te-m-line.gen{background:#c86c1a0f}.te-m-line.locked .te-m-lyric{color:var(--muted)}.te-m-chips{flex-wrap:wrap;gap:5px;margin-bottom:3px;display:flex}.te-m-chip{background:color-mix(in srgb,var(--accent)13%,transparent);color:var(--accent);border-radius:4px;padding:1px 7px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:600}.te-m-lyric{color:var(--ink);overflow-wrap:anywhere;font-size:16px;line-height:1.45}.te-m-chordonly{color:var(--muted);font-size:14px;font-style:italic}.te-m-edit{box-sizing:border-box;border:1.5px solid var(--accent);background:var(--card-2);width:100%;color:var(--ink);resize:vertical;border-radius:10px;outline:none;padding:10px 12px;scroll-margin-top:72px;scroll-margin-bottom:96px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:16px;line-height:1.45}.te-line-divider{display:none}}.te-spec-edit{text-align:center;border:1px solid var(--accent);background:var(--card);width:40px;color:var(--ink);border-radius:3px;outline:none;padding:2px 4px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:10px}.te-spec-badge.locked{cursor:default;align-items:center;gap:3px;display:inline-flex}.te-spec-badge.locked:hover{color:var(--muted);background:0 0}.te-lock-icon{opacity:.7;flex-shrink:0}.te-display-text-wrapper.locked{cursor:default}.te-display-text-wrapper.locked:hover{background:0 0}.te-generating-badge{color:var(--accent);align-items:center;gap:6px;font-size:10px;display:inline-flex}.te-generating-badge.small{gap:0}.te-empty-state{color:var(--muted);justify-content:center;align-items:center;padding:48px;font-size:14px;display:flex}html[data-theme=midnight] .te-left-gutter,html[data-theme=noir] .te-left-gutter,html[data-theme=midnight] .te-right-gutter,html[data-theme=noir] .te-right-gutter{background:#ffffff08}html[data-theme=midnight] .te-spec-badge,html[data-theme=noir] .te-spec-badge{background:#ffffff1a}html[data-theme=midnight] .wd-card,html[data-theme=noir] .wd-card{background:#ffffff0a}@media (max-width:768px){.text-editor-v2{max-height:calc(100vh - 58px - var(--bottom-nav-h,0px));max-height:calc(100dvh - 58px - var(--bottom-nav-h,0px))}.te-left-gutter{width:70px}.te-right-gutter{width:50px}.te-section-badge{display:none}.te-display-container{overflow-x:hidden}.te-display-lines{-webkit-overflow-scrolling:touch;overflow:auto hidden}.te-display-line{min-width:max-content}.te-section-action{width:30px;height:30px}.te-display-section-header{flex-wrap:wrap}.te-mode-bar{padding:6px 10px}.te-mode-btn{min-height:32px}}@media (max-width:520px){.te-left-gutter{width:52px}.te-line-num{display:none}.te-gutter-line{padding:0 6px}.te-right-gutter{width:40px}.te-mode-label{display:none}.te-compact-header{padding:8px 12px}.te-title{font-size:16px}.te-quick-meta{min-width:0}.te-meta-tag{text-overflow:ellipsis;max-width:38vw;overflow:hidden}.te-display-lyrics,.te-display-chords{font-size:13px}}.floating-new-btn{background:var(--accent);cursor:pointer;z-index:100;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .2s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 12px #0003,0 2px 4px #0000001a}.floating-new-btn svg{color:#fff;width:24px;height:24px}.floating-new-btn:hover{transform:scale(1.1);box-shadow:0 6px 16px #00000040,0 3px 6px #00000026}.floating-new-btn:active{transform:scale(.95)}.te-generating-badge{background:linear-gradient(135deg,var(--accent),#e67e22);color:#fff;border-radius:4px;align-items:center;gap:6px;padding:2px 8px;font-size:10px;font-weight:600;animation:1.5s ease-in-out infinite pulse-glow;display:inline-flex}@keyframes pulse-glow{0%,to{box-shadow:0 0 4px #c86c1a66}50%{box-shadow:0 0 12px #c86c1acc}}.te-generating-dots{gap:3px;display:flex}.te-generating-dots span{background:#fff;border-radius:50%;width:4px;height:4px;animation:1.4s ease-in-out infinite bounce-dot}.te-generating-dots span:first-child{animation-delay:0s}.te-generating-dots span:nth-child(2){animation-delay:.2s}.te-generating-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce-dot{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.te-spec-badge.clickable{cursor:pointer;transition:all .15s}.te-spec-badge.clickable:hover{background:var(--accent);color:#fff}.te-spec-edit{text-align:center;border:1px solid var(--accent);background:var(--card);width:36px;height:18px;color:var(--ink);border-radius:3px;outline:none;padding:0 4px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:10px;font-weight:500}.te-spec-edit:focus{box-shadow:0 0 0 2px #c86c1a4d}.dsc-card{flex-direction:column;display:flex}.dsc-members-btn{border:1px solid var(--bg-2);cursor:pointer;color:var(--muted);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:2px 6px;display:flex}.dsc-members-btn:hover{border-color:var(--accent);color:var(--accent)}.dsc-member-avatars{display:inline-flex}.dsc-member-avatars .dsc-avatar{border:2px solid var(--card);margin-left:-6px}.dsc-member-avatars .dsc-avatar:first-child{margin-left:0}.dsc-member-count{font-size:12px;font-weight:600}.dsc-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.dsc-avatar-initials{background:var(--accent);color:#fff;font-size:10px;font-weight:700}.dsc-avatar-initials.pending{background:var(--bg-2);color:var(--muted)}.dsc-members{border-bottom:1px solid var(--bg-2);flex-direction:column;gap:6px;margin-bottom:8px;padding:8px 0;display:flex}.dsc-member-row{align-items:center;gap:8px;display:flex}.dsc-member-row.pending{opacity:.7}.dsc-member-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.dsc-role-tag{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-size:10px}.dsc-member-remove{width:18px;height:18px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:15px;line-height:1;display:inline-flex}.dsc-member-remove svg{width:14px;height:14px}.dsc-member-remove:hover{color:var(--danger,#dc3545)}.dsc-invite{gap:6px;margin-top:4px;display:flex}.dsc-invite .input{flex:1;min-width:0}.dsc-invite-error{color:var(--danger,#dc3545);margin-top:4px;font-size:11px}.dsc-feed-wrap{flex-direction:column;min-height:0;display:flex;position:relative}.dsc-jump-wrap{pointer-events:none;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.dsc-jump-new{pointer-events:auto;background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600;box-shadow:0 4px 12px #00000040}.dsc-feed{flex-direction:column;gap:14px;min-height:0;max-height:clamp(320px,48vh,640px);padding:4px 0;display:flex;overflow:hidden auto}.dsc-thread{flex-direction:column;gap:6px;display:flex}.dsc-thread--flash{border-radius:10px;animation:2s ease-out dsc-flash}@keyframes dsc-flash{0%{background:color-mix(in srgb,var(--accent-2,#2f6f6a)16%,transparent)}60%{background:color-mix(in srgb,var(--accent-2,#2f6f6a)10%,transparent)}to{background:0 0}}.dsc-message{gap:8px;display:flex}.dsc-message.dsc-reply{margin-left:28px}.dsc-message-body{flex:1;min-width:0}.dsc-message-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dsc-author{color:var(--ink);white-space:nowrap;font-size:12px;font-weight:600}.dsc-time{color:var(--muted);font-size:11px}.dsc-delete{color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:none;margin-left:auto;font-size:14px;line-height:1}.dsc-message:hover .dsc-delete{opacity:.6}.dsc-delete:hover{color:var(--danger,#dc3545);opacity:1!important}.dsc-delete-icon{width:15px;height:15px;display:block}.dsc-track{color:var(--muted);cursor:pointer;opacity:.55;background:0 0;border:none;margin-left:auto;padding:0;line-height:1}.dsc-track:hover{opacity:1;color:var(--sr-teal,#2f6f6a)}.dsc-track:disabled{cursor:default;opacity:.35}.dsc-track-icon{width:15px;height:15px;display:block}.dsc-track-badge,.dsc-track-marker{color:var(--sr-teal,#2f6f6a);white-space:nowrap;margin-left:auto;font-size:11px;font-weight:500}.dsc-track-badge{cursor:pointer;background:0 0;border:none;padding:0}.dsc-track-badge:hover{opacity:.8;text-decoration:line-through}.dsc-track-badge:disabled{cursor:default;opacity:.5;text-decoration:none}.dsc-track+.dsc-delete,.dsc-track-badge+.dsc-delete,.dsc-track-marker+.dsc-delete{margin-left:0}.dsc-text{color:var(--ink);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.45}.dsc-reply-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-left:32px;padding:0;font-size:12px;font-weight:600}.dsc-reply-composer{flex-direction:column;gap:6px;margin-left:32px;display:flex}.dsc-reply-actions{justify-content:flex-end;gap:6px;display:flex}.dsc-composer{border-top:1px solid var(--bg-2);align-items:flex-end;gap:6px;margin-top:10px;padding-top:10px;display:flex}.dsc-composer .input{resize:vertical;flex:1;min-width:0}.dsc-loading{color:var(--muted);justify-content:center;align-items:center;gap:10px;padding:32px 0;font-size:13px;display:flex}.dsc-loading-spinner,.dsc-sending-spinner{border:2px solid color-mix(in srgb,var(--accent)20%,transparent);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:1.05s linear infinite spin}.dsc-message.dsc-pending{opacity:.65}.dsc-sending{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:inline-flex}.dsc-sending-spinner{width:11px;height:11px}.dsc-message.deleting{opacity:.45;pointer-events:none}.dsc-post-error{color:var(--danger,#dc3545);margin-top:8px;font-size:12px}.dsc-note{background:color-mix(in srgb,var(--accent)6%,var(--card));border:1px solid color-mix(in srgb,var(--accent)18%,transparent);border-left:3px solid var(--accent);border-radius:8px;flex-direction:column;gap:4px;margin-top:6px;padding:10px 12px;display:flex}.dsc-note-label{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);font-size:11px;font-weight:600}.dsc-note-text{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.dsc-note.removed{opacity:.7;border-left-color:var(--muted)}.dsc-note.removed .dsc-note-label{color:var(--muted)}.dsc-action-label{color:var(--muted);font-size:11px}.dsc-attachment{background:var(--card-2);border:1px solid var(--bg-2);color:inherit;border-radius:8px;align-items:center;gap:8px;min-width:0;max-width:100%;margin-top:4px;padding:6px 8px;text-decoration:none;display:flex}a.dsc-attachment:hover{border-color:var(--accent)}.dsc-attachment.removed{opacity:.7;flex-direction:column;align-items:flex-start;gap:2px;font-style:italic}.dsc-attachment.removed .dsc-attachment-title,.dsc-attachment.removed .dsc-attachment-host{min-width:0;max-width:100%}.dsc-attachment-thumb{background:var(--bg-2);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.dsc-attachment-thumb img{object-fit:cover;width:100%;height:100%}.dsc-attachment-icon{font-size:16px}.dsc-attachment-meta{flex-direction:column;min-width:0;display:flex}.dsc-attachment-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.dsc-attachment-host{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.te-shared-tag{background:color-mix(in srgb,var(--accent-2,#2f6f6a)15%,transparent);color:var(--accent-2,#2f6f6a);font-weight:600}.dsc-invite-notice{color:var(--accent-2,#2f6f6a);margin-top:4px;font-size:11px}.tag-shared{background:color-mix(in srgb,var(--accent-2,#2f6f6a)18%,transparent);color:var(--accent-2,#2f6f6a);font-weight:600}.te-readonly-banner{background:color-mix(in srgb,var(--accent-2,#2f6f6a)12%,transparent);border:1px solid color-mix(in srgb,var(--accent-2,#2f6f6a)30%,transparent);color:var(--accent-2,#2f6f6a);border-radius:8px;align-items:center;gap:8px;margin:0 0 10px;padding:8px 12px;font-size:13px;display:flex}.te-readonly-banner svg{flex-shrink:0}.attachment-link-card.playable{cursor:pointer;text-align:left;font:inherit;color:inherit;background:0 0;border:none;width:100%;padding:0}.attachment-thumb{position:relative}.attachment-play-badge{color:#fff;background:#000000a6;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:8px;display:flex;position:absolute;bottom:2px;right:2px}.dsc-attachment.playable{cursor:pointer;border:1px solid var(--bg-2);font:inherit;text-align:left;width:100%}.dsc-attachment.playable:hover{border-color:var(--accent)}.dsc-attachment-thumb{position:relative}.dsc-attachment-play{color:#fff;background:#000000a6;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:7px;display:flex;position:absolute;bottom:1px;right:1px}.gmp{z-index:1200;background:var(--card);border:1px solid var(--bg-2);border-radius:12px;flex-direction:column;display:flex;position:fixed;bottom:16px;right:16px;overflow:hidden;box-shadow:0 12px 32px #00000047}body.gmp-open{padding-bottom:var(--gmp-reserve,140px)}.gmp-audio-mode,.gmp-video{width:360px}.gmp-header{background:var(--card-2);border-bottom:1px solid var(--bg-2);align-items:center;gap:8px;padding:6px 8px 6px 12px;display:flex}.gmp-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}.gmp-controls{gap:2px;display:flex}.gmp-btn{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:13px;line-height:1;text-decoration:none;display:flex}.gmp-btn:hover{background:var(--bg-2);color:var(--ink)}.gmp-body{display:flex}.gmp-audio-mode .gmp-body{padding:0}.gmp-audio{width:100%;height:54px}.gmp-audio-mode .gmp-frame{border:none;width:100%;height:120px;display:block}.gmp-video .gmp-frame{background:#000;border:none;width:360px;height:203px;display:block}.gmp-video video.gmp-frame{object-fit:contain}.gmp-backdrop{z-index:1199;background:#000000b3;position:fixed;inset:0}.gmp-maximized{width:min(90vw,1100px);inset:50% auto auto 50%;transform:translate(-50%,-50%)}.gmp-maximized.gmp-video .gmp-frame{width:min(90vw,1100px);height:min(50.6vw,619px)}@media (max-width:600px){.gmp{bottom:8px}.gmp-audio-mode,.gmp-video{width:calc(100vw - 24px);right:12px}.gmp-video .gmp-frame{width:100%;height:56vw}}.gmp-message{width:100%;min-height:80px;color:var(--muted);justify-content:center;align-items:center;gap:4px;padding:16px;font-size:13px;display:flex}.gmp-message a{color:var(--accent);font-weight:600}.dsc-inline-link{color:var(--accent);word-break:break-all}.dsc-inline-play{border:1px solid color-mix(in srgb,var(--accent)40%,transparent);background:color-mix(in srgb,var(--accent)12%,transparent);max-width:100%;color:var(--accent);font:inherit;cursor:pointer;vertical-align:baseline;border-radius:999px;align-items:center;gap:3px;margin:0 1px;padding:1px 7px;font-size:12px;font-weight:600;display:inline-flex}.dsc-inline-play:hover{background:color-mix(in srgb,var(--accent)22%,transparent)}.dsc-inline-play-label{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.note-author{color:var(--muted);margin-top:4px;font-size:11px;font-style:italic}.dsc-live-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:7px;display:inline-block}.dsc-live-dot.connected{background:#2fa463;box-shadow:0 0 0 2px #2fa46340}.dsc-live-dot.connecting{background:#d9a514;animation:1.2s ease-in-out infinite dsc-live-pulse}.dsc-live-dot.unavailable{background:#c25b4e;animation:1.2s ease-in-out infinite dsc-live-pulse}@keyframes dsc-live-pulse{0%,to{opacity:1}50%{opacity:.35}}.song-dock{z-index:1;background:var(--card);padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #2a1f151a;flex:none;justify-content:space-around;align-items:stretch;display:flex;position:relative;box-shadow:0 -4px 16px #2a1f1512}.song-dock-btn{letter-spacing:.2px;max-width:140px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:4px 0;font-size:10px;font-weight:500;display:flex}.song-dock-btn.active{color:var(--accent-3)}.song-dock-icon{width:21px;height:21px;display:inline-flex;position:relative}.song-dock-icon svg{width:100%;height:100%}.song-dock-badge{background:var(--accent);color:#fff;text-align:center;border-radius:999px;min-width:15px;height:15px;padding:0 4px;font-size:9px;font-weight:700;line-height:15px;position:absolute;top:-5px;right:-9px}.song-sheet-backdrop{z-index:90;background:#2a1f1559;align-items:flex-end;animation:.18s sheet-fade;display:flex;position:fixed;inset:0}.song-sheet{background:var(--bg,var(--card));border-radius:18px 18px 0 0;flex-direction:column;width:100%;max-height:85dvh;animation:.22s sheet-rise;display:flex;box-shadow:0 -16px 40px #2a1f1540}.song-sheet-grip{background:#2a1f152e;border-radius:999px;width:40px;height:4px;margin:8px auto 0}.song-sheet-header{justify-content:space-between;align-items:center;padding:6px 16px 8px;display:flex}.song-sheet-title{font-family:var(--font-display,"Fraunces",Georgia,serif);color:var(--ink);font-size:17px;font-weight:600}.song-sheet-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:#2a1f150f;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.song-sheet-close svg{width:14px;height:14px}.song-sheet-body{min-height:120px;padding:0 12px calc(16px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}@keyframes sheet-rise{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes sheet-fade{0%{opacity:0}to{opacity:1}}.song-desk-drawer{--desk-drawer-h:42dvh;z-index:2;height:var(--desk-drawer-h);background:var(--bg,var(--card));border-top:1px solid #2a1f151a;border-radius:18px 18px 0 0;flex-direction:column;flex:none;animation:.22s sheet-rise;display:flex;position:relative;box-shadow:0 -10px 28px #2a1f1529}.song-desk-drawer-body{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:0 12px 10px;overflow-y:auto}.song-desk-drawer .wd-sheet .wd-body{padding:4px 2px 10px}.text-editor-v2.specs-hidden .te-spec-badge,.text-editor-v2.specs-hidden .te-spec-edit{display:none}.text-editor-v2.specs-hidden .te-display-left{width:0;padding:0}.text-editor-v2.specs-hidden .te-left-gutter{width:44px}@media (max-width:520px){.text-editor-v2.specs-hidden .te-line-num{display:block}}.song-sheet-body .card{box-shadow:none;background:0 0;border:none}.song-sheet-body .section-label{display:none}.shell.with-rail .rail{align-self:start;max-height:calc(100dvh - 32px);position:sticky;top:16px}.workspace-panel{background:var(--card);border-radius:var(--radius);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.wsp-tabs{background:var(--card-2);border-bottom:1px solid var(--bg-2);flex-shrink:0;gap:4px;padding:6px 8px 0;display:flex}.wsp-tab{white-space:nowrap;min-width:0;color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 6px;font-size:13px;font-weight:600;transition:color .15s,border-color .15s;display:flex;overflow:hidden}.wsp-tab svg{flex-shrink:0;width:14px;height:14px}.wsp-tab:hover{color:var(--ink)}.wsp-tab.active{color:var(--accent-3);border-bottom-color:var(--accent)}.wsp-tab-count{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10.5px;font-weight:700;line-height:1;display:inline-flex}.wsp-pane{flex:1;min-height:0;display:none}.wsp-pane-discussion.active{flex-direction:column;display:flex}.wsp-pane-sessions.active{padding-bottom:calc(8px + env(safe-area-inset-bottom));display:block;overflow-y:auto}.wsp-pane-discussion .dsc-card{min-height:0;box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;display:flex}.wsp-pane-discussion .dsc-feed-wrap{flex:1;min-height:0}.wsp-pane-discussion .dsc-feed{scrollbar-gutter:stable;flex:1;max-height:none;padding-right:10px}.wsp-pane-discussion .section-label{display:none}.wsp-pane-notes.active{padding:14px 14px calc(14px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex;overflow-y:auto}.wsp-pane-notes .card{box-shadow:none;background:0 0;border:none;padding:0}@media (min-width:1025px){.shell.with-rail~.floating-new-btn,.floating-new-btn{right:364px}}@media (min-width:1500px){.floating-new-btn{right:424px}}.shell.with-rail.rail-collapsed{grid-template-columns:minmax(0,1fr) 52px}@media (min-width:1025px){.shell.with-rail.rail-collapsed~.floating-new-btn{right:96px}}.wsp-handle{background:var(--card);border:1px solid var(--bg-2);border-radius:var(--radius);width:100%;min-height:min(480px,80vh);color:var(--muted);cursor:pointer;flex-direction:column;flex:1;align-items:center;gap:16px;padding:16px 6px;transition:color .15s,background .15s;display:flex}.wsp-handle:hover{color:var(--ink);background:var(--card-2)}.wsp-handle-icon{flex-shrink:0;display:inline-flex;position:relative}.wsp-handle-icon svg{width:22px;height:22px}.wsp-handle-badge{background:var(--accent);color:#fff;text-align:center;border-radius:999px;min-width:15px;height:15px;padding:0 4px;font-size:9px;font-weight:700;line-height:15px;position:absolute;top:-6px;right:-9px}.wsp-handle-label{writing-mode:vertical-rl;letter-spacing:.02em;flex:1;font-size:13px;font-weight:600}.wsp-handle-chevron{flex-shrink:0}.wsp-handle-chevron svg{width:18px;height:18px}.wsp-collapse{color:var(--muted);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:10px 8px;transition:color .15s;display:inline-flex}.wsp-collapse:hover{color:var(--ink)}.wsp-collapse svg{width:16px;height:16px}.activity-dot{background:var(--accent);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)20%,transparent);vertical-align:2px;border-radius:50%;margin-right:7px;display:inline-block}.nav-icon,.bottom-nav-icon{position:relative}.nav-badge{background:var(--accent);color:#fff;text-align:center;border-radius:999px;min-width:15px;height:15px;padding:0 4px;font-size:10px;font-weight:700;line-height:15px;position:absolute;top:-6px;right:-10px}.te-capo-note{color:var(--muted);padding:2px 12px 8px;font-size:12px;font-style:italic}.te-capo-edit-note{color:var(--muted);font-size:11px;font-style:italic}.te-capo-edit-note.inline{padding:2px 8px 0}.te-section-chords-edit .te-capo-edit-note{flex-basis:100%}.song-masthead{text-align:center;padding:20px 56px 0;position:relative}.smh-title{max-width:100%;font-family:var(--font-display,"Fraunces",Georgia,serif);letter-spacing:.2px;color:var(--ink);margin:0 auto;font-size:clamp(26px,3.4vw,38px);font-weight:600;line-height:1.15;display:block}.smh-title--btn{cursor:pointer;background:0 0;border:none;padding:0;transition:color .15s}.smh-title--btn:hover,.smh-title--btn:focus-visible{color:var(--accent)}.smh-byline{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 4px;margin-top:7px;font-size:13px;display:flex}.smh-bit{align-items:baseline;gap:4px;display:inline-flex}.smh-dot{opacity:.55;padding:0 3px}.smh-fact{color:var(--muted);white-space:nowrap}.smh-fact--btn{font:inherit;cursor:pointer;color:var(--muted);background:0 0;border:none;border-bottom:1px dotted #0000;padding:0;transition:color .15s,border-color .15s}.smh-fact--btn:hover,.smh-fact--btn:focus-visible{color:var(--accent);border-bottom-color:var(--accent)}.smh-fact--ghost{opacity:.85;font-style:italic}.smh-fact--shared{font-style:italic}.smh-rule{max-width:300px;color:var(--muted);opacity:.55;align-items:center;gap:10px;margin:15px auto 6px;display:flex}.smh-rule>span{opacity:.55;background:currentColor;flex:1;height:1px}.smh-tools{align-items:center;gap:4px;display:flex;position:absolute;top:10px;right:12px}.smh-menu-wrap{position:relative}.smh-tool{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.smh-tool svg{width:17px;height:17px}.smh-tool .te-spinner{width:14px;height:14px}.smh-tool:hover:not(:disabled),.smh-tool.active{background:var(--bg-2);color:var(--ink)}.smh-tool:disabled{opacity:.5;cursor:default}.smh-menu{top:calc(100% + 4px)}@media (max-width:768px){.song-masthead{padding:14px 44px 0}.smh-tools{top:6px;right:8px}}.te-menu-group-label{letter-spacing:.8px;text-transform:uppercase;color:var(--muted);-webkit-user-select:none;user-select:none;padding:8px 12px 3px;font-size:10.5px;font-weight:700}.te-menu-group-label+.te-menu-item{margin-top:1px}.te-menu-group-label:not(:first-child),.te-more-menu .te-menu-item.danger{border-top:1px solid var(--bg-2);margin-top:5px;padding-top:10px}.te-menu-kbd{background:var(--card-2);color:var(--muted);border:1px solid #2a1f152e;border-bottom-width:2px;border-radius:5px;margin-left:auto;padding:3px 6px;font-family:inherit;font-size:11px;line-height:1}.ecb{z-index:100;background:color-mix(in srgb,var(--card)90%,transparent);-webkit-backdrop-filter:blur(10px);border:1px solid #2a1f1521;border-radius:999px;align-items:center;gap:3px;max-width:calc(100vw - 16px);padding:5px;transition:transform .15s;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #2a1f1533}.ecb button{height:36px;color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:999px;align-items:center;gap:7px;padding:0 13px;font-size:12.5px;font-weight:500;transition:background .15s;display:inline-flex}.ecb button:hover{background:var(--bg-2)}.ecb button svg{flex:none;width:16px;height:16px}.ecb-divider{background:#2a1f1524;flex:none;width:1px;height:20px;margin:0 2px}.ecb-dot{border-radius:50%;flex:none;width:8px;height:8px}.ecb-save--clean{color:var(--muted)}.ecb-save--clean .ecb-dot{background:var(--accent-2)}.ecb-save--dirty .ecb-dot{background:var(--accent)}.ecb-save--saving .ecb-dot{background:var(--ring);animation:1s ease-in-out infinite ecb-pulse}@keyframes ecb-pulse{0%,to{opacity:1}50%{opacity:.35}}.ecb-line-group{align-items:center;gap:2px;animation:.16s ecb-grow;display:flex}@keyframes ecb-grow{0%{opacity:0;transform:translateY(4px)}}.ecb-line-btn{color:var(--accent-3,var(--accent))}.ecb-line-dismiss{color:var(--muted)}.ecb-mode{background:var(--bg-2);border-radius:999px;align-items:center;gap:2px;padding:2px;display:flex}.ecb .ecb-mode-btn{height:30px;color:var(--muted);padding:0 11px}.ecb .ecb-mode-btn.active{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #2a1f1524}.ecb-focus.active{background:var(--ink);color:var(--bg)}.ecb-focus.active:hover{background:var(--ink);opacity:.9}.text-editor-v2{padding-bottom:76px}@media (max-width:900px){.ecb{bottom:calc(66px + env(safe-area-inset-bottom))}}body:has(.song-sheet-backdrop) .ecb{display:none}body:has(.song-desk-drawer) .ecb{bottom:calc(42dvh + 66px + env(safe-area-inset-bottom))}@media (max-width:768px){.ecb-focus-label,.ecb-mode-label,.ecb-line-label:not(:empty){display:none}.ecb button{padding:0 11px}}body.song-focus-mode .sr-sidebar,body.song-focus-mode .sr-topbar,body.song-focus-mode .sr-rail,body.song-focus-mode .song-dock,body.song-focus-mode .song-desk-drawer,body.song-focus-mode .sr-fb-tab,body.song-focus-mode .te-readonly-banner{display:none}body.song-focus-mode .sr-content--fluid{max-width:880px;margin-left:auto;margin-right:auto}body.song-focus-mode .song-masthead{opacity:.35;transition:opacity .25s}body.song-focus-mode .song-masthead:hover,body.song-focus-mode .song-masthead:focus-within{opacity:1}body.song-focus-mode .ecb{opacity:.3;transition:opacity .25s,transform .15s}body.song-focus-mode .ecb:hover,body.song-focus-mode .ecb:focus-within{opacity:1}@media (max-width:900px){body.song-focus-mode .ecb{bottom:calc(18px + env(safe-area-inset-bottom))}}.muse{z-index:70;background:var(--ink);color:var(--bg);border-radius:999px;align-items:center;gap:2px;padding:4px 6px;animation:.14s muse-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 26px #2a1f1552}.muse-word{max-width:92px;color:color-mix(in srgb,var(--bg)72%,transparent);text-overflow:ellipsis;white-space:nowrap;padding:0 8px;font-size:11px;font-style:italic;overflow:hidden}.muse-btn{color:var(--bg);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:500}.muse-btn:hover{background:color-mix(in srgb,var(--bg)18%,transparent)}@keyframes muse-in{0%{opacity:0;transform:translate(-50%)translateY(4px)}}.workspace-rail{flex:1;gap:8px;min-height:0;display:flex}.workspace-panel.wsp-bare{flex:1;min-width:0;padding-top:28px;position:relative}.wsp-close{z-index:5;width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;top:2px;left:0}.wsp-close:hover{color:var(--ink);background:#2a1f1514}.wsp-close svg{width:13px;height:13px}.sr-rail:has(.workspace-rail){padding:14px 0 0}.sr-rail:not(.sr-rail--collapsed):has(.workspace-rail){flex:0 0 380px;width:380px}.wser-strip{background:var(--card);border:1px solid var(--bg-2);border-radius:var(--radius);flex-direction:column;flex:0 0 52px;align-items:stretch;gap:4px;width:52px;min-height:min(480px,80vh);padding:8px 0;display:flex;overflow:hidden}.wser-tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px 0;transition:color .15s,background .15s;display:flex}.wser-tab:hover{color:var(--ink);background:var(--card-2)}.wser-tab-desk:hover{color:var(--accent)}.wser-tab.active{background:color-mix(in srgb,var(--accent)14%,transparent);color:var(--accent-3,var(--accent));box-shadow:inset 3px 0 0 var(--accent)}.wser-tab.active:hover{background:color-mix(in srgb,var(--accent)20%,transparent)}.wser-tab-icon{flex-shrink:0;display:inline-flex;position:relative}.wser-tab-icon svg{width:19px;height:19px}.wser-tab-label{writing-mode:vertical-rl;letter-spacing:.04em;font-size:11.5px;font-weight:600}.wser-strip-sep{background:var(--bg-2);flex:none;height:1px;margin:2px 8px}.wsp-pane-desk.active{flex-direction:column;display:flex;overflow:hidden}.wd-rail{flex:1;min-height:0;overflow-y:auto}.wd-body{flex-direction:column;gap:12px;padding:12px;display:flex}.wd-sheet .wd-body{padding:4px 2px calc(10px + env(safe-area-inset-bottom))}.wd-empty{color:var(--muted);text-align:center;padding:28px 10px;font-size:13px}.wd-empty p{margin:0 0 8px}.wd-empty-sub{opacity:.85;font-size:12px}.wd-card{background:var(--card-2);border:1px solid var(--bg-2);border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.wd-card-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.wd-card-title{text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-size:10px;font-weight:700}.wd-line-context{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:11px;display:inline-flex;overflow:hidden}.wd-lock{flex-shrink:0}.wd-words{flex-wrap:wrap;gap:4px;display:flex}.wd-word{color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 6px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:12.5px;line-height:1}.wd-word:hover{border-color:var(--bg-2);background:var(--card)}.wd-word.selected{border-color:var(--accent);background:#c86c1a1a}.wd-word.end{font-weight:700}.wd-line-empty{color:var(--muted);font-size:12px;font-style:italic}.wd-meter{flex-wrap:wrap;align-items:baseline;gap:4px 12px;font-size:12px;display:flex}.wd-syllables{color:var(--muted);font-weight:600}.wd-back{border:1px solid var(--bg-2);background:var(--card);color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px}.wd-back:hover{color:var(--accent);border-color:var(--accent)}.wd-lookup{align-items:center;gap:8px;display:flex}.wd-query{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:13px;font-weight:700;overflow:hidden}.wd-query.small{font-size:12px}.wd-lookup-input{border:1px solid var(--bg-2);background:var(--card);min-width:0;color:var(--ink);border-radius:6px;flex:1;padding:4px 8px;font-size:12px}.wd-lookup-input::placeholder{color:var(--muted);opacity:.7}.wd-hint{color:var(--muted);font-size:12px}.wd-rhyme-group{flex-direction:column;gap:4px;display:flex}.wd-group-label{text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-size:10px;font-weight:600}.wd-suggestions{flex-wrap:wrap;gap:4px;display:flex}.wd-suggestion{border:1px solid var(--bg-2);background:var(--card);border-radius:6px;align-items:stretch;display:inline-flex;overflow:hidden}.wd-suggestion-word{color:var(--ink);background:0 0;border:none;align-items:center;gap:4px;padding:3px 6px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:12px;display:inline-flex}button.wd-suggestion-word{cursor:pointer}button.wd-suggestion-word:hover{color:var(--accent);background:#c86c1a1a}.wd-syl{color:var(--muted);font-size:9px}.wd-use{border:none;border-left:1px solid var(--bg-2);cursor:pointer;color:var(--muted);background:0 0;padding:0 6px;font-size:10px}.wd-use:hover{background:var(--accent);color:#fff}.wd-ai-actions{flex-wrap:wrap;gap:6px;display:flex}.wd-ai-btn{border:1px solid var(--bg-2);background:var(--card);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:6px;flex:1;padding:5px 8px;font-size:11.5px}.wd-ai-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.wd-ai-btn.active{border-color:var(--accent)}.wd-ai-btn:disabled{opacity:.5;cursor:default}.wd-preview-tag{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);background:#c86c1a1f;border-radius:999px;padding:1px 6px;font-size:9px;font-weight:700}.wd-ai-results{flex-direction:column;gap:6px;display:flex}.wd-ai-result{border:1px solid var(--bg-2);background:var(--card);border-radius:6px;justify-content:space-between;align-items:center;gap:6px;padding:5px 8px;display:flex}.wd-ai-text{font-size:12px}.wd-ai-note{color:var(--muted);font-size:10px;font-style:italic}.te-action-btn--lg{border-radius:6px;width:28px;height:28px}.te-action-btn--lg svg{width:16px;height:16px}.te-line-lock-badge{width:28px;height:28px;color:var(--accent);justify-content:center;align-items:center;display:inline-flex}.te-line-lock-badge svg{width:15px;height:15px}.te-display-line.selected{background:#c86c1a14;border-radius:8px}@media (max-width:768px){.te-m-line.sel{background:#c86c1a17}.te-m-actions{justify-content:flex-end;margin-top:10px;display:flex}.te-m-action.te-m-delete{border:.5px solid var(--bg-2);background:var(--card-2);color:#b04330;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-width:52px;height:44px;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.te-m-action.te-m-delete svg{width:18px;height:18px}.te-m-action.te-m-delete:disabled{opacity:.4}}@media print{.ecb,.muse,.smh-tools{display:none!important}}@media (prefers-reduced-motion:reduce){.muse,.ecb-line-group,.ecb-save--saving .ecb-dot{animation:none}}.rail-header-actions{align-items:center;gap:6px;display:flex}.vc-modal{width:min(440px,92vw)}.vc-stage{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:20px 8px 12px;display:flex}.vc-timer{font-variant-numeric:tabular-nums;letter-spacing:1px;color:var(--ink);align-items:center;gap:10px;font-size:30px;display:flex}.vc-rec-dot{background:#c0392b;border-radius:50%;width:12px;height:12px;animation:1.4s ease-in-out infinite vc-pulse}@keyframes vc-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}.vc-level{background:#2a1f151f;border-radius:3px;width:100%;max-width:280px;height:6px;overflow:hidden}html[data-theme=midnight] .vc-level,html[data-theme=noir] .vc-level{background:#ffffff24}.vc-level-fill{background:var(--accent);border-radius:3px;width:0%;height:100%;transition:width 90ms linear}.vc-warning{color:var(--accent);font-size:12.5px}.vc-audio{width:100%}.vc-stop,.vc-start{border:1px solid var(--ring);background:var(--card-2);color:#c0392b;cursor:pointer;width:56px;height:56px;box-shadow:var(--shadow);border-radius:50%;justify-content:center;align-items:center;transition:transform .12s;display:flex}.vc-stop:hover,.vc-start:hover{transform:translateY(-1px)}.vc-stop svg,.vc-start svg{width:24px;height:24px}.srch-overlay{z-index:140;background:#2a1f154d;justify-content:center;align-items:flex-start;padding:11vh 16px 16px;display:flex;position:fixed;inset:0}.srch-panel{background:var(--card);border-radius:var(--radius);width:min(640px,100%);max-height:min(580px,78dvh);box-shadow:var(--shadow);border:1px solid #2a1f1514;flex-direction:column;display:flex;overflow:hidden}.srch-inputrow{border-bottom:1px solid #2a1f151a;flex:none;align-items:center;gap:10px;padding:13px 16px;display:flex}.srch-inputrow>svg{width:19px;height:19px;color:var(--muted);flex:none}.srch-input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:17px}.srch-input::placeholder{color:var(--muted);opacity:.8}.srch-results{overscroll-behavior:contain;flex:auto;min-height:60px;padding:2px 8px 10px;overflow-y:auto}.srch-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;padding:14px 10px 4px;font-size:11px;font-weight:700}.srch-more{letter-spacing:normal;text-transform:none;font-weight:500}.srch-item{text-align:left;width:100%;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:8px 10px;display:block}.srch-item.is-active{background:#2a1f1512}.srch-primary{overflow-wrap:anywhere;font-size:14px;line-height:1.35;display:block}.srch-secondary{color:var(--muted);overflow-wrap:anywhere;margin-top:1px;font-size:12px;display:block}.srch-snippet{color:var(--muted);overflow-wrap:anywhere;margin-top:2px;font-size:12.5px;line-height:1.4;display:block}.srch-hl{background:color-mix(in srgb,var(--accent)26%,transparent);color:inherit;border-radius:3px;padding:0 1px}.srch-empty{text-align:center;color:var(--muted);padding:34px 24px;font-size:13.5px;line-height:1.5}.srch-empty p{max-width:380px;margin:0 auto}.srch-empty-head{font-family:var(--font-display,"Fraunces","Source Serif 4",Georgia,serif);color:var(--ink);overflow-wrap:anywhere;font-size:18px;margin-bottom:6px!important}.srch-foot{color:var(--muted);border-top:1px solid #2a1f1514;flex:none;align-items:center;gap:14px;padding:8px 16px;font-size:11px;display:flex}.srch-foot kbd{border:1px solid #2a1f1529;border-radius:4px;margin-right:3px;padding:0 4px;font-family:inherit;font-size:10px;line-height:15px;display:inline-block}.srch-loading{margin-left:auto}.srch-close{display:none}@media (max-width:640px){.srch-overlay{padding:0}.srch-panel{border:none;border-radius:0;width:100%;height:100dvh;max-height:none}.srch-inputrow{padding-top:max(13px,env(safe-area-inset-top))}.srch-close{display:inline-flex}.srch-item{min-height:44px;padding:10px 12px}.srch-foot{display:none}.srch-results{padding-bottom:max(10px,env(safe-area-inset-bottom))}}
.card{box-shadow:0 6px 18px #2a1f150d}.list-item .title,.list .title{font-family:var(--font-body,"IBM Plex Sans",sans-serif);font-size:.95rem;font-weight:500;line-height:1.35}.section-label{color:var(--muted);letter-spacing:.09em;font-size:11px;font-weight:500}.section-title{font-family:var(--font-display,"Fraunces",Georgia,serif);font-size:1.05rem;font-weight:600}.tag{color:var(--muted);background:#2a1f150f}input:not([class]),textarea:not([class]),select:not([class]){font-family:var(--font-body,"IBM Plex Sans",sans-serif);color:var(--ink);background:#fffdf9;border:1px solid #2a1f151f;border-radius:10px;padding:9px 12px;font-size:.92rem}input:not([class]):focus,textarea:not([class]):focus,select:not([class]):focus{border-color:#0000;outline:2px solid #e3b2778c}.btn.danger{color:#a3402d;box-shadow:none;background:0 0;border:1px solid #a3402d47}.btn.danger:hover{background:#a3402d14}.btn.small{box-shadow:none;padding:5px 12px;font-size:12.5px}
