:root{--paper:#faf4e8;--paper-deep:#f3e7d2;--surface:#fffdf6;--surface-2:#fbf5e9;--ink:#2b2622;--ink-soft:#6f6253;--ink-faint:#9a8c79;--rust:#c2562f;--rust-deep:#a23f1e;--rust-tint:#f3dccd;--gold:#d99a2b;--gold-deep:#b87e16;--sage:#5e7355;--sage-deep:#485a41;--sage-tint:#dfe5d6;--line:#2b262224;--line-strong:#2b262247;--line-rust:#c2562f52;--font-display:"Fraunces","Georgia",serif;--font-body:"Hanken Grotesk",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"Courier Prime","Courier New",monospace;--r-sm:6px;--r-md:10px;--r-lg:16px;--on-accent:#fff7ee;--shadow-sm:0 1px 2px #3a26120f,0 2px 6px #3a26120d;--shadow-md:0 4px 14px #3a26121a,0 1px 3px #3a261212;--shadow-lg:0 18px 44px #3a261229,0 4px 12px #3a261214;--ease:cubic-bezier(0.22,0.61,0.36,1);color-scheme:light}:root[data-theme=dark]{--paper:#17120d;--paper-deep:#211a13;--surface:#231c14;--surface-2:#2b2219;--ink:#ede3d0;--ink-soft:#b5a68f;--ink-faint:#8a7b66;--rust:#cf6a41;--rust-deep:#e08a63;--rust-tint:#d9795029;--gold:#dfa640;--gold-deep:#e6b45c;--sage:#7e9a70;--sage-deep:#a3bd93;--sage-tint:#7e9a702e;--line:#ede3d021;--line-strong:#ede3d042;--line-rust:#d9795066;--on-accent:#fff7ee;--shadow-sm:0 1px 2px #0000004d,0 2px 6px #00000040;--shadow-md:0 4px 14px #0006,0 1px 3px #0000004d;--shadow-lg:0 18px 44px #0000008c,0 4px 12px #00000059;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{background-color:#faf4e8;background-color:var(--paper);color:#2b2622;color:var(--ink);font-family:Hanken Grotesk,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:16px;letter-spacing:.01em;line-height:1.5}body,html{max-width:100%;overflow-x:hidden}img,video{height:auto;max-width:100%}body:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='.5'/%3E%3C/svg%3E");content:"";inset:0;mix-blend-mode:multiply;opacity:.04;pointer-events:none;position:fixed;z-index:0}[data-theme=dark] body:before{mix-blend-mode:screen;opacity:.025}#root{position:relative;z-index:1}h1,h2,h3,h4,h5{color:#2b2622;color:var(--ink);font-family:Fraunces,Georgia,serif;font-family:var(--font-display);font-optical-sizing:auto;font-weight:600;letter-spacing:-.01em;line-height:1.12}.eyebrow{color:#9a8c79;color:var(--ink-faint);font-family:Courier Prime,Courier New,monospace;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase}.btn,.eyebrow{font-weight:700}.btn{align-items:center;border:1px solid #0000;border-radius:10px;border-radius:var(--r-md);cursor:pointer;display:inline-flex;font-family:Hanken Grotesk,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:.86rem;gap:.5rem;justify-content:center;letter-spacing:.02em;padding:.7rem 1.25rem;transition:transform .18s cubic-bezier(.22,.61,.36,1),background-color .18s cubic-bezier(.22,.61,.36,1),box-shadow .18s cubic-bezier(.22,.61,.36,1),border-color .18s cubic-bezier(.22,.61,.36,1),color .18s cubic-bezier(.22,.61,.36,1);transition:transform .18s var(--ease),background-color .18s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease);white-space:nowrap}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:#c2562f;background-color:var(--rust);box-shadow:0 1px 2px #3a26120f,0 2px 6px #3a26120d;box-shadow:var(--shadow-sm);color:#fff7ee;color:var(--on-accent)}.btn-primary:hover:not(:disabled){background-color:#a23f1e;background-color:var(--rust-deep);box-shadow:0 4px 14px #3a26121a,0 1px 3px #3a261212;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background-color:initial;border-color:#2b262247;border-color:var(--line-strong);color:#485a41;color:var(--sage-deep)}.btn-secondary:hover:not(:disabled){background-color:#dfe5d6;background-color:var(--sage-tint);border-color:#5e7355;border-color:var(--sage);transform:translateY(-1px)}.btn-ghost{background-color:initial;border-color:#2b262224;border-color:var(--line);color:#6f6253;color:var(--ink-soft)}.btn-ghost:hover:not(:disabled){background-color:#f3e7d2;background-color:var(--paper-deep);color:#2b2622;color:var(--ink)}.card{border:1px solid #2b262224;border:1px solid var(--line);border-radius:16px;border-radius:var(--r-lg);box-shadow:0 1px 2px #3a26120f,0 2px 6px #3a26120d;box-shadow:var(--shadow-sm)}.card,input[type=text],textarea{background-color:#fffdf6;background-color:var(--surface)}input[type=text],textarea{border:1px solid #2b262247;border:1px solid var(--line-strong);border-radius:10px;border-radius:var(--r-md);color:#2b2622;color:var(--ink);font-family:Hanken Grotesk,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);transition:border-color .18s cubic-bezier(.22,.61,.36,1),box-shadow .18s cubic-bezier(.22,.61,.36,1);transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}input[type=text]::placeholder,textarea::placeholder{color:#9a8c79;color:var(--ink-faint)}input[type=text]:focus,textarea:focus{border-color:#c2562f;border-color:var(--rust);box-shadow:0 0 0 3px #f3dccd;box-shadow:0 0 0 3px var(--rust-tint);outline:none}:focus-visible{outline:2px solid #c2562f;outline:2px solid var(--rust);outline-offset:2px}::selection{background:#d99a2b;background:var(--gold);color:#2b2622;color:var(--ink)}[data-theme=dark] ::selection{background:#d99a2b;background:var(--gold);color:#17120d}*{scrollbar-color:#9a8c79 #0000;scrollbar-color:var(--ink-faint) #0000;scrollbar-width:thin}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#7a6c5c66;border:2px solid #faf4e8;border:2px solid var(--paper);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#7a6c5ca6}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#c8b9a04d}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#c8b9a080}.fuzzy-heading{align-items:center;color:#b87e16;color:var(--gold-deep);display:flex;font-family:Courier Prime,Courier New,monospace;font-family:var(--font-mono);font-size:.66rem;font-weight:700;gap:.4rem;letter-spacing:.16em;padding:.55rem .5rem .25rem;text-transform:uppercase}.artist-dot{background:#9a8c79;background:var(--ink-faint);border-radius:50%;flex:none;height:7px;width:7px}.artist-dot.gd{background:#c2562f;background:var(--rust)}.artist-dot.other{background:#d99a2b;background:var(--gold)}@keyframes ss-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}code{font-family:var(--font-mono)}.song-library{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);max-height:78vh;padding:1.4rem 1.4rem .6rem}.library-header,.song-library{display:flex;flex-direction:column}.library-header{gap:.9rem}.library-title-row{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.library-header h2{align-items:center;color:var(--ink);display:flex;font-size:1.35rem;gap:.55rem}.library-header h2 svg{color:var(--rust)}.paste-list-btn{align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--sage-deep);cursor:pointer;display:inline-flex;flex:none;font-family:var(--font-body);font-size:.82rem;font-weight:700;gap:.4rem;padding:.45rem .75rem;transition:all .16s var(--ease)}.paste-list-btn:hover{background:var(--sage-tint);border-color:var(--sage);transform:translateY(-1px)}.paste-list-btn svg{flex:none}.search-box{align-items:center;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);display:flex;gap:.55rem;padding:.55rem .85rem;transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}.search-box:focus-within{border-color:var(--rust);box-shadow:0 0 0 3px var(--rust-tint)}.search-box svg{color:var(--ink-faint);flex:none}.search-box input{background:#0000;border:none;color:var(--ink);font-size:1rem;width:100%}.search-box input:focus{box-shadow:none;outline:none}.artist-filter{background:var(--paper-deep);border:1px solid var(--line);border-radius:var(--r-md);display:flex;gap:.25rem;margin-top:.9rem;padding:.25rem}.artist-filter button{background:#0000;border:none;border-radius:calc(var(--r-md) - 3px);color:var(--ink-soft);cursor:pointer;flex:1 1;font-family:var(--font-body);font-size:.76rem;font-weight:700;letter-spacing:.02em;min-width:0;overflow:hidden;padding:.45rem .5rem;text-overflow:ellipsis;transition:all .16s var(--ease);white-space:nowrap}.filter-short{display:none}.song-library .artist-filter{container-type:inline-size}@container (max-width: 470px){.filter-full{display:none}.filter-short{display:inline}}@media (max-width:560px){.filter-full{display:none}.filter-short{display:inline}.artist-filter button{font-size:.72rem;letter-spacing:0;padding:.45rem .25rem}}.artist-filter button:hover{color:var(--ink)}.artist-filter button.active{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--rust-deep)}.alt-key-toggle{align-items:center;color:var(--ink-soft);cursor:pointer;display:flex;font-family:var(--font-body);font-size:.76rem;font-weight:600;gap:.45rem;margin-top:.55rem;padding:0 .2rem;-webkit-user-select:none;user-select:none}.alt-key-toggle input{accent-color:var(--rust-deep);cursor:pointer}.song-count{color:var(--ink-faint);font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.14em;padding:.9rem .2rem .5rem;text-transform:uppercase}.song-count .hidden-hint{color:var(--ink-faint);opacity:.75}.songs-list{display:flex;flex:1 1;flex-direction:column;margin:0 -.4rem;overflow-y:auto;padding:0 .4rem}.song-item{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:.75rem;justify-content:space-between;padding:.6rem .5rem;transition:background .14s var(--ease)}.song-item:hover{background:var(--surface-2)}.song-item:last-child{border-bottom:none}.song-info{align-items:center;display:flex;gap:.65rem;min-width:0}.song-info .song-name{color:var(--ink);font-size:.96rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-song-btn{background:var(--surface);border:1px solid var(--line);border-radius:50%;color:var(--ink-soft);cursor:pointer;display:grid;flex:none;height:32px;place-items:center;transition:all .16s var(--ease);width:32px}.song-item:hover .add-song-btn{border-color:var(--line-rust);color:var(--rust)}.add-song-btn:hover{background:var(--rust);border-color:var(--rust);color:var(--on-accent);transform:scale(1.08)}.no-results{color:var(--ink-faint);font-style:italic;padding:2.5rem 1rem;text-align:center}.set-backdrop{align-items:flex-start;animation:ss-rise .16s var(--ease) both;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:color-mix(in srgb,var(--ink) 38%,#0000);display:flex;inset:0;justify-content:center;padding:max(4rem,env(safe-area-inset-top)) 1rem 1rem;position:fixed;z-index:1100}.set-sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);max-width:30rem;overflow:hidden;width:100%}.set-head{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:1rem 1.1rem .85rem}.set-head h2{font-size:1.15rem}.set-close{background:#0000;border:none;border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:grid;height:38px;place-items:center;width:38px}.set-close:hover{background:var(--paper-deep);color:var(--ink)}.set-row{align-items:center;border-bottom:1px solid var(--line);cursor:pointer;display:flex;gap:.9rem;padding:.95rem 1.1rem}.set-row:last-child{border-bottom:none}.set-row:hover{background:var(--surface-2)}.set-row-icon{background:var(--paper-deep);border-radius:50%;color:var(--ink-soft);display:grid;flex:none;height:40px;place-items:center;transition:background .16s var(--ease),color .16s var(--ease);width:40px}.set-row.on .set-row-icon{background:var(--rust-tint);color:var(--rust-deep)}.set-row-text{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.set-row-title{color:var(--ink);font-size:.98rem;font-weight:700}.set-row-blurb{color:var(--ink-soft);font-size:.8rem;line-height:1.35}.set-row-theme{cursor:default;flex-wrap:wrap}.set-theme-picker{background:var(--paper-deep);border:1px solid var(--line);border-radius:var(--r-md);display:flex;flex:none;gap:.15rem;padding:.15rem}.set-theme-picker button{background:#0000;border:none;border-radius:var(--r-sm);color:var(--ink-soft);cursor:pointer;font-family:var(--font-body);font-size:.78rem;font-weight:700;padding:.4rem .7rem;transition:background .14s var(--ease),color .14s var(--ease)}.set-theme-picker button:hover{color:var(--ink)}.set-theme-picker button.on{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--rust-deep)}.set-switch{flex:none;height:28px;position:relative;width:46px}.set-switch input{cursor:pointer;inset:0;margin:0;opacity:0;position:absolute}.set-switch-track{background:var(--line-strong);border-radius:999px;inset:0;position:absolute;transition:background .18s var(--ease)}.set-switch-track:after{background:var(--on-accent);border-radius:50%;box-shadow:var(--shadow-sm);content:"";height:22px;left:3px;position:absolute;top:3px;transition:transform .18s var(--ease);width:22px}.set-switch input:checked+.set-switch-track{background:var(--rust)}.set-switch input:checked+.set-switch-track:after{transform:translateX(18px)}.set-switch input:focus-visible+.set-switch-track{outline:2px solid var(--rust);outline-offset:2px}.sortable-item{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);display:flex;gap:.7rem;padding:.6rem .75rem;transition:box-shadow .18s var(--ease),transform .18s var(--ease),border-color .18s var(--ease)}.sortable-item:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.sortable-item.dragging{border-color:var(--line-rust);box-shadow:var(--shadow-lg);transform:rotate(-1.2deg);z-index:1000}.song-number{background:var(--ink);border-radius:var(--r-sm);color:var(--paper);display:grid;flex-shrink:0;font-family:var(--font-mono);font-size:.78rem;font-weight:700;height:1.7rem;place-items:center;width:1.7rem}.drag-handle{align-items:center;border-radius:var(--r-sm);color:var(--ink-faint);cursor:grab;display:flex;padding:.2rem;transition:all .18s var(--ease)}.drag-handle:hover{background:var(--paper-deep);color:var(--ink)}.drag-handle:active{cursor:grabbing}.song-content{align-items:center;color:var(--ink);display:flex;flex:1 1;gap:.5rem;min-width:0}.song-content svg{color:var(--rust);flex-shrink:0}.song-content .song-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-btn{background:#0000;border:1px solid #0000;border-radius:var(--r-sm);color:var(--ink-faint);cursor:pointer;display:grid;flex:none;height:1.75rem;place-items:center;transition:all .16s var(--ease);width:1.75rem}.remove-btn:hover{background:var(--rust-tint);color:var(--rust-deep);transform:scale(1.05)}.offline-badge{align-items:center;border:1px solid var(--line);border-radius:999px;display:inline-flex;font-family:var(--font-mono);font-size:.68rem;font-weight:700;gap:.3rem;letter-spacing:.02em;overflow:hidden;padding:.28rem .6rem;position:relative;white-space:nowrap}.offline-badge svg{flex:none}.offline-badge.saved{background:var(--sage-tint);border-color:var(--sage-tint);color:var(--sage-deep)}.offline-badge.missing{background:var(--paper-deep);color:var(--ink-soft)}.offline-badge.download{background:var(--rust-tint);border-color:var(--line-rust);color:var(--rust-deep);cursor:pointer;transition:background .16s var(--ease),transform .16s var(--ease)}.offline-badge.download:hover{transform:translateY(-1px)}.offline-badge.downloading{background:var(--paper-deep);color:var(--ink-soft);padding-right:.3rem}.offline-badge-progress{background:var(--sage-tint);inset:0 auto 0 0;position:absolute;transition:width .2s var(--ease);z-index:0}.offline-badge-cancel,.offline-badge-label{position:relative;z-index:1}.offline-badge-cancel{background:#0000;border:none;border-radius:50%;color:var(--ink-soft);cursor:pointer;display:grid;height:20px;place-items:center;width:20px}.offline-badge-cancel:hover{background:var(--paper);color:var(--ink)}.setlist-builder{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;max-height:78vh;padding:1.4rem}.builder-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1.1rem}.builder-header h2{align-items:center;color:var(--ink);display:flex;font-size:1.35rem;gap:.55rem}.builder-header h2 svg{color:var(--rust)}.builder-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.add-break-btn,.clear-btn{align-items:center;background:#0000;border:1px solid var(--line);border-radius:var(--r-md);color:var(--rust-deep);cursor:pointer;display:flex;font-family:var(--font-body);font-size:.8rem;font-weight:600;gap:.4rem;padding:.5rem .85rem;transition:all .18s var(--ease)}.clear-btn:hover{background:var(--rust-tint);border-color:var(--line-rust)}.add-break-btn{color:var(--sage-deep)}.add-break-btn:hover{background:var(--sage-tint);border-color:var(--sage)}.setlist-divider{align-items:center;background:#0000;border-radius:var(--r-md);display:flex;gap:.5rem;padding:.25rem .5rem}.setlist-divider.dragging{background:var(--paper-deep)}.setlist-divider .drag-handle{color:var(--ink-faint);cursor:grab;display:grid;place-items:center;touch-action:none}.setlist-divider-rule{background:var(--line-strong);flex:1 1;height:1px}.setlist-divider input{background:var(--surface-2);color:var(--ink-soft);flex:none;font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.14em;padding:.3rem .6rem;text-align:center;text-transform:uppercase;width:9rem}.setlist-divider .remove-btn{background:#0000;border:none;border-radius:var(--r-sm);color:var(--ink-faint);cursor:pointer;display:grid;height:28px;place-items:center;width:28px}.setlist-divider .remove-btn:hover{background:var(--rust-tint);color:var(--rust-deep)}.empty-setlist{align-items:center;border:1.5px dashed var(--line-strong);border-radius:var(--r-md);color:var(--ink-faint);display:flex;flex-direction:column;justify-content:center;padding:3.5rem 2rem;text-align:center}.empty-setlist svg{color:var(--gold);margin-bottom:1rem;opacity:.8}.empty-setlist p{color:var(--ink-soft);font-family:var(--font-display);font-size:1.1rem;margin-bottom:.35rem}.empty-setlist .hint{color:var(--ink-faint);font-family:var(--font-body);font-size:.85rem}.hint{font-size:.875rem}.setlist-items{display:flex;flex:1 1;flex-direction:column;gap:.5rem;margin:0 -.3rem;overflow-y:auto;padding:.2rem .3rem}.setlist-history{padding:0}.history-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.75rem}.history-header h2{align-items:center;color:var(--ink);display:flex;font-size:1.7rem;gap:.6rem}.history-header h2 svg{color:var(--rust)}.history-actions{display:flex;gap:.5rem}.data-btn{align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:.8rem;font-weight:700;gap:.4rem;padding:.5rem .9rem;transition:all .18s var(--ease)}.data-btn:hover{background:var(--paper-deep);border-color:var(--gold);color:var(--ink);transform:translateY(-1px)}.empty-history{align-items:center;background:var(--surface);border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--ink-faint);display:flex;flex-direction:column;justify-content:center;padding:4.5rem 2rem;text-align:center}.empty-history svg{color:var(--gold);margin-bottom:1rem;opacity:.85}.empty-history p{color:var(--ink-soft);font-family:var(--font-display);font-size:1.2rem;margin-bottom:.4rem}.empty-history .hint{color:var(--ink-faint);font-family:var(--font-body);font-size:.88rem}.setlists-grid{grid-gap:1.4rem;display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}.setlist-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden;padding:1.4rem;position:relative;transition:box-shadow .2s var(--ease),transform .2s var(--ease)}.setlist-card:before{background:linear-gradient(var(--rust),var(--gold));bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.setlist-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.setlist-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.9rem}.setlist-card .setlist-name{color:var(--ink);font-family:var(--font-display);font-size:1.3rem;font-weight:700;line-height:1.2;margin:0}.setlist-actions{display:flex;flex:none;gap:.4rem}.setlist-card .delete-btn,.setlist-card .edit-btn{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink-soft);cursor:pointer;display:grid;height:1.85rem;place-items:center;transition:all .16s var(--ease);width:1.85rem}.setlist-card .edit-btn:hover{background:var(--paper-deep);color:var(--ink)}.setlist-card .delete-btn:hover{background:var(--rust-tint);border-color:var(--line-rust);color:var(--rust-deep)}.edit-name{flex:1 1}.edit-name input{font-family:var(--font-display);font-size:1.05rem;font-weight:600;margin-bottom:.5rem;padding:.5rem .65rem;width:100%}.edit-actions{display:flex;gap:.5rem}.edit-actions .cancel-btn,.edit-actions .save-btn{border:1px solid #0000;border-radius:var(--r-sm);cursor:pointer;font-family:var(--font-body);font-size:.75rem;font-weight:700;padding:.35rem .85rem;transition:all .16s var(--ease)}.edit-actions .save-btn{background:var(--sage);color:var(--on-accent)}.edit-actions .save-btn:hover{background:var(--sage-deep)}.edit-actions .cancel-btn{background:#0000;border-color:var(--line-strong);color:var(--ink-soft)}.edit-actions .cancel-btn:hover{background:var(--paper-deep);color:var(--ink)}.setlist-info{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.9rem}.info-row{align-items:center;color:var(--ink-faint);display:flex;font-family:var(--font-mono);font-size:.72rem;gap:.5rem;letter-spacing:.04em}.info-row svg{color:var(--ink-faint);flex-shrink:0}.songs-preview{border-top:1px dashed var(--line-strong);margin-bottom:1.25rem;padding-top:.9rem}.songs-preview .song-preview{color:var(--ink-soft);display:flex;font-size:.9rem;gap:.55rem;margin-bottom:.3rem}.songs-preview .song-number{background:none;border-radius:0;color:var(--rust);font-family:var(--font-mono);font-weight:700;height:auto;width:auto}.songs-preview .song-name{color:var(--ink);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-songs{color:var(--ink-faint);font-family:var(--font-mono);font-size:.7rem;font-style:italic;margin-top:.45rem}.setlist-card-actions{align-items:stretch;display:flex;gap:.5rem}.load-btn{align-items:center;background:var(--rust);border:1px solid #0000;border-radius:var(--r-md);box-shadow:var(--shadow-sm);color:var(--on-accent);cursor:pointer;display:flex;flex:1 1;font-family:var(--font-body);font-size:.82rem;font-weight:700;gap:.45rem;justify-content:center;padding:.6rem 1rem;transition:all .18s var(--ease)}.load-btn:hover{background:var(--rust-deep);box-shadow:var(--shadow-md);transform:translateY(-1px)}.setlist-card-actions .icon-action{background:#0000;border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:grid;flex:none;min-width:2.3rem;padding:0;place-items:center;transition:all .18s var(--ease);width:2.3rem}.setlist-card-actions .icon-action:hover{background:var(--paper-deep);border-color:var(--gold);color:var(--ink);transform:translateY(-1px)}.title-page-toggle-small{align-items:center;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:flex;flex:none;gap:.25rem;padding:.5rem .55rem;transition:all .16s var(--ease)}.title-page-toggle-small:hover{border-color:var(--gold);color:var(--ink)}.title-page-toggle-small input[type=checkbox]{accent-color:var(--rust);cursor:pointer;height:14px;width:14px}.recently-played{padding:0}.recently-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.75rem}.recently-header h2{align-items:center;color:var(--ink);display:flex;font-size:1.7rem;gap:.6rem}.recently-header h2 svg{color:var(--rust)}.stats{background:var(--surface-2);border:1px solid var(--line);border-radius:99px;color:var(--ink-soft);font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.12em;padding:.4rem .85rem;text-transform:uppercase}.empty-recent{align-items:center;background:var(--surface);border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--ink-faint);display:flex;flex-direction:column;justify-content:center;padding:4.5rem 2rem;text-align:center}.empty-recent svg{color:var(--gold);margin-bottom:1rem;opacity:.85}.empty-recent p{color:var(--ink-soft);font-family:var(--font-display);font-size:1.2rem;margin-bottom:.4rem}.empty-recent .hint{color:var(--ink-faint);font-family:var(--font-body);font-size:.88rem}.recent-songs-list{display:flex;flex-direction:column;gap:.6rem}.recent-song-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);transition:box-shadow .18s var(--ease),transform .18s var(--ease),border-color .18s var(--ease)}.recent-song-item:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.recent-song-item .song-main{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.15rem}.recent-song-item .song-info{align-items:center;display:flex;flex:1 1;gap:.8rem;min-width:0}.recent-song-item .song-info>svg{color:var(--rust);flex-shrink:0}.recent-song-item .song-details{flex:1 1;min-width:0}.recent-song-item .song-name{color:var(--ink);font-size:1rem;font-weight:600;margin-bottom:.2rem}.song-meta{align-items:center;color:var(--ink-faint);display:flex;flex-wrap:wrap;font-family:var(--font-mono);font-size:.7rem;gap:.9rem;letter-spacing:.03em}.last-played,.play-count{align-items:center;display:flex;gap:.3rem}.play-count{color:var(--sage-deep);font-weight:700}.add-recent-btn{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:grid;flex-shrink:0;height:2.25rem;place-items:center;transition:all .16s var(--ease);width:2.25rem}.add-recent-btn:hover{background:var(--rust);border-color:var(--rust);color:var(--on-accent);transform:scale(1.06)}.chart-search{animation:ss-rise .16s var(--ease) both;background:var(--paper);display:flex;flex-direction:column;inset:0;position:absolute;z-index:20}.cs-head{align-items:center;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm);display:flex;flex:none;gap:.4rem;padding:calc(.55rem + env(safe-area-inset-top, 0px)) max(.7rem,env(safe-area-inset-right)) .55rem max(.6rem,env(safe-area-inset-left))}.cs-icon{background:#0000;border:none;border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:grid;flex:none;height:42px;place-items:center;width:42px}.cs-icon:hover{background:var(--paper-deep);color:var(--ink)}.cs-search{align-items:center;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-faint);display:flex;flex:1 1;gap:.5rem;height:44px;min-width:0;padding:0 .7rem;position:relative}.cs-search:focus-within{border-color:var(--rust);box-shadow:0 0 0 3px var(--rust-tint)}.cs-search input{background:#0000;border:none;color:var(--ink);flex:1 1;font-family:var(--font-body);font-size:1rem;min-width:0}.cs-search input:focus{outline:none}.cs-clear{background:#0000;border:none;border-radius:50%;color:var(--ink-faint);cursor:pointer;display:grid;flex:none;height:26px;place-items:center;width:26px}.cs-clear:hover{background:var(--paper-deep);color:var(--ink)}.cs-tabs{background:var(--surface);border-bottom:1px solid var(--line);display:flex;flex:none;gap:.4rem;padding:.55rem max(.7rem,env(safe-area-inset-right)) .55rem max(.7rem,env(safe-area-inset-left))}.cs-tabs button{align-items:center;background:#0000;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:inline-flex;flex:1 1;font-family:var(--font-body);font-size:.85rem;font-weight:700;gap:.4rem;justify-content:center;min-width:0;padding:.5rem .7rem;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}.cs-tabs button:hover{background:var(--paper-deep);color:var(--ink)}.cs-tabs button.active{background:var(--rust-tint);border-color:var(--line-rust);color:var(--rust-deep)}.cs-tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-body{display:flex;flex:1 1;flex-direction:column;min-height:0}.cs-body>.viewer-list,.cs-libbody{flex:1 1;min-height:0}.cs-libbody{background:#0000;border:none;border-radius:0;box-shadow:none}.cs-row{gap:.7rem}.cs-row.current,.cs-row.current:hover{background:var(--rust-tint)}.cs-num{background:var(--paper-deep);border-radius:var(--r-sm);color:var(--ink-soft);display:grid;flex:none;font-size:.78rem;height:1.6rem;min-width:1.6rem;padding:0 .3rem;place-items:center}.cs-now,.cs-num{font-family:var(--font-mono);font-weight:700}.cs-now{background:var(--rust);border-radius:999px;color:var(--on-accent);flex:none;font-size:.6rem;letter-spacing:.1em;margin-right:.6rem;padding:.12rem .5rem;text-transform:uppercase}.ct-chart{--ct-size:17px;color:var(--ink);font-family:Georgia,Times New Roman,serif;margin:0 auto;max-width:46em;padding:1.2rem 1.1rem 4rem}.ct-sec{grid-gap:.1em 1em;display:grid;gap:.1em 1em;grid-template-columns:minmax(4.2em,max-content) 1fr;margin:0 0 1.05em}.ct-sec.nolabel{grid-template-columns:1fr}.ct-seclabel{font-size:calc(var(--ct-size)*.95);font-weight:700;line-height:1.4}.ct-seclabel .ct-lnote{color:var(--ink-soft);display:block;font-size:.82em;font-style:italic;font-weight:400}.ct-secbody{min-width:0}.ct-syswrap{max-width:100%;overflow-x:auto}table.ct-sys{border-collapse:collapse;font-size:calc(var(--ct-size)*1.02);font-weight:700;line-height:1.55;width:auto}.ct-sys td{border:0;padding:.04em .1em .04em 0;vertical-align:initial;white-space:nowrap}.ct-sys td.ct-gut{padding-right:.55em}.ct-sys td.ct-gut:empty{padding-right:0}.ct-mc{display:inline-block;min-width:1.2em}.ct-mc.ctr{min-width:4.4em;text-align:center}.ct-sys td.hl{background:var(--rust-tint);border-radius:4px}.ct-flowline{align-items:baseline;display:flex;flex-wrap:wrap;row-gap:.1em;white-space:normal}.ct-mseg{white-space:nowrap}.ct-barg{align-items:center;display:inline-flex;gap:1.6px;height:.92em;padding:0 .18em;vertical-align:-.08em}.ct-bl{background:currentColor;height:.92em;width:1.5px}.ct-bl.dbl{background:none;border-left:1.5px solid;border-right:1.5px solid;box-sizing:border-box;width:5px}.ct-dots{background:radial-gradient(circle at 50% 33%,currentColor 1.1px,#0000 1.4px),radial-gradient(circle at 50% 67%,currentColor 1.1px,#0000 1.4px);height:.92em;width:3px}.ct-beat{padding:0 .2em}.ct-chord{padding:0 .06em}.ct-chord+.ct-chord{margin-left:.35em}.ct-chord sup,.ct-subq{font-size:.62em}.ct-subq{vertical-align:sub}.ct-push{color:var(--rust);padding:0 .05em}.ct-same{padding:0 .3em}.ct-flow{font-weight:700;padding:0 .25em}.ct-arrow{color:var(--rust);font-weight:400;padding:0 .3em}.ct-note{color:var(--ink-soft);font-size:calc(var(--ct-size)*.8);font-style:italic}.ct-lyr{font-size:var(--ct-size);line-height:1.5;overflow-wrap:break-word}.ct-hlrun{background:var(--rust-tint);border-radius:3px;padding:0 .12em}.ct-lyr.ct-withanch{line-height:2.7;padding-top:.2em}.ct-aw{position:relative}.ct-anch{font-size:.94em;font-weight:700;left:0;position:absolute;top:-1.28em;white-space:nowrap}.ct-annot{color:var(--ink-soft);font-size:calc(var(--ct-size)*.85);font-style:italic;margin:.15em 0}.ct-annot.hl{background:var(--rust-tint);border-radius:4px;color:var(--ink);display:inline-block;padding:.05em .5em}pre.ct-tab{background:var(--surface-2);border:1px solid var(--line);border-radius:6px;color:var(--ink-soft);font:calc(var(--ct-size)*.62) /1.35 ui-monospace,Menlo,monospace;font:calc(var(--ct-size)*.62) /1.35 var(--font-mono,ui-monospace,Menlo,monospace);margin:.35em 0;overflow-x:auto;padding:.6em .7em}pre.ct-tab.floating{float:right;margin:0 0 .5em 1em;max-width:58%}@media (max-width:640px){pre.ct-tab.floating{float:none;margin:.35em 0;max-width:100%}}.ct-tabchip{align-items:center;background:#0000;border:1px dashed var(--line-strong);border-radius:999px;color:var(--ink-soft);cursor:pointer;display:inline-flex;font:.72rem/1 system-ui,sans-serif;font:.72rem/1 var(--font-body,system-ui,sans-serif);gap:.5em;margin:.25em 0;padding:.4em .85em}.ct-tabchip:hover{border-color:var(--rust);color:var(--rust)}.chart-view{animation:ss-rise .22s var(--ease) both;background:var(--paper);inset:0;overflow:hidden;overflow:clip;position:fixed;z-index:1000}.chart-bar{align-items:center;background:var(--surface);display:flex;gap:.5rem;left:0;position:absolute;right:0;transition:transform .28s var(--ease),opacity .28s var(--ease);z-index:2}.chart-bar-top{border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm);padding:calc(.55rem + env(safe-area-inset-top, 0px)) max(.6rem,env(safe-area-inset-right)) .55rem max(.6rem,env(safe-area-inset-left));top:0}.chart-bar-bottom{border-top:1px solid var(--line);bottom:0;justify-content:space-between;padding:.5rem max(.6rem,env(safe-area-inset-right)) calc(.5rem + env(safe-area-inset-bottom, 0px)) max(.6rem,env(safe-area-inset-left))}.chart-view.chrome-off .chart-bar-top{opacity:0;pointer-events:none;transform:translateY(-100%)}.chart-view.chrome-off .chart-bar-bottom{opacity:0;pointer-events:none;transform:translateY(100%)}.chart-title{align-items:center;display:flex;flex:1 1;gap:.5rem;min-width:0}.chart-title-text{display:flex;flex-direction:column;gap:1px;min-width:0}.chart-title h2{font-size:1.05rem;font-weight:600}.chart-title h2,.chart-title-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-title-sub{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.04em;opacity:.7}.chart-title .artist-dot{flex:none;height:9px;width:9px}.chart-bar-actions{align-items:center;display:flex;gap:.2rem}.chart-icon-btn{background:#0000;border:none;border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:grid;flex:none;height:42px;place-items:center;transition:background .16s var(--ease),color .16s var(--ease),transform .16s var(--ease);width:42px}.chart-icon-btn:hover:not(:disabled){background:var(--paper-deep);color:var(--ink)}.chart-icon-btn:active:not(:disabled){transform:scale(.92)}.chart-icon-btn:disabled{cursor:default;opacity:.32}.chart-icon-btn.star.active{color:var(--gold-deep)}.chart-icon-btn.flash{background:var(--sage-tint);color:var(--sage-deep)}.chart-deck{background:var(--paper-deep);display:flex;inset:0;position:absolute;touch-action:none;transform:translateX(-100%);will-change:transform}.chart-slot{flex:0 0 100%;height:100%;position:relative;width:100%}.chart-slot-empty{background:var(--paper-deep)}.chart-scroll{inset:0;overflow:hidden;overflow-anchor:none;overscroll-behavior:contain;padding:max(.75rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left));position:absolute}.chart-canvas-wrap{align-items:center;display:flex;justify-content:center;min-height:100%;min-width:100%;width:max-content}.chart-page{flex:none;position:relative}.chart-page-holder{background:#fff;border-radius:2px;box-shadow:var(--shadow-md);overflow:hidden}.chart-page-holder .chart-canvas{visibility:hidden}.chart-canvas{background:#fff;border-radius:2px;box-shadow:var(--shadow-md);display:block}.chart-overlay{background:color-mix(in srgb,var(--paper-deep) 70%,#0000);display:grid;inset:0;place-items:center;pointer-events:none;position:absolute}.chart-spinner{animation:ss-spin .8s linear infinite;border:3px solid var(--line-strong);border-radius:50%;border-top-color:var(--rust);height:38px;width:38px}@keyframes ss-spin{to{transform:rotate(1turn)}}.chart-error{color:var(--ink-soft);display:flex;flex-direction:column;gap:.75rem;pointer-events:auto;text-align:center}.chart-error button{align-self:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:.5rem 1.1rem}.chart-error button,.chart-nav-btn{color:var(--ink);cursor:pointer;font-weight:700}.chart-nav-btn{align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);display:inline-flex;font-family:var(--font-body);font-size:.85rem;gap:.25rem;padding:.55rem .85rem;transition:background .16s var(--ease),transform .16s var(--ease),opacity .16s var(--ease)}.chart-nav-btn:hover:not(:disabled){background:var(--paper-deep)}.chart-nav-btn:active:not(:disabled){transform:translateY(1px)}.chart-nav-btn:disabled{cursor:default;opacity:.3}.chart-bar-center{align-items:center;display:flex;gap:.5rem;min-width:0}.chart-layout,.chart-zoom{align-items:center;background:var(--paper-deep);border:1px solid var(--line);border-radius:var(--r-md);display:flex;gap:.15rem;padding:.1rem}.chart-layout .chart-icon-btn{height:40px;width:44px}.chart-layout .chart-icon-btn.on{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--rust-deep)}.chart-zoom-label{background:#0000;border:none;border-radius:var(--r-sm);color:var(--ink-soft);cursor:pointer;display:grid;font-family:var(--font-mono);font-size:.74rem;font-weight:700;height:40px;min-width:52px;place-items:center}.chart-zoom-label:hover{background:var(--surface);color:var(--ink)}.chart-zoom .chart-icon-btn{height:40px;width:44px}.chart-flip{animation:ss-flip 1.4s var(--ease) both;background:color-mix(in srgb,var(--ink) 82%,#0000);border-radius:18px;box-shadow:var(--shadow-md);color:var(--paper);font-family:var(--font-body);left:50%;max-width:min(86%,30rem);padding:.45rem 1.05rem;pointer-events:none;position:absolute;text-align:center;top:calc(.9rem + env(safe-area-inset-top, 0px));transform:translateX(-50%);z-index:4}.chart-flip--long{animation-duration:2.4s}.chart-flip-name{font-size:.85rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-flip-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--gold);display:-webkit-box;font-size:.78rem;font-weight:600;overflow:hidden}.chart-flip-next{font-size:.7rem;font-weight:600;opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes ss-flip{0%{opacity:0;transform:translate(-50%,-6px)}16%{opacity:1;transform:translate(-50%)}72%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-6px)}}.chart-note-pill{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow-sm);color:var(--ink-soft);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:.78rem;font-weight:600;gap:.4rem;left:50%;max-width:min(86%,30rem);padding:.35rem .85rem;position:absolute;top:calc(3.9rem + env(safe-area-inset-top, 0px));transform:translateX(-50%);transition:transform .28s var(--ease),opacity .28s var(--ease);z-index:3}.chart-note-pill svg{color:var(--gold-deep);flex:none}.chart-note-pill span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-view.chrome-off .chart-note-pill{opacity:0;pointer-events:none;transform:translate(-50%,-8px)}.chart-icon-btn.note.active{color:var(--gold-deep)}.chart-note-backdrop{background:color-mix(in srgb,var(--ink) 30%,#0000);display:grid;inset:0;padding:1rem;place-items:center;position:absolute;z-index:6}.chart-note-card{animation:ss-rise .18s var(--ease) both;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:.75rem;padding:1rem;width:min(100%,26rem)}.chart-note-card h3{align-items:center;display:flex;font-size:.95rem;gap:.45rem}.chart-note-card h3 svg{color:var(--gold-deep)}.chart-note-card textarea{font-size:.9rem;min-height:4.5rem;padding:.6rem .7rem;resize:vertical;width:100%}.chart-note-actions{display:flex;gap:.5rem;justify-content:flex-end}.chart-note-btn{background:#0000;border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;font-size:.85rem;font-weight:700;padding:.5rem 1rem}.chart-note-btn.primary{background:var(--rust);border-color:var(--rust);color:var(--on-accent)}.chart-note-btn.primary:hover{background:var(--rust-deep)}.chart-toast{animation:ss-rise .2s var(--ease) both;background:var(--ink);border-radius:999px;bottom:calc(5rem + env(safe-area-inset-bottom, 0px));box-shadow:var(--shadow-md);color:var(--paper);font-size:.8rem;font-weight:700;left:50%;padding:.55rem 1rem;position:absolute;transform:translateX(-50%);z-index:5}.chart-view--contrast,.chart-view--contrast .chart-deck,.chart-view--contrast .chart-slot-empty{background:#000}.chart-view--contrast .chart-canvas{background:#000;box-shadow:0 0 0 1px #ffffff24;filter:invert(1) hue-rotate(180deg) contrast(1.05)}.chart-view--contrast .chart-page-holder{background:#0b0b0b;box-shadow:0 0 0 1px #ffffff24}.chart-view--contrast .chart-overlay{background:color-mix(in srgb,#000 70%,#0000)}@media (max-width:560px){.chart-nav-btn span{display:none}.chart-nav-btn{padding:.55rem}.chart-title h2{font-size:.98rem}}.chart-textpane{-webkit-overflow-scrolling:touch;background:var(--paper);inset:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;position:absolute;touch-action:pan-y}.chart-icon-btn.active{color:var(--gold-deep)}.chart-view--contrast .chart-textpane{--paper:#000;--ink:#ede3d0;--ink-soft:#b5a68f;--line:#ffffff2e;--line-strong:#ffffff4d;--surface-2:#14100c;--rust-tint:#d9795038;background:#000}.viewer{display:flex;flex-direction:column;gap:1rem}.viewer-setlists{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.viewer-setlists-toggle{align-items:center;background:#0000;border:none;color:var(--ink);cursor:pointer;display:flex;font-family:var(--font-body);font-size:.9rem;font-weight:700;gap:.55rem;padding:.7rem 1rem;transition:background .14s var(--ease);width:100%}.viewer-setlists-toggle:hover{background:var(--surface-2)}.viewer-setlists-count{background:var(--rust-tint);border-radius:999px;color:var(--rust-deep);font-size:.75rem;padding:.1rem .5rem}.viewer-setlists-chevron{color:var(--ink-soft);margin-left:auto;transition:transform .18s var(--ease)}.viewer-setlists-chevron.open{transform:rotate(180deg)}.viewer-setlists-list{border-top:1px solid var(--line);max-height:40vh;overflow-y:auto}.viewer-setlists-row{align-items:center;background:#0000;border:none;border-bottom:1px solid var(--line);cursor:pointer;display:flex;font-family:var(--font-body);gap:.65rem;padding:.7rem 1rem;text-align:left;transition:background .14s var(--ease);width:100%}.viewer-setlists-row:last-child{border-bottom:none}.viewer-setlists-row:hover{background:var(--surface-2)}.viewer-setlists-row>svg{color:var(--rust);flex:none}.viewer-setlists-name{color:var(--ink);flex:1 1;font-size:.95rem;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewer-setlists-meta{color:var(--ink-faint);flex:none;font-size:.78rem}.viewer-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:.7rem 1rem}.viewer-search{flex:1 1 260px;position:relative}.viewer-search input{padding-right:1.6rem}.viewer-search-clear{background:#0000;border:none;border-radius:50%;color:var(--ink-faint);cursor:pointer;display:grid;height:24px;place-items:center;position:absolute;right:.5rem;width:24px}.viewer-search-clear:hover{background:var(--paper-deep);color:var(--ink)}.viewer-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem}.viewer-controls .artist-filter{flex:0 1 auto;margin-top:0}.viewer-alt-toggle{margin-top:0;white-space:nowrap}.offline-control{align-items:center;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-soft);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:.78rem;font-weight:700;gap:.4rem;margin-left:auto;overflow:hidden;padding:.5rem .85rem;position:relative;transition:border-color .16s var(--ease),color .16s var(--ease),background .16s var(--ease);white-space:nowrap}.offline-control:hover{border-color:var(--sage);color:var(--ink)}.offline-control.saved{background:var(--sage-tint);border-color:var(--sage);color:var(--sage-deep)}.offline-control.downloading{color:var(--ink);cursor:default;padding-right:2.2rem}.offline-count{color:var(--ink-faint);font-weight:600}.offline-progress{background:var(--sage-tint);inset:0 auto 0 0;position:absolute;transition:width .2s var(--ease);z-index:0}.offline-label{position:relative;z-index:1}.offline-cancel{background:#0000;border:none;border-radius:50%;color:var(--ink-soft);cursor:pointer;display:grid;height:22px;place-items:center;position:absolute;right:.45rem;width:22px;z-index:1}.offline-cancel:hover{background:var(--paper-deep);color:var(--ink)}.viewer-body{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:flex;overflow:hidden;position:relative}.viewer-list{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;overscroll-behavior:contain;padding:0 .25rem 1rem;scroll-behavior:smooth}.viewer-section{position:relative}.viewer-section-header{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:color-mix(in srgb,var(--paper-deep) 92%,#0000);border-bottom:1px solid var(--line);color:var(--ink-faint);display:flex;font-family:var(--font-mono);font-size:.72rem;font-weight:700;gap:.4rem;letter-spacing:.14em;padding:.4rem 1rem;position:sticky;text-transform:uppercase;top:0;z-index:1}.viewer-section-header.fav{color:var(--gold-deep)}.viewer-row{align-items:center;border-bottom:1px solid var(--line);display:flex}.viewer-row:last-child{border-bottom:none}.viewer-row-main{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex:1 1;font-family:var(--font-body);gap:.65rem;min-width:0;padding:.7rem .5rem .7rem 1rem;text-align:left;transition:background .14s var(--ease)}.viewer-row-main:hover{background:var(--surface-2)}.viewer-row-main:active{background:var(--paper-deep)}.viewer-row-name{color:var(--ink);font-size:1rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewer-star{background:#0000;border:none;border-radius:50%;color:var(--ink-faint);cursor:pointer;display:grid;flex:none;height:44px;margin-right:.3rem;place-items:center;transition:color .16s var(--ease),transform .16s var(--ease),background .16s var(--ease);width:44px}.viewer-star:hover{background:var(--paper-deep);color:var(--gold-deep)}.viewer-star:active{transform:scale(.85)}.viewer-star.active{color:var(--gold-deep)}.viewer-empty{color:var(--ink-faint);font-style:italic;padding:3rem 1.5rem;text-align:center}.viewer-rail{align-items:center;background:linear-gradient(90deg,#0000,var(--surface-2) 40%);cursor:pointer;display:flex;flex:none;flex-direction:column;gap:.05rem;justify-content:center;padding:.4rem 0;touch-action:none;user-select:none;-webkit-user-select:none;width:26px}.viewer-rail-key{border-radius:4px;color:var(--ink-soft);display:grid;font-family:var(--font-body);font-size:.64rem;font-weight:800;height:1.05rem;line-height:1;place-items:center;transition:color .12s var(--ease);width:22px}.viewer-rail-key.active{background:var(--rust);color:var(--on-accent)}.viewer-bubble{animation:ss-bubble .12s var(--ease) both;background:var(--rust);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);color:var(--on-accent);display:grid;font-family:var(--font-display);font-size:3rem;font-weight:700;height:96px;left:50%;place-items:center;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:96px;z-index:5}@keyframes ss-bubble{0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media (max-width:720px){.viewer-controls{width:100%}.viewer-controls .artist-filter{flex:1 1}.offline-control{margin-left:0}}@media (max-width:480px){.viewer-row-main{padding-left:.85rem}.viewer-rail{width:24px}}.install-prompt{align-items:center;animation:ss-rise .4s var(--ease) both;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);bottom:calc(1rem + env(safe-area-inset-bottom, 0px));box-shadow:var(--shadow-lg);display:flex;gap:.9rem;left:50%;padding:.85rem 2.4rem .85rem 1.1rem;position:fixed;transform:translateX(-50%);width:min(440px,calc(100vw - 1.5rem));z-index:900}.install-copy{display:flex;flex:1 1;flex-direction:column;gap:.2rem;min-width:0}.install-copy strong{align-items:center;color:var(--ink);display:flex;font-family:var(--font-display);font-size:1rem;gap:.35rem}.install-copy span{color:var(--ink-soft);font-size:.8rem;line-height:1.35}.install-copy em{color:var(--ink);font-style:normal;font-weight:700}.ios-share{color:var(--rust);display:inline;vertical-align:-2px}.install-action{align-items:center;background:var(--rust);border:none;border-radius:var(--r-md);box-shadow:var(--shadow-sm);color:var(--on-accent);cursor:pointer;display:inline-flex;flex:none;font-family:var(--font-body);font-size:.84rem;font-weight:700;gap:.45rem;padding:.6rem 1rem;transition:background .18s var(--ease),transform .18s var(--ease)}.install-action:hover{background:var(--rust-deep);transform:translateY(-1px)}.install-action:active{transform:translateY(1px)}.install-close{background:#0000;border:none;border-radius:50%;color:var(--ink-faint);cursor:pointer;display:grid;height:26px;place-items:center;position:absolute;right:.5rem;top:.5rem;transition:background .16s var(--ease),color .16s var(--ease);width:26px}.install-close:hover{background:var(--paper-deep);color:var(--ink)}.paste-backdrop{align-items:flex-start;animation:ss-rise .16s var(--ease) both;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:color-mix(in srgb,var(--ink) 38%,#0000);display:flex;inset:0;justify-content:center;padding:max(3rem,env(safe-area-inset-top)) 1rem 1rem;position:fixed;z-index:1100}.paste-sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:min(86vh,860px);max-width:40rem;overflow:hidden;width:100%}.paste-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;padding:1rem 1.1rem .85rem}.paste-head,.paste-head h2{align-items:center;display:flex}.paste-head h2{font-size:1.2rem;gap:.55rem}.paste-head h2 svg{color:var(--rust)}.paste-close{background:#0000;border:none;border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:grid;height:38px;place-items:center;width:38px}.paste-close:hover{background:var(--paper-deep);color:var(--ink)}.paste-body{flex:1 1;min-height:0;overflow-y:auto;padding:1.1rem 1.1rem 1.2rem}.paste-intro{color:var(--ink-soft);font-size:.9rem;line-height:1.5;margin-bottom:.9rem}.paste-intro code{background:var(--paper-deep);border-radius:var(--r-sm);color:var(--ink);font-family:var(--font-mono);font-size:.82em;padding:.05em .35em;white-space:nowrap}.paste-textarea{color:var(--ink);font-size:1rem;line-height:1.5;min-height:9.5rem;padding:.8rem .9rem;resize:vertical;width:100%}.paste-textarea::placeholder{color:var(--ink-faint);white-space:pre}.paste-error{color:var(--rust-deep);font-size:.85rem;margin-top:.65rem}.paste-example-link{background:none;border:none;color:var(--rust);cursor:pointer;font-family:var(--font-body);font-size:.85rem;font-weight:600;margin-top:.75rem;padding:0;text-decoration:underline;text-underline-offset:2px}.paste-example-link:hover{color:var(--rust-deep)}.paste-summary{align-items:center;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:.5rem;padding:0 .15rem .75rem}.paste-summary-counts{color:var(--ink-soft);font-size:.85rem}.paste-summary-counts strong{color:var(--ink)}.paste-summary-flag{color:var(--gold-deep)}.paste-summary-missing{color:var(--ink-faint)}.paste-summary-actions{display:flex;gap:.3rem}.paste-summary-actions button{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink-soft);cursor:pointer;font-family:var(--font-body);font-size:.76rem;font-weight:700;padding:.3rem .6rem;transition:all .14s var(--ease)}.paste-summary-actions button:hover{background:var(--paper-deep);color:var(--ink)}.paste-rows{display:flex;flex-direction:column;gap:.4rem;list-style:none}.paste-row{background:var(--surface);border:1px solid var(--line);border-left-width:3px;border-radius:var(--r-md);transition:opacity .14s var(--ease),border-color .14s var(--ease)}.paste-row.status-matched{border-left-color:var(--sage)}.paste-row.status-uncertain{border-left-color:var(--gold)}.paste-row.status-unmatched{border-left-color:var(--ink-faint)}.paste-row.excluded{opacity:.5}.paste-row-section{align-items:center;background:#0000;border:none;display:flex;gap:.6rem;padding:.15rem .4rem}.paste-section-rule{background:var(--line-strong);flex:1 1;height:1px}.paste-section-label{color:var(--ink-soft);flex:none;font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.paste-row-main{align-items:center;display:flex;gap:.6rem;padding:.55rem .7rem}.paste-check{cursor:pointer;flex:none;height:22px;position:relative;width:22px}.paste-check input{cursor:pointer;inset:0;margin:0;opacity:0;position:absolute}.paste-check input:disabled{cursor:not-allowed}.paste-check-box{background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--r-sm);inset:0;position:absolute;transition:all .14s var(--ease)}.paste-check-box:after{border:solid var(--on-accent);border-width:0 2px 2px 0;content:"";height:11px;left:7px;position:absolute;top:3px;transform:rotate(45deg) scale(0);transition:transform .14s var(--ease);width:6px}.paste-check input:checked+.paste-check-box{background:var(--sage);border-color:var(--sage)}.paste-check input:checked+.paste-check-box:after{transform:rotate(45deg) scale(1)}.paste-check input:disabled+.paste-check-box{background:var(--paper-deep);opacity:.6}.paste-check input:focus-visible+.paste-check-box{outline:2px solid var(--rust);outline-offset:2px}.paste-row-icon{display:grid;flex:none;place-items:center}.status-matched .paste-row-icon{color:var(--sage-deep)}.status-uncertain .paste-row-icon{color:var(--gold-deep)}.status-unmatched .paste-row-icon{color:var(--ink-faint)}.paste-row-text{background:none;border:none;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0;padding:.1rem 0;text-align:left}.paste-row-song{color:var(--ink);font-size:.95rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paste-row-song.muted{color:var(--ink-soft);font-style:italic;font-weight:500}.paste-row-sub{color:var(--ink-faint);font-size:.74rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-uncertain .paste-row-sub{color:var(--gold-deep)}.paste-change{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink-soft);cursor:pointer;flex:none;font-family:var(--font-body);font-size:.76rem;font-weight:700;padding:.35rem .65rem;transition:all .14s var(--ease)}.paste-change:hover{border-color:var(--line-rust);color:var(--rust)}.paste-picker{border-top:1px solid var(--line);padding:.6rem .7rem .7rem}.paste-picker-search{align-items:center;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);display:flex;gap:.5rem;padding:.45rem .65rem}.paste-picker-search:focus-within{border-color:var(--rust);box-shadow:0 0 0 3px var(--rust-tint)}.paste-picker-search svg{color:var(--ink-faint);flex:none}.paste-picker-search input{background:#0000;border:none;color:var(--ink);flex:1 1;font-size:1rem}.paste-picker-search input:focus{box-shadow:none;outline:none}.paste-picker-search button{background:#0000;border:none;border-radius:var(--r-sm);color:var(--ink-faint);cursor:pointer;display:grid;flex:none;height:26px;place-items:center;width:26px}.paste-picker-search button:hover{background:var(--paper-deep);color:var(--ink)}.paste-picker-results{list-style:none;margin-top:.45rem;max-height:14rem;overflow-y:auto}.paste-picker-results>li button{align-items:center;background:none;border:none;border-radius:var(--r-sm);color:var(--ink);cursor:pointer;display:flex;font-size:.9rem;gap:.6rem;padding:.5rem;text-align:left;width:100%}.paste-picker-results>li button:hover{background:var(--surface-2)}.paste-picker-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paste-picker-empty{color:var(--ink-faint);font-size:.85rem;font-style:italic;padding:.8rem .5rem}.paste-foot{align-items:center;background:var(--surface-2);border-top:1px solid var(--line);display:flex;flex:none;gap:.6rem;justify-content:flex-end;padding:.85rem 1.1rem}.paste-btn{align-items:center;border:1px solid #0000;border-radius:var(--r-md);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:.9rem;font-weight:700;gap:.45rem;padding:.6rem 1.1rem;transition:all .16s var(--ease)}.paste-btn.ghost{background:#0000;border-color:var(--line-strong);color:var(--ink-soft)}.paste-btn.ghost:hover{background:var(--paper-deep);color:var(--ink)}.paste-btn.primary{background:var(--rust);box-shadow:var(--shadow-sm);color:var(--on-accent)}.paste-btn.primary:hover:not(:disabled){background:var(--rust-deep);box-shadow:var(--shadow-md);transform:translateY(-1px)}.paste-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:560px){.paste-backdrop{align-items:stretch;padding:0}.paste-sheet{border:none;border-radius:0;max-height:100vh;max-width:none}.paste-row-sub{white-space:normal}}.app{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.app-header{background-color:var(--paper);border-bottom:1px solid var(--line-strong);box-shadow:var(--shadow-sm);position:relative}.app-header:before{background:linear-gradient(90deg,var(--rust) 0,var(--gold) 50%,var(--sage) 100%);height:4px;top:0}.app-header:after,.app-header:before{content:"";left:0;position:absolute;right:0}.app-header:after{background:var(--line);bottom:-4px;height:1px}.header-content{flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin:0 auto;max-width:1200px;padding:max(1.1rem,env(safe-area-inset-top)) max(2rem,env(safe-area-inset-right)) 1.1rem max(2rem,env(safe-area-inset-left))}.header-content,.logo{align-items:center;display:flex}.logo{gap:.9rem}.logo-badge{background:var(--rust);border-radius:50%;box-shadow:inset 0 0 0 2px #fff7ee59,var(--shadow-sm);color:var(--on-accent);display:grid;flex:none;height:46px;place-items:center;width:46px}.logo-text{display:flex;flex-direction:column;gap:1px}.logo-text h1{font-size:1.65rem;font-weight:700;letter-spacing:-.015em}.logo-tagline{color:var(--ink-faint);font-family:var(--font-mono);font-size:.62rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.tabs{display:flex;flex-wrap:wrap;gap:.3rem}.tabs button{align-items:center;background:#0000;border:1px solid #0000;border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:flex;font-family:var(--font-body);font-size:.85rem;font-weight:600;gap:.5rem;padding:.6rem 1.05rem;transition:all .18s var(--ease)}.tabs button:hover{background:var(--paper-deep);color:var(--ink)}.tabs button.active{background:var(--rust-tint);border-color:var(--line-rust);color:var(--rust-deep)}.tab-label{display:inline}.tab-gear{background:#0000;border:1px solid #0000;border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:grid;flex:none;padding:.45rem 0;place-items:center;transition:background .16s var(--ease),color .16s var(--ease);width:54px}.tab-gear:hover{background:var(--paper-deep);color:var(--ink)}.main-content{animation:ss-rise .5s var(--ease) both;flex:1 1;margin:0 auto;max-width:1200px;padding:2.25rem max(2rem,env(safe-area-inset-right)) 4rem max(2rem,env(safe-area-inset-left));width:100%}.main-viewer{padding-bottom:.5rem}.build-tab{display:flex;flex-direction:column;gap:1.75rem}.build-header{align-items:flex-end;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;padding:1.25rem 1.5rem}.setlist-name-input{display:flex;flex:1 1 280px;flex-direction:column;gap:.4rem}.setlist-name-input:before{color:var(--ink-faint);content:"Tonight's Set";font-family:var(--font-mono);font-size:.66rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.setlist-name-input input{background:var(--surface-2);font-family:var(--font-display);font-size:1.2rem;font-weight:600;padding:.7rem .9rem;width:100%}.build-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.7rem}.generate-btn,.open-btn,.save-btn,.share-btn{align-items:center;border:1px solid #0000;border-radius:var(--r-md);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:.86rem;font-weight:700;gap:.5rem;letter-spacing:.02em;padding:.7rem 1.25rem;transition:all .18s var(--ease)}.save-btn{background:#0000;border-color:var(--line-strong);color:var(--sage-deep)}.save-btn:hover{background:var(--sage-tint);border-color:var(--sage);transform:translateY(-1px)}.open-btn,.share-btn{background:#0000;border-color:var(--line-strong);color:var(--ink-soft)}.open-btn:hover:not(:disabled),.share-btn:hover:not(:disabled){background:var(--paper-deep);border-color:var(--gold);color:var(--ink);transform:translateY(-1px)}.open-btn:disabled,.share-btn:disabled{cursor:not-allowed;opacity:.45}.generate-btn{background:var(--rust);box-shadow:var(--shadow-sm);color:var(--on-accent)}.generate-btn:hover{background:var(--rust-deep);box-shadow:var(--shadow-md);transform:translateY(-1px)}.generate-btn:active,.open-btn:active,.save-btn:active,.share-btn:active{transform:translateY(1px)}.resume-banner{align-items:center;animation:ss-rise .25s var(--ease) both;display:flex;gap:.4rem;margin:.9rem auto -.6rem;max-width:1200px;padding:0 max(2rem,env(safe-area-inset-right)) 0 max(2rem,env(safe-area-inset-left))}.resume-banner-main{align-items:center;background:var(--rust-tint);border:1px solid var(--line-rust);border-radius:var(--r-md);color:var(--rust-deep);cursor:pointer;display:flex;flex:1 1;font-family:var(--font-body);font-size:.88rem;font-weight:600;gap:.6rem;min-width:0;padding:.7rem 1rem;transition:transform .16s var(--ease),box-shadow .16s var(--ease)}.resume-banner-main:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.resume-banner-main svg{flex:none}.resume-banner-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resume-banner-dismiss{background:#0000;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:grid;flex:none;height:40px;place-items:center;width:40px}.resume-banner-dismiss:hover{background:var(--paper-deep);color:var(--ink)}.app-toast{animation:ss-toast-in .22s var(--ease) both;background:var(--ink);border-radius:var(--r-md);bottom:max(1.5rem,env(safe-area-inset-bottom));box-shadow:var(--shadow-md);color:var(--paper);font-family:var(--font-body);font-size:.85rem;font-weight:600;left:50%;max-width:min(92vw,30rem);padding:.7rem 1.15rem;position:fixed;text-align:center;transform:translateX(-50%);z-index:1200}@keyframes ss-toast-in{0%{opacity:0;transform:translate(-50%,.6rem)}to{opacity:1;transform:translate(-50%)}}.title-page-toggle{align-items:center;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--ink-soft);cursor:pointer;display:flex;font-size:.82rem;font-weight:600;gap:.45rem;padding:.65rem .85rem;transition:all .18s var(--ease);-webkit-user-select:none;user-select:none}.title-page-toggle:hover{border-color:var(--gold);color:var(--ink)}.title-page-toggle input[type=checkbox]{accent-color:var(--rust);cursor:pointer;height:15px;width:15px}.build-content{grid-gap:1.75rem;align-items:start;display:grid;gap:1.75rem;grid-template-columns:1fr 1fr}@media (max-width:860px){.header-content{gap:.9rem;text-align:center}.header-content,.logo{justify-content:center}.logo{flex:1 1 100%}.tabs{justify-content:center}.build-header{align-items:stretch;flex-direction:column}.build-actions{justify-content:space-between}.build-content{grid-template-columns:1fr}.main-content{padding:1.5rem max(1.1rem,env(safe-area-inset-right)) 3rem max(1.1rem,env(safe-area-inset-left))}.main-viewer{padding-bottom:.4rem}}@media (max-width:560px){.app-header{position:sticky;top:0;z-index:30}.header-content{gap:.5rem;padding:max(.6rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) .6rem max(1rem,env(safe-area-inset-left))}.logo{gap:.6rem}.logo-badge{height:34px;width:34px}.logo-badge svg{height:17px;width:17px}.logo-text h1{font-size:1.2rem}.logo-tagline{display:none}.tabs{flex-wrap:nowrap;gap:.2rem;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;width:100%}.tabs::-webkit-scrollbar{display:none}.tabs button{flex:1 0 auto;font-size:.8rem;justify-content:center;padding:.5rem .7rem}.resume-banner{padding:0 max(1.1rem,env(safe-area-inset-right)) 0 max(1.1rem,env(safe-area-inset-left))}}
/*# sourceMappingURL=main.9f01e17e.css.map*/