:root{--bg:#0b0f17;--bg-elev:#111827;--surface:#161d2b;--surface-2:#1e293b;--surface-3:#283548;--border:rgba(255,255,255,0.07);--border-strong:rgba(255,255,255,0.12);--text:#f8fafc;--text-2:#cbd5e1;--muted:#94a3b8;--faint:#64748b;--brand-blue:#2f8bff;--brand-violet:#8b5cf6;--brand-magenta:#e04fd0;--brand-orange:#ff8a1f;--grad-brand:linear-gradient(110deg,#2f8bff,#8b5cf6 38%,#e04fd0 62%,#ff8a1f);--grad-cta:linear-gradient(135deg,#fbbf24,#f59e0b 60%,#f59e0b);--accent:#f59e0b;--accent-hover:#d97706;--accent-light:#fbbf24;--accent-ink:#0b0f17;--accent-soft:rgba(245,158,11,0.12);--accent-border:rgba(245,158,11,0.45);--cyan:#22d3ee;--cyan-strong:#06b6d4;--cyan-soft:rgba(6,182,212,0.15);--violet:#a78bfa;--violet-strong:#8b5cf6;--violet-soft:rgba(139,92,246,0.16);--yes:#22c55e;--yes-ink:#03170a;--yes-soft:rgba(34,197,94,0.12);--no:#334155;--info:#3b82f6;--choice:#8b5cf6;--choice-soft:rgba(139,92,246,0.16);--danger:#f43f5e;--danger-soft:rgba(244,63,94,0.12);--warn:#fbbf24;--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.35);--shadow:0 8px 24px -8px rgba(0,0,0,0.55);--shadow-lg:0 8px 32px rgba(0,0,0,0.6);--glow-accent:0 0 16px rgba(245,158,11,0.25);--glow-brand:0 0 16px rgba(245,158,11,0.18);--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--t-fast:140ms;--t:220ms;--font-body:var(--font-inter),system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-display:var(--font-body);--font-mono:var(--font-jetbrains),ui-monospace,"SF Mono",Menlo,Consolas,monospace;--sidebar-w:264px;--topbar-h:60px;--tabbar-h:64px;--z-sticky:10;--z-topbar:30;--z-menu:40;--z-modal:50;--z-note:55;--z-stage:58;--z-toast:60;--z-score:70;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}body,html{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(50vmax 30vmax at 85% -10%,rgba(245,158,11,.06),transparent 60%),radial-gradient(50vmax 40vmax at 10% 110%,rgba(6,182,212,.04),transparent 60%)}::selection{background:rgba(245,158,11,.35);color:#fff}a{color:var(--accent);text-decoration:none;transition:color var(--t-fast) ease}a:hover{color:var(--accent-light)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}h1,h2,h3,h4{margin:0;line-height:1.15;font-family:var(--font-display)}h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em}h1{font-size:clamp(1.6rem,1.25rem + 1.2vw,2.2rem)}h2{font-size:1.25rem}h3{font-size:1.08rem;letter-spacing:-.01em}h4{font-size:.95rem}.icon{flex-shrink:0;display:inline-block;vertical-align:middle}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:10px 12px;width:100%;min-width:0;min-height:42px;transition:border-color var(--t-fast) ease,box-shadow var(--t-fast) ease,background var(--t-fast) ease}input::placeholder,textarea::placeholder{color:var(--faint)}input:hover:not(:disabled):not([readonly]),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:rgba(255,255,255,.24)}select{width:auto;cursor:pointer}textarea{resize:vertical;min-height:80px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(245,158,11,.22)}input[type=checkbox]{min-height:0;width:18px;height:18px;padding:0}.shell,.shell-main{min-height:100dvh}.shell-main{min-width:0;display:flex;flex-direction:column}.container{width:100%;max-width:1480px;margin:0 auto;padding:28px 32px 80px;flex:1 1}.sidebar{display:none}@media (min-width:1024px){.shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:16px;padding:18px 14px 14px;background:var(--bg-elev);border-right:1px solid var(--border);overflow-y:auto}.brand-compact,.tabbar{display:none!important}}.brand{display:inline-flex;align-items:center;gap:12px;padding:2px 6px;color:var(--text);border-radius:10px;transition:opacity var(--t-fast) ease}.brand:hover{opacity:.88;color:var(--text)}.brand-mark{height:30px;width:auto}.brand-text{display:flex;flex-direction:column;line-height:1.15}.brand-text strong{font-size:1.15rem;letter-spacing:-.02em}.brand-text span{font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.sync-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text);line-height:1.25}.sync-card strong{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.sync-card .small{display:block;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-live .dot,.live-pill .dot,.mchip.is-live .dot,.stage-live .dot,.sync .dot,.sync-card .dot{width:8px;height:8px;border-radius:50%;background:var(--faint);flex-shrink:0}.sync-card.is-live{border-color:rgba(244,63,94,.35)}.sync-card.is-live:hover{color:var(--text);background:var(--surface-2)}.sync-card.is-live .dot{background:var(--accent);box-shadow:0 0 10px var(--accent);animation:pulse 1.6s ease-in-out infinite}.sync-count{font-size:.75rem;font-weight:700;color:var(--cyan);white-space:nowrap}.sidenav{display:flex;flex-direction:column;gap:2px}.nav-link{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px;border-radius:var(--radius);border:1px solid transparent;color:var(--text-2);font-weight:600;font-size:.95rem;transition:background var(--t-fast) ease,color var(--t-fast) ease}.nav-link .icon{color:var(--muted)}.nav-link:hover{color:var(--text);background:rgba(255,255,255,.04)}.nav-link[aria-current=page]{color:var(--text);background:var(--surface-2);border-color:var(--border-strong)}.nav-link[aria-current=page] .icon{color:var(--accent)}.nav-link .badge{margin-left:auto}.nav-section{margin:14px 12px 4px;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.sidebar-user{margin-top:auto;display:flex;align-items:center;gap:10px;padding:10px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);line-height:1.25;min-width:0}.sidebar-user strong{display:block;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user .small{display:block;font-weight:600}.accent{color:var(--accent)!important}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-topbar);gap:16px;min-height:var(--topbar-h);padding:max(10px,env(safe-area-inset-top)) max(32px,env(safe-area-inset-right)) 10px max(32px,env(safe-area-inset-left));background:rgba(11,15,23,.82);backdrop-filter:saturate(160%) blur(16px);-webkit-backdrop-filter:saturate(160%) blur(16px);border-bottom:1px solid var(--border)}.crumbs,.topbar{display:flex;align-items:center}.crumbs{gap:8px;min-width:0;font-weight:600;white-space:nowrap}.crumbs-root{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.crumbs-sep{color:var(--faint)}.crumbs-page{overflow:hidden;text-overflow:ellipsis}.live-pill{display:inline-flex;align-items:center;gap:8px;min-height:30px;max-width:320px;padding:4px 12px;border-radius:var(--radius-pill);border:1px solid rgba(244,63,94,.45);background:rgba(244,63,94,.12);color:#fda4af;font-size:.75rem;font-weight:800;letter-spacing:.06em;white-space:nowrap}.live-pill:hover{color:#fff;background:rgba(244,63,94,.2)}.live-pill .dot{background:var(--danger);box-shadow:0 0 10px var(--danger);animation:pulse 1.6s ease-in-out infinite}.live-pill-title{font-weight:600;letter-spacing:0;color:var(--text);overflow:hidden;text-overflow:ellipsis}.live-pill-count{padding:0 7px;border-radius:var(--radius-pill);background:var(--cyan-soft);color:var(--cyan)}.live-pill.is-idle{border-color:var(--border-strong);background:transparent;color:var(--muted)}.userbox{margin-left:auto;display:flex;align-items:center;gap:12px;min-width:0}.avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.tabbar{position:-webkit-sticky;position:sticky;bottom:0;z-index:var(--z-topbar);display:flex;justify-content:space-around;gap:4px;padding:6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:rgba(11,15,23,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border)}.tab{flex:1 1;max-width:120px;display:flex;flex-direction:column;align-items:center;gap:3px;min-height:52px;padding:6px 4px;border-radius:var(--radius);color:var(--muted);font-size:.72rem;font-weight:700}.tab:hover{color:var(--text)}.tab[aria-current=page]{color:var(--accent)}.tab-icon{position:relative;display:grid;place-items:center}.tab-badge{position:absolute;top:-4px;right:-10px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:.66rem;line-height:18px;text-align:center}@media (max-width:1023px){.topbar{gap:10px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.container{padding:20px 16px 32px}.crumbs-root,.crumbs-sep{display:none}.crumbs-page{font-size:1.05rem}.hide-md{display:none!important}}@media (max-width:640px){.live-pill-title{display:none}.brand-mark{height:26px}}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;flex-wrap:wrap}.page-head p{margin:6px 0 0}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--accent-soft);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-light)}.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}.grad-text{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}.lead{font-size:1.05rem;color:var(--text-2);max-width:60ch}.section{margin-top:40px}.section-title{display:flex;align-items:center;gap:10px}.section-title .count{font-family:var(--font-body);font-size:.78rem;font-weight:600;letter-spacing:0;padding:2px 9px;border-radius:var(--radius-pill);background:var(--surface-3);color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:16px;gap:16px}.row{display:flex;align-items:center;gap:8px}.row.wrap{flex-wrap:wrap}.row.nowrap{flex-wrap:nowrap}.between{justify-content:space-between}.grow{flex:1 1;min-width:0}.stack{gap:16px}.stack,.stack-sm{display:flex;flex-direction:column}.stack-sm{gap:10px}.narrow{max-width:560px;margin:48px auto}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:#ff7a8f;font-size:.9rem;padding:10px 14px;border-radius:10px;background:var(--danger-soft);border:1px solid rgba(244,63,94,.3)}.prewrap{white-space:pre-wrap;margin:0}.break{word-break:break-all}.card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;color:var(--text);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.04)}a.card{transition:transform var(--t) var(--ease-out),box-shadow var(--t) var(--ease-out),border-color var(--t) ease}a.card:before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:var(--accent-border);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--t) ease;pointer-events:none}a.card:hover{transform:translateY(-2px);box-shadow:var(--shadow),var(--glow-brand);border-color:transparent}a.card:hover:before{opacity:1}a.card:active{transform:translateY(-1px) scale(.995)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:600;line-height:1.4;padding:2px 9px;border-radius:var(--radius-pill);background:rgba(255,255,255,.05);border:1px solid var(--border-strong);color:var(--text-2);white-space:nowrap}.badge-accent{color:var(--accent);background:var(--accent-soft);border-color:rgba(245,158,11,.4)}.badge-warn{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:800;box-shadow:0 0 0 3px rgba(245,158,11,.18)}.badge-yes{background:var(--yes);color:var(--yes-ink);border-color:var(--yes)}.badge-no,.badge-yes{font-weight:700}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.list li{padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;gap:10px}.btn{font:inherit;font-weight:600;font-size:.92rem;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 16px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:rgba(30,41,59,.7);color:var(--text);cursor:pointer;white-space:nowrap;touch-action:manipulation;transition:background var(--t-fast) ease,border-color var(--t-fast) ease,transform var(--t-fast) ease,box-shadow var(--t) ease,color var(--t-fast) ease,filter var(--t-fast) ease}.btn:hover:not(:disabled){background:var(--surface-3);border-color:rgba(255,255,255,.24);color:var(--text)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.42;cursor:not-allowed}.btn-primary{background:var(--accent);font-weight:700;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}.btn-primary,.btn-primary:hover:not(:disabled){border-color:transparent;color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-light);filter:brightness(1.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),var(--glow-accent)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled){background:rgba(255,255,255,.06);border-color:transparent}.btn-sm{min-height:36px;padding:6px 12px;font-size:.86rem}.btn-xs{min-height:30px;min-width:30px;padding:4px 6px;font-size:.8rem;border-radius:8px}.btn-lg{min-height:52px;padding:14px 26px;font-size:1.02rem;border-radius:14px}.btn-yes{background:var(--yes);border-color:var(--yes);color:var(--yes-ink);font-weight:700}.btn-no{background:var(--no);border-color:var(--no);font-weight:700}.danger{color:#ff6b81}.btn.danger:hover:not(:disabled){color:#ff8a9b;background:var(--danger-soft)}.btn.is-active{background:var(--accent);border-color:transparent;color:var(--accent-ink);box-shadow:var(--glow-accent)}.btn.is-active:hover:not(:disabled){background:var(--accent-light);color:var(--accent-ink)}.link-btn{font:inherit;background:none;border:none;padding:0;color:var(--text);cursor:pointer;text-align:left;transition:color var(--t-fast) ease}.link-btn:hover:not(:disabled){color:var(--accent)}.back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;color:var(--muted);font-size:.86rem;font-weight:500}.back-link:hover{color:var(--text)}.back-link .icon{transition:transform var(--t) var(--ease-out)}.back-link:hover .icon{transform:translateX(-3px)}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:.88rem;color:var(--text-2);white-space:nowrap}.switch input{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;width:40px;height:22px;min-height:0;padding:0;border-radius:var(--radius-pill);background:var(--surface-3);border:1px solid var(--border-strong);cursor:pointer;flex-shrink:0;transition:background var(--t) ease,border-color var(--t) ease}.switch input:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#d5d9e6;box-shadow:0 1px 3px rgba(0,0,0,.4);transition:transform var(--t) var(--ease-spring),background var(--t) ease}.switch input:checked{background:var(--accent);border-color:transparent}.switch input:checked:after{transform:translateX(18px);background:#fff}.switch input:focus{box-shadow:0 0 0 3px rgba(245,158,11,.25)}.center-screen,.login{min-height:70vh;display:grid;place-items:center;padding:16px}.login{position:relative;min-height:100dvh;overflow:hidden;isolation:isolate}.login:after,.login:before{content:"";position:absolute;z-index:-1;width:70vmax;height:70vmax;border-radius:50%;filter:blur(80px);opacity:.35;animation:drift 18s var(--ease-out) infinite alternate}.login:before{top:-35vmax;left:-25vmax;background:radial-gradient(circle,#2f8bff,transparent 60%)}.login:after{bottom:-40vmax;right:-25vmax;background:radial-gradient(circle,#ff8a1f,transparent 60%);animation-delay:-9s}@keyframes drift{to{transform:translate3d(6vmax,4vmax,0) scale(1.1)}}.login-card{position:relative;text-align:center;width:min(460px,100%);display:flex;flex-direction:column;gap:20px;align-items:center;padding:40px 32px 32px;border-radius:28px;background:rgba(17,19,27,.6);border:1px solid var(--border-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:var(--shadow-lg),inset 0 1px 0 rgba(255,255,255,.06);animation:rise .6s var(--ease-out) both}.login-card>p{margin:0;max-width:34ch;color:var(--text-2)}.login-card .btn-lg{width:100%;background:#fff;color:#1f1f1f;border-color:transparent;box-shadow:0 10px 30px -10px rgba(255,255,255,.35)}.login-card .btn-lg:hover:not(:disabled){background:#f1f3f7;color:#1f1f1f;filter:none}.login-card .btn:not(.btn-lg){background:transparent}.login-logo{width:min(300px,74vw);height:auto;filter:drop-shadow(0 18px 40px rgba(139,92,246,.35))}.login-features{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none}.login-features li{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--radius-pill);font-size:.8rem;color:var(--text-2);background:rgba(255,255,255,.05);border:1px solid var(--border)}.login-features .icon{color:var(--accent)}@keyframes rise{0%{opacity:0;transform:translateY(16px) scale(.98)}}.spinner{width:40px;height:40px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 25%,var(--cyan-strong),var(--accent));-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.skeleton{border-radius:var(--radius);min-height:132px;background:linear-gradient(90deg,var(--surface) 0,var(--surface-2) 50%,var(--surface) 100%);background-size:200% 100%;border:1px solid var(--border);animation:shimmer 1.4s ease-in-out infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.hero{position:relative;overflow:hidden;margin-bottom:32px;padding:40px 36px;border-radius:var(--radius-lg);border:1px solid var(--border);background:radial-gradient(90% 120% at 100% 0,rgba(245,158,11,.12),transparent 55%),radial-gradient(80% 100% at 0 100%,rgba(6,182,212,.07),transparent 50%),var(--surface);box-shadow:var(--shadow)}.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 0);background-size:32px 32px;-webkit-mask:radial-gradient(80% 100% at 70% 0,#000,transparent 70%);mask:radial-gradient(80% 100% at 70% 0,#000,transparent 70%)}.hero h1{font-size:clamp(1.9rem,1.3rem + 2.6vw,3.1rem);max-width:18ch}.hero .lead{margin:12px 0 0}.hero>*{position:relative;z-index:1}.tool-card{display:flex;flex-direction:column;gap:10px;min-height:200px;padding:22px}.tool-card p{margin:0}.tool-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:6px;border-radius:12px;color:var(--accent-ink);background:linear-gradient(135deg,#fbbf24,#d97706);box-shadow:0 8px 20px -8px rgba(245,158,11,.6),inset 0 1px 0 rgba(255,255,255,.3)}.tool-icon.tool-icon-sm{width:34px;height:34px;margin:0 4px 0 0;border-radius:10px}.tool-card .card-arrow{position:absolute;top:22px;right:22px;color:var(--muted);transition:transform var(--t) var(--ease-out),color var(--t) ease}a.card:hover .card-arrow{color:var(--text);transform:translateX(3px)}.tool-meta{margin-top:auto;padding-top:6px;display:flex;gap:6px;flex-wrap:wrap}.is-disabled{opacity:.6}.is-placeholder{border-style:dashed;border-color:var(--border-strong);background:transparent;box-shadow:none}.is-placeholder .tool-icon{background:var(--surface-2);color:var(--muted);box-shadow:none;border:1px dashed var(--border-strong)}.setlist-card{display:flex;flex-direction:column;gap:6px;min-height:132px;padding:18px 20px}.setlist-card p{margin:0}.setlist-card h3{padding-right:28px;overflow-wrap:anywhere}.setlist-card .card-arrow{position:absolute;top:18px;right:18px;color:var(--muted);transition:transform var(--t) var(--ease-out),color var(--t) ease}.new-setlist{border-radius:16px}.new-setlist input{flex:1 1;border-color:transparent;background:transparent;font-size:1rem;min-height:46px}.new-setlist input:focus{box-shadow:none;border-color:transparent}.new-setlist:focus-within{border-color:rgba(245,158,11,.55);box-shadow:0 0 0 4px rgba(245,158,11,.12),var(--shadow)}.new-setlist .field-icon{margin-left:8px;color:var(--muted)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:36px 20px;border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--muted)}.empty-state .icon{color:var(--text-2);opacity:.6}.empty-state p{margin:0}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700;background:var(--bg-elev);white-space:nowrap}.table tbody tr{transition:background var(--t-fast) ease}.table tbody tr:hover td{background:rgba(255,255,255,.025)}.table tbody tr:last-child td{border-bottom:none}.col-num{width:48px;text-align:right!important;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-family:var(--font-display);font-weight:600}.col-actions{width:1%;white-space:nowrap}.col-actions .row{gap:2px;opacity:.55;transition:opacity var(--t-fast) ease}.col-actions .row:focus-within,.table tr:hover .col-actions .row{opacity:1}@media (hover:none){.col-actions .row{opacity:1}}.item-title{font-weight:600;font-size:1rem}.cell-text{display:inline-block;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;color:var(--text-2)}.cell-link{display:inline-flex;align-items:center;gap:4px;font-weight:600;font-size:.86rem}.empty{text-align:center;padding:40px!important}.pill{font:inherit;font-size:.74rem;font-weight:800;letter-spacing:.04em;min-width:48px;min-height:28px;padding:4px 12px;border-radius:var(--radius-pill);border:1px solid transparent;cursor:pointer;transition:background var(--t-fast) ease,transform var(--t-fast) ease,box-shadow var(--t) ease}.pill:active:not(:disabled){transform:scale(.94)}.pill:disabled{cursor:default}.pill-yes{background:var(--yes);color:var(--yes-ink);box-shadow:0 0 16px -4px rgba(34,197,94,.7)}.pill-no{background:var(--surface-3);border-color:var(--border-strong);color:var(--muted)}.setlist-table tr[draggable=true]{cursor:-webkit-grab;cursor:grab}.dragging{opacity:.4}.drag-over td{box-shadow:inset 0 2px 0 var(--accent)}.drag-handle{display:inline-grid;place-items:center;color:var(--muted);cursor:-webkit-grab;cursor:grab;padding:0 2px}.separator-row td{background:rgba(139,92,246,.07);border-top:1px solid rgba(139,92,246,.25);border-bottom:1px solid rgba(139,92,246,.15);padding-top:8px;padding-bottom:8px}.separator-row td:first-child{box-shadow:inset 3px 0 0 var(--violet)}.table tbody tr.separator-row:hover td{background:rgba(139,92,246,.11)}.separator-title{width:100%;text-align:center;color:var(--accent);font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:.22em;font-size:.82rem}.separator-title:disabled{cursor:default}.stage .separator-title{font-size:1.1rem}.add-item{margin-top:14px;display:flex;align-items:center;gap:10px;padding:10px;border-radius:16px;background:var(--surface);border:1px solid var(--border);transition:border-color var(--t) ease,box-shadow var(--t) ease}.add-item:focus-within{border-color:rgba(245,158,11,.5);box-shadow:0 0 0 4px rgba(245,158,11,.1)}.add-item input{flex:1 1;border-color:transparent;background:transparent}.add-item input:focus{box-shadow:none;border-color:transparent}.add-item-buttons,.meta-line{display:flex;gap:8px}.meta-line{flex-wrap:wrap;align-items:center;margin-top:10px}.progress{position:relative;width:120px;height:6px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.progress>span{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(90deg,#16a34a,#22c55e,#86efac);transition:width .4s var(--ease-out)}.col-done{width:52px;text-align:center!important}.check-btn{display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border-radius:50%;border:2px solid var(--border-strong);background:transparent;color:transparent;cursor:pointer;transition:background var(--t-fast) ease,border-color var(--t-fast) ease,color var(--t-fast) ease,transform var(--t) var(--ease-spring),box-shadow var(--t) ease}.check-btn:hover:not(:disabled){border-color:var(--yes);color:rgba(34,197,94,.6)}.check-btn:active:not(:disabled){transform:scale(.88)}.check-btn.is-on{background:var(--yes);border-color:var(--yes);color:var(--yes-ink);box-shadow:0 0 0 4px rgba(34,197,94,.18),0 0 18px -2px rgba(34,197,94,.6);animation:pop .32s var(--ease-spring)}@keyframes pop{50%{transform:scale(1.18)}}.check-btn:disabled{cursor:default}.check-btn:disabled:not(.is-on){opacity:.35}.stage .check-btn{width:48px;height:48px}.stage .check-btn .icon{width:26px;height:26px}.is-completed td,.m-item.is-completed{background:var(--yes-soft)}.table tbody tr.is-completed:hover td{background:rgba(34,197,94,.18)}.is-completed .item-title{color:#8ee6b0}.is-completed .col-num,.m-item.is-completed .m-num{color:var(--yes)}.complete-toggle{font:inherit;display:flex;align-items:center;gap:12px;padding:12px 16px;min-height:52px;border-radius:14px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);font-weight:600;cursor:pointer;transition:background var(--t) ease,border-color var(--t) ease}.complete-toggle .check-circle{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--border-strong);color:transparent}.complete-toggle.is-on{background:var(--yes-soft);border-color:var(--yes)}.complete-toggle.is-on .check-circle{background:var(--yes);border-color:var(--yes);color:var(--yes-ink)}.toggle{font:inherit;font-size:.8rem;font-weight:700;min-height:30px;padding:4px 13px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);cursor:pointer;white-space:nowrap;transition:background var(--t-fast) ease,border-color var(--t-fast) ease,transform var(--t-fast) ease}.toggle:hover:not(:disabled){border-color:rgba(255,255,255,.28)}.toggle:active:not(:disabled){transform:scale(.95)}.toggle:disabled{cursor:default}.toggle.toggle-alt{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:transparent;color:#fff;box-shadow:0 0 16px -4px rgba(59,130,246,.7)}.stage .toggle{font-size:1rem;padding:6px 16px}.btn-option{background:var(--surface);border-color:var(--muted);font-weight:700}.btn-option-alt{background:var(--info);border-color:var(--info);color:#fff;font-weight:700}.toggle-options{grid-column:1/-1;display:grid;grid-template-columns:1fr auto 1fr;grid-gap:8px;gap:8px;align-items:end;padding:4px 0 2px 38px}.toggle-arrow{color:var(--muted);padding-bottom:10px}.choice-select{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:0 6px 0 12px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface-2);font-size:.8rem;transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.choice-select:hover{border-color:rgba(255,255,255,.28)}.choice-select.has-value{border-color:rgba(139,92,246,.7);background:var(--choice-soft)}.choice-select .pill-label{white-space:nowrap}.choice-select select{font-size:.8rem;font-weight:700;border:none;background:transparent;padding:4px 2px;min-height:30px;max-width:180px;cursor:pointer}.choice-select select:focus{outline:none;box-shadow:none}.choice-select:focus-within{outline:2px solid var(--accent);outline-offset:1px}.choice-select select option{background:var(--surface);color:var(--text)}.choice-badge{display:inline-block;font-size:.8rem;font-weight:700;padding:4px 12px;border-radius:var(--radius-pill);background:var(--choice-soft);border:1px solid rgba(139,92,246,.7);white-space:nowrap}.stage .choice-badge,.stage .choice-select,.stage .choice-select select{font-size:1rem}.select-full{width:100%}.choices{grid-column:1/-1;display:flex;flex-direction:column;gap:6px;padding:4px 0 2px 38px}.choices-title{font-size:.78rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.choice-row{display:grid;grid-template-columns:22px 1fr auto auto auto;grid-gap:4px;gap:4px;align-items:center}.choices-add{align-self:flex-start}.btn-danger{font-weight:700}.btn-danger,.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#f43f5e,#e11d48);border-color:transparent;color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 8px 24px -6px rgba(244,63,94,.6)}.delete-summary{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}.delete-owned{white-space:normal;align-items:flex-start;color:var(--text)}.delete-owned input{margin-top:4px}.notice{color:#6ee7a0;font-size:.9rem;padding:10px 14px;border-radius:10px;background:var(--yes-soft);border:1px solid rgba(34,197,94,.3)}.state-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--accent-soft);color:var(--accent);border:1px solid rgba(245,158,11,.3)}.state-icon.is-brand{background:var(--accent);color:var(--accent-ink);border:none;box-shadow:var(--glow-brand)}.optional-request summary{cursor:pointer;color:var(--text-2);font-weight:600;list-style:none;display:flex;align-items:center;gap:8px}.optional-request summary::-webkit-details-marker{display:none}.optional-request summary:after{content:"";margin-left:auto;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform var(--t) var(--ease-out)}.optional-request[open] summary:after{transform:rotate(225deg)}.optional-request[open] summary{margin-bottom:14px}.welcome-options{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px}.shared-direct{margin-bottom:0}.shared-direct+.card{margin-top:16px}.direct-link{display:flex;align-items:center;gap:12px;color:var(--text);min-height:40px}.direct-link .icon:first-child,.direct-link:hover{color:var(--accent)}.direct-link .icon:last-child{color:var(--muted);transition:transform var(--t) var(--ease-out)}.direct-link:hover .icon:last-child{transform:translateX(3px);color:var(--accent)}.waiting-dots{display:flex;gap:6px}.waiting-dots span{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 1.2s ease-in-out infinite}.waiting-dots span:nth-child(2){animation-delay:.2s;background:var(--cyan)}.waiting-dots span:nth-child(3){animation-delay:.4s;background:var(--violet)}@keyframes pulse{0%,to{opacity:.25;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.avatar-btn,.user-menu{position:relative}.avatar-btn{display:grid;place-items:center;padding:2px;border-radius:50%;border:none;background:var(--border-strong);cursor:pointer;min-width:40px;min-height:40px;transition:background var(--t) ease,box-shadow var(--t) ease}.avatar-btn .avatar{width:34px!important;height:34px!important;border:2px solid var(--bg)}.avatar-btn:hover,.avatar-btn[aria-expanded=true]{background:var(--accent);box-shadow:var(--glow-accent)}.avatar-btn.has-dot:after{content:"";position:absolute;top:0;right:0;width:11px;height:11px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);box-shadow:0 0 10px var(--accent)}.menu{position:absolute;top:calc(100% + 10px);right:0;z-index:var(--z-menu);width:min(310px,calc(100vw - 24px));padding:6px;background:rgba(17,19,27,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-strong);border-radius:16px;box-shadow:var(--shadow-lg);transform-origin:top right;animation:menu-in .18s var(--ease-out)}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}}.menu-head{display:flex;align-items:center;gap:12px;padding:10px}.menu-id{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.menu-id>span:not(.badge),.menu-id>strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-sep{height:1px;margin:4px 6px;background:var(--border)}a.menu-item{color:inherit;text-decoration:none}.menu-item{font:inherit;font-weight:500;width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;min-height:44px;border:none;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:background var(--t-fast) ease}.menu-item .icon{color:var(--muted)}.menu-item:focus-visible,.menu-item:hover:not(.is-static){background:rgba(255,255,255,.06)}.menu-item.is-static{color:var(--muted);cursor:default}.menu-item.is-static .icon{color:var(--yes)}.menu-item.danger,.menu-item.danger .icon{color:#ff6b81}.menu-item.danger:hover{background:var(--danger-soft)}.user-picker{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}.user-option{font:inherit;width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;min-height:52px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer;transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.user-option:hover{border-color:var(--border-strong);background:var(--surface-3)}.user-option.is-selected{border-color:var(--accent);background:var(--accent-soft)}.user-option-text{flex:1 1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.user-option-text>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-fallback{display:inline-grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:.8rem;flex-shrink:0}.role-hints{margin:-6px 0 0;padding-left:18px}.title-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.note-btn{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;background:transparent;cursor:pointer;transform:rotate(-4deg);transition:transform var(--t) var(--ease-spring),background var(--t-fast) ease;flex-shrink:0}.note-btn:focus-visible,.note-btn:hover{background:rgba(255,216,77,.14);transform:rotate(0deg) scale(1.15)}.stage .note-btn svg{width:26px;height:26px}.sticky-backdrop{position:fixed;inset:0;z-index:var(--z-note);background:rgba(3,4,8,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;place-items:center;padding:24px 16px;animation:fade-in .16s ease}.sticky-note{position:relative;width:min(380px,100%);max-height:calc(100dvh - 64px);overflow-y:auto;padding:28px 24px 22px;background:linear-gradient(180deg,#ffe680,#ffd84d);color:#2b2410;border-radius:2px 2px 20px 2px;box-shadow:0 24px 60px rgba(0,0,0,.6),0 2px 0 rgba(0,0,0,.08);transform:rotate(-1.5deg);animation:sticky-in .26s var(--ease-spring)}.sticky-tape{position:absolute;top:-12px;left:50%;width:96px;height:24px;transform:translateX(-50%) rotate(2deg);background:rgba(255,255,255,.45);box-shadow:0 1px 3px rgba(0,0,0,.15)}.sticky-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.sticky-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#7a6000}.sticky-close{display:grid;place-items:center;border:none;background:transparent;color:#5c4a00;width:36px;height:36px;border-radius:50%;cursor:pointer}.sticky-close:hover{background:rgba(0,0,0,.08)}.sticky-title{margin:4px 0 10px;font-size:1.2rem;color:#2b2410}.sticky-text{margin:0;white-space:pre-wrap;font-size:1.05rem;line-height:1.55;word-break:break-word}.sticky-edit{margin-top:16px;font:inherit;font-size:.85rem;font-weight:700;padding:8px 14px;border-radius:8px;border:1px solid rgba(0,0,0,.2);background:rgba(255,255,255,.35);color:#2b2410;cursor:pointer}.sticky-edit:hover{background:rgba(255,255,255,.55)}.stage .sticky-text{font-size:1.35rem}@keyframes sticky-in{0%{opacity:0;transform:rotate(-6deg) scale(.9) translateY(12px)}to{opacity:1;transform:rotate(-1.5deg) scale(1)}}@keyframes fade-in{0%{opacity:0}}.m-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:var(--shadow-sm)}.m-item{display:grid;grid-template-columns:24px 36px 1fr auto;grid-gap:10px;gap:10px;align-items:start;padding:14px 10px 14px 12px;border-bottom:1px solid var(--border);transition:background var(--t) ease}.m-list>li:last-child{border-bottom:none}.m-num{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-family:var(--font-display);font-weight:700;text-align:right;padding-top:5px}.m-main{min-width:0;display:flex;flex-direction:column;gap:8px}.m-title-row{display:flex;align-items:center;gap:4px;min-height:34px}.m-title-row .item-title{font-size:1.05rem;word-break:break-word}.m-chips{display:flex;flex-wrap:wrap;gap:6px}.m-actions{display:flex;align-items:center;gap:2px}.m-actions-col{flex-direction:column}.m-actions .btn-xs{width:36px;height:34px}.m-separator{display:flex;align-items:center;gap:8px;padding:10px;background:linear-gradient(90deg,rgba(245,158,11,.12),rgba(224,79,208,.08),rgba(47,139,255,.12));border-top:1px solid rgba(245,158,11,.4);border-bottom:1px solid var(--border)}.m-separator .separator-title{flex:1 1}.chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:.8rem;min-height:30px;padding:4px 12px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border-strong);color:var(--accent)}.chip-text{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pill-label{font-weight:500;opacity:.7;margin-right:6px}.chip-text .pill-label{margin-right:0}.m-chips .pill{padding:5px 12px}.stage .m-title-row .item-title{font-size:1.45rem}.stage .m-num{font-size:1.25rem}.title-input{font-family:var(--font-display);font-size:clamp(1.5rem,1.2rem + 1.2vw,2.1rem);font-weight:700;letter-spacing:-.02em;background:transparent;border-color:transparent;padding:2px 8px;margin-left:-9px;min-height:0}.title-input:hover:not(:disabled){border-color:var(--border);background:rgba(255,255,255,.02)}.toolbar{justify-content:flex-end;gap:6px;padding:6px;border-radius:14px;background:var(--surface);border:1px solid var(--border)}.toolbar .btn{border-color:transparent;background:transparent}.toolbar .btn:hover:not(:disabled){background:var(--surface-3)}.toolbar .btn.is-active,.toolbar .btn.is-active:hover:not(:disabled){background:var(--accent)}.toolbar-sep{width:1px;align-self:stretch;margin:6px 2px;background:var(--border-strong)}.stage .setlist-table{font-size:1.45rem}.stage .setlist-table th{font-size:.85rem}.stage .setlist-table td{padding:18px 16px}.stage .item-title{font-size:inherit;font-family:var(--font-display);letter-spacing:-.01em}.stage .col-actions{display:none}.stage-banner{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 10px;border-radius:var(--radius-pill);background:rgba(244,63,94,.14);border:1px solid rgba(244,63,94,.4);color:#ff8a9b;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.stage-banner:before{content:"";width:8px;height:8px;border-radius:50%;background:#f43f5e;box-shadow:0 0 10px #f43f5e;animation:pulse 1.6s ease-in-out infinite}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:.78rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.field>span em{text-transform:none;letter-spacing:0;font-weight:500}.yesno{display:flex;gap:6px}.col-row{display:grid;grid-template-columns:auto 1fr auto auto auto;grid-gap:10px;gap:10px;align-items:center;padding:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px}.col-row input,.col-row select{background:var(--bg-elev)}.col-row .switch input{background:var(--surface-3)}.col-row .switch input:checked{background:var(--accent)}.col-move,.request{display:flex;flex-direction:column}.request{gap:10px}.request p{margin:4px 0 0}.modal-backdrop{position:fixed;inset:0;background:rgba(3,4,8,.66);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;padding:16px;z-index:var(--z-modal);animation:fade-in .18s ease}.modal{position:relative;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),inset 0 1px 0 rgba(255,255,255,.05);width:100%;max-width:580px;max-height:calc(100dvh - 32px);display:flex;flex-direction:column;overflow:hidden;animation:modal-in .26s var(--ease-out)}.modal:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-border),transparent)}@keyframes modal-in{0%{opacity:0;transform:translateY(14px) scale(.98)}}.modal-wide{max-width:780px}.modal-foot,.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px}.modal-head{border-bottom:1px solid var(--border)}.modal-head h2{font-size:1.15rem;overflow-wrap:anywhere}.modal-close{width:38px;height:38px;padding:0;border-radius:50%;flex-shrink:0}.modal-foot{border-top:1px solid var(--border);background:var(--bg-elev);flex-wrap:wrap}.modal-body{padding:20px;overflow-y:auto}.update-banner{position:fixed;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:var(--z-toast);display:flex;align-items:center;gap:14px;padding:12px 14px 12px 18px;background:rgba(24,27,38,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(245,158,11,.5);border-radius:16px;box-shadow:var(--shadow-lg),var(--glow-accent);width:max-content;max-width:calc(100vw - 32px);font-size:.9rem;animation:toast-in .32s var(--ease-out)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,16px)}}.steps{margin:0 0 12px;padding-left:20px;display:flex;flex-direction:column;gap:10px}.inline-icon{vertical-align:-3px;color:var(--accent)}.grid>*{animation:rise .42s var(--ease-out) backwards}.grid>:nth-child(2){animation-delay:40ms}.grid>:nth-child(3){animation-delay:80ms}.grid>:nth-child(4){animation-delay:.12s}.grid>:nth-child(n+5){animation-delay:.16s}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:640px){input,select,textarea{font-size:16px}.hide-sm{display:none!important}.hero{padding:28px 22px;margin-bottom:24px}.page-head{align-items:stretch;gap:14px;margin-bottom:18px}.toolbar{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap!important;scrollbar-width:none}.toolbar::-webkit-scrollbar{display:none}.grid{grid-template-columns:1fr;gap:12px}.new-setlist{flex-direction:column;align-items:stretch}.new-setlist .field-icon{display:none}.col-row{grid-template-columns:auto 1fr auto}.col-row .switch,.col-row select{grid-column:2}.toggle-options{grid-template-columns:1fr;padding-left:0}.toggle-arrow{display:none}.choices{padding-left:0}.choice-select select{font-size:16px;max-width:150px}.table td,.table th{padding:10px}.btn{min-height:42px}.btn-xs{min-height:34px}.modal-backdrop{place-items:end stretch;padding:0}.modal,.modal-wide{max-width:none;max-height:92dvh;border-radius:22px 22px 0 0;border-bottom:none;animation:sheet-in .3s var(--ease-out)}.modal:before{top:8px;left:50%;right:auto;width:40px;height:4px;border-radius:4px;transform:translateX(-50%);background:var(--border-strong)}.modal-head{padding-top:22px}.modal-foot{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.modal-foot>*{flex:1 1 auto}.modal-foot .row{justify-content:space-between}.update-banner{flex-direction:column;align-items:stretch;text-align:center}.sticky-text{font-size:1.1rem}.login-card{padding:32px 22px 24px}}@keyframes sheet-in{0%{transform:translateY(100%)}}.show-sm{display:none!important}@media (max-width:640px){.show-sm{display:inline-flex!important}}.align-start{align-self:flex-start}.btn-block{width:100%}.mono{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.accent-text{color:var(--accent)}.is-cyan{color:var(--cyan)!important}.is-warn{color:var(--warn)!important}.menu-up{top:auto;bottom:calc(100% + 10px);left:0;right:auto;transform-origin:bottom left}.badge-live{color:#fda4af;background:rgba(244,63,94,.14);border-color:rgba(244,63,94,.45)}.tab-count{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:6px;padding:0 6px;border-radius:var(--radius-pill);background:rgba(255,255,255,.08);font-size:.7rem}.mchip,.tab-count{color:var(--text-2);font-weight:700}.mchip{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:2px 9px;border-radius:6px;background:rgba(255,255,255,.06);border:1px solid var(--border);font-size:.78rem;white-space:nowrap}.mchip .icon{color:var(--muted)}.mchip.is-key{color:var(--accent-light);background:var(--accent-soft);border-color:rgba(245,158,11,.25)}.mchip.is-live{color:#fda4af;border-color:rgba(244,63,94,.4)}.mchip.is-live .dot{background:var(--danger);animation:pulse 1.6s ease-in-out infinite}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;background:rgba(255,255,255,.08);color:var(--text-2);font-size:.7rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.tag-amber,.tag-play-backing{background:rgba(245,158,11,.15);color:var(--accent-light)}.tag-cyan,.tag-play-sequence{background:var(--cyan-soft);color:var(--cyan)}.tag-play-live{background:var(--violet-soft);color:var(--violet)}.chart-badge{display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border-radius:6px;border:1px solid rgba(34,211,238,.35);color:var(--cyan);font-size:.72rem;font-weight:700;white-space:nowrap}a.chart-badge:hover,button.chart-badge:hover{color:#fff;background:var(--cyan-soft)}button.chart-badge{gap:4px;background:transparent;font-family:inherit;line-height:inherit;cursor:pointer}button.media-badge:hover{color:#fff;background:var(--cyan-soft)}.segmented,.tabs{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--border)}.segmented button,.tabs button{font:inherit;font-size:.85rem;font-weight:700;display:inline-flex;align-items:center;min-height:36px;padding:6px 12px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--muted);cursor:pointer;transition:background var(--t-fast) ease,color var(--t-fast) ease}.segmented button:hover,.tabs button:hover{color:var(--text)}.segmented button.is-on,.tabs button.is-on{background:var(--surface-2);color:var(--accent-light);box-shadow:inset 0 0 0 1px var(--border-strong)}.segmented-sm button{min-height:32px;font-size:.8rem}.tabs{display:flex;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.tabs button{flex:1 0 auto;justify-content:center}.search-field{display:flex;align-items:center;gap:8px;flex:1 1;min-width:180px;padding:0 12px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.search-field:focus-within{border-color:var(--accent)}.search-field input{border:none;background:transparent;padding:8px 0;min-height:38px}.search-field input:focus{box-shadow:none}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.form-grid .field{grid-column:span 2}.form-grid .field.span-2{grid-column:1/-1}@media (min-width:641px){.form-grid .field:not(.span-2){grid-column:span 1}}.section-row{display:grid;grid-template-columns:minmax(0,2fr) 70px 70px 90px auto;grid-gap:6px;gap:6px;align-items:center}.patch-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1.4fr) repeat(4,64px) auto;grid-gap:6px;gap:6px;align-items:end;padding:10px;border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--border)}.patch-row label{display:flex;flex-direction:column;gap:2px;font-size:.66rem;font-weight:700;color:var(--muted);text-transform:uppercase}.patch-row input{padding:8px}@media (max-width:640px){.patch-row{grid-template-columns:repeat(4,minmax(0,1fr))}.patch-row>input{grid-column:1/-1}.section-row{grid-template-columns:minmax(0,1fr) 60px 64px auto}.section-row select{grid-column:1/-1;grid-row:2}}.settings-block{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--border)}.settings-block h3{font-size:.95rem}.settings-block .switch{white-space:normal}.chip-picker{display:flex;flex-wrap:wrap;gap:6px}.chip-picker button{font:inherit;font-size:.85rem;font-weight:600;min-height:36px;padding:6px 12px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:transparent;color:var(--text-2);cursor:pointer}.chip-picker button.is-on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-light)}.code-input{font-family:var(--font-mono);font-size:2rem!important;letter-spacing:.4em;text-align:center;min-height:64px}.page-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px;padding:28px;border-radius:var(--radius-lg);background:radial-gradient(80% 140% at 100% 0,rgba(245,158,11,.08),transparent 55%),var(--surface);border:1px solid var(--border)}.page-hero>.grow{flex:1 1 320px}.page-hero .lead{margin:8px 0 0}.stat-tiles{display:flex;flex-wrap:wrap;gap:10px}.stat-tile{display:flex;align-items:center;gap:12px;min-width:150px;padding:12px 16px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border)}.stat-tile>.icon{color:var(--accent)}.stat-tile span{display:flex;flex-direction:column;line-height:1.2}.stat-tile strong{font-size:1.25rem}.stat-tile em{font-style:normal;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.new-setlist{display:grid;grid-template-columns:minmax(0,2fr) minmax(150px,.8fr) minmax(0,1fr) auto;grid-gap:10px;gap:10px;padding:10px;margin-bottom:24px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}.new-setlist:focus-within{border-color:var(--accent-border)}.nf-field{display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.nf-field input{border:none;background:transparent;padding:10px 0;min-height:44px}.nf-field input:focus{box-shadow:none}.nf-field:focus-within{border-color:var(--accent)}.new-setlist .btn{min-height:46px}.sl-list-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:20px;gap:20px;align-items:start}.sl-card,.sl-cards{display:flex;flex-direction:column;gap:12px}.sl-card{position:relative;padding:18px 20px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);transition:border-color var(--t) ease,background var(--t) ease;animation:rise .36s var(--ease-out) backwards}.sl-card:hover{border-color:var(--border-strong)}.sl-card.is-live{border-color:var(--accent-border);box-shadow:inset 4px 0 0 var(--accent),var(--glow-accent)}.sl-card-link{display:flex;gap:14px}.sl-card-link,.sl-card-link:hover{color:var(--text)}.sl-card-link:hover h3{color:var(--accent-light)}.song-card-link{font:inherit;padding:0;border:0;background:none;text-align:left;cursor:pointer}.sl-card-icon{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent)}.sl-card.is-live .sl-card-icon{background:var(--accent);color:var(--accent-ink)}.sl-card-body{display:flex;flex-direction:column;gap:4px;min-width:0}.sl-card-body h3{font-size:1.2rem;overflow-wrap:anywhere;transition:color var(--t-fast) ease}.sl-card-badges{gap:6px}.sl-card-actions,.sl-card-stats{display:flex;flex-wrap:wrap;gap:6px}.sl-card-actions{padding-top:12px;border-top:1px solid var(--border)}.side-card{display:flex;flex-direction:column;gap:10px}.side-card h3{display:flex;align-items:center;gap:8px}.side-card h3 .icon{color:var(--accent)}.side-card p{margin:0}.side-list{list-style:none;margin:0;padding:0;gap:6px}.side-list,.side-list a{display:flex;flex-direction:column}.side-list a{padding:10px 12px;border-radius:var(--radius);background:var(--surface-2);color:var(--text)}.side-list a:hover{background:var(--surface-3);color:var(--text)}.join-card{display:flex;align-items:center;gap:14px;margin-bottom:16px}.join-card h2{font-size:1.05rem}.join-card p{margin:2px 0 0}.home{display:flex;flex-direction:column;gap:20px}.home-top{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);grid-gap:20px;gap:20px}.home .hero{margin:0}.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.next-live{display:flex;flex-direction:column;gap:12px}.next-live h2{font-size:1.5rem}.next-live p{margin:0}.next-live.is-empty h2{font-size:1.15rem}.countdown{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--border)}.countdown-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent)}.countdown em,.last-setlist em{display:block;font-style:normal;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.countdown strong{font-size:1.35rem;color:var(--accent-light)}.countdown-side{display:flex;flex-direction:column;align-items:flex-end;text-align:right;font-size:.8rem;color:var(--cyan);font-weight:700;max-width:45%}.countdown-side em{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none;letter-spacing:0}.home-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);grid-gap:20px;gap:20px}.module-card{display:flex;flex-direction:column;gap:16px;padding:24px}.module-head{gap:14px}.module-head,.module-head h2{display:flex;align-items:center}.module-head h2{flex-wrap:wrap;gap:8px;font-size:1.35rem}.module-head p{margin:2px 0 0}.module-icon{display:grid;place-items:center;flex-shrink:0;width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,#fbbf24,#d97706);color:var(--accent-ink);box-shadow:0 8px 20px -8px rgba(245,158,11,.6)}.module-icon.is-violet{background:var(--violet-soft);color:var(--violet);box-shadow:none}.module-desc{margin:0;color:var(--text-2)}.last-setlist{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--border);color:var(--text)}.last-setlist>.icon{color:var(--accent)}.last-setlist:hover{color:var(--text);border-color:var(--accent-border)}.feature-list{list-style:none;margin:0;padding:0;flex-direction:column;color:var(--text-2);font-size:.9rem}.feature-list,.feature-list li{display:flex;gap:8px}.feature-list .icon{color:var(--cyan);margin-top:3px}.module-stage .btn{margin-top:auto}.roadmap{display:flex;flex-direction:column;gap:16px}.roadmap-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px}.roadmap-item{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--border)}.roadmap-item .icon{color:var(--violet)}.roadmap-item p{margin:0}.feedback h2{font-size:1.15rem}.feedback p{margin:0}.setlist-page{display:flex;flex-direction:column;gap:16px}.sl-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 24px;padding:20px 22px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}.sl-head-main{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:8px}.sl-head-main .back-link{margin:0}.sl-title-row{display:flex;align-items:center;gap:12px;min-width:0}.sl-icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent)}.sl-title{flex:1 1;min-width:0;font-size:clamp(1.5rem,1.2rem + 1.2vw,2.1rem);overflow-wrap:anywhere}h1.sl-title{margin:0}.sl-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;color:var(--muted);font-size:.86rem}.sl-meta .meta{display:inline-flex;align-items:center;gap:5px}.sl-meta strong{color:var(--accent-light)}.sync.is-ok{color:var(--cyan);font-weight:600}.sync.is-ok .dot{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.sync.is-off{color:var(--warn);font-weight:600}.sync.is-off .dot{background:var(--warn)}.sl-actions{flex-wrap:wrap;align-content:flex-start;gap:8px;flex:0 1 auto}.sl-actions,.sl-tools{display:flex;justify-content:flex-end}.sl-tools{flex-wrap:wrap;gap:6px;width:100%}.btn-live{border-color:rgba(244,63,94,.45);color:#fda4af}.btn-live .dot{background:var(--danger)}.btn-live.is-on{background:rgba(244,63,94,.14)}.btn-live.is-on .dot{box-shadow:0 0 10px var(--danger);animation:pulse 1.6s ease-in-out infinite}.sl-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.sl-grid.with-inspector{grid-template-columns:minmax(0,1fr) 360px}.sl-main{min-width:0;display:flex;flex-direction:column;gap:12px}.sl-filter{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}.sl-hint{display:inline-flex;align-items:center;gap:6px;width:100%;font-weight:600;color:var(--text-2)}.setlist-table td,.setlist-table th{padding:12px}.setlist-table tbody tr:not(.separator-row) td{height:64px}.setlist-table .col-num{width:64px;white-space:nowrap;font-size:1.15rem;font-weight:700;color:var(--text-2)}.row-grip{margin-right:6px;color:var(--faint);vertical-align:-1px}.setlist-table tr[draggable=true]:hover .row-grip{color:var(--muted)}.col-bpm,.col-dur,.col-key{text-align:center!important;white-space:nowrap}.col-key{width:90px}.col-bpm{width:120px}.col-dur{width:80px;color:var(--text-2)}.key-badge{display:inline-grid;place-items:center;min-width:42px;height:36px;padding:0 8px;border-radius:var(--radius-sm);background:rgba(255,255,255,.05);color:var(--accent-light);font-size:1.05rem;font-weight:800}.bpm{display:block;font-size:1.15rem;font-weight:800;color:var(--cyan);line-height:1.1}.bpm-sub{display:block;font-size:.72rem;font-weight:600;color:var(--muted)}.title-cell .item-title{font-size:1.05rem}.title-sub{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:4px;font-size:.78rem;font-weight:600;color:var(--muted)}.title-sub .tag+span:before,.title-sub>span:not(.tag)+span:not(.tag):before{content:"•";margin-right:8px;color:var(--faint)}.setlist-table tbody tr{cursor:default}.setlist-table tbody tr.is-selected td{background:rgba(255,255,255,.035)}.setlist-table tbody tr.is-live td{background:var(--surface-2);border-top:1px solid var(--accent-border);border-bottom:1px solid var(--accent-border)}.setlist-table tbody tr.is-live td:first-child{box-shadow:inset 4px 0 0 var(--accent)}.setlist-table tbody tr.is-live .item-title{color:var(--accent-light)}.btn.accent{color:var(--accent)}.break-row{width:100%}.break-row:disabled{cursor:default}.break-label{display:flex;align-items:center;gap:10px;color:var(--text);font-weight:700}.break-label .icon{color:var(--violet)}.break-title:after,.break-title:before{content:" — ";color:var(--faint)}.break-dur{margin-left:auto;font-family:var(--font-mono);font-size:.8rem;font-weight:500;color:var(--muted)}.m-list{border:none;background:transparent;box-shadow:none;overflow:visible;display:flex;flex-direction:column;gap:8px}.m-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:start;padding:14px 10px 14px 12px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);transition:background var(--t) ease,border-color var(--t) ease}.m-card.is-live{background:var(--surface-2);border-color:var(--accent-border);box-shadow:var(--glow-accent)}.m-card.is-live .item-title{color:var(--accent-light)}.m-card.is-completed{background:var(--yes-soft)}.m-side{display:flex;flex-direction:column;align-items:center;gap:8px}.m-card .m-num{font-size:1.3rem;font-weight:800;color:var(--text-2);padding:0;text-align:center}.m-note{display:flex;gap:8px;margin:0;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-elev);color:var(--text-2);font-size:.85rem}.m-note .icon{flex-shrink:0;margin-top:2px;color:var(--accent)}.m-break{display:flex;align-items:center;gap:8px;padding:2px 0}.m-break:after,.m-break:before{content:"";flex:1 1;height:1px;background:var(--border-strong)}.m-break .m-actions{order:3}.m-break:after{order:2}.m-break-pill{font:inherit;display:inline-flex;max-width:75%;padding:10px 16px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border-strong);cursor:pointer}.m-break-pill .break-title{text-transform:uppercase;letter-spacing:.06em;font-size:.85rem}.m-break-pill .break-title:after,.m-break-pill .break-title:before{content:none}.m-break.is-live .m-break-pill{border-color:var(--accent-border)}.sl-below{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:12px;gap:12px}.config-card{font:inherit;display:flex;align-items:center;gap:14px;width:100%;text-align:left;cursor:pointer;color:var(--text)}.config-card:hover{border-color:var(--border-strong)}.config-card .grow{display:flex;flex-direction:column}.config-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:var(--radius);background:var(--surface-2);color:var(--accent);flex-shrink:0}.quick-entry{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}.quick-entry:focus-within{border-color:var(--accent-border)}.quick-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}.quick-title{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.quick-end{margin-left:auto;font-size:.86rem;color:var(--muted)}.quick-end strong{color:var(--text)}.quick-row{display:flex;align-items:center;gap:8px}.quick-num{width:34px;text-align:center;font-size:1.1rem;font-weight:800;color:var(--faint);flex-shrink:0}.quick-input{flex:1 1 220px;font-size:1rem}.quick-row select{width:130px}.quick-short{width:74px;text-align:center}.quick-breaks{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}.quick-breaks .btn .icon{color:var(--violet)}.inspector{position:-webkit-sticky;position:sticky;top:calc(var(--topbar-h) + 16px);max-height:calc(100dvh - var(--topbar-h) - 32px);overflow-y:auto;display:flex;flex-direction:column;gap:16px;padding:18px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);scrollbar-width:thin}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--border);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}.panel-title>span:first-child{display:inline-flex;align-items:center;gap:8px}.panel-title .icon{color:var(--accent)}.track-tag{padding:2px 8px;border-radius:6px;background:var(--accent-soft);color:var(--accent-light);font-family:var(--font-mono);letter-spacing:0}.insp-head{display:flex;flex-direction:column;gap:4px}.insp-state{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan)}.insp-state.is-live{color:var(--accent)}.insp-title{font-size:1.9rem;overflow-wrap:anywhere}.insp-sub{margin:0;color:var(--text-2)}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.tile{display:flex;flex-direction:column;gap:2px;padding:12px;border-radius:var(--radius);background:var(--surface-2);text-align:center}.tile span{font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.tile strong{font-size:1.55rem;line-height:1.15;color:var(--accent-light);white-space:nowrap}.insp-actions{gap:6px}.insp-block{display:flex;flex-direction:column;gap:8px}.insp-block-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:700;font-size:.9rem}.insp-block-title>span{display:inline-flex;align-items:center;gap:8px}.insp-block-title .icon{color:var(--accent)}.patch-list{list-style:none;margin:0;padding:0;gap:6px}.patch-list,.patch-list li{display:flex;flex-direction:column}.patch-list li{gap:2px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-elev);border-left:3px solid var(--accent)}.patch-list .mono{font-size:.78rem;color:var(--accent-light)}.insp-note{margin:0;color:var(--text);white-space:pre-wrap}.insp-chart,.insp-note{padding:12px;border-radius:var(--radius-sm);background:var(--bg-elev)}.insp-chart{max-height:260px;overflow-y:auto}.insp-test{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius);background:var(--surface-2)}.insp-test .grow{display:flex;flex-direction:column;line-height:1.3}.insp-test-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--radius-sm);background:var(--bg-elev);color:var(--cyan)}.lineup{display:flex;flex-direction:column;gap:10px}.lineup.is-compact{padding:16px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}.lineup-ping{font-family:var(--font-mono);letter-spacing:0;color:var(--cyan);text-transform:none}.lineup-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:6px;gap:6px}.lineup-item{display:flex;align-items:center;gap:8px;padding:8px;border-radius:var(--radius-sm);background:var(--bg-elev);min-width:0}.lineup-avatar{position:relative;display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;background:var(--surface-3);color:var(--accent-light);font-size:.75rem;font-weight:800}.lineup-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.lineup-dot{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;border:2px solid var(--bg-elev);background:var(--accent)}.lineup-dot.is-acked{background:var(--cyan)}.lineup-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.lineup-text span,.lineup-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lineup-text strong{font-size:.84rem}.lineup-text span{font-size:.72rem;color:var(--muted)}.lineup-ms{margin-left:auto;font-family:var(--font-mono);font-size:.72rem;color:var(--cyan)}.lineup-btn{align-self:flex-start}.metro-control{gap:10px}.metro-control,.metro-readout{display:inline-flex;align-items:center}.metro-readout{gap:8px}.metro-info{font-family:var(--font-mono);font-size:.75rem;color:var(--muted)}.beat-dots{display:inline-flex;gap:4px}.beat-dots span{width:9px;height:9px;border-radius:50%;background:var(--surface-3);transition:background 60ms linear}.beat-dots span.on{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.beat-dots span.on:first-child{background:var(--accent);box-shadow:0 0 8px var(--accent)}.beat-dots.is-count span.on{background:var(--danger);box-shadow:0 0 8px var(--danger)}.metro-control.is-big .beat-dots span{width:16px;height:16px}.chart,.metro-control.is-big .metro-info{font-size:.95rem}.chart{line-height:1.35}.chart-gap{height:.8em}.chart-section{margin:10px 0 4px;font-family:var(--font-mono);font-size:.78em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.chart-section.is-chorus{color:var(--cyan)}.chart-section{display:flex;align-items:center;gap:6px}.chart-section.is-ref{opacity:.7}.chart-badge-sec{display:inline-flex;align-items:center;justify-content:center;min-width:1.9em;height:1.9em;padding:0 3px;border:1.5px solid var(--sec,var(--accent));border-radius:999px;font-size:.85em;letter-spacing:0;text-transform:none;color:var(--text);filter:brightness(1.5)}.chart-expr,.chart-rep{color:var(--muted);text-transform:none}.chart-expr{margin-left:auto;font-family:var(--font-sans,inherit);font-weight:500;font-style:italic;letter-spacing:0}.chart-expr.is-line{display:block;margin:2px 0 4px;text-align:right}.chart-comment{margin:4px 0;font-style:italic;color:var(--violet)}.chart-chords{margin:0;font-family:var(--font-mono);font-weight:700;color:var(--accent-light);white-space:pre-wrap}.chart-chords.is-tab{font-weight:500;color:var(--text-2)}.chart-line{display:flex;flex-wrap:wrap;align-items:flex-end}.chart-chords.is-chorus,.chart-line.is-chorus{padding-left:10px;border-left:2px solid rgba(34,211,238,.4)}.chart-seg{display:inline-flex;flex-direction:column;white-space:pre}.chart-chord{min-height:1.3em;padding-right:6px;font-family:var(--font-mono);font-weight:700;font-size:.92em;color:var(--accent-light)}.chart-seg:not(:has(.chart-chord)):before{content:"\00a0";min-height:1.3em}.chart-lyric{color:var(--text)}.chart-tags{display:flex;flex-direction:column;gap:6px;margin:2px 0 4px}.chart-tags-row{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.chart-tags-row>.small{min-width:82px}.chart-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--border);border-left:3px solid var(--sec,var(--border));border-radius:6px;background:var(--surface,transparent);color:var(--text);font:inherit;font-size:.75rem;cursor:pointer}.chart-tag:hover{border-color:var(--accent)}.chart-tag.is-expr{border-left-width:1px;font-style:italic;color:var(--muted)}.chart-tags-help{margin:0}.chart-preview{position:relative}.chart-preview .chart-print{float:right}.chart-preview{max-height:340px;overflow-y:auto;padding:14px;border-radius:var(--radius);background:var(--bg);border:1px solid var(--border)}.lyrics-preview{line-height:1.5}.lyrics-block+.lyrics-block{margin-top:12px}.lyrics-block .chart-section{margin-top:0}textarea.mono{font-size:.85rem;line-height:1.5}.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.timeline li{position:relative;display:flex;gap:12px;padding:0 0 16px 4px}.timeline li:before{content:"";position:absolute;left:9px;top:14px;bottom:0;width:1px;background:var(--border-strong)}.timeline li:last-child:before{display:none}.timeline-dot{position:relative;flex-shrink:0;width:11px;height:11px;margin-top:5px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 3px rgba(34,211,238,.15)}.timeline li:first-child .timeline-dot{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.timeline div{display:flex;flex-direction:column}.genre-bar{display:flex;height:10px;border-radius:var(--radius-pill);overflow:hidden;background:var(--surface-3)}.genre-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.85rem;color:var(--text-2)}.genre-legend li{display:inline-flex;align-items:center;gap:6px}.swatch{width:10px;height:10px;border-radius:50%}.invite-box{flex-wrap:wrap;gap:16px;padding:16px;border-radius:var(--radius);background:var(--bg-elev);border:1px dashed var(--accent-border)}.invite-box,.invite-box h3{display:flex;align-items:center}.invite-box h3{gap:8px}.invite-box h3 .icon{color:var(--accent)}.invite-box p{margin:0}.invite-code{display:flex;flex-direction:column;align-items:center;padding:10px 18px;border-radius:var(--radius);background:var(--accent-soft)}.invite-code strong{font-family:var(--font-mono);font-size:1.9rem;letter-spacing:.08em;color:var(--accent-light)}.request.is-new{border-color:var(--accent-border)}.toast{position:fixed;left:50%;bottom:calc(var(--tabbar-h) + 16px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:var(--z-toast);display:flex;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:12px 16px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--accent-border);box-shadow:var(--shadow-lg);font-size:.9rem;font-weight:600;animation:toast-in .28s var(--ease-out)}.toast .icon{color:var(--accent)}@media (min-width:1024px){.toast{bottom:24px}}body.no-scroll{overflow:hidden}.stage-view{position:fixed;inset:0;z-index:var(--z-stage);display:flex;flex-direction:column;background:#000;color:#fff;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);animation:fade-in .16s ease}.stage-top{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid #1a1a1a;min-height:60px}.stage-btn{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;border-radius:50%;border:1px solid #262626;background:#0d0d0d;color:#fff;cursor:pointer}.stage-btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.stage-live{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:var(--radius-pill);border:1px solid #333;font-size:.8rem;font-weight:800;letter-spacing:.1em;color:#a3a3a3}.stage-live.is-on{border-color:rgba(244,63,94,.6);color:#fda4af}.stage-live.is-on .dot{background:var(--danger);box-shadow:0 0 10px var(--danger);animation:pulse 1.6s ease-in-out infinite}.stage-pos{font-family:var(--font-mono);font-weight:700;color:var(--yes)}.stage-set{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a3a3a3;font-weight:600}.stage-chip{font:inherit;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:6px 12px;border-radius:var(--radius-pill);border:1px solid #333;background:#0d0d0d;color:var(--cyan);font-size:.82rem;font-weight:700;white-space:nowrap;cursor:pointer}.stage-chip.is-static{cursor:default}.stage-end{color:#a3a3a3;font-size:.9rem;white-space:nowrap}.stage-clock{font-family:var(--font-mono);font-size:1.3rem;font-weight:700}.stage-body{flex:1 1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr)}.stage-body.with-list{grid-template-columns:280px minmax(0,1fr)}.stage-list{list-style:none;margin:0;padding:10px;overflow-y:auto;border-right:1px solid #1a1a1a}.stage-list button{font:inherit;width:100%;display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:#d4d4d4;text-align:left;cursor:pointer}.stage-list .n{width:26px;font-family:var(--font-mono);color:#737373}.stage-list .t{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.stage-list .k{font-weight:800;color:var(--accent-light)}.stage-list button.is-current{background:#171717;color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.stage-list button.is-live .n{color:var(--accent)}.stage-list button.is-done .t{color:#4ade80;text-decoration:line-through;-webkit-text-decoration-color:rgba(74,222,128,.5);text-decoration-color:rgba(74,222,128,.5)}.stage-list button.is-break{color:var(--violet);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em}.stage-main{min-height:0;display:flex;flex-direction:column;gap:14px;padding:18px 24px;overflow:hidden}.stage-empty{margin:auto;color:#737373}.stage-head{display:flex;flex-direction:column;gap:4px}.stage-eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:var(--accent)}.stage-tag{padding:3px 10px;border-radius:6px;background:rgba(245,158,11,.18);color:var(--accent-light);font-family:var(--font-body);font-size:.8rem;font-weight:800;letter-spacing:.04em}.stage-tag.is-cyan{background:rgba(6,182,212,.18);color:var(--cyan)}.stage-title{font-size:clamp(2.2rem,1.2rem + 4.5vw,4.4rem);font-weight:800;line-height:1.02;letter-spacing:-.03em;overflow-wrap:anywhere}.stage-title.is-done{color:#4ade80}.stage-artist{margin:0;font-size:1.15rem;color:#a3a3a3}.stage-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.stage-tile{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border-radius:var(--radius);background:#0d0d0d;border:1px solid #1f1f1f}.stage-tile>span{font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#8a8a8a}.stage-tile strong{font-size:clamp(1.6rem,1rem + 2.4vw,2.8rem);line-height:1.1;color:var(--accent-light);white-space:nowrap}.stage-transpose{display:flex;align-items:center;gap:8px;margin-top:4px;font-family:var(--font-mono);color:#a3a3a3}.stage-transpose button{width:36px;height:36px;border-radius:50%;border:1px solid #333;background:#111;color:#fff;font-size:1.2rem;cursor:pointer}.stage-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.stage-scroll .btn,.stage-tools .btn{background:#111;border-color:#333;min-height:48px}.stage-tools .btn.is-active{background:var(--accent);color:#000}.stage-scroll{display:inline-flex;align-items:center;gap:6px;color:#a3a3a3}.stage-notes{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;border-radius:var(--radius);border:1px solid rgba(245,158,11,.35);background:rgba(245,158,11,.06)}.stage-notes p{flex-basis:100%;margin:0;font-size:1.2rem;line-height:1.4}.chart-scroll{overflow-y:auto;scrollbar-width:thin}.stage-chart{flex:1 1;min-height:120px;padding:4px 4px 40vh;-webkit-mask:linear-gradient(#000 85%,transparent);mask:linear-gradient(#000 85%,transparent)}.stage-chart .chart{font-size:clamp(1.15rem,.9rem + 1vw,1.6rem)}.stage-spacer{flex:1 1}.stage-next{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;padding:10px 14px;border-radius:var(--radius);background:#0d0d0d;border:1px solid #1f1f1f;font-size:1.05rem}.stage-next>span:first-child{font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#8a8a8a}.stage-next .mono{color:var(--cyan)}.stage-break{margin:auto;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.stage-break h1{font-size:clamp(2rem,1rem + 4vw,4rem)}.stage-break .stage-eyebrow{color:var(--violet);font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em}.stage-timer{font-family:var(--font-mono);font-size:clamp(3rem,2rem + 6vw,7rem);font-weight:700;color:var(--cyan)}.stage-timer.is-over{color:var(--danger)}.stage-next-inline{margin:0;font-size:1.2rem;color:#a3a3a3}.stage-next-inline strong{color:#fff}.stage-foot{display:grid;grid-template-columns:1fr 1.4fr 1fr;grid-gap:10px;gap:10px;padding:10px 14px 12px;border-top:1px solid #1a1a1a}.stage-done,.stage-nav{font:inherit;display:flex;align-items:center;justify-content:center;gap:10px;min-height:64px;border-radius:var(--radius-lg);border:1px solid #2a2a2a;background:#0d0d0d;color:#fff;font-size:1.1rem;font-weight:800;cursor:pointer;touch-action:manipulation}.stage-nav:disabled{opacity:.3;cursor:default}.stage-nav.is-next{border-color:var(--accent-border);color:var(--accent-light)}.stage-done:active,.stage-nav:active:not(:disabled){transform:scale(.98)}.stage-done{border-color:rgba(34,197,94,.5);color:#4ade80}.stage-done.is-on{background:var(--yes);border-color:var(--yes);color:#000}.stage-hint{align-self:center;text-align:center}@media (max-width:1279px){.sl-actions,.sl-tools{justify-content:flex-start}}@media (max-width:1100px){.home-grid,.home-top,.sl-list-layout{grid-template-columns:minmax(0,1fr)}.sl-side{order:-1}.sl-side .card:not(:first-child){display:none}}@media (max-width:900px){.stage-body.with-list{grid-template-columns:minmax(0,1fr)}.stage-list{display:none}.new-setlist{grid-template-columns:1fr 1fr}.new-setlist .btn,.nf-title{grid-column:1/-1}}@media (max-width:640px){.page-hero{padding:20px}.stat-tiles{width:100%}.stat-tile{min-width:0;flex:1 1 100px;padding:10px 12px}.stat-tile>.icon{display:none}.sl-header{padding:16px}.sl-actions{width:100%}.sl-actions>.btn{flex:1 1}.sl-tools{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.sl-tools::-webkit-scrollbar{display:none}.sl-filter .segmented{width:100%}.sl-filter .segmented button{flex:1 1;justify-content:center}.quick-entry{position:-webkit-sticky;position:sticky;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));z-index:var(--z-sticky);margin:0 -16px;border-radius:18px 18px 0 0;background:rgba(17,24,39,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.quick-row{flex-wrap:wrap}.quick-num{display:none}.quick-input{flex:1 1}.quick-opt{display:none}.quick-row.is-open .quick-opt{display:block;flex:1 1 30%;order:5;width:auto}.quick-breaks .btn{min-height:36px}.quick-end{margin-left:auto}.sl-card{padding:16px}.sl-card-actions .btn{flex:1 1}.stage-top{gap:6px;padding:8px 10px}.stage-set{display:none}.stage-main{padding:14px;gap:10px}.stage-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.stage-tiles .stage-tile:nth-child(n+3){padding:8px}.stage-foot{grid-template-columns:1fr 2fr 1fr;padding:8px 10px 10px}.stage-done,.stage-nav{min-height:60px;font-size:1rem}.countdown-side{display:none}.invite-code{width:100%}}.setlist-table td.col-title{min-width:260px}.setlist-table .title-cell{flex-wrap:nowrap}.setlist-table .title-cell .item-title{min-width:0}@media (max-height:860px){.stage-main{gap:10px;padding-top:12px;padding-bottom:12px}.stage-title{font-size:clamp(2rem,1rem + 3.5vw,3.4rem)}.stage-tile{padding:8px}.stage-tile strong{font-size:clamp(1.4rem,1rem + 1.6vw,2.2rem)}.stage-notes{padding:8px 12px}.stage-notes p{font-size:1.05rem}.stage-next{padding:6px 12px}}.stage-main>:not(.stage-chart):not(.stage-spacer){flex-shrink:0}.stage-chart{min-height:80px}@media (min-width:1024px) and (max-width:1279px){.shell{grid-template-columns:76px minmax(0,1fr)}.sidebar{align-items:center;padding:14px 10px}.nav-link span,.nav-section,.sidebar .brand-text,.sidebar-user .grow,.sync-card .grow,.sync-card .sync-count{display:none}.sync-card{justify-content:center;width:52px;height:44px;padding:0}.sidenav{width:100%}.nav-link{position:relative;justify-content:center;padding:8px;min-height:48px}.nav-link .badge{position:absolute;top:2px;right:2px;margin:0;padding:0 5px}.sidebar-user{justify-content:center;padding:6px;background:transparent;border:none}.container{padding:24px 24px 64px}}.drawer-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:flex;justify-content:flex-end;background:rgba(3,4,8,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fade-in .16s ease}.drawer{position:relative;width:min(420px,92vw);height:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) 0;background:var(--surface);border-left:1px solid var(--border-strong);box-shadow:var(--shadow-lg);animation:drawer-in .26s var(--ease-out)}.drawer .inspector{position:static;height:100%;max-height:none;border:none;border-radius:0;padding-top:20px}.drawer .inspector .panel-title{padding-right:48px}.drawer-close{position:absolute;top:calc(10px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));z-index:1;width:44px;height:44px;padding:0;border-radius:50%}@keyframes drawer-in{0%{transform:translateX(100%)}}@media (min-width:641px) and (max-width:1279px){.setlist-table td.col-title{min-width:180px}.setlist-table td,.setlist-table th{padding:10px 8px}.setlist-table .col-num{width:52px}.setlist-table .col-done{width:48px}.col-key{width:64px}.col-bpm{width:92px}.col-dur{width:64px}.row-delete,.row-more{display:none!important}.setlist-table tbody tr:not(.separator-row){cursor:pointer}.sl-hint{display:none}.sl-filter .search-field{min-width:0}}@media (pointer:coarse){.btn-xs{min-width:40px;min-height:40px}.btn-sm,.segmented button,.tabs button{min-height:42px}.check-btn{width:40px;height:40px}.col-actions .row{opacity:1}.row-grip{display:none}.note-btn{width:40px;height:40px}input,select,textarea{font-size:16px}}@media (min-width:641px) and (max-width:1023px){.sl-actions,.sl-tools{justify-content:flex-start}.sl-tools{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.sl-tools::-webkit-scrollbar{display:none}.modal-wide{max-width:min(720px,100%)}.quick-row{flex-wrap:wrap}.quick-input{flex-basis:100%}.quick-num{display:none}.quick-row .quick-opt{flex:1 1;width:auto}.stage-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:641px) and (max-width:900px){.stage-foot{grid-template-columns:1fr 1.6fr 1fr}.stage-done,.stage-nav{min-height:72px;font-size:1.2rem}}.chart-line.is-plain .chart-seg:before{content:none}@media (max-width:900px){.stage-top .stage-btn[aria-label="Mostra scaletta"]{display:none}}.media-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}.media-top .segmented button{gap:6px}.media-intro{margin:10px 0 14px}.media-list{gap:10px}.media-list,.media-song{display:flex;flex-direction:column}.media-song{gap:6px;padding:10px 12px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.media-song.is-empty{background:transparent;border-style:dashed}.media-song.is-over{border-color:var(--accent-border);background:var(--accent-soft)}.media-song-head{display:flex;align-items:center;gap:10px;min-width:0}.media-song-head .grow{display:flex;flex-direction:column;min-width:0}.media-song-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-num{font-family:var(--font-mono);font-weight:700;color:var(--faint);min-width:2ch}.media-stem-wrap{display:flex;align-items:center;gap:4px}.media-move{display:inline-flex;flex-direction:column}.media-move .btn-xs{min-height:18px;padding:0 4px}.media-stem,.media-upload{flex:1 1;display:flex;align-items:center;gap:8px;min-width:0;padding:6px 8px;border-radius:var(--radius-sm);background:var(--bg-elev);border:1px solid var(--border)}.media-stem-dot{flex:none;width:10px;height:10px;border-radius:3px;background:var(--accent)}.media-name.role-click .media-stem-dot,.media-stem.role-click .media-stem-dot{background:var(--cyan-strong)}.media-name.role-guide .media-stem-dot,.media-stem.role-guide .media-stem-dot{background:var(--violet-strong)}.media-name.role-monitor .media-stem-dot,.media-stem.role-monitor .media-stem-dot{background:var(--yes)}.media-stem.role-score .media-stem-dot{background:#f59e0b}.media-stem.role-video .media-stem-dot{background:var(--brand-magenta)}.media-names{display:flex;flex-wrap:wrap;gap:4px 12px;min-width:0}.media-name{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:100%;font-size:.85rem}.media-name .media-stem-dot{width:8px;height:8px}.media-name-text,.media-stem-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-stem-name{flex:0 1 220px;min-width:80px;font-weight:600}input.media-stem-name{font:inherit;font-weight:600;color:var(--text);background:transparent;border:1px solid transparent;border-radius:6px;padding:2px 6px}input.media-stem-name:hover{border-color:var(--border-strong)}input.media-stem-name:focus{outline:none;border-color:var(--accent);background:var(--surface)}.media-stem-file{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-stem-role{font:inherit;font-size:.8rem;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:6px;padding:3px 6px}.media-offset{display:inline-flex;align-items:center;gap:4px}.media-offset input{width:72px;font:inherit;font-size:.85rem;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:6px;padding:3px 6px}.media-progress{width:120px}.media-hint{margin:0}.rdock{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-note);display:flex;flex-direction:column;gap:8px;padding:8px max(12px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:var(--surface-2);border-top:1px solid var(--border-strong);box-shadow:var(--shadow-lg)}.shell-main:has(.rdock) .container{padding-bottom:calc(var(--dock-space, 80px) + 24px)}.shell-main:has(.rdock) .modal-backdrop{bottom:var(--dock-space,80px)}.shell-main:has(.rdock) .modal{max-height:calc(100dvh - var(--dock-space, 80px) - 32px)}@media (min-width:1024px){.rdock{left:var(--sidebar-w)}}@media (max-width:1023.98px){.shell-main:has(.tabbar) .rdock{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:8px}}.rdock-main{display:flex;align-items:center;gap:10px;min-width:0}.rdock-play{flex:none;width:44px;height:44px;padding:0;border-radius:50%}.rdock-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.rdock-title{font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rdock-seek{display:flex;align-items:center;gap:8px;min-height:24px;min-width:0}.rdock-seek input{flex:1 1;min-width:0;accent-color:var(--accent);touch-action:none}.rdock-seek .progress{flex:1 1;width:auto}.rdock-mix{display:flex;flex-direction:column;gap:6px}.rdock-msg{margin:0}.rehearsal-groups{display:flex;flex-wrap:wrap;gap:6px}.rehearsal-chip{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:2px 10px;font:inherit;font-size:.8rem;font-weight:600;color:var(--faint);text-decoration:line-through;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;cursor:pointer}.rehearsal-chip.is-on{color:var(--text);text-decoration:none;border-color:var(--accent)}.rehearsal-chip.group-click.is-on,.rehearsal-chip.group-metro.is-on{border-color:var(--cyan-strong)}.rehearsal-chip.group-guide.is-on{border-color:var(--violet-strong)}.rehearsal-mine{font-size:.7rem;text-decoration:none;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff}@media (max-width:640px){.media-stem{flex-wrap:wrap}.media-stem-file{flex-basis:100%;order:5}}.slide-text{width:100%;height:100%;display:grid;place-items:center;overflow:hidden;text-align:center;font-weight:700;line-height:1.25;color:#fff}.prompter-stage .stage-set{display:flex;flex-direction:column;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ps-status{font-size:.78rem;font-weight:600;color:#737373}.ps-main{flex:1 1;min-height:0;display:flex;flex-direction:column}.ps-current{flex:1 1;min-height:0;padding:3vh 4vw}.ps-next{height:18vh;flex:none;padding:0 6vw 2vh;color:#6b7280;border-top:1px solid #1a1a1a}.ps-error{margin:0 14px 8px}.ps-pad{display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid #1a1a1a}.ps-seq{flex:1 1;min-width:0;display:flex;gap:6px;overflow-x:auto;padding:2px}.ps-chip{--slide-color:#525252;flex:none;min-height:44px;padding:6px 14px;border-radius:var(--radius-pill);border:1px solid #333;border-left:4px solid var(--slide-color);background:#0d0d0d;color:#d4d4d4;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}.ps-chip.is-on{background:var(--slide-color);border-color:var(--slide-color);color:#000}.score-viewer{position:fixed;inset:0;z-index:var(--z-score);display:flex;flex-direction:column;background:#1a1f29}.score-bar{display:flex;align-items:center;gap:8px;min-height:48px;padding:max(4px,env(safe-area-inset-top)) 12px 4px;background:var(--bg);border-bottom:1px solid var(--border)}.score-bar .ellipsis{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.score-count{min-width:56px;text-align:center}.score-layout{height:32px;max-width:150px}.score-body{flex:1 1;min-height:0;display:flex;align-items:center;justify-content:center;gap:12px;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;touch-action:pan-y pinch-zoom}.score-page{display:flex;line-height:0}.score-page canvas{background:#fff;box-shadow:0 2px 16px rgba(0,0,0,.45)}.score-pedal{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;border:1px solid var(--border);font-size:12px;color:var(--muted);transition:background .15s,border-color .15s}.score-pedal.is-flash{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.score-dot{width:7px;height:7px;border-radius:50%;background:var(--yes)}@media (max-width:600px){.score-layout,.score-pedal{display:none}}.kbd{font-family:var(--font-mono,monospace);font-size:12px;padding:1px 6px;border-radius:4px;border:1px solid var(--border-strong,rgba(255,255,255,.12))}.pedal-test{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 12px;border:1px dashed var(--border-strong,rgba(255,255,255,.12));border-radius:var(--radius-sm,6px)}.pedal-test.is-hit{animation:pedal-hit .6s ease-out}@keyframes pedal-hit{0%{background:var(--accent-soft);border-color:var(--accent)}}.pedal-action{min-width:140px}.pedal-key{display:inline-flex;align-items:center;gap:4px}.pedal-key button{display:inline-flex;padding:0;border:0;background:none;color:var(--muted);cursor:pointer}.ps{--bubble-h:34px;position:fixed;inset:0;z-index:var(--z-stage);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto clamp(150px,32vh,340px) minmax(170px,1fr);background:var(--bg);color:var(--text);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);animation:fade-in .16s ease}.ps-top{display:flex;align-items:center;gap:10px;min-width:0;padding:8px 10px;background:var(--bg-elev);border-bottom:1px solid var(--border-strong)}.ps-lcd{flex:none;display:flex;align-items:stretch;height:56px;border-radius:var(--radius-sm);background:#070a10;border:1px solid var(--border-strong);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.ps-tempo{flex-direction:column;justify-content:center;align-items:center;min-width:88px;padding:0 12px}.ps-lcd-big{font-size:21px;font-weight:700;line-height:1.1}.ps-lcd-small{font-size:12px;font-weight:600;color:var(--accent-light)}.ps-lcd-cell{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:0 12px}.ps-lcd-cell+.ps-lcd-cell{border-left:1px solid var(--border-strong)}.ps-bars{font-size:25px;font-weight:700;line-height:1;color:var(--accent-light);min-width:78px}.ps-time{align-items:flex-end;font-size:14px;font-weight:600;color:var(--text-2)}.ps-left{font-size:22px;font-weight:700;line-height:1;color:var(--text)}.ps-leds{display:flex;gap:5px;height:10px}.ps-leds i{width:10px;height:10px;border-radius:50%;background:var(--surface-3)}.ps-leds i.on{background:var(--accent);box-shadow:0 0 8px var(--accent)}.ps-leds i.on.first{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.ps-play,.ps-round{flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);cursor:pointer}.ps-round{width:48px;height:48px}.ps-play{width:62px;height:62px;color:var(--yes)}.ps-play svg{fill:currentColor}.ps-play:disabled,.ps-round:disabled{opacity:.4;cursor:default}.ps-play.is-on{background:var(--yes);border-color:var(--yes);color:var(--yes-ink)}.ps-word{font-size:10px;font-weight:800;letter-spacing:.04em;color:var(--text-2)}.ps-word.is-fade{border-color:var(--warn);color:var(--warn)}.ps-word.is-pad{background:var(--violet-soft);border-color:var(--violet);color:var(--violet)}.ps-song{flex:1 1;min-width:0;padding-left:4px}.ps-song h1{margin:0;font-size:clamp(19px,2.6vw,42px);line-height:1.12;font-weight:800;text-overflow:ellipsis}.ps-facts,.ps-song h1{overflow:hidden;white-space:nowrap}.ps-facts{display:flex;align-items:center;gap:10px;margin-top:3px;font-size:14px;color:var(--text-2)}.ps-key{padding:1px 9px;background:var(--accent);color:var(--accent-ink);font-weight:800}.ps-key,.ps-tool{border-radius:var(--radius-sm)}.ps-tool{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:60px;height:56px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-2);font-size:11px;font-weight:700;cursor:pointer}.ps-tiles{display:flex;gap:8px;min-width:0;padding:8px 10px;overflow-x:auto;border-bottom:1px solid var(--border-strong)}.ps-tile{flex:none;display:flex;flex-direction:column;justify-content:center;gap:2px;width:164px;height:64px;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);text-align:left;cursor:pointer;position:relative;overflow:hidden}.ps-tile.is-selected:not(.is-loaded){border-color:var(--text-2)}.ps-tile-dl{position:absolute;right:5px;bottom:5px;display:grid;place-items:center;width:20px;height:20px;border-radius:4px;color:var(--warn)}.ps-tile-dl,.ps-tile-progress{background:var(--surface-3);pointer-events:none}.ps-tile-progress{position:absolute;left:0;right:0;bottom:0;height:4px}.ps-tile-progress>span{display:block;height:100%;background:var(--accent);transition:width .2s linear}.ps-tile.is-downloading .ps-tile-sub{color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ps-tile:disabled{opacity:.45;cursor:default}.ps-tile.is-loaded{opacity:1;background:var(--accent-soft);border:2px solid var(--accent)}.ps-tile strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-tile-top{display:flex;align-items:center;gap:6px}.ps-tile-num{font-size:11px;font-weight:700;color:var(--faint)}.ps-tile-key{padding:0 5px;border-radius:3px;background:var(--surface-3);font-size:11px}.ps-tile-sub{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-tile-sep{flex:none;align-self:center;max-width:120px;padding-left:8px;border-left:2px solid var(--border-strong);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.ps-wave-zone{min-height:0;display:flex;flex-direction:column;gap:6px;padding:6px 10px 8px}.ps-wavebar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-height:34px}.ps-grow{flex:1 1}.ps-now{font-size:15px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-quant{display:flex;border-radius:var(--radius-sm);border:1px solid var(--border-strong);overflow:hidden}.ps-quant button{height:32px;padding:0 10px;border:none;background:var(--surface);color:var(--muted);font-size:12px;font-weight:600;cursor:pointer}.ps-quant button+button{border-left:1px solid var(--border-strong)}.ps-quant button.is-on{background:var(--accent-soft);color:var(--accent-light)}.ps-wave{position:relative;flex:1 1;min-height:0;border-radius:var(--radius-sm);background:#070a10;border:1px solid var(--border-strong);overflow:hidden}.ps-wave canvas{position:absolute;top:0;left:0}.ps-wave-track{position:absolute;inset:0;cursor:pointer}.ps-wave-empty{left:0;right:0;bottom:12px;text-align:center;font-size:13px;color:var(--muted)}.ps-band,.ps-wave-empty{position:absolute;pointer-events:none}.ps-band{top:var(--bubble-h);bottom:0;background:color-mix(in srgb,var(--sec) 14%,transparent);border-left:1px solid color-mix(in srgb,var(--sec) 60%,transparent)}.ps-sec{position:absolute;top:0;height:var(--bubble-h);padding:3px 2px 3px 3px;pointer-events:none}.ps-bubble,.ps-sec{display:flex;min-width:0}.ps-bubble{flex:1 1;align-items:center;gap:6px;padding:0 6px 0 3px;border-radius:999px;border:1px solid color-mix(in srgb,var(--sec) 55%,transparent);background:color-mix(in srgb,var(--sec) 22%,var(--surface));color:color-mix(in srgb,var(--sec) 35%,#fff);font-size:12px;font-weight:700;text-align:left;pointer-events:auto;cursor:pointer;overflow:hidden}.ps-bubble span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-bubble-num{place-items:center;width:20px;height:20px;background:var(--sec);color:var(--accent-ink);font-size:10px;font-style:normal}.ps-bubble-loop,.ps-bubble-num{flex:none;display:grid;border-radius:50%}.ps-bubble-loop{place-items:center;width:26px;margin-left:3px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);pointer-events:auto;cursor:pointer}.ps-bubble-loop.is-on{background:var(--cyan-strong);border-color:var(--cyan-strong);color:#031417}.ps-sec.is-current .ps-bubble{background:var(--sec);border-color:var(--sec);color:var(--accent-ink)}.ps-sec.is-current .ps-bubble-num{background:var(--accent-ink);color:var(--sec)}.ps-sec.is-queued .ps-bubble{border:2px solid var(--accent-light);animation:ps-queued .7s steps(2,jump-none) infinite}.ps-sec.is-loop .ps-bubble{border:2px solid var(--cyan)}@keyframes ps-queued{0%{background:color-mix(in srgb,var(--accent) 50%,var(--surface))}to{background:var(--surface)}}.ps-played{left:0;top:var(--bubble-h);background:rgba(7,10,16,.58)}.ps-head,.ps-played{position:absolute;bottom:0;pointer-events:none}.ps-head{top:0;width:2px;margin-left:-1px;background:#fff;box-shadow:0 0 6px rgba(255,255,255,.7)}.ps-loop-range{background:rgba(34,211,238,.14);box-shadow:inset 0 0 0 2px var(--cyan)}.ps-jump-at,.ps-loop-range{position:absolute;top:var(--bubble-h);bottom:0;pointer-events:none}.ps-jump-at{width:2px;margin-left:-1px;background:var(--accent-light)}.ps-mixer{min-height:0;display:flex;gap:4px;padding:8px 10px 10px;background:var(--bg-elev);border-top:1px solid var(--border-strong)}.ps-console{flex:none;width:88px;display:flex;flex-direction:column;gap:4px;margin-right:4px}.ps-cbtn{flex:1 1;max-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);font-size:12px;font-weight:700;cursor:pointer}.ps-cbtn:disabled{opacity:.4;cursor:default}.ps-cbtn.is-on{background:var(--cyan-strong);border-color:var(--cyan-strong);color:#031417}.ps-tracks{flex:1 1;min-width:0;display:flex;gap:4px;overflow-x:auto;margin-left:6px}.ps-strip{--sec:var(--accent);flex:1 0 76px;max-width:120px;min-height:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:5px 4px 4px;border-radius:var(--radius-sm);background:var(--surface);border-top:3px solid var(--sec)}.ps-strip.group-click,.ps-strip.group-metro{--sec:var(--cyan)}.ps-strip.group-guide{--sec:var(--violet)}.ps-strip-fixed{flex:0 0 82px;background:var(--surface-2)}.ps-db{font-size:11px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ps-fader-row{flex:1 1;min-height:0;display:flex;justify-content:center}.fader-wrap{--cap-w:28px;--cap-h:34px;position:relative;flex:none;display:flex;justify-content:flex-end;width:var(--cap-w);min-height:60px}.fader-wrap.has-scale{width:calc(var(--cap-w) + 17px)}.fader-scale{position:absolute;top:0;bottom:0;right:0;width:var(--cap-w);pointer-events:none}.fader-scale i{position:absolute;left:3px;right:3px;height:1px;top:calc(var(--cap-h) / 2 + (1 - var(--p)) * (100% - var(--cap-h)));background:rgba(255,255,255,.16)}.fader-scale i.is-zero{left:0;right:0;background:rgba(255,255,255,.5)}.fader-scale i[data-l]:before{content:attr(data-l);position:absolute;right:calc(100% + 3px);top:-5px;font-size:9px;font-style:normal;line-height:10px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.fader-scale i.is-zero:before{right:calc(100% + 3px)}input.fader{--fader-cap:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 34' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23555b66'/%3E%3Cstop offset='0.1' stop-color='%232b3038'/%3E%3Cstop offset='0.5' stop-color='%2315181d'/%3E%3Cstop offset='0.9' stop-color='%232b3038'/%3E%3Cstop offset='1' stop-color='%2307080a'/%3E%3C/linearGradient%3E%3ClinearGradient id='s' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23fff' stop-opacity='.12'/%3E%3Cstop offset='.45' stop-color='%23fff' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23000' stop-opacity='.28'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M1 2Q1 1 2 1H26Q27 1 27 2Q24.5 17 27 32Q27 33 26 33H2Q1 33 1 32Q3.5 17 1 2Z' fill='url(%23g)' stroke='%23000' stroke-width='.7'/%3E%3Cpath d='M1 2Q1 1 2 1H26Q27 1 27 2Q24.5 17 27 32Q27 33 26 33H2Q1 33 1 32Q3.5 17 1 2Z' fill='url(%23s)'/%3E%3Cpath d='M3 4.5H25M3 7.5H25M3 10.5H25M3.5 13.5H24.5M3.5 20.5H24.5M3 23.5H25M3 26.5H25M3 29.5H25' stroke='rgba(0,0,0,.8)' stroke-width='.9'/%3E%3Cpath d='M3 5.3H25M3 8.3H25M3 11.3H25M3.5 14.3H24.5M3.5 21.3H24.5M3 24.3H25M3 27.3H25M3 30.3H25' stroke='rgba(255,255,255,.16)' stroke-width='.6'/%3E%3C/svg%3E");--fader-line:var(--sec,#e4e4e7);position:relative;writing-mode:vertical-lr;direction:rtl;width:var(--cap-w);height:auto;align-self:stretch;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;margin:0;cursor:-webkit-grab;cursor:grab;touch-action:none}input.fader.is-light{--fader-cap:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 34' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23ffffff'/%3E%3Cstop offset='0.1' stop-color='%23eeeff1'/%3E%3Cstop offset='0.5' stop-color='%23d9dbdf'/%3E%3Cstop offset='0.9' stop-color='%23c4c7cc'/%3E%3Cstop offset='1' stop-color='%238e9298'/%3E%3C/linearGradient%3E%3ClinearGradient id='s' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23fff' stop-opacity='.12'/%3E%3Cstop offset='.45' stop-color='%23fff' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23000' stop-opacity='.28'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M1 2Q1 1 2 1H26Q27 1 27 2Q24.5 17 27 32Q27 33 26 33H2Q1 33 1 32Q3.5 17 1 2Z' fill='url(%23g)' stroke='%233f3f46' stroke-width='.7'/%3E%3Cpath d='M1 2Q1 1 2 1H26Q27 1 27 2Q24.5 17 27 32Q27 33 26 33H2Q1 33 1 32Q3.5 17 1 2Z' fill='url(%23s)'/%3E%3Cpath d='M3 4.5H25M3 7.5H25M3 10.5H25M3.5 13.5H24.5M3.5 20.5H24.5M3 23.5H25M3 26.5H25M3 29.5H25' stroke='rgba(0,0,0,.28)' stroke-width='.9'/%3E%3Cpath d='M3 5.3H25M3 8.3H25M3 11.3H25M3.5 14.3H24.5M3.5 21.3H24.5M3 24.3H25M3 27.3H25M3 30.3H25' stroke='rgba(255,255,255,.9)' stroke-width='.6'/%3E%3C/svg%3E");--fader-line:#18181b}input.fader:active{cursor:-webkit-grabbing;cursor:grabbing}input.fader:focus-visible{outline:none}input.fader::-webkit-slider-runnable-track{width:6px;border-radius:3px;background:linear-gradient(90deg,#000,#222936 55%,#000);box-shadow:0 0 0 1px rgba(255,255,255,.06)}input.fader::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--cap-w);height:var(--cap-h);margin-left:calc(3px - var(--cap-w) / 2);border:0;border-radius:0;background:linear-gradient(var(--fader-line),var(--fader-line)) 50% /64% 2px no-repeat,var(--fader-cap) center /100% 100% no-repeat;filter:drop-shadow(0 3px 3px rgba(0,0,0,.6))}input.fader:active::-webkit-slider-thumb,input.fader:hover::-webkit-slider-thumb{filter:drop-shadow(0 3px 3px rgba(0,0,0,.6)) brightness(1.18)}input.fader:focus-visible::-webkit-slider-thumb{filter:drop-shadow(0 0 2px var(--fader-line)) brightness(1.18)}input.fader::-moz-range-track{width:6px;border-radius:3px;background:linear-gradient(90deg,#000,#222936 55%,#000)}input.fader::-moz-range-thumb{width:var(--cap-w);height:var(--cap-h);border:0;border-radius:0;background:linear-gradient(var(--fader-line),var(--fader-line)) 50% /64% 2px no-repeat,var(--fader-cap) center /100% 100% no-repeat}.ps-pad-key{height:24px;border-radius:4px;border:1px solid var(--border-strong);background:var(--surface);font-size:11px}.ps-name,.ps-pad-key{width:100%;color:var(--text)}.ps-name{flex:none;min-height:34px;padding:0 4px;border-radius:4px;border:1px solid color-mix(in srgb,var(--sec) 45%,transparent);background:color-mix(in srgb,var(--sec) 18%,var(--surface));font-size:12px;font-weight:700;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-strip.is-muted .ps-name{background:var(--danger-soft);border-color:var(--danger);color:var(--danger);text-decoration:line-through}.ps-name.ps-x2{min-height:26px;margin-top:4px;opacity:.6}.ps-name.ps-x2.is-on{opacity:1;background:color-mix(in srgb,var(--sec) 45%,var(--surface))}.ps-strip.is-muted .ps-name.ps-x2{text-decoration:none}.ps-strip.is-muted .ps-fader-row{opacity:.45}@media (max-width:760px){.ps{grid-template-rows:auto auto clamp(130px,28vh,260px) minmax(150px,1fr)}.ps-top{flex-wrap:wrap}.ps-back,.ps-tempo{display:none}.ps-song{order:-1;flex-basis:100%}.ps-console{width:70px}}@media (prefers-reduced-motion:reduce){.ps-sec.is-queued .ps-bubble{animation:none;background:color-mix(in srgb,var(--accent) 30%,var(--surface))}}.chart-editor-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.chart-editor-head .row{flex-wrap:wrap}.chart-editor .chart-preview{min-height:240px}.chart-wide-backdrop{position:fixed;inset:0;z-index:56;display:flex;padding:20px;background:rgba(0,0,0,.65)}.chart-editor.is-wide{flex:1 1;min-height:0;width:min(1200px,100%);margin:0 auto;padding:16px 18px;display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elev)}.chart-editor.is-wide textarea{flex:1 1;min-height:0;resize:none;font-size:1rem;line-height:1.55}.chart-editor.is-wide .chart-preview{flex:1 1;max-height:none;font-size:1.1rem}@media (max-width:640px){.chart-wide-backdrop{padding:0}.chart-editor.is-wide{border-radius:0}}.chart-info{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:auto;padding:0;border:1px solid var(--border-strong,var(--border));border-radius:999px;background:transparent;color:var(--muted);cursor:pointer}.chart-info.is-on,.chart-info:hover{border-color:var(--accent);color:var(--accent-light)}.chart-legend{padding:10px 12px 12px;border:1px solid var(--border-strong,var(--border));border-radius:var(--radius-sm,6px);background:var(--bg);font-size:12px;line-height:1.4;text-transform:none;letter-spacing:0;color:var(--text-2,var(--text));max-height:340px;overflow:auto}.chart-legend-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;color:var(--text)}.chart-legend-head .chart-info{width:22px;height:22px;margin-left:0}.chart-legend-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:12px 20px;gap:12px 20px}.chart-legend h4{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.chart-legend p{margin:6px 0 0}.chart-legend-list{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.chart-legend-list li{display:flex;align-items:center;gap:8px}.chart-legend-list .chart-badge-sec{flex:none;font-size:11px;font-weight:700}.chart-legend-expr{flex:none;min-width:86px;color:var(--text)}.chart-legend-syntax{display:grid;grid-template-columns:auto 1fr;grid-gap:5px 10px;gap:5px 10px;margin:0}.chart-legend-syntax dt{white-space:nowrap}.chart-legend-syntax dd{margin:0}.chart-legend code{font-family:var(--font-mono);font-size:11px;color:var(--accent-light)}.chart-editor.is-wide .chart-legend{max-height:45vh}.account-card{max-width:560px;margin-bottom:16px}.plan-name{display:flex;align-items:baseline;gap:10px}.plan-name h2{margin:0}.usage{display:flex;flex-direction:column;gap:6px}.usage-head{display:flex;justify-content:space-between;gap:12px}.usage-bar{height:6px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.usage-bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#16a34a,#22c55e);transition:width .4s var(--ease-out)}.usage-warn .usage-bar>span{background:var(--warn)}.usage-full .usage-bar>span{background:var(--danger)}.usage-alert{color:var(--danger)}