@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(../media/figtree-latin-ext-wght-normal.3ui8gg3w7xij5.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(../media/figtree-latin-wght-normal.30wi0xp2m6ck_.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-cyrillic-ext-wght-normal.2yptelh8aqa_5.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-cyrillic-wght-normal.0s9lyv6-dq8sg.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-greek-wght-normal.0injkow7o_js7.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-vietnamese-wght-normal.04ex7n90-6tif.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-latin-ext-wght-normal.1wlj3nn-4xnfp.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-latin-wght-normal.2odd3csjijl0b.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-body);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.lowercase{text-transform:lowercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--font-ui:"Figtree Variable", "Figtree", system-ui, sans-serif;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--font-display:var(--font-ui);--font-body:var(--font-ui);--bg:#111217;--bg-deep:#0b0c10;--bg-raised:#191a21;--bg-elev:#282a35;--ink:#fff;--muted:#aeb0be;--faint:#6a6a6a;--accent:#9c7bff;--accent-strong:#b39dff;--accent-soft:#9c7bff24;--panel:#191a21;--surface:#ffffff12;--surface-strong:#ffffff24;--line:#ffffff14;--danger:#f15e6c;--warn:#ffa42b;--ok:#9c7bff;--shadow:0 8px 24px #00000080;--tint:40, 40, 40;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--r-sm:4px;--r-md:8px;--r-lg:12px}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);font-family:var(--font-body), sans-serif;background:radial-gradient(1100px 560px at 8% -12%, #9c7bff2e 0%, transparent 55%), radial-gradient(900px 480px at 100% 0%, #0009 0%, transparent 48%), linear-gradient(180deg, var(--bg) 0%, var(--bg-deep) 100%);margin:0}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}.site-shell{width:min(1120px,100% - 2rem);margin:0 auto;padding:1.25rem 0 4rem}.site-shell:has(.song-studio.wide){width:min(1680px,100% - 1rem);padding-top:.75rem;padding-bottom:1.5rem}.site-shell:has(.song-studio.wide) .site-header{margin-bottom:.85rem}.song-studio.wide{padding:.85rem 1rem 1rem}.site-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.brand{font-family:var(--font-display), serif;letter-spacing:-.03em;color:var(--ink);font-size:1.4rem;font-weight:700;text-decoration:none}.brand-with-logo{align-items:center;gap:.55rem;display:inline-flex}.brand-logo{border-radius:.7rem;box-shadow:0 8px 18px #00000059}.brand:hover{text-decoration:none}.site-nav{flex-wrap:wrap;gap:.85rem 1.1rem;display:flex}.hero{align-content:center;gap:1.25rem;min-height:calc(100vh - 6rem);padding:2rem 0 4rem;display:grid;position:relative;overflow:hidden}.hero:before{content:"";aspect-ratio:1;filter:blur(.2px);pointer-events:none;background:linear-gradient(145deg,#9c7bff59,#0009) 0 0/cover,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Ccircle cx='80' cy='80' r='54' fill='none' stroke='%23e8efe9' stroke-opacity='.18' stroke-width='10'/%3E%3Ccircle cx='80' cy='80' r='10' fill='%23e8efe9' fill-opacity='.25'/%3E%3C/svg%3E") 0 0/120px;border-radius:40% 60% 55% 45%;width:min(52vw,520px);animation:14s ease-in-out infinite alternate drift;position:absolute;inset:8% -10% auto auto}.hero-brand{font-family:var(--font-display), serif;letter-spacing:-.05em;max-width:10ch;margin:0;font-size:clamp(3.4rem,10vw,6.5rem);line-height:.92;animation:.8s both rise}.hero h1{font-family:var(--font-display), serif;letter-spacing:-.03em;max-width:18ch;margin:0;font-size:clamp(1.6rem,3.5vw,2.3rem);font-weight:600;animation:.9s both rise}.hero p{max-width:36ch;color:var(--muted);margin:0;font-size:1.05rem;animation:1s both rise}.hero .btn{width:fit-content;animation:1.1s both rise}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);margin:0 0 .35rem;font-size:.72rem;font-weight:700}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.75rem 1.25rem;font-weight:650;text-decoration:none;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}a.btn:hover{text-decoration:none}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--accent);color:#000}.btn:disabled,.btn.primary:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.ghost{border-color:var(--line);color:var(--ink);background:0 0}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:1.25rem;padding:1.25rem}.panel h2{font-family:var(--font-display), serif;letter-spacing:-.03em;margin:0;font-size:1.7rem}.playlist-grid,.track-list{gap:.75rem;display:grid}.playlist-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.playlist-card,.track-row{background:var(--surface);color:inherit;border:1px solid #0000;border-radius:1rem;align-items:center;gap:.85rem;padding:.75rem;text-decoration:none;transition:border-color .16s,transform .16s,background .16s;display:flex}.playlist-card:hover,.track-row:hover{background:var(--surface-strong);border-color:#9c7bff73;text-decoration:none;transform:translateY(-2px)}.playlist-card img,.track-row img,.cover{object-fit:cover;background:var(--accent-soft);border-radius:.7rem;width:64px;height:64px}.playlist-card{flex-direction:column;align-items:stretch}.playlist-card img{width:100%;height:160px}.playlist-card strong,.track-row strong{margin-bottom:.2rem;display:block}.provider-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.provider-card{text-align:left;border:1px solid var(--line);background:var(--surface);cursor:pointer;font:inherit;color:inherit;border-radius:1rem;padding:.9rem}.provider-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#9c7bff29}.provider-card:disabled{opacity:.55;cursor:not-allowed}.provider-card strong{margin:.35rem 0;display:block}.provider-card p,.provider-card em{color:var(--muted);margin:0;font-size:.9rem}.badge{text-transform:uppercase;letter-spacing:.08em;background:var(--bg-deep);border-radius:999px;padding:.2rem .45rem;font-size:.7rem;font-weight:700;display:inline-block}.badge.high{color:var(--accent-strong);background:#9c7bff38}.badge.medium{color:var(--warn);background:#282a35}.badge.reference{color:#aeb0be;background:#282a35}.actions-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.segmented{border:1px solid var(--line);background:var(--surface);border-radius:999px;display:inline-flex;overflow:hidden}.segmented button{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:.55rem .95rem}.chord-strip{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.chord-chip{border:1px solid var(--line);background:var(--surface-strong);font:inherit;color:var(--ink);cursor:pointer;border-radius:.7rem;padding:.45rem .7rem;font-weight:700}.chord-chip.on{background:var(--accent);border-color:var(--accent);color:#000}.instrument-stage{border-top:1px solid var(--line);padding-top:1rem}.instrument-stage h3{font-family:var(--font-display), serif;margin:0 0 .75rem;font-size:2rem}.piano{width:min(100%,420px);height:140px;margin-top:.5rem;position:relative}.piano-whites{grid-template-columns:repeat(7,1fr);gap:2px;height:100%;display:grid}.piano-key.white{background:#e8e8e8;border:1px solid #00000059;border-radius:0 0 .4rem .4rem;position:relative}.piano-key.white span{text-align:center;color:var(--muted);font-size:.7rem;font-weight:700;position:absolute;bottom:.35rem;left:0;right:0}.piano-blacks{position:absolute;inset:0 0 40%}.piano-key.black{color:#e8e8e8;background:#24312c;border-radius:0 0 .3rem .3rem;justify-content:center;align-items:flex-end;width:9%;height:100%;padding-bottom:.25rem;font-size:.55rem;font-weight:700;display:flex;position:absolute}.guitar{width:min(100%,220px)}.guitar-nut,.guitar-fret-row{text-align:center;grid-template-columns:repeat(6,1fr);display:grid}.guitar-nut{margin-bottom:.25rem;font-weight:700}.guitar-fretboard{background:#191a21;border:2px solid #aeb0be;border-radius:.4rem;overflow:hidden}.guitar-fret-row{border-bottom:1px solid #3d3f4d;min-height:34px}.guitar-fret-row:last-child{border-bottom:0}.guitar-cell{border-right:1px solid #3d3f4d;place-items:center;display:grid}.guitar-cell:last-child{border-right:0}.dot{background:var(--accent);border-radius:50%;width:16px;height:16px;box-shadow:inset 0 0 0 2px #ffffff59}.link-list{margin:.75rem 0;padding-left:1.1rem}.chart-cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin:1rem 0;display:grid}.chart-card{border:1px solid var(--line);background:var(--surface);color:inherit;border-radius:1rem;flex-direction:column;gap:.35rem;padding:.9rem;text-decoration:none;transition:transform .16s,border-color .16s;display:flex}.chart-card:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.chart-card span{color:var(--muted);font-size:.9rem}.key-picker{border-top:1px solid var(--line);margin-top:.5rem;padding-top:.75rem}.field{color:var(--muted);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.field select{border:1px solid var(--line);min-width:7rem;font:inherit;color:var(--ink);background:#121a17;border-radius:.7rem;padding:.55rem .7rem}.playlist-card .badge{margin-bottom:.4rem}.studio-grid{grid-template-columns:minmax(260px,.95fr) minmax(280px,1.05fr);gap:1.25rem;display:grid}.studio-grid.lyrics-forward{grid-template-columns:minmax(190px,.48fr) minmax(560px,2.6fr);align-items:start;gap:1rem}.studio-cover{aspect-ratio:1;object-fit:cover;width:min(100%,320px);box-shadow:var(--shadow);border-radius:1rem;margin:.75rem 0}.compact-cover{width:min(100%,132px);margin:.35rem 0}.compact-player .player-title{font-size:1.05rem}.compact-player .provider-grid.compact{grid-template-columns:1fr;gap:.45rem}.compact-player .provider-card{padding:.55rem .65rem}.compact-player .provider-card strong{font-size:.9rem}.studio-player,.studio-chords{min-width:0}.studio-chords{border-left:1px solid var(--line);flex-direction:column;min-height:min(88vh,980px);padding-left:1rem;display:flex}.player-title{font-size:1.25rem;line-height:1.25}.compact-embed iframe{height:80px!important}.side-providers{margin-top:.75rem}.now-chord-dock{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#9c7bff29,#191a21);border:1px solid #9c7bff59;border-radius:.85rem;flex:none;grid-template-columns:auto 1fr;align-items:center;gap:.65rem;margin-bottom:.45rem;padding:.55rem .75rem;display:grid;position:sticky;top:.35rem;box-shadow:0 12px 28px #00000059}.capo-hint{background:#9c7bff1a;border:1px solid #9c7bff66;border-radius:.55rem;margin:.45rem 0 0;padding:.35rem .55rem;line-height:1.2}.capo-hint .eyebrow{letter-spacing:.16em;margin:0 0 .15rem;font-size:.68rem}.capo-hint-value{color:var(--ink);letter-spacing:.01em;margin:0;font-size:.92rem;font-weight:700}.chord-pair{grid-template-columns:1fr 1fr;gap:.55rem;min-width:0;display:grid}.chord-slot{background:#00000038;border:1px solid #0000;border-radius:.7rem;min-width:0;padding:.35rem .5rem}.chord-slot.current{background:#9c7bff1f;border-color:#9c7bff73}.chord-slot.next{opacity:.92;border-color:#3d3f4d}.now-chord-name{font-family:var(--font-display), serif;letter-spacing:-.04em;margin:0 0 .2rem;font-size:clamp(1.35rem,2.4vw,1.9rem);line-height:1}.now-chord-name.next-name{color:var(--muted);font-size:clamp(1.2rem,2.1vw,1.65rem)}.now-chord-diagram .piano{width:min(100%,260px);height:68px;margin-top:0}.chord-slot.next .piano{opacity:.9;height:60px}.chord-slot .guitar{width:min(100%,150px)}.sheet-toolbar{flex:none;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.35rem;display:flex}.provider-grid.compact{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.progress-track{background:#3d3f4d;border-radius:999px;width:100%;height:8px;margin:.75rem 0 .35rem;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), #1f8f74);height:100%;transition:width 80ms linear}.transport{gap:.65rem;margin:.35rem 0 .5rem;display:grid}.transport-actions{margin-bottom:0}.transport-nav{min-width:3.4rem}.queue-position{text-align:center;margin:0}.next-countdown{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:radial-gradient(700px 420px at 50% 40%,#9c7bff29,#0000 60%),#0009;place-items:center;padding:1.25rem;animation:.42s ease-out countdown-veil;display:grid;position:fixed;inset:0}.next-countdown-card{text-align:center;background:linear-gradient(165deg,#191a21,#191a21);border:1px solid #282a35;border-radius:1.35rem;justify-items:center;gap:1rem;width:min(360px,100%);padding:1.5rem 1.35rem 1.25rem;animation:.48s cubic-bezier(.2,.8,.2,1) countdown-rise;display:grid;position:relative;overflow:hidden;box-shadow:0 28px 60px #00000080,inset 0 1px #ffffff0f}.next-countdown-glow{pointer-events:none;background:radial-gradient(closest-side,#282a35,#0000 75%);height:70%;position:absolute;inset:-40% -20% auto}.next-countdown-label{letter-spacing:.14em;text-transform:uppercase;color:var(--warn);margin:0}.next-countdown-ring-wrap{place-items:center;width:8.5rem;height:8.5rem;display:grid;position:relative}.next-countdown-ring{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.next-countdown-ring-track,.next-countdown-ring-progress{fill:none;stroke-width:6px}.next-countdown-ring-track{stroke:#3d3f4d}.next-countdown-ring-progress{stroke:var(--accent-strong);stroke-linecap:round;filter:drop-shadow(0 0 8px #9c7bff73);transition:stroke-dasharray 80ms linear}.next-countdown-number{font-family:var(--font-display), serif;color:var(--ink);text-shadow:0 0 24px #9c7bff59;font-size:3rem;font-weight:700;line-height:1;animation:1s ease-in-out countdown-pulse;position:relative}.next-countdown-track{text-align:left;border:1px solid var(--line);background:#ffffff0a;border-radius:.95rem;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;width:100%;padding:.65rem .75rem;display:grid}.next-countdown-track strong{font-size:.98rem;display:block}.next-countdown-cover{object-fit:cover;border-radius:.65rem;width:3.1rem;height:3.1rem;box-shadow:0 8px 18px #00000059}.next-countdown-actions{justify-content:center;width:100%}@keyframes countdown-veil{0%{opacity:0}to{opacity:1}}@keyframes countdown-rise{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes countdown-pulse{0%{opacity:.55;transform:scale(.86)}35%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}.seek-control{grid-template-columns:auto 1fr auto;align-items:center;gap:.55rem;display:grid}.seek-time{font-variant-numeric:tabular-nums;color:var(--muted);min-width:2.4rem;font-size:.82rem}.seek-slider{appearance:none;cursor:pointer;background:#3d3f4d;border-radius:999px;outline:none;width:100%;height:8px}.seek-slider::-webkit-slider-thumb{appearance:none;background:var(--accent-strong);border:2px solid #000;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 1px #9c7bff80}.seek-slider::-moz-range-thumb{background:var(--accent-strong);border:2px solid #000;border-radius:50%;width:16px;height:16px}.embed-wrap{border:1px solid var(--line);border-radius:.9rem;margin-top:1rem;overflow:hidden}.artist-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.artist-card{background:var(--surface);color:inherit;border:1px solid #0000;border-radius:1rem;align-items:center;gap:.75rem;padding:.7rem;text-decoration:none;transition:border-color .16s,transform .16s;display:flex}.artist-card:hover{border-color:#9c7bff73;text-decoration:none;transform:translateY(-2px)}.artist-card.static{cursor:default}.artist-card.static:hover{transform:none}.artist-card img{object-fit:cover;background:var(--accent-soft);border-radius:.65rem;width:52px;height:52px}.section-title{font-family:var(--font-display), serif;letter-spacing:-.02em;margin:1.25rem 0 .75rem;font-size:1.25rem}.sheet-heading{font-family:var(--font-display), serif;letter-spacing:-.03em;margin:0 0 .75rem;font-size:1.45rem}.chord-sheet{border:1px solid var(--line);background:linear-gradient(#191a21,#191a21);border-radius:1rem;max-height:min(84vh,980px);margin:.25rem 0 0;padding:1.1rem 1.35rem;overflow:auto;box-shadow:inset 0 1px #ffffff0a}.follow-sheet{flex:auto;height:min(84vh,980px);min-height:min(70vh,820px);max-height:none;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#000 6% 90%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 6% 90%,#0000 100%)}.follow-track{will-change:transform;padding-top:1.25rem}.follow-spacer{height:55vh}.ug-sheet .sheet-line-wrap{margin:0 0 1rem}.ug-sheet .ug-word{font-size:1.22rem}.ug-sheet .ug-chord{font-size:1.12rem}.sheet-section-label{font-family:var(--font-display), serif;letter-spacing:.08em;text-transform:uppercase;color:#b39dff;margin:.15rem 0 .45rem;font-size:.95rem;font-weight:700}.sheet-line-wrap.intro-wrap{background:0 0;border:1px dashed #3d3f4d;border-radius:.75rem;margin-bottom:1rem;padding:.35rem .5rem .55rem}.ug-line{opacity:.55;border-radius:.45rem;flex-wrap:wrap;align-items:flex-end;gap:0;padding:.35rem .45rem;transition:none;display:flex}.follow-sheet.playing .ug-line{transition:none}.ug-line.intro{opacity:.72}.ug-line.active{opacity:1;background:#9c7bff29}.ug-token{flex-direction:column;align-items:flex-start;min-width:0;display:inline-flex}.ug-chord{color:#fff;white-space:pre;text-align:left;text-shadow:0 0 12px #282a35;background:0 0;border:0;min-height:1.15em;margin:0;padding:0;font-family:Courier New,Courier,monospace;font-size:1.08rem;font-weight:800;line-height:1.1;display:block}button.ug-chord.clickable{cursor:pointer;border-radius:.25rem;transition:color .14s,background .14s}button.ug-chord.clickable:hover{color:#fff;text-underline-offset:2px;background:#282a35;text-decoration:underline}.ug-chord.on{color:#fff;text-underline-offset:2px;text-shadow:0 0 16px #282a35;text-decoration:underline}.ug-word{color:var(--ink);white-space:pre-wrap;font-family:Courier New,Courier,monospace;font-size:1.12rem;font-weight:600;line-height:1.4;display:block}.ug-line.intro .ug-word{color:var(--muted);font-size:.95rem}.key-picker.always{border:0;margin:.35rem 0 .75rem;padding:0}.key-picker.locked,.provider-grid.locked{opacity:.55}.key-picker.locked select,.provider-grid.locked .provider-card:disabled{cursor:not-allowed}.instrument-stage.compact{margin-top:.75rem;padding-top:.75rem}.warning.small,.meta.small,.muted.small{font-size:.9rem}.sheet-line-wrap.lyr-hidden .ug-line{-webkit-user-select:none;user-select:none}.sheet-line-wrap.lyr-hidden .ug-line .ug-word,.sheet-line-wrap.lyr-hidden .ug-line .ug-lyric{background:#aeb0be14;border-radius:4px;color:#0000!important;text-shadow:none!important}.lyr-credit{color:var(--text-muted,#aeb0be);opacity:.8;margin:4px 0 8px;font-size:11px}.lyr-credit a{color:inherit;text-decoration:underline}@media (max-width:900px){.studio-grid,.studio-grid.lyrics-forward{grid-template-columns:1fr}.studio-chords{border-left:0;border-top:1px solid var(--line);padding-top:1rem;padding-left:0}.now-chord-dock{grid-template-columns:1fr;position:relative;top:0}.chord-pair{grid-template-columns:1fr}.follow-sheet,.chord-sheet{height:min(68vh,640px);min-height:50vh}.studio-chords{min-height:0}}.summary{margin:0 0 .5rem}.meta,.warning{color:var(--muted);margin:.25rem 0;font-size:.95rem}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes drift{0%{transform:translate(0)rotate(-2deg)}to{transform:translate(-18px,16px)rotate(4deg)}}@media (max-width:700px){.site-shell{width:min(100% - 1.25rem,1120px)}.hero:before{opacity:.85;width:70vw}.panel-head{flex-direction:column}}body{background:var(--bg);font-family:var(--font-ui);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;letter-spacing:-.005em}h1,h2,h3,h4,.brand,.hero h1,.player-title{letter-spacing:-.02em;font-family:var(--font-ui)!important}a{color:var(--ink)}a:hover{color:var(--accent-strong);text-decoration:none}.mono{font-family:var(--font-mono);font-variant-ligatures:none}.muted{color:var(--muted)}.small{font-size:13px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px;font-weight:600}.site-shell{width:min(1360px, calc(100% - var(--s6)));padding:var(--s4) 0 var(--s7)}.site-header{padding:var(--s2) 0 var(--s5);background:0 0;border:0;justify-content:space-between;align-items:center;margin:0;display:flex}.brand{align-items:center;gap:var(--s2);color:var(--ink);font-size:17px;font-weight:700;display:flex}.brand-logo{border-radius:8px}.site-nav{gap:var(--s1);display:flex}.site-nav a{color:var(--muted);padding:var(--s2) var(--s3);border-radius:var(--r-sm);font-size:14px;font-weight:500}.site-nav a:hover{color:var(--ink);background:var(--surface)}.btn{font:600 14px/1 var(--font-ui);border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:10px 18px;transition:background .12s,border-color .12s;transform:none!important}.btn:hover{background:var(--surface-strong);text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#17130a}.btn.primary:hover{background:var(--accent-strong)}.btn.ghost{background:0 0}.btn.sm{padding:7px 12px;font-size:13px}.pill{align-items:center;gap:var(--s1);background:var(--surface);height:24px;color:var(--ink);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.pill.ok{color:var(--ok);background:#5cc28f1a;border-color:#5cc28f4d}.pill.subtle{color:var(--muted)}.badge{font:600 11px/1 var(--font-ui);background:var(--surface-strong);color:var(--muted);border-radius:999px;padding:4px 8px}.badge.high{color:var(--ok)}.landing{gap:var(--s7);grid-template-columns:1.1fr 1fr;align-items:center;min-height:calc(100vh - 160px);display:grid}.landing h1{margin:var(--s4) 0;font-size:clamp(40px,5vw,64px);font-weight:700;line-height:1.02}.landing h1 em{color:var(--accent);font-style:normal}.landing p.lede{color:var(--muted);max-width:46ch;margin:0 0 var(--s6);font-size:18px;line-height:1.5}.landing .cta-row{gap:var(--s3);align-items:center;display:flex}.landing .fine{color:var(--faint);margin-top:var(--s4);font-size:13px}.landing-preview{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s6);box-shadow:var(--shadow);font-family:var(--font-mono)}.landing-preview .lp-line{margin:0 0 var(--s5)}.landing-preview .lp-chords{color:var(--accent);white-space:pre;font-size:15px;font-weight:700}.landing-preview .lp-words{color:var(--ink);font-family:var(--font-ui);white-space:pre;font-size:20px}.landing-preview .lp-now{gap:var(--s3);border-top:1px solid var(--line);padding-top:var(--s4);align-items:baseline;display:flex}.landing-preview .lp-now strong{color:var(--accent);font-size:40px}@media (max-width:900px){.landing{grid-template-columns:1fr}}.panel{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0}.panel-head{justify-content:space-between;align-items:flex-end;gap:var(--s4);margin-bottom:var(--s5);display:flex}.panel-head h2{margin:var(--s1) 0;font-size:32px;font-weight:700}.playlist-grid{gap:var(--s5);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.playlist-card{gap:var(--s3);padding:var(--s3);border-radius:var(--r-md);color:var(--ink);background:0 0;border:0;flex-direction:column;transition:background .12s;display:flex;transform:none!important}.playlist-card img{aspect-ratio:1;object-fit:cover;border-radius:var(--r-sm);width:100%;box-shadow:var(--shadow)}.playlist-card>div{gap:var(--s1);flex-direction:column;align-items:flex-start;display:flex}.playlist-card strong{font-size:15px;font-weight:600}.track-row{border-radius:var(--r-sm);background:0 0;border-color:#0000!important}.track-row:hover{background:var(--bg-raised)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton,.skeleton-line{background:linear-gradient(90deg, var(--surface) 0, var(--surface-strong) 40%, var(--surface) 80%) 0 0 / 800px 100%;border-radius:var(--r-sm);animation:1.4s linear infinite shimmer}.skeleton-line{height:18px;margin:0 0 var(--s5)}.sheet-skeleton{padding:var(--s6) var(--s5)}.skeleton-grid{gap:var(--s5);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.skeleton-card{aspect-ratio:1}.error{color:var(--danger)}.landing{gap:var(--s7);padding:var(--s7) 0;align-items:center}.landing h1{margin:var(--s3) 0 var(--s5);letter-spacing:-.03em}.landing p.lede{margin-bottom:var(--s5)}.landing .fine{color:#aeb0be;font-size:13px}.landing .banner{margin-top:var(--s5)}.landing-preview{border-radius:8px!important;padding:24px!important}.empty-page{place-items:center;min-height:60vh;display:grid}.empty-page .empty-state{gap:12px;max-width:440px}.empty-page .cta-row{justify-content:center;gap:12px;margin-top:8px;display:flex}.fine,.meta{color:#aeb0be;font-size:13px}.empty-page .empty-state{align-content:center;height:auto}.site-footer{margin-top:var(--s7,48px);color:#aeb0be;border-top:1px solid #282a35;padding:16px 0 8px;font-size:12px}.site-footer nav{flex-wrap:wrap;gap:16px;margin-bottom:6px;display:flex}.site-footer a{color:#aeb0be}.site-footer a:hover{color:#fff}:is(.site-shell:has(.sm-root) .site-footer,.site-shell:has(.song-studio.wide) .site-footer){display:none}.legal{color:#e6e7ee;max-width:760px;margin:0 auto;line-height:1.65}.legal h1{margin:8px 0 4px;font-size:30px}.legal h2{margin:28px 0 8px;font-size:19px}.legal-updated{color:#aeb0be;font-size:13px}.legal a{color:#b39dff}.legal ul{padding-left:20px}.legal li{margin:4px 0}.legal table{border-collapse:collapse;width:100%;font-size:13px}.legal td,.legal th{text-align:left;vertical-align:top;border:1px solid #282a35;padding:6px 8px}.legal-nav{color:#aeb0be;margin:32px 0 8px}.analytics-toggle{background:#191a21;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;display:flex}.analytics-toggle input{accent-color:#9c7bff;width:18px;height:18px}.r-card{background:linear-gradient(160deg, var(--b) 0%, #111217 65%);text-align:left;border-radius:24px;max-width:560px;margin:24px auto;padding:32px 28px}.r-eyebrow,.r-artist,.r-label,.r-fine{color:#aeb0be;margin:0}.r-card h1{margin:6px 0 2px;font-size:34px}.r-score{color:var(--c);margin:18px 0 0;font-size:120px;font-weight:800;line-height:1}.r-score span{font-size:52px}.r-line{width:100%;height:120px;margin:16px 0}.r-line polyline{fill:none;stroke:var(--c);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.r-cta{text-align:center;color:#111217;background:#9c7bff;border-radius:999px;margin:16px 0 10px;padding:14px;font-weight:800;display:block}.r-fine{font-size:12px}.age-screen,.parent-notice{gap:12px;max-width:520px;margin:0 auto;padding:8px 0;display:grid}.age-screen h2,.parent-notice h2{margin:0;font-size:26px}.parent-notice h3{margin:8px 0 0;font-size:16px}.parent-notice ul{color:#d7d8e2;margin:0;padding-left:20px;font-size:14px;line-height:1.5}.age-screen p,.parent-notice p{color:#aeb0be;margin:0;line-height:1.5}.age-row{grid-template-columns:1.4fr 1fr;gap:10px;display:grid}.age-row label{color:#aeb0be;gap:4px;font-size:13px;display:grid}.age-row select{color:#fff;background:#191a21;border:1px solid #282a35;border-radius:12px;min-height:48px;padding:0 12px;font-size:16px}.pg-backdrop{z-index:1000;background:#0b0c10cc;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.pg-card{background:#191a21;border:1px solid #282a35;border-radius:18px;gap:10px;width:100%;max-width:360px;padding:20px;display:grid}.pg-card h3{margin:0}.pg-card p{color:#aeb0be;margin:0}.pg-q{font-weight:700;color:#fff!important}.pg-card input{color:#fff;background:#111217;border:1px solid #282a35;border-radius:12px;min-height:48px;padding:0 12px;font-size:20px}.pg-bad{color:#ff9a8a!important}.pg-actions{justify-content:flex-end;gap:8px;display:flex}.age-settings{gap:10px;display:grid}.legal .sm-btn{color:#fff;cursor:pointer;background:#191a21;border:1px solid #282a35;border-radius:999px;min-height:44px;padding:0 16px;font-weight:700}.legal .sm-btn.primary{color:#111217;background:#9c7bff}.legal .sm-toggle{background:#191a21;border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.legal .sm-toggle small{color:#aeb0be;display:block}.legal .sm-fine{color:#aeb0be;margin:0}.stage{gap:var(--s4);grid-template-rows:auto auto 1fr auto;height:calc(100vh - 150px);min-height:560px;display:grid}.stage-head{align-items:center;gap:var(--s4);display:flex}.stage-cover{border-radius:var(--r-sm);object-fit:cover;width:56px;height:56px;box-shadow:var(--shadow)}.stage-title{flex:1;min-width:0}.stage-title h1{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:22px;font-weight:700;overflow:hidden}.stage-title p{margin:2px 0 0;font-size:14px}.stage-chips{gap:var(--s2);flex-wrap:wrap;justify-content:flex-end;display:flex}.stage-body{gap:var(--s4);grid-template-columns:minmax(0,1fr) 340px;min-height:0;display:grid}.stage-sheet{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);min-height:0;position:relative;overflow:hidden}.stage-sheet .chord-sheet{height:100%;max-height:none;padding:0 var(--s7);background:0 0;border:0;border-radius:0;margin:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0,#000 12% 78%,#0000 100%);mask-image:linear-gradient(#0000 0,#000 12% 78%,#0000 100%)}.stage-sheet .follow-track{will-change:transform;padding-top:26vh}.sheet-empty,.sheet-status{padding:var(--s5)}.sheet-status{right:var(--s3);bottom:var(--s2);margin:0;position:absolute}.sheet-line-wrap{padding:var(--s2) 0;opacity:.38;transition:opacity .22s}.sheet-line-wrap.is-active{opacity:1}.sheet-section-label{font:600 11px/1 var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:var(--s5) 0 var(--s2)}.ug-line{row-gap:var(--s2);flex-wrap:wrap;display:flex;font-family:var(--font-ui)!important;background:0 0!important;padding:0!important}.ug-token{flex-direction:column;display:inline-flex}.ug-word{color:var(--ink);white-space:pre;font:500 clamp(20px, 2vw, 26px)/1.25 var(--font-ui)!important}.ug-chord{text-align:left;cursor:pointer;border-radius:4px;min-height:20px;margin-left:-2px;padding:0 2px;transition:background .12s,color .12s;font:700 15px/1.3 var(--font-mono)!important;color:var(--accent)!important;background:0 0!important;border:0!important}.ug-chord.clickable:hover{background:var(--accent-soft)!important}.ug-chord.is-now{background:var(--accent)!important;color:#17130a!important}.ug-line.active{background:0 0!important}.stage-side{gap:var(--s3);flex-direction:column;min-height:0;display:flex;overflow:auto}.dock{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s4);gap:var(--s4);flex-direction:column;display:flex}.dock-head{justify-content:space-between;align-items:center;gap:var(--s2);display:flex}.segmented{background:var(--surface);border:0;border-radius:999px;padding:3px;display:inline-flex}.segmented button{font:600 13px/1 var(--font-ui);color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:7px 14px}.segmented button.on{background:var(--bg-elev);color:var(--ink);box-shadow:0 1px 2px #0006}.dock-now-head{justify-content:space-between;align-items:center;display:flex}.chord-ring{width:28px;height:28px;transform:rotate(-90deg)}.ring-bg,.ring-fg{fill:none;stroke-width:5px}.ring-bg{stroke:var(--surface-strong)}.ring-fg{stroke:var(--accent);stroke-linecap:round}.ring-fg.idle{opacity:.25}.chord-name{margin:var(--s2) 0 var(--s3);color:var(--ink);letter-spacing:-.03em;font-size:56px;font-weight:700;line-height:1}.chord-name.next{color:var(--muted);margin:var(--s1) 0 var(--s2);font-size:28px}.dock-next{border-top:1px solid var(--line);padding-top:var(--s3)}.dock-diagram.small{transform-origin:0 0;height:96px;transform:scale(.78)}.dock-capo{border-top:1px solid var(--line);padding-top:var(--s3);justify-content:space-between;align-items:center;font-size:13px;display:flex}@keyframes dock-in{0%{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}.dock-swap{animation:.12s ease-out both dock-in}.settings{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg)}.settings summary{cursor:pointer;padding:var(--s3) var(--s4);justify-content:space-between;align-items:center;font-size:13px;font-weight:600;list-style:none;display:flex}.settings-body{padding:0 var(--s4) var(--s4);gap:var(--s3);display:grid}.source-list{gap:var(--s2);display:grid}.source{justify-content:space-between;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border-radius:var(--r-md);border:1px solid var(--line);color:var(--ink);font:500 13px var(--font-ui);cursor:pointer;background:0 0;display:flex}.source:disabled{opacity:.45;cursor:not-allowed}.key-row{gap:var(--s2);flex-wrap:wrap;align-items:flex-end;display:flex}.field{gap:var(--s1);color:var(--muted);font-size:12px;display:grid}.field select{background:var(--bg-elev);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-sm);font:500 13px var(--font-ui);padding:6px 8px}.ext-links{gap:var(--s3);flex-wrap:wrap;font-size:13px;display:flex}.transport-bar{align-items:center;gap:var(--s5);padding:var(--s3) var(--s4);background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);grid-template-columns:auto 1fr auto;display:grid}.transport-buttons{align-items:center;gap:var(--s2);display:flex}.icon-btn{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;font-size:15px;display:grid}.icon-btn:hover:not(:disabled){color:var(--ink);background:var(--surface)}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn.sm{width:26px;height:26px;font-size:14px}.play-btn{background:var(--ink);width:44px;height:44px;color:var(--bg);cursor:pointer;border:0;border-radius:999px;place-items:center;font-size:15px;font-weight:700;transition:transform .1s;display:grid}.play-btn:hover:not(:disabled){transform:scale(1.05)}.play-btn:disabled{opacity:.4}.timeline{align-items:center;gap:var(--s3);display:flex}.time{color:var(--muted);text-align:center;min-width:40px;font-size:12px}.timeline-track{flex:1;align-items:center;height:20px;display:flex;position:relative}.timeline-track:before,.timeline-track:after{content:"";pointer-events:none;border-radius:4px;height:4px;position:absolute;left:0}.timeline-track:before{background:var(--surface-strong);right:0}.timeline-track:after{width:var(--pct);background:var(--accent)}.timeline-ticks{pointer-events:none;position:absolute;inset:0}.timeline-ticks i{background:var(--faint);width:1px;height:4px;position:absolute;top:3px}.timeline-track input[type=range]{z-index:1;appearance:none;cursor:pointer;background:0 0;width:100%;height:20px;margin:0;position:relative}.timeline-track input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--ink);border-radius:50%;width:12px;height:12px}.timeline-track input[type=range]::-moz-range-thumb{background:var(--ink);border:0;border-radius:50%;width:12px;height:12px}.transport-extras{align-items:center;gap:var(--s3);display:flex}.sync-offset{background:var(--surface);border-radius:999px;align-items:center;gap:2px;padding:2px 4px;display:flex}.sync-offset-label{color:var(--muted);padding:0 var(--s1) 0 var(--s2);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}.sync-offset-value{color:var(--ink);cursor:pointer;background:0 0;border:0;min-width:56px;font-size:12px}@media (max-width:980px){.stage{height:auto}.stage-body{grid-template-columns:1fr}.stage-sheet{height:60vh}.transport-bar{bottom:var(--s2);grid-template-columns:1fr;position:sticky}.stage-sheet .chord-sheet{padding:0 var(--s4)}}.stage .ug-line,.stage .ug-line.intro{opacity:1!important}.stage .sheet-line-wrap.intro-wrap{padding:var(--s2) 0;background:0 0;border:0;margin:0}.chord-ring{flex:none;background:0 0!important;border:0!important}.stage .chord-name{font-family:var(--font-mono)!important}.stage-chips .pill.subtle{text-overflow:ellipsis;max-width:260px;line-height:22px;display:inline-block;overflow:hidden}@media (max-width:640px){body{overflow-x:hidden}.site-nav a{padding:var(--s1) var(--s2);font-size:13px}.stage-head{flex-wrap:wrap}.stage-cover{width:44px;height:44px}.stage-title{flex:calc(100% - 60px)}.stage-chips{justify-content:flex-start;width:100%}.stage-chips .pill.subtle{max-width:100%}.stage-body,.stage-sheet,.transport-bar{min-width:0;max-width:100%}.transport-extras{flex-wrap:wrap}.ug-word{font-size:19px!important}}.btn.primary{color:#000;font-weight:700}.btn.primary:hover{transform:scale(1.04)!important}.pill.warn{color:var(--warn);background:#ffa42b1f;border-color:#0000}.pill,.pill.ok,.pill.subtle{border-color:#0000}.stage-head{padding:var(--s4);border-radius:var(--r-lg);background:linear-gradient(180deg, rgba(var(--tint), .55), rgba(var(--tint), .15));transition:background .6s}.stage-cover{width:64px;height:64px}.stage-title h1{font-size:28px;font-weight:800}.stage-sheet{background:rgb(var(--tint));border:0;transition:background .6s}.stage-sheet:after{content:"";pointer-events:none;background:linear-gradient(#0000000d,#00000059);position:absolute;inset:0}.stage .sheet-line-wrap{opacity:1}.stage .ug-word{letter-spacing:-.01em;color:#0000008c;transition:color .2s;font-size:clamp(22px,2.4vw,32px)!important;font-weight:800!important}.stage .ug-chord{color:#ffffff8c!important;font-size:16px!important}.stage .ug-chord.is-now{background:var(--accent)!important;color:#000!important}.dock,.settings,.transport-bar{border:0}.dock{background:var(--bg-raised)}.chord-name{color:#fff;font-weight:800}.ring-fg{stroke:var(--accent)}.piano-key.white.active{background:var(--accent)!important}.piano-key.black.active{background:var(--accent-strong)!important}.guitar .dot{background:var(--accent)!important}.source.selected{border-color:var(--accent)}.transport-bar{background:var(--bg-deep);border-top:1px solid var(--line);margin:0 calc(-1 * var(--s2));border-radius:0}.play-btn{color:#000;background:#fff;width:40px;height:40px}.timeline-track:hover:after{background:var(--accent)}.timeline-track input[type=range]::-webkit-slider-thumb{opacity:0}.timeline-track:hover input[type=range]::-webkit-slider-thumb{opacity:1}.playlist-card{background:var(--bg-raised);padding:var(--s4)}.playlist-card:hover{background:var(--bg-elev)}.landing h1 em{color:var(--accent)}.landing-preview{background:linear-gradient(160deg,#3a2a5a,#1a1a2a);border:0}.landing-preview .lp-words{font-weight:800}.landing-preview .lp-line.dim{opacity:.45}.landing-preview .lp-now strong{color:#fff}.empty-state{text-align:center;height:100%;padding:var(--s6);color:#fffc;place-items:center;gap:var(--s2);display:grid}.empty-state strong{font-size:20px;font-weight:800}:root{--line:#3d3f4d;--faint:#6a6a6a}body{background:#0b0c10}.stage-head{background:linear-gradient(#1f1f1f,#111217)!important}.stage-sheet{background:linear-gradient(#1f1f1f 0,#111217 240px)!important}.stage-sheet:after{display:none}.stage .ug-word{color:#6a6a6a}.stage .sheet-line-wrap.is-active .ug-word{color:#fff}.stage .ug-chord{color:#aeb0be!important}.stage .sheet-line-wrap.is-active .ug-chord{color:var(--accent)!important}.stage .sheet-section-label{color:#6a6a6a}.dock,.settings{background:#191a21}.pill,.pill.ok,.pill.subtle,.pill.warn{color:#aeb0be;background:#282a35;border-color:#0000}.badge,.badge.high{color:#aeb0be;background:#282a35}.segmented{background:#282a35}.segmented button.on{background:var(--accent);color:#000}.source.selected{border-color:var(--accent);background:#282a35}.source{border-color:#3d3f4d}.warning{color:#aeb0be}.landing-preview{border:1px solid #282a35;background:#191a21!important}.landing-preview .lp-chords{color:#aeb0be}.landing-preview .lp-line:not(.dim) .lp-chords{color:var(--accent)}.landing-preview .lp-now{border-color:#3d3f4d}.guitar-fretboard,.guitar{background:0 0!important;border-color:#3d3f4d!important}.timeline-track:after{background:var(--accent)}.playlist-card{background:#191a21}.playlist-card:hover,.track-row:hover,.sync-offset{background:#282a35}.guitar{color:#fff;background:0 0!important}.guitar-fretboard{background:#191a21!important;border:2px solid #aeb0be!important}.guitar-fret-row{border-bottom-color:#aeb0be!important}.guitar-cell{border-right-color:#aeb0be!important}.guitar .dot{box-shadow:none!important;background:#9c7bff!important}.guitar-nut span,.guitar .muted{color:#fff!important}.stage .sheet-line-wrap .ug-chord.is-now,.stage .sheet-line-wrap.is-active .ug-chord.is-now{border-radius:999px;margin-left:-6px;padding:0 6px;color:#000!important;opacity:1!important;background:#9c7bff!important}:root{--faint:#a7a7a7;--pad:24px;--radius:8px}.small,.muted.small{color:#aeb0be;font-size:13px}.stage-head{padding:var(--pad);border-radius:var(--radius);gap:var(--s4)}.stage-cover{background:#282a35;border-radius:4px;flex:none;width:64px;height:64px}.stage-title h1{font-size:28px;font-weight:800;line-height:1.15}.stage-meta{color:#aeb0be;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 0;font-size:14px;display:flex}.info-tip{color:#aeb0be;cursor:help;border-radius:4px;align-items:center;gap:4px;display:inline-flex;position:relative}.info-tip:hover,.info-tip:focus-visible{color:#fff}.info-tip:after{content:attr(data-tip);z-index:20;border-radius:var(--radius);color:#fff;opacity:0;pointer-events:none;background:#282a35;width:260px;padding:8px 12px;font-size:13px;line-height:1.4;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-2px);box-shadow:0 8px 24px #00000080}.info-tip:hover:after,.info-tip:focus-visible:after{opacity:1;transform:none}.banner{justify-content:space-between;align-items:center;gap:var(--s3);border-radius:var(--radius);color:#fff;background:#282a35;border-left:3px solid #9c7bff;padding:12px 16px;font-size:14px;display:flex}.banner-actions{gap:var(--s2);flex:none;display:flex}.stage{grid-template-rows:auto auto 1fr auto}.stage:not(:has(.banner)){grid-template-rows:auto 1fr auto}.stage-sheet{border-radius:var(--radius)}.stage-sheet .chord-sheet{padding:0 var(--s7);-webkit-mask-image:linear-gradient(#0000 0,#000 18% 72%,#0000 100%);mask-image:linear-gradient(#0000 0,#000 18% 72%,#0000 100%)}.stage-sheet .follow-track{padding-top:35%}.stage .sheet-line-wrap{transition:opacity .2s}.stage .ug-word{color:#fff;opacity:.42;transition:opacity .2s}.stage .sheet-line-wrap.is-past .ug-word{opacity:.7}.stage .sheet-line-wrap.is-active .ug-word{opacity:1;color:#fff}.stage .ug-chord{opacity:.7;color:#aeb0be!important}.stage .sheet-line-wrap.is-active .ug-chord{opacity:1;color:#9c7bff!important;font-size:clamp(20px,1.6vw,24px)!important;font-weight:800!important}.stage .sheet-line-wrap.is-active .ug-chord.is-now{color:#000!important}.sheet-chips{flex-wrap:wrap;align-items:center;gap:6px;padding:4px 0;display:flex}.sheet-chip-label{font:700 12px/1 var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:#aeb0be;margin-right:8px}.sheet-chip-item{align-items:center;gap:6px;display:inline-flex}.sheet-chip-sep{color:#6a6a6a}.stage .ug-chord.chip{margin:0;padding:0 6px;font-size:18px!important}.stage .sheet-line-wrap.is-active .ug-chord.chip{font-size:20px!important}.dock{padding:var(--pad);border-radius:var(--radius)}.stage .chord-name.now{letter-spacing:-.04em;margin:8px 0 16px;font-size:clamp(72px,9vw,120px);line-height:.95}.stage .chord-name.next{color:#fff;opacity:.6;font-size:48px}.dock-next .dock-diagram{opacity:.6}.dock-diagram.small{height:auto;transform:none}.dock-capo{color:#aeb0be;gap:var(--s3);font-size:13px}.dock-capo>span:last-child{color:#fff;text-align:right}.piano-key.active span{color:#000!important}.settings,.transport-bar{border-radius:var(--radius)}.transport-bar{padding:12px var(--pad)}.icon-btn svg,.play-btn svg{display:block}.timeline-track{height:32px}.timeline-sections{pointer-events:none;height:12px;position:absolute;top:-6px;left:0;right:0}.timeline-section{font:600 10px/1 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:#aeb0be;white-space:nowrap;border-left:1px solid #6a6a6a;padding-left:4px;position:absolute;transform:translate(-1px)}.sync-offset-label{text-transform:none;letter-spacing:0;font-size:12px}.overlay{z-index:100;background:#000000b3;place-items:center;display:grid;position:fixed;inset:0}.overlay-card{border-radius:var(--radius);width:min(420px,100% - 32px);padding:var(--pad);background:#282a35;box-shadow:0 16px 48px #0009}.overlay-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.overlay-head h2{margin:0;font-size:20px;font-weight:800}.shortcut-list{gap:10px;margin:0;display:grid}.shortcut-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.shortcut-row dt{gap:4px;display:flex}.shortcut-row dd{color:#aeb0be;margin:0;font-size:14px}kbd{font:600 12px/1 var(--font-mono);color:#fff;background:#111217;border:1px solid #3d3f4d;border-radius:4px;padding:5px 8px}.empty-state{color:#aeb0be}.empty-state strong{color:#fff}.empty-state svg{color:#6a6a6a}.skeleton-line,.skeleton{border-radius:4px;animation:1.4s linear infinite shimmer;background:linear-gradient(90deg,#282a35 25%,#333 50%,#282a35 75%) 0 0/200% 100%!important}.sheet-skeleton{padding:var(--s7);gap:18px;display:grid}.skeleton-line{height:22px}:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #fff}.btn:focus-visible,.icon-btn:focus-visible,.play-btn:focus-visible,.segmented button:focus-visible{outline-offset:2px;outline:2px solid #9c7bff}.timeline-track input[type=range]:focus-visible::-webkit-slider-thumb{opacity:1;box-shadow:0 0 0 3px #9c7bff}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:640px){.site-shell{width:calc(100% - 24px);padding-bottom:180px}.site-header{padding:4px 0 12px}.stage{flex-direction:column;gap:12px;height:auto;min-height:0;display:flex}.stage-head{flex-wrap:nowrap;gap:12px;min-height:56px;padding:8px 12px}.stage-cover{width:40px;height:40px}.stage-title h1{font-size:17px}.stage-meta{white-space:nowrap;flex-wrap:nowrap;font-size:12px;overflow:hidden}.meta-hide-sm,.info-tip-label,.stage-chips{display:none!important}.banner{flex-direction:column;align-items:flex-start}.stage-body{display:block}.stage-sheet{height:58vh}.stage-sheet .chord-sheet{padding:0 16px}.stage .ug-word{font-size:20px!important}.stage .sheet-line-wrap.is-active .ug-chord{font-size:18px!important}.stage-side{z-index:30;padding:0 12px;position:fixed;bottom:112px;left:0;right:0;overflow:visible}.stage-side .settings{display:none}.dock{background:#282a35;grid-template-columns:1fr 1fr;align-items:center;gap:4px 16px;padding:10px 16px;display:grid;box-shadow:0 -8px 24px #0009}.dock-head,.dock-capo,.dock-diagram,.dock>p,.chord-ring{display:none!important}.dock-now,.dock-next{border:0;align-items:baseline;gap:10px;padding:0;display:flex}.dock-now-head{display:contents}.stage .chord-name.now{margin:0;font-size:44px}.stage .chord-name.next{margin:0;font-size:28px}.transport-bar{z-index:31;border-radius:0;grid-template-columns:1fr;gap:6px;margin:0;padding:8px 12px 12px;position:fixed;bottom:0;left:0;right:0}.transport-buttons{justify-content:center}.transport-extras{justify-content:space-between}.transport-extras .icon-btn[aria-label=Keyboard\ shortcuts],.timeline-sections{display:none}}.timeline-section.bare{height:8px}@media (min-width:641px) and (max-height:1000px){.dock-next .dock-diagram{display:none}.dock{gap:12px}}@media (max-width:640px){.stage-side{bottom:132px}.stage-sheet{height:52vh}}body:has(.sp-app){background:#0b0c10;overflow:hidden}.site-shell:has(.sp-app){max-width:none;margin:0;width:100vw!important;padding:0!important}.site-shell:has(.sp-app)>.site-header{display:none}.site-shell:has(.sp-app) main>.eyebrow{display:none}.site-shell:has(.sp-app)>main{margin:0;padding:0}.sp-app.stage{--bar-h:88px;grid-template-columns:var(--side-w,280px) minmax(0, 1fr) var(--right-w,340px);grid-template-rows:minmax(0, 1fr) var(--bar-h);color:#fff;background:#0b0c10;grid-template-areas:"side main right""bar bar bar";gap:8px;height:100dvh;min-height:0;padding:8px 8px 0;display:grid;position:fixed;inset:0}.sp-app.stage:not(:has(.sp-right)){grid-template-columns:var(--side-w,280px) minmax(0, 1fr);grid-template-areas:"side main""bar bar"}.sp-sidebar{flex-direction:column;grid-area:side;gap:8px;min-height:0;display:flex}.sp-card{background:#111217;border-radius:8px}.sp-nav{flex-direction:column;padding:8px 12px;display:flex}.sp-nav-item{color:#aeb0be;border-radius:6px;align-items:center;gap:16px;padding:10px 12px;font-size:15px;font-weight:700;display:flex}.sp-nav-item:hover{color:#fff}.sp-library{flex-direction:column;flex:1;min-height:0;padding:12px 8px;display:flex}.sp-library-head{color:#aeb0be;align-items:center;gap:12px;padding:4px 12px 12px;display:flex}.sp-library-head strong{color:#fff;font-size:15px}.sp-chips{flex-wrap:wrap;gap:8px;padding:0 12px 12px;display:flex}.sp-chip{color:#fff;background:#282a35;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500}.sp-chip:hover{background:#333}.sp-section-label{color:#aeb0be;text-transform:uppercase;letter-spacing:.06em;margin:4px 12px 6px;font-size:12px;font-weight:700}.sp-tracklist{min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.sp-track{text-align:left;color:#fff;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;width:100%;padding:8px 12px;display:flex}.sp-track:hover{background:#1a1a1a}.sp-track.current{background:#282a35}.sp-track.current .sp-track-name{color:#9c7bff}.sp-track-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:15px;font-weight:500;overflow:hidden}.sp-track-sub{color:#aeb0be;font-size:13px}.sp-main{background:#111217;border-radius:8px;flex-direction:column;grid-area:main;min-height:0;display:flex;position:relative;overflow:hidden}.sp-main-head{justify-content:space-between;align-items:flex-end;gap:16px;padding:24px 32px 8px;display:flex}.sp-main-title{min-width:0}.sp-main-title h1{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:clamp(24px,2.6vw,40px);font-weight:800;line-height:1.1;overflow:hidden}.sp-main-title .stage-meta{color:#aeb0be;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;font-size:14px;display:flex}.sp-main-actions{flex-shrink:0;gap:8px;display:flex}.pill-btn{color:#fff;cursor:pointer;background:0 0;border:1px solid #727272;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:700;display:inline-flex}.pill-btn:hover{border-color:#fff}.pill-btn.on{color:#000;background:#fff;border-color:#fff}.sp-main .stage-sheet{background:#111217;border:0;border-radius:0;flex:1;min-height:0}.sp-main .stage-sheet .chord-sheet{padding:0 clamp(24px,4vw,64px)}.sp-main .stage-sheet .follow-track{padding-top:22vh}.sp-app .ug-word{letter-spacing:-.015em;font-family:var(--font-ui)!important;font-size:clamp(24px,2.3vw,36px)!important;font-weight:800!important}.sp-app .ug-chord{font-family:var(--font-mono);font-weight:700;font-size:clamp(14px,1.1vw,18px)!important}.sp-app .sheet-line-wrap{padding:6px 0}.sp-app .ug-line.active{background:0 0!important}.edit-bar{color:#fff;background:#282a35;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:4px 32px 8px;padding:10px 14px;display:flex}.edit-bar-actions{gap:8px;display:flex}.follow-sheet.editing{overflow-y:auto!important;-webkit-mask-image:none!important;mask-image:none!important}.follow-sheet.editing .follow-track{padding-top:16px!important;transform:none!important}.follow-sheet.editing .ug-word{opacity:1!important}.ug-chord.add-slot{text-align:center;cursor:pointer;opacity:.6;border-radius:4px;min-width:1.4em;color:#727272!important;border:1px dashed #3d3f4d!important}.ug-chord.add-slot:hover{opacity:1;color:#fff!important;border-color:#aeb0be!important}.follow-sheet.editing .ug-chord.clickable{cursor:grab;border-radius:4px;outline:1px solid #3d3f4d;padding:0 4px}.chord-editor{z-index:60;background:#282a35;border-radius:8px;flex-direction:column;gap:10px;width:288px;padding:12px;display:flex;position:fixed;box-shadow:0 16px 48px #0009}.chord-editor-sugg{flex-wrap:wrap;gap:6px;display:flex}.chip-btn{color:#fff;font-family:var(--font-mono);cursor:pointer;background:#3d3f4d;border:0;border-radius:999px;padding:5px 11px;font-weight:700}.chip-btn:hover,.chip-btn.on{color:#000;background:#9c7bff}.chord-editor-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.chord-editor input{color:#fff;min-width:0;font-family:var(--font-mono);background:#111217;border:1px solid #3d3f4d;border-radius:4px;flex:1;padding:7px 10px}.chord-editor input:focus{outline:2px solid #fff}.link-btn{color:#aeb0be;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.sp-right{background:#111217;border-radius:8px;flex-direction:column;grid-area:right;min-height:0;display:flex;overflow:hidden}.sp-right-head{justify-content:space-between;align-items:center;padding:12px 12px 8px 16px;display:flex}.sp-tabs{gap:8px;display:flex}.sp-tabs button{color:#fff;cursor:pointer;background:#282a35;border:0;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:14px;font-weight:600;display:inline-flex}.sp-tabs button.on{color:#000;background:#fff}.sp-right-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:4px 16px 16px;display:flex;overflow-y:auto}.sp-right .live-dock,.sp-right .dock{width:100%}.beta-pill{letter-spacing:.06em;text-transform:uppercase;color:#000;background:#9c7bff;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:800}.sp-tabs button.on .beta-pill{color:#fff;background:#0b0c10}.np-settings{flex-direction:column;gap:8px;display:flex}.np-card{background:#191a21;border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.np-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.transpose-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.transpose-row select{color:#fff;background:#282a35;border:0;border-radius:4px;padding:6px 8px;font-weight:700}.transpose-val{color:#aeb0be;font-size:13px}.warn-text{color:#aeb0be}.sing{flex-direction:column;gap:10px;display:flex}.sing-hint{color:#aeb0be;margin-left:auto;font-size:12px}.sing-lane{background:#191a21;border-radius:8px;height:300px;display:none;position:relative;overflow:hidden}.sing-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.sing-center{text-align:center;pointer-events:none;background:#121212c7;border-radius:8px;width:150px;padding:8px 10px 4px;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.sing-note{color:#fff;font-size:44px;font-weight:800;line-height:1}.sing-note.in{color:#9c7bff}.cents{border-top:2px solid #3d3f4d;height:24px;margin:12px 4px 0;position:relative}.cents-needle{background:#fff;border-radius:2px;width:4px;height:18px;margin-left:-2px;transition:left .1s linear;position:absolute;top:-10px}.listen{flex-direction:column;gap:10px;display:flex}.listen-hearing{background:#191a21;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:baseline;gap:4px 10px;padding:14px 16px;display:grid}.listen-hearing-label{letter-spacing:.06em;text-transform:uppercase;color:#aeb0be;font-size:12px;font-weight:700}.listen-hearing-chord{color:#727272;font-size:40px;font-weight:800;line-height:1}.listen-hearing.on .listen-hearing-chord{color:#fff}.listen-hearing-conf{color:#aeb0be;font-family:JetBrains Mono Variable,monospace;font-size:14px}.listen-hearing .listen-meter{grid-column:1/-1}.listen-meter{background:#3d3f4d;border-radius:2px;height:4px;overflow:hidden}.listen-meter span{background:#9c7bff;border-radius:2px;height:100%;transition:width .15s linear;display:block}.listen-coverage{background:#191a21;border-radius:8px;flex-direction:column;gap:8px;padding:12px 16px;display:flex}.listen-coverage-row{justify-content:space-between;font-size:14px;font-weight:700;display:flex}.listen-steps{color:#aeb0be;gap:4px;margin:0;padding-left:18px;display:grid}.listen-steps b{color:#fff}.live-dot{vertical-align:middle;background:#9c7bff;border-radius:50%;width:7px;height:7px;margin-left:6px;display:inline-block}.sp-hearing{color:#aeb0be;white-space:nowrap;margin-left:4px;font-size:12px}.sp-hearing b{color:#fff}@media (prefers-reduced-motion:reduce){.listen-meter span{transition:none}}.sp-app .transport-bar.sp-bar{height:var(--bar-h);box-shadow:none;background:#0b0c10;border:0;border-radius:0;grid-area:bar;grid-template-columns:minmax(180px,30%) minmax(0,40%) minmax(180px,30%);align-items:center;gap:16px;margin:0;padding:0 8px;display:grid;position:static}.sp-bar-track{align-items:center;gap:12px;min-width:0;display:flex}.sp-bar-cover{object-fit:cover;border-radius:4px;width:56px;height:56px}.sp-bar-meta{flex-direction:column;min-width:0;display:flex}.sp-bar-meta strong{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.sp-bar-meta span{color:#aeb0be;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.sp-bar-center{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.sp-bar-center .transport-buttons{align-items:center;gap:16px;display:flex}.sp-bar-center .timeline{width:100%}.sp-app .play-btn{color:#000;background:#fff;width:32px;height:32px}.sp-app .transport-extras{justify-self:end;align-items:center;gap:8px;display:flex}.sp-toggle{color:#aeb0be;position:relative}.sp-toggle:hover{color:#fff}.sp-toggle.on{color:#9c7bff}.sp-toggle.on:after{content:"";background:#9c7bff;border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:-2px;left:50%}@media (max-width:1180px){.sp-app.stage{grid-template-columns:72px minmax(0,1fr) minmax(280px,320px)}.sp-app.stage:not(:has(.sp-right)){grid-template-columns:72px minmax(0,1fr)}.sp-nav-item{justify-content:center;gap:0;font-size:0}.sp-library-head strong,.sp-chips,.sp-section-label,.sp-track-sub{display:none}.sp-library-head{justify-content:center;padding:4px 0 12px}.sp-track{align-items:center;padding:8px 4px}.sp-track-name{background:#282a35;border-radius:4px;width:40px;height:40px;font-size:0}.sp-track.current .sp-track-name{background:#9c7bff}}@media (max-width:760px){body:has(.sp-app){overflow:auto}:is(.sp-app.stage,.sp-app.stage:not(:has(.sp-right))){--bar-h:132px;grid-template-columns:1fr;grid-template-rows:minmax(0, 1fr) auto var(--bar-h);grid-template-areas:"main""right""bar";gap:0;padding:0;position:fixed}.sp-sidebar{display:none}.sp-main{border-radius:0}.sp-main-head{padding:14px 16px 6px}.sp-main-title h1{font-size:22px}.pill-btn{padding:6px 10px;font-size:12px}.edit-bar{margin:4px 12px 8px}.sp-main .stage-sheet .chord-sheet{padding:0 16px}.sp-main .stage-sheet .follow-track{padding-top:14vh}.sp-app .ug-word{font-size:22px!important}.sp-right{border-top:1px solid #282a35;border-radius:0;max-height:34vh}.sp-right .np-settings{display:none}.sp-app .transport-bar.sp-bar{grid-template-rows:auto auto;grid-template-columns:1fr auto;gap:6px 8px;padding:8px 12px}.sp-bar-center{grid-area:2/1/auto/-1}.sp-app .transport-extras .btn,.sp-app .transport-extras>.icon-btn.sm{display:none}}@media (prefers-reduced-motion:reduce){.cents-needle{transition:none}}.cents-zero{background:#aeb0be;width:2px;height:14px;position:absolute;top:-8px;left:50%}.cents-l,.cents-r{color:#727272;font-size:11px;position:absolute;top:6px}.cents-l{left:0}.cents-r{right:0}.pane-divider{z-index:5;cursor:col-resize;touch-action:none;outline:none;grid-row:1;width:8px;position:relative}.pane-divider.side{grid-column:1;justify-self:end;margin-right:-8px}.pane-divider.right{grid-column:3;justify-self:start;margin-left:-8px}.pane-divider:after{content:"";background:0 0;border-radius:1px;width:2px;transition:background .12s;position:absolute;top:8px;bottom:8px;left:3px}.pane-divider:hover:after,.pane-divider:focus-visible:after,body.is-resizing .pane-divider:after{background:#727272}.pane-divider:focus-visible:after{background:#fff}body.is-resizing,body.is-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.sp-app.stage.side-collapsed .sp-sidebar{overflow:hidden}.sp-app.stage.side-collapsed .sp-nav-item{justify-content:center;gap:0;font-size:0}.sp-app.stage.side-collapsed .sp-library-head strong,.sp-app.stage.side-collapsed .sp-chips,.sp-app.stage.side-collapsed .sp-section-label,.sp-app.stage.side-collapsed .sp-track-sub{display:none}.sp-app.stage.side-collapsed .sp-library-head{justify-content:center;padding:4px 0 12px}.sp-app.stage.side-collapsed .sp-track{align-items:center;padding:8px 4px}.sp-app.stage.side-collapsed .sp-track-name{background:#282a35;border-radius:4px;width:40px;height:40px;font-size:0}.sp-app.stage.side-collapsed .sp-track.current .sp-track-name{background:#9c7bff}@media (max-width:1180px){.sp-app.stage{grid-template-columns:72px minmax(0, 1fr) var(--right-w,320px)}.pane-divider.side{display:none}}@media (max-width:760px){.pane-divider{display:none}}.follow-sheet.recap{scroll-behavior:auto;overflow-y:auto!important;-webkit-mask-image:none!important;mask-image:none!important}.follow-sheet.recap .follow-track{transform:none!important}.follow-sheet.recap .ug-word{opacity:1!important}.follow-sheet.recap .sheet-line-wrap{opacity:1!important;filter:none!important}.recap-bar{z-index:3;background:#111217;border-bottom:1px solid #282a35;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;display:flex;position:sticky;top:0}.recap-title{color:#fff;font-size:15px;font-weight:800}.recap-sub{color:#aeb0be;margin-right:auto;font-size:13px}.sing{flex:1 0 auto;min-height:0;position:relative}.sing>*{flex-shrink:0}.sp-right:has(.sing) .sp-right-body{display:flex}.sing-parts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sp-chip.on{color:#000;background:#fff}.sing-source{color:#a7a7a7;margin-left:auto;font-size:12px}.sing-stage{background:#191a21;border-radius:8px;flex:1 0 auto;grid-template-rows:auto minmax(180px,1fr);gap:12px;min-height:340px;padding:20px;display:grid}.sing-target{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.sing-label{letter-spacing:.1em;text-transform:uppercase;color:#a7a7a7;font-size:12px;font-weight:700}.sing-big{color:#fff;letter-spacing:-.03em;font-size:clamp(64px,9vw,128px);font-weight:900;line-height:1;transition:color .15s}.sing-stage.in .sing-big{color:#9c7bff}.sing-sub{color:#aeb0be;font-variant-numeric:tabular-nums;min-height:1.3em;font-size:15px}.sing-stab{border-radius:999px;min-height:1.4em;padding:3px 10px;font-size:13px;font-weight:700}.sing-stab.steady{color:#000;background:#9c7bff}.sing-stab.wobbly{color:#fff;background:#3d3f4d}.sing-meter{background:#111217;border-radius:6px;min-height:180px;position:relative;overflow:hidden}.sing-band{background:#9c7bff1f;border-top:1px solid #9c7bff59;border-bottom:1px solid #9c7bff59;height:33.3%;position:absolute;top:33.3%;left:0;right:0}.sing-mid{background:#535353;height:2px;margin-top:-1px;position:absolute;top:50%;left:0;right:0}.sing-dot{background:#fff;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;transition:top 60ms linear;position:absolute;left:82%;box-shadow:0 0 0 4px #ffffff26}.sing-dot.in{background:#9c7bff;box-shadow:0 0 0 6px #9c7bff40}.sing-dot.off{opacity:0}.sing-axis{color:#727272;font-size:11px;position:absolute;left:10px}.sing-axis.hi{top:6px}.sing-axis.lo{bottom:6px}.sing-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.sing-result{z-index:4;text-align:center;background:linear-gradient(#282a35,#111217 70%);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex;position:absolute;inset:0}.sing-result h3{color:#fff;margin:4px 0 0;font-size:32px;font-weight:900}.score-ring{--p:0;background:conic-gradient(#9c7bff calc(var(--p) * 1%), #3d3f4d 0);border-radius:50%;place-items:center;width:160px;height:160px;display:grid}.score-ring span{color:#fff;background:#191a21;border-radius:50%;place-items:center;width:136px;height:136px;font-size:44px;font-weight:900;display:grid}.sing-advice{color:#fff;background:#2a2a2a;border-radius:8px;max-width:420px;margin:4px 0;padding:10px 14px;font-size:15px}.sing-result-actions{gap:8px;display:flex}@media (prefers-reduced-motion:reduce){.sing-dot,.sing-big{transition:none}}@media (max-width:760px){.sing-stage{min-height:260px}.sp-app.sing-open .sp-right{max-height:62vh}}.sing-teach{color:#fff;flex-direction:column;align-items:center;font-size:15px;font-weight:700;display:flex}.sing-teach small{color:#a7a7a7;font-size:12px;font-weight:500}.sing-hint-card{background:#2a2a2a;border-left:4px solid #9c7bff;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;display:flex}.sing-hint-card>div{flex-direction:column;margin-right:auto;display:flex}.sing-hint-card strong{color:#fff;font-size:16px}.sing-hint-card small{color:#a7a7a7;font-size:12px}.sing-summary{color:#9c7bff;margin:0;font-size:15px;font-weight:700}.sing-hint-card.warn{border-left-color:#aeb0be}.sing-result{justify-content:flex-start;padding-top:32px;overflow-y:auto}.sing-fixes{text-align:left;flex-direction:column;gap:8px;width:100%;max-width:520px;margin:4px 0;padding:0;list-style:none;display:flex}.sing-fixes li{color:#fff;background:#2a2a2a;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;display:flex}.sing-fixes li span{flex-direction:column;margin-right:auto;display:flex}.sing-fixes small{color:#a7a7a7;font-size:12px}.sing-good{color:#fff;margin:0;font-size:14px}.link-btn{color:#aeb0be;cursor:pointer;background:0 0;border:0;text-decoration:underline}.link-btn:hover{color:#fff}:root{--faint:#a7a7a7}.sp-main .stage-sheet .follow-track,.stage-sheet .follow-track{padding-top:24px}.ug-seg{white-space:normal;max-width:100%;display:inline-block}.ug-seg .ug-token{white-space:nowrap}.banner.neutral{color:#fff;background:#282a35;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:4px 32px 8px;padding:10px 14px;font-size:14px;display:flex}.banner.neutral span{min-width:0}button.info-tip{color:#aeb0be;font:inherit;cursor:pointer;background:#282a35;border:0;border-radius:999px;padding:2px 10px}button.info-tip:hover{color:#fff;background:#333}.info-tip-label{font-size:13px}.piano-key.white{background:#e0e0e0!important}.piano-key.white span{color:#111217!important}.piano-key.black{background:#111217!important}.piano-key.white.active,.piano-key.black.active{background:#9c7bff!important}.piano-key.white.active span{color:#000!important}.chord-ring.hidden{visibility:hidden}.sp-track{gap:12px;flex-direction:row!important;align-items:center!important}.sp-track-art{color:#fff;background:#282a35;border-radius:4px;flex:none;place-items:center;width:40px;height:40px;font-size:16px;font-weight:800;display:grid;position:relative;overflow:visible}.sp-track-art img{object-fit:cover;border-radius:4px;width:40px;height:40px;display:block}.sp-track-dot{background:#9c7bff;border:2px solid #111217;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-3px;right:-3px}.sp-track-text{flex-direction:column;min-width:0;display:flex}.sp-track-sub{color:#aeb0be;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:13px;overflow:hidden}.sp-app.stage.side-collapsed .sp-track-name,.sp-app.stage.side-collapsed .sp-track-sub,.sp-app.stage.side-collapsed .sp-track-text{display:none}.sp-app.stage.side-collapsed .sp-track{justify-content:center;padding:6px 4px}.sp-app.stage.side-collapsed .sp-track.current{background:0 0}.sp-app.stage.side-collapsed .sp-track-name{background:0 0;width:auto;height:auto;font-size:0}@media (max-width:1180px){.sp-track-name,.sp-track-sub,.sp-track-text{display:none}.sp-track{justify-content:center;padding:6px 4px}.sp-track-name{background:0 0!important;width:auto!important;height:auto!important}}.pane-divider:focus-visible:after{background:#fff;width:3px;left:2.5px}.sing-source,.sing-teach small,.sing-hint-card small,.sing-fixes small{color:#aeb0be;font-size:13px}.sing-axis,.cents-l,.cents-r{color:#aeb0be;font-size:12px}.muted.small,.small.muted{color:#aeb0be}.sing-ready{color:#aeb0be;flex-direction:column;align-items:center;gap:6px;padding:12px 0;font-size:15px;font-weight:700;display:flex}.sing-ready svg{color:#727272}.listen-steps{color:#fff;flex-direction:column;gap:4px;margin:0;padding-left:20px;display:flex}.listen-how summary{cursor:pointer;color:#aeb0be;font-weight:700}.listen-how p{margin:8px 0 0}.timeline-section{white-space:nowrap}.sp-bar .transport-extras{position:relative}.coach-mark{z-index:30;color:#000;background:#fff;border-radius:8px;flex-direction:column;gap:6px;width:260px;padding:14px;font-size:13px;display:flex;position:absolute;bottom:calc(100% + 12px);right:0;box-shadow:0 16px 40px #0009}.coach-mark strong{font-size:15px}.coach-mark:after{content:"";background:#fff;width:12px;height:12px;position:absolute;bottom:-6px;right:120px;transform:rotate(45deg)}.coach-mark .btn{align-self:flex-end}.overlay-card.feedback{flex-direction:column;gap:10px;width:min(440px,92vw);display:flex}.fb-stars{border:0;align-items:center;gap:4px;margin:0;padding:0;display:flex}.fb-stars legend{margin-bottom:4px}.fb-star{color:#535353;cursor:pointer;background:0 0;border:0;border-radius:6px;width:44px;height:44px;font-size:28px}.fb-star.on{color:#9c7bff}.fb-field{color:#aeb0be;flex-direction:column;gap:4px;font-size:13px;display:flex}.fb-field textarea,.fb-field input{color:#fff;font:inherit;resize:vertical;background:#111217;border:1px solid #3d3f4d;border-radius:4px;padding:8px 10px;font-size:14px}.landing-features{gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.landing-features li{color:#aeb0be;align-items:baseline;gap:10px;font-size:15px;display:flex}.landing-features b{color:#fff;min-width:64px}@media (max-width:760px){button.info-tip{display:none}.banner.neutral{margin:4px 12px;padding:8px 12px;font-size:13px}.banner.neutral span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sp-app .sheet-line-wrap{opacity:.45}.sp-app .sheet-line-wrap.is-active{opacity:1}.sp-app .sheet-line-wrap.is-active .ug-word{color:#fff!important}.sp-right .dock{text-align:center;grid-template-columns:1fr 1fr;place-items:center;display:grid}.sp-right .dock .dock-head,.sp-right .dock .dock-diagram,.sp-right .dock .dock-capo{display:none}.sp-app .icon-btn,.sp-app .play-btn,.sp-tabs button,.sp-app .btn.sm{min-width:44px;min-height:44px}.sp-app .sp-tabs button{padding:10px 16px}.coach-mark{width:230px;right:-8px}}@media (prefers-reduced-motion:reduce){.coach-mark{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
