.setlist-stage-monitor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;display:flex;flex-direction:column;width:100%;height:100dvh;padding:0 28px;overflow:hidden;background:#101313;color:#f4f6f4;font-family:Inter,Segoe UI,sans-serif;letter-spacing:0}.setlist-stage-monitor *{box-sizing:border-box}.setlist-stage-monitor button,.setlist-stage-monitor input,.setlist-stage-monitor select{font:inherit}.setlist-stage-monitor button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 12px;border:1px solid #3b4540;border-radius:6px;color:#e8efeb;background:#202925}.setlist-stage-monitor button:disabled{opacity:.45}.setlist-stage-monitor button:focus-visible,.setlist-stage-monitor input:focus-visible,.setlist-stage-monitor select:focus-visible{outline:2px solid #8ce1c3;outline-offset:2px}.setlist-stage-monitor button[aria-pressed=true]{background:#205a49;border-color:#8ce1c3}.stage-topbar,.stage-header-actions,.stage-song-header,.stage-transport,.stage-toggles{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.stage-topbar{flex:0 0 auto;padding:14px 0;border-bottom:1px solid #303737}.stage-topbar>div:not(.stage-header-actions){flex:1;min-width:100px}.stage-topbar strong{font-size:14px}.stage-topbar small{display:block;margin-top:4px;color:#a8b5b0;font-size:12px}.stage-song-header{justify-content:space-between;flex:0 0 auto;padding:18px 0}.stage-song-header h2{margin:0;font-size:24px;color:#f4f6f4;overflow-wrap:anywhere}.stage-song-header>span{color:#a8b5b0}.stage-song-header strong{color:#8ce1c3;font-size:24px}.stage-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px;padding:12px 0 20px}.stage-current{min-width:0;min-height:0;display:flex;flex-direction:column}.stage-section-heading{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:0 0 18px;flex:0 0 auto}.stage-section-heading h3{color:#8ce1c3;font-size:20px;margin:0}.stage-section-heading>span,.stage-section-heading>small{color:#a8b5b0;font-size:13px}.stage-section-heading small{margin-left:auto}.stage-lyrics-scroll{overflow:auto;min-height:0;padding:4px 14px 10px 0;scrollbar-color:#3c6050 #101313}.stage-lyrics{font:600 var(--stage-font-size)/1.4 "Cascadia Mono",Consolas,monospace}.stage-lyric-line{margin:0 0 12px;white-space:normal;overflow-wrap:anywhere}.stage-word{position:relative;display:inline-block;max-width:100%;padding-top:25px;white-space:pre-wrap;vertical-align:top}.stage-word-chords{position:absolute;top:0;left:0;width:100%;height:24px}.stage-chord-anchor{position:absolute;top:0}.stage-chord-anchor b{display:block;font:600 17px/1.3 Cascadia Mono,Consolas,monospace;white-space:pre;color:#8ce1c3}.stage-lyrics.without-chords .stage-word{padding-top:0}.stage-sidebar{min-width:0;min-height:0;overflow:auto;border-left:1px solid #303737;padding-left:24px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}.stage-sidebar section>span{display:flex;align-items:center;gap:8px;color:#a8b5b0;font-size:12px}.stage-cue p{font-size:20px;color:#e0c98b;line-height:1.5;margin:12px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.stage-upcoming h3{margin:12px 0 8px;font-size:22px;color:#e1e9e4}.stage-upcoming p{color:#a8b5b0;margin:0;line-height:1.5;overflow-wrap:anywhere}.stage-playback-status{flex:0 0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 0;color:#a8b5b0;font-size:12px;font-variant-numeric:tabular-nums}.stage-progress{flex:0 0 3px;height:3px;background:#303737}.stage-progress>div{height:100%;background:#8ce1c3}.stage-sequence{flex:0 0 auto;display:flex;gap:6px;padding:10px 0;overflow-x:auto;max-height:66px}.setlist-stage-monitor .stage-sequence button{flex:0 0 auto;border:0;background:transparent;color:#a8b5b0;white-space:nowrap}.setlist-stage-monitor .stage-sequence button[aria-current=step]{background:#193b2d;color:#8ce1c3}.stage-operator{flex:0 0 auto;max-height:40dvh;overflow:auto;background:#1b211e;border-top:1px solid #303737;padding:14px 0 max(14px,env(safe-area-inset-bottom))}.setlist-stage-monitor .stage-play{background:#205a49;border-color:#367e64;min-width:120px}.stage-settings{display:grid;grid-template-columns:minmax(160px,1.4fr) repeat(3,minmax(120px,1fr));gap:16px;margin-top:16px}.stage-settings>label{display:grid;align-content:start;gap:8px;font-size:12px;color:#b5c3bb;min-width:0}.setlist-stage-monitor .stage-settings select,.setlist-stage-monitor .stage-settings input[type=number]{width:100%;min-width:0;height:38px;padding:6px 8px;border:1px solid #45534a;border-radius:6px;background:#101813;color:#e8efeb;font-size:14px}.stage-settings input[type=range]{width:100%;margin:0;min-height:38px;accent-color:#8ce1c3}.stage-toggles{padding-top:12px}.stage-toggles label{display:flex;align-items:center;gap:8px;min-height:30px;color:#c5d1ca;font-size:13px}.stage-toggles input{accent-color:#8ce1c3}.stage-error{color:#f0cd91;padding:8px;margin:0}@media (max-width: 740px){.setlist-stage-monitor{padding:0 12px}.stage-topbar{gap:8px;padding:8px 0}.stage-topbar>div:not(.stage-header-actions){min-width:120px}.stage-header-actions{margin-left:auto}.stage-song-header{padding:10px 0}.stage-song-header h2{font-size:20px}.stage-body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(70px,1fr) auto;gap:10px;padding:8px 0}.stage-sidebar{max-height:110px;border-left:0;border-top:1px solid #303737;padding:10px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:16px}.stage-body.comments-hidden .stage-sidebar{grid-template-columns:1fr}.stage-cue p{font-size:15px;margin-top:6px}.stage-upcoming h3{font-size:17px;margin:6px 0}.stage-upcoming p{font-size:13px}.stage-section-heading{padding-bottom:8px}.stage-settings{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.stage-operator{max-height:34dvh;padding-top:10px}.setlist-stage-monitor button{min-height:44px}}:root{color-scheme:light;--ink: #172033;--muted: #5f6b7d;--line: #cfd7e3;--paper: #f1f4f8;--panel: #ffffff;--accent: #2457a6;--accent-soft: #eaf1fb;--secondary: #183153;--gold: #b88a2c;--danger: #991b1b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.sidebar{display:grid;align-content:start;gap:18px;padding:20px 16px;border-right:1px solid var(--line);background:#fff}.brand{display:flex;gap:12px;align-items:center}.brand-mark{display:grid;width:48px;height:48px;place-items:center;border:2px solid rgba(184,138,44,.6);border-radius:50%;color:#fff;background:var(--accent);font-weight:900}.brand h1,.brand span,.topbar h2,.topbar span,.panel-heading h2,.panel-heading span{margin:0}.brand h1{color:var(--secondary);font-size:21px}.brand span,.topbar span,.panel-heading span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.sidebar nav{display:grid;gap:10px}.nav-section{display:grid;gap:8px}.nav-section-title{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:38px;padding:0 10px;border:1px solid #d9e0ea;border-radius:8px;color:var(--secondary);background:#f8fafc;font-size:13px;font-weight:900;text-transform:uppercase}.nav-section-content{display:grid;gap:7px}.sidebar .nav-section-content button,.topbar button,.reader-actions button{display:flex;gap:9px;align-items:center;min-height:40px;padding:0 11px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;font-size:14px;font-weight:800}.sidebar .nav-section-content button{justify-content:center}.sidebar .nav-section-content button.is-active,.topbar button,.reader-actions button:hover{color:#fff;border-color:var(--accent);background:var(--accent)}.api-status{margin:0;color:var(--muted);font-size:12px;line-height:1.45;word-break:break-word}.session-panel{display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.session-panel span,.session-panel small{color:var(--muted);font-size:11px;font-weight:900}.session-panel strong{color:var(--secondary);font-size:15px}.session-panel.is-admin{border-color:#2457a659;background:var(--accent-soft)}.session-panel>button,.login-form button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--secondary);font-size:13px;font-weight:900}.login-form{display:grid;gap:7px}.login-form input{width:100%;min-height:36px;padding:0 9px;border:1px solid var(--line);border-radius:8px;outline:0}.login-form p{margin:0;color:var(--danger);font-size:12px;font-weight:800}.content{display:grid;gap:18px;align-content:start;min-width:0;padding:22px}.app-shell-v2{grid-template-columns:minmax(0,1fr);background:#edf2f7}.app-shell-v2 .content{min-height:100vh;padding:0}.v2-shell{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:100vh;background:linear-gradient(180deg,#ffffffe0,#f1f4f8f5),#edf2f7}.v2-screen{width:min(100%,1020px);margin:0 auto;padding:24px 18px 104px}.v2-bottom-nav{position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;min-height:70px;padding:7px max(10px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-right));border-top:1px solid rgba(23,32,51,.13);background:#fffffff5;box-shadow:0 -12px 28px #17203314;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.v2-bottom-nav button{display:grid;place-items:center;gap:3px;min-width:0;border:0;border-radius:8px;color:#516070;background:transparent;font-size:12px;font-weight:850}.v2-bottom-nav button svg{stroke-width:2.25}.v2-bottom-nav button.is-active{color:var(--accent);background:var(--accent-soft)}.v2-session-menu{position:relative;display:grid;min-width:0}.v2-session-popover{position:fixed;right:10px;bottom:calc(78px + env(safe-area-inset-bottom));display:grid;gap:9px;width:min(320px,calc(100vw - 20px));padding:14px;border:1px solid #c9d6e6;border-radius:8px;background:#fff;box-shadow:0 18px 42px #0c23402e}.v2-session-popover form{display:grid;gap:9px}.v2-session-popover span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.v2-session-popover strong{color:var(--secondary);font-size:18px}.v2-session-popover small,.v2-session-popover p{margin:0;color:var(--muted);font-weight:750}.v2-session-popover input{width:100%;min-height:40px;border:1px solid #c9d6e6;border-radius:8px;padding:0 10px}.v2-session-popover>button,.v2-session-popover form button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--accent);border-radius:8px;color:#fff;background:var(--accent);font-weight:900}.v2-song-list-page,.v2-song-detail,.v2-placeholder{display:grid;gap:16px}.v2-hero,.v2-reader-card,.v2-placeholder,.v2-filters,.v2-song-list{border:1px solid #d6e0ec;border-radius:8px;background:#fff}.v2-hero{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:20px}.v2-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.v2-hero span,.v2-placeholder span,.v2-titlebar span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.v2-hero h2,.v2-placeholder h2,.v2-titlebar h2{margin:4px 0 0;color:var(--secondary);line-height:1.12}.v2-hero h2{font-size:clamp(28px,4vw,42px)}.v2-hero p,.v2-placeholder p,.v2-titlebar p{margin:7px 0 0;color:var(--muted);font-weight:750;line-height:1.45}.v2-ghost-button,.v2-primary-button,.v2-back-button,.v2-reader-actions button,.v2-listen-button,.v2-placeholder button,.v2-lyrics-toolbar button,.v2-diagram-head button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:40px;padding:0 13px;border:1px solid #c9d6e6;border-radius:8px;color:var(--secondary);background:#fff;font-weight:850;text-decoration:none}.v2-ghost-button:hover,.v2-back-button:hover,.v2-reader-actions button:hover,.v2-placeholder button:hover,.v2-lyrics-toolbar button:hover{border-color:var(--accent);color:var(--accent)}.v2-listen-button,.v2-primary-button{color:#fff;border-color:var(--accent);background:var(--accent)}.v2-filters{position:sticky;top:10px;z-index:20;display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:12px;padding:14px;border:1px solid #d8e3f0;border-radius:8px;background:#f8fbfff5;box-shadow:0 12px 24px #0c234014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.v2-filters label{display:grid;gap:7px;min-width:0;color:var(--secondary);font-size:12px;font-weight:900;text-transform:uppercase}.v2-filters select,.v2-search div{min-height:44px;border:1px solid #c9d6e6;border-radius:8px;background:#fff}.v2-filters select{width:100%;padding:0 12px;color:var(--ink)}.v2-search div{display:flex;gap:8px;align-items:center;padding:0 12px}.v2-search svg{color:var(--accent)}.v2-search input{width:100%;height:40px;min-width:0;border:0;outline:0}.v2-song-list{overflow:hidden}.v2-song-list article{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;border-bottom:1px solid #e1e8f1;background:#fff}.v2-song-list article:hover,.v2-song-list article.is-active{background:#eef5ff}.v2-song-open{display:grid;gap:5px;width:100%;min-height:72px;min-width:0;padding:14px 18px;border:0;color:inherit;background:transparent;text-align:left}.v2-song-list article:last-child{border-bottom:0}.v2-song-list strong{color:var(--secondary);font-size:16px}.v2-song-list span{color:#47617d;font-size:13px;font-weight:750}.v2-song-loading{display:grid;justify-items:center;gap:10px;padding:42px 18px;border:1px solid #d8e3f0;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fbff);color:var(--secondary);text-align:center}.v2-song-loading strong{font-size:20px}.v2-song-loading p{margin:0;color:var(--muted);font-weight:750}.v2-lyrics-loading,.v2-setlist-loading{min-height:260px;align-content:center;border:0;background:transparent}.v2-music-loader{position:relative;width:88px;height:54px}.v2-music-loader span{position:absolute;display:grid;width:34px;height:34px;place-items:center;border:1px solid #bad4f8;border-radius:50%;color:var(--accent);background:#eef5ff;font-size:22px;font-weight:900;animation:v2-note-float 1.4s ease-in-out infinite}.v2-music-loader span:nth-child(1){top:14px;left:0}.v2-music-loader span:nth-child(2){top:0;left:27px;animation-delay:.18s}.v2-music-loader span:nth-child(3){top:14px;right:0;animation-delay:.36s}@keyframes v2-note-float{0%,to{transform:translateY(0) scale(1);opacity:.72}50%{transform:translateY(-8px) scale(1.08);opacity:1}}.v2-detail-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.v2-reader-card{display:grid;gap:16px;padding:18px}.v2-titlebar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid #dce5ef}.v2-titlebar h2{font-size:clamp(30px,5vw,52px)}.v2-reader-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.v2-version-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.v2-version-strip button{flex:0 0 auto}.v2-diagram-bar{display:grid;gap:10px;padding:12px;border:1px solid #d8e2ef;border-radius:8px;background:#f8fafc}.v2-diagram-bar.is-hidden{padding:10px 12px}.v2-diagram-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.v2-diagram-head strong{color:var(--secondary);font-size:14px}.v2-diagram-head button{min-height:34px}.v2-diagram-scroll{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 8px}.v2-diagram-scroll .diagram{flex:0 0 118px;padding:8px 6px;border-color:#d9e4f0;box-shadow:none}.v2-diagram-scroll .diagram strong{color:var(--accent)}.v2-diagram-scroll .chord-svg .finger-dot{r:6}.v2-lyrics-toolbar{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}.v2-transpose-controls{display:flex;flex:1 1 520px;flex-wrap:wrap;gap:7px;align-items:center;min-width:0}.v2-tone-trigger{min-width:116px}.v2-tone-trigger span{color:inherit;font-size:11px;font-weight:900;text-transform:uppercase}.v2-tone-trigger strong{font-size:16px}.v2-tone-panel{display:grid;flex:0 0 100%;width:min(360px,100%);gap:10px;margin-top:2px;padding:10px;border:1px solid #d8e2ef;border-radius:8px;background:#fffffffa;box-shadow:0 10px 24px #17203314}.v2-tone-stepper,.v2-tone-grid{display:grid;gap:8px}.v2-tone-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-tone-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.v2-tone-panel button{min-height:38px;padding:0 10px;border:1px solid #e0e7f0;border-radius:8px;color:var(--secondary);background:#f6f8fb;font-weight:900}.v2-tone-panel button:hover,.v2-tone-panel button.is-active{color:#fff;border-color:var(--accent);background:var(--accent)}.v2-tone-reset{width:100%}.v2-tone-reset:disabled{color:#8b96a5;background:#f8fafc}.v2-transpose-controls>button{flex:0 0 auto}.v2-lyrics-card{overflow-x:auto;padding:18px;border:1px solid #d8e2ef;border-radius:8px;background:#fff}.v2-setlist-adder{display:grid;grid-template-columns:minmax(170px,1fr) minmax(220px,320px) auto;gap:10px;align-items:center;padding:12px;border:1px solid #d8e2ef;border-radius:8px;background:#f8fafc}.v2-setlist-adder>div{display:grid;gap:2px;min-width:0}.v2-setlist-adder span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.v2-setlist-adder strong{color:var(--secondary);font-size:14px}.v2-setlist-adder select{width:100%;min-height:40px;min-width:0;padding:0 10px;border:1px solid #c9d6e6;border-radius:8px;color:var(--ink);background:#fff}.v2-setlist-adder p{grid-column:1 / -1;margin:0;color:#166534;font-size:13px;font-weight:900}.v2-placeholder{align-content:center;justify-items:start;min-height:min(620px,calc(100vh - 140px));padding:28px}.v2-setlist-page,.v2-setlist-detail,.v2-setlist-create-page{display:grid;gap:16px}.v2-wide-field{grid-column:1 / -1}.v2-setlist-search{display:grid;gap:7px;padding:14px;border:1px solid #d6e0ec;border-radius:8px;background:#fff}.v2-setlist-search>span{color:var(--secondary);font-size:12px;font-weight:900;text-transform:uppercase}.v2-setlist-list,.v2-setlist-card,.v2-setlist-song-list{border:1px solid #d6e0ec;border-radius:8px;background:#fff}.v2-setlist-list{overflow:hidden}.v2-setlist-list button{display:grid;gap:5px;width:100%;min-height:74px;padding:14px 18px;border:0;border-bottom:1px solid #e1e8f1;background:#fff;text-align:left}.v2-setlist-list button:hover{background:#eef5ff}.v2-setlist-list button:last-child{border-bottom:0}.v2-setlist-list strong,.v2-setlist-song-list strong{color:var(--secondary);font-size:16px}.v2-setlist-list span,.v2-setlist-song-list span,.v2-setlist-list small,.v2-setlist-song-list small{color:#47617d;font-size:13px;font-weight:750}.v2-setlist-card{display:grid;gap:16px;padding:18px}.v2-setlist-summary-header{align-items:start}.v2-setlist-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;width:min(100%,520px)}.v2-setlist-summary-grid div{display:grid;gap:2px;padding:10px;border:1px solid #d9e4f1;border-radius:8px;background:#f8fafc}.v2-setlist-summary-grid span{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.v2-setlist-summary-grid strong{color:var(--secondary);font-size:13px;overflow-wrap:anywhere}.v2-setlist-comment{grid-column:1 / -1;width:100%;margin:0;padding-top:6px;color:#47617d;font-size:14px;font-weight:750}.v2-setlist-actions,.v2-setlist-bottom-actions{display:flex;flex-wrap:wrap;gap:8px}.v2-setlist-bottom-actions{position:sticky;bottom:76px;z-index:12;align-items:center;justify-content:flex-end;padding:12px;border:1px solid #d8e2ef;border-radius:8px;background:#f8fbfff7;box-shadow:0 -12px 24px #0c234014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.v2-setlist-actions button,.v2-setlist-bottom-actions button,.v2-export-menu select{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border:1px solid #c9d6e6;border-radius:8px;color:var(--secondary);background:#fff;font-weight:900}.v2-export-menu{display:inline-flex;gap:8px;align-items:center}.v2-export-menu span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.v2-export-menu select{min-width:150px}.v2-setlist-song-list{display:grid;overflow:hidden}.v2-setlist-song-list article{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid #e1e8f1}.v2-setlist-song-list article:last-child{border-bottom:0}.v2-setlist-position{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;color:#fff;background:var(--accent);font-weight:900}.v2-setlist-song-list article>div:nth-child(2){display:grid;gap:4px;min-width:0}.v2-chords-page{display:grid;gap:16px}.v2-chords-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v2-chords-summary div{display:grid;gap:3px;padding:14px;border:1px solid #d8e3f0;border-radius:8px;background:#fff}.v2-chords-summary span,.v2-chords-toggle{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.v2-chords-summary strong{color:var(--secondary);font-size:22px;line-height:1}.v2-chords-tools{position:sticky;top:10px;z-index:20;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid #d8e3f0;border-radius:8px;background:#f8fbfff5;box-shadow:0 12px 24px #0c234014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.v2-chords-toggle{display:inline-flex;gap:8px;align-items:center;min-height:44px;padding:0 12px;border:1px solid #c9d6e6;border-radius:8px;background:#fff}.v2-chords-toggle input{width:16px;height:16px;accent-color:var(--accent)}.v2-chord-family-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:3px}.v2-chord-family-strip button{display:grid;flex:0 0 116px;gap:4px;min-height:56px;padding:9px 12px;border:1px solid #c9d6e6;border-radius:8px;color:var(--secondary);background:#fff}.v2-chord-family-strip button.is-active{color:#fff;border-color:var(--accent);background:var(--accent)}.v2-chord-family-strip strong{font-size:16px}.v2-chord-family-strip span{color:inherit;font-size:12px;font-weight:900;opacity:.82}.v2-chord-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px}.v2-chord-tile{display:grid;gap:8px;justify-items:center;min-width:0;padding:12px;border:1px solid #d6e0ec;border-radius:8px;background:#fff}.v2-chord-tile header,.v2-chord-tile footer{display:flex;justify-content:space-between;gap:8px;width:100%;min-width:0}.v2-chord-tile header strong{overflow:hidden;color:var(--secondary);font-size:18px;text-overflow:ellipsis;white-space:nowrap}.v2-chord-tile header span,.v2-chord-tile footer span{color:var(--muted);font-size:11px;font-weight:900}.v2-chord-tile .diagram{border:0;padding:0;background:transparent}.v2-chord-tile .diagram>span{display:none}.v2-chord-edit-link{width:100%;min-height:36px;border:1px solid #c9d6e6;border-radius:8px;color:var(--secondary);background:#f8fafc;font-weight:900}.v2-editor-page{display:grid;gap:16px}.v2-editor-hero,.v2-edit-card{border:1px solid #d6e0ec;border-radius:8px;background:#fff}.v2-editor-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px}.v2-editor-hero span,.v2-edit-card header span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.v2-editor-hero h2{margin:3px 0 0;color:var(--secondary);font-size:clamp(26px,4vw,42px);line-height:1.12}.v2-editor-hero p{margin:7px 0 0;color:var(--muted);font-weight:750;line-height:1.45}.v2-editor-main-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.v2-editor-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.v2-edit-card{display:grid;gap:14px;min-width:0;padding:16px}.v2-edit-card header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:10px;border-bottom:1px solid #dce5ef}.v2-edit-card header strong{color:var(--accent);font-weight:900}.v2-lyrics-editor-card .lyrics-editor{min-height:420px}.v2-preview-card{gap:16px}.v2-preview-card .v2-lyrics-card{max-height:620px}.v2-structure-page{display:grid;gap:16px}.v2-structure-workspace{display:grid;grid-template-columns:290px minmax(0,1fr);gap:16px;align-items:start}.v2-structure-list-card,.v2-structure-editor-card{min-width:0;border:1px solid #d6e0ec;border-radius:8px;background:#fff;padding:16px}.v2-structure-list-card,.v2-structure-editor-card{display:grid;gap:14px}.v2-structure-list-card header,.v2-structure-editor-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #dce5ef}.v2-structure-list-card header span,.v2-structure-editor-card header span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.v2-structure-list-card header strong,.v2-structure-editor-card header strong{color:var(--accent);font-weight:900}.v2-structure-section-list{display:grid;gap:8px}.v2-structure-section-list button{display:grid;grid-template-columns:30px minmax(0,1fr);gap:4px 10px;width:100%;min-height:72px;padding:10px;border:1px solid #d4e0ee;border-radius:8px;background:#f8fafc;color:var(--secondary);text-align:left}.v2-structure-section-list button>span{grid-row:span 2;display:grid;width:30px;height:30px;place-items:center;border-radius:8px;background:#e9f2ff;color:#1f5bb8;font-weight:900}.v2-structure-section-list button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:900}.v2-structure-section-list button small{overflow:hidden;color:var(--muted);font-weight:800;text-overflow:ellipsis;white-space:nowrap}.v2-structure-section-list button.is-active{border-color:#8db5f0;background:#e9f2ff}.v2-structure-section-list button.is-active>span{background:var(--primary);color:#fff}.v2-structure-section-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.v2-structure-type-strip{display:flex;flex-wrap:wrap;gap:8px}.v2-structure-type-strip button{min-height:36px;border:1px solid #d2ddec;border-radius:999px;background:#f8fafc;color:var(--secondary);padding:0 12px;font-weight:850}.v2-structure-type-strip button.is-active{border-color:var(--primary);background:var(--primary);color:#fff}.v2-structure-fields{grid-template-columns:220px minmax(0,1fr)}.v2-structure-lyrics-card{display:grid;gap:14px;min-width:0;overflow-x:auto;border:1px solid #d6e0ec;border-radius:8px;background:#fff;padding:16px}.v2-section-paste-card{display:grid;gap:10px;padding:12px;border:1px solid #bfd4ef;border-radius:8px;background:linear-gradient(135deg,rgba(37,99,216,.08),transparent 44%),#f8fafc}.v2-section-paste-card label{display:grid;gap:8px}.v2-section-paste-card label span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.v2-section-paste-card textarea{width:100%;max-height:none;overflow-y:hidden;resize:none}.v2-section-paste-card footer{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.v2-section-paste-card footer span{color:var(--muted);font-size:12px;font-weight:800}.arrangement-workspace{display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,2fr);gap:24px;min-width:0;margin:0;padding:0;border:0}.arrangement-source,.arrangement-order{min-width:0}.arrangement-page h3{margin:0 0 16px;font-size:18px}.arrangement-order-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}.arrangement-order-header h3{margin:0}.arrangement-block-list{display:grid;gap:12px;list-style:none;margin:0;padding:0 0 40px;min-height:100px}.arrangement-block-list.is-dragging{outline:2px dashed #8db5f0;outline-offset:4px}.arrangement-block{min-width:0;padding:14px;border:1px solid #d6e0ec;border-radius:8px;background:#fff}.arrangement-source .arrangement-block{background:#f4f6f8;border-color:#dce1e7}.arrangement-order .arrangement-block{background:#f4fbf8;border-color:#bdded0;border-left:4px solid #248263}.arrangement-panel-heading{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px}.arrangement-panel-heading h3{margin:0}.arrangement-page h3{display:flex;align-items:center;gap:8px}.arrangement-panel-heading h3{color:#596575}.arrangement-order-header h3{color:#17684f}.arrangement-panel-tag{color:#596575;background:#e8edf1;font-size:12px;padding:3px 6px;border-radius:4px}.arrangement-song-picker{max-width:720px}.arrangement-comment{display:grid;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid #d1e7dc}.arrangement-comment>span{display:flex;align-items:center;gap:6px;color:#326653;font-size:12px;font-weight:700}.arrangement-comment textarea{width:100%;min-width:0;min-height:68px;resize:vertical;background:#fff;border:1px solid #bfd7ca;border-radius:6px;padding:10px;color:var(--ink);font:inherit}.arrangement-block-head,.arrangement-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.arrangement-block-head>strong{flex:1;min-width:80px;overflow-wrap:anywhere}.arrangement-block-head>svg{cursor:grab}.arrangement-block button{display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #d6e0ec;border-radius:6px;background:#fff;color:var(--secondary)}.arrangement-position{min-width:28px;color:#17684f;font-weight:800}.arrangement-block p{color:var(--muted);margin:8px 0 0;overflow-wrap:anywhere}@media (max-width: 760px){.arrangement-workspace,.v2-structure-workspace,.v2-structure-fields{grid-template-columns:minmax(0,1fr)}.arrangement-block button{width:44px;height:44px}}.smart-paste-card{border-color:#bfd4ef;background:linear-gradient(135deg,rgba(37,99,216,.08),transparent 44%),#fff}.smart-paste-card p{margin:0;color:var(--muted);font-weight:750;line-height:1.45}.smart-paste-card textarea{width:100%;min-height:210px;resize:vertical;border:1px solid #cbd9eb;border-radius:8px;background:#f9fbff;color:var(--ink);padding:13px;font-family:Cascadia Mono,Consolas,Courier New,monospace;font-size:15px;font-weight:650;line-height:1.5}.smart-paste-card textarea:focus{border-color:#7aa8e8;outline:3px solid rgba(37,99,235,.12)}.smart-paste-card footer{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.smart-paste-card footer span{color:var(--muted);font-size:13px;font-weight:800}.topbar,.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.topbar h2,.panel-heading h2{color:var(--secondary);font-size:24px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat-card,.work-area,.reader-panel,.usage-card{border:1px solid var(--line);border-radius:8px;background:var(--panel)}.stat-card{display:grid;gap:8px;padding:14px}.stat-card svg{color:var(--accent)}.stat-card strong{color:var(--secondary);font-size:26px;line-height:1}.stat-card span{color:var(--muted);font-size:12px;font-weight:800}.work-area{display:grid;gap:16px;min-width:0;padding:16px}.reader-shell{gap:0;padding:0;overflow:hidden}.reader-heading,.editor-heading{min-height:76px;padding:15px 18px;border-bottom:1px solid #c5d3e8;background:var(--accent-soft)}.reader-heading h2,.editor-heading h2{font-size:22px}.reader-shell>.song-layout{padding:16px}.search-field{display:flex;gap:8px;align-items:center;min-width:min(380px,100%);padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.search-field svg{color:var(--accent)}.search-field input{width:100%;height:42px;border:0;outline:0}.song-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:14px;min-height:580px}.song-list{display:grid;align-content:start;max-height:calc(100vh - 260px);min-height:360px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.song-list button{display:grid;gap:4px;min-width:0;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left}.song-list button:hover{background:#f8fafc}.song-list button.is-active{border-left:4px solid var(--accent);background:var(--accent-soft)}.song-list strong,.song-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-list strong{color:var(--secondary);line-height:1.35}.song-list span,.usage-card span,.usage-card small,.diagram span{color:var(--muted);font-size:12px;font-weight:800}.reader-panel{display:grid;align-content:start;gap:18px;min-width:0;padding:18px;overflow:visible}.heading-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;align-items:center}.reader-titlebar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--line)}.title-line{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline}.title-line h2{margin:0;color:var(--secondary);font-size:27px;line-height:1.18}.title-line span{color:var(--muted);font-size:16px;font-weight:800}.reader-titlebar p{margin:5px 0 0;color:var(--muted);font-weight:800}.reader-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.version-strip{display:flex;flex-wrap:wrap;gap:8px}.version-strip button{display:grid;gap:2px;min-width:78px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#f8fafc;text-align:left}.version-strip button.is-active{color:#fff;border-color:var(--accent);background:var(--accent)}.version-strip strong{font-size:15px}.version-strip span{font-size:11px;font-weight:800}.media-link{display:flex;justify-content:flex-start}.media-link a{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border:1px solid var(--accent);border-radius:8px;color:#fff;background:var(--accent);font-weight:900;text-decoration:none}.reader-grid{display:grid;grid-template-columns:minmax(0,1fr) clamp(210px,24vw,330px);gap:14px;align-items:start;min-width:0}.reader-panel.is-diagrams-hidden .reader-grid{grid-template-columns:minmax(0,1fr)}.lyrics-panel{min-width:0;overflow-x:auto;padding:18px 18px 20px;border:1px solid #d8e2ef;border-radius:8px;background:linear-gradient(90deg,#fffffff5,#ffffffe6),#f8fafc;box-shadow:inset 0 1px #ffffffbf}.lyrics{display:block;min-width:0}.lyric-line{min-width:0;min-height:48px;padding:0 0 8px;border-radius:0;background:transparent}.lyric-line.is-empty{min-height:18px;padding:0;background:transparent}.lyric-section-label{min-height:auto;margin-top:10px;padding:14px 0 6px;color:var(--accent);background:transparent;font-size:13px;font-weight:900;letter-spacing:0;text-transform:uppercase}.lyrics .chord-row,.lyrics .text-row{--lyrics-line-font-size: clamp(17px, 1.35vw, 22px);max-width:100%;margin:0;overflow:visible;font-family:Cascadia Mono,Consolas,Courier New,monospace;font-size:var(--lyrics-line-font-size);white-space:pre;letter-spacing:0}.lyrics .chord-row{min-height:22px;color:#2458a6;font-weight:900;line-height:1.15}.lyrics .text-row{color:var(--ink);font-weight:650;line-height:1.32}.lyrics.are-chords-hidden .chord-row,.mobile-lyric-line{display:none}@media (max-width: 760px){.lyrics .desktop-lyric-line{display:none}.lyrics .mobile-lyric-line{display:grid;gap:8px;width:100%;min-width:0;font:400 16px/1.55 Cascadia Mono,Consolas,Courier New,monospace;letter-spacing:0}.lyrics .mobile-lyric-pair{min-width:0}.lyrics .mobile-chord-row,.lyrics .mobile-text-row{margin:0;padding:0;max-width:100%;overflow:visible;white-space:pre;font:inherit;letter-spacing:0;background:transparent}.lyrics .mobile-chord-row{color:#b95700;font-weight:400;line-height:1.4}.lyrics .mobile-text-row{color:var(--ink)}.lyrics .lyric-line{min-height:0;padding-bottom:14px}.lyrics .lyric-line.is-empty{min-height:18px;padding:0}.setlist-projection-lyrics .mobile-text-row{color:#f8fafc}.setlist-projection-lyrics .mobile-chord-row{color:#f1b36d}}.editable-lyrics-preview{position:relative;display:grid;gap:8px;min-width:max-content;padding-bottom:92px}.editable-lyric-line{position:relative;min-height:50px;padding-top:22px;font-family:Cascadia Mono,Consolas,Courier New,monospace}.editable-lyric-line.is-empty{min-height:18px;padding-top:0}.editable-chord-layer{position:absolute;inset:0 0 auto;height:24px}.editable-chord-token{position:absolute;top:0;display:inline-grid;min-width:28px;height:22px;align-items:center;justify-items:center;padding:0 5px;border:1px solid transparent;border-radius:6px;background:#2563eb14;color:#1f5bb8;font:inherit;font-size:18px;font-weight:900;line-height:1;cursor:grab;-webkit-user-select:none;user-select:none}.editable-chord-token:active{cursor:grabbing}.editable-chord-token:hover,.editable-chord-token.is-active{border-color:#8db5f0;background:#e9f2ff;color:#0f4fb3}.editable-chord-insert-marker{position:absolute;top:0;display:grid;width:22px;height:22px;place-items:center;border:1px solid #8db5f0;border-radius:999px;background:#fff;color:#1f5bb8;font-size:15px;font-weight:900;transform:translate(-50%);box-shadow:0 6px 14px #1f5bb82e}.editable-text-row{margin:0;padding-right:24ch;color:var(--ink);font-family:inherit;font-size:clamp(17px,1.35vw,22px);font-weight:650;line-height:1.32;letter-spacing:0;white-space:pre;cursor:text;border-radius:6px;outline:0}.editable-text-row:hover,.editable-text-row:focus{background:#2563eb0d;color:#071d3a}.chord-inline-editor{position:relative;z-index:4;display:grid;gap:10px;width:min(480px,calc(100vw - 64px));margin-top:10px;padding:12px;border:1px solid #c8d8ec;border-radius:8px;background:#fffffff5;box-shadow:0 18px 45px #0f24402e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chord-inline-editor header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0;border:0}.chord-inline-editor header span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.chord-inline-editor header button,.chord-inline-row button,.chord-inline-suggestions button{border:1px solid #cbd9eb;border-radius:7px;background:#fff;color:var(--secondary);font-weight:900;cursor:pointer}.chord-inline-editor header button{display:grid;width:32px;height:32px;place-items:center}.chord-inline-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.chord-inline-row input{width:100%;min-width:0;border:1px solid #cbd9eb;border-radius:7px;padding:10px 12px;color:var(--secondary);font:inherit;font-weight:850}.chord-inline-row button{padding:0 14px;background:var(--primary);color:#fff}.chord-inline-row button:disabled{background:#d7e0ed;color:#6e7f93;cursor:not-allowed}.chord-inline-delete{display:inline-flex;width:fit-content;align-items:center;gap:6px;border:1px solid #ffd0c7;border-radius:7px;background:#fff5f3;color:#b42318;padding:9px 11px;font-weight:900;cursor:pointer}.chord-inline-delete:hover{border-color:#f5a89b;background:#ffe7e2}.chord-inline-error{margin:0;color:#b42318;font-size:13px;font-weight:800}.chord-inline-hint{margin:0;color:#47617d;font-size:13px;font-weight:800}.chord-inline-suggestions{display:flex;flex-wrap:wrap;gap:6px}.chord-inline-suggestions button{min-height:34px;padding:0 10px;background:#f7faff}.chord-inline-suggestions button:hover{border-color:#7aa8e8;background:#eaf3ff}.chords-panel{position:sticky;top:18px;max-height:calc(100vh - 70px);overflow:auto;padding:8px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.chord-diagrams{display:grid;grid-template-columns:repeat(2,minmax(88px,1fr));justify-items:center;gap:8px}.diagram{display:grid;justify-items:center;width:100%;max-width:132px;padding:8px 4px;border:1px solid #dbe3ee;border-radius:8px;color:var(--ink);background:#fff}button.diagram{font:inherit;text-align:center;cursor:pointer}.diagram.is-configurable{border-color:#b88a2c6b;background:#fffaf0;opacity:1}.diagram.is-configurable:hover,.diagram.is-configurable:focus-visible{border-color:var(--gold);box-shadow:0 0 0 3px #b88a2c29}.diagram strong{color:var(--secondary);font-size:15px;line-height:1.15}.diagram.is-empty{opacity:.7}.chord-svg{width:96px;height:116px}.chord-svg line{stroke:#253247;stroke-width:1.5}.chord-svg .nut{stroke-width:4}.finger-dot,.barre-bar{fill:var(--secondary)}.open-string,.muted-string,.fret-number{fill:var(--muted);font-size:11px;font-weight:900}.capo-bar{fill:#111827;opacity:.92}.capo-text{fill:#fff;font-size:7px;font-weight:900}.reader-notes{display:grid;gap:8px;margin-top:18px;padding:12px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;font-weight:700}.reader-notes p{margin:0}.reader-panel pre,.work-area pre{max-width:100%;margin:0;overflow:auto;white-space:pre-wrap;font-family:Cascadia Mono,Consolas,monospace;line-height:1.5}.usage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.usage-card{display:grid;gap:5px;padding:14px}.usage-card strong{color:var(--secondary);font-size:22px}.error-box{padding:14px;border:1px solid #fecaca;border-radius:8px;color:var(--danger);background:#fef2f2;font-weight:800}.empty-message,.empty-song-list{margin:0;padding:14px;color:var(--muted);font-weight:800}.editor-shell{gap:0;align-content:start;padding:0;overflow:hidden}.editor-heading .heading-actions{flex:1}.editor-songbook-filter{display:flex;align-items:center;gap:8px;color:var(--secondary);font-size:12px;font-weight:900}.editor-songbook-filter select{min-width:190px;height:42px;padding:0 32px 0 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}.editor-title-block{display:grid;gap:8px;justify-items:start}.editor-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:14px;min-width:0;padding:16px}.editor-layout.is-new-song{grid-template-columns:minmax(0,1fr)}.editor-main{display:grid;gap:14px;min-width:0}.form-card{display:grid;gap:14px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.form-card-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--line)}.form-card-heading h3,.form-card-heading span{margin:0}.form-card-heading h3{color:var(--secondary);font-size:19px;line-height:1.25}.form-card-heading span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.version-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.form-field{display:grid;gap:6px;min-width:0}.form-field span,.check-field{color:var(--secondary);font-size:12px;font-weight:900}.form-field input,.form-field select,.form-field textarea,.lyrics-editor{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;outline:0}.form-field input,.form-field select{min-height:40px;padding:0 10px}.form-field textarea,.lyrics-editor{resize:vertical;padding:10px;line-height:1.45}.lyrics-editor{font-family:Cascadia Mono,Consolas,Courier New,monospace}.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.lyrics-editor:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2457a61f}.check-field{display:flex;gap:8px;align-items:center;min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.check-field input{width:16px;height:16px}.capo-tool{display:grid;grid-column:span 2;gap:8px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.capo-tool label{display:grid;gap:6px;min-width:0}.capo-tool span,.capo-tool small{color:var(--secondary);font-size:12px;font-weight:900}.capo-tool small{color:var(--muted);line-height:1.35}.capo-tool select{width:100%;min-height:40px;min-width:0;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;outline:0}.capo-suggestions{display:grid;gap:7px;padding-top:4px}.capo-suggestions>strong{color:var(--secondary);font-size:12px;font-weight:900}.capo-suggestions button{display:grid;gap:3px;width:100%;min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;text-align:left}.capo-suggestions button.is-recommended{border-color:#b88a2ca6;background:#fff8e6}.capo-suggestions button span{color:var(--secondary);font-size:13px}.capo-suggestions button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.primary-action,.secondary-action,.danger-action{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border-radius:8px;font-size:14px;font-weight:900}.primary-action{border:1px solid var(--accent);color:#fff;background:var(--accent)}.secondary-action{border:1px solid var(--line);color:var(--secondary);background:#f8fafc}.danger-action{border:1px solid #fecaca;color:#991b1b;background:#fff5f5}.version-admin-list{display:flex;flex-wrap:wrap;gap:8px}.version-admin-list button{display:grid;gap:2px;min-width:110px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#f8fafc;text-align:left}.version-admin-list button.is-active{color:#fff;border-color:var(--accent);background:var(--accent)}.version-admin-list span{font-weight:900}.version-admin-list small{font-size:11px;font-weight:800}.transpose-tool{display:grid;gap:12px;padding:12px;border:1px solid rgba(36,87,166,.24);border-radius:8px;background:#eef5ff}.transpose-tool-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,260px);gap:12px;align-items:end}.transpose-tool-header div,.transpose-tool-header label{display:grid;gap:5px;min-width:0}.transpose-tool-header span,.transpose-all-tones strong{color:var(--secondary);font-size:12px;font-weight:900;text-transform:uppercase}.transpose-tool-header h4{margin:0;color:var(--ink);font-size:18px;line-height:1.25}.transpose-tool-header select{width:100%;min-height:40px;min-width:0;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;outline:0}.transpose-all-tones{display:grid;gap:8px;min-width:0}.transpose-all-tones>div:first-child{display:grid;gap:3px}.transpose-all-tones small{color:var(--muted);font-size:12px;font-weight:800}.transpose-tone-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;min-width:0}.transpose-tone-grid button{display:grid;gap:2px;min-width:0;min-height:46px;padding:7px 8px;border:1px solid var(--line);border-radius:8px;color:var(--secondary);background:#fff;text-align:center}.transpose-tone-grid button:hover,.transpose-tone-grid button:focus-visible,.transpose-tone-grid button.is-active{border-color:var(--accent);background:var(--accent);color:#fff}.transpose-tone-grid span{font-size:15px;font-weight:900}.transpose-tone-grid small{overflow:hidden;color:inherit;font-size:10px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.preview-card .reader-grid{grid-template-columns:minmax(0,1fr) 230px}.success-box{margin:0;padding:12px 14px;border:1px solid #bbf7d0;border-radius:8px;color:#166534;background:#f0fdf4;font-weight:900}.presentation-shell{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;min-width:0}.presentation-list{display:grid;align-content:start;gap:12px;min-width:0}.presentation-stage{display:grid;gap:14px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff}.presentation-stage header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid var(--line)}.presentation-stage h2,.presentation-stage p{margin:0}.presentation-stage h2{color:var(--secondary);font-size:30px;line-height:1.16}.presentation-stage p{margin-top:4px;color:var(--muted);font-weight:900}.presentation-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.presentation-actions button{min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:8px;color:var(--secondary);background:#f8fafc;font-weight:900}.presentation-lyrics{min-width:0;overflow-x:hidden}.presentation-lyrics .chord-row{--lyrics-line-font-size: var(--presentation-font-size)}.presentation-lyrics .text-row{--lyrics-line-font-size: var(--presentation-font-size);line-height:1.35}.tutorial-shell{align-content:start}.tutorial-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;min-width:0}.tutorial-list{display:grid;align-content:start;max-height:620px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.tutorial-list button{display:grid;gap:4px;padding:11px 12px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left}.tutorial-list button.is-active{border-left:4px solid var(--accent);background:var(--accent-soft)}.tutorial-list span{color:var(--muted);font-size:12px;font-weight:800}.tutorial-reader{display:grid;gap:14px;min-width:0}.tutorial-form-grid{grid-template-columns:minmax(0,1fr) 120px}.tutorial-content{display:grid;gap:10px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff}.tutorial-content>span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.tutorial-content h3{margin:0;color:var(--secondary);font-size:24px}.tutorial-content p{margin:0;color:var(--ink);font-size:16px;line-height:1.55}.resource-file-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.resource-file-row span,.resource-open-file{display:inline-flex;align-items:center;gap:7px}.resource-open-file{width:fit-content;margin-top:16px;text-decoration:none}.warning-box{margin:0;padding:12px 14px;border:1px solid #fde68a;border-radius:8px;color:#92400e;background:#fffbeb;font-weight:900}.setlist-shell{gap:0;align-content:start;padding:0;overflow:hidden}.setlist-heading{min-height:76px;padding:15px 18px;border-bottom:1px solid #c5d3e8;background:var(--accent-soft)}.setlist-heading h2{font-size:22px}.setlist-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;min-width:0;padding:16px}.setlist-layout.is-create-only{grid-template-columns:minmax(0,1fr)}.setlist-manage-empty{align-content:center;justify-items:center;min-height:260px;color:var(--muted);text-align:center}.setlist-manage-empty svg{color:var(--accent)}.setlist-manage-empty h3,.setlist-manage-empty p{margin:0}.setlist-manage-empty h3{color:var(--secondary)}.setlist-search-panel{min-width:0}.setlist-search-panel .form-card{position:sticky;top:16px}.saved-setlists-list{display:grid;gap:8px;max-height:520px;overflow:auto}.saved-setlists-list article{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:6px;align-items:stretch;border:1px solid var(--line);border-radius:8px;background:#fff}.saved-setlists-list article.is-active{border-color:var(--accent);background:var(--accent-soft)}.saved-setlists-list article>button:first-child{display:grid;gap:3px;min-width:0;padding:9px 10px;border:0;color:var(--ink);background:transparent;text-align:left}.saved-setlists-list strong,.saved-setlists-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-setlists-list span{color:var(--muted);font-size:12px;font-weight:800}.icon-danger{display:grid;place-items:center;min-width:36px;border:0;border-left:1px solid var(--line);border-radius:0 8px 8px 0;color:#991b1b;background:#fff5f5}.setlist-main{display:grid;gap:14px;min-width:0}.setlist-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.setlist-add-grid{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:14px;min-width:0;align-items:start}.song-picker{display:grid;gap:12px;min-width:0}.picker-results{display:grid;gap:8px;max-height:420px;overflow:auto;padding-right:4px}.picker-results article{display:grid;gap:8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.picker-results article.is-active{border-color:var(--accent);background:var(--accent-soft)}.picker-results article>button{display:grid;gap:3px;min-width:0;padding:0;border:0;color:var(--ink);background:transparent;text-align:left}.picker-results strong,.picker-results span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-results span{color:var(--muted);font-size:12px;font-weight:800}.version-strip.compact button{min-width:68px;padding:6px 8px}.setlist-preview{display:grid;gap:10px;min-width:0;max-height:520px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.setlist-preview header{display:grid;gap:3px;padding-bottom:8px;border-bottom:1px solid var(--line)}.setlist-preview header strong{color:var(--secondary);font-size:17px}.setlist-preview header span{color:var(--muted);font-size:12px;font-weight:900}.setlist-preview .lyric-line{background:#fff}.setlist-preview-add{width:100%;justify-content:center;margin-top:4px}.order-list{display:grid;gap:8px}.order-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.order-position{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:var(--accent);font-weight:900}.order-song{display:grid;gap:5px;min-width:0}.order-song strong,.order-song span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-song strong{color:var(--secondary)}.order-song span{color:var(--muted);font-size:12px;font-weight:800}.order-song input{width:100%;min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;outline:0}.order-actions{display:flex;gap:6px;align-items:center}.order-actions button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--secondary);background:#f8fafc}.order-actions .icon-danger{border:1px solid #fecaca;border-radius:8px}.setlist-order-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.setlist-order-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:7px 11px;border:1px solid var(--line);border-radius:8px;color:var(--secondary);background:#fff;font-weight:800}.setlist-order-actions .projection-action{color:#fff;border-color:var(--accent);background:var(--accent)}.setlist-order-actions .rehearsal-action{color:#fff;border-color:#15803d;background:#15803d}.setlist-export-group{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-left:10px;border-left:1px solid var(--line)}.setlist-export-group>span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.setlist-final-save{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #bad4f8;border-radius:8px;background:#f0f7ff}.setlist-final-save>div{display:grid;gap:3px;min-width:0}.setlist-final-save strong{color:var(--secondary);font-size:16px}.setlist-final-save span{color:var(--muted);font-size:12px;font-weight:800}.setlist-final-save .primary-action{flex:0 0 auto;min-width:190px}.setlist-projection{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100vh;height:100dvh;color:#f8fafc;background:#111827}.setlist-projection-toolbar,.setlist-projection-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;background:#0b1220}.setlist-projection-toolbar{border-bottom:1px solid #334155}.setlist-projection-toolbar>div:first-child{display:grid;gap:2px}.setlist-projection-toolbar span{color:#cbd5e1;font-size:12px;font-weight:700}.setlist-projection-toolbar>div:last-child,.setlist-projection-navigation{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.setlist-projection-toolbar>div:last-child{justify-content:flex-end}.projection-speed{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding-left:2px;color:#cbd5e1;font-size:10px;font-weight:800;text-transform:uppercase}.projection-speed select{height:40px;min-height:40px;padding:6px 28px 6px 9px;border:1px solid #475569;border-radius:8px;color:#fff;background:#1f2937}.setlist-projection .projection-play{min-width:92px;border-color:#2563eb;background:#2563eb}.setlist-projection button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 12px;border:1px solid #475569;border-radius:8px;color:#fff;background:#1f2937;font-weight:800}.setlist-projection button:hover{border-color:#60a5fa;background:#1e3a5f}.setlist-title-slide,.setlist-song-slide{min-width:0;min-height:0;overflow:auto}.setlist-title-slide{display:grid;place-items:center;padding:32px;text-align:center}.setlist-title-slide>div{display:grid;justify-items:center;gap:12px;max-width:900px}.setlist-title-slide span{color:#93c5fd;font-size:14px;font-weight:900;text-transform:uppercase}.setlist-title-slide strong{font-size:48px;line-height:1.1}.setlist-title-slide p,.setlist-title-slide small,.setlist-title-slide blockquote{margin:0;color:#cbd5e1;font-size:19px}.setlist-title-slide blockquote{max-width:700px;padding:12px 16px;border-left:3px solid #60a5fa;text-align:left}.setlist-song-slide{padding:20px clamp(18px,5vw,70px) 36px}.setlist-song-slide>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid #334155}.setlist-song-slide h2,.setlist-song-slide p{margin:0}.setlist-song-slide h2{font-size:28px}.setlist-song-slide p,.setlist-song-slide>header>span{color:#cbd5e1;font-size:14px}.setlist-projection-lyrics{max-width:1100px;margin:18px auto 0;background:#111827}.setlist-projection-content{min-width:0}.setlist-projection-content.has-diagrams{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:18px;align-items:start}.setlist-projection-content.has-diagrams .setlist-projection-lyrics{width:100%;margin-right:0;margin-left:0}.setlist-rehearsal-diagrams{position:sticky;top:0;max-height:calc(100vh - 190px);overflow:auto;padding:10px;border:1px solid #334155;border-radius:8px;background:#0b1220}.setlist-rehearsal-diagrams .chord-diagrams{grid-template-columns:repeat(2,minmax(88px,1fr))}.setlist-rehearsal-diagrams p{color:#cbd5e1;font-size:13px}.setlist-projection-lyrics .lyrics{background:#111827}.setlist-projection-lyrics .lyric-line{color:#f8fafc;border-radius:0;background:transparent}.setlist-projection-lyrics .lyric-line.is-empty{background:transparent}.setlist-projection-lyrics .lyric-section-label{color:#93c5fd;background:transparent}.setlist-projection-lyrics .chord-row{color:#93c5fd;--lyrics-line-font-size: var(--projection-font-size);white-space:pre-wrap;overflow-wrap:anywhere}.setlist-projection-lyrics .text-row{color:#f8fafc;--lyrics-line-font-size: var(--projection-font-size);white-space:pre-wrap;overflow-wrap:anywhere}.setlist-projection-lyrics pre{color:inherit;background:transparent;overflow:visible;white-space:pre-wrap;overflow-wrap:anywhere}.setlist-projection-navigation{border-top:1px solid #334155}.setlist-projection-navigation button:last-child{margin-left:auto;border-color:#2563eb;background:#2563eb}@media (max-width: 760px){.setlist-projection{grid-template-rows:auto minmax(0,1fr) auto}.setlist-projection-toolbar{align-items:flex-start;padding:10px 12px}.setlist-projection-toolbar,.setlist-projection-toolbar>div:last-child{gap:7px}.setlist-projection-toolbar>div:last-child{justify-content:flex-start}.projection-speed{min-height:36px}.projection-speed select,.setlist-projection button{min-height:36px;padding:6px 9px}.setlist-projection .projection-play{min-width:82px}.setlist-song-slide{padding:14px 16px 76px}.setlist-song-slide>header{gap:10px;padding-bottom:10px}.setlist-song-slide h2{font-size:clamp(24px,8vw,34px);line-height:1.1}.setlist-projection-lyrics{max-width:none;margin-top:14px}.setlist-projection-lyrics .lyric-line{min-height:0;padding-bottom:10px}.setlist-projection-lyrics .chord-row,.setlist-projection-lyrics .text-row{font-size:clamp(12px,var(--projection-font-size),20px);line-height:1.34}.setlist-projection-navigation{position:fixed;right:0;bottom:0;left:0;z-index:1002;display:flex;gap:8px;padding:8px 12px max(8px,env(safe-area-inset-bottom));background:#0b1220}.setlist-projection-navigation button{flex:1 1 0;min-width:0;min-height:40px;padding:6px 8px}.setlist-projection-navigation button:last-child{margin-left:0}}.chords-shell{gap:16px;align-content:start;padding:0 0 16px;overflow:hidden}.chords-heading{min-height:76px;padding:15px 18px;border-bottom:1px solid #c5d3e8;background:var(--accent-soft)}.chords-heading h2{font-size:22px}.chords-heading .heading-actions{flex:1}.chord-search-field{width:min(360px,100%)}.chord-capo-filter{display:flex;align-items:center;gap:8px;color:var(--secondary);font-size:12px;font-weight:900}.chord-capo-filter select{min-width:120px;height:42px;padding:0 32px 0 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}.chords-shell>.chord-finder,.chords-shell>.chord-family-creator,.chords-shell>.family-tabs,.chords-shell>.chords-admin-layout,.chords-shell>.chord-page-message{margin-right:16px;margin-left:16px}.chord-finder{display:grid;gap:8px}.chord-finder>label{display:grid;gap:6px;max-width:520px;color:var(--secondary);font-size:12px;font-weight:900}.chord-finder>label>div{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fff}.chord-finder input{width:100%;min-width:0;border:0;color:var(--ink);background:transparent;outline:0}.chord-search-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.chord-search-results button{display:grid;gap:3px;min-width:0;padding:9px 11px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;text-align:left}.chord-search-results button:hover,.chord-search-results button.is-active{border-color:var(--accent);background:var(--accent-soft)}.chord-search-results button strong{color:var(--secondary);font-size:15px}.chord-search-results button span,.chord-search-results button small{color:var(--muted);font-size:11px;font-weight:800}.chord-search-results .create-chord-result{align-content:center;grid-template-columns:auto 1fr;color:#fff;border-color:#15803d;background:#15803d}.chord-search-results .create-chord-result:hover{color:#fff;border-color:#166534;background:#166534}.family-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.family-tabs button{display:grid;gap:3px;min-height:58px;padding:8px;border:1px solid var(--line);border-radius:8px;color:var(--secondary);background:#fff}.family-tabs button.is-active{color:#fff;border-color:var(--accent);background:var(--accent)}.family-tabs strong{font-size:18px;line-height:1}.family-tabs span{color:inherit;font-size:12px;font-weight:900;opacity:.8}.chords-admin-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;align-items:start;min-width:0}.chords-admin-layout.is-create-mode{grid-template-columns:minmax(0,1fr)}.family-create-chord-action{display:flex;justify-content:flex-end;padding-top:14px;border-top:1px solid var(--line)}.chord-editor-empty{justify-items:center;color:var(--muted);text-align:center}.chord-editor-empty svg{color:var(--accent)}.chord-editor-empty h3,.chord-editor-empty p{margin:0}.chord-editor-empty h3{color:var(--secondary)}.chord-page-message{margin-top:0}.chord-catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.chord-card{display:grid;gap:6px;justify-items:center;min-width:0;padding:10px 8px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;text-align:center}.chord-card:hover,.chord-card.is-active{border-color:var(--accent);background:var(--accent-soft)}.chord-card .diagram{border:0;padding:0;background:transparent}.chord-card-title{color:var(--secondary);font-size:18px;font-weight:900}.chord-card-variants{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;width:100%}.chord-card-variants.has-multiple{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.chord-variant-preview{display:grid;gap:5px;justify-items:center;min-width:0;padding:7px 5px;border:1px solid transparent;border-radius:8px;color:var(--ink);background:transparent}.chord-variant-preview:hover,.chord-variant-preview.is-active{border-color:#bad4f8;background:#f0f7ff}.chord-variant-preview .diagram{width:100%;max-width:112px}.chord-variant-preview .chord-svg{width:100%;height:auto}.chord-variant-preview .diagram>span{display:none}.chord-variant-preview>span{max-width:100%;overflow:hidden;color:var(--secondary);font-size:12px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.chord-variant-preview .validation-status{padding:1px 7px;font-size:10px}.chord-card>span,.chord-card small{color:var(--muted);font-size:11px;font-weight:900}.validation-status{display:inline-flex;align-items:center;justify-content:center;width:fit-content;justify-self:center;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:900}.validation-status.is-valid{color:#0f766e;background:#dff7ef}.validation-status.is-unvalidated{color:#9a5b10;background:#fff4d6}.chord-editor-card{position:sticky;top:16px}.chord-form-grid{grid-template-columns:1.3fr 1.3fr .8fr .8fr}.chord-variants-panel{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.chord-variants-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.chord-variants-heading>div{display:grid;gap:2px}.chord-variants-heading strong{color:var(--secondary);font-size:14px}.chord-variants-heading span{color:var(--muted);font-size:12px;font-weight:800}.chord-variant-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.chord-variant-list button{display:grid;gap:3px;min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;text-align:left}.chord-variant-list button.is-active{border-color:var(--accent);background:var(--accent-soft)}.chord-variant-list span,.chord-variant-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chord-variant-list span{font-weight:900}.chord-variant-list small{color:var(--muted);font-size:11px;font-weight:800}.chord-validation-row{display:flex;flex-wrap:wrap;gap:10px}.frets-editor{display:grid;gap:9px}.frets-editor>span{color:var(--secondary);font-size:12px;font-weight:900}.frets-editor>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.frets-editor label{display:grid;gap:5px}.frets-editor small{color:var(--muted);font-size:11px;font-weight:900;text-align:center}.frets-editor input{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;text-align:center;outline:0}.frets-editor p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.barre-editor{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.barre-editor>.check-field{justify-self:start;min-width:160px;background:#fff}.barre-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.barre-editor>p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.chord-editor-preview{display:grid;justify-items:center;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.chord-editor-preview .diagram{max-width:180px}.chord-editor-preview .chord-svg{width:130px;height:156px}.import-shell{gap:0;padding:0 0 18px;overflow:hidden}.import-layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);gap:16px;padding:16px 18px 18px}.import-panel{align-self:start}.import-controls{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.json-editor{min-height:420px;font-family:Consolas,Courier New,monospace;font-size:12px;line-height:1.45;resize:vertical}.import-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.import-summary article{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.import-summary strong{color:var(--secondary);font-size:22px}.import-summary span{color:var(--muted);font-size:11px;font-weight:900}.import-list{display:grid;max-height:250px;overflow:auto;border:1px solid var(--line);border-radius:8px}.import-list button{display:grid;gap:3px;padding:10px 12px;border:0;border-bottom:1px solid var(--line);color:var(--ink);background:#fff;text-align:left}.import-list button:last-child{border-bottom:0}.import-list button:hover,.import-list button.is-active{background:var(--accent-soft)}.import-list strong,.import-list span,.import-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-list small{color:var(--accent);font-size:11px;font-weight:900;text-transform:uppercase}.import-preview{display:grid;gap:12px}.import-preview>header{display:flex;justify-content:space-between;gap:12px;padding-top:6px}.import-preview>header span{color:var(--accent);font-size:11px;font-weight:900;text-transform:uppercase}.import-preview>header h3,.import-preview>header small{margin:0}.import-preview>header small{max-width:280px;color:var(--muted);font-size:12px;font-weight:800;text-align:right}.import-preview .reader-grid{min-height:360px}@media (max-width: 1100px){.import-layout{grid-template-columns:1fr}}.chord-suggestion-shell{gap:0;padding:0 0 18px;overflow:hidden}.section-title-band{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:92px;padding:16px 20px;border-bottom:1px solid #c5d3e8;background:var(--accent-soft)}.section-title-band span,.suggestion-editor-header span{color:var(--accent);font-size:11px;font-weight:900;text-transform:uppercase}.section-title-band h2,.section-title-band p,.suggestion-editor-header h3{margin:0}.section-title-band h2{margin-top:3px;color:var(--secondary);font-size:22px}.section-title-band p{margin-top:4px;color:var(--muted);font-size:13px}.draft-status{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:8px 10px;border:1px solid #a8b9d3;border-radius:8px;color:var(--secondary);background:#ffffffb8;font-size:12px;font-weight:900}.draft-status span{width:8px;height:8px;border-radius:50%;background:#d97706}.chord-link-form{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(220px,1fr) auto;gap:12px;align-items:end;margin:16px 18px 10px}.chord-link-form label,.suggestion-meta-grid label,.suggestion-wide-field,.suggested-diagram-item label{display:grid;gap:6px;min-width:0;color:var(--secondary);font-size:12px;font-weight:900}.chord-link-form input,.suggestion-meta-grid input,.suggestion-wide-field textarea,.progression-list input,.suggested-diagram-item input{width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;outline:0}.chord-link-form input:focus,.suggestion-meta-grid input:focus,.suggestion-wide-field textarea:focus,.progression-list input:focus,.suggested-diagram-item input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1f5da21f}.input-with-icon{display:flex;align-items:center;min-width:0;padding-left:11px;border:1px solid var(--line);border-radius:8px;color:var(--accent);background:#fff}.input-with-icon input{border:0}.chord-link-form .primary-action{min-height:42px;white-space:nowrap}.assistant-config-note,.assistant-model-note,.chord-suggestion-shell>.success-box{margin:0 18px 12px}.assistant-config-note{padding:10px 12px;border:1px solid #f0c36d;border-radius:8px;color:#7c4a03;background:#fff8e8;font-size:12px;line-height:1.5}.assistant-model-note{color:var(--muted);font-size:12px}.chord-suggestion-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px;min-width:0;margin:0 18px;padding-top:16px;border-top:1px solid var(--line)}.suggestion-drafts{display:grid;align-content:start;gap:8px;max-height:calc(100vh - 310px);overflow:auto}.suggestion-drafts h3,.suggestion-section-block h3,.suggestion-sources h3{margin:0;color:var(--secondary);font-size:15px}.suggestion-drafts button{display:grid;gap:4px;min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;text-align:left}.suggestion-drafts button:hover,.suggestion-drafts button.is-selected{border-color:var(--accent);background:var(--accent-soft)}.suggestion-drafts button strong,.suggestion-drafts button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-drafts button span{color:var(--muted);font-size:11px}.suggestion-result{min-width:0}.suggestion-editor-header,.subsection-heading,.suggestion-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.suggestion-actions{justify-content:flex-end}.suggestion-actions button{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 11px;border:1px solid var(--accent);border-radius:8px;color:#fff;background:var(--accent);font-weight:900}.suggestion-actions .danger-ghost{color:#991b1b;border-color:#fecaca;background:#fff}.suggestion-meta-grid{display:grid;grid-template-columns:1.5fr 1.5fr repeat(4,minmax(80px,.6fr));gap:10px;margin-top:14px}.suggestion-wide-field{margin-top:12px}.suggestion-wide-field textarea{resize:vertical;line-height:1.45}.suggestion-section-block,.suggestion-sources{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.subsection-heading span{color:var(--muted);font-size:11px;font-weight:800}.progression-list{display:grid;gap:8px}.progression-list article{display:grid;grid-template-columns:130px minmax(180px,1fr) minmax(160px,.8fr);gap:8px}.suggested-diagram-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.suggested-diagram-item{display:grid;justify-items:center;gap:8px;min-width:0;padding:9px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.suggested-diagram-item .diagram{border:0;background:transparent}.suggested-diagram-item .chord-svg{width:118px;height:140px}.suggested-diagram-item label{width:100%}.suggested-diagram-item input{min-height:36px;padding:7px 8px;text-align:center}.suggestion-sources a{width:fit-content;max-width:100%;color:var(--accent);font-size:12px;font-weight:800;overflow-wrap:anywhere}.suggestion-empty{display:grid;justify-items:center;gap:7px;min-height:330px;align-content:center;color:var(--muted);text-align:center}.suggestion-empty svg{color:var(--accent)}.suggestion-empty h3,.suggestion-empty p{margin:0}.suggestion-empty h3{color:var(--secondary)}@media (max-width: 1180px){.reader-grid{grid-template-columns:minmax(0,1fr) 210px}.version-form-grid,.setlist-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chord-diagrams,.chords-admin-layout{grid-template-columns:1fr}.chord-editor-card{position:static}.suggestion-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.transpose-tool-header{grid-template-columns:1fr}}@media (max-width: 980px){.app-shell,.song-layout,.reader-grid,.editor-layout,.preview-card .reader-grid,.setlist-layout,.setlist-add-grid,.presentation-shell,.tutorial-layout,.chord-suggestion-layout{grid-template-columns:1fr}.suggestion-drafts{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));max-height:210px}.suggestion-drafts h3,.suggestion-drafts .empty-message{grid-column:1 / -1}.setlist-search-panel .form-card,.sidebar{position:static}.stats-grid,.usage-grid,.family-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.chords-panel{position:static;max-height:none}.chord-diagrams{grid-template-columns:repeat(3,minmax(88px,1fr))}.setlist-projection-content.has-diagrams{grid-template-columns:1fr}.setlist-rehearsal-diagrams{position:static;max-height:none}}@media (max-width: 680px){.content,.sidebar{padding:14px}.stats-grid,.usage-grid,.chord-diagrams,.family-tabs,.chord-form-grid{grid-template-columns:1fr}.topbar,.panel-heading,.reader-titlebar,.presentation-stage header,.form-card-heading,.heading-actions{align-items:stretch;flex-direction:column}.form-grid,.version-form-grid,.setlist-form-grid,.tutorial-form-grid{grid-template-columns:1fr}.transpose-tone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capo-tool{grid-column:span 1}.order-item{grid-template-columns:34px minmax(0,1fr)}.order-actions{grid-column:1 / -1;justify-content:flex-end}.setlist-order-actions,.setlist-export-group{align-items:stretch;flex-direction:column}.setlist-export-group{width:100%;padding-top:10px;padding-left:0;border-top:1px solid var(--line);border-left:0}.setlist-projection-toolbar{align-items:stretch;flex-direction:column}.setlist-projection-toolbar>div:last-child{flex-wrap:wrap;justify-content:flex-start}.setlist-title-slide strong{font-size:34px}.setlist-song-slide>header{flex-direction:column}.song-layout{min-height:0}.section-title-band,.suggestion-editor-header,.subsection-heading{align-items:stretch;flex-direction:column}.chord-link-form,.suggestion-meta-grid,.progression-list article{grid-template-columns:1fr}.draft-status{align-self:flex-start}.suggestion-actions{justify-content:flex-start;flex-wrap:wrap}.v2-screen{padding:14px 10px 96px}.v2-hero,.v2-titlebar,.v2-detail-header,.v2-editor-hero,.v2-edit-card header{align-items:stretch;display:flex;flex-direction:column}.v2-filters{grid-template-columns:1fr}.v2-reader-card,.v2-lyrics-card{padding:14px}.v2-titlebar h2{font-size:34px}.v2-reader-actions,.v2-hero-actions,.v2-editor-main-actions,.v2-lyrics-toolbar{justify-content:flex-start}.v2-diagram-scroll .diagram{flex-basis:104px}.v2-song-list article{grid-template-columns:1fr}.v2-tone-panel{width:100%;margin-top:8px}.v2-tone-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.v2-setlist-adder{grid-template-columns:1fr}.v2-setlist-summary-grid{grid-template-columns:1fr;width:100%}.v2-setlist-bottom-actions,.v2-export-menu{align-items:stretch;flex-direction:column}.v2-export-menu select{width:100%}.v2-setlist-song-list article{grid-template-columns:38px minmax(0,1fr)}.v2-setlist-song-list article .danger-action{grid-column:2;justify-self:start}.v2-chords-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-chords-tools{grid-template-columns:1fr}.v2-chord-library{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}
