:root{--ink: #23231d;--ink-soft: #4b4a40;--parchment: #ece3cf;--parchment-soft: #f4eede;--parchment-card: #f7f2e6;--pine: #0b3e49;--pine-deep: #082e37;--sage: #6e6126;--ochre: #8b3a22;--ochre-soft: #c98068;--line: #d8cdb2;--serif: "Fraunces", Georgia, serif;--sans: "Karla", system-ui, sans-serif;--bg: var(--parchment);--bg-card: var(--parchment-card);--bg-soft: var(--parchment-soft);--fg: var(--ink);--fg-soft: var(--ink-soft);--brand: var(--pine);--accent: var(--ochre);--muted: var(--ink-soft);--red: var(--ochre);--radius: 4px}*{box-sizing:border-box}body{margin:0;font-family:var(--sans);background:var(--bg);color:var(--fg);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--serif);line-height:1.15}h2{margin-top:2rem}h3{margin-bottom:.25rem}code{font-size:.85rem}.wrap{max-width:1180px;margin-inline:auto;padding-inline:clamp(18px,4vw,40px)}header.top{border-bottom:1px solid var(--line);padding-block:.7rem;position:sticky;top:0;background:var(--bg);z-index:20}.top-inner{display:flex;align-items:center;gap:.9rem;flex-wrap:nowrap;min-width:0}.brand{text-decoration:none;flex:none;display:flex;flex-direction:column;justify-content:center;min-height:2.75rem;padding:.15rem .2rem}.brand b{font-family:var(--serif);font-size:1.25rem;color:var(--brand);display:block;line-height:1}.brand span{font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--sage);font-weight:700}@media(max-width:520px){.brand span{display:none}}.top-actions{display:flex;align-items:center;gap:.5rem;flex:none;margin-inline-start:auto}.role{font-size:.8rem;color:var(--fg-soft)}details.more{position:relative}details.more>summary{list-style:none;cursor:pointer;font-weight:700;font-size:1rem;line-height:1;color:var(--brand);border:1.5px solid var(--brand);border-radius:2px;padding:.45rem .7rem;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;box-sizing:border-box}details.more>summary::-webkit-details-marker{display:none}details.more .menu{position:absolute;right:0;top:calc(100% + .45rem);z-index:30;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:.6rem;min-width:13rem;box-shadow:0 18px 44px -22px #082e3773;display:grid;gap:.35rem;justify-items:stretch}details.more .menu .btn,details.more .menu button{width:100%;justify-content:flex-start;text-decoration:none}details.more .menu .mrow{font-size:.8rem;color:var(--fg-soft);padding:.3rem .2rem}@media(min-width:861px){details.more>summary{display:none}details.more .menu{position:static;box-shadow:none;border:0;padding:0;min-width:0;display:flex;gap:.6rem;align-items:center;background:none}details.more .menu .btn,details.more .menu button{width:auto;justify-content:center}details.more .menu .mi{display:none}}main.app{padding-block:1.6rem 7rem}.eyebrow{font-weight:700;font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}h1.page,h2.page{font-size:clamp(1.7rem,3.4vw,2.4rem);margin:.4em 0 .3em}.sub{color:var(--fg-soft);max-width:40em;margin-bottom:1.4rem}.muted{color:var(--muted)}.error{color:var(--accent);font-weight:600}.search{width:100%;font-family:var(--sans);font-size:1.05rem;padding:.85rem 1rem;min-height:2.75rem;border:1px solid var(--line);border-radius:2px;background:var(--bg-soft);color:var(--fg);margin-bottom:1rem}.search:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}button,.btn{touch-action:manipulation}a,button,.song-row{-webkit-tap-highlight-color:transparent}.song-row .row-open:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:1.2rem;align-items:start}@media(max-width:860px){.split{grid-template-columns:1fr}.split.with-open .list-col{display:none}}.detail-col{position:sticky;top:4.6rem}@media(min-width:861px){.detail-col{max-height:calc(100dvh - 5.8rem);overflow-y:auto}}@media(max-width:860px){.detail-col{position:static}}.back-link{color:var(--accent);text-decoration:none;font-weight:700;display:inline-flex;align-items:center;min-height:2.75rem;padding:.55rem .3rem .55rem 0;margin-bottom:.6rem}.txt-link{color:var(--accent);text-decoration:none;font-weight:700}.txt-link:hover{text-decoration:underline}@media(min-width:861px){.back-link.only-mobile{display:none}}.song-list{display:grid;gap:.8rem}.song-row{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);display:flex;align-items:flex-start;transition:box-shadow .15s,border-color .15s}.song-row .row-open{flex:1;min-width:0;padding:1rem 1.1rem;text-decoration:none;color:inherit;border-radius:var(--radius)}.song-row>.qadd{margin:.8rem 1rem 0 0}.song-row:hover{box-shadow:0 18px 44px -22px #082e3773}.song-row.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.song-row .row1{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem}.song-row-main{min-width:0;display:grid;gap:.15rem}.song-row-main strong{font-family:var(--serif);font-size:1.15rem;color:var(--brand)}.song-row-main .meta{font-size:.85rem;color:var(--fg-soft)}.excerpt{font-size:.88rem;color:var(--fg-soft);margin-top:.45rem}.excerpt mark{background:var(--accent);color:#fff;padding:0 .15em;border-radius:2px}.qadd{flex:none;font-family:var(--sans);font-size:.78rem;font-weight:700;border:1.5px solid var(--brand);background:none;color:var(--brand);border-radius:99px;padding:.35em .8em;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;min-height:2.75rem}.qadd.added{background:var(--brand);color:var(--bg-soft)}.badges{display:flex;gap:.4rem;margin-top:.5rem;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);border-radius:99px;padding:.2em .7em;color:var(--fg-soft);white-space:nowrap}.badge.have,.badge.on{border:1.5px solid var(--brand);color:var(--brand);background:none}.badge.missing{color:var(--fg-soft);border-style:dashed}.detail{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.detail-empty{padding:2.5rem 1.5rem;text-align:center;color:var(--fg-soft)}.detail-head{padding:1rem 1.4rem .85rem;border-bottom:1px solid var(--line)}.detail-head h2{font-size:1.32rem;color:var(--brand);margin:0}.detail-head .meta{font-size:.86rem;color:var(--fg-soft)}.detail-head .badges{margin-top:.4rem}.subtabs{display:flex;gap:.2rem;padding:0 1.4rem;border-bottom:1px solid var(--line);flex-wrap:wrap}.subtabs button{background:none;border:0;font-family:var(--sans);font-weight:700;font-size:.9rem;color:var(--fg-soft);padding:.8rem .7rem;cursor:pointer;border-bottom:2px solid transparent;border-radius:0}.subtabs button.active{color:var(--brand);border-bottom-color:var(--accent)}.pane{padding:1.3rem 1.4rem;display:grid;gap:.9rem}.pane-actions{padding:1rem 1.4rem;border-top:1px solid var(--line);display:flex;gap:.7rem;flex-wrap:wrap}.lyrics{font-family:var(--serif);font-size:1.08rem;line-height:1.8;white-space:pre-wrap}pre.lyrics,pre.plain{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.95rem;line-height:1.7;white-space:pre-wrap;background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;margin:0}.pills{display:flex;gap:.45rem;flex-wrap:wrap}.pills button{font-family:var(--sans);font-weight:700;font-size:.82rem;border:1.5px solid var(--line);background:none;color:var(--fg-soft);border-radius:99px;padding:.35em .9em;cursor:pointer;min-height:2.75rem}.pills button.active{border-color:var(--accent);color:var(--accent)}select.vselect{font-family:var(--sans);font-size:.95rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:2px;background:var(--bg-soft);color:var(--fg);max-width:100%;min-height:2.75rem}button,.btn{display:inline-flex;align-items:center;gap:.5em;justify-content:center;font-family:var(--sans);font-weight:700;font-size:.92rem;padding:.6rem 1.1rem;border-radius:2px;cursor:pointer;border:2px solid var(--fg-soft);text-decoration:none;background:var(--bg-card);color:var(--fg);min-height:2.75rem}button.primary,.btn.primary,button[type=submit]{background:var(--brand);color:var(--bg-soft);border-color:var(--brand)}button.ochre{background:var(--accent);color:#fdf7ec;border-color:var(--accent)}button.ghost,.btn.ghost{border-color:var(--brand);color:var(--brand);background:none;padding:.35rem .7rem;font-size:.85rem;min-height:2.75rem}button.danger,.btn.danger{border-color:var(--accent);color:var(--accent);background:none}button:disabled{opacity:.55;cursor:not-allowed}.btn.icon{padding:.4rem .5rem;line-height:0;min-width:2.75rem;min-height:2.75rem}.btn.icon svg{display:block}@media(hover:hover){button:hover:not(:disabled),.btn:hover{border-color:var(--ink-soft)}.mode-tab:hover,.subtabs button:hover{color:var(--brand);border-bottom-color:var(--line)}.pills button:hover,.vpills button:hover{border-color:var(--ink-soft);color:var(--brand)}button.primary:hover,.btn.primary:hover,button[type=submit]:hover{background:var(--pine-deep);border-color:var(--pine-deep)}button.ghost:hover,.btn.ghost:hover,.qadd:hover:not(.added),details.more>summary:hover,details.filters>summary:hover,.mode-act:hover,.fitem:hover{background:var(--bg-soft);border-color:var(--brand)}.qadd.added:hover{background:var(--pine-deep)}button.danger:hover,.btn.danger:hover,.filelist .rm:hover{background:#8b3a2214;border-color:var(--accent)}.back-link:hover,a.back:hover{text-decoration:underline;text-decoration-color:var(--accent)}}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;margin-top:1.2rem}.card.slim{padding:.9rem 1rem;display:grid;gap:.5rem;margin-bottom:.6rem}label{display:block;font-weight:700;font-size:.85rem;color:var(--brand);margin:.9rem 0 .35rem}label.check{display:flex;align-items:center;gap:.5rem}label.check input{width:auto}input[type=email],input[type=password],input[type=search],input[type=date],input[type=text],input:not([type]),select,textarea{width:100%;font-family:var(--sans);font-size:1rem;padding:.7rem .85rem;border:1px solid var(--line);border-radius:2px;background:var(--bg-soft);color:var(--fg);display:block;font-weight:400;min-height:2.75rem}textarea{resize:vertical;min-height:5rem}input[type=file]{background:none;border:1px dashed var(--line);border-radius:2px;padding:.6rem;width:100%;min-height:2.75rem}.row2{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:640px){.row2{grid-template-columns:1fr}}.btnrow{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-top:.6rem}.hint{font-size:.85rem;color:var(--fg-soft);font-weight:400}.warn{font-size:.9rem;font-weight:700;color:var(--ochre);margin-top:.4rem}.login-wrap{max-width:26rem;margin:4rem auto 0}.login-wrap h1{margin-top:0;font-size:1.5rem;color:var(--brand)}.setlist-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1.1rem;margin-top:.7rem;flex-wrap:wrap}.setlist-open{flex:1;min-width:0;display:block;margin:-.9rem -1.1rem;padding:.9rem 1.1rem;text-decoration:none;color:inherit;border-radius:var(--radius)}.setlist-row:hover .setlist-open b{text-decoration:underline;text-decoration-color:var(--accent)}.setlist-open:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.setlist-row b{font-family:var(--serif);color:var(--brand)}.install-card{margin-bottom:1rem}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{header.top,.no-print,#toast,.pane-actions,.btnrow,.back-link,.search,.browse-bar{display:none!important}.stage,.sp-ihandle,.sp-mhandle,.sp-x,.sp-edit,.sp-drop{display:none!important}.sp-cols{display:block}.setlist-row,.card,.sp-group{border-color:#999}.sp-t small{white-space:normal}}.stage .stage-view{display:flex;gap:.5rem;margin-bottom:1rem}.stage .stage-view[hidden]{display:none}.stage .stage-view button{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(244,238,222,.45);background:none;color:#f4eede;border-radius:99px;padding:.3rem .95rem;min-height:2.75rem;cursor:pointer}.stage .stage-view button.on{border-color:var(--ochre-soft);color:var(--ochre-soft)}.stage :is(button,a,#stage-body):focus-visible{outline:2px solid var(--ochre-soft);outline-offset:2px}.stage .stage-chart{display:inline-block;color:var(--ochre-soft);font-family:var(--sans);font-weight:700;font-size:1rem;margin-bottom:.6rem;padding:.45rem .3rem}.stage .stage-chart[hidden],.stage .snote[hidden]{display:none}.stage .snote{opacity:.85;margin:-.8rem 0 1.2rem;font-style:italic}.stage .stage-lyrics.chords{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:clamp(1.05rem,2.4vw,1.5rem);line-height:1.75}.browse-bar{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin:-.4rem 0 1rem}.browse-sort{display:inline-flex;align-items:center;gap:.45rem;font-size:.85rem;margin:0}.browse-sort select{width:auto;display:inline-block;font-size:.9rem;padding:.45rem .6rem;min-height:2.75rem}.browse-mid{display:flex;align-items:center;gap:.55rem;flex:1;min-width:0}.mode-tabs{display:flex;gap:.2rem;flex:0 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.mode-tabs::-webkit-scrollbar{display:none}.mode-tab{font-family:var(--sans);font-weight:700;font-size:.9rem;color:var(--fg-soft);padding:.55rem .7rem;cursor:pointer;text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap;display:inline-flex;align-items:center;min-height:2.75rem}.mode-tab.active{color:var(--brand);border-bottom-color:var(--accent)}.mode-sep{width:1px;height:1.6rem;background:var(--line);flex:none}.mode-act{font-family:var(--sans);font-weight:700;font-size:.85rem;color:var(--brand);border:1.5px solid var(--brand);border-radius:2px;background:none;padding:.35rem .7rem;cursor:pointer;text-decoration:none;white-space:nowrap;flex:none;display:inline-flex;align-items:center;min-height:2.75rem;box-sizing:border-box}details.filters{position:relative;margin-inline-start:auto;flex:none}details.filters>summary{list-style:none;cursor:pointer;font-family:var(--sans);font-weight:700;font-size:.85rem;color:var(--brand);border:1.5px solid var(--line);border-radius:2px;padding:.45rem .7rem;-webkit-user-select:none;user-select:none;box-sizing:border-box;display:inline-flex;align-items:center;gap:.4rem;min-height:2.75rem}details.filters>summary::-webkit-details-marker{display:none}details.filters .menu{position:absolute;right:0;top:calc(100% + .45rem);z-index:30;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:.6rem;min-width:11.5rem;box-shadow:0 18px 44px -22px #082e3773;display:grid;gap:.35rem;justify-items:stretch}.fitem{width:100%;justify-content:flex-start;text-align:left;font-family:var(--sans);font-weight:700;font-size:.85rem;border:1.5px solid var(--line);background:none;color:var(--fg-soft);border-radius:2px;padding:.45rem .6rem;cursor:pointer;min-height:2.75rem}.fitem[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.fitem.fclear{border-style:dashed}.fdot{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background:var(--accent)}.fdot[hidden]{display:none}.mode-tab:focus-visible,.mode-act:focus-visible,details.filters>summary:focus-visible,.fitem:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:640px){.top-inner{flex-wrap:wrap;row-gap:.15rem}.top-actions{margin-inline-start:auto}details.more{position:static}details.more .menu{max-height:calc(100dvh - 7rem);overflow-y:auto}.browse-mid{order:3;flex-basis:100%}}@media(min-width:861px){details.more>summary{display:inline-flex}details.more .menu{position:absolute;right:0;top:calc(100% + .45rem);z-index:30;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:.6rem;min-width:13rem;box-shadow:0 18px 44px -22px #082e3773;display:grid;gap:.35rem;justify-items:stretch}details.more .menu .btn,details.more .menu button{width:100%;justify-content:flex-start}details.more .menu .mi{display:inline}}.login-note,.cache-note{background:var(--bg-soft);border:1px solid var(--line);border-left:3px solid var(--sage);border-radius:2px;padding:.55rem .8rem;font-weight:600;color:var(--fg-soft);margin:0 0 .6rem}@media(min-width:861px){.detail-col{overflow:visible;max-height:none}.detail-col .detail{display:flex;flex-direction:column;max-height:calc(100dvh - 5.8rem)}.detail-col .detail .pane{flex:1;min-height:0;overflow-y:auto}}h1.lib-title{font-family:var(--serif);font-size:1.3rem;color:var(--brand);margin:0 0 .25rem}.lib-sub{color:var(--fg-soft);font-size:.9rem;max-width:46em;margin:0 0 .8rem}.lib-sub .warn{font-size:inherit;margin:0}.confirm-ov{position:fixed;inset:0;z-index:150;background:#082e3759;display:flex;align-items:center;justify-content:center;padding:1rem}.confirm-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem;max-width:24rem;width:100%;box-shadow:0 18px 44px -22px #082e3773}.confirm-card h3{color:var(--brand);margin-top:0}.confirm-btns{justify-content:flex-end}.badge.on.locked{border-color:var(--fg-soft);color:var(--fg-soft)}.badge.on.locked:after{content:"·admins";font-weight:400;margin-left:.35em;text-transform:none;letter-spacing:0}@media(max-width:860px){.split:not(.with-open) .detail-col{display:none}main.app:has(>.split.with-open)>.search,main.app:has(>.split.with-open)>.browse-bar{display:none}}.song-row.busy{opacity:.65}.qadd[disabled]{cursor:progress}#update-banner{position:fixed;left:50%;bottom:5.4rem;transform:translate(-50%);z-index:160;display:flex;align-items:center;gap:.8rem;background:var(--bg-card);color:var(--fg);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .9rem;max-width:92vw;min-width:min(19rem,92vw);font-size:.9rem;font-weight:600;box-shadow:0 18px 44px -22px #082e3773}#update-banner>span{flex:1;min-width:0}.sp h3{color:var(--brand);margin-bottom:.2rem}.sp-cols{display:grid;gap:1.2rem;margin-top:.8rem}.sp-cols>*{min-width:0}@media(min-width:900px){.sp-cols{grid-template-columns:minmax(18rem,24rem) 1fr;align-items:start}.sp-order{position:sticky;top:4.5rem}.sp-order:has(.sp-viewer,.sp-addpanel:not([hidden])){position:static}}.sp-order-top{display:flex;gap:.6rem;margin-bottom:.6rem}.sp-order-top>button{flex:1}.sp-order-top>button[aria-expanded=true]{background:var(--brand);border-color:var(--brand);color:var(--bg-soft)}.sp-no{font:700 .66rem var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--sage)}.sp-greet{padding:.35rem .6rem;border:1px dashed var(--line);border-radius:6px;font-size:.85rem;color:var(--fg-soft);margin-bottom:12px}.sp-wrap{position:relative}.sp-group{background:#fff;border:1px solid var(--line);border-left:4px solid var(--pine);border-radius:6px;margin-bottom:12px;transition:opacity .18s ease,background-color .18s ease,box-shadow .18s ease}.sp-group:last-child{margin-bottom:0}.sp-group.multi{border-left-color:var(--ochre)}.sp-group.joining{background:#fdf5f0;box-shadow:0 0 0 1.5px #8b3a2266}.sp-group.is-dragging{opacity:.4;outline:1.5px dashed var(--pine);outline-offset:-2px}.sp-ghead{display:flex;align-items:center;gap:.4rem;padding:.3rem .5rem .1rem}.sp-ghead small{color:var(--fg-soft);font-size:.72rem}.sp-row{padding:.35rem .5rem;border-top:1px solid var(--parchment);transition:opacity .18s ease}.sp-line{display:flex;align-items:center;gap:.45rem}.sp-link{display:block;font-weight:600;font-size:.92rem;color:var(--ink);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-link:hover{text-decoration:underline;text-decoration-color:var(--accent)}.sp .sp-edit{min-height:2rem;padding:.15rem .6rem;font-size:.78rem;flex:none}.sp-addpanel{margin:0 0 .8rem;border:1px solid var(--line);border-radius:6px;background:#fff;padding:.7rem}.sp-add label{margin-top:0}.sp-add .hint{margin:.4rem 0}.sp-add .song-list{max-height:22rem;overflow:auto}.sp-add-done{display:flex;justify-content:flex-end;margin:.6rem 0 0}details.sp-send>summary{cursor:pointer;color:var(--brand);padding:.6rem 0}.sp-send-h{font-family:var(--serif);color:var(--brand);font-size:1.05rem;margin:0 0 .3rem}.sp-content{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:.25rem 0 .15rem 2.4rem}.sp-band .sp-content{margin-left:0}.sp .sp-vbtn{min-height:2.2rem;padding:.15rem .85rem;border:1.5px solid var(--line);border-radius:99px;background:none;color:var(--accent);font-size:.82rem}.sp .sp-vbtn[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--bg-soft)}.sp-rowact{display:flex;gap:.35rem;margin-left:auto}.sp .sp-songrm{color:var(--ochre);border-color:var(--ochre)}.sp-viewer{margin:.4rem 0 .3rem 2.4rem;padding:.8rem;background:var(--bg-soft);border:1px solid var(--line);border-radius:6px;display:grid;gap:.7rem}.sp-band .sp-viewer{margin-left:0}.sp-lyrics{font-family:var(--serif);font-size:1rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.sp-viewer pre.chordtext{overflow-x:auto}.sp-tr{display:flex;align-items:center;gap:.6rem}.sp-tr span{font-size:.85rem;color:var(--fg-soft)}.sp-files{display:flex;flex-wrap:wrap;gap:.4rem}.sp-pdf iframe{display:block;width:100%;height:min(75vh,46rem);border:1px solid var(--line);background:#fff}.sp .sp-hide{justify-self:end;min-height:2rem;padding:.15rem .7rem;font-size:.8rem}@media(max-width:30rem){.sp-viewer{margin-left:0}}.sp-cols.sp-band{grid-template-columns:minmax(0,1fr)}.sp-band .sp-order{position:static}.sp-ghead+.sp-row{border-top:0}.sp-row.is-dragging{opacity:.35}.sp a.btn,.sp button{min-height:2.4rem}.sp-ihandle,.sp-mhandle{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;flex:none}.sp-ihandle{border:0;background:none;color:#9a9483;font-size:1.05rem;line-height:1;padding:.35rem .3rem;border-radius:4px;min-height:2.2rem!important;min-width:2rem}.sp-ihandle:hover,.sp-ihandle:focus-visible{background:var(--parchment-soft);color:var(--fg-soft)}.sp-mhandle{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:1.6rem;min-height:1.6rem!important;padding:0;border:0;border-radius:4px;background:var(--pine);color:var(--parchment-soft);font-size:.9rem}.sp-mhandle:hover,.sp-mhandle:focus-visible{background:#0f5160}.sp-mhandle.sp-demo{width:1.4rem;height:1.15rem;min-height:0!important;font-size:.75rem;cursor:default;vertical-align:middle}.sp-kind{font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:99px;padding:.1em .5em;border:1px solid var(--line);color:var(--fg-soft);flex:none}.sp-kind.r{border-color:var(--ochre);color:var(--ochre)}.sp-t{flex:1;min-width:0}.sp-t b{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem}.sp-t small{display:block;color:var(--fg-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}.sp-x{font:700 .95rem var(--sans);border:0;background:none;color:var(--fg-soft);width:2rem;padding:0;border-radius:4px;flex:none}.sp-x:hover{background:var(--parchment-soft);color:var(--ochre)}.sp-drop{position:absolute;left:0;right:0;top:0;height:0;pointer-events:none;opacity:0;z-index:3;transition:opacity .12s ease,transform .11s cubic-bezier(.2,.7,.2,1)}.sp-drop.on{opacity:1}.sp-drop:before{content:"";position:absolute;left:0;right:0;top:-1.5px;height:3px;border-radius:3px;background:var(--ochre)}.sp-drop.k-item{left:16px;right:16px}.sp-drop.k-new:before{background:repeating-linear-gradient(90deg,var(--ochre) 0 9px,transparent 9px 14px)}.sp-drop.k-group:before{height:4px;top:-2px;background:var(--pine)}.sp-drop span{position:absolute;right:6px;top:-.72rem;font:700 .6rem/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;background:var(--bg-card);padding:.05rem .4rem;border-radius:99px;color:var(--ochre)}.sp-drop.k-group span{color:var(--pine)}.sp-drop.k-item span{display:none}body.sp-dragging{user-select:none;-webkit-user-select:none;cursor:grabbing}.sp-ghost{position:fixed;left:0;top:0;pointer-events:none;z-index:200;animation:sp-lift .14s ease-out forwards;will-change:transform}.sp-g-item{display:flex;align-items:center;gap:.45rem;max-width:17rem;background:#fff;border:1px solid var(--line);border-left:3px solid var(--ochre);border-radius:99px;padding:.3rem .85rem .3rem .45rem;font:600 .85rem var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 8px 20px #0000002e;rotate:-1deg}.sp-g-msg{width:15rem;background:#fff;border:1px solid var(--line);border-left:4px solid var(--pine);border-radius:6px;padding:.45rem .7rem;font-size:.82rem;box-shadow:0 10px 26px #0003;rotate:.6deg}.sp-g-msg.stack{box-shadow:5px 5px 0 -1px #fff,5px 5px 0 0 var(--line),0 12px 28px #0003}.sp-gm-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}@keyframes sp-lift{0%{opacity:.5;scale:.96}to{opacity:1;scale:1.02}}.sp-flash{animation:sp-flash 1.4s ease-out}@keyframes sp-flash{0%{background:#8b3a2229}to{background:transparent}}@media(prefers-reduced-motion:reduce){.sp-drop,.sp-group,.sp-row{transition:none}.sp-ghost,.sp-flash{animation:none}}.sp-picker{margin:.2rem 0 .8rem;border:1px solid var(--line);border-radius:6px;background:#fff;max-height:20rem;overflow:auto}.sp-picker h4{font:700 .68rem var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--sage);padding:.5rem .7rem .2rem;margin:0}.sp-picker button,.sp-picker a{display:block;width:100%;text-align:left;font:500 .88rem var(--sans);border:0;border-top:1px solid var(--line);border-radius:0;background:none;padding:.5rem .7rem;color:var(--ink);text-decoration:none}.sp-picker button:hover,.sp-picker a:hover{background:var(--parchment-soft)}.sp-picker small{display:block;color:var(--fg-soft);font-size:.78rem;font-weight:400}.sp-pad{padding:.6rem .7rem;margin:0}.sp-status{min-height:1.4em;margin:.4rem 0 0}.sp-status button{margin-left:.4rem;min-height:2rem}.sp-note{font-size:.82rem;color:var(--fg-soft);background:var(--parchment-soft);border-left:3px solid var(--sage);padding:.5rem .7rem;margin-top:.8rem}.sp-send label{margin-top:0}.sp-progress{height:6px;background:var(--line);border-radius:99px;overflow:hidden;margin:.6rem 0 1rem}.sp-progress i{display:block;height:100%;width:0;background:var(--pine);transition:width .2s}.sp-chat{background:#efe7dc;border-radius:8px;padding:.8rem;display:flex;flex-direction:column;gap:.9rem}.sp-msg{align-self:flex-end;max-width:min(36rem,100%)}.sp-bubble{background:#d9fdd3;border-radius:8px 0 8px 8px;padding:.5rem .7rem;box-shadow:0 1px .5px #00000021;white-space:pre-wrap;overflow-wrap:anywhere;font:400 .92rem/1.45 system-ui,-apple-system,Segoe UI,sans-serif;color:#111;max-height:14rem;overflow:hidden}.sp-msg.open .sp-bubble{max-height:none}.sp-msg.done .sp-bubble{opacity:.55}.sp-msg.next .sp-bubble{outline:3px solid var(--ochre);outline-offset:2px}.sp-more{font:700 .78rem var(--sans);color:#027eb5;background:none;border:0;padding:.2rem 0;min-height:0!important}.sp-actions{display:flex;gap:.4rem;justify-content:flex-end;margin-top:.35rem;align-items:center;flex-wrap:wrap}.sp a.sp-wa{background:#1f8f4e;border-color:#1f8f4e;color:#fff;text-decoration:none;display:inline-flex;align-items:center;padding:.35rem .8rem;border-radius:var(--radius);font-weight:700;font-size:.85rem}.sp-sent{font:700 .85rem var(--sans);color:var(--sage)}.sp-again{font:600 .78rem var(--sans);color:var(--fg-soft);background:none;border:0;text-decoration:underline;padding:0;min-height:0!important}.sp-next{font:700 .7rem var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--ochre)}.rd-group{margin-top:1.4rem}.rd-group>h3{color:var(--brand);margin-bottom:.2rem}.rd{padding:.9rem 1.1rem;margin-top:.6rem}.rd-head{display:flex;gap:.6rem;align-items:center}.rd-head b{flex:1}.rd .rd-read{min-height:2.4rem;padding:.15rem .95rem;border:1.5px solid var(--line);border-radius:99px;background:none;color:var(--accent);font-weight:700}.rd .rd-read[aria-expanded=true]{background:var(--brand);border-color:var(--brand);color:var(--bg-soft)}.rd-full{margin-top:.7rem;padding:1rem 1.1rem;background:var(--bg-soft);border:1px solid var(--line);border-radius:6px}.rd-full .lyrics{overflow-wrap:anywhere}.rd-text{color:var(--fg-soft);font-size:.86rem;line-height:1.3;margin:.3rem 0 0;white-space:pre-wrap;max-height:3.9em;overflow:hidden}.rd-form .btnrow{margin-top:.8rem}
