.home{display:flex;flex-direction:column;gap:var(--space-6);min-width:0}.home-eyebrow{margin:0;display:inline-flex;align-items:center;gap:var(--space-2);color:var(--accent-ink);font-size:var(--fs-xs);font-weight:var(--fw-figure);letter-spacing:.06em;text-transform:uppercase;line-height:1.3}.home-eyebrow svg{width:1.35em;height:1.35em}.home-hello{--hello-pad: var(--space-5);position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "figures";gap:var(--space-5);align-items:end;padding:var(--space-6) var(--hello-pad) var(--hello-pad);border:var(--hair) solid var(--line);border-radius:var(--r-xl);background:linear-gradient(135deg,var(--accent-tint),var(--card) 70%);box-shadow:var(--shadow)}.home-hello__art{display:none}.home-hello__strings{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.home-hello__string{fill:none;stroke-width:2.5;stroke-linecap:round;opacity:.6;vector-effect:non-scaling-stroke}.home-hello__string--g{stroke:var(--string-g)}.home-hello__string--d{stroke:var(--string-d)}.home-hello__string--a{stroke:var(--string-a)}.home-hello__string--e{stroke:var(--string-e)}.home-hello__copy{grid-area:copy;display:flex;flex-direction:column;gap:var(--space-2);max-width:46rem;min-width:0}@media(min-width:621px){.home-hello{grid-template-columns:minmax(0,1fr) minmax(0,34%);grid-template-areas:"copy art" "figures figures"}.home-hello__art{grid-area:art;align-self:stretch;display:block;position:relative;min-height:calc(var(--tap) * 3);margin:calc(-1 * var(--space-6)) calc(-1 * var(--hello-pad)) 0 calc(-1 * var(--space-5));-webkit-mask-image:linear-gradient(90deg,transparent,#000 35%);mask-image:linear-gradient(90deg,transparent,#000 35%)}}.home-hello__date{margin:0;color:var(--ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.home-hello__title{margin:0;font-family:var(--font-display);font-weight:var(--fw-title);font-size:clamp(var(--fs-2xl),4.4vw,calc(46px * var(--scale)));line-height:1.05;letter-spacing:-.03em;overflow-wrap:anywhere}.home-hello__lead{margin:0;color:var(--ink-soft);font-size:var(--fs-lg);line-height:1.45;max-width:36em}.home-figures{grid-area:figures;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.home-figure{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:var(--space-1);min-width:0;padding:var(--space-3) var(--space-4);border-radius:var(--r-md);background:var(--card);border:var(--hair) solid var(--line)}.home-figure__value{margin:0;color:var(--ink);font-size:var(--fs-xl);font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;line-height:1.15;letter-spacing:-.01em}.home-figure__label{display:flex;align-items:center;gap:var(--space-1);color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);line-height:1.3}.home-figure__label svg{width:1.25em;height:1.25em;color:var(--accent-ink)}@media(min-width:560px){.home-figures{grid-template-columns:repeat(4,minmax(0,1fr))}}.home-main,.home-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:stretch}.home-waiting{min-height:calc(var(--tap) * 6);border-radius:var(--r-lg);background:var(--paper-2)}.home-continue{position:relative;isolation:isolate;overflow:hidden;min-width:0;display:grid;grid-template-rows:1fr auto;grid-template-columns:clamp(calc(96px * var(--scale)),36%,calc(240px * var(--scale))) minmax(0,1fr);grid-template-areas:"art text" "actions actions";gap:var(--space-4);padding:var(--space-5);border:var(--hair) solid var(--line);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow)}.home-continue:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.2;background:linear-gradient(160deg,var(--cover-a),var(--cover-b) 50%,transparent 85%)}.home-continue--pick{grid-template-columns:minmax(0,1fr);grid-template-areas:"text" "actions"}.home-continue--pick:before{display:none}.home-continue__art{grid-area:art;align-self:center;display:block;border-radius:var(--r-md)}.home-continue__art .cover{border-radius:var(--r-md);box-shadow:var(--shadow-lg)}.home-continue__art:hover .cover{filter:brightness(1.1)}.home-continue__art:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.home-continue__text{grid-area:text;align-self:center;display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.home-continue__title{margin:0;font-size:clamp(var(--fs-xl),2.4vw,var(--fs-2xl));line-height:1.12;letter-spacing:-.02em;overflow-wrap:anywhere}.home-continue__by{margin:0;color:var(--ink-soft)}.home-continue__meta{margin:var(--space-1) 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.home-continue__meta .song-row__flag{margin-left:0}.home-continue__facts{color:var(--ink-soft);font-size:var(--fs-sm)}.home-continue__focus{margin:var(--space-1) 0 0;color:var(--ink);font-size:var(--fs-sm);line-height:1.45}.home-continue__focus-label{font-weight:var(--fw-title)}.home-continue__history{margin:var(--space-1) 0 0;color:var(--ink-soft);font-size:var(--fs-sm);line-height:1.45}.home-continue__sessions{display:flex;align-items:flex-end;gap:3px;margin-top:var(--space-2);height:calc(var(--tap) * .7);width:min(100%,calc(9rem * var(--scale)))}.home-continue__session{flex:1 1 0;min-width:0;border-radius:2px 2px 1px 1px;background:var(--accent);opacity:.55}.home-continue__session:last-child{opacity:1}.home-continue__actions{grid-area:actions;align-self:end;display:flex;flex-wrap:wrap;gap:var(--space-2)}.home-continue__actions .btn{flex:1 1 auto}.home-plan{container-type:inline-size;min-width:0;padding:var(--space-5);border:var(--hair) solid var(--line);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow)}.home-plan__head{display:flex;flex-direction:column;gap:var(--space-1)}.home-plan__title{margin:0;font-size:var(--fs-xl);line-height:1.2}.home-plan__sub{margin:0;color:var(--muted);font-size:var(--fs-sm)}.home-plan__steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.home-plan__step{--n: calc(28px * var(--scale));position:relative;display:grid;align-items:center;grid-template-columns:var(--n) calc(40px * var(--scale)) minmax(0,1fr) auto;grid-template-areas:"n art open arrow" "n art why arrow";column-gap:var(--space-3);row-gap:2px;padding:var(--space-3) var(--space-2);border-radius:var(--r-md)}.home-plan__step:hover{background:var(--paper-2)}.home-plan__step:before{content:"";position:absolute;top:0;bottom:0;width:2px;background:var(--line);left:calc(var(--space-2) + var(--n) / 2 - 1px)}.home-plan__step:first-child:before{top:50%}.home-plan__step:last-child:before{bottom:50%}.home-plan__n{grid-area:n;position:relative;z-index:1;pointer-events:none;display:grid;place-items:center;width:var(--n);height:var(--n);border-radius:50%;background:var(--paper-3);color:var(--ink-soft);font-size:var(--fs-xs);font-weight:var(--fw-figure);box-shadow:0 0 0 3px var(--card)}.home-plan__n svg{width:1.1em;height:1.1em}.home-plan__step--done .home-plan__n{background:var(--accent);color:var(--on-accent)}.home-plan__art{grid-area:art;display:block}.home-plan__open{grid-area:open;appearance:none;font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:1px;min-width:0}.home-plan__open:after{content:"";position:absolute;inset:0;border-radius:var(--r-md)}.home-plan__open:focus-visible{outline:none}.home-plan__open:focus-visible:after{outline:3px solid var(--accent);outline-offset:-2px}.home-plan__kind{color:var(--accent-ink);font-size:var(--fs-xs);font-weight:var(--fw-figure);letter-spacing:.05em;text-transform:uppercase;line-height:1.3}.home-plan__ticked{color:var(--ink-soft);font-weight:var(--fw-medium);letter-spacing:0;text-transform:none}.home-plan__name{font-size:var(--fs-base);font-weight:var(--fw-title);line-height:1.25;overflow-wrap:anywhere}.home-plan__why{grid-area:why;margin:0;color:var(--muted);font-size:var(--fs-xs);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-plan__arrow{grid-area:arrow;width:1.1em;height:1.1em;color:var(--muted)}.home-plan__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-1) var(--space-4);padding-top:var(--space-2);border-top:var(--hair) solid var(--line)}.home-plan__progress{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.home-plan__meter{flex:none;width:calc(56px * var(--scale));height:6px;border-radius:var(--r-full);background:var(--paper-3);overflow:hidden}.home-plan__meter-fill{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .4s ease}.home-plan__why-link{appearance:none;font:inherit;background:none;border:0;padding:0;cursor:pointer;min-height:var(--tap);display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent-ink);font-size:var(--fs-sm);font-weight:var(--fw-title)}.home-plan__why-link:hover{text-decoration:underline}.home-plan__why-link svg{width:1em;height:1em}@container (max-width: 25rem){.home-plan__step{grid-template-columns:var(--n) minmax(0,1fr) auto;grid-template-areas:"n open arrow" "n why arrow"}.home-plan__art{display:none}}.home-first{display:flex;flex-direction:column;gap:var(--space-4)}.home-first__head{display:flex;flex-direction:column;gap:var(--space-1)}.home-first__title{margin:0;font-size:var(--fs-2xl);line-height:1.15}.home-first__sub{margin:0;color:var(--ink-soft)}.home-first__steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.home-first__item{display:flex;min-width:0}.home-first__step{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border:var(--hair) solid var(--line);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow);color:var(--ink);text-decoration:none;transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease}.home-first__step:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.home-first__step:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.home-first__top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.home-first__n{display:grid;place-items:center;width:calc(32px * var(--scale));height:calc(32px * var(--scale));border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:var(--fs-sm);font-weight:var(--fw-figure)}.home-first__n svg{width:1.1em;height:1.1em}.home-first__item--done .home-first__n{background:var(--paper-3);color:var(--ink-soft)}.home-first__icon{display:inline-flex;color:var(--accent-ink)}.home-first__icon svg{width:1.8em;height:1.8em}.home-first__name{font-size:var(--fs-lg);font-weight:var(--fw-title);line-height:1.25}.home-first__body{flex:1;color:var(--ink-soft);font-size:var(--fs-sm);line-height:1.5}.home-first__go{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent-ink);font-size:var(--fs-sm);font-weight:var(--fw-title)}.home-first__go svg{width:1em;height:1em}.home-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.home-tool{position:relative;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:var(--hair) solid var(--line);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow);color:var(--ink);text-decoration:none;transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease}.home-tool:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.home-tool:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.home-tool__icon{display:grid;place-items:center;width:var(--tap);height:var(--tap);border-radius:var(--r-sm);background:linear-gradient(180deg,var(--accent-2),var(--accent));color:var(--on-accent)}.home-tool__icon svg{width:1.45em;height:1.45em}.home-tool__text{display:flex;flex-direction:column;gap:2px;min-width:0}.home-tool__title{font-size:var(--fs-base);font-weight:var(--fw-title);line-height:1.25}.home-tool__sub{color:var(--muted);font-size:var(--fs-xs);line-height:1.35}.home-tool__arrow{position:absolute;top:var(--space-4);right:var(--space-4);width:1.1em;height:1.1em;color:var(--muted)}.home-tool--method{grid-column:1 / -1;flex-direction:row;align-items:center;padding-right:calc(var(--space-4) * 2 + 1.1em)}.home-tool--method .home-tool__arrow{top:50%;transform:translateY(-50%)}.home-card{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;padding:var(--space-5);border:var(--hair) solid var(--line);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow)}.home-card__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-3)}.home-card__title{margin:0;font-size:var(--fs-xl);line-height:1.2}.home-card__aside{color:var(--muted);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.home-card__body{margin:0;color:var(--ink-soft);line-height:1.55}.home-card__line{margin:0;color:var(--ink-soft);font-size:var(--fs-sm);line-height:1.5}.home-card__link{align-self:flex-start;margin-top:auto;min-height:var(--tap);display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent-ink);font-size:var(--fs-sm);font-weight:var(--fw-title);text-decoration:none}.home-card__link:hover{text-decoration:underline}.home-card__link svg{width:1em;height:1em}.home-card__action{align-self:flex-start;margin-top:auto}.home-week__total{color:var(--ink);font-size:var(--fs-xl);font-weight:var(--fw-figure);font-variant-numeric:tabular-nums}.home-week__chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.home-week__col{min-width:0;display:flex;flex-direction:column;align-items:center;color:var(--muted);font-size:var(--fs-xs);line-height:1.35}.home-week__col--today{color:var(--accent-ink);font-weight:var(--fw-figure)}.home-week__track{align-self:stretch;height:calc(var(--tap) * 2.5);margin-bottom:var(--space-1);display:flex;align-items:flex-end;justify-content:center;border-bottom:var(--hair) solid var(--line-strong)}.home-week__bar{display:block;width:min(calc(26px * var(--scale)),62%);border-radius:var(--r-xs) var(--r-xs) 3px 3px;background:var(--accent);opacity:.5;transform-origin:50% 100%;animation:home-rise .5s cubic-bezier(.22,1,.36,1) both}.home-week__col--today .home-week__bar{opacity:1}.home-week__none{display:block;width:6px;height:6px;margin-bottom:4px;border-radius:50%;background:var(--line-strong)}@keyframes home-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.home-week__mins{color:var(--ink-soft);font-variant-numeric:tabular-nums}.home-miles__list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3) var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr))}.home-mile{min-width:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);text-align:center}.home-mile__badge{position:relative;display:grid;place-items:center;width:calc(52px * var(--scale));height:calc(52px * var(--scale))}.home-mile__ring{position:absolute;inset:0;width:100%;height:100%}.home-mile__track{fill:none;stroke:var(--line-strong);stroke-width:2.5;stroke-dasharray:3 3.6}.home-mile__fill{fill:none;stroke:var(--accent);stroke-width:3.5;stroke-linecap:round}.home-mile__icon{position:relative;display:grid;place-items:center;color:var(--muted)}.home-mile__icon svg{width:1.45em;height:1.45em}.home-mile--earned .home-mile__track{fill:var(--accent);stroke:var(--accent);stroke-dasharray:none}.home-mile--earned .home-mile__icon{color:var(--on-accent)}.home-mile--next .home-mile__icon{color:var(--accent-ink)}.home-mile__title{color:var(--ink-soft);font-size:var(--fs-xs);font-weight:var(--fw-medium);line-height:1.25}.home-mile--earned .home-mile__title,.home-miles__next{color:var(--ink);font-weight:var(--fw-title)}.home-lesson__title{overflow-wrap:anywhere}.home-tip__words{display:flex;flex-direction:column;gap:var(--space-2)}.home-collection{--home-pad: var(--space-5);position:relative;isolation:isolate;overflow:hidden;min-width:0;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--home-pad);border:var(--hair) solid var(--line);border-radius:var(--r-xl);background:var(--card);box-shadow:var(--shadow)}.home-collection:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.18;background:linear-gradient(120deg,var(--cover-a),var(--cover-b) 45%,transparent 80%)}.home-collection__intro{display:grid;align-items:center;gap:var(--space-4);grid-template-columns:clamp(calc(104px * var(--scale)),24%,calc(200px * var(--scale))) minmax(0,1fr)}.home-collection__cover{display:block;border-radius:var(--r-sm)}.home-collection__cover:hover .cover{filter:brightness(1.1)}.home-collection__cover:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.home-collection__text{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.home-collection__title{margin:0;font-size:var(--fs-2xl);line-height:1.1;letter-spacing:-.02em;overflow-wrap:anywhere}.home-collection__meta{margin:0;color:var(--ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.home-collection__row{margin-inline:calc(-1 * var(--home-pad));padding-inline:var(--home-pad);scroll-padding-inline:var(--home-pad)}@media(min-width:760px){.home-main,.home-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.home-tools{grid-template-columns:repeat(4,minmax(0,1fr))}.home-first__steps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1280px){.home-hello{--hello-pad: var(--space-6)}}@media(max-width:620px){.home{gap:var(--space-5)}.home-hello{--hello-pad: var(--space-4);padding-top:var(--space-5);border-radius:var(--r-lg)}.home-hello__lead{font-size:var(--fs-base)}.home-continue,.home-plan,.home-card,.home-first__step{padding:var(--space-4)}.home-collection{--home-pad: var(--space-4)}.home-collection__intro{align-items:start;grid-template-columns:calc(88px * var(--scale)) minmax(0,1fr)}.home-collection__title{font-size:var(--fs-xl)}.home-plan__step{padding-inline:var(--space-1)}.home-plan__step:before{left:calc(var(--space-1) + var(--n) / 2 - 1px)}}@media(prefers-reduced-motion:reduce){.home-week__bar{animation:none}.home-plan__meter-fill,.home-tool,.home-first__step{transition:none}.home-tool:hover,.home-first__step:hover{transform:none}}:root[data-theme=contrast] .home-hello{background:var(--card)}:root[data-theme=contrast] .home-hello__strings,:root[data-theme=contrast] .home-continue:before,:root[data-theme=contrast] .home-collection:before{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.muted{color:var(--muted);font-size:var(--fs-sm)}.library{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.library__top{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.library__actions{margin-left:auto}.library__status{color:var(--muted);font-size:var(--fs-sm);margin:0}.library-search{flex:1 1 18rem;display:flex;align-items:center;gap:var(--space-2);background:var(--card);border:var(--hair) solid var(--line-strong);border-radius:var(--r-full);padding:0 var(--space-4);min-height:calc(var(--tap) + 4px);color:var(--muted)}.library-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.library-search svg{width:1.2em;height:1.2em;flex:none}.library-search__input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:inherit;font-size:var(--fs-base);padding:var(--space-2) 0;outline:none}.library__nav{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none}.library__nav::-webkit-scrollbar{display:none}.library__tab{appearance:none;font:inherit;font-weight:var(--fw-title);font-size:var(--fs-base);border:0;background:var(--paper-3);color:var(--ink-soft);border-radius:var(--r-full);padding:var(--space-2) var(--space-4);min-height:var(--tap);cursor:pointer;white-space:nowrap}.library__tab:hover{color:var(--ink)}.library__tab[aria-current=page]{background:var(--ink);color:var(--paper)}.cover{position:relative;display:block;overflow:hidden;flex:none;aspect-ratio:1;border-radius:var(--r-sm);background:linear-gradient(145deg,var(--cover-a),var(--cover-b));box-shadow:var(--shadow)}.cover--xs{width:calc(40px * var(--scale));border-radius:var(--r-xs);box-shadow:none}.cover--sm{width:calc(56px * var(--scale));border-radius:var(--r-xs);box-shadow:none}.cover--md{width:100%}.cover--lg{width:min(14rem,44vw);border-radius:var(--r-md);box-shadow:var(--shadow-lg)}.cover__art{position:absolute;inset:0;width:100%;height:100%}.cover__art line,.cover__art circle,.cover__art path{fill:none;stroke:#ffffff3d;stroke-width:1.3}.cover__fill circle,.cover__fill rect{fill:#fff3;stroke:none}.cover__mark{position:absolute;right:8%;bottom:4%;color:#ffffffe6;font-weight:var(--fw-figure);font-size:var(--fs-3xl);line-height:1;letter-spacing:-.03em}.cover--sm .cover__mark{font-size:var(--fs-lg)}.cover--lg .cover__mark{font-size:calc(96px * var(--scale))}.cover__mark--monogram{inset:0 auto auto 0;display:grid;place-items:center;width:100%;height:100%}.cover__title{position:absolute;left:9%;right:9%;top:9%;color:#fff;font-weight:var(--fw-figure);font-size:var(--fs-base);line-height:1.12;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 2px rgba(0,0,0,.3)}.cover--lg .cover__title{font-size:var(--fs-xl)}.cover-picker__input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.cover__picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.library-home{display:flex;flex-direction:column;gap:var(--space-6)}.library-home__greeting{margin:0;font-size:var(--fs-2xl)}.quick-picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}@media(min-width:900px){.quick-picks{grid-template-columns:repeat(4,minmax(0,1fr))}}.quick-pick{appearance:none;font:inherit;display:flex;align-items:center;gap:var(--space-3);border:0;border-radius:var(--r-sm);background:var(--card);color:var(--ink);padding:0 var(--space-3) 0 0;overflow:hidden;cursor:pointer;text-align:left;box-shadow:var(--shadow)}.quick-pick:hover{background:var(--paper-2)}.quick-pick .cover{border-radius:0}.quick-pick__title{font-weight:var(--fw-title);font-size:var(--fs-sm);line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.shelf{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.shelf__head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3)}.shelf__title{margin:0;font-size:var(--fs-xl)}.shelf__sub{margin:var(--space-1) 0 0;color:var(--muted);font-size:var(--fs-sm)}.shelf__all{appearance:none;font:inherit;border:0;background:none;color:var(--muted);cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-title);padding:var(--space-2) 0;white-space:nowrap}.shelf__all:hover{color:var(--ink);text-decoration:underline}.shelf__row{display:grid;grid-auto-flow:column;grid-auto-columns:calc(150px * var(--scale));gap:var(--space-4);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:var(--space-2);scrollbar-width:thin}.shelf__row>*{scroll-snap-align:start}.shelf__placeholder{display:block;height:calc(210px * var(--scale))}.shelf__row--wrap{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(calc(150px * var(--scale)),1fr));overflow:visible}.album-tile,.composer-tile,.song-tile{appearance:none;font:inherit;border:0;background:none;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-2);text-align:left;padding:0;min-width:0}.album-tile:hover .cover,.song-tile:hover .cover,.composer-tile:hover .cover{filter:brightness(1.12)}.album-tile:focus-visible,.song-tile:focus-visible,.composer-tile:focus-visible,.quick-pick:focus-visible,.browse-tile:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.album-tile__title{font-weight:var(--fw-title);font-size:var(--fs-sm);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.album-tile__sub{color:var(--muted);font-size:var(--fs-xs);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.composer-tile{align-items:center;text-align:center}.composer-tile .cover{border-radius:50%}.song-tile__meta{display:flex;align-items:center;gap:var(--space-2)}.browse{display:flex;flex-direction:column;gap:var(--space-6)}.browse__section{display:flex;flex-direction:column;gap:var(--space-3)}.browse__heading{margin:0;font-size:var(--fs-xl);display:flex;align-items:baseline;gap:var(--space-3)}.browse__count{color:var(--muted);font-size:var(--fs-sm);font-weight:400}.browse__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(170px * var(--scale)),1fr));gap:var(--space-3)}.browse-tile{appearance:none;font:inherit;position:relative;overflow:hidden;cursor:pointer;text-align:left;border:0;border-radius:var(--r-sm);color:#fff;min-height:calc(var(--tap) * 2);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1);background:linear-gradient(145deg,var(--cover-a),var(--cover-b))}.browse-tile:hover{filter:brightness(1.1)}.browse-tile__title{font-weight:var(--fw-figure);font-size:var(--fs-base);line-height:1.2;position:relative;z-index:1;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.browse-tile__sub{font-size:var(--fs-xs);color:#ffffffd9;position:relative;z-index:1}.browse-tile__mark{position:absolute;right:var(--space-3);bottom:-.1em;font-size:var(--fs-3xl);font-weight:var(--fw-figure);color:#ffffff59;line-height:1}.composer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(120px * var(--scale)),1fr));gap:var(--space-4)}.album-view{display:flex;flex-direction:column;gap:var(--space-5)}.album-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-5);position:relative;padding-top:var(--space-6)}.album-head__back{position:absolute;top:0;left:0}.album-head__text{flex:1 1 16rem;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.album-head__kind{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--muted)}.album-head__title{margin:0;font-size:var(--fs-3xl);line-height:1.05;letter-spacing:-.02em;overflow-wrap:anywhere}.album-head__sub{margin:0;color:var(--ink-soft);max-width:46rem}.album-head__meta{margin:0;color:var(--muted);font-size:var(--fs-sm)}.album-head{isolation:isolate;padding-left:var(--space-3);padding-right:var(--space-3)}.album-head .album-head__back{left:var(--space-3)}.album-head{padding-top:calc(var(--tap) + var(--space-3))}.album-head:before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:calc(-1 * var(--space-3)) 0 calc(-1 * var(--space-4));border-radius:var(--r-md);opacity:.26;background:linear-gradient(180deg,var(--cover-a),var(--cover-b) 45%,transparent)}.album-head--artist .cover--lg{border-radius:50%;width:min(12rem,38vw)}.album-head--artist .cover--lg .cover__mark{font-size:min(calc(72px * var(--scale)),13vw)}.album-head__avatar{display:block;flex:none}.shelf__row--wide{grid-auto-columns:calc(196px * var(--scale))}.ladder-card{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.ladder-card__cover{appearance:none;border:0;padding:0;background:none;cursor:pointer;border-radius:var(--r-sm)}.ladder-card__cover:hover .cover{filter:brightness(1.12)}.ladder-card__cover:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.ladder-card__steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.ladder-card__step{display:flex;align-items:center;width:100%;justify-content:space-between;gap:var(--space-2)}.ladder-card__step>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ladder-card__level{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.popular__more{align-self:flex-start}.list-tools{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.list-tools__field{display:inline-flex}.list-tools__count{color:var(--muted);font-size:var(--fs-sm);margin-right:auto}.select--sm{min-height:calc(var(--tap) - 6px);padding-top:var(--space-1);padding-bottom:var(--space-1);font-size:var(--fs-sm);width:auto}.songs-view{min-width:0}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.filter-bar>.select,.list-tools .select{width:auto;flex:0 1 auto;max-width:16rem}@media(max-width:720px){.filter-bar{flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--space-1);scrollbar-width:none}.filter-bar::-webkit-scrollbar{display:none}.filter-bar>*{flex:none}}.style-chips,.segmented-nav{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1);scrollbar-width:thin}.style-chips .chip,.segmented-nav .chip{white-space:nowrap;flex:none}.more-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:var(--space-3)}.vrows{position:relative;contain:layout}.vrows__window{position:absolute;left:0;right:0;top:0;will-change:transform}.vrows__row{box-sizing:border-box}.song-table{--c-lead: calc(48px * var(--scale));--c-style: 11rem;--c-pop: 6.5rem;--c-key: 6rem;--c-level: 5rem;--c-len: 4rem;--c-prac: 0px;--c-ver: 10.5rem;--c-act: calc(2 * var(--tap) + var(--space-1));min-width:0}.song-table--practised{--c-prac: 6.25rem}.song-table:not(.song-table--practised) .song-table__cell--prac,.song-table:not(.song-table--practised) .song-row__practised{display:none}.song-row,.song-table__head{display:grid;grid-template-columns:minmax(0,1fr) var(--c-ver) var(--c-act);align-items:center}.song-row__open,.song-table__main{grid-column:1}.song-row__versions,.song-table__cell--versions{grid-column:2}.song-row__actions,.song-table__cell--actions{grid-column:3}.song-row__open,.song-table__main{display:grid;align-items:center;min-width:0;grid-template-columns:var(--c-lead) minmax(0,1fr) var(--c-style) var(--c-pop) var(--c-key) var(--c-level) var(--c-len) var(--c-prac);grid-template-areas:"lead title style pop key level len prac"}.song-row__leadcell,.song-table__cell--lead{grid-area:lead}.song-row__text,.song-table__cell--title{grid-area:title}.song-row__facets,.song-table__cell--style{grid-area:style}.song-row__pop,.song-table__cell--pop{grid-area:pop}.song-row__key,.song-table__cell--key{grid-area:key}.song-row__level,.song-table__cell--level{grid-area:level}.song-row__length,.song-table__cell--len{grid-area:len}.song-row__practised,.song-table__cell--prac{grid-area:prac}.song-table__head{border-bottom:var(--hair) solid var(--line-strong);min-height:calc(var(--control-h) + var(--space-1))}@media(min-width:900px){.song-table__head{position:sticky;top:0;z-index:2;background:var(--paper)}}.song-table__cell{min-width:0;padding:var(--space-1) var(--space-2);color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-title);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-table__cell--title{display:flex;align-items:center;gap:0;padding-left:var(--space-3)}.song-table__cell--title .song-table__cell{padding-inline:var(--space-1);text-transform:inherit;letter-spacing:inherit}.song-table__cell--title .song-table__cell:first-child{padding-left:0}.song-table__sort{appearance:none;font:inherit;font-size:var(--fs-xs);background:none;border:0;cursor:pointer;text-align:left;display:inline-flex;align-items:center;gap:2px;min-height:var(--control-h);border-radius:var(--r-xs)}.song-table__sort:hover,.song-table__sort[aria-pressed=true]{color:var(--ink)}.song-table__sort:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.song-table__label{overflow:hidden;text-overflow:ellipsis}.song-table__arrow{width:1em;height:1em;flex:none}.song-table__cell--len,.song-row__length,.song-table__cell--prac,.song-row__practised{justify-content:flex-end;text-align:right}.song-table__cell--len .icon{width:1.25em;height:1.25em}.song-list{min-width:0}.song-table>.song-list:first-child{border-top:var(--hair) solid var(--line)}.song-table__cell--actions{padding:0}.song-row{height:100%;border-bottom:var(--hair) solid var(--line)}.song-row:hover{background:var(--paper-2)}.song-row__open{appearance:none;font:inherit;color:inherit;background:none;border:0;cursor:pointer;text-align:left;height:100%;padding:0}.song-row__open:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.song-row__leadcell{display:flex;align-items:center;justify-content:center}.song-row__lead{width:calc(40px * var(--scale));height:calc(40px * var(--scale));border-radius:var(--r-xs);display:grid;place-items:center;font-weight:var(--fw-title);font-size:var(--fs-sm);background:color-mix(in srgb,var(--song-accent, var(--accent)) 16%,var(--card));color:var(--ink)}.song-row__text{min-width:0;display:flex;flex-direction:column;gap:2px;padding:0 var(--space-2) 0 var(--space-3)}.song-row__title{font-weight:var(--fw-title);font-size:var(--fs-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-row__flag{margin-left:var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--accent-ink);background:var(--accent-tint);border-radius:var(--r-full);padding:0 var(--space-2);vertical-align:2px}.song-row__sub{color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-row__facets,.song-row__key,.song-row__length,.song-row__practised{color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 var(--space-2);min-width:0}.song-row__length,.song-row__practised{font-variant-numeric:tabular-nums}.song-row__level{padding:0 var(--space-2);min-width:0;display:flex;align-items:center}.song-row__pop{display:flex;align-items:flex-end;gap:2px;height:.95rem;padding:0 var(--space-2)}.song-row__pop i{display:block;width:4px;border-radius:1px;background:var(--line-strong)}.song-row__pop i:nth-child(1){height:30%}.song-row__pop i:nth-child(2){height:45%}.song-row__pop i:nth-child(3){height:60%}.song-row__pop i:nth-child(4){height:80%}.song-row__pop i:nth-child(5){height:100%}.song-row__pop i.on{background:var(--accent)}.song-row__versions{display:flex;align-items:center;gap:2px;min-width:0;padding:0 var(--space-1)}.song-row__version{appearance:none;font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-title);cursor:pointer;border:var(--hair) solid var(--line-strong);background:var(--card);color:var(--ink-soft);border-radius:var(--r-xs);padding:2px var(--space-2);min-height:32px;display:inline-flex;align-items:center;gap:3px}.song-row__version[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.song-row__version-level{font-weight:400;opacity:.8}.song-row__actions{display:flex;align-items:center;justify-content:flex-end;gap:0;padding-right:var(--space-1)}.song-row__icon{appearance:none;border:0;background:none;color:var(--muted);cursor:pointer;flex:none;width:var(--tap);height:var(--tap);display:grid;place-items:center;border-radius:50%}.song-row__icon:hover{color:var(--ink);background:var(--paper-3)}.song-row__icon[aria-pressed=true]{color:var(--accent)}.song-row__icon svg{width:1.2em;height:1.2em}@media(max-width:1599px){.song-table{--c-style: 0px;--c-prac: 0px}.song-row__facets,.song-table__cell--style,.song-row__practised,.song-table__cell--prac{display:none!important}}@media(max-width:1279px){.song-table{--c-key: 0px}.song-row__key,.song-table__cell--key{display:none}}@media(max-width:1100px){.song-table{--c-pop: 0px;--c-ver: 8rem}.song-row__pop,.song-table__cell--pop,.song-row__versions .song-row__version-level{display:none}}@media(max-width:480px){.song-table{--c-len: 0px}.song-row__length,.song-table__cell--len{display:none}}.song-row__sub-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.song-row__versions-note,.song-row__level-inline,.song-row__flag--inline{display:none}@media(max-width:600px){.song-table{--c-ver: 0px;--c-level: 0px;--c-lead: calc(44px * var(--scale))}.song-row__versions,.song-table__cell--versions,.song-row__level,.song-table__cell--level,.song-row__title .song-row__flag{display:none}.song-row__versions-note{display:inline;flex:none;white-space:nowrap;margin-left:calc(var(--space-2) * -.5)}.song-row__title{white-space:normal;line-height:1.2;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.song-row__sub{display:flex;align-items:center;gap:var(--space-2)}.song-row__level-inline,.song-row__flag--inline{display:inline-flex;flex:none}.song-row__flag--inline{margin-left:0;padding:0 var(--space-1)}.song-row__level-inline .level-badge__bar{display:none}.song-row__level-inline .level-badge__n:before{content:"L"}.song-row__text{padding-inline:var(--space-2) var(--space-1)}}.setlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.setlist__row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:var(--hair) solid var(--line)}.setlist__n{width:2rem;text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.setlist__title{appearance:none;font:inherit;font-weight:var(--fw-title);border:0;background:none;color:var(--ink);text-align:left;cursor:pointer;flex:1;min-width:0;padding:var(--space-2) 0}.setlist__title:disabled{color:var(--muted);cursor:default}.search-view{display:flex;flex-direction:column;gap:var(--space-6)}.top-result{display:flex;flex-direction:column;gap:var(--space-3);max-width:28rem}.top-result__card{appearance:none;font:inherit;color:var(--ink);cursor:pointer;text-align:left;display:grid;grid-template-columns:calc(96px * var(--scale)) 1fr;grid-template-rows:auto auto auto;column-gap:var(--space-4);align-items:center;padding:var(--space-4);border-radius:var(--r-md);border:0;background:var(--card);box-shadow:var(--shadow)}.top-result__card:hover{background:var(--paper-2)}.top-result__card .cover{grid-row:1 / 4}.top-result__title{font-weight:var(--fw-figure);font-size:var(--fs-xl);line-height:1.15}.top-result__sub{color:var(--muted)}.top-result__meta{display:flex;gap:var(--space-2);align-items:center}.song-card__flag--version{background:var(--accent-tint);color:var(--accent-ink);border-color:transparent}.song-card__flag--versions{border-style:dashed}.famous-levels{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.level-chips{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1);scrollbar-width:none}.level-chips::-webkit-scrollbar{display:none}.level-chip{appearance:none;font:inherit;flex:none;cursor:pointer;display:inline-flex;align-items:baseline;gap:var(--space-1);border:var(--hair) solid var(--line-strong);background:var(--card);color:var(--ink-soft);border-radius:var(--r-full);padding:var(--space-2) var(--space-3);min-height:var(--tap)}.level-chip__n{font-weight:var(--fw-figure);font-variant-numeric:tabular-nums}.level-chip__name{font-size:var(--fs-sm)}.level-chip[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}@media(max-width:720px){.level-chip__name{display:none}}.details-cover{display:flex;align-items:center;gap:var(--space-4)}.details-cover__art{flex:none;width:calc(96px * var(--scale))}.details-cover__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.details-why{display:block}.tuner{container-type:inline-size;min-width:0}.tuner__stage{display:grid;gap:var(--space-4);align-items:start;min-width:0}.tuner__side{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}@container (min-width: 880px){.tuner__stage{grid-template-columns:minmax(0,1.25fr) minmax(340px,.85fr)}.tuner__face-card{position:sticky;top:var(--space-4)}}.tuner__face-card{padding:var(--space-4) var(--space-4) var(--space-5)}.tuner__steps{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:var(--space-2)}.tuner__keylist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--fs-sm)}@media(hover:none){.tuner__keys{display:none}}.tface{--tone: var(--muted);--halo: transparent;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;min-width:0;background:radial-gradient(ellipse 60% 42% at 50% 34%,var(--halo),transparent 70%);border-radius:var(--r-md)}.tface[data-tone=ok]{--tone: var(--ok);--halo: color-mix(in srgb, var(--ok) 16%, transparent)}.tface[data-tone=near]{--tone: var(--warn);--halo: color-mix(in srgb, var(--warn) 9%, transparent)}.tface[data-tone=far]{--tone: var(--danger);--halo: color-mix(in srgb, var(--danger) 7%, transparent)}.tface[data-held=true]{--halo: transparent}.tface__top{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--fs-sm);color:var(--muted)}.tface__status{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--fw-title);color:var(--ink-soft)}.tface__dot{width:.62em;height:.62em;border-radius:var(--r-full);background:var(--line-strong);flex:none}.tface__status[data-on=true] .tface__dot{background:var(--ok);animation:tface-breathe 2.4s ease-in-out infinite}.tface__a4{font-variant-numeric:tabular-nums}.tface__level{position:relative;width:4.5rem;height:6px;border-radius:var(--r-full);background:var(--paper-3);overflow:hidden;flex:none}.tface__level-fill{position:absolute;inset:0;transform-origin:left center;transform:scaleX(0);background:var(--accent);border-radius:inherit}.tface__note{min-height:calc(7.4rem * var(--scale));display:flex;align-items:center;justify-content:center}.tnote{display:flex;flex-direction:column;align-items:center;line-height:1}.tnote__name{font-size:clamp(calc(3.6rem * var(--scale)),13vw,calc(6.6rem * var(--scale)));font-weight:var(--fw-figure);letter-spacing:-.02em;color:var(--ink);transition:color .25s ease}.tnote__name--pair{font-size:clamp(calc(2.6rem * var(--scale)),9vw,calc(4.4rem * var(--scale)))}.tnote__acc{font-size:.55em;vertical-align:.62em;margin-left:.02em;font-weight:var(--fw-title)}.tnote__octave{font-size:.4em;font-weight:var(--fw-title);vertical-align:baseline;margin-left:.05em;color:var(--muted)}.tnote__alt{font-size:var(--fs-lg);color:var(--ink-soft);margin-top:var(--space-1)}.tnote__sub{font-size:var(--fs-sm);color:var(--muted);margin-top:var(--space-2);font-variant-numeric:tabular-nums}.tnote__name--idle{font-size:clamp(calc(2rem * var(--scale)),6vw,calc(3rem * var(--scale)));color:var(--muted);font-weight:var(--fw-title);letter-spacing:0}.tface[data-tone=ok] .tnote__name{color:var(--ok)}.tface[data-held=true] .tnote__name{color:var(--muted)}.tface[data-locked=true] .tnote__name{animation:tface-bloom .7s ease-out}.tface__dial{width:100%;max-width:30rem;height:auto;display:block;overflow:visible}.tface__track{fill:none;stroke:var(--paper-3);stroke-width:12;stroke-linecap:round}.tface__wedge{fill:var(--ok-tint);opacity:.8;transition:opacity .3s ease}.tface__zone{fill:none;stroke:var(--ok);stroke-width:12}.tface__tick{stroke:var(--line-strong);stroke-width:2;stroke-linecap:round}.tface__tick--major{stroke:var(--muted);stroke-width:2.5}.tface__figure{fill:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.tface__figure--zero{fill:var(--ink);font-weight:var(--fw-figure)}.tface__end{fill:var(--muted);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase}.tface__needle-line{stroke:var(--ink);stroke-width:3.5;stroke-linecap:round}.tface__needle-head{fill:var(--tone);stroke:var(--card);stroke-width:3;transition:fill .2s ease}.tface__pivot{fill:var(--ink)}.tface[data-tone=idle] .tface__needle{opacity:.22}.tface[data-held=true] .tface__needle-line{stroke-dasharray:8 7;opacity:.55}.tface[data-held=true] .tface__needle-head{opacity:.55}.tface[data-pinned=true] .tface__needle-head{animation:tface-pulse 1s ease-in-out infinite}.tface[data-tone=ok] .tface__wedge{opacity:1}.tface[data-locked=true] .tface__wedge{fill:var(--ok);opacity:.22}.tface__readout{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);width:100%}.tface__cents-box{display:inline-flex;align-items:baseline;gap:.3em}.tface__cents{display:inline-block;min-width:3.2ch;text-align:right;font-size:clamp(calc(2.2rem * var(--scale)),6vw,calc(3.2rem * var(--scale)));font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;line-height:1;color:var(--tone)}.tface[data-tone=idle] .tface__cents{color:var(--muted)}.tface__unit{font-size:var(--fs-sm);color:var(--muted)}.tface__settle{width:calc(2.3rem * var(--scale));height:calc(2.3rem * var(--scale));flex:none}.tface__settle-track{fill:none;stroke:var(--paper-3);stroke-width:3}.tface__settle-fill{fill:none;stroke:var(--ok);stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .1s linear}.tface__settle-tick{fill:none;stroke:var(--ok);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .2s ease}.tface[data-locked=true] .tface__settle-tick{opacity:1}.tface__words{flex-basis:100%;min-height:2.7em;margin:0;font-size:var(--fs-lg);font-weight:var(--fw-title);color:var(--ink);line-height:1.35}.tface__turn{width:1.3em;height:1.3em;margin-right:var(--space-2);vertical-align:-.28em;color:var(--tone)}.tface__held{display:inline-block;font-size:var(--fs-sm);font-weight:var(--fw-title);color:var(--ink-soft);border:var(--hair) dashed var(--line-strong);border-radius:var(--r-full);padding:0 var(--space-2);margin-right:var(--space-1)}.tface__strobe{width:100%;max-width:30rem;height:calc(1.4rem * var(--scale));border-radius:var(--r-full);border:var(--hair) solid var(--line);background-color:var(--paper-2);background-image:repeating-linear-gradient(90deg,var(--line-strong) 0 14px,transparent 14px 28px);background-size:28px 100%}.tface[data-tone=ok] .tface__strobe{background-image:repeating-linear-gradient(90deg,var(--ok) 0 14px,var(--ok-tint) 14px 28px)}.tface[data-tone=idle] .tface__strobe{opacity:.35}.tface__trace{width:100%;max-width:30rem;height:calc(5.5rem * var(--scale));border-radius:var(--r-sm);background:var(--paper-2);border:var(--hair) solid var(--line)}.tface__trace-band{fill:var(--ok-tint)}.tface__trace-zero{stroke:var(--ok);stroke-width:1;vector-effect:non-scaling-stroke}.tface__trace-line{fill:none;stroke:var(--accent-ink);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.tface__actions{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:100%}.tface__go{min-width:min(100%,17rem)}.tface__line{margin:0;max-width:34rem;min-height:2.9em;line-height:1.45;font-size:var(--fs-sm);color:var(--muted);display:flex;align-items:center;justify-content:center}.tface__line[data-kind=hint]{color:var(--warn);font-size:var(--fs-base);font-weight:var(--fw-medium)}.tface__line[data-kind=locked]{color:var(--ok);font-size:var(--fs-base);font-weight:var(--fw-title)}.tface__problem{width:100%;text-align:left}@keyframes tface-breathe{0%,to{opacity:1}50%{opacity:.35}}@keyframes tface-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes tface-bloom{0%{transform:scale(1)}35%{transform:scale(1.06)}to{transform:scale(1)}}.tside{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.tside__block{display:flex;flex-direction:column;gap:var(--space-3)}.tside__title{margin:0;font-size:var(--fs-lg)}.tside__note{margin:0;font-size:var(--fs-sm);color:var(--ink-soft);line-height:1.45}.tside__row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tside__row--split{justify-content:space-between;align-items:center;flex-wrap:nowrap}.tside__advice{margin:0;font-size:var(--fs-base);font-weight:var(--fw-title)}.tside__next{align-self:flex-start}.tside__drone{width:100%}.tstrings{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2)}.tstring{position:relative;appearance:none;font:inherit;cursor:pointer;min-height:calc(var(--tap) * 1.5);padding:var(--space-2) var(--space-1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:var(--r-md);border:2px solid var(--str-ink, var(--line-strong));background:var(--card);color:var(--ink)}.tstring:hover:not([aria-pressed=true]){background:var(--paper-2)}.tstring__name{font-size:var(--fs-xl);font-weight:var(--fw-figure);line-height:1.1;color:var(--str-ink, var(--ink))}.tstring__hz{font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.tstring[aria-pressed=true]{background:var(--str, var(--accent));border-color:var(--str-ink, var(--accent-2))}.tstring[aria-pressed=true] .tstring__name,.tstring[aria-pressed=true] .tstring__hz{color:var(--str-on, var(--on-accent))}.tstring--auto .tstring__name{font-size:var(--fs-lg)}.tstring[data-found=true]{outline:3px solid var(--accent);outline-offset:2px}.tstring__done{position:absolute;top:4px;right:4px;color:var(--ok)}.tstring[aria-pressed=true] .tstring__done{color:var(--str-on, var(--on-accent))}.tturn{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border-radius:var(--r-md);background:var(--paper-2);border:var(--hair) solid var(--line);min-height:calc(6.5rem * var(--scale))}.tturn[data-action=tighten],.tturn[data-action=loosen]{background:var(--warn-tint);border-color:var(--warn)}.tturn[data-action=hold]{background:var(--ok-tint);border-color:var(--ok)}.tturn__icon{flex:none;font-size:calc(2.4rem * var(--scale));line-height:1;color:var(--ink)}.tturn__head{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-figure);color:var(--ink)}.tturn__detail{margin:var(--space-1) 0 0;font-size:var(--fs-sm);color:var(--ink);line-height:1.45}.tbeat{display:flex;align-items:center;gap:var(--space-3)}.tbeat__dot{width:calc(2.2rem * var(--scale));height:calc(2.2rem * var(--scale));flex:none;border-radius:var(--r-full);background:var(--accent);animation:tbeat 1s ease-in-out infinite}.tbeat__dot[data-still=true]{animation:none;background:var(--line-strong)}.tbeat__words{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-title);font-variant-numeric:tabular-nums}@keyframes tbeat{0%,to{transform:scale(.5);opacity:.4}50%{transform:scale(1);opacity:1}}.tvib{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--fs-base);font-variant-numeric:tabular-nums;text-align:left}.tvib__wave{width:3em;height:1em;flex:none;fill:none;stroke:var(--accent-ink);stroke-width:2;stroke-linecap:round}.tkeys{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-2)}.tkeys__key{min-width:0;justify-content:center;padding-inline:0}@media(max-width:420px){.tstrings{grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-1)}.tstring__name{font-size:var(--fs-lg)}.tkeys{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.tface__status[data-on=true] .tface__dot,.tface[data-pinned=true] .tface__needle-head,.tface[data-locked=true] .tnote__name{animation:none}.tbeat__dot{animation-duration:0s!important;animation:none}}.live-tuner__meter{position:relative;width:100%;height:calc(2rem * var(--scale));background:var(--paper-2);border:var(--hair) solid var(--line);border-radius:var(--r-sm);overflow:hidden}.listen__zone{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,var(--warn-tint) 0 6px,transparent 6px 12px)}.listen__zone--low{border-left:1px dashed var(--warn)}.listen__zone--high{border-right:1px dashed var(--warn)}.listen__band{position:absolute;top:0;bottom:0;left:50%;translate:-50% 0;background:var(--ok-tint);border-left:1px solid var(--ok);border-right:1px solid var(--ok);opacity:.75}.listen__centre{position:absolute;top:12%;bottom:12%;left:50%;width:2px;translate:-1px 0;background:var(--muted)}.listen__needle{position:absolute;top:8%;bottom:8%;width:4px;translate:-2px 0;border-radius:2px;background:var(--edge);transition:left .09s linear}.listen__mark{width:1.5em;height:1.5em;flex:none;fill:none;stroke:var(--listen-edge, var(--ink));stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.listen__mark-fill{fill:var(--listen-edge, var(--ink));stroke:none}.live-tuner__voices{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--fs-base)}.live-tuner__voice{--listen-edge: var(--muted);display:flex;align-items:center;gap:var(--space-2)}.live-tuner__voice[data-band=in]{--listen-edge: var(--ok)}.live-tuner__voice[data-band=slight]{--listen-edge: var(--warn)}.live-tuner__voice[data-band=far],.live-tuner__voice[data-band=missing]{--listen-edge: var(--danger)}.live-tuner__timing{--listen-edge: var(--warn);display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.live-tuner__timing[data-timing=on-time]{--listen-edge: var(--ok)}.live-tuner__subhead{margin:0 0 var(--space-2);font-size:var(--fs-base)}.live-tuner__summary{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-3);border-top:var(--hair) solid var(--line)}.live-tuner__summary .live-tuner__subhead{margin:0}.live-tuner__big{margin:0;font-size:var(--fs-base)}.live-tuner__big strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums}.live-tuner__share{font-size:var(--fs-sm);color:var(--muted)}.live-tuner__split{display:flex;gap:2px;height:10px;border-radius:var(--r-full);overflow:hidden;background:var(--paper-3)}.live-tuner__split span{min-width:0}.live-tuner__split span[data-kind=flat]{background:var(--flat-ink)}.live-tuner__split span[data-kind=in]{background:var(--played-ink)}.live-tuner__split span[data-kind=sharp]{background:var(--sharp-ink)}.live-tuner__legend{margin:0;font-size:var(--fs-sm);color:var(--ink-soft)}.live-tuner__tendencies{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.live-tuner__tendencies li{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm);padding:var(--space-2) var(--space-3);border-radius:var(--r-sm);background:var(--paper-2);border-left:4px solid var(--line-strong)}.live-tuner__tendencies li[data-kind=sharp]{border-left-color:var(--sharp-ink)}.live-tuner__tendencies li[data-kind=flat]{border-left-color:var(--flat-ink);border-left-style:dashed}.live-tuner__tendencies span{color:var(--ink-soft)}.start-meter{--start-edge: var(--warn);position:relative;width:100%;height:calc(1.6rem * var(--scale));margin-bottom:1.1em;background:var(--paper-2);border:var(--hair) solid var(--line);border-radius:var(--r-sm)}.start-meter[data-timing=on-time]{--start-edge: var(--ok)}.start-meter__zone{position:absolute;top:0;bottom:0;background:var(--ok-tint);border-left:1px solid var(--ok);border-right:1px solid var(--ok)}.start-meter__beat{position:absolute;top:10%;bottom:10%;left:50%;width:2px;translate:-1px 0;background:var(--muted)}.start-meter__dot{position:absolute;top:50%;width:.9em;height:.9em;translate:-50% -50%;border-radius:var(--r-full);background:var(--timing-ink);box-shadow:0 0 0 2px var(--card);transition:left .12s ease-out}.start-meter__words{position:absolute;left:0;right:0;top:100%;display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--muted);padding-top:1px}.run-report{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-3);border-top:var(--hair) solid var(--line)}.run-report .live-tuner__subhead{margin:0}.run-report__line{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3);font-size:var(--fs-base)}.run-report__figure strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums;margin-right:.2em}.run-report__habits li[data-kind=timing]{border-left-color:var(--timing-ink)}.run-report__habits li[data-kind=device]{border-left-color:var(--accent);border-left-style:dashed}.run-report__habits li[data-kind=pitch]{border-left-color:var(--flat-ink)}.run-report__bars{display:flex;flex-direction:column;gap:var(--space-1)}.run-report__bars-title{margin:0;font-size:var(--fs-sm)}.run-report__bars ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.run-report__bars li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--fs-sm);min-height:var(--control-h)}.run-report__bars li .btn{flex:none;white-space:nowrap}.run-report__detail{color:var(--ink-soft)}.delay-check{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--fs-sm)}.delay-check__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.delay-check__text{display:flex;flex-direction:column;min-width:0}.delay-check__label{font-weight:var(--fw-title)}.delay-check__sub{color:var(--ink-soft);font-size:var(--fs-xs)}.delay-check__say{margin:0;color:var(--ink-soft);line-height:1.45}.delay-check__say:empty{display:none}.delay-check__forget{align-self:flex-start}.marks-legend{list-style:none;margin:0 0 var(--space-2);padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.marks-legend li{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.marks-legend svg{width:1.3em;height:1.3em;flex:none}@media(max-width:1099px){.live-tuner__meter{height:calc(1.25rem * var(--scale))}}.live-chip{position:fixed;left:0;top:0;z-index:20;pointer-events:none;display:inline-flex;align-items:baseline;gap:.25em;padding:1px var(--space-2);border-radius:var(--r-full);background:var(--card);color:var(--ink);border:2px solid var(--line-strong);box-shadow:var(--shadow);font-size:var(--fs-sm);font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;white-space:nowrap;opacity:0;transition:opacity .18s ease}.live-chip[data-shown=true]{opacity:1}.live-chip:empty{display:none}.live-chip span{font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--ink-soft)}.live-chip[data-kind=in]{border-color:var(--played-ink)}.live-chip[data-kind=sharp]{border-color:var(--sharp-ink)}.live-chip[data-kind=flat]{border-color:var(--flat-ink);border-style:dashed}.live-chip[data-band=far]{border-width:3px}@media(prefers-reduced-motion:reduce){.listen__needle,.live-chip{transition:none}}.check{--edge: var(--line-strong);display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3);margin-bottom:var(--space-2);border-bottom:var(--hair) solid var(--line)}.check[data-tone=in]{--edge: var(--ok)}.check[data-tone=slight]{--edge: var(--warn)}.check[data-tone=far]{--edge: var(--danger)}.check__strip{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4)}.check__state{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.check__status{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-sm);font-weight:var(--fw-title);color:var(--ink-soft)}.check__dot{width:.6em;height:.6em;border-radius:var(--r-full);background:var(--line-strong)}.check__status[data-on=true]{color:var(--played-ink)}.check__status[data-on=true] .check__dot{background:var(--played-ink);animation:tface-breathe 2.4s ease-in-out infinite}.check__chips{display:flex;flex-wrap:wrap;gap:var(--space-1)}.check__chip{appearance:none;font:inherit;cursor:pointer;min-height:var(--control-h);padding:0 var(--space-2);border-radius:var(--r-sm);border:var(--hair) solid var(--line);background:var(--paper-2);color:var(--ink);font-size:var(--fs-xs);font-weight:var(--fw-title);white-space:nowrap}.check__chip:hover{border-color:var(--accent)}.check__want{display:flex;flex-direction:column;line-height:1.1;min-width:7rem}.check__label{font-size:var(--fs-xs);color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.check__note{font-size:calc(2rem * var(--scale));font-weight:var(--fw-figure);font-variant-numeric:tabular-nums}.check__finger{font-size:var(--fs-xs);color:var(--ink-soft)}.check__gauge{flex:1 1 14rem;min-width:11rem;display:flex;flex-direction:column;gap:4px}.check__gauge .live-tuner__meter{height:calc(1.6rem * var(--scale))}.check__scale{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.check__verdict{--listen-edge: var(--edge);display:flex;flex-direction:column;gap:2px;min-width:10rem;flex:1 1 11rem}.check__figure{display:inline-flex;align-items:center;gap:var(--space-2)}.check__cents{font-size:calc(1.5rem * var(--scale));font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;min-width:2.6ch}.check__heading{font-size:var(--fs-base);font-weight:var(--fw-title)}.check__advice{font-size:var(--fs-sm);color:var(--ink-soft);line-height:1.35}.check__tally{font-size:var(--fs-sm);color:var(--ink-soft);white-space:nowrap}.check__tally strong{font-size:var(--fs-lg);color:var(--ink);font-variant-numeric:tabular-nums}.check__actions{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.check__message{margin:0;font-size:var(--fs-sm);line-height:1.45}.check__fix{display:flex;flex-wrap:wrap;gap:var(--space-2)}.check__timing{display:flex;flex-direction:column;gap:var(--space-1)}.check__results{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--r-md);background:var(--paper-2);border:var(--hair) solid var(--line);max-height:40dvh;overflow-y:auto;overscroll-behavior:contain}.check__results-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.check__results-title{margin:0;font-size:var(--fs-lg)}.check__more{align-self:flex-start}.listen-setup{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3);margin-bottom:var(--space-2);border-bottom:var(--hair) solid var(--line);max-height:60dvh;overflow-y:auto;overscroll-behavior:contain}.listen-setup__head{display:flex;align-items:center;gap:var(--space-3)}.listen-setup__icon{width:2.5rem;height:2.5rem;flex:none;border-radius:var(--r-full);display:inline-flex;align-items:center;justify-content:center;background:var(--accent-tint);color:var(--accent-ink);font-size:1.25rem}.listen-setup__titles{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.listen-setup__title{margin:0;font-size:var(--fs-lg)}.listen-setup__lead{font-size:var(--fs-sm);color:var(--muted)}.listen-setup__group{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.listen-setup__legend{padding:0;margin-bottom:var(--space-2);font-size:var(--fs-base);font-weight:var(--fw-title)}.listen-setup__modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:var(--space-2)}.listen-setup__mode{display:flex;gap:var(--space-2);align-items:flex-start;cursor:pointer;padding:var(--space-2) var(--space-3);border-radius:var(--r-md);border:2px solid var(--line);background:var(--card)}.listen-setup__mode[data-on=true]{border-color:var(--accent);background:var(--accent-tint)}.listen-setup__mode input{width:1.2rem;height:1.2rem;margin:.15rem 0 0;flex:none;accent-color:var(--accent)}.listen-setup__modetext{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm);line-height:1.4;color:var(--ink-soft)}.listen-setup__modetext strong{font-size:var(--fs-base);color:var(--ink)}.listen-setup__modetext em{font-style:normal;font-weight:var(--fw-title);color:var(--accent-ink)}.listen-setup__strict{display:flex;flex-direction:column;gap:var(--space-1)}.listen-setup__preview{display:flex;align-items:center;gap:var(--space-3);font-size:var(--fs-xs);color:var(--muted)}.listen-setup__preview .live-tuner__meter{width:min(12rem,40%);height:calc(1.1rem * var(--scale))}.listen-setup__foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.listen-setup__kept{font-size:var(--fs-xs);color:var(--muted)}.listen-setup__more>summary{cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-title);color:var(--accent-ink)}.listen-setup__more[open]{display:flex;flex-direction:column;gap:var(--space-2)}.tune-sheet{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center}.tune-sheet__scrim{position:absolute;inset:0;border:0;padding:0;background:color-mix(in srgb,var(--ink) 40%,transparent);cursor:default}.tune-sheet__panel{position:relative;width:min(1100px,100%);max-height:calc(100dvh - 3rem);overflow-y:auto;overscroll-behavior:contain;padding:var(--space-4);background:var(--paper);border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--shadow-lg)}.tune-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.tune-sheet__title{margin:0;font-size:var(--fs-xl, var(--fs-lg))}@media(max-width:700px){.check{padding:var(--space-2)}.check__strip{gap:var(--space-2)}.check__state{flex-direction:row;align-items:center;flex-wrap:wrap;flex:1 1 auto}.check__actions{order:1;margin-left:auto}.check__stopword{display:none}.check__want{order:2;min-width:5.5rem}.check__verdict{order:3}.check__tally{order:4}.check__note{font-size:calc(1.6rem * var(--scale))}.check__gauge{flex-basis:100%;order:5}.check__verdict{min-width:0}.check__advice{display:none}.check__actions{flex-direction:row;align-items:center}.tune-sheet__panel{padding:var(--space-3);max-height:calc(100dvh - 1rem)}}.song-fav__line{display:flex;align-items:center;gap:var(--space-1);min-width:0}.song-fav__line .song__title{min-width:0;flex:0 1 auto}.song-fav.btn{flex:none;width:var(--control-h);height:var(--control-h);min-height:var(--control-h);padding:var(--space-1);margin-block:calc(var(--space-2) * -1);border-radius:50%;border-color:transparent;background:transparent;background-clip:content-box;color:var(--muted)}.song-fav.btn:focus-visible{outline-offset:calc(var(--space-1) * -1)}.song-fav.btn:hover:not(:disabled){color:var(--ink);background:var(--paper-3);background-clip:content-box;transform:none;box-shadow:none}.song-fav.btn[aria-pressed=true]{color:var(--accent);background:transparent;border-color:transparent}.song-fav.btn[aria-pressed=true]:hover:not(:disabled){background:var(--paper-3);background-clip:content-box}.song-fav svg{width:1.3em;height:1.3em}@keyframes song-fav-pop{0%{transform:scale(1)}45%{transform:scale(1.28)}to{transform:scale(1)}}.song-fav--pop svg{animation:song-fav-pop .26s ease-out}@media(prefers-reduced-motion:reduce){.song-fav--pop svg{animation:none}}:root{--scale: 1;--paper: #eceef3;--paper-2: #f5f6f9;--paper-3: #e0e3ea;--card: #ffffff;--paper-ink-soft: #ffffff;--ink: #14161c;--ink-soft: #333a47;--muted: #5d6572;--line: #dee2ea;--line-strong: #c0c6d2;--accent: #5a4bdc;--accent-2: #6f61e0;--accent-ink: #4536c4;--accent-tint: color-mix(in srgb, var(--accent) 13%, var(--paper));--on-accent: #ffffff;--on-fill: #ffffff;--glass-blur: 28px;--glass-thin: color-mix(in srgb, var(--card) 58%, transparent);--glass: color-mix(in srgb, var(--card) 72%, transparent);--glass-strong: color-mix(in srgb, var(--card) 90%, transparent);--glass-border: rgba(20, 22, 28, .08);--glass-highlight: rgba(255, 255, 255, .92);--glass-shade: rgba(20, 22, 28, .045);--ok: #3f6b4a;--ok-tint: #e2ede4;--warn: #8a5a1c;--warn-tint: #f6ead6;--danger: #96331f;--danger-tint: #f6e0da;--string-g: #1d4ed8;--string-d: #047857;--string-a: #b91c1c;--string-e: #eab308;--string-g-on: #ffffff;--string-d-on: #ffffff;--string-a-on: #ffffff;--string-e-on: #1c1917;--string-g-ink: #1e40af;--string-d-ink: #065f46;--string-a-ink: #991b1b;--string-e-ink: #a16207;--string-g-open: var(--string-g);--string-d-open: var(--string-d);--string-a-open: var(--string-a);--string-e-open: var(--string-e);--string-g-open-figure: var(--string-g);--string-d-open-figure: var(--string-d);--string-a-open-figure: var(--string-a);--string-e-open-figure: var(--string-e-on);--song-1: #059669;--song-2: #d97706;--song-3: #e11d48;--song-4: #7c3aed;--song-5: #0891b2;--inverse-bg: #1c1f27;--inverse-ink: #f3f5f9;--inverse-line: rgba(243, 245, 249, .18);--staff-line: #2b2f3a;--play-ink: #b45309;--play-tint: color-mix(in srgb, var(--play-ink) 26%, transparent);--played-ink: #15803d;--sharp-ink: #b91c1c;--flat-ink: #b45309;--timing-ink: #6d28d9;--select-ink: #2563eb;--select-tint: color-mix(in srgb, var(--select-ink) 14%, transparent);--loop-tint: color-mix(in srgb, var(--accent) 12%, var(--card));--resume-ink: #c2410c;--flag-ink: #15803d;--flag-on: #ffffff;--flag-tint: color-mix(in srgb, var(--flag-ink) 13%, transparent);--flag-off-ink: var(--muted);--flag-off-tint: color-mix(in srgb, var(--muted) 7%, transparent);--choose-ink: var(--flag-ink);--choose-tint: color-mix(in srgb, var(--flag-ink) 20%, transparent);--choose-strip-tint: color-mix(in srgb, var(--flag-ink) 12%, transparent);--r-xs: 8px;--r-sm: 12px;--r-md: 16px;--r-lg: 22px;--r-xl: 28px;--r-full: 999px;--hair: 1px;--hair-strong: 1.5px;--elev-1: 0 1px 2px rgba(28, 26, 23, .06), 0 1px 1px rgba(28, 26, 23, .04);--elev-2: 0 4px 16px rgba(28, 26, 23, .1), 0 1px 3px rgba(28, 26, 23, .06);--elev-3: 0 16px 48px rgba(28, 26, 23, .18), 0 2px 8px rgba(28, 26, 23, .08);--shadow: var(--elev-1);--shadow-lg: var(--elev-2);--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;--font-serif: "New York", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--font: var(--font-sans);--font-display: var(--font-sans);--fs-xs: calc(13px * var(--scale));--fs-sm: calc(15px * var(--scale));--fs-base: calc(17px * var(--scale));--fs-lg: calc(20px * var(--scale));--fs-xl: calc(24px * var(--scale));--fs-2xl: calc(30px * var(--scale));--fs-3xl: calc(38px * var(--scale));--fw-medium: 500;--fw-title: 600;--fw-figure: 700;--tap: max(44px, calc(44px * var(--scale)));--control-h: max(36px, calc(36px * var(--scale)));--r-control: 10px;--r-group: 14px;--space-1: calc(.25rem * var(--scale));--space-2: calc(.5rem * var(--scale));--space-3: calc(.75rem * var(--scale));--space-4: calc(1rem * var(--scale));--space-5: calc(1.5rem * var(--scale));--space-6: calc(2rem * var(--scale));--measure: 1360px;--measure-wide: 1600px;--safe-t: 0px;--safe-b: 0px;--safe-l: 0px;--safe-r: 0px}[data-theme=dark]{color-scheme:dark;--paper: #0c0d11;--paper-2: #14161c;--paper-3: #1c1f27;--card: #171a21;--paper-ink-soft: #171a21;--ink: #eef0f5;--ink-soft: #c9cedb;--muted: #8d95a6;--line: #262a34;--line-strong: #3d4351;--accent: #9d94ff;--accent-2: #b3abff;--accent-ink: #b3abff;--accent-tint: color-mix(in srgb, var(--accent) 22%, var(--paper));--on-accent: #10121a;--on-fill: #ffffff;--glass-blur: 32px;--glass-border: rgba(255, 255, 255, .09);--glass-highlight: rgba(255, 255, 255, .12);--glass-shade: rgba(0, 0, 0, .24);--ok: #4ade80;--ok-tint: #10281a;--warn: #fbbf24;--warn-tint: #2a2010;--danger: #fb7185;--danger-tint: #2c1219;--string-g: #1d4ed8;--string-d: #047857;--string-a: #b91c1c;--string-e: #eab308;--string-g-on: #ffffff;--string-d-on: #ffffff;--string-a-on: #ffffff;--string-e-on: #1c1917;--string-g-ink: #60a5fa;--string-d-ink: #86efac;--string-a-ink: #f87171;--string-e-ink: #fde047;--finger-0-ink: #2dd4bf;--string-g-open: var(--string-g-ink);--string-d-open: var(--string-d-ink);--string-a-open: var(--string-a-ink);--string-e-open: var(--string-e-ink);--string-g-open-figure: var(--string-g-ink);--string-d-open-figure: var(--string-d-ink);--string-a-open-figure: var(--string-a-ink);--string-e-open-figure: var(--string-e-ink);--song-1: #34d399;--song-2: #fbbf24;--song-3: #fb7185;--song-4: #a78bfa;--song-5: #22d3ee;--inverse-bg: #1c1f27;--inverse-ink: #f3f5f9;--inverse-line: rgba(243, 245, 249, .18);--staff-line: #c3c9d6;--play-ink: #fbbf24;--played-ink: #4ade80;--sharp-ink: #f87171;--flat-ink: #fbbf24;--timing-ink: #c4b5fd;--resume-ink: #fb923c;--flag-ink: #4ade80;--flag-on: #052e16;--elev-1: 0 1px 2px rgba(0, 0, 0, .45);--elev-2: 0 4px 18px rgba(0, 0, 0, .5), 0 1px 3px rgba(0, 0, 0, .4);--elev-3: 0 18px 52px rgba(0, 0, 0, .6), 0 2px 8px rgba(0, 0, 0, .45);--shadow: var(--elev-1);--shadow-lg: var(--elev-2)}[data-palette=classic]{--font: var(--font-serif);--font-display: var(--font-serif);--paper: #eae7df;--paper-2: #f2efe8;--paper-3: #e0dcd1;--card: #fbf9f5;--paper-ink-soft: #fbf9f5;--ink: #1c1a17;--ink-soft: #3d3a34;--muted: #665f56;--line: #d8d3c7;--line-strong: #bdb6a6;--accent: #6b2f52;--accent-2: #85426a;--accent-ink: #5a2745;--on-accent: #fdfbf8;--staff-line: #33302b;--play-ink: #9a6112;--inverse-bg: #2c2129;--inverse-ink: #f4efe9}[data-palette=classic][data-theme=dark]{--paper: #16151a;--paper-2: #1e1d23;--paper-3: #26242c;--card: #232128;--paper-ink-soft: #232128;--ink: #f2efea;--ink-soft: #d3cec6;--muted: #9a938c;--line: #35323b;--line-strong: #4f4a55;--accent: #e2a5c8;--accent-2: #eebbd8;--accent-ink: #eebbd8;--on-accent: #1c1119;--staff-line: #c8c1b8;--play-ink: #e8bd6b;--inverse-bg: #3a2f38;--inverse-ink: #f4efe9}[data-palette=rosewood]{--font: var(--font-serif);--font-display: var(--font-serif);--paper: #f1eae0;--paper-2: #f8f4ec;--paper-3: #e5dccd;--card: #fffdf8;--paper-ink-soft: #fffdf8;--ink: #241a12;--ink-soft: #4a3a2a;--muted: #6d5c48;--line: #ddd0bd;--line-strong: #c2ad93;--accent: #9a4a1f;--accent-2: #b45c2c;--accent-ink: #7d3a15;--on-accent: #fffdf8;--staff-line: #3a2b1e;--play-ink: #7a5cc4;--inverse-bg: #2a1f17;--inverse-ink: #f5ece1}[data-palette=rosewood][data-theme=dark]{--paper: #150f0b;--paper-2: #1e1611;--paper-3: #2a1f17;--card: #211812;--paper-ink-soft: #211812;--ink: #f5ece1;--ink-soft: #ddcdb9;--muted: #a08a71;--line: #33261c;--line-strong: #4d3b2c;--accent: #e0915c;--accent-2: #edaa7c;--accent-ink: #edaa7c;--on-accent: #150f0b;--staff-line: #d6c6b2;--play-ink: #b9a2ee;--inverse-bg: #2a1f17;--inverse-ink: #f5ece1}[data-palette=nocturne]{--paper: #e8ecf2;--paper-2: #f3f5f9;--paper-3: #dae0e9;--card: #ffffff;--paper-ink-soft: #ffffff;--ink: #131923;--ink-soft: #33404f;--muted: #56626f;--line: #d7dde5;--line-strong: #b6c0cc;--accent: #1e3a5f;--accent-2: #2d5285;--accent-ink: #16304f;--on-accent: #ffffff;--staff-line: #202a38;--play-ink: #a2620f;--inverse-bg: #131923;--inverse-ink: #eaf0f8}[data-palette=nocturne][data-theme=dark]{--paper: #080b12;--paper-2: #101620;--paper-3: #182130;--card: #121a26;--paper-ink-soft: #121a26;--ink: #eaf0f8;--ink-soft: #c3cedd;--muted: #8593a5;--line: #1e2836;--line-strong: #35455a;--accent: #c8a45a;--accent-2: #d9b874;--accent-ink: #d9b874;--on-accent: #080b12;--staff-line: #c9d4e2;--play-ink: #6fb6e8;--inverse-bg: #182130;--inverse-ink: #eaf0f8}[data-palette=sage]{--paper: #e8ede6;--paper-2: #f2f6ef;--paper-3: #dae2d5;--card: #fdfefb;--paper-ink-soft: #fdfefb;--ink: #161c17;--ink-soft: #35402f;--muted: #586353;--line: #d7ded1;--line-strong: #b6c0af;--accent: #3f6b4a;--accent-2: #4d7d57;--accent-ink: #33583c;--on-accent: #fdfefb;--staff-line: #202a20;--play-ink: #a8520f;--inverse-bg: #1c241c;--inverse-ink: #ecf2ea}[data-palette=sage][data-theme=dark]{--paper: #0a0e0b;--paper-2: #121812;--paper-3: #1a221a;--card: #141b15;--paper-ink-soft: #141b15;--ink: #ecf2ea;--ink-soft: #cad4c6;--muted: #86927f;--line: #1f281f;--line-strong: #374534;--accent: #8fc79b;--accent-2: #a8d6b2;--accent-ink: #a8d6b2;--on-accent: #0a0e0b;--staff-line: #ccd6c8;--play-ink: #f0a94e;--inverse-bg: #1a221a;--inverse-ink: #ecf2ea}[data-palette=ocean]{--paper: #edf4f8;--paper-2: #f7fbfd;--paper-3: #dce9f1;--card: #ffffff;--paper-ink-soft: #ffffff;--ink: #111a20;--ink-soft: #344650;--muted: #536671;--line: #d5e3eb;--line-strong: #b4c9d5;--accent: #0b669e;--accent-2: #157bb7;--accent-ink: #07547f;--on-accent: #ffffff;--staff-line: #24343e;--play-ink: #a85d0b;--inverse-bg: #102432;--inverse-ink: #eef8fd}[data-palette=ocean][data-theme=dark]{--paper: #071016;--paper-2: #0c1a22;--paper-3: #132732;--card: #0e1d26;--paper-ink-soft: #0e1d26;--ink: #eef8fd;--ink-soft: #cadce6;--muted: #8aa0ac;--line: #1d303b;--line-strong: #38505e;--accent: #69c3ff;--accent-2: #8bd1ff;--accent-ink: #8bd1ff;--on-accent: #071016;--staff-line: #c6dce8;--play-ink: #ffc06a;--inverse-bg: #132732;--inverse-ink: #eef8fd}[data-palette=lagoon]{--paper: #ebf5f2;--paper-2: #f5fbf9;--paper-3: #d8eae5;--card: #fdfffe;--paper-ink-soft: #fdfffe;--ink: #101b19;--ink-soft: #324741;--muted: #536a64;--line: #d1e3de;--line-strong: #aec8c1;--accent: #0f6b66;--accent-2: #17837b;--accent-ink: #0b5753;--on-accent: #ffffff;--staff-line: #223631;--play-ink: #a65318;--inverse-bg: #102823;--inverse-ink: #eef9f6}[data-palette=lagoon][data-theme=dark]{--paper: #07110f;--paper-2: #0d1b18;--paper-3: #142722;--card: #0f1e1a;--paper-ink-soft: #0f1e1a;--ink: #edf9f5;--ink-soft: #c8ddd6;--muted: #879e96;--line: #1d302b;--line-strong: #395149;--accent: #73d6cd;--accent-2: #94e3dc;--accent-ink: #94e3dc;--on-accent: #07110f;--staff-line: #c5ddd6;--play-ink: #ffb679;--inverse-bg: #142722;--inverse-ink: #edf9f5}[data-palette=forest]{--paper: #eef3ea;--paper-2: #f7faf4;--paper-3: #dfe8d8;--card: #fefffc;--paper-ink-soft: #fefffc;--ink: #151b12;--ink-soft: #394631;--muted: #5d6a56;--line: #d7e0d0;--line-strong: #b8c5af;--accent: #41652b;--accent-2: #537d39;--accent-ink: #355322;--on-accent: #ffffff;--staff-line: #293424;--play-ink: #9b4f14;--inverse-bg: #1a2815;--inverse-ink: #f1f7ed}[data-palette=forest][data-theme=dark]{--paper: #0a1008;--paper-2: #121a0f;--paper-3: #1b2716;--card: #151e12;--paper-ink-soft: #151e12;--ink: #f0f7eb;--ink-soft: #d0dec7;--muted: #8e9e84;--line: #24301f;--line-strong: #404f38;--accent: #9bcd7a;--accent-2: #b3da99;--accent-ink: #b3da99;--on-accent: #0a1008;--staff-line: #ceddc5;--play-ink: #f3aa64;--inverse-bg: #1b2716;--inverse-ink: #f0f7eb}[data-palette=amber]{--paper: #f6f0e5;--paper-2: #fbf8f1;--paper-3: #eadfcb;--card: #fffdf9;--paper-ink-soft: #fffdf9;--ink: #211a11;--ink-soft: #4b3d2a;--muted: #6d5d47;--line: #e0d4c0;--line-strong: #c6b394;--accent: #9b5c00;--accent-2: #a66308;--accent-ink: #7d4900;--on-accent: #ffffff;--staff-line: #3a3021;--play-ink: #6e56b7;--inverse-bg: #2a2012;--inverse-ink: #fbf3e6}[data-palette=amber][data-theme=dark]{--paper: #151006;--paper-2: #1e170b;--paper-3: #2a2110;--card: #21190d;--paper-ink-soft: #21190d;--ink: #fbf3e6;--ink-soft: #e3d2b6;--muted: #a49275;--line: #342816;--line-strong: #514027;--accent: #ffc266;--accent-2: #ffd18c;--accent-ink: #ffd18c;--on-accent: #251500;--staff-line: #deccb0;--play-ink: #bba8ff;--inverse-bg: #2a2110;--inverse-ink: #fbf3e6}[data-palette=coral]{--paper: #f7efed;--paper-2: #fcf8f7;--paper-3: #ebdcd8;--card: #fffdfc;--paper-ink-soft: #fffdfc;--ink: #211614;--ink-soft: #4d3834;--muted: #705a55;--line: #e3d4d0;--line-strong: #c8afa9;--accent: #a43f37;--accent-2: #bd5147;--accent-ink: #85332d;--on-accent: #ffffff;--staff-line: #3c2b28;--play-ink: #6b5bb0;--inverse-bg: #2d1b18;--inverse-ink: #fbefec}[data-palette=coral][data-theme=dark]{--paper: #160c0a;--paper-2: #201210;--paper-3: #2d1b18;--card: #231512;--paper-ink-soft: #231512;--ink: #fbeeea;--ink-soft: #e2cbc5;--muted: #a38b85;--line: #37221e;--line-strong: #533630;--accent: #ff9d91;--accent-2: #ffb8af;--accent-ink: #ffb8af;--on-accent: #220906;--staff-line: #ddc7c1;--play-ink: #bdaeff;--inverse-bg: #2d1b18;--inverse-ink: #fbeeea}[data-palette=berry]{--paper: #f5eef3;--paper-2: #fbf7fa;--paper-3: #e8dbe4;--card: #fffdfF;--paper-ink-soft: #fffdfF;--ink: #20151d;--ink-soft: #493743;--muted: #6b5864;--line: #dfd1da;--line-strong: #c4acbb;--accent: #8b3c70;--accent-2: #a34d86;--accent-ink: #73305c;--on-accent: #ffffff;--staff-line: #382a33;--play-ink: #9a5b0f;--inverse-bg: #2a1924;--inverse-ink: #faeef6}[data-palette=berry][data-theme=dark]{--paper: #140b11;--paper-2: #1d1119;--paper-3: #291923;--card: #21131c;--paper-ink-soft: #21131c;--ink: #faeef6;--ink-soft: #dfcad8;--muted: #a08a99;--line: #33202b;--line-strong: #4f3445;--accent: #eba5d0;--accent-2: #f2bddc;--accent-ink: #f2bddc;--on-accent: #1b0a14;--staff-line: #dbc6d4;--play-ink: #efb564;--inverse-bg: #291923;--inverse-ink: #faeef6}[data-palette=graphite]{--paper: #f0f1f3;--paper-2: #f7f8f9;--paper-3: #e0e2e6;--card: #ffffff;--paper-ink-soft: #ffffff;--ink: #16181c;--ink-soft: #3b4048;--muted: #59616c;--line: #d8dbe0;--line-strong: #b9bec7;--accent: #4b5563;--accent-2: #606b7a;--accent-ink: #374151;--on-accent: #ffffff;--staff-line: #292d33;--play-ink: #97580b;--inverse-bg: #20242a;--inverse-ink: #f4f5f7}[data-palette=graphite][data-theme=dark]{--paper: #0d0f12;--paper-2: #15181d;--paper-3: #20242a;--card: #191c21;--paper-ink-soft: #191c21;--ink: #f3f4f6;--ink-soft: #d1d5db;--muted: #9198a3;--line: #292e35;--line-strong: #444b55;--accent: #c3c8d0;--accent-2: #d7dbe1;--accent-ink: #d7dbe1;--on-accent: #121417;--staff-line: #ccd1d8;--play-ink: #f2b65f;--inverse-bg: #20242a;--inverse-ink: #f3f4f6}:root[data-theme=contrast]{--paper: #ffffff;--paper-2: #ffffff;--paper-3: #f0f0f0;--card: #ffffff;--paper-ink-soft: #ffffff;--ink: #000000;--ink-soft: #000000;--muted: #2e2e2e;--line: #000000;--line-strong: #000000;--accent: #57104a;--accent-2: #6d1a5e;--accent-ink: #57104a;--on-accent: #ffffff;--on-fill: #ffffff;--glass-blur: 0px;--glass-thin: #ffffff;--glass: #ffffff;--glass-strong: #ffffff;--accent-tint: #f2e6ef;--glass-border: #000000;--glass-highlight: transparent;--glass-shade: transparent;--ok: #14531f;--ok-tint: #e4f0e6;--warn: #6b3e00;--warn-tint: #f7ecd9;--danger: #8a1200;--danger-tint: #f8e2dd;--string-g: #10307f;--string-d: #04402f;--string-a: #7a1010;--string-e: #5c3a04;--string-g-on: #ffffff;--string-d-on: #ffffff;--string-a-on: #ffffff;--string-e-on: #ffffff;--string-g-ink: #10307f;--string-d-ink: #04402f;--string-a-ink: #7a1010;--string-e-ink: #5c3a04;--string-g-open: var(--string-g-ink);--string-d-open: var(--string-d-ink);--string-a-open: var(--string-a-ink);--string-e-open: var(--string-e-ink);--string-g-open-figure: var(--string-g-ink);--string-d-open-figure: var(--string-d-ink);--string-a-open-figure: var(--string-a-ink);--string-e-open-figure: var(--string-e-ink);--song-1: #14531f;--song-2: #6b4400;--song-3: #8a1200;--song-4: #2c2170;--song-5: #57104a;--inverse-bg: #000000;--inverse-ink: #ffffff;--inverse-line: rgba(255, 255, 255, .4);--staff-line: #000000;--play-ink: #6b4400;--played-ink: #14531f;--sharp-ink: #7a1010;--flat-ink: #6b3e00;--timing-ink: #3b0764;--play-tint: color-mix(in srgb, var(--play-ink) 30%, transparent);--select-tint: color-mix(in srgb, var(--select-ink) 18%, transparent);--loop-tint: #eeddea;--resume-ink: #7c2d12;--flag-ink: #14532d;--flag-on: #ffffff;--flag-tint: #e3efe6;--flag-off-tint: #f0f0f0;--elev-1: 0 0 0 1px #000000;--elev-2: 0 0 0 2px #000000;--elev-3: 0 0 0 3px #000000;--shadow: var(--elev-1);--shadow-lg: var(--elev-2)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--fs-base);line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--fw-title);line-height:1.18;letter-spacing:-.01em;margin:0 0 var(--space-3)}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}h4,h5,h6{font-size:var(--fs-base)}strong,b{font-weight:var(--fw-figure)}p{margin:0 0 var(--space-3)}a{color:var(--accent-ink)}:focus-visible{outline:2.5px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root[data-colorblind=true]{--string-g: #1e40af;--string-d: #14b8a6;--string-a: #991b1b;--string-e: #fde047;--string-g-on: #ffffff;--string-d-on: #1c1917;--string-a-on: #ffffff;--string-e-on: #1c1917;--string-g-ink: #3730a3;--string-d-ink: #0f766e;--string-a-ink: #7f1d1d;--string-e-ink: #a16207;--string-g-open: var(--string-g);--string-d-open: var(--string-d);--string-a-open: var(--string-a);--string-e-open: var(--string-e);--string-g-open-figure: var(--string-g);--string-d-open-figure: var(--string-d-on);--string-a-open-figure: var(--string-a);--string-e-open-figure: var(--string-e-on);--finger-0: #0d9488;--finger-1: #6d28d9;--finger-2: #fbbf24;--finger-3: #b91c1c;--finger-4: #c4b5fd;--finger-0-on: #1c1917;--finger-1-on: #ffffff;--finger-2-on: #1c1917;--finger-3-on: #ffffff;--finger-4-on: #1c1917;--finger-0-ink: #0f766e;--finger-1-ink: #6d28d9;--finger-2-ink: #b45309;--finger-3-ink: #b91c1c;--finger-4-ink: #7c3aed;--flag-ink: #0e7490;--flag-on: #ffffff}:root[data-colorblind=true][data-theme=dark]{--string-g-ink: #818cf8;--string-d-ink: #5eead4;--string-a-ink: #fb7185;--string-e-ink: #fde047;--string-g-open: var(--string-g-ink);--string-d-open: var(--string-d-ink);--string-a-open: var(--string-a-ink);--string-e-open: var(--string-e-ink);--string-g-open-figure: var(--string-g-ink);--string-d-open-figure: var(--string-d-ink);--string-a-open-figure: var(--string-a-ink);--string-e-open-figure: var(--string-e-ink);--finger-0-ink: #2dd4bf;--finger-1-ink: #a78bfa;--finger-2-ink: #fbbf24;--finger-3-ink: #f87171;--finger-4-ink: #c4b5fd;--flag-ink: #22d3ee;--flag-on: #083344}:root[data-colorblind=true][data-theme=contrast]{--string-g: #172554;--string-d: #115e59;--string-a: #450a0a;--string-e: #92400e;--string-g-on: #ffffff;--string-d-on: #ffffff;--string-a-on: #ffffff;--string-e-on: #ffffff;--string-g-ink: #172554;--string-d-ink: #115e59;--string-a-ink: #450a0a;--string-e-ink: #92400e;--string-g-open: var(--string-g-ink);--string-d-open: var(--string-d-ink);--string-a-open: var(--string-a-ink);--string-e-open: var(--string-e-ink);--string-g-open-figure: var(--string-g-ink);--string-d-open-figure: var(--string-d-ink);--string-a-open-figure: var(--string-a-ink);--string-e-open-figure: var(--string-e-ink);--flag-ink: #164e63;--flag-on: #ffffff;--flag-tint: #e2edf1}.app{display:flex;flex-direction:column;min-height:100%}.btn[aria-pressed=true]{background:var(--accent-tint);border-color:var(--accent);color:var(--accent-ink)}.display--lg{font-size:var(--fs-3xl)}.display--sm{font-size:var(--fs-lg)}.empty__icon,.dropzone__icon{display:inline-flex;line-height:1}.empty__icon svg,.dropzone__icon svg{display:block;width:1em;height:1em}.btn svg,.chip svg,.segmented button svg,.song-card__fav svg{flex:none;width:1.15em;height:1.15em}.btn{appearance:none;font:inherit;font-weight:var(--fw-title);border-radius:var(--r-sm);border:var(--hair) solid var(--line-strong);background:var(--card);color:var(--ink);padding:var(--space-2) var(--space-4);min-height:var(--tap);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);transition:background .12s,border-color .12s,transform .06s;text-decoration:none;line-height:1.25}.btn:hover:not(:disabled){background:var(--paper-3)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--accent);border-color:var(--accent-2);color:var(--on-accent)}.btn--primary:hover:not(:disabled){background:var(--accent-2)}.btn--ghost{border-color:transparent;background:transparent}.btn--ghost:hover:not(:disabled){background:var(--paper-3)}.btn--danger{color:var(--danger);border-color:var(--danger);background:var(--card)}.btn--danger:hover:not(:disabled){background:var(--danger-tint)}.btn--big{font-size:var(--fs-base);padding:var(--space-3) var(--space-4);min-height:calc(var(--tap) + 6px)}.btn--sm{min-height:var(--control-h);padding:var(--space-1) var(--space-3);font-size:var(--fs-sm)}.btn--icon{padding:.4rem;aspect-ratio:1}.btn__label,.btn--aa__label{display:inline}@media(max-width:480px){.btn__label,.btn--aa__label{display:none}}.text-size-button{white-space:nowrap}.text-size-button__value{color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-title);line-height:1;text-transform:capitalize}.text-size-button[aria-pressed=true] .text-size-button__value{color:var(--accent-ink)}.btn--on{background:var(--accent-tint);border-color:var(--accent);color:var(--accent-ink);font-weight:var(--fw-figure)}.btn--on:hover:not(:disabled){background:var(--accent-tint);border-color:var(--accent-2)}.btn-row{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}summary{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:var(--space-2) 0;font-weight:var(--fw-title);cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary:before{content:"";width:.5em;height:.5em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .18s ease}details[open]>summary:before{transform:rotate(45deg)}.field{display:flex;flex-direction:column;gap:var(--space-1)}.field__label{font-weight:var(--fw-title);font-size:var(--fs-sm)}.field__hint{font-size:var(--fs-xs);color:var(--muted)}.bowid-availability--free{color:var(--ok);font-weight:var(--fw-title)}.bowid-availability--taken,.field__problem{color:var(--danger);font-weight:var(--fw-title)}.input,.select,.textarea{font:inherit;color:var(--ink);background:var(--card);border:var(--hair) solid var(--line-strong);border-radius:var(--r-sm);padding:var(--space-2) var(--space-3);min-height:var(--tap);line-height:1.25;width:100%}.textarea{min-height:12rem;font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:var(--fs-sm);line-height:1.6}.song-note{min-height:4.5rem;resize:vertical;line-height:1.5;width:100%}.select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-size:.34em .34em;background-position:right calc(var(--space-3) + .34em) top 50%,right var(--space-3) top 50%;background-repeat:no-repeat;padding-right:calc(var(--space-3) * 2 + .68em)}.switch{display:inline-flex;align-items:center;gap:.6rem;min-height:var(--tap);cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-title);-webkit-user-select:none;user-select:none}.switch input{position:absolute;opacity:0;width:1px;height:1px}.switch__track{width:calc(52px * var(--scale));height:calc(30px * var(--scale));border-radius:999px;background:var(--paper-3);border:var(--hair) solid var(--line-strong);position:relative;flex:none;transition:background .15s,border-color .15s}.switch__thumb{position:absolute;top:50%;left:calc(4px * var(--scale));transform:translateY(-50%);width:calc(22px * var(--scale));height:calc(22px * var(--scale));border-radius:50%;background:var(--muted);transition:transform .15s,background .15s}.switch input:checked+.switch__track{background:var(--accent-tint);border-color:var(--accent)}.switch input:checked+.switch__track .switch__thumb{transform:translate(calc(22px * var(--scale) - var(--hair) * 2),-50%);background:var(--accent)}.switch input:focus-visible+.switch__track{outline:3px solid var(--accent);outline-offset:2px}.switch:hover .switch__track{border-color:var(--accent)}.slider{display:flex;align-items:center;gap:var(--space-3)}input[type=range]{appearance:none;-webkit-appearance:none;height:var(--tap);background:transparent;accent-color:var(--accent);cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:calc(6px * var(--scale));border-radius:var(--r-full);background:var(--line-strong)}input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:calc(22px * var(--scale));height:calc(22px * var(--scale));border-radius:var(--r-full);background:var(--accent);border:var(--hair) solid var(--card);margin-top:calc((6px - 22px) * var(--scale) / 2)}input[type=range]::-moz-range-track{height:calc(6px * var(--scale));border-radius:var(--r-full);background:var(--line-strong)}input[type=range]::-moz-range-thumb{box-sizing:border-box;width:calc(22px * var(--scale));height:calc(22px * var(--scale));border-radius:var(--r-full);background:var(--accent);border:var(--hair) solid var(--card)}.slider input[type=range]{flex:1;min-width:0}.slider__value{flex:none;width:6em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right;font-variant-numeric:tabular-nums;font-weight:var(--fw-figure)}.segmented{display:inline-flex;align-items:stretch;gap:2px;padding:2px;max-width:100%;min-height:var(--control-h);border-radius:var(--r-control);background:color-mix(in srgb,var(--ink) 7%,transparent)}.segmented button{appearance:none;flex:1 1 0;min-width:0;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:1.2;border:0;border-radius:calc(var(--r-control) - 2px);background:transparent;color:var(--ink-soft);padding:0 var(--space-3);min-height:calc(var(--control-h) - 4px);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .12s,color .12s,box-shadow .12s}.segmented button:hover:not(:disabled):not([aria-pressed=true]){color:var(--ink);background:color-mix(in srgb,var(--ink) 5%,transparent)}.segmented button:active:not(:disabled){transform:scale(.98)}.segmented button:disabled{opacity:.45;cursor:not-allowed}.segmented button[aria-pressed=true]{background:var(--card);color:var(--ink);font-weight:var(--fw-title);box-shadow:0 1px 3px #14141924,0 0 0 .5px #1414190f}.segmented--block{display:flex;width:100%}.segmented:not(.segmented--block){flex:none}.segmented:not(.segmented--block) button{flex:0 0 auto}.segmented--block.segmented--compact button{flex:1 1 0}.segmented-wrap{min-width:0;width:100%}.segmented button:has(.segmented__sub){white-space:normal;padding-block:var(--space-1)}.segmented__label{display:block;overflow:hidden;text-overflow:ellipsis}.segmented__sub{display:block;overflow-wrap:anywhere;font-size:var(--fs-xs);font-weight:var(--fw-medium);line-height:1.25;opacity:.78}.card{background:var(--card);border:var(--hair) solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:var(--space-4)}.card--inverse{background:var(--inverse-bg);border-color:var(--inverse-line);color:var(--inverse-ink)}.card--inverse .card__title,.card--inverse h2,.card--inverse h3,.card--inverse a{color:inherit}.card--inverse .btn{background:transparent;border-color:var(--inverse-line);color:inherit}.card--inverse .btn:hover:not(:disabled){background:color-mix(in srgb,var(--inverse-ink) 14%,transparent)}.card__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.8rem;flex-wrap:wrap}.card__title{font-size:var(--fs-lg);font-weight:var(--fw-title);margin:0}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.stack>*{margin-block:0}.stack>ul:not([class]),.stack>ol:not([class]){padding-inline-start:var(--space-5)}.stack--sm{gap:var(--space-2)}.row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.spacer{flex:1}.grid{display:grid;gap:var(--space-4)}.grid--3{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}.grid--settings{grid-template-columns:repeat(auto-fit,minmax(min(25em,100%),1fr));align-items:start}.note-box{border:var(--hair) solid var(--line);border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent-tint) 62%,var(--card));border-radius:0 var(--r-sm) var(--r-sm) 0;padding:var(--space-3) var(--space-4);font-size:var(--fs-sm);line-height:1.55}.note-box--warn{border-left-color:var(--warn);background:var(--warn-tint)}.note-box--danger{border-left-color:var(--danger);background:var(--danger-tint)}.note-box h4{margin:0 0 .3rem;font-size:var(--fs-base);font-weight:var(--fw-title);line-height:1.3}.note-box ul{margin:.4rem 0 0;padding-left:1.2rem}.note-box li{margin-bottom:.25rem}.tag{display:inline-block;font-size:var(--fs-xs);font-weight:var(--fw-title);padding:.15rem .55rem;border-radius:999px;background:var(--paper-3);color:var(--ink-soft);border:1px solid var(--line);white-space:nowrap}.tag--warn{background:var(--warn-tint);color:var(--warn);border-color:var(--warn)}.tag--ok{background:var(--ok-tint);color:var(--ok);border-color:var(--ok)}.level-dots{display:inline-flex;gap:calc(3px * var(--scale));vertical-align:middle}.level-dots span{width:calc(9px * var(--scale));height:calc(9px * var(--scale));border-radius:50%;background:var(--paper-3);box-shadow:inset 0 0 0 var(--hair-strong) var(--line-strong)}.level-dots span.on{background:var(--accent);box-shadow:none}.level-badge{display:inline-flex;align-items:center;gap:calc(4px * var(--scale));vertical-align:middle}.level-badge__n{font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--ink-soft);line-height:1;font-variant-numeric:tabular-nums}.level-badge__bar{display:inline-flex;gap:calc(1.5px * var(--scale));align-items:flex-end}.level-badge__bar span{width:calc(3px * var(--scale));border-radius:1px;background:var(--paper-3);box-shadow:inset 0 0 0 var(--hair-strong) var(--line-strong)}.level-badge__bar span:nth-child(1){height:calc(5px * var(--scale))}.level-badge__bar span:nth-child(2){height:calc(6px * var(--scale))}.level-badge__bar span:nth-child(3){height:calc(7px * var(--scale))}.level-badge__bar span:nth-child(4){height:calc(8px * var(--scale))}.level-badge__bar span:nth-child(5){height:calc(9px * var(--scale))}.level-badge__bar span:nth-child(6){height:calc(10px * var(--scale))}.level-badge__bar span:nth-child(7){height:calc(11px * var(--scale))}.level-badge__bar span:nth-child(8){height:calc(12px * var(--scale))}.level-badge__bar span.on{background:var(--accent);box-shadow:none}.pop-stars{display:inline-flex;gap:calc(1px * var(--scale));vertical-align:middle;font-size:calc(11px * var(--scale));line-height:1}.pop-stars span{color:var(--line-strong)}.pop-stars span.on{color:var(--accent)}.build-line{margin:var(--space-4) 0 0;font-size:var(--fs-xs);color:var(--muted);text-align:center}.build-line span{font-family:ui-monospace,monospace;-webkit-user-select:all;user-select:all}.song-card{position:relative;display:flex;flex-direction:column;appearance:none;border:var(--hair) solid var(--glass-border);margin:0;padding:0;font:inherit;color:inherit;text-align:left;border-radius:var(--r-lg);background:var(--glass);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(180%);backdrop-filter:blur(var(--glass-blur)) saturate(180%);box-shadow:inset 0 1px 0 var(--glass-highlight),var(--elev-1);overflow:hidden;transition:transform .16s cubic-bezier(.22,1,.36,1),box-shadow .16s ease}.song-card:has(.song-card__open:hover){transform:translateY(-2px);box-shadow:inset 0 1px 0 var(--glass-highlight),var(--elev-2)}.song-card__open:focus-visible{outline:none}.song-card:has(.song-card__open:focus-visible){transform:translateY(-2px);box-shadow:inset 0 0 0 2.5px var(--accent),var(--elev-2)}.song-card:has(.song-card__open:active){transform:translateY(0) scale(.994)}.song-card__open{appearance:none;border:0;background:none;cursor:pointer;font:inherit;color:inherit;text-align:left;display:flex;flex-direction:column;gap:.25rem;padding:var(--space-4);padding-right:calc(var(--tap) + var(--space-1));min-height:var(--tap);border-radius:inherit;flex:1}.song-card__open--full{padding-right:var(--space-4)}.song-card__fav{position:absolute;top:var(--space-2);right:var(--space-2);background:transparent;border:none;cursor:pointer;font-size:var(--fs-lg);line-height:1;display:grid;place-items:center;width:var(--tap);height:var(--tap);border-radius:50%;color:var(--muted);transition:color .12s,background .12s;z-index:1}.song-card__fav:hover{color:var(--accent-ink);background:var(--paper-2)}.song-card__fav[aria-pressed=true]{color:var(--warn)}.song-card__playlist{appearance:none;background:transparent;border:0;font:inherit;color:var(--muted);cursor:pointer;min-height:var(--tap);font-size:var(--fs-sm);text-align:left;padding:0 var(--space-4);border-radius:var(--r-sm);align-self:flex-start}.song-card__playlist:hover{color:var(--accent-ink);background:var(--accent-tint)}.song-card__playlist:focus-visible{outline-offset:-3px}.library-update{border-left:4px solid var(--accent)}.library-update__title{margin:0;font-size:var(--fs-lg)}.library-update p{margin:0}.song-card__marks{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-top:auto;padding-top:var(--space-2)}.song-card__flag{font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--warn);white-space:nowrap}.song-card__flag--exercise{padding:.1em .5em;border-radius:var(--r-xs);background:var(--accent-tint);color:var(--accent-ink)}.song-card__flag--excerpt{color:var(--muted)}.song-card__flag--mine{color:var(--accent-ink)}.song-card__progress{display:block;height:3px;background:var(--paper-3)}.song-card__progress>span{display:block;height:100%;background:var(--song-accent, var(--accent));border-radius:0 3px 3px 0}.song-card__title{font-size:var(--fs-lg);font-weight:var(--fw-title);line-height:1.25}.song-card__sub{font-size:var(--fs-sm);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.song-card__note{display:block;font-size:var(--fs-xs);color:var(--muted);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-card__note:before{content:"“"}.song-card__note:after{content:"”"}.song-card__sub:empty{display:none}.path-card__step{font-size:var(--fs-xs);font-weight:var(--fw-figure);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.streak-pill{display:inline-flex;align-items:center;gap:.5rem;border:2px solid var(--accent);border-radius:999px;background:var(--accent-tint);color:var(--accent-ink);padding:var(--space-1) var(--space-3);min-height:var(--tap);font-size:var(--fs-sm);font-weight:var(--fw-figure)}.filters{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}.chip{appearance:none;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-title);border:var(--hair) solid var(--line-strong);background:var(--card);color:var(--ink-soft);border-radius:999px;padding:var(--space-1) var(--space-3);min-height:var(--control-h);cursor:pointer;transition:background .12s,border-color .12s,color .12s,transform .06s}.chip:hover:not(:disabled):not([aria-pressed=true]){background:var(--paper-3);color:var(--ink)}.chip:active:not(:disabled){transform:translateY(1px)}.chip:disabled{opacity:.45;cursor:not-allowed}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent-2);color:var(--on-accent)}.list-group{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.list-group__title{margin:0 var(--space-3);font-family:var(--font);font-size:var(--fs-xs);font-weight:var(--fw-title);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.list-group__body{background:var(--card);border:var(--hair) solid var(--line);border-radius:var(--r-group);overflow:hidden}.list-group__foot{margin:0 var(--space-3);font-size:var(--fs-xs);color:var(--muted);line-height:1.4}.list-row--link{color:inherit;text-decoration:none;appearance:none;width:100%;font:inherit;text-align:left;border:0;background:transparent;cursor:pointer}.list-row--link:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.list-row__chevron{flex:none;color:var(--muted);font-size:var(--fs-lg);line-height:1}.list-row{position:relative;display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap);padding:var(--space-2) var(--space-3)}.list-row+.list-row:before,.choice-list+.list-row:before,.list-row+.choice-list>.list-row:first-child:before{content:"";position:absolute;top:0;left:var(--space-3);right:0;border-top:var(--hair) solid var(--line)}.list-row__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.list-row__label{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--ink);line-height:1.3}.list-row__sub{font-size:var(--fs-xs);font-weight:400;color:var(--muted);line-height:1.35}.list-row--stack{flex-direction:column;align-items:stretch;gap:var(--space-2);padding-block:var(--space-2) var(--space-3)}.list-row .segmented button{padding-inline:var(--space-2)}.list-row>.select{flex:none;width:auto;max-width:55%;min-height:var(--control-h);font-size:var(--fs-sm)}.settings-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));gap:var(--space-5);align-items:start}.choice-list{display:flex;flex-direction:column}.list-row--choice{appearance:none;width:100%;font:inherit;text-align:left;border:0;background:transparent;color:inherit;cursor:pointer}.list-row--choice:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.list-row--choice:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.list-row__check{flex:none;width:1.2em;text-align:center;color:var(--accent);font-size:var(--fs-base);font-weight:var(--fw-figure)}.switch--row{width:100%;font-weight:400}details.list-row{display:block;padding-block:var(--space-1)}details.list-row>summary{min-height:calc(var(--tap) - var(--space-2));padding:0}.song-hero{--song-accent: var(--accent);display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-2) var(--space-3);border-left:5px solid var(--song-accent);padding-left:var(--space-3);margin-bottom:var(--space-3)}.song-hero .display{margin-bottom:var(--space-1)}.song-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(280px,26vw,360px);gap:1.2rem;align-items:start}@media(max-width:1080px){.song-layout{grid-template-columns:1fr}}.score-surface{background:var(--card);border:var(--hair) solid var(--line);border-radius:var(--r-lg);padding:.6rem .9rem 1rem;overflow-x:auto;box-shadow:var(--shadow)}.now-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2) var(--space-3)}.now-panel>*{grid-column:1 / -1}.now-panel__name{grid-column:1;grid-row:1;margin:0;font-family:var(--font-display);font-weight:400;font-size:var(--fs-3xl);line-height:1}.now-panel__badge{grid-column:2;grid-row:1;width:calc(58px * var(--scale));height:calc(58px * var(--scale));border-radius:50%;--badge-color: currentColor;border:2px solid var(--badge-color);background:color-mix(in srgb,var(--badge-color) 42%,transparent);color:var(--on-fill, #fff);display:grid;place-items:center;font-size:var(--fs-xl);font-weight:var(--fw-figure);line-height:1}.now-panel__sentence{margin:0;font-size:var(--fs-sm)}.now-panel__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.now-panel__board{margin-top:var(--space-1)}.now-panel__board svg{display:block;width:100%;height:auto}.now-panel--sounding{box-shadow:0 0 0 3px var(--play-ink)}.pitch__verdict{display:inline-flex;align-items:center;gap:.4rem;border:var(--hair) solid var(--line-strong);border-radius:999px;background:var(--paper-2);color:var(--ink-soft);padding:.2rem .75rem;font-size:var(--fs-xs);font-weight:var(--fw-figure)}.pitch__verdict--ok{border-color:var(--ok);background:var(--ok-tint);color:var(--ok)}.pitch__verdict--warn{border-color:var(--warn);background:var(--warn-tint);color:var(--warn)}.pager{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.pager__nav{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--fw-figure);font-variant-numeric:tabular-nums}.pager__caption{margin-left:auto;text-align:right;font-size:var(--fs-xs);color:var(--muted)}.pitch__easy{display:flex;flex-direction:column;align-items:center;gap:.1rem;line-height:1.3;height:auto;padding-block:var(--space-2)}.pitch__easy small{font-size:var(--fs-xs);font-weight:var(--fw-medium);opacity:.85}.pitch__already{margin:0;font-size:var(--fs-sm);color:var(--muted)}.pitch__octaves{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.pitch__fine{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.pitch__says{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.song-hand__written{color:var(--muted);font-weight:var(--fw-medium)}.error-page{max-width:40rem;margin-inline:auto}.error-page__detail{font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;word-break:break-word}.fifths__twin{opacity:.6}.shortcut-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3);font-size:var(--fs-xs);color:var(--muted)}.shortcut-bar .kbd{color:var(--ink)}.pages-strip{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1)}.pages-strip__thumb{appearance:none;font:inherit;padding:0;cursor:pointer;flex:none;width:calc(104px * var(--scale));height:calc(140px * var(--scale));border:var(--hair) solid var(--line);border-radius:var(--r-sm);background:var(--paper-2);overflow:hidden}.pages-strip__thumb:hover{border-color:var(--accent)}.pages-strip__thumb img{display:block;width:100%;height:100%;object-fit:cover}.page-viewer{position:fixed;inset:0;z-index:250;background:var(--overlay, rgba(28, 20, 12, .55));display:grid;place-items:safe center;padding:var(--space-3);overflow:auto}.page-viewer__img{display:block;max-width:100%;max-height:100%;border-radius:var(--r-sm);box-shadow:var(--shadow-lg);background:var(--card)}.transport{position:sticky;bottom:0;z-index:30;background:var(--paper-2);border:var(--hair) solid var(--line);border-radius:var(--r-lg);padding:.7rem .9rem;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:.6rem;margin-top:1rem}.transport__main{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.play-pill{display:inline-flex;align-items:stretch;flex:none;height:calc(var(--tap) + 8px);border-radius:999px;border:2px solid var(--accent-2);background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow);overflow:hidden}.play-pill__zone{appearance:none;font:inherit;border:0;background:none;color:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap);padding:0 var(--space-2);position:relative}.play-pill__zone--go{min-width:calc(var(--tap) + 14px)}.play-pill__zone+.play-pill__zone:before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:var(--hair);background:var(--on-accent);opacity:.42}.play-pill__zone:hover,.play-pill__zone:active{background:var(--accent-2)}.play-pill__zone svg{width:calc(24px * var(--scale));height:calc(24px * var(--scale))}.play-pill--stop{background:var(--accent)}.play-pill__count{font-size:var(--fs-base);font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;line-height:1}.tempo-readout{font-size:var(--fs-lg);font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;line-height:1.05}.tempo-readout small{font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--muted);display:block}.count-in{position:fixed;inset:0;z-index:100;display:grid;place-content:center;justify-items:center;gap:var(--space-3);background:var(--overlay-strong, rgba(20, 15, 10, .72));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility 0s linear .18s;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.count-in[data-on=true]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .14s ease}.song__dock{transition:z-index 0s linear .18s}.song[data-counting=true] .song__dock{z-index:101;transition:none}.count-in__num{font-size:min(38vw,320px);font-weight:var(--fw-figure);color:var(--on-fill, #fff);line-height:1;font-variant-numeric:tabular-nums;animation:count-in-beat .42s cubic-bezier(.2,.7,.2,1) both}.count-in__hint{font-size:var(--fs-sm);color:var(--on-fill, #fff);opacity:.72}.count-in__hint--touch{display:none}@media(hover:none)and (pointer:coarse){.count-in__hint--mouse{display:none}.count-in__hint--touch{display:inline}}@keyframes count-in-beat{0%{transform:scale(1.14);opacity:.4}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.count-in,.count-in[data-on=true]{transition:none}.count-in__num{animation:none}}.simple-view{display:flex;flex-direction:column;gap:.9rem}.simple-bar{border:var(--hair) solid var(--line);border-radius:var(--r-sm);background:var(--paper-2);padding:.5rem .6rem .65rem}.simple-bar__label{display:flex;gap:.6rem;align-items:center;margin-bottom:.4rem}.simple-bar__num{font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.simple-bar__section{font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--accent-ink)}.simple-bar__cards{display:flex;gap:.5rem;flex-wrap:wrap}.note-card{--card-color: var(--ink);appearance:none;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.15rem;background:var(--card);border:2px solid var(--card-color);border-radius:var(--r-sm);padding:.45rem .5rem .55rem;color:var(--ink);position:relative}.note-card:hover{background:var(--paper-3)}.note-card--active{background:var(--play-tint);box-shadow:0 0 0 4px var(--play-ink)}.note-card--rest{border-style:dashed;opacity:.75}.note-card__top{display:flex;gap:.3rem;align-items:center;min-height:1.4em}.note-card__bow{font-size:var(--fs-lg);font-weight:var(--fw-figure);line-height:1}.note-card__bow--suggested,.note-card__bow--same{color:var(--muted);font-weight:400}.note-card__string{font-size:var(--fs-xs);font-weight:var(--fw-figure);padding:.05rem .4rem;border-radius:999px}.note-card__pos{font-size:var(--fs-xs);font-weight:var(--fw-figure);line-height:1.2;color:var(--ink-soft, var(--ink));border:1.5px solid var(--line-strong);border-radius:999px;padding:0 .3rem;white-space:nowrap}.note-card__pos--move{color:var(--ink);border-color:var(--ink);background:var(--warn-tint)}.note-card__name{font-size:calc(var(--fs-xl) * 1.05);font-weight:var(--fw-figure);line-height:1.05}.note-card__finger{width:calc(34px * var(--scale));height:calc(34px * var(--scale));border-radius:50%;border:2px solid;display:grid;place-items:center;font-size:var(--fs-lg);font-weight:var(--fw-figure)}.note-card__len{width:100%;height:6px;background:var(--paper-3);border-radius:3px;overflow:hidden;margin-top:.2rem}.note-card__lenbar{display:block;height:100%;background:var(--card-color)}.note-card__beats{font-size:var(--fs-xs);color:var(--muted)}.note-card__alt{font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--card-color);border:2px dashed var(--card-color);border-radius:999px;padding:0 .4rem;opacity:.85}.note-card__rest{font-size:var(--fs-lg);font-weight:var(--fw-figure);color:var(--muted);font-style:italic}.note-card__tie{font-size:var(--fs-xs);color:var(--accent-ink);font-weight:var(--fw-figure)}.simple-view--large .note-card__name{font-size:var(--fs-3xl)}.simple-view--large .note-card__finger{width:calc(46px * var(--scale));height:calc(46px * var(--scale));font-size:var(--fs-xl)}.note-card__finger.note-card__finger--open,.now-panel__badge.now-panel__badge--open{background:none;border:0;box-shadow:none}.now-panel__badge.now-panel__badge--open{background:var(--card)}.note-card__finger--open svg,.now-panel__badge--open svg{display:block;width:100%;height:100%;overflow:visible}.page-head{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.page-head>*{margin:0}.page-head__lead{font-size:var(--fs-lg);line-height:1.35;color:var(--ink-soft);max-width:46ch}.page-head__body{color:var(--muted);max-width:64ch}.transport__speeds{display:flex;flex-wrap:wrap;gap:var(--space-1);flex:1 1 auto;min-width:min(16rem,100%)}.transport__speeds .btn{flex:1 1 auto;min-width:3em;padding-inline:var(--space-1);font-variant-numeric:tabular-nums}.transport__row2{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding-top:var(--space-2);margin-top:var(--space-2);border-top:var(--hair) solid var(--line)}.transport__right{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-left:auto}.transport__drawer{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-3);margin-top:var(--space-2);border-top:var(--hair) solid var(--line)}.transport__drawerrow{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.transport__sub{display:inline-flex;align-items:center;gap:var(--space-2)}.transport__sublabel{font-size:var(--fs-sm);color:var(--muted);white-space:nowrap}.transport__toggle{appearance:none;border:0;cursor:pointer;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-title);display:inline-flex;align-items:center;gap:.4rem;padding:var(--space-1) var(--space-3);min-height:var(--control-h);border-radius:999px;background:var(--glass-thin);color:var(--muted);box-shadow:inset 0 1px 0 var(--glass-highlight);transition:background .12s,color .12s;white-space:nowrap}.transport__toggle svg{width:1.15em;height:1.15em;flex:none}.transport__toggle:not(.transport__toggle--on):hover{color:var(--ink)}.transport__toggle--on{background:var(--accent);color:var(--on-accent)}.transport__toggle--on:hover{background:var(--accent-2)}.transport__vol{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--muted);white-space:nowrap}.transport__vol .slider{width:clamp(64px,7vw,96px)}.transport__volnum{font-variant-numeric:tabular-nums;min-width:2.2rem}.play-pill__zone--pause{min-width:calc(var(--tap) * 4 + 14px);gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-title)}.flags-confirm{position:absolute;z-index:45;bottom:calc(100% + 10px);width:min(17rem,calc(100vw - 24px));display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--card);color:var(--ink);border:var(--hair) solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow-lg);white-space:normal;text-align:left}.flags-confirm__title{font-size:var(--fs-base);font-weight:var(--fw-title)}.flags-confirm__where{font-size:var(--fs-sm);color:var(--ink-soft);line-height:1.4}.flags-confirm__buttons{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:4px}.transport__begin,.practice-switch{appearance:none;font:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;min-height:var(--tap);padding:.2rem .8rem .2rem .65rem;border-radius:999px;border:var(--hair) solid var(--line-strong);background:var(--card);color:var(--ink);text-align:left;flex:none}.transport__begin>svg{width:1.3em;height:1.3em;flex:none}.transport__begin:hover,.practice-switch:hover{background:var(--paper-3)}.practice-switch__icon{display:inline-flex;color:var(--muted)}.practice-switch__icon svg{width:1.3em;height:1.3em}.practice-switch__text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;min-width:0}.practice-switch__name{font-size:var(--fs-sm);font-weight:var(--fw-title)}.practice-switch__sub{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--muted);max-width:7.6em;white-space:normal}.song__dock .transport--labelled .transport__main{column-gap:var(--space-3)}.transport__begin .practice-switch__sub{max-width:9.4em}.practice-switch__knob{position:relative;flex:none;width:30px;height:18px;border-radius:999px;border:2px solid var(--muted);background:var(--card)}.practice-switch__dot{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:var(--muted);transition:transform .12s}.practice-switch--on{border-color:var(--accent);border-width:2px;margin:-1px;background:var(--accent-tint)}.practice-switch--on:hover{background:var(--accent-tint)}.practice-switch--on .practice-switch__icon{color:var(--accent-ink)}.practice-switch--on .practice-switch__sub{color:var(--ink-soft)}.practice-switch--on .practice-switch__knob{border-color:var(--accent);background:var(--accent)}.practice-switch--on .practice-switch__dot{transform:translate(12px);background:var(--on-accent)}.practice-switch:disabled{cursor:default;border-style:dashed;background:var(--card)}.practice-switch:disabled .practice-switch__icon,.practice-switch:disabled .practice-switch__knob{opacity:.45}.practice-switch:disabled .practice-switch__name{color:var(--muted)}.practice-switch--rehearse,.practice-switch--loop{scroll-margin:var(--space-2)}.transport:not(.transport--labelled) .transport__begin{width:var(--tap);padding:0;justify-content:center;border-radius:50%}.transport:not(.transport--labelled) .practice-switch{display:inline-grid;grid-template-columns:auto auto;grid-template-areas:"icon knob" "text text";align-items:center;justify-items:center;column-gap:4px;row-gap:1px;padding:3px 7px;border-radius:var(--r-sm)}.transport:not(.transport--labelled) .practice-switch__icon{grid-area:icon}.transport:not(.transport--labelled) .practice-switch__icon svg{width:1.15em;height:1.15em}.transport:not(.transport--labelled) .practice-switch__knob{grid-area:knob;width:24px;height:14px}.transport:not(.transport--labelled) .practice-switch__dot{top:1px;left:1px;width:8px;height:8px}.transport:not(.transport--labelled) .practice-switch--on .practice-switch__dot{transform:translate(10px)}.transport:not(.transport--labelled) .practice-switch__text{grid-area:text;align-items:center}.transport:not(.transport--labelled) .practice-switch__name{font-size:var(--fs-xs)}.transport.transport--phone .practice-switch{min-width:var(--tap);padding:2px 3px;column-gap:3px}.transport.transport--phone .practice-switch__icon svg{width:16px;height:16px}.song__dock .transport.transport--phone .transport__main{column-gap:4px}.transport__pair{display:contents}.transport.transport--phone .transport__pair{display:inline-flex;gap:4px;flex:none}.transport.transport--phone .play-pill__zone--go{padding-inline:.4rem}.transport.transport--phone .practice-switch__name{font-size:calc(var(--fs-xs) * .85)}.transport.transport--phone .practice-switch__knob{width:22px;height:13px}.transport.transport--phone .practice-switch__dot{width:7px;height:7px}.transport.transport--phone .practice-switch--on .practice-switch__dot{transform:translate(9px)}.loop-split{position:relative;display:inline-flex;align-items:stretch;flex:none}.loop-split .practice-switch{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.loop-split--menu .practice-switch--loop{border-top-right-radius:0;border-bottom-right-radius:0}.round-menu__button{appearance:none;font:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);width:30px;flex:none;padding:0;margin-left:calc(-1 * var(--hair));border:var(--hair) solid var(--line-strong);border-radius:0 999px 999px 0;background:var(--card);color:var(--muted)}.round-menu__button svg{width:1.1em;height:1.1em;transition:transform .12s}.round-menu__button:hover,.round-menu__button--open{background:var(--paper-3);color:var(--ink)}.round-menu__button--open svg{transform:rotate(180deg)}.transport:not(.transport--labelled) .round-menu__button{border-radius:0 var(--r-sm) var(--r-sm) 0}.round-menu{position:absolute;bottom:calc(100% + 10px);right:0;z-index:40;transform:translate(var(--round-shift, 0px));width:min(17rem,calc(100vw - 16px));display:flex;flex-direction:column;padding:6px 0;background:var(--card);color:var(--ink);border:var(--hair) solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow-lg);text-align:left;white-space:normal}.round-menu__head{padding:4px var(--space-3) 4px;font-size:var(--fs-xs);font-weight:var(--fw-title);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.round-menu__item{border-radius:0}.practice-switch__more{display:block}.transport--roomy .practice-switch--counted .practice-switch__sub{max-width:none;white-space:nowrap}.transport__round .transport__sublabel{white-space:normal}.transport__status{font-size:var(--fs-sm);font-weight:var(--fw-title);color:var(--ink-soft);font-variant-numeric:tabular-nums;min-width:0}.transport__more{flex:none}.tempo{position:relative}.tempo-readout--button{appearance:none;font:inherit;color:inherit;cursor:pointer;min-height:var(--tap);padding:2px 8px;border:var(--hair) solid transparent;border-radius:12px;background:none;text-align:left;font-size:var(--fs-lg);font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;line-height:1.05}.tempo-readout--button:hover,.tempo-readout--open{background:var(--accent-tint);border-color:var(--accent)}.tempo__pop{position:absolute;bottom:calc(100% + 10px);right:0;z-index:40;transform:translate(var(--tempo-shift, 0px),var(--tempo-drop, 0px));overflow-y:auto;overscroll-behavior:contain;width:min(340px,calc(100vw - 16px));display:flex;flex-direction:column;gap:12px;padding:14px 16px 16px;background:var(--card);border:var(--hair) solid var(--line-strong);border-radius:18px;box-shadow:var(--shadow-lg)}.tempo__head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--fs-sm);font-weight:var(--fw-title)}.tempo__step{display:flex;align-items:center;gap:10px}.tempo__stepper{appearance:none;font:inherit;cursor:pointer;width:calc(var(--tap) + 8px);height:calc(var(--tap) + 8px);flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:var(--hair) solid var(--line-strong);background:var(--card);color:var(--ink);font-size:1.6rem;font-weight:var(--fw-figure);line-height:1;touch-action:manipulation}.tempo__stepper:disabled{opacity:.4;cursor:default}.tempo__now{flex:1;display:flex;flex-direction:column;align-items:center;line-height:1.1}.tempo__now strong{font-size:2.2rem;font-weight:var(--fw-figure);font-variant-numeric:tabular-nums}.tempo__now span{font-size:var(--fs-xs);color:var(--muted);text-align:center}.tempo__tap{appearance:none;font:inherit;cursor:pointer;min-height:calc(var(--tap) + 4px);border-radius:999px;border:2px dashed color-mix(in srgb,var(--accent) 60%,var(--card));background:var(--accent-tint);color:var(--accent-ink);font-size:var(--fs-sm);font-weight:var(--fw-title);touch-action:manipulation}.tempo__foot{display:flex;align-items:center;gap:8px;font-size:var(--fs-xs);color:var(--muted)}.tempo__foot span{flex:1}.ladder__pick{display:flex;gap:var(--space-2);justify-content:center}.ladder__string{appearance:none;border:var(--hair) solid var(--str-ink, var(--ink));cursor:pointer;font:inherit;font-weight:var(--fw-figure);background:var(--card);color:var(--str-ink, var(--ink));width:var(--tap);height:var(--tap);border-radius:50%;transition:background .12s,color .12s}.ladder__string:not(.ladder__string--on):hover{background:var(--paper-3)}.ladder__string--on{background:var(--str);color:var(--str-on)}.tuner-diag{width:100%;text-align:left}.tuner-diag ul{margin:var(--space-2) 0;padding-left:1.1rem}.ladder__key{display:block;max-width:20rem;margin:var(--space-3) auto 0}.ladder__rungs{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;gap:var(--space-1)}.rung{display:grid;grid-template-columns:1fr 3.2rem var(--tap);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);border-radius:var(--r-md);background:var(--paper-2);border:var(--hair) solid var(--line);transition:background .12s,border-color .12s,box-shadow .12s}.rung--live{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.rung--good{background:var(--ok-tint);border-color:var(--ok);box-shadow:inset 0 0 0 1px var(--ok)}.rung__pick{appearance:none;border:0;background:none;cursor:pointer;font:inherit;color:inherit;text-align:left;padding:0;min-height:var(--tap);display:grid;grid-template-columns:3.2rem 1fr;align-items:center;gap:var(--space-2)}.rung__finger{font-weight:var(--fw-figure);color:var(--muted);font-size:var(--fs-sm)}.rung__note{font-weight:var(--fw-title);font-size:var(--fs-lg)}.rung__read{font-variant-numeric:tabular-nums;color:var(--muted);font-size:var(--fs-sm);text-align:right}.rung__hear{appearance:none;border:0;background:none;cursor:pointer;font:inherit;color:var(--muted);width:var(--tap);height:var(--tap);border-radius:50%;display:grid;place-items:center}.rung__hear svg{width:1.15em;height:1.15em}.rung__hear:hover{color:var(--accent-ink);background:var(--paper-3)}.song__nav{display:flex;align-items:center;gap:var(--space-1);flex:none}.song__nav .btn[disabled]{opacity:.35;cursor:default}.board{--stop-w: calc(74px * var(--scale));--stop-h: calc(56px * var(--scale));display:grid;grid-template-columns:5.6em repeat(var(--stops),var(--stop-w));grid-auto-rows:auto;gap:var(--space-2) var(--space-3);align-items:center;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:var(--space-2);padding-right:calc(var(--stop-w) / 2)}.board__lane{justify-self:center;align-self:stretch;width:calc(var(--stop-w) + var(--space-2));border-radius:var(--r-full);background:var(--paper-3);pointer-events:none}.board__string{height:2px;border-radius:2px;opacity:.55;align-self:center;pointer-events:none;margin-inline:calc(var(--stop-w) / -2)}.board__nut{justify-self:start;align-self:stretch;width:4px;margin-left:calc(var(--space-2) / -2 - 4px);border-radius:2px;background:var(--ink-soft, var(--ink));opacity:.85;pointer-events:none}.board--compact{--stop-w: calc(46px * var(--scale));--stop-h: calc(44px * var(--scale));grid-template-columns:2.6em repeat(var(--stops),var(--stop-w));gap:var(--space-1) var(--space-2);font-size:var(--fs-xs)}.board--compact .board__lane{width:var(--stop-w)}.board--compact .board__nut{width:3px;margin-left:calc(var(--space-2) / -2 - 3px)}.board--compact .stop{border-width:1.5px}.board__ends{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--fs-xs);color:var(--muted);margin-top:var(--space-1)}.board__mm{font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--ink-soft, var(--ink));text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.board__unit{font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--muted);text-align:left}.board__label{font-size:var(--fs-sm);font-weight:var(--fw-figure);text-align:left}.stop{--dot-color: var(--accent);appearance:none;font:inherit;cursor:pointer;width:var(--stop-w);height:var(--stop-h);padding:0;border-radius:999px;border:2px solid var(--dot-color);background:color-mix(in srgb,var(--dot-color) 16%,var(--card));color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;line-height:1.1;overflow:hidden}.stop:hover{background:color-mix(in srgb,var(--dot-color) 30%,var(--card))}.stop__note{font-size:var(--fs-sm);font-weight:var(--fw-figure)}.stop__finger{font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--muted);white-space:nowrap}.stop--empty{width:var(--stop-w);height:var(--stop-h)}.stop--accidental{border-style:dashed;background:var(--card)}.stop--used{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--accent)}.stop[aria-pressed=true]{background:var(--accent);border-color:var(--accent-2);border-style:solid;color:var(--on-accent)}.stop[aria-pressed=true] .stop__finger{color:inherit}.hand-follow{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .4rem;margin:var(--space-2) 0 0;font-size:var(--fs-xs);color:var(--ink-soft)}.hand-follow__now,.hand-follow__next{display:inline-block;width:1.6em;height:1em;border-radius:999px}.hand-follow__now{background:var(--accent);border:2px solid var(--accent-2)}.hand-follow__next{outline:2px dashed var(--play-ink);outline-offset:1px;margin-left:.3rem}.stop--next{outline:3px dashed var(--play-ink);outline-offset:2px}.keysig-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:var(--space-3)}.keysig-pick{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2);border-radius:var(--r-md);border:var(--hair) solid var(--line);background:var(--paper-2)}.keysig-pick--on{border-color:var(--accent);border-width:2px;background:var(--accent-tint)}.keysig-pick__count{font-size:var(--fs-xs);color:var(--muted);text-align:center}.keysig-pick__names{display:flex;flex-wrap:wrap;gap:var(--space-1);justify-content:center}.accidental-key{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;gap:var(--space-3)}.accidental-key li{display:flex;align-items:flex-start;gap:var(--space-3);max-width:62ch}.accidental-key svg{flex:none;margin-top:.1em}.fifths{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.fifths__wheel{width:100%;max-width:22rem;height:auto;display:block}.fifths__ring{fill:none;stroke:var(--line);stroke-width:1}.fifths__spoke{stroke:var(--accent);stroke-width:2;opacity:.5}.fifths__seat{cursor:pointer}.fifths__seat circle{fill:var(--card);stroke:var(--line-strong);stroke-width:1.5;transition:fill .12s,stroke .12s}.fifths__seat text{fill:var(--ink);font-weight:var(--fw-title);pointer-events:none}.fifths__seat:hover circle{fill:var(--paper-3)}.fifths__seat:focus-visible circle{stroke:var(--accent);stroke-width:3}.fifths__seat--on circle{fill:var(--accent);stroke:var(--accent-2)}.fifths__seat--on text{fill:var(--on-accent)}.fifths__name{fill:var(--ink);font-weight:var(--fw-title)}.fifths__count{fill:var(--muted)}.fifths__legend{margin:0;max-width:60ch;color:var(--muted);font-size:var(--fs-sm)}.rhythm{margin:var(--space-3) 0;display:grid;gap:var(--space-3);max-width:44rem}.rhythm__row{display:grid;gap:var(--space-1)}.rhythm__bar{display:grid;gap:2px;border-radius:var(--r-xs);overflow:hidden}.rhythm__cell{display:flex;align-items:flex-end;justify-content:center;min-height:3.2rem;padding-bottom:var(--space-1);background:var(--paper-3);color:var(--ink)}.rhythm__label{font-size:var(--fs-sm);font-weight:var(--fw-title)}.rhythm__beats{color:var(--muted);font-weight:400}.rhythm__foot{font-size:var(--fs-sm);color:var(--muted);max-width:60ch;margin:0}.figure{margin:var(--space-3) 0}.figure figcaption{font-size:var(--fs-sm);color:var(--muted);max-width:60ch;margin-top:var(--space-2)}.figure svg{width:100%;height:auto;max-width:30rem;display:block}.vib__note{stroke:var(--accent);stroke-width:2;stroke-dasharray:6 5}.vib__wave{fill:none;stroke:var(--ink);stroke-width:2.5;stroke-linejoin:round}.vib__label{fill:var(--muted)}.vib__label--low{fill:var(--ink-soft, var(--ink))}.interval{margin:var(--space-3) 0;display:grid;gap:var(--space-3)}.interval__pick{display:flex;flex-wrap:wrap;gap:var(--space-1)}.interval__ruler{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:2px;max-width:32rem}.interval__cell{min-height:2.4rem;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:var(--fw-figure);border-radius:var(--r-xs);background:var(--paper-3);color:var(--muted)}.interval__cell--in{background:var(--accent-tint)}.interval__cell--edge{background:var(--accent);color:var(--on-accent)}.interval__says{margin:0;max-width:60ch}.strokes{list-style:none;margin:var(--space-3) 0;padding:0;display:grid;gap:var(--space-3)}.strokes li{display:flex;align-items:flex-start;gap:var(--space-3);max-width:62ch}.strokes__mark{flex:none;width:2.2rem;text-align:center;font-size:var(--fs-2xl);line-height:1;color:var(--accent-ink)}.strokes__name{display:block;font-weight:var(--fw-title)}.trouble{margin:var(--space-3) 0 0;display:grid;gap:var(--space-4)}.trouble dt{font-weight:var(--fw-title);margin-bottom:var(--space-1)}.trouble dd{margin:0;max-width:66ch}.trouble__cause{color:var(--accent-ink)}.tuning{margin:var(--space-3) 0}.tuning__strings{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);max-width:30rem}.tuning__string{appearance:none;font:inherit;cursor:pointer;width:100%;min-height:var(--tap);padding:var(--space-2) 0;display:flex;flex-direction:column;align-items:center;gap:.15rem;border-radius:var(--r-md);border:var(--hair) solid var(--line);background:var(--card);color:var(--ink)}.tuning__string:hover{background:var(--paper-2);border-color:var(--str-ink)}.tuning__string--on{background:var(--accent-tint);border-color:var(--accent)}.tuning__name{font-size:var(--fs-lg);font-weight:var(--fw-figure);color:var(--str-ink)}.tuning__wire{display:block}.tuning__pitch{font-size:var(--fs-sm);font-weight:var(--fw-figure)}.tuning__hz{font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.tuning__hear{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--fs-xs);color:var(--muted)}.tuning__caption{margin:var(--space-3) 0 0;max-width:62ch}.symbol-key{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(23rem,100%),1fr));gap:var(--space-4) var(--space-5)}.symbol-key li{display:flex;align-items:flex-start;gap:var(--space-3)}.symbol-key__art{flex:none}.symbol-key__name{display:block;font-weight:var(--fw-figure)}.symbol-key__says{display:block;color:var(--muted);font-size:var(--fs-sm)}.ruler{display:grid;grid-template-columns:repeat(13,minmax(2.3rem,1fr));gap:var(--space-1);align-items:stretch;overflow-x:auto;padding-bottom:var(--space-1);margin-bottom:var(--space-3)}.ruler__cell{appearance:none;font:inherit;cursor:pointer;min-height:var(--tap);padding:.3rem .1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-radius:var(--r-full);border:var(--hair-strong) solid var(--line-strong);background:var(--card);color:var(--ink);overflow:hidden;transition:background .12s,border-color .12s}.ruler__cell--between{background:transparent;border-style:dashed;color:var(--muted)}.ruler__cell--on{background:var(--accent-tint);border-color:var(--accent);border-style:solid;color:var(--accent-ink)}.ruler__cell--third{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--accent-2)}.ruler__cell:hover{background:var(--paper-3)}.ruler__cell--on:hover{background:var(--accent-tint);border-color:var(--accent-2)}.ruler__name{font-size:var(--fs-sm);font-weight:var(--fw-figure);white-space:nowrap}.ruler__degree{font-size:var(--fs-xs);color:var(--muted)}.ruler__cell--on .ruler__degree{color:inherit}.ruler__step{align-self:center;text-align:center;font-size:var(--fs-xs);color:var(--muted);border-top:var(--hair) solid var(--line);padding-top:2px;margin-top:2px;white-space:nowrap;overflow:hidden}.ruler__step--half{color:var(--accent-ink);font-weight:var(--fw-figure);border-top-color:var(--accent)}.scale-lab__lead{margin:0 0 var(--space-3);max-width:64ch}.scale-lab__rowlabel{margin:0 0 var(--space-1);font-size:var(--fs-sm)}.scale-lab__controls{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-3)}.scale-lab__roots{display:flex;flex-wrap:wrap;gap:var(--space-1)}.scale-lab__result{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3);border-radius:var(--r-md);background:var(--paper-2);max-width:64ch}.scale-lab__notes{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:var(--space-3) 0 0}.scale-lab__note{font-size:var(--fs-sm);font-weight:var(--fw-figure);border-radius:var(--r-full);border:var(--hair) solid var(--line);padding:.15em .7em}.scale-lab__note--alt{border-color:var(--accent);background:var(--accent-tint);color:var(--accent-ink)}.pboard{--col-w: calc(40px * var(--scale));--row-h: calc(30px * var(--scale));display:flex;flex-direction:column;gap:var(--space-2);overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:var(--space-2)}.pboard__grid{display:grid;grid-template-columns:3.6em repeat(var(--cols),var(--col-w));column-gap:3px;align-items:center;width:max-content}.pboard__corner,.pboard__name,.pboard__pos{position:sticky;left:0;z-index:2;background:var(--card);align-self:stretch;display:flex;align-items:center}.pboard__corner,.pboard__mm{font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.pboard__mm{text-align:center}.pboard__string{display:flex;flex-direction:column;gap:3px;padding-top:var(--space-2);border-top:var(--hair) solid var(--line)}.pboard__name{font-size:var(--fs-lg);font-weight:var(--fw-figure);color:var(--ink-color)}.pboard__note{height:var(--row-h);display:grid;place-items:center;border-radius:999px;font-size:var(--fs-sm);font-weight:var(--fw-figure);background:color-mix(in srgb,var(--dot-color) 18%,var(--card));color:var(--ink);white-space:nowrap}.pboard__note--open{background:color-mix(in srgb,var(--dot-color) 42%,var(--card))}.pboard__note--gap{background:none}.pboard__head{padding-bottom:2px}.pboard__notes{margin-bottom:2px}.pboard__note--out{background:none;font-weight:400;color:var(--muted)}.pboard__note--same{box-shadow:0 0 0 2px var(--accent)}.pboard__row>*{grid-row:1}.pboard__pos{font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.pboard__hand{height:var(--row-h);border-radius:999px;background:color-mix(in srgb,var(--dot-color) 9%,var(--card));border:var(--hair) solid color-mix(in srgb,var(--dot-color) 38%,var(--card))}.pboard__stop{appearance:none;font:inherit;cursor:pointer;z-index:1;height:var(--row-h);width:var(--col-w);padding:0;border:0;border-radius:999px;background:none;font-size:var(--fs-sm);font-weight:var(--fw-title);color:var(--ink);white-space:nowrap;overflow:hidden}.pboard__stop:hover{background:color-mix(in srgb,var(--dot-color) 30%,var(--card))}.pboard__stop--out{font-weight:400;color:var(--muted);font-size:var(--fs-xs)}.pboard__stop--two{font-size:var(--fs-xs);letter-spacing:-.02em}.pboard__stop--same{background:color-mix(in srgb,var(--accent) 22%,var(--card))}.pboard__stop[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.key-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.board-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-2)}.board-controls .field{margin:0}.board-controls .select{min-width:15rem}.board-intro{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.board-intro>:first-child{flex:1 1 20rem;min-width:0}.song-card__length{font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--muted);background:var(--paper-3);border-radius:var(--r-xs);padding:.1em .5em;white-space:nowrap;font-variant-numeric:tabular-nums}.board-sig{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.board-sig__hint{font-size:var(--fs-xs);color:var(--muted);text-align:right;max-width:18ch}@media(max-width:700px){.board-sig{align-items:flex-start}.board-sig__hint{text-align:left}}.song-card__scale{font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--accent-ink);background:var(--accent-tint);border-radius:var(--r-xs);padding:.1em .5em;white-space:nowrap}.board-key{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);margin:0 0 var(--space-3);font-size:var(--fs-sm);color:var(--muted)}.board-key__swatch{width:1.6em;height:1em;border-radius:4px;border:2px solid var(--line-strong);background:var(--card)}.board-key__swatch--in{border-style:solid}.board-key__note{flex-basis:100%}.board-key__swatch--out{border-style:dashed;background:var(--paper-2)}.dropzone{border:2px dashed var(--line-strong);border-radius:var(--r-lg);padding:2.2rem 1.2rem;text-align:center;background:var(--paper-2);cursor:pointer;transition:border-color .12s,background .12s}.dropzone--over{border-color:var(--accent);background:var(--accent-tint)}.dropzone__icon{font-size:2.6rem;line-height:1}.import-paste{display:flex;flex-direction:column;gap:var(--space-2)}.import-paste .textarea{min-height:9rem}.table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.table th,.table td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--line)}.table th{font-weight:var(--fw-figure);background:var(--paper-2);position:sticky;top:0}.table tr:hover td{background:var(--paper-2)}.dialog-backdrop{position:fixed;inset:0;background:var(--overlay, rgba(28, 20, 12, .55));display:grid;place-items:center;z-index:200;padding:1rem}.dialog{background:var(--card);border:var(--hair) solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);max-width:620px;width:100%;max-height:88vh;overflow:auto;padding:1.3rem}.dialog--wide{max-width:1000px}.dialog__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;z-index:999;background:var(--accent);color:var(--on-accent);padding:.7rem 1.1rem;border-radius:0 0 var(--r-sm) 0}.skip-link:focus{left:0}.empty{text-align:center;padding:3rem 1rem;color:var(--muted)}.empty__icon{font-size:3rem;line-height:1;margin-bottom:.5rem}.kbd{font-family:ui-monospace,monospace;font-size:.85em;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:5px;padding:.05em .4em;background:var(--paper-2)}.transport__nav{display:flex;align-items:flex-end;gap:var(--space-3)}.transport__nav .transport__status{flex:0 1 auto;max-width:18em;padding-bottom:3px;line-height:1.25}.bar-ruler{position:relative;flex:1 1 auto;min-width:0;padding-top:calc(var(--fs-xs) * 1.2)}.bar-ruler__track{position:relative;height:max(26px,calc(26px * var(--scale)));border-radius:8px;background:var(--paper-3);overflow:hidden;cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none}.bar-ruler__track:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.bar-ruler__played{position:absolute;top:0;bottom:0;left:0;background:color-mix(in srgb,var(--accent) 14%,transparent)}.bar-ruler__section{position:absolute;top:0;bottom:0;background:var(--flag-off-tint);border-left:2px dashed var(--flag-off-ink);border-right:2px dashed var(--flag-off-ink);box-sizing:border-box}.bar-ruler--rehearsing .bar-ruler__section{background:color-mix(in srgb,var(--flag-ink) 24%,transparent);border-left-style:solid;border-right-style:solid;border-color:var(--flag-ink)}.bar-ruler__choosing{position:absolute;top:0;bottom:0;z-index:1;pointer-events:none;background:var(--choose-strip-tint);border:2px dashed var(--choose-ink);border-radius:6px;box-sizing:border-box}.bar-ruler__bar{position:absolute;top:0;bottom:0;border-left:1px solid color-mix(in srgb,var(--ink) 14%,transparent)}.bar-ruler__num{position:absolute;left:3px;top:50%;transform:translateY(-50%);font-size:max(11px,calc(11px * var(--scale)));font-weight:var(--fw-title);color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}.bar-ruler__bar--now .bar-ruler__num{color:var(--ink)}.bar-ruler__head{position:absolute;top:0;bottom:0;width:3px;margin-left:-1px;border-radius:2px;background:var(--play-ink);pointer-events:none}.bar-ruler__resume{position:absolute;top:0;bottom:0;width:3px;margin-left:-1px;background:var(--resume-ink);pointer-events:none}.bar-ruler__resume:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);border:7px solid transparent;border-top-width:0;border-bottom-color:var(--resume-ink)}.bar-ruler__flag{appearance:none;font:inherit;cursor:pointer;position:absolute;top:0;z-index:2;display:inline-flex;align-items:center;gap:2px;padding:0 5px 0 3px;font-size:var(--fs-xs);font-weight:var(--fw-title);line-height:1.15;background:var(--card);color:var(--flag-off-ink);border:1.5px dashed var(--flag-off-ink);border-radius:0 4px 4px 0}.bar-ruler--rehearsing .bar-ruler__flag{background:var(--flag-ink);color:var(--flag-on);border-style:solid;border-color:var(--flag-ink)}.bar-ruler__flag:before{content:"";position:absolute;inset:-14px -10px -6px}.bar-ruler__flag:hover,.bar-ruler__flag[aria-expanded=true]{box-shadow:0 0 0 2px var(--flag-off-ink)}.bar-ruler__flag:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.bar-ruler__confirm{position:absolute;bottom:calc(100% + 4px);width:0;height:0}.bar-ruler__confirm .flags-confirm{left:0;transform:translate(-50%);bottom:0}.bar-ruler__flag svg{width:.75em;height:.75em}.play-pill__word{line-height:1}.score-section{pointer-events:none}.bar-ruler__flag--end{transform:translate(-100%);padding:0 3px 0 5px;border-radius:4px 0 0 4px}.bar-ruler__flagback{transform:scaleX(-1)}.score-flag{cursor:pointer;outline:none}.score-flag__ring{stroke-opacity:0}.score-flag:focus-visible .score-flag__ring{stroke-opacity:1}.score-resume,.tab-flagged,.score-choosing,.tab-choosing{pointer-events:none}.note-card.note-card--choosing{background:var(--choose-tint);outline:2px dashed var(--choose-ink);outline-offset:-2px}.score-note[data-passage-pressing]>rect:first-child{fill:var(--choose-tint);transition:fill .45s ease-out}.note-card[data-passage-pressing]{transform:scale(1.06);box-shadow:0 0 0 3px var(--choose-ink);transition:transform .45s ease-out,box-shadow .45s ease-out}[data-view=tab] [data-passage-pressing] circle{stroke-width:5px;transition:stroke-width .45s ease-out}[data-passage-holding],[data-passage-holding] *,[data-passage-active],[data-passage-active] *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@media(prefers-reduced-motion:reduce){.score-note[data-passage-pressing]>rect:first-child,.note-card[data-passage-pressing],[data-view=tab] [data-passage-pressing] circle{transition:none}.note-card[data-passage-pressing]{transform:none}}.card-flag{appearance:none;font:inherit;cursor:pointer;align-self:stretch;display:inline-flex;align-items:flex-start;justify-content:center;min-width:28px;min-height:var(--tap);padding:6px 2px 0;border:2px dashed var(--flag-off-ink);border-radius:var(--r-xs);background:var(--card);color:var(--flag-off-ink)}.card-flag svg{width:1.1em;height:1.1em}.card-flag--end svg{transform:scaleX(-1)}.card-flag--on{border-style:solid;border-color:var(--flag-ink);background:var(--flag-ink);color:var(--flag-on)}.note-card--flagged{background:var(--flag-off-tint)}.note-card--flagged-on{background:var(--flag-tint)}.note-card--resume{outline:3px solid var(--resume-ink);outline-offset:3px}.note-card__resume{position:absolute;left:50%;top:0;transform:translate(-50%,-115%);padding:0 .45rem;border-radius:999px;border:1.5px solid var(--resume-ink);background:var(--card);color:var(--resume-ink);font-size:var(--fs-xs);font-weight:var(--fw-figure);line-height:1.5;white-space:nowrap;pointer-events:none}.back-to-marker{appearance:none;font:inherit;cursor:pointer;position:absolute;right:var(--space-2);bottom:calc(100% + var(--space-2));min-height:var(--control-h);padding:0 var(--space-3);border:2px solid var(--resume-ink);border-radius:999px;background:var(--card);color:var(--resume-ink);font-size:var(--fs-sm);font-weight:var(--fw-title);box-shadow:var(--shadow-lg)}.back-to-marker:hover{background:var(--paper-3)}.flag-chip{position:fixed;left:0;top:0;z-index:60;display:flex;flex-wrap:wrap;align-items:center;gap:4px;max-width:calc(100vw - 16px);padding:5px;background:var(--card);border:var(--hair) solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow-lg)}.flag-chip button{appearance:none;font:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;min-height:var(--tap);padding:0 .8rem;border-radius:12px;font-size:var(--fs-sm);font-weight:var(--fw-title);white-space:nowrap}.flag-chip__where{padding:0 .4rem;font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--muted);white-space:nowrap}.flag-chip__start{border:0;background:var(--accent);color:var(--on-accent)}.flag-chip__start:hover{background:var(--accent-2)}.flag-chip__end{border:var(--hair) solid var(--line-strong);background:var(--card);color:var(--ink)}.flag-chip__end[aria-pressed=true],.flag-chip__end:hover{border-color:var(--accent);color:var(--accent-ink)}.flag-chip__clear{border:0;background:none;color:var(--accent-ink)}.flag-chip .flag-chip__close{border:0;background:none;color:var(--muted);min-width:var(--tap);padding:0;justify-content:center}.string-legend{display:flex;gap:var(--space-1) var(--space-3);flex-wrap:wrap}.string-legend__item{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--fs-xs);font-weight:var(--fw-title);white-space:nowrap}.string-legend__dot{width:10px;height:10px;border-radius:50%;flex:none}.toast-stack{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);z-index:300;display:flex;flex-direction:column;gap:.5rem;align-items:center;pointer-events:none;width:min(560px,92vw)}.toast{background:var(--ink);color:var(--paper);border-radius:var(--r-sm);padding:.7rem 1.1rem;box-shadow:var(--shadow-lg);font-size:var(--fs-sm);font-weight:var(--fw-title);pointer-events:auto;width:100%}.toast--ok{background:var(--ok);color:var(--on-accent)}.toast--warn{background:var(--warn);color:var(--on-accent)}.toast--danger{background:var(--danger);color:var(--on-accent)}.keysig-row{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-3);align-items:flex-end;margin:var(--space-3) 0}.keysig-row__item{margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.keysig-row__item figcaption{font-size:var(--fs-sm);color:var(--muted);text-align:center;max-width:22ch}@media(max-width:700px){.transport{padding:.45rem .55rem;gap:.4rem;border-radius:var(--r-md)}.transport__main{column-gap:.5rem;row-gap:.4rem}.transport__toggle{min-width:var(--tap);justify-content:center}.play-pill{height:calc(var(--tap) + 4px)}.play-pill__zone{padding-inline:.55rem;font-size:var(--fs-sm)}.play-pill__zone--go{min-width:var(--tap)}.play-pill__zone--pause{min-width:calc(var(--tap) * 4)}.transport--phone .transport__status{flex:1 1 auto;white-space:normal;line-height:1.25}.flag-chip__where{flex:1 1 100%;padding:2px 6px 0}.bar-ruler__flagword{display:none}.bar-ruler__flag{padding:0 3px}.transport__right{width:100%;margin-left:0;gap:var(--space-2)}.transport__speeds{flex-wrap:wrap;min-width:0;gap:2px}.transport__speeds .btn{flex:1 1 0;min-width:var(--tap);padding-inline:0;font-size:var(--fs-sm)}.transport__toggle{padding-inline:.5rem;font-size:var(--fs-sm)}.transport__speeds{order:9;width:100%}.tempo-readout{display:flex;align-items:baseline;gap:.35rem}.tempo-readout>*{font-size:var(--fs-sm)}.transport__drawer{max-height:45dvh;overflow-y:auto;overscroll-behavior:contain}.transport__drawerrow{gap:var(--space-2)}}@media(max-width:720px){.card{padding:var(--space-3)}.transport{padding:.6rem .7rem}}@media print{.transport,.song-side,.no-print,.score-resume,.note-card__resume,.back-to-marker{display:none!important}.note-card--resume{outline:none}.shell-main{padding:0;max-width:none}.score-surface{border:none;box-shadow:none;padding:0;overflow:visible}body{background:#fff}}.segmented--scroll{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity;max-width:100%}.segmented--scroll::-webkit-scrollbar{display:none}.segmented--scroll button{flex:0 0 auto;scroll-snap-align:start}.grid--side-main{grid-template-columns:minmax(0,1fr);align-items:start}@media(min-width:60rem){.grid--side-main{grid-template-columns:minmax(17rem,22rem) minmax(0,1fr)}}.song-hand{appearance:none;border:0;background:none;cursor:pointer;font:inherit;padding:.8em .3em;margin:-.8em -.3em;font-weight:var(--fw-figure);color:var(--accent-ink);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:from-font}.song-hand:hover{color:var(--ink)}.pin-input{font-variant-numeric:tabular-nums;letter-spacing:.35em}.import-controls{border:0;padding:0;margin:0;min-inline-size:0}.import-controls:disabled .dropzone{pointer-events:none;opacity:.6}.dropzone.dropzone--selected{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.6rem 1rem}.dropzone__label{font-size:var(--fs-sm);font-weight:var(--fw-medium)}.dropzone--selected .dropzone__icon{font-size:1.2rem;margin:0}.scan-document{display:grid;grid-template-columns:minmax(100px,180px) minmax(0,1fr);gap:1rem;margin-top:1rem;align-items:start}.scan-document strong{overflow-wrap:anywhere}.scan-document__preview img{display:block;width:100%;max-height:240px;object-fit:contain;background:#fff;border:var(--hair) solid var(--line);border-radius:var(--r-sm)}.scan-document__preview .row{justify-content:space-between;gap:.25rem;margin-top:.5rem;flex-wrap:wrap}@media(max-width:520px){.scan-document{grid-template-columns:minmax(0,1fr)}.scan-document__preview{max-width:200px;justify-self:center}}.scan-queue{display:grid;gap:var(--space-3);margin-top:var(--space-4)}.import-controls:disabled .scan-review,.import-controls:disabled .scan-queue{pointer-events:none}.scan-queue__pages{display:flex;gap:var(--space-3);overflow-x:auto;list-style:none;margin:0;padding:var(--space-1) 0}.scan-queue__pages li{flex:0 0 10rem;display:grid;gap:var(--space-1);padding:var(--space-2);border:var(--hair) solid var(--line);border-radius:var(--r-sm);background:var(--paper-2);cursor:grab}.scan-queue__pages img,.scan-queue__placeholder{width:100%;height:7rem;object-fit:contain;background:#fff;border-radius:var(--r-sm)}.scan-queue__placeholder{display:grid;place-items:center;color:#333}.scan-queue__pages .field__hint{overflow-wrap:anywhere}.scan-review{min-width:0;border:var(--hair) solid var(--line);background:var(--card);border-radius:var(--r-lg);padding:var(--space-4)}.scan-review__head,.scan-review__foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.scan-review__head>div:first-child{flex:1 1 20rem}.scan-review__head p{margin:var(--space-1) 0 0;max-width:70ch}.scan-review__pages{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.scan-review__workspace{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);align-items:start;gap:var(--space-4)}.scan-review--personal .scan-review__workspace{grid-template-columns:minmax(0,1fr)}.scan-review--personal{width:100%}.song__dock[hidden]{display:none}.scan-review__source{display:grid;gap:var(--space-2);min-width:0;position:sticky;top:var(--space-3)}.scan-review__source>.field__hint{overflow-wrap:anywhere}.scan-review__paper{overflow:auto;max-height:min(70vh,780px);border:var(--hair) solid var(--line);border-radius:var(--r-sm);background:#fff}.scan-review__paper img{display:block;height:auto}.scan-review__paper-image{position:relative}.scan-review__paper-image img{width:100%;max-width:none}.scan-area__canvas{position:relative;width:fit-content;max-width:100%;margin-inline:auto;touch-action:none;cursor:crosshair;overflow:hidden;background:#fff}.scan-area__canvas img{display:block;max-width:100%;max-height:55vh;width:auto;height:auto;-webkit-user-select:none;user-select:none;pointer-events:none}.scan-area__selection{position:absolute;border:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);pointer-events:none;box-shadow:0 0 0 1px #fff inset}.scan-review__zoom,.scan-review__speed{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-sm)}.scan-review__zoom input{width:5rem;min-width:0}.scan-review__speed .select{width:auto;min-width:5rem}.scan-review__editor{min-width:0}.scan-review__bar-nav,.scan-review__note-strip{display:flex;overflow-x:auto;gap:var(--space-1);padding-bottom:var(--space-2);max-width:100%}.scan-review__bar-nav .btn,.scan-review__note-strip .btn{flex:0 0 auto}.scan-review__score{overflow-x:auto;border:var(--hair) solid var(--line);border-radius:var(--r-sm);background:var(--paper-2);touch-action:pan-x}.scan-review__score svg{min-width:420px;touch-action:none}.scan-review__note-strip>.btn{display:grid;gap:.15rem;justify-items:center;padding:var(--space-2);min-width:4rem;cursor:grab}.scan-review__note-index{font-size:var(--fs-xs);color:var(--muted)}.scan-review__inspector{background:var(--paper-2);padding:var(--space-3);border-radius:var(--r-sm)}.scan-review__fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);margin-block:var(--space-2)}.scan-review__fields .select,.scan-review__fields .input{min-width:0;width:100%}.scan-review__fields .field__label{font-size:var(--fs-sm)}.scan-review__issues{display:grid;gap:var(--space-2)}.scan-review__issues .note-box{padding:var(--space-2) var(--space-3)}.scan-review__issue-link{background:none;border:0;padding:.25rem 0;color:inherit;font:inherit;text-align:left;cursor:pointer}.scan-review__choices,.scan-review__bar-settings,.scan-review__all-checks{border-top:var(--hair) solid var(--line);padding-top:var(--space-3)}.scan-review summary{cursor:pointer;font-weight:var(--fw-medium);padding:var(--space-2) 0}.scan-review__check-list{display:grid;gap:var(--space-2);max-height:18rem;overflow:auto}.scan-review__check-list .btn{justify-content:flex-start;white-space:normal;text-align:left}.scan-review__ack{display:flex;align-items:flex-start;gap:var(--space-2)}.scan-review__ack input{margin-top:.3em;flex-shrink:0}.scan-review__foot{padding-top:var(--space-3);border-top:var(--hair) solid var(--line)}.scan-review__foot>span{flex:1 1 24rem}@media(max-width:1100px){.scan-review__workspace{grid-template-columns:minmax(180px,.7fr) minmax(0,1.4fr)}.scan-review__fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.scan-review{padding:var(--space-3)}.scan-review__workspace{grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.scan-review__source{position:static}.scan-review__paper{max-height:32vh}.scan-review__head>.btn-row{width:100%}.scan-review__head .btn--primary{margin-left:auto}.scan-review__transport{gap:var(--space-1)}.scan-review__transport .scan-review__speed>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}.version-history{min-width:0}.version-history__month{display:flex;flex-direction:column;gap:var(--space-2)}.version-history__heading{font-size:var(--fs-lg);margin:0}.version-history__list{list-style:none;margin:0;padding:0;border-top:var(--hair) solid var(--line)}.version-history__item{display:grid;grid-template-columns:3.5em minmax(0,1fr) auto;gap:var(--space-3);align-items:baseline;padding:var(--space-2) var(--space-1);border-bottom:var(--hair) solid var(--line)}.version-history__item[aria-current=true]{background:var(--accent-tint);border-radius:var(--r-sm)}.version-history__number{font-variant-numeric:tabular-nums;font-weight:var(--fw-figure);color:var(--accent-ink)}.version-history__title{min-width:0;overflow-wrap:anywhere}.version-history__item--quiet .version-history__title{color:var(--muted)}.version-history__here{margin-left:var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--accent-ink);background:var(--card);border-radius:var(--r-full);padding:0 var(--space-2);white-space:nowrap;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:baseline}.version-history__date{font-size:var(--fs-sm);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.build-line__history{margin-left:var(--space-2);color:var(--accent-ink)}.song-loading{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5) var(--space-4);max-width:44rem;margin:0 auto;width:100%}.song-loading__card{background:var(--card);border:var(--hair) solid var(--line);border-radius:var(--r-lg);padding:var(--space-5);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:var(--space-2)}.song-loading__head{display:flex;align-items:center;gap:var(--space-3);justify-content:space-between}.song-loading__title{margin:0;font-size:var(--fs-xl)}.song-loading__composer{margin:0;color:var(--muted)}.song-loading__bar{position:relative;height:6px;border-radius:var(--r-full);background:var(--paper-3);overflow:hidden;margin-top:var(--space-2)}.song-loading__fill{position:absolute;inset:0;transform-origin:left center;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:transform .6s cubic-bezier(.2,.8,.2,1)}.song-loading__bar:after{content:"";position:absolute;inset:0;width:40%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--card) 70%,transparent),transparent);animation:song-loading-shimmer 1.2s ease-in-out infinite}@keyframes song-loading-shimmer{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media(prefers-reduced-motion:reduce){.song-loading__bar:after{animation:none}}.song-loading__step{margin:0;font-size:var(--fs-sm);color:var(--muted)}.song-loading__staves{display:flex;flex-direction:column;gap:var(--space-5);opacity:.55}.song-loading__staff{width:100%;height:40px;display:block}.song-loading__staff line{stroke:var(--line-strong);stroke-width:1;vector-effect:non-scaling-stroke}.offline-list{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:var(--space-1)}.offline-list__done::marker{content:"✓  ";color:var(--ok)}.offline-progress{position:relative;height:8px;border-radius:var(--r-full);background:var(--paper-3);overflow:hidden}.offline-progress__fill{position:absolute;inset:0;transform-origin:left center;background:var(--accent);border-radius:inherit;transition:transform .25s ease}.offline-pill{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--ink);background:var(--warn-tint);border:var(--hair) solid var(--warn);border-radius:var(--r-full);padding:2px var(--space-2)}.symbols{display:flex;flex-direction:column;gap:var(--space-6)}.symbols__tools{display:flex;flex-direction:column;gap:var(--space-3)}.symbols__search{display:flex;align-items:center;gap:var(--space-2);max-width:32rem;border:var(--hair) solid var(--line-strong);border-radius:var(--r-full);padding:0 var(--space-3);background:var(--card);min-height:var(--tap)}.symbols__search input{flex:1;border:0;background:none;font:inherit;color:var(--ink);outline:none;min-width:0}.symbols__groups{display:flex;flex-wrap:wrap;gap:var(--space-2)}.symbols__group-link{display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--ink-soft);border:var(--hair) solid var(--line);border-radius:var(--r-full);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-2);font-size:var(--fs-sm);background:var(--card);min-height:var(--tap)}.symbols__group-link:hover{border-color:var(--accent);color:var(--accent-ink)}.symbols__group-link svg{color:var(--accent-ink);flex:none}.symbols__count{margin:0;font-size:var(--fs-sm);color:var(--muted)}.symbols__group{display:flex;flex-direction:column;gap:var(--space-3);scroll-margin-top:var(--space-6)}.symbols__head{display:flex;align-items:center;gap:var(--space-3)}.symbols__icon{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:var(--accent-ink);background:var(--accent-tint)}.symbols__title{margin:0;font-size:var(--fs-lg)}.symbols__blurb{margin:0;color:var(--muted);font-size:var(--fs-sm)}.symbols__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));gap:var(--space-3)}.symbol-card{display:flex;flex-direction:column;border:var(--hair) solid var(--line);border-radius:var(--r-lg);background:var(--card);overflow:hidden;scroll-margin-top:var(--space-6)}.symbol-card__picture{background:var(--paper-2);border-bottom:var(--hair) solid var(--line);padding:var(--space-2) var(--space-3);min-height:7.5rem;display:flex;align-items:center}.symbol-card__picture svg{width:100%}.symbol-card__placeholder{display:block;width:100%;height:6.5rem}.symbol-card__words{padding:var(--space-3) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.symbol-card__name{margin:0;font-size:var(--fs-base)}.symbol-card__aka{margin:-.3em 0 0;font-size:var(--fs-sm);color:var(--muted);font-style:italic}.symbol-card__says,.symbol-card__play{margin:0;font-size:var(--fs-sm);line-height:1.5}.symbol-card__play{color:var(--ink-soft)}.symbol-card__listen{align-self:flex-start}.about{min-width:0}.about__hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-5);padding:var(--space-6);border-radius:var(--r-xl);background:var(--card);border:var(--hair) solid var(--line)}.about__intro{min-width:0}.about__eyebrow{margin:0 0 var(--space-2);font-size:var(--fs-sm);color:var(--accent-ink);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--fw-title)}.about__lead{margin:var(--space-3) 0 0;font-size:var(--fs-lg);color:var(--ink-soft);max-width:32rem}.about__art{width:clamp(120px,22vw,200px);height:auto}.about__profile{display:flex;gap:var(--space-4);align-items:flex-start;padding:var(--space-5);border-radius:var(--r-lg);background:var(--card);border:var(--hair) solid var(--line)}.about__avatar{flex:none;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--paper);font-size:var(--fs-lg);font-weight:var(--fw-figure);letter-spacing:.04em}.about__name{margin:0;font-size:var(--fs-lg)}.about__role{margin:var(--space-1) 0 var(--space-3);color:var(--muted)}.about__facts{margin:0;padding-left:1.1em;display:flex;flex-direction:column;gap:var(--space-1)}.about__story,.about__free{max-width:42rem}.about__story p,.about__free p{line-height:1.65}.about__section-title{margin:0 0 var(--space-3)}.about__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));gap:var(--space-3)}.about__card{padding:var(--space-4);border-radius:var(--r-lg);background:var(--card);border:var(--hair) solid var(--line)}.about__card h3{margin:var(--space-2) 0 var(--space-1);font-size:var(--fs-base)}.about__card p{margin:0;font-size:var(--fs-sm);color:var(--ink-soft);line-height:1.5}.about__card-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--accent-tint);color:var(--accent-ink);font-size:var(--fs-xl)}.about__links{display:flex;flex-wrap:wrap;gap:var(--space-4)}@media(max-width:640px){.about__hero{grid-template-columns:minmax(0,1fr);padding:var(--space-5)}.about__art{justify-self:center;order:-1}.about__profile{flex-direction:column}}.note-game{min-width:0}.note-game__answers{min-width:0;container-type:inline-size}.note-game__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.note-game__head h2{margin:0}.note-game__lead{margin:var(--space-1) 0 0;color:var(--ink-soft)}.note-game__step{flex:none;padding:var(--space-1) var(--space-3);border-radius:var(--r-full);background:var(--accent-tint);color:var(--accent-ink);font-weight:var(--fw-title);font-size:var(--fs-sm)}.note-game__path{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.note-game__path li{display:flex;align-items:center}.note-game__path li+li:before{content:"";width:var(--space-2);height:2px;background:var(--line);margin-right:var(--space-2)}.note-game__dot{appearance:none;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-title);cursor:pointer;width:var(--tap);height:var(--tap);border-radius:50%;display:grid;place-items:center;border:2px solid var(--line-strong);background:var(--card);color:var(--muted)}.note-game__dot--most{background:linear-gradient(135deg,var(--accent-tint) 0 100%)}.note-game__dot--some{background:linear-gradient(135deg,var(--accent-tint) 0 50%,var(--card) 50% 100%)}.note-game__dot--done{border-color:var(--accent);color:var(--accent-ink)}.note-game__dot--on{border-color:var(--accent);background:var(--accent);color:var(--paper);box-shadow:0 0 0 4px var(--accent-tint)}.note-game__dot--ahead{opacity:.7}.note-game__about{margin:0;color:var(--ink-soft)}.note-game__stage{display:grid;grid-template-columns:minmax(0,20rem) minmax(0,1fr);gap:var(--space-5);align-items:center}.note-game__picture{background:var(--paper-2);border:var(--hair) solid var(--line);border-radius:var(--r-lg);padding:var(--space-3);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);min-height:11rem;justify-content:center}.note-game__picture svg{width:100%;max-width:18rem}.note-game__hints{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center}.note-game__name-hint{font-size:var(--fs-xl);font-weight:var(--fw-figure);color:var(--ink)}.note-game__string{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--r-full);border:2px solid var(--string);font-weight:var(--fw-title);font-size:var(--fs-sm)}.note-game__string:before{content:"";width:.8em;height:.8em;border-radius:50%;background:var(--string)}.note-game__names{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}@container (min-width: 30rem){.note-game__names{grid-template-columns:repeat(7,minmax(0,1fr))}}.note-game__answer{appearance:none;font:inherit;font-size:var(--fs-lg);font-weight:var(--fw-title);cursor:pointer;min-height:calc(var(--tap) + 8px);border-radius:var(--r-md);border:2px solid var(--line-strong);background:var(--card);color:var(--ink)}.note-game__answer:hover:not(:disabled){border-color:var(--accent)}.note-game__answer:disabled{cursor:default;opacity:.55}.note-game__answer--right,.note-game__answer--right:disabled{opacity:1;border-color:var(--ok);background:var(--ok-tint)}.note-game__answer--wrong,.note-game__answer--wrong:disabled{opacity:1;border-color:var(--danger);background:var(--danger-tint)}.note-game__board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);max-width:24rem}.note-game__board-head{text-align:center;font-weight:var(--fw-figure);font-size:var(--fs-lg);color:var(--ink);border-bottom:4px solid var(--string);padding-bottom:var(--space-1)}.note-game__cell{border-color:color-mix(in srgb,var(--string) 55%,var(--line));font-size:var(--fs-base)}.note-game__nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.note-game__practice{font-size:var(--fs-sm);color:var(--muted)}.note-game__feedback{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.note-game__feedback:empty{display:none}.note-game__verdict{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--r-lg);line-height:1.5}.note-game__verdict--right{background:var(--ok-tint)}.note-game__verdict--wrong{background:var(--danger-tint)}.note-game__message{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--r-lg);background:var(--accent-tint);color:var(--accent-ink);font-weight:var(--fw-title)}.note-game__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);border-top:var(--hair) solid var(--line);padding-top:var(--space-3)}.note-game__tally{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.note-game__tick{width:14px;height:14px;border-radius:50%;border:2px solid var(--line-strong)}.note-game__tick--right{background:var(--ok);border-color:var(--ok)}.note-game__tick--wrong{background:var(--danger);border-color:var(--danger)}.note-game__count{margin-left:var(--space-2);font-size:var(--fs-sm);color:var(--muted)}@media(max-width:720px){.note-game__stage{grid-template-columns:minmax(0,1fr)}.note-game__path li+li:before{display:none}}.now-panel__shift{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-figure);border-left:3px solid currentColor;padding-left:var(--space-2)}.now-panel__next{margin:0;font-size:var(--fs-sm);opacity:.88}.now-panel__next-label{font-size:var(--fs-xs);font-weight:var(--fw-figure);text-transform:uppercase;letter-spacing:.06em;opacity:.75}.display-hint{display:block;margin-bottom:var(--space-1);color:var(--ink-soft);font-weight:var(--fw-title)}.flags-confirm--chip{position:static;width:min(17rem,calc(100vw - 40px));padding:6px 8px 4px;border:0;box-shadow:none;background:none}.glass{background:linear-gradient(to bottom,var(--glass-highlight) 0%,transparent 42%) border-box,var(--glass) border-box;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(190%);backdrop-filter:blur(var(--glass-blur)) saturate(190%);border:1px solid var(--glass-border);box-shadow:var(--elev-2),inset 0 1px 0 var(--glass-highlight),inset 0 -1px 0 var(--glass-shade)}.glass--strong{background:linear-gradient(to bottom,var(--glass-highlight) 0%,transparent 42%) border-box,var(--glass-strong) border-box;box-shadow:var(--elev-3),inset 0 1px 0 var(--glass-highlight)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass,.glass--strong{background:var(--card)}}.song__bar.glass,.song__dock.glass{background:linear-gradient(to bottom,var(--glass-highlight) 0%,transparent 42%) border-box,var(--glass-strong) border-box}.app{--shell-frame: 12px;--shell-bar-h: calc(var(--tap) + var(--space-2) + max(var(--space-2), var(--safe-t)) + 1px);--nav-h: calc(var(--tap) + var(--space-1) + max(var(--space-1), var(--safe-b)) + 1px);min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;grid-template-areas:"bar" "main" "tabs"}.shell-bar{grid-area:bar}.shell-main{grid-area:main;min-width:0}.shell-tabs{grid-area:tabs}.shell-tabs .shell-brand,.shell-tabs .shell-history,.shell-tabs .shell-tools{display:none}.shell-bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);padding-top:max(var(--space-2),var(--safe-t));border-width:0 0 1px;border-radius:0}.shell-bar[data-tight="1"] .shell-brand>span,.shell-bar[data-tight="2"] .shell-brand>span,.shell-bar[data-tight="2"] .text-size-button__value{display:none}.shell-brand{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-title);color:inherit;text-decoration:none;letter-spacing:-.01em}.shell-brand__mark{width:1.5em;height:1.5em;flex:none}.shell-brand__sub{display:none}.shell-tabs{position:sticky;bottom:0;z-index:40;display:flex;justify-content:safe center;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;gap:var(--space-1);padding:var(--space-1) var(--space-2);padding-bottom:max(var(--space-1),var(--safe-b));border-width:1px 0 0;border-radius:0}.shell-tabs::-webkit-scrollbar{display:none}.shell-tab{flex:0 0 auto;min-width:var(--tap);min-height:var(--tap);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--space-1) 2px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-xs);line-height:1.1;cursor:pointer;transition:color .18s ease,background .18s ease}.shell-tab svg{width:1.55em;height:1.55em;flex:none}.shell-tab span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.shell-tab:hover{color:var(--ink)}.shell-tab[aria-current=page]{background:var(--accent-tint);color:var(--accent-ink);font-weight:var(--fw-title);box-shadow:inset 0 0 0 var(--hair) var(--accent)}.shell-main{--main-pad-x: max(var(--space-4), var(--safe-l));--main-pad-y: var(--space-4);--main-pad-b: var(--main-pad-y);padding:var(--main-pad-y) var(--main-pad-x);overflow-x:clip}.shell-main>*{max-width:var(--measure);margin-inline:auto}@media(min-width:900px){.app{--shell-bar-h: 0px;--nav-h: 0px;grid-template-columns:auto minmax(0,1fr);grid-template-rows:1fr;grid-template-areas:"tabs main"}.shell-bar{display:none}.shell-tabs{position:sticky;top:0;align-self:start;height:100dvh;width:calc(15rem * var(--scale));flex-direction:column;justify-content:flex-start;gap:var(--space-1);padding:var(--space-4) var(--space-3);padding-top:max(var(--space-4),var(--safe-t));padding-bottom:max(var(--space-4),var(--safe-b));padding-left:max(var(--space-3),var(--safe-l));border-width:0 1px 0 0;overflow-y:auto}.shell-tabs .shell-tools{display:block}.shell-tabs .shell-history{display:flex;justify-content:center;gap:var(--space-2);margin:0 0 var(--space-3)}.shell-tabs .shell-brand{display:flex;padding:var(--space-2) var(--space-2) var(--space-5);font-size:var(--fs-xl)}.shell-brand__sub{display:block;font-family:var(--font);font-size:var(--fs-xs);font-weight:400;color:var(--muted);letter-spacing:0}.shell-tab{flex:none;min-width:0;flex-direction:row;justify-content:flex-start;gap:var(--space-3);width:100%;padding:0 var(--space-3);font-size:var(--fs-sm);text-align:left}.shell-tab svg{width:1.3em;height:1.3em}.shell-tab span{max-width:none}.shell-tools{margin-top:auto;padding-top:var(--space-4)}.shell-tools .text-size-button{width:100%;justify-content:flex-start;padding-inline:var(--space-3)}.shell-tools .text-size-button__value{margin-left:auto}.song__bar{padding-top:max(calc(var(--space-1) * 1.5),var(--safe-t))}.song__stage{padding-bottom:calc(var(--tap) * 4.3)}.shell-main{--main-pad-x: var(--space-5);--main-pad-y: var(--space-5)}}@media(min-width:900px)and (max-width:1279px){.shell-tabs{width:calc(12.5rem * var(--scale));align-items:stretch}.shell-tabs .shell-brand{font-size:var(--fs-lg);padding:var(--space-1) var(--space-2) var(--space-3)}.shell-tabs .shell-brand span:not(.shell-brand__sub){display:inline}.shell-brand__sub{display:none}.shell-tab{justify-content:flex-start;gap:var(--space-2);padding-inline:var(--space-2)}.shell-tab span{display:inline}.shell-tab .shell-tab__text{display:flex}.shell-tab .shell-tab__short{display:none}.shell-tabs .btn--aa__label{display:inline}.shell-tools{width:100%}.shell-tools .text-size-button{gap:var(--space-1);padding-inline:var(--space-2);font-size:var(--fs-sm)}}.song{--song-gutter: clamp(.5rem, 1vw, .75rem);--song-frame-inset: var(--shell-frame);position:relative;display:grid;grid-template-columns:minmax(0,1fr);row-gap:var(--song-gutter);column-gap:0;margin:calc(-1 * var(--main-pad-y)) calc(-1 * var(--main-pad-x));padding:0;min-height:calc(100dvh - 2 * var(--main-pad-y))}.shell-main>.song{max-width:none}@media(min-width:900px){.shell-main>.song{max-width:var(--measure-wide);margin-block-start:calc(var(--song-frame-inset) - var(--main-pad-y));margin-block-end:calc(-1 * var(--main-pad-b));margin-inline:max(calc(var(--song-frame-inset) - var(--main-pad-x)),calc((100% - var(--measure-wide)) / 2))}}.song__bar{position:sticky;top:var(--shell-bar-h, 0px);z-index:30;display:flex;align-items:center;gap:var(--space-2);padding:calc(var(--space-1) * 1.5) var(--song-gutter);border-width:0 0 1px;border-radius:0;min-height:calc(var(--tap) + var(--space-2))}.song__identity{min-width:0;flex:1 1 auto}@media(max-width:700px){.pager,.shortcut-bar{display:none}.song__bar{--tap: 44px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity view" "back actions";gap:.25rem var(--space-2)}.song__identity{grid-area:identity}.song__back{grid-area:back;justify-self:start}.practice-view-switch--toolbar{grid-area:view;justify-self:end}}.song__title{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-title);line-height:1.15;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song__caption{display:block;font-size:var(--fs-xs);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song__bar-actions{display:flex;align-items:center;gap:var(--space-2);flex:none}.song-admin-edit{white-space:nowrap;flex-shrink:0}@media(min-width:701px)and (max-width:1200px){.song__bar:has(.song-admin-edit){flex-wrap:wrap}.song__bar:has(.song-admin-edit) .song__identity{flex-basis:40%}.song__bar:has(.song-admin-edit) .song__bar-actions{margin-left:auto}}@media(max-width:700px){.song__title{font-size:clamp(1rem,5vw,var(--fs-lg))}.song__title{font-size:clamp(1rem,4.6vw,var(--fs-lg));white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.song__bar-actions{grid-column:1 / -1;grid-row:2;justify-self:end;gap:.1rem;margin-left:0;max-width:calc(100% - var(--tap) - var(--space-2));overflow-x:auto;scrollbar-width:none}.song__bar-actions::-webkit-scrollbar{display:none}.song__bar-actions .btn__label{display:none}.song__nav{gap:0}}.song__bar{flex-wrap:nowrap;container:songbar / inline-size}.song__bar .song__identity{flex:1 1 auto;min-width:0}.song__bar .practice-view-switch--toolbar,.song__bar .song__bar-actions{flex:none}.song__save{white-space:nowrap;flex:none}.song__cover{display:none;flex:none;appearance:none;border:0;padding:0;background:none;cursor:pointer;border-radius:var(--r-xs);min-height:var(--tap);align-items:center}.song__cover:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.song__more{position:relative;display:none}@container songbar (max-width: 66em){.song__bar .song__bar-actions .btn__label{display:none}.song__bar .practice-view-switch--toolbar .practice-view-switch__option{flex:0 0 40px;width:40px;min-height:40px;padding:0}.song__bar .practice-view-switch--toolbar .practice-view-switch__option span{display:none}}@container songbar (max-width: 58em){.song__bar .song-version,.song__bar .song-version__dot,.song__bar .song__wide{display:none}.song__bar .song__more{display:block}}@container songbar (max-width: 34em){.song__bar .practice-view-switch--toolbar,.song__bar .song__tune-btn,.song__bar .song__save-more{display:none}}@container songbar (min-width: 58.01em){.song__bar .song__cover{display:flex}}@supports not (container-type: inline-size){@media(max-width:1400px){.song__bar .song__bar-actions .btn__label{display:none}.song__bar .practice-view-switch--toolbar .practice-view-switch__option{flex:0 0 40px;width:40px;min-height:40px;padding:0}.song__bar .practice-view-switch--toolbar .practice-view-switch__option span{display:none}}@media(max-width:1180px){.song__bar .song-version,.song__bar .song-version__dot,.song__bar .song__wide{display:none}.song__bar .song__more{display:block}}@media(max-width:560px){.song__bar .practice-view-switch--toolbar,.song__bar .song__tune-btn,.song__bar .song__save-more{display:none}}@media(min-width:560.02px){.song__bar .song__more-tune{display:none}}}@container songbar (min-width: 34.01em){.song__bar .song__more-tune{display:none}}@media(max-width:700px){.song__bar{display:flex;gap:var(--space-1)}.song__bar-actions{grid-column:auto;grid-row:auto;max-width:none;overflow:visible}}.song__more-menu{position:absolute;right:0;top:calc(100% + var(--space-1));z-index:45;background:var(--card);border:var(--hair) solid var(--line-strong);min-width:min(16rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);display:flex;flex-direction:column;padding:var(--space-2);border-radius:var(--r-md);box-shadow:var(--shadow-lg)}.song__more-label{font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-2) var(--space-2) var(--space-1)}.song__more-item{appearance:none;font:inherit;text-align:left;border:0;background:none;color:var(--ink);min-height:var(--tap);padding:0 var(--space-3);border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;text-decoration:none}.song__more-item:hover{background:var(--paper-3)}.song__more-item[aria-checked=true]{color:var(--accent-ink);font-weight:var(--fw-title)}.song__more-item[aria-checked=true]:after{content:" ✓"}.song-version{font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--accent-ink);background:var(--accent-tint);border:0;border-radius:var(--r-full);padding:1px var(--space-2);margin:0;max-width:9rem;cursor:pointer;vertical-align:baseline}@media(max-width:899px){.app[data-page=song]{--shell-bar-h: 0px}.app[data-page=song] .shell-bar{display:none}html[data-playing=true] .app[data-page=song]{--nav-h: max(var(--space-2), var(--safe-b))}html[data-playing=true] .app[data-page=song] .shell-tabs{display:none}}.song__stage{padding:var(--song-gutter);padding-bottom:calc(var(--tap) * 6 + var(--nav-h));display:flex;flex-direction:column;gap:var(--song-gutter);min-width:0}.song__stage[data-hand=side]{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,21rem);align-items:start}.song__stage-main{display:flex;flex-direction:column;gap:var(--song-gutter);min-width:0}.song__stage[data-hand=side]>.hand-dock{position:sticky;top:var(--space-3)}.hand-dock__head{align-items:flex-start}.hand-dock__tools{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.song__dock{position:sticky;bottom:var(--nav-h, 0px);z-index:30;align-self:end;margin:0 var(--song-gutter);margin-bottom:max(var(--song-gutter),var(--safe-b));border-radius:var(--r-lg);padding:var(--space-1);display:flex;flex-direction:column;gap:var(--space-1)}@media(min-width:900px){.song__bar{top:var(--song-frame-inset);border-width:1px;border-radius:var(--r-lg)}.song__stage{padding-inline:0}.song__dock{bottom:var(--song-frame-inset);margin-inline:0;margin-bottom:0}}.song__dock .card--inverse .card__head{margin:0;padding:0;border:0}.song__dock .card--inverse .card__title{font-family:var(--font);font-size:var(--fs-xs);font-weight:var(--fw-title);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.song__dock .card--inverse,.song__dock .now-panel{background:var(--glass-shade);color:inherit;border:0;border-radius:var(--r-lg);padding:var(--space-2) var(--space-3);margin:0;box-shadow:none;gap:var(--space-3);min-height:0}:root[data-theme=contrast] .song__dock .card--inverse,:root[data-theme=contrast] .song__dock .now-panel{border:var(--hair) solid var(--line)}.song__dock .now-panel h2,.song__inspector{position:fixed;z-index:60;background:var(--card);-webkit-backdrop-filter:none;backdrop-filter:none;inset:auto 0 0;max-height:82dvh;border-radius:var(--r-xl) var(--r-xl) 0 0;border-width:1px 0 0;padding:var(--space-2) var(--space-4) max(var(--space-4),var(--safe-b));overflow-y:auto;overscroll-behavior:contain;transform:translateY(101%);transition:transform .32s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column;gap:var(--space-4)}.song__inspector[data-open=true]{transform:translateY(0)}.song__inspector[data-open=false]{visibility:hidden}.inspector__top{display:flex;align-items:center;gap:var(--space-2);padding-bottom:var(--space-2);position:sticky;top:calc(-1 * var(--space-2));z-index:2;margin-inline:calc(-1 * var(--space-4));padding-inline:var(--space-4);padding-top:var(--space-2);background:var(--card)}.song__inspector:before{content:"";align-self:center;width:2.5rem;height:5px;flex:none;border-radius:var(--r-full);background:var(--line-strong);opacity:.6}.song__scrim{position:fixed;inset:0;z-index:50;background:#00000047;opacity:0;pointer-events:none;transition:opacity .32s ease;border:0;padding:0}.song__scrim[data-open=true]{opacity:1;pointer-events:auto}@media(min-width:700px)and (max-width:1179px){.song__inspector{left:50%;right:auto;width:min(40rem,calc(100vw - 2 * var(--space-5)));bottom:max(var(--space-4),var(--safe-b));max-height:58dvh;border-radius:var(--r-xl);border-width:1px;padding-bottom:var(--space-4);box-shadow:0 18px 48px #00000038;transform:translate(-50%,calc(100% + 4rem))}.song__inspector[data-open=true]{transform:translate(-50%)}.song__scrim{background:#00000024}}.inspector__section{display:flex;flex-direction:column;gap:var(--space-3)}.inspector__top>.segmented-wrap{flex:1;min-width:0}.adjust-tab{display:flex;flex-direction:column;gap:var(--space-4)}.song__inspector .btn{min-height:var(--control-h);font-size:var(--fs-sm);padding-inline:var(--space-3)}.song__inspector .select,.song__inspector .input{min-height:var(--control-h);font-size:var(--fs-sm)}.adjust-now{display:flex;flex-direction:column}.adjust-tips{margin:0;padding-left:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--fs-sm)}.adjust-tab[hidden]{display:none}.adjust-list{display:flex;flex-direction:column;gap:var(--space-4)}.adjust-details[open]>summary{margin-bottom:var(--space-3)}.inspector__heading{font-family:var(--font);font-size:var(--fs-xs);font-weight:var(--fw-title);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0}@media(min-width:1180px){.song{grid-template-columns:minmax(0,1fr) 0px;transition:grid-template-columns .32s cubic-bezier(.32,.72,0,1)}.song[data-inspector=true]{grid-template-columns:minmax(0,1fr) var(--inspector-w, 24rem)}.song__bar{grid-column:1 / -1}.song__dock{grid-column:1}.song__inspector{position:sticky;inset:0 auto auto;grid-column:2;grid-row:2 / span 2;height:100dvh;max-height:none;width:auto;min-width:0;overflow:hidden auto;margin-left:var(--song-gutter);margin-block:var(--song-gutter);top:calc(var(--song-bar-h, 0px) + var(--song-gutter) * 2);height:calc(100dvh - var(--song-bar-h, 0px) - var(--song-gutter) * 4);border-radius:0;border-style:solid;border-color:var(--glass-border);border-width:1px 0 1px 1px;transform:none;opacity:0;visibility:hidden;transition:opacity .24s ease,visibility .24s;padding-top:var(--space-4)}.song__inspector[data-open=true]{opacity:1;visibility:visible}.song__inspector:before{display:none}.song__scrim{display:none}.song__grip{position:absolute;top:0;bottom:0;left:calc(-1 * var(--song-gutter));width:var(--song-gutter);z-index:1;appearance:none;border:0;padding:0;background:none;cursor:col-resize;touch-action:none}.song__grip:after{content:"";position:absolute;inset:calc(50% - 1.25rem) 35% auto;height:2.5rem;border-radius:var(--r-full);background:var(--line-strong);opacity:0;transition:opacity .15s}.song__grip:hover:after,.song__grip:focus-visible:after,.song__grip[data-dragging=true]:after{opacity:1}.song__grip:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}}@media(pointer:coarse){.shell-tab:hover{color:var(--muted)}.shell-tab[aria-current=page]:hover{color:var(--accent-ink)}}.song__stage>*,.song__stage-main>*{min-width:0;max-width:100%}.song__stage .card{min-width:0;overflow-x:auto}.score-surface{width:100%;min-width:0;max-width:100%;touch-action:pan-x pan-y pinch-zoom;-webkit-user-select:none;user-select:none}@media print{.shell-tabs,.shell-bar,.song__dock,.song__inspector,.song__scrim,.song__bar{display:none!important}.app{display:block}.song,.song__stage{display:block;margin:0;padding:0;min-height:0}}.song__dock .transport{position:static;margin:0;padding:2px var(--space-2);gap:calc(var(--space-1) * 1.5);background:transparent;border:0;border-radius:var(--r-lg);box-shadow:none}.song__dock .transport__main{gap:var(--space-3)}.song__stage .pager{gap:var(--space-2) var(--space-3)}.song__stage .pager .field__label{margin:0;font-size:var(--fs-xs);font-weight:var(--fw-title);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.song__stage .pager .segmented button{padding-inline:var(--space-3);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.song__stage .pager .field{flex-direction:row;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0}.slider__value{font-size:var(--fs-sm);font-weight:var(--fw-title);color:var(--muted)}.form--narrow{max-width:26rem}.song__dock .transport__main{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4)}.song__dock .transport--wide .transport__main,.song__dock .transport--wide .transport__row2{flex-wrap:nowrap}.transport__sound{flex:0 1 auto;min-width:0}.transport__sound .segmented button{font-size:var(--fs-sm);padding-inline:var(--space-3)}.song__dock .transport__row2{gap:calc(var(--space-1) * 1.5);padding-top:var(--space-1);margin-top:0}.song__dock .bar-ruler__track{height:max(24px,calc(24px * var(--scale)))}.song__bar .song__tune-btn{white-space:nowrap}.song__dock .transport__row2 .segmented button{padding-inline:clamp(.42rem,.7vw,.68rem)}.song__dock .transport__row2 .transport__right{gap:var(--space-2)}.song__dock .transport__row2 .transport__vol .slider{width:clamp(56px,5.4vw,80px)}.song__dock .transport__row2 .transport__toggle{padding-inline:10px}.transport__modes{display:inline-grid}.transport__modeface{grid-area:1 / 1;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.transport__modeface--off{visibility:hidden}@media(max-width:900px){.transport__sound{flex:1 1 100%;order:3}}@media(max-width:700px){.song__dock .transport{--tap: 44px;padding:3px 6px;gap:3px}.song__dock{padding:3px;gap:3px}.song__dock .transport__main{column-gap:var(--space-1);row-gap:var(--space-1)}.song__dock .transport__right{width:100%;margin-left:0;gap:var(--space-1)}.song__dock .transport__main>.transport__right{flex-wrap:nowrap;justify-content:space-between;min-width:0}.song__dock .bar-ruler__track{height:max(22px,calc(22px * var(--scale)))}.song__stage{padding-bottom:calc(var(--tap) * 3.2 + var(--nav-h))}}.palette-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(9.5em,100%),1fr));gap:var(--space-2)}.palette-swatch{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-3);border:var(--hair) solid var(--line-strong);border-radius:var(--r-md);background:var(--paper-2);color:var(--ink);font:inherit;text-align:left;cursor:pointer;min-height:var(--tap);transition:border-color .15s ease,transform .12s ease}.palette-swatch:hover{border-color:var(--muted)}.palette-swatch:active{transform:scale(.98)}.palette-swatch[aria-checked=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-tint)}.palette-swatch__chips{display:flex;gap:3px}.palette-swatch__chip{width:1.5em;height:1.5em;border-radius:var(--r-full);border:1px solid var(--glass-border)}.palette-swatch__chip--paper{background:var(--paper)}.palette-swatch__chip--accent{background:var(--accent)}.palette-swatch__chip--ink{background:var(--ink)}.palette-swatch__name{font-weight:var(--fw-title);font-size:var(--fs-sm)}.palette-swatch__sub{font-size:var(--fs-xs);color:var(--muted)}.open-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(3.2em,100%),1fr));gap:var(--space-1)}.open-picker__choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);min-height:var(--tap);padding:var(--space-2) var(--space-1);border:var(--hair) solid var(--line-strong);border-radius:var(--r-md);background:var(--card);color:var(--ink);font:inherit;cursor:pointer;transition:border-color .15s ease,transform .12s ease}.open-picker__choice:hover{border-color:var(--muted)}.open-picker__choice:active{transform:scale(.98)}.open-picker__choice[aria-checked=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent);font-weight:var(--fw-figure)}.open-picker__mark{display:block;width:var(--control-h);height:var(--control-h)}.open-picker__name{font-size:var(--fs-xs);line-height:1.15;text-align:center}.shell-recent{position:relative}.shell-tab--recent{width:100%}.shell-recent__count{margin-left:auto;font-size:var(--fs-xs);font-weight:var(--fw-figure);color:var(--muted)}.shell-recent__panel{position:fixed;z-index:60;min-width:15rem;max-width:22rem;padding:var(--space-2);border-radius:var(--r-md);border:var(--hair) solid var(--line);background:var(--card);box-shadow:var(--shadow-lg, 0 12px 32px rgb(0 0 0 / .18));display:flex;flex-direction:column;gap:2px;opacity:0;pointer-events:none;transform:translate(-4px);transition:opacity .12s ease,transform .12s ease}.shell-recent__panel[data-open=true]{opacity:1;pointer-events:auto;transform:none}.shell-recent__item{appearance:none;border:0;background:none;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;padding:var(--space-2);min-height:var(--tap);border-radius:var(--r-xs);color:var(--ink)}.shell-recent__item:hover{background:var(--paper-3)}.shell-recent__title{font-size:var(--fs-sm);font-weight:var(--fw-title)}.shell-recent__meta{font-size:var(--fs-xs);color:var(--muted)}@media(max-width:900px){.shell-recent{display:none}}.shell-build{display:block;padding:var(--space-1) var(--space-2);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--muted);text-decoration:none}.shell-build:hover{color:var(--accent-ink)}.shell-tab__text{display:flex;flex-direction:column;min-width:0;line-height:1.15}.shell-tab__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-tab__sub{font-size:var(--fs-xs);color:var(--muted);font-weight:var(--fw-medium)}.shell-tab .shell-tab__short{display:none}@media(max-width:899px){.shell-tab--overflow,.shell-tab__sub,.shell-tab--piece .shell-tab__title{display:none}.shell-tab--piece .shell-tab__short{display:inline}.shell-tabs{justify-content:space-around}.shell-tab{flex:1 1 0;min-width:0}}@media(min-width:900px){.shell-tab--more{display:none}}.more-menu{display:grid;gap:var(--space-2)}.more-menu__item{justify-content:flex-start;width:100%}.shell-history{display:flex;align-items:center;gap:var(--space-1);flex:none}.shell-history__btn{appearance:none;border:0;background:none;color:var(--ink);font:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:var(--tap);height:var(--tap);padding:0;border-radius:var(--r-full)}.shell-history__btn:hover:not(:disabled){background:var(--glass-shade)}.shell-history__btn:disabled{color:var(--muted);opacity:.45;cursor:default}.shell-history__btn svg{width:1.1em;height:1.1em;flex:none}:root{--r-xs: 10px;--r-sm: 13px;--r-md: 18px;--r-lg: 24px;--r-xl: 34px;--measure: 1440px;--measure-wide: 1680px}:root:not([data-theme=contrast]){--elev-1: 0 1px 2px rgba(20, 20, 25, .04), 0 6px 18px rgba(20, 20, 25, .045);--elev-2: 0 2px 5px rgba(20, 20, 25, .05), 0 16px 36px rgba(20, 20, 25, .08);--elev-3: 0 8px 18px rgba(20, 20, 25, .1), 0 30px 80px rgba(20, 20, 25, .16);--glass-blur: 38px}:root[data-palette=modern]{--paper: #f5f5f7;--paper-2: #fbfbfd;--paper-3: #e8e8ed;--card: #ffffff;--paper-ink-soft: #ffffff;--ink: #1d1d1f;--ink-soft: #424245;--muted: #6e6e73;--line: #e3e3e8;--line-strong: #d1d1d6;--accent: #6558d9;--accent-2: #786be8;--accent-ink: #5749ca;--on-accent: #ffffff;--glass-border: rgba(20, 20, 25, .07);--glass-highlight: rgba(255, 255, 255, .94)}:root[data-palette=modern][data-theme=dark]{--paper: #08080a;--paper-2: #121216;--paper-3: #1c1c22;--card: #17171c;--paper-ink-soft: #17171c;--ink: #f5f5f7;--ink-soft: #d2d2d7;--muted: #98989f;--line: #29292f;--line-strong: #3b3b43;--accent: #9a90ff;--accent-2: #aca4ff;--accent-ink: #b9b2ff;--on-accent: #17151f;--glass-border: rgba(255, 255, 255, .09);--glass-highlight: rgba(255, 255, 255, .12)}:root:not([data-theme=contrast]) body{background-color:var(--paper);background-image:radial-gradient(circle at 82% -10%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 34rem),radial-gradient(circle at 32% 108%,color-mix(in srgb,var(--accent) 4%,transparent),transparent 40rem);background-attachment:fixed}body{letter-spacing:-.006em;text-rendering:optimizeLegibility}.source-pages{overflow:hidden;border:var(--hair) solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:var(--r-lg);background:color-mix(in srgb,var(--card) 70%,transparent);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.source-pages--open{border-color:color-mix(in srgb,var(--line-strong) 82%,transparent);background:var(--card);box-shadow:var(--elev-1)}.source-pages__toggle{appearance:none;width:100%;min-height:var(--tap);border:0;border-radius:inherit;padding:var(--space-1) var(--space-2);background:transparent;color:var(--ink);cursor:pointer;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2);font:inherit;text-align:start;transition:background .15s ease}.source-pages__toggle:hover{background:color-mix(in srgb,var(--paper-3) 58%,transparent)}.source-pages__toggle:focus-visible{outline-offset:-3px}.source-pages--open .source-pages__toggle{border-radius:var(--r-lg) var(--r-lg) 0 0}.source-pages__icon,.source-pages__chevron{display:inline-grid;place-items:center;flex:none}.source-pages__icon{width:2.1rem;height:2.1rem;border-radius:var(--r-sm);background:color-mix(in srgb,var(--accent) 11%,transparent);color:var(--accent-ink)}.source-pages__icon svg{width:1.05rem;height:1.05rem}.source-pages__copy{min-width:0;display:flex;flex-direction:column;gap:.05rem}.source-pages__title{font-size:var(--fs-sm);font-weight:var(--fw-title);line-height:1.18}.source-pages__meta{overflow:hidden;color:var(--muted);font-size:var(--fs-xs);line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.source-pages__chevron{width:2rem;height:2rem;border:var(--hair) solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:var(--r-full);background:color-mix(in srgb,var(--paper-3) 72%,transparent);color:var(--muted)}.source-pages__chevron svg{width:.95rem;height:.95rem;transition:transform .18s ease}.source-pages__toggle[aria-expanded=true] .source-pages__chevron svg{transform:rotate(180deg)}.source-pages__body{border-top:var(--hair) solid color-mix(in srgb,var(--line) 78%,transparent);padding:var(--space-2)}.source-pages__body>.field__hint{margin:0 0 var(--space-2)}.source-pages__item{width:min-content;flex:none;display:flex;flex-direction:column;gap:var(--space-1)}h1,h2,h3,h4,h5,h6{letter-spacing:-.028em}h2{letter-spacing:-.022em}.display{letter-spacing:-.045em;line-height:1.03}.page-head{gap:.42rem}.page-head__lead{max-width:68ch;line-height:1.56}.page-head__body{max-width:72ch;line-height:1.55}.shell-main>*{animation:page-arrive .42s cubic-bezier(.22,1,.36,1) backwards}@keyframes page-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.shell-nav-label{display:none}.shell-nav-group{display:contents}.shell-brand__mark{filter:drop-shadow(0 6px 12px color-mix(in srgb,var(--accent) 26%,transparent))}.shell-tab{transition:color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s cubic-bezier(.22,1,.36,1)}.shell-tab:active{transform:scale(.975)}.shell-tab[aria-current=page]{background:color-mix(in srgb,var(--accent) 11%,var(--card));color:var(--accent-ink);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}.shell-bar,.shell-tabs{background:linear-gradient(180deg,color-mix(in srgb,var(--glass-highlight) 62%,transparent),transparent 54%),color-mix(in srgb,var(--card) 84%,transparent)}.shell-main{--main-pad-y: clamp(1.25rem, 2.4vw, 2.5rem);--main-pad-x: max(clamp(1rem, 2.2vw, 3rem), var(--safe-l));--main-pad-b: max(5rem, var(--safe-b));padding-bottom:var(--main-pad-b)}@media(min-width:900px){.app{grid-template-columns:calc(15.75rem * var(--scale)) minmax(0,1fr)}.shell-tabs{position:sticky;top:var(--shell-frame);height:calc(100dvh - 2 * var(--shell-frame));width:auto;margin:var(--shell-frame) 0 var(--shell-frame) var(--shell-frame);padding:.85rem .7rem .65rem;border:1px solid var(--glass-border);border-radius:26px;box-shadow:var(--elev-2),inset 0 1px 0 var(--glass-highlight);overflow:hidden auto}.shell-tabs .shell-brand{align-items:center;gap:.72rem;margin:0 .45rem .55rem;padding:.2rem .25rem .55rem;font-size:calc(21px * var(--scale))}.shell-brand__mark{width:2rem;height:2rem}.shell-brand__sub{display:block;margin-top:.16rem;color:var(--muted);font-family:var(--font);font-size:var(--fs-xs);font-weight:400;letter-spacing:0}.shell-nav-label{display:block;margin:.48rem .75rem .22rem;color:var(--muted);font-size:calc(11px * var(--scale));font-weight:var(--fw-figure);letter-spacing:.075em;line-height:1;text-transform:uppercase}.shell-nav-group{display:grid;width:100%;gap:2px}.shell-tab{width:100%;min-height:var(--tap);flex-direction:row;justify-content:flex-start;gap:.76rem;padding:.54rem .72rem;border-radius:12px;font-size:var(--fs-sm);text-align:left}.shell-tab svg{width:1.18em;height:1.18em}.shell-tab:hover:not([aria-current=page]){background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--ink)}.shell-tools{margin:auto .25rem 0;padding-top:.5rem}.shell-tools .btn{width:100%;justify-content:flex-start}}@media(min-width:900px)and (max-width:1279px){.app{grid-template-columns:calc(12.5rem * var(--scale)) minmax(0,1fr)}.shell-tabs{width:auto;padding-inline:.55rem}.shell-nav-label{display:none}.shell-tab{gap:.55rem;padding-inline:.58rem;font-size:calc(13px * var(--scale))}.shell-tabs .shell-brand{margin-inline:.2rem}.shell-tabs .shell-tools{margin-inline:.15rem}}.btn{border-color:color-mix(in srgb,var(--line-strong) 72%,transparent);border-radius:var(--r-full);background:color-mix(in srgb,var(--card) 92%,transparent);box-shadow:0 1px 2px #14141909;font-weight:var(--fw-title);transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease,border-color .16s ease,box-shadow .16s ease}.btn:hover:not(:disabled){background:var(--card);border-color:color-mix(in srgb,var(--ink) 18%,var(--line));box-shadow:0 4px 14px #14141914;transform:translateY(-1px)}.btn:active:not(:disabled){transform:scale(.98);box-shadow:0 1px 3px #1414190f}.btn--primary{border-color:transparent;background:linear-gradient(180deg,var(--accent-2),var(--accent));color:var(--on-accent);box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 24%,transparent)}.btn--primary:hover:not(:disabled){border-color:transparent;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-2) 90%,white),var(--accent));box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 30%,transparent)}.btn--big{min-height:calc(var(--tap) + 8px);padding-inline:1.2rem}.btn--ghost{box-shadow:none}.input,.select,.textarea,textarea{border-color:var(--line);border-radius:12px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:inset 0 1px 2px #14141906,0 1px 0 var(--glass-highlight);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.input:hover,.select:hover,.textarea:hover,textarea:hover{border-color:var(--line-strong)}.input:focus,.select:focus,.textarea:focus,textarea:focus{border-color:var(--accent);background:var(--card);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent);outline:none}.field__label{color:var(--ink-soft);font-size:var(--fs-xs);font-weight:var(--fw-title)}.chip{border-color:var(--line);background:color-mix(in srgb,var(--card) 92%,transparent);color:var(--muted);font-weight:var(--fw-medium)}.chip[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 38%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--card));color:var(--accent-ink)}.card{border-color:var(--glass-border);border-radius:var(--r-lg);background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:var(--elev-1),inset 0 1px 0 var(--glass-highlight)}.card--inverse{background:color-mix(in srgb,var(--inverse-bg) 92%,transparent);border-color:var(--inverse-line)}.stack>section>h2:not([class]){margin-bottom:.9rem;font-size:clamp(var(--fs-xl),2.3vw,var(--fs-2xl))}.empty{min-height:18rem;border:1px dashed var(--line-strong);border-radius:var(--r-xl);background:color-mix(in srgb,var(--card) 66%,transparent)}.empty__icon{width:4rem;height:4rem;border-radius:50%;background:var(--accent-tint);color:var(--accent-ink)}.eyebrow{margin:0 0 1.1rem;color:#cfcaff;font-size:var(--fs-sm);font-weight:var(--fw-figure);letter-spacing:.045em;text-transform:uppercase}.song-card{position:relative;border-color:color-mix(in srgb,var(--line) 82%,transparent);border-radius:20px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:0 2px 5px #14141909,0 12px 30px #14141909}.song-card:before{content:"";position:absolute;z-index:1;inset:.72rem auto .72rem 0;width:4px;border-radius:0 var(--r-full) var(--r-full) 0;background:var(--song-accent)}.song-card:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 1px 0 var(--glass-highlight);pointer-events:none}.song-card:has(.song-card__open:hover){transform:translateY(-3px) scale(1.005);box-shadow:0 8px 18px #14141912,0 22px 46px #14141914}.song-card__open{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:.9rem 1rem .85rem 1.15rem;padding-right:calc(var(--tap) + .4rem)}.song-card__open--full{padding-right:1rem}.song-card__body{display:flex;flex-direction:column;min-width:0;min-height:60px}.song-card__title{font-size:var(--fs-base);letter-spacing:-.018em}.song-card__sub{margin-top:.18rem;font-size:var(--fs-xs)}.song-card__marks{margin-top:auto;padding-top:.5rem}.song-card__fav{top:.42rem;right:.42rem}.song-card__progress{position:absolute;inset:auto 0 0;height:3px}.song-hero{border-left:0;padding:.4rem 0 1rem;margin-bottom:.35rem}.song-hero:before{content:"";align-self:stretch;width:5px;min-height:3.5rem;border-radius:var(--r-full);background:var(--song-accent);box-shadow:0 8px 22px color-mix(in srgb,var(--song-accent) 26%,transparent)}.song-hero .display{font-size:clamp(var(--fs-2xl),3.2vw,var(--fs-3xl))}.score-surface{border-color:var(--glass-border);border-radius:20px;padding:.6rem .7rem .85rem;box-shadow:0 18px 46px #14141911,inset 0 1px 0 var(--glass-highlight)}.practice-view-switch{align-self:center;display:flex;align-items:center;gap:3px;width:fit-content;max-width:100%;padding:4px;border:var(--hair) solid var(--glass-border);border-radius:var(--r-full);background:color-mix(in srgb,var(--card) 80%,transparent);-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);box-shadow:var(--elev-1),inset 0 1px 0 var(--glass-highlight);overflow-x:auto;scrollbar-width:none}.practice-view-switch::-webkit-scrollbar{display:none}.practice-view-switch--toolbar{flex:0 0 auto;padding:3px;box-shadow:none}.practice-view-switch__option{appearance:none;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:.38rem;min-height:var(--tap);padding:.48rem .78rem;border:0;border-radius:var(--r-full);background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-title);white-space:nowrap;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .12s ease}.practice-view-switch__option svg{width:1.05rem;height:1.05rem}.practice-view-switch__option:hover{color:var(--ink);background:color-mix(in srgb,var(--paper-3) 70%,transparent)}.practice-view-switch__option:active{transform:scale(.98)}.practice-view-switch__option--on{background:var(--card);color:var(--accent-ink);box-shadow:0 1px 3px #14141914,0 5px 15px #1414190f}.practice-view-switch--toolbar .practice-view-switch__option{min-height:40px;padding:.36rem .7rem}.practice-notes{overflow-x:visible!important}.practice-notes .card__head{margin-bottom:.45rem}.simple-view--compact{display:flex;flex-direction:row;flex-wrap:wrap;align-items:stretch;gap:.45rem}.simple-view--compact .simple-bar{flex:1 1 auto;min-width:min(100%,12rem);max-width:100%;padding:.36rem .4rem .42rem;border-radius:13px}.simple-view--compact .simple-bar__label{margin-bottom:.24rem}.simple-view--compact .simple-bar__cards{display:flex;flex-wrap:wrap;gap:.3rem .26rem;padding:2px}.simple-view--compact .note-card{flex:none;gap:.08rem;min-height:78px;padding:.24rem .28rem .28rem;border-width:1.5px;border-radius:11px}.simple-view--compact .note-card__top{min-height:1.15em;gap:.2rem}.simple-view--compact .note-card__bow{font-size:var(--fs-sm)}.simple-view--compact .note-card__string{padding:0 .3rem;font-size:calc(var(--fs-xs) * .9)}.simple-view--compact .note-card__pos{padding:0 .2rem;font-size:calc(var(--fs-xs) * .85);border-width:1px}.simple-view--compact .note-card__name{font-size:var(--fs-lg)}.simple-view--compact .note-card__finger{width:calc(26px * var(--scale));height:calc(26px * var(--scale));border-width:1.5px;font-size:var(--fs-sm)}.simple-view--compact .note-card__len{height:3px;margin-top:.1rem}.simple-view--compact .note-card__beats,.simple-view--compact .note-card__tie{font-size:calc(var(--fs-xs) * .9);line-height:1.1}.simple-view--compact .note-card__alt{padding-inline:.25rem;border-width:1px;line-height:1.15}.simple-view--compact .note-card--active{box-shadow:0 0 0 3px var(--play-ink)}.simple-view--compact.simple-view--small .note-card{min-height:70px}.simple-view--compact.simple-view--small .note-card__name{font-size:var(--fs-base)}.simple-view--compact.simple-view--small .note-card__finger{width:calc(23px * var(--scale));height:calc(23px * var(--scale));font-size:var(--fs-xs)}.simple-view--compact.simple-view--large .note-card{min-height:92px}.simple-view--compact.simple-view--large .note-card__name{font-size:var(--fs-xl)}.simple-view--compact.simple-view--large .note-card__finger{width:calc(32px * var(--scale));height:calc(32px * var(--scale));font-size:var(--fs-lg)}.transport{bottom:.75rem;border-color:var(--glass-border);border-radius:22px;background:color-mix(in srgb,var(--card) 84%,transparent);-webkit-backdrop-filter:blur(34px) saturate(190%);backdrop-filter:blur(34px) saturate(190%);box-shadow:0 18px 55px #14141929,inset 0 1px 0 var(--glass-highlight)}.now-panel__name{letter-spacing:-.05em}.now-panel__badge{box-shadow:0 10px 25px color-mix(in srgb,var(--badge-color) 22%,transparent)}.palette-picker{grid-template-columns:repeat(auto-fill,minmax(min(100%,132px),1fr));gap:.55rem}.palette-swatch{min-height:92px;gap:.3rem;padding:.7rem;border-radius:15px}.palette-swatch__chips{gap:2px}.palette-swatch__chip{width:1.25rem;height:1.25rem}.palette-swatch__name{line-height:1.1}.palette-swatch__sub{line-height:1.25}.rung{border-color:var(--line);border-radius:15px;background:color-mix(in srgb,var(--card) 84%,transparent)}.dialog-backdrop{background:#10101475;-webkit-backdrop-filter:blur(12px) saturate(130%);backdrop-filter:blur(12px) saturate(130%)}.dialog{border-color:var(--glass-border);border-radius:28px;background:var(--card);box-shadow:var(--elev-3),inset 0 1px 0 var(--glass-highlight)}.toast{border-color:var(--glass-border);border-radius:var(--r-full);background:var(--inverse-bg);box-shadow:0 16px 40px #0000003d}@media(max-width:899px){.shell-bar{padding-inline:max(1rem,var(--safe-l))}.shell-tabs{gap:.2rem;padding-inline:.45rem}.shell-tab{min-width:66px;padding-inline:.35rem;border-radius:12px}}.practice-view-switch--toolbar{align-self:center;max-width:none}.practice-view-switch--toolbar .practice-view-switch__option svg{display:block}@media(max-width:620px){.shell-main{--main-pad-x: max(.8rem, var(--safe-l));--main-pad-y: 1rem}.song-card__open{padding-block:.8rem}.song-card__body{min-height:58px}.practice-notes{padding:var(--space-2)}.palette-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.palette-swatch{min-height:72px}.palette-swatch__sub{display:none}.transport{bottom:.35rem;border-radius:20px}}@media(prefers-reduced-motion:reduce){.shell-main>*{animation:none}}:root[data-theme=contrast] .card,:root[data-theme=contrast] .song-card,:root[data-theme=contrast] .dialog{box-shadow:var(--elev-1)}.admin-studio{max-width:1200px}.admin-login{max-width:540px}.admin-session{border-inline-start:4px solid var(--accent);flex-wrap:wrap}.admin-catalogue{display:grid;gap:12px}.admin-song,.admin-history-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-song p,.admin-history-row p{margin:6px 0}.admin-song>div{min-width:0;overflow-wrap:anywhere}.admin-song>button{flex-shrink:0}.admin-history{max-height:400px;overflow:auto}.admin-history-row{padding:12px 0;border-bottom:1px solid var(--line)}.admin-history-row .btn-row{flex-shrink:0}.admin-score-preview{max-width:100%;overflow-x:auto}.admin-publish{border:2px solid var(--accent)}.admin-studio input[type=checkbox]{min-width:20px;min-height:20px;vertical-align:middle;margin-right:8px}.admin-studio .field{min-width:0}.admin-studio .field>.select{max-width:100%}@media(max-width:650px){.admin-song,.admin-history-row{align-items:stretch;flex-direction:column;gap:8px}.admin-studio .scan-review__fields{grid-template-columns:1fr}.admin-studio .btn{min-height:44px}}body.admin-editing{overflow:hidden}body.admin-editing .shell-tabs,body.admin-editing .shell-bar{display:none}body.admin-editing .shell-main{padding:0;margin:0}body.admin-editing .shell-main>*{animation:none;transform:none}body.admin-editing .admin-studio{max-width:none;margin:0}.score-studio{position:fixed;inset:0;z-index:90;height:var(--studio-height, 100dvh);display:flex;flex-direction:column;overflow:hidden;outline:none;background:var(--paper);color:var(--ink);font-size:var(--fs-sm);line-height:1.45;--studio-border: var(--line);--studio-rail: 352px;--tap: 44px;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.score-studio *,.score-studio *:before,.score-studio *:after{box-sizing:border-box}.score-studio .btn{min-height:44px;min-width:44px;padding:9px 13px;font-size:var(--fs-xs);border-radius:10px;gap:7px;line-height:1.25;white-space:nowrap;flex-shrink:0}.score-studio .btn--primary{box-shadow:none}.score-studio .btn--on{background:color-mix(in srgb,var(--accent) 12%,var(--card));border-color:var(--accent);color:var(--accent-ink)}.score-studio .btn--danger{color:var(--danger)}.score-studio .select,.score-studio .input{min-height:44px;border-radius:8px;font-size:var(--fs-base);width:100%;padding:9px 10px;background-color:var(--card)}.score-studio .select{padding-right:27px}.score-studio button:focus-visible,.score-studio select:focus-visible,.score-studio input:focus-visible,.score-studio [tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.score-studio button:disabled{cursor:not-allowed}.score-studio .btn-row{gap:7px;flex-wrap:wrap}.score-studio .field{gap:5px;font-size:var(--fs-xs);min-width:0}.score-studio .field__label{font-size:var(--fs-xs);line-height:1.35;letter-spacing:0}.score-studio .field__hint{font-size:var(--fs-xs);line-height:1.5}.score-studio .card__title{font-size:var(--fs-base);line-height:1.3}.score-studio .card{border:0;background:transparent;padding:0;box-shadow:none}.score-studio p{margin:0}.score-studio .stack{gap:16px}.score-studio .stack--sm{gap:12px}.studio-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--studio-border);background:var(--card);flex:none}.studio-header{flex-wrap:wrap}.studio-title{min-width:100px;flex:1}.studio-title h1{font-family:var(--font);font-size:var(--fs-lg);line-height:1.3;margin:3px 0 0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;letter-spacing:-.035em;font-weight:var(--fw-title)}.studio-eyebrow{display:block;font-size:calc(var(--fs-xs) * .85);line-height:1.3;font-weight:var(--fw-figure);color:var(--muted);letter-spacing:.1em}.studio-back,.studio-browse{margin-right:4px}.studio-save-state{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:var(--fs-xs);white-space:nowrap}.studio-save-state:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok, var(--accent))}.studio-save-state--dirty:before{background:var(--warn, #936517)}.studio-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:8px 20px;background:var(--card);border-bottom:1px solid var(--studio-border);flex:none}.studio-tool-group{display:flex;align-items:center;gap:6px}.studio-tool-group+.studio-tool-group{border-left:1px solid var(--studio-border);padding-left:12px}.studio-tool-group .select{width:auto}.studio-view-tools{margin-left:auto}.studio-speed{max-width:125px}.studio-checks{border:1px solid var(--line);border-radius:8px;padding:0 10px}.studio-follow{display:flex;align-items:center;min-height:44px;padding:0 5px;font-size:var(--fs-xs);color:var(--muted)}.score-studio input[type=checkbox]{width:18px;height:18px;min-width:18px;min-height:18px;margin:0 7px 0 0;accent-color:var(--accent)}.studio-notice{flex:none;background:var(--paper-3);padding:8px 20px;white-space:pre-line;max-height:120px;overflow:auto;border-bottom:1px solid var(--line)}.studio-notice[role=alert]{color:var(--danger)}.studio-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) var(--studio-rail)}.studio-document-area{min-width:0;min-height:0;display:flex}.studio-sheet-pane{display:flex;flex-direction:column;min-width:0;min-height:0;flex:1}.studio-pane-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;padding:12px 20px}.studio-pane-heading strong{font-size:var(--fs-xs);font-weight:var(--fw-title)}.studio-pane-heading>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.studio-pane-heading>div>span{font-size:calc(var(--fs-xs) * .9);color:var(--muted)}.studio-badge{flex:none;font-size:calc(var(--fs-xs) * .8);font-weight:var(--fw-figure);letter-spacing:.08em;color:var(--accent-ink);border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));padding:4px 7px;border-radius:5px}.studio-sheet-viewport{flex:1;min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;padding:16px 20px;background:color-mix(in srgb,var(--paper-3) 65%,var(--paper))}.studio-paper-wrap{margin:0 auto;flex-shrink:0}.studio-paper{position:relative;padding:40px;transform-origin:left top;background:#fff;color:#26252c;box-shadow:0 2px 6px #1816270d,0 14px 40px #18162712;border:1px solid #dcdbe0;--ink: #26252c;--ink-soft: #414047;--muted: #656370;--staff-line: #68656f;--paper: #fff;--paper-2: #fff;--accent: #6652ce;--accent-ink: #5843b9;--loop-tint: #f2eefb;--select-tint: #e6defc;--select-ink: #6249ba;--play-tint: #d6eedd;--play-ink: #27633e}.studio-paper svg{touch-action:pan-x pan-y pinch-zoom}.studio-paper-title{height:var(--studio-heading);padding-bottom:20px;overflow:hidden}.studio-paper-title h2{font-family:var(--font-display);font-size:var(--fs-xl);line-height:1.15;font-weight:var(--fw-title);text-align:center;margin:0 0 12px;max-height:58px;overflow:hidden;overflow-wrap:anywhere}.studio-paper-title p{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:var(--fs-xs);color:#55515c}.studio-paper-title p>span{white-space:nowrap}.studio-paper-title--continuation h2{font-size:var(--fs-base);text-align:left;color:#68616c;white-space:nowrap;text-overflow:ellipsis}.studio-paper-foot{position:absolute;bottom:20px;left:40px;right:40px;display:flex;justify-content:space-between;gap:16px;color:#706a77;font-size:calc(var(--fs-xs) * .85)}.studio-paper-foot>span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.studio-paper-foot>span:last-child{white-space:nowrap}.studio-page-nav{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border-top:1px solid var(--studio-border);flex:none;font-size:var(--fs-xs);background:var(--paper)}.studio-page-nav label{display:flex;align-items:center;gap:8px}.studio-page-nav .select{width:auto;min-width:80px}.studio-page-nav>span{color:var(--muted);margin-left:8px;font-variant-numeric:tabular-nums}.studio-inspector{min-height:0;min-width:0;display:flex;flex-direction:column;border-left:1px solid var(--studio-border);background:var(--card)}.studio-inspector[hidden]{display:none}.studio-inspector-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:7px 8px 0;border-bottom:1px solid var(--line);flex:none}.studio-inspector-tabs button{min-height:57px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;color:var(--muted);border:0;border-bottom:2px solid transparent;border-radius:7px 7px 0 0;font:inherit;font-size:calc(var(--fs-xs) * .9);font-weight:var(--fw-title);cursor:pointer}.studio-inspector-tabs button .icon{width:18px;height:18px}.studio-inspector-tabs button[aria-selected=true]{border-color:var(--accent);color:var(--accent-ink);background:color-mix(in srgb,var(--accent) 6%,transparent)}.studio-selection{padding:16px 16px 12px;border-bottom:1px solid var(--studio-border);flex:none}.studio-selection__heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.studio-selection__heading strong{display:block;font-size:var(--fs-lg);margin-top:4px;font-weight:var(--fw-title);letter-spacing:-.035em}.studio-selection__heading .btn{padding:8px}.studio-bar-loupe{overflow:auto;max-height:158px;min-height:110px;border:1px solid var(--line);border-radius:8px;margin:10px 0;background:var(--paper-2);touch-action:pan-x pan-y;overscroll-behavior:contain}.studio-bar-loupe svg{min-width:460px;touch-action:pan-x pan-y}.studio-selection__tools{display:flex;justify-content:space-between;align-items:center;gap:8px}.studio-bar-jump{display:flex;align-items:center;gap:8px;font-size:var(--fs-xs)}.studio-bar-jump .select{width:70px}.studio-inspector-scroll{padding:18px 16px;overflow:auto;min-height:0;flex:1;overscroll-behavior:contain;scrollbar-gutter:stable}.studio-fields{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:18px}.studio-fields .scan-review__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px}.studio-fields .scan-review__inspector{padding:0;border:0;background:transparent}.studio-fields .scan-review__inspector>.row{display:none}.studio-fields .scan-review__inspector>.btn-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.studio-fields .scan-review__inspector .btn{white-space:normal;font-size:var(--fs-xs)}.studio-fields .scan-review__note-strip{margin:0 -1px;padding-bottom:8px;min-width:0;display:flex;gap:6px;overflow:auto}.studio-fields .scan-review__note-strip .btn{min-width:64px;min-height:60px;padding:7px;gap:1px;font-size:var(--fs-xs)}.studio-fields .scan-review__note-strip .field__hint{font-size:calc(var(--fs-xs) * .8)}.studio-insert-notes{display:grid;gap:6px}.studio-insert-notes .btn{flex:1}.studio-fields details{border-top:1px solid var(--line);padding:0}.studio-fields summary{cursor:pointer;padding:13px 0;min-height:44px;font-size:var(--fs-xs);font-weight:var(--fw-title);line-height:1.5}.studio-fields details[open]>:not(summary){margin-bottom:12px}.studio-fields .btn-row>label,.studio-fields .admin-publish>label:not(.field){display:flex;align-items:flex-start;min-height:44px;padding:10px 2px;font-size:var(--fs-xs);line-height:1.6}.studio-fields input[type=checkbox]{flex:none;margin-top:2px}.studio-fields .admin-history{max-height:none;overflow:visible}.studio-fields .admin-history-row{display:block;padding:16px 0;font-size:var(--fs-xs)}.studio-fields .admin-history-row strong{font-size:var(--fs-sm)}.studio-fields .admin-history-row p{color:var(--muted);margin:5px 0 10px}.studio-fields .admin-publish{border:0}.studio-fields .admin-publish p{font-size:var(--fs-xs)}.studio-fields .scan-review__check-list{max-height:250px}.studio-fields .note-box{font-size:var(--fs-xs);padding:12px;border-radius:8px}.studio-inspector-foot{flex:none;border-top:1px solid var(--line);color:var(--muted);padding:10px 16px;font-size:calc(var(--fs-xs) * .9)}.studio-empty{padding:24px 12px;color:var(--muted);text-align:center}.studio-empty h3{color:var(--ink);font-size:var(--fs-base);margin:12px 0 8px}.studio-empty p{font-size:var(--fs-xs);line-height:1.65}.studio-status{flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:7px 20px;background:var(--card);border-top:1px solid var(--line);font-size:calc(var(--fs-xs) * .85);color:var(--muted);min-height:36px}.studio-status>span{display:flex;align-items:center;gap:6px}.studio-status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent)}.studio-status details{position:relative}.studio-status summary{cursor:pointer;min-height:30px;display:flex;align-items:center}.studio-status details p{position:absolute;right:0;bottom:40px;width:330px;padding:20px;border-radius:12px;border:1px solid var(--line);background:var(--card);box-shadow:var(--elev-2);color:var(--ink);font-size:var(--fs-xs);z-index:2}.studio-revision-banner{display:flex;align-items:center;gap:12px;background:color-mix(in srgb,var(--accent) 10%,var(--card));border-bottom:1px solid var(--line);padding:8px 20px}.studio-revision-banner span{color:var(--muted);font-size:var(--fs-xs)}.studio-revision-banner .btn{margin-left:auto}.studio-reference{display:flex;flex-direction:column;min-width:0;min-height:0;flex:1;border-left:1px solid var(--line)}.studio-reference__tools{display:flex;gap:8px;flex:none;padding:0 12px 10px}.studio-reference__tools .select:first-of-type{min-width:0}.studio-reference__tools .select:last-of-type{width:110px;flex:none}.studio-reference__image{flex:1;min-height:0;overflow:auto;padding:12px;background:color-mix(in srgb,var(--paper-3) 65%,var(--paper));overscroll-behavior:contain}.studio-reference__image img{display:block;height:auto;max-width:100%}.studio-reference__image--fit{display:flex;align-items:flex-start;justify-content:center}.studio-reference__image--fit img{width:100%;height:100%;object-fit:contain;object-position:center top}.studio-reference__foot{display:flex;justify-content:center;align-items:center;gap:12px;font-size:var(--fs-xs);padding:8px;flex:none}.score-studio--focus .studio-body{grid-template-columns:minmax(0,1fr)}.score-studio--compare .studio-pane-heading{padding:12px}.score-studio--compare .studio-pane-heading>div{display:block}.score-studio--compare .studio-pane-heading>div>span{display:block;margin-top:3px}.score-studio--compare .studio-pane-heading .studio-badge{display:none}.score-studio--compare .studio-page-nav>span{display:none}.studio-small-screen{display:none}.score-studio--short .studio-bar-loupe{min-height:70px;max-height:88px}.score-studio--short .studio-selection{padding-block:8px}.score-studio--short .studio-inspector-foot{display:none}@media(min-width:1600px){.score-studio{--studio-rail: 376px}}@media(max-width:1200px){.score-studio{--studio-rail: 324px}.studio-header{padding:10px 12px;gap:8px}.studio-header .studio-save-state{max-width:115px;white-space:normal;font-size:calc(var(--fs-xs) * .9)}.studio-title h1{font-size:var(--fs-base)}.studio-toolbar{padding:8px 12px;gap:8px}.studio-tool-group+.studio-tool-group{padding-left:8px}.studio-toolbar .btn{padding-inline:10px}.studio-pane-heading{padding-inline:14px}.studio-status{padding-inline:12px}.studio-status>span:nth-child(2){display:none}.score-studio--compare .studio-document-area{flex-direction:column}.score-studio--compare .studio-sheet-pane{flex:1.15}.score-studio--compare .studio-reference{flex:1;border-top:1px solid var(--line);border-left:0}.score-studio--compare .studio-pane-heading{padding:6px 12px}.score-studio--compare .studio-pane-heading>div{display:flex}.score-studio--compare .studio-reference__tools{padding-bottom:4px}.score-studio--compare .studio-reference__foot{padding-block:4px}}@media(max-width:899px){.studio-small-screen{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:var(--card);padding:40px;text-align:center}.studio-small-screen p{max-width:420px}.score-studio>:not(.studio-small-screen){visibility:hidden}}@media(prefers-reduced-motion:reduce){.score-studio *{scroll-behavior:auto;transition:none}}.practice-fingering-control{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;font-size:var(--fs-sm)}.practice-fingering-control select{min-height:44px;padding:.4rem .7rem;border:1px solid var(--line);border-radius:.6rem;background:var(--paper);color:var(--ink);font:inherit}.fourth-finger-picker{min-width:0}@media print{.practice-fingering-control{display:none!important}}.plan-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.plan-item{display:flex;flex-direction:column;gap:var(--space-1);min-width:0;padding-block:var(--space-2) var(--space-3);border-bottom:var(--hair) solid var(--line)}.plan-item:last-child{border-bottom:0;padding-bottom:0}.plan-item__kind{font-size:var(--fs-xs);font-weight:var(--fw-figure);letter-spacing:.05em;text-transform:uppercase;color:var(--accent-ink)}.plan-item__open{appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--space-3);min-height:var(--tap);width:100%;padding:var(--space-2) var(--space-3);border:var(--hair) solid var(--line-strong);border-radius:var(--r-md);background:var(--card);transition:background .12s,border-color .12s}.plan-item__open:hover{background:var(--paper-2);border-color:var(--accent)}.plan-item__open:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.plan-item__title{grid-column:1;font-size:var(--fs-base);font-weight:var(--fw-title);line-height:1.3;overflow-wrap:anywhere}.plan-item__meta{grid-column:1;font-size:var(--fs-sm);color:var(--muted)}.plan-item__arrow{grid-column:2;grid-row:1 / span 2;color:var(--accent-ink)}.plan-item__why{margin:0;color:var(--ink-soft);font-size:var(--fs-sm);line-height:1.5;max-width:68ch}.today-card{display:flex;flex-direction:column;gap:var(--space-3)}.progress,.progress-panel{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.progress-waiting{min-height:calc(var(--tap) * 6);border-radius:var(--r-lg);background:var(--paper-2)}.progress-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);align-items:stretch}.progress-column{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.progress-column>:last-child{flex:1 0 auto}.progress-eyebrow{margin:0;color:var(--accent-ink);font-size:var(--fs-xs);font-weight:var(--fw-figure);letter-spacing:.06em;text-transform:uppercase;line-height:1.3}.progress-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);padding:var(--space-6) var(--space-5) var(--space-5);border:var(--hair) solid var(--line);border-radius:var(--r-xl);background:linear-gradient(135deg,var(--accent-tint),var(--card) 70%);box-shadow:var(--shadow)}.progress-hero__copy{display:flex;flex-direction:column;gap:var(--space-2);max-width:48rem;min-width:0}.progress-hero__title{margin:0;font-size:clamp(var(--fs-xl),3vw,var(--fs-2xl));line-height:1.15;letter-spacing:-.02em;overflow-wrap:anywhere}.progress-hero__lead{margin:0;color:var(--ink-soft);font-size:var(--fs-lg);line-height:1.45}.progress-figures{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.progress-figure{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:var(--space-1);min-width:0;padding:var(--space-3) var(--space-4);border-radius:var(--r-md);background:var(--card);border:var(--hair) solid var(--line)}.progress-figure__value{margin:0;color:var(--ink);font-size:var(--fs-xl);font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;line-height:1.15;letter-spacing:-.01em}.progress-figure__label{display:flex;align-items:center;gap:var(--space-1);color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);line-height:1.3}.progress-figure__label svg{flex:none;width:1.25em;height:1.25em;color:var(--accent-ink)}@media(min-width:560px){.progress-figures{grid-template-columns:repeat(4,minmax(0,1fr))}}.progress-tabs{min-width:0}.progress-card{container-type:inline-size;display:flex;flex-direction:column;gap:var(--space-3);min-width:0;padding:var(--space-5);border:var(--hair) solid var(--line);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow)}.progress-card__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-3)}.progress-card__heading{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.progress-card__title{margin:0;font-size:var(--fs-xl);line-height:1.2;overflow-wrap:anywhere}.progress-card__aside{color:var(--muted);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.progress-card__line{margin:0;color:var(--ink-soft);line-height:1.55;max-width:72ch}.progress-card__note{margin:0;color:var(--muted);font-size:var(--fs-sm);line-height:1.5;max-width:72ch}.progress-card__action{align-self:flex-start;margin-top:auto}.progress-link{appearance:none;font:inherit;background:none;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent-ink);font-weight:var(--fw-title);text-decoration:underline;text-decoration-thickness:var(--hair);text-underline-offset:.2em}.progress-link svg{width:1em;height:1em}.progress-link:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}.progress-meter{display:block;width:100%;height:8px;border-radius:var(--r-full);background:var(--paper-3);overflow:hidden}.progress-meter__fill{display:block;height:100%;border-radius:inherit;background:var(--accent)}.progress-details summary{display:inline-flex;align-items:center;min-height:var(--tap);cursor:pointer;color:var(--ink);font-size:var(--fs-sm);font-weight:var(--fw-title)}.progress-details[open] summary{margin-bottom:var(--space-2)}.progress-scroll{max-width:100%;overflow-x:auto}.progress-table th,.progress-table td{overflow-wrap:anywhere}.progress-table td{font-variant-numeric:tabular-nums}.progress-table__detail{display:block;font-size:var(--fs-xs);color:var(--muted)}.progress-comeback{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:end;padding:var(--space-5);border:var(--hair) solid var(--accent);border-radius:var(--r-lg);background:linear-gradient(135deg,var(--accent-tint),var(--card) 80%);box-shadow:var(--shadow)}.progress-comeback__text{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.progress-comeback__title{margin:0;font-size:var(--fs-xl);line-height:1.2;overflow-wrap:anywhere}.progress-comeback__body{margin:0;color:var(--ink-soft);line-height:1.55;max-width:64ch}.progress-comeback__goal{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-1)}.progress-comeback__days{list-style:none;margin:0;padding:0;display:flex;gap:var(--space-2)}.progress-comeback__day{width:calc(22px * var(--scale));height:calc(22px * var(--scale));border-radius:50%;border:2px solid var(--accent-ink);background:var(--card)}.progress-comeback__day--done{background:var(--accent);border-color:var(--accent)}.progress-comeback__count{color:var(--ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.progress-comeback__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.progress-miles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3) var(--space-4)}.progress-mile{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-3);min-width:0}.progress-mile__badge{position:relative;display:grid;place-items:center;width:calc(44px * var(--scale));height:calc(44px * var(--scale))}.progress-mile__ring{position:absolute;inset:0;width:100%;height:100%}.progress-mile__track{fill:none;stroke:var(--line-strong);stroke-width:2.5;stroke-dasharray:3 3.6}.progress-mile__fill{fill:none;stroke:var(--accent);stroke-width:3.5;stroke-linecap:round}.progress-mile__icon{position:relative;display:grid;place-items:center;color:var(--muted)}.progress-mile__icon svg{width:1.3em;height:1.3em}.progress-mile--earned .progress-mile__track{fill:var(--accent);stroke:var(--accent);stroke-dasharray:none}.progress-mile--earned .progress-mile__icon{color:var(--on-accent)}.progress-mile--next .progress-mile__icon{color:var(--accent-ink)}.progress-mile__text{display:flex;flex-direction:column;gap:1px;min-width:0}.progress-mile__title{color:var(--ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:1.3}.progress-mile--earned .progress-mile__title,.progress-mile--next .progress-mile__title{color:var(--ink);font-weight:var(--fw-title)}.progress-mile__detail{color:var(--muted);font-size:var(--fs-xs);line-height:1.4}@container (min-width: 30rem){.progress-miles{grid-template-columns:repeat(2,minmax(0,1fr))}}.progress-cal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}@container (min-width: 26rem){.progress-cal{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (min-width: 44rem){.progress-cal{grid-template-columns:repeat(6,minmax(0,1fr))}}.progress-month{margin:0;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.progress-month__name{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-1);font-size:var(--fs-sm);font-weight:var(--fw-title);line-height:1.3}.progress-month__count{color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);white-space:nowrap}.progress-month__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.progress-month__weekday{color:var(--muted);font-size:var(--fs-xs);line-height:1.4;text-align:center;overflow:hidden}.progress-month__lead{display:block}.progress-day{display:block;aspect-ratio:1;border-radius:3px;background:var(--paper-3)}.progress-day[data-state=before]{background:transparent}.progress-day[data-state=future]{background:transparent;box-shadow:inset 0 0 0 1px var(--line)}.progress-day[data-heat="1"]{background:color-mix(in srgb,var(--accent) 28%,var(--card))}.progress-day[data-heat="2"]{background:color-mix(in srgb,var(--accent) 52%,var(--card))}.progress-day[data-heat="3"]{background:color-mix(in srgb,var(--accent) 76%,var(--card))}.progress-day[data-heat="4"]{background:var(--accent)}.progress-day[data-today=true]{outline:2px solid var(--accent-ink);outline-offset:1px}.progress-cal__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.progress-legend{margin:0;display:inline-flex;align-items:center;gap:4px}.progress-legend .progress-day{width:calc(13px * var(--scale))}.progress-legend__label{color:var(--muted);font-size:var(--fs-xs);padding-inline:var(--space-1)}.progress-chart{display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-5)}.progress-chart__plot{position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));column-gap:var(--space-2);align-items:end;height:calc(var(--tap) * 3.2);border-bottom:var(--hair) solid var(--line-strong)}.progress-chart[data-range=days] .progress-chart__plot,.progress-chart[data-range=days] .progress-chart__axis{column-gap:3px}.progress-chart__col{position:relative;height:100%;min-width:0;display:flex;align-items:flex-end;justify-content:center}.progress-chart__bar{position:relative;display:block;width:min(100%,calc(36px * var(--scale)));border-radius:var(--r-xs) var(--r-xs) 2px 2px;background:var(--accent);opacity:.55;transform-origin:50% 100%;animation:progress-rise .5s cubic-bezier(.22,1,.36,1) both}.progress-chart__col[data-current=true] .progress-chart__bar{opacity:1}.progress-chart__value{position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding-bottom:2px;color:var(--ink-soft);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.progress-chart__none{display:block;width:6px;height:6px;margin-bottom:3px;border-radius:50%;background:var(--line-strong)}.progress-chart__average{position:absolute;left:0;right:0;z-index:1;pointer-events:none;border-top:2px dashed color-mix(in srgb,var(--ink) 45%,transparent)}.progress-chart__key{margin:0;display:flex;align-items:baseline;gap:var(--space-2);color:var(--muted);font-size:var(--fs-xs);line-height:1.45}.progress-chart__dash{flex:none;width:calc(22px * var(--scale));border-top:2px dashed color-mix(in srgb,var(--ink) 45%,transparent);transform:translateY(-.3em)}.progress-chart__axis{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));column-gap:var(--space-2);color:var(--muted);font-size:var(--fs-xs);line-height:1.3}.progress-chart__axis span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:clip;text-align:center}.progress-chart__axis--major span{text-align:right}.progress-chart__axis span:last-child{color:var(--accent-ink);font-weight:var(--fw-figure)}.progress-chart__axis--all span:last-child{white-space:normal;overflow-wrap:anywhere}.progress-chart__axis--all+.progress-chart__axis--major{display:none}@container (max-width: 40rem){.progress-chart__axis--all{display:none}.progress-chart__axis--all+.progress-chart__axis--major{display:grid}.progress-chart__value{display:none}.progress-chart__plot,.progress-chart__axis{column-gap:3px}}@keyframes progress-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.progress-habit__body{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:center}@container (min-width: 40rem){.progress-habit__body{grid-template-columns:minmax(0,20rem) minmax(0,1fr);gap:var(--space-6)}}.progress-habit__words{display:flex;flex-direction:column;gap:var(--space-2)}.progress-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-1)}.progress-week__col{min-width:0;display:flex;flex-direction:column;align-items:center;color:var(--muted);font-size:var(--fs-xs);line-height:1.35}.progress-week__track{align-self:stretch;height:calc(var(--tap) * 2);margin-bottom:var(--space-1);display:flex;align-items:flex-end;justify-content:center;border-bottom:var(--hair) solid var(--line-strong)}.progress-week__bar{display:block;width:min(calc(26px * var(--scale)),70%);border-radius:var(--r-xs) var(--r-xs) 2px 2px;background:var(--accent);opacity:.5}.progress-week__col[data-regular=true] .progress-week__bar{opacity:1}.progress-week__col[data-regular=true] .progress-week__day{color:var(--accent-ink);font-weight:var(--fw-figure)}.progress-week__n{color:var(--ink-soft);font-variant-numeric:tabular-nums}.progress-levels{display:flex;flex-direction:column;gap:3px}.progress-levels__row{display:grid;grid-template-columns:calc(2.2rem * var(--scale)) repeat(var(--months),minmax(0,1fr));gap:3px;align-items:center}.progress-levels__name{color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-figure)}.progress-levels__cell{position:relative;display:block;height:calc(18px * var(--scale));border-radius:3px;background:var(--paper-2)}.progress-levels__cell[data-shade="1"]{background:color-mix(in srgb,var(--accent) 22%,var(--card))}.progress-levels__cell[data-shade="2"]{background:color-mix(in srgb,var(--accent) 45%,var(--card))}.progress-levels__cell[data-shade="3"]{background:color-mix(in srgb,var(--accent) 72%,var(--card))}.progress-levels__cell[data-shade="4"]{background:var(--accent)}.progress-levels__cell[data-main=true]:after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--accent-ink)}.progress-levels__cell[data-main=true][data-shade="3"]:after,.progress-levels__cell[data-main=true][data-shade="4"]:after{background:var(--on-accent)}.progress-levels__months{margin-top:2px}.progress-levels__month{min-width:0;color:var(--muted);font-size:var(--fs-xs);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:clip}.progress-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.progress-bars__row{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr) auto;gap:var(--space-1) var(--space-3);align-items:center}.progress-bars__label{font-size:var(--fs-sm);font-weight:var(--fw-title);line-height:1.3;min-width:0}.progress-bars__sub{display:block;color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-medium)}.progress-bars__track{display:block;height:10px;border-radius:var(--r-full);background:var(--paper-3);overflow:hidden}.progress-bars__fill{display:block;height:100%;border-radius:inherit;background:var(--accent)}.progress-bars__value{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}@container (max-width: 26rem){.progress-bars__row{grid-template-columns:minmax(0,1fr) auto}.progress-bars__track{grid-column:1 / -1;grid-row:2}}.progress-pieces{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.progress-pieces th,.progress-pieces td{padding:var(--space-2);border-bottom:var(--hair) solid var(--line);text-align:left;vertical-align:middle;font-weight:400}.progress-pieces thead th{padding-block:0;border-bottom-color:var(--line-strong);white-space:nowrap}.progress-pieces tbody tr:hover{background:var(--paper-2)}.progress-pieces td{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.progress-pieces .progress-pieces__time,.progress-pieces .progress-pieces__sessions,.progress-pieces .progress-pieces__best{text-align:right}.progress-sort{appearance:none;font:inherit;background:none;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:2px;min-height:var(--control-h);color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-figure);letter-spacing:.04em;text-transform:uppercase}.progress-sort:hover,.progress-sort[aria-pressed=true]{color:var(--ink)}.progress-sort:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}.progress-sort__arrow{width:1.1em;height:1.1em}.progress-pieces__piece{width:100%;min-width:calc(11rem * var(--scale))}.progress-pieces__cell{display:flex;align-items:center;gap:var(--space-3);min-width:0}.progress-pieces__art{flex:none;display:block;width:calc(40px * var(--scale))}.progress-pieces__name{display:flex;flex-direction:column;gap:1px;min-width:0}.progress-pieces__open{appearance:none;font:inherit;background:none;border:0;padding:0;cursor:pointer;text-align:left;color:var(--ink);font-weight:var(--fw-title);line-height:1.3;overflow-wrap:anywhere}.progress-pieces__open:hover{text-decoration:underline}.progress-pieces__open:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}.progress-pieces__gone{color:var(--muted);font-weight:var(--fw-title);line-height:1.3}.progress-pieces__by{color:var(--muted);font-size:var(--fs-xs);font-weight:400;line-height:1.35}.progress-pieces__facts{display:none;color:var(--muted);font-size:var(--fs-xs);line-height:1.35}@container (max-width: 36rem){.progress-pieces .progress-pieces__level,.progress-pieces .progress-pieces__sessions,.progress-pieces .progress-pieces__last,.progress-pieces .progress-pieces__best{display:none}.progress-pieces__facts{display:block}.progress-pieces__piece{min-width:0}}.progress-quiet{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start}.progress-quiet__icon{width:1.6em;height:1.6em;color:var(--muted);margin-top:.1em}.progress-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:var(--space-3)}.progress-metric{display:flex;flex-direction:column;gap:var(--space-1);min-width:0;padding:var(--space-4);border-radius:var(--r-md);background:var(--paper-2)}.progress-metric>p{margin:0}.progress-metric__label{color:var(--ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-title)}.progress-metric__value{color:var(--ink);font-size:var(--fs-2xl);font-weight:var(--fw-figure);line-height:1.1;font-variant-numeric:tabular-nums}.progress-metric__sub{color:var(--muted);font-size:var(--fs-xs);line-height:1.4}.progress-metric__change{color:var(--ink-soft);font-size:var(--fs-sm);line-height:1.45}.progress-spark{display:block;width:100%;height:calc(40px * var(--scale));margin-block:var(--space-1);overflow:visible}.progress-spark__line{fill:none;stroke:var(--accent-ink);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.progress-spark__area{fill:color-mix(in srgb,var(--accent) 14%,transparent);stroke:none}.progress-fingers,.progress-attention{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.progress-finger{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);border-left:3px solid var(--sharp-ink);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--paper-2)}.progress-finger[data-direction=flat]{border-left-color:var(--flat-ink)}.progress-finger>p{margin:0}.progress-finger__title{font-weight:var(--fw-title);line-height:1.35}.progress-finger__how{color:var(--ink-soft);font-size:var(--fs-sm)}.progress-finger__advice{color:var(--ink-soft);font-size:var(--fs-sm);line-height:1.5}.progress-attention__item{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-left:3px solid var(--warn);border-radius:0 var(--r-sm) var(--r-sm) 0;background:color-mix(in srgb,var(--warn-tint) 55%,var(--card))}.progress-attention__where{margin:0;overflow-wrap:anywhere}.progress-attention__how{margin:0;color:var(--ink-soft);font-size:var(--fs-sm)}.progress-courses{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5)}@container (min-width: 34rem){.progress-courses{grid-template-columns:repeat(2,minmax(0,1fr))}}.progress-course{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.progress-course>p{margin:0}.progress-course__title{font-size:var(--fs-lg);font-weight:var(--fw-title);line-height:1.25;overflow-wrap:anywhere}.progress-course__facts{color:var(--ink-soft);font-size:var(--fs-sm)}.progress-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.progress-log__day{display:flex;flex-direction:column;min-width:0}.progress-log__date{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-3);padding-bottom:var(--space-1);border-bottom:var(--hair) solid var(--line-strong);font-size:var(--fs-base);line-height:1.3}.progress-log__total{color:var(--muted);font-size:var(--fs-sm);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.progress-log__sessions{list-style:none;margin:0;padding:0}.progress-log__session{display:grid;grid-template-columns:calc(3.2rem * var(--scale)) minmax(0,1fr) auto;gap:var(--space-3);align-items:baseline;padding-block:var(--space-2);border-bottom:var(--hair) solid var(--line)}.progress-log__session:last-child{border-bottom:0}.progress-log__time{color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.progress-log__what{display:flex;flex-direction:column;gap:1px;min-width:0}.progress-log__piece{appearance:none;font:inherit;background:none;border:0;padding:0;cursor:pointer;text-align:left;color:var(--ink);font-weight:var(--fw-title);line-height:1.35;overflow-wrap:anywhere}.progress-log__piece:hover{text-decoration:underline}.progress-log__piece:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}.progress-log__piece--gone{color:var(--muted);cursor:default}.progress-log__piece--gone:hover{text-decoration:none}.progress-log__how{color:var(--muted);font-size:var(--fs-xs);line-height:1.4}.progress-log__length{color:var(--ink-soft);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;white-space:nowrap}.progress-log__more{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.progress-first{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6);padding:var(--space-6) var(--space-5);border:var(--hair) solid var(--line);border-radius:var(--r-xl);background:linear-gradient(135deg,var(--accent-tint),var(--card) 70%);box-shadow:var(--shadow)}.progress-first__copy{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.progress-first__title{margin:0;font-size:clamp(var(--fs-xl),3.4vw,var(--fs-3xl));line-height:1.1;letter-spacing:-.02em;overflow-wrap:anywhere}.progress-first__body{margin:0;color:var(--ink-soft);font-size:var(--fs-lg);line-height:1.5;max-width:40em}.progress-first__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.progress-first__hint{margin:0;color:var(--muted);font-size:var(--fs-sm);line-height:1.5;max-width:40em}.progress-first__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.progress-first__item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start}.progress-first__icon{display:grid;place-items:center;width:var(--tap);height:var(--tap);border-radius:var(--r-sm);background:linear-gradient(180deg,var(--accent-2),var(--accent));color:var(--on-accent)}.progress-first__icon svg{width:1.45em;height:1.45em}.progress-first__text{display:flex;flex-direction:column;gap:2px;min-width:0}.progress-first__name{font-weight:var(--fw-title);line-height:1.3}.progress-first__about{color:var(--ink-soft);font-size:var(--fs-sm);line-height:1.5}@media(min-width:760px){.progress-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-comeback{grid-template-columns:minmax(0,1fr) auto}.progress-comeback__actions{flex-direction:column;align-items:stretch}.progress-first{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;padding:var(--space-6)}}@media(max-width:620px){.progress,.progress-panel,.progress-pair,.progress-column{gap:var(--space-4)}.progress-hero{padding:var(--space-5) var(--space-4) var(--space-4);border-radius:var(--r-lg)}.progress-hero__lead,.progress-first__body{font-size:var(--fs-base)}.progress-card,.progress-comeback{padding:var(--space-4)}.progress-first{padding:var(--space-5) var(--space-4);border-radius:var(--r-lg);gap:var(--space-5)}.plan-item__open{padding-inline:var(--space-2)}}@media(prefers-reduced-motion:reduce){.progress-chart__bar{animation:none}.plan-item__open{transition:none}}:root[data-theme=contrast] .progress-hero,:root[data-theme=contrast] .progress-comeback,:root[data-theme=contrast] .progress-first{background:var(--card)}.trainer-page{min-width:0}.trainer-page__top{scroll-margin-top:var(--space-4)}.trainer-home{display:flex;flex-direction:column;gap:var(--space-5);min-width:0;container-type:inline-size}.trainer-home__pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:var(--space-5);align-items:start}.trainer-eyebrow{margin:0;font-size:var(--fs-xs);font-weight:var(--fw-figure);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.trainer-hero{display:flex;flex-direction:column;gap:var(--space-4);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,var(--card)),var(--card) 62%)}.trainer-hero__top{display:flex;align-items:center;gap:var(--space-4);min-width:0}.trainer-hero__cover{flex:none;width:calc(128px * var(--scale))}.trainer-hero__heading{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.trainer-hero__title{margin:0;font-size:var(--fs-2xl);line-height:1.15}.trainer-hero__about{margin:0;color:var(--ink-soft);max-width:60ch}.trainer-hero__body{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.trainer-hero__plan{margin:0;max-width:72ch}.trainer-hero__due{margin:0;color:var(--ink-soft);font-size:var(--fs-sm)}.trainer-hero__hint{margin:0;color:var(--muted);font-size:var(--fs-sm);max-width:68ch}.trainer-hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.trainer-hero__options{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5);align-items:flex-end}.trainer-option{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.trainer-option__label{font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--muted)}@container (min-width: 56rem){.trainer-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:var(--space-5)}.trainer-hero__cover{width:calc(150px * var(--scale))}}@media(max-width:560px){.trainer-hero__cover{width:calc(76px * var(--scale))}.trainer-hero__title{font-size:var(--fs-xl)}.trainer-hero__actions .btn{flex:1 1 100%;justify-content:center}}.trainer-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.trainer-chip{display:inline-flex;align-items:center;min-height:calc(var(--control-h) - 6px);padding:0 var(--space-3);margin-inline-end:var(--space-1);border-radius:var(--r-full);border:var(--hair-strong) solid var(--line-strong);background:var(--card);color:var(--ink);font-size:var(--fs-sm);font-weight:var(--fw-title);font-variant-numeric:tabular-nums}.trainer-chip--secure{background:var(--ok-tint);border-color:var(--ok);color:var(--ok)}.trainer-chip--learning{border-color:var(--accent);color:var(--accent-ink)}.trainer-chip--new{border-style:dashed;color:var(--muted);background:transparent}.trainer-guide{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.trainer-guide .card__title{margin:0}.trainer-guide__tip{margin:0;max-width:68ch}.trainer-guide__staff{min-width:0;padding:var(--space-2) 0}.trainer-guide__staff .reading-staff{max-height:min(22vh,calc(180px * var(--scale)))}.trainer-guide__shapes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:var(--space-3)}.trainer-progress{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.trainer-progress .card__head{margin-bottom:0}.trainer-progress__sentence{margin:0;max-width:68ch}.day-bars{display:flex;flex-direction:column;gap:var(--space-1)}.day-bars__plot{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));align-items:end;gap:var(--space-1);height:calc(88px * var(--scale));border-bottom:var(--hair) solid var(--line-strong)}.day-bars__day{position:relative;display:flex;align-items:flex-end;height:100%;min-width:0}.day-bars__bar{display:block;width:100%;border-radius:var(--r-xs) var(--r-xs) 2px 2px;background:var(--accent)}.day-bars__day--empty .day-bars__bar{height:3px;background:var(--line-strong)}.day-bars__day--today .day-bars__bar{box-shadow:0 0 0 2px var(--accent-ink)}.day-bars__axis{display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--muted)}.trainer-path{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.trainer-path__head{display:flex;flex-direction:column;gap:var(--space-1)}.trainer-path__title{margin:0;font-size:var(--fs-xl)}.trainer-path__sub{margin:0;color:var(--muted);font-size:var(--fs-sm)}.trainer-path__row{list-style:none;margin:0;padding:var(--space-1) var(--space-1) var(--space-3);display:grid;grid-auto-flow:column;grid-auto-columns:calc(132px * var(--scale));gap:var(--space-4);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin}.trainer-path__row>li{scroll-snap-align:start;min-width:0}.trainer-stage{appearance:none;font:inherit;width:100%;padding:0;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.trainer-stage__art{position:relative;display:block;border-radius:var(--r-sm)}@media(hover:hover){.trainer-stage:hover .cover{filter:brightness(1.1)}}.trainer-stage:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:var(--r-sm)}.trainer-stage--current .trainer-stage__art{box-shadow:0 0 0 3px var(--card),0 0 0 6px var(--accent)}.trainer-stage__badge{position:absolute;top:var(--space-2);right:var(--space-2);display:grid;place-items:center;width:calc(28px * var(--scale));height:calc(28px * var(--scale));border-radius:var(--r-full);background:var(--card);color:var(--ok);box-shadow:var(--shadow)}.trainer-stage__badge svg{width:70%;height:70%}.trainer-stage__state{margin-top:var(--space-1);font-size:var(--fs-xs);font-weight:var(--fw-figure);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.trainer-stage--current .trainer-stage__state{color:var(--accent-ink)}.trainer-stage__title{font-size:var(--fs-sm);font-weight:var(--fw-title);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.trainer-session{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;container-type:inline-size}.trainer-session__loading{margin:0;color:var(--muted)}.trainer-session--rhythm{gap:var(--space-4)}.trainer-session__head{display:flex;align-items:flex-start;gap:var(--space-3)}.trainer-session__titles{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.trainer-session__prompt{margin:0;font-size:var(--fs-xl);line-height:1.2}.trainer-session__count{flex:none;margin:0;font-size:var(--fs-lg);color:var(--muted);font-variant-numeric:tabular-nums}.trainer-session__done{font-size:var(--fs-2xl);font-weight:var(--fw-figure);color:var(--ink)}.trainer-meter{height:6px;border-radius:var(--r-full);background:var(--paper-3);overflow:hidden}.trainer-meter>span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .25s ease}.trainer-session__body{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:start}.trainer-session__stage,.trainer-session__answer{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}@container (min-width: 46rem){.trainer-session__body{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:var(--space-5)}}.trainer-card{position:relative;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-4);border:var(--hair) solid var(--line);border-radius:var(--r-md);background:var(--card)}.trainer-card--review{border-style:dashed;border-color:var(--line-strong)}.trainer-card__key{align-self:flex-start;font-size:var(--fs-xs);font-weight:var(--fw-title);color:var(--accent-ink);background:var(--accent-tint);border-radius:var(--r-full);padding:.15rem .6rem}.trainer-card__music{min-width:0}.reading-staff{display:block;width:100%;max-width:calc(var(--staff-w) * 2.4 * var(--scale));height:auto;max-height:34vh;margin:0 auto}@media(max-width:560px){.reading-staff{max-height:27vh}}.reading-staff__now{fill:var(--select-tint)}.reading-staff__pointer{fill:var(--accent)}.reading-staff__slot{fill:var(--line-strong)}.reading-staff__name--cue{fill:var(--ink)}.reading-staff__name--right{fill:var(--ok)}.reading-staff__name--fix{fill:var(--warn)}.trainer-timer{height:4px;border-radius:var(--r-full);background:var(--paper-3);overflow:hidden}.trainer-timer>span{display:block;height:100%;width:100%;background:color-mix(in srgb,var(--accent) 55%,var(--paper-3));transform-origin:left center;animation:trainer-timer linear forwards}@keyframes trainer-timer{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.trainer-card__foot{display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-2);min-height:calc(var(--tap) + var(--space-2))}.trainer-feedback{display:flex;flex-direction:column;gap:var(--space-2)}.trainer-feedback:empty{display:none}.trainer-feedback--right,.trainer-feedback--not{padding:var(--space-2) var(--space-3);border-radius:var(--r-md);border:var(--hair) solid var(--line);border-left-width:4px}.trainer-feedback--right{border-left-color:var(--ok);background:color-mix(in srgb,var(--ok-tint) 70%,var(--card))}.trainer-feedback--not{border-left-color:var(--warn);border-left-style:dashed;background:color-mix(in srgb,var(--warn-tint) 70%,var(--card))}.trainer-feedback__head{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--fs-lg);font-weight:var(--fw-title)}.trainer-feedback__head--right{color:var(--ok)}.trainer-feedback__head--not{color:var(--ink);font-size:var(--fs-base);font-weight:400;display:block}.trainer-feedback__time{margin-inline-start:auto;font-size:var(--fs-base);font-variant-numeric:tabular-nums;color:var(--ink-soft)}.trainer-feedback__time--quick{color:var(--ok);font-weight:var(--fw-figure)}.trainer-feedback__run{font-size:var(--fs-sm);font-weight:var(--fw-title);color:var(--ink-soft)}.trainer-feedback__hint{margin:0;color:var(--ink-soft)}.trainer-feedback__source{margin:0;color:var(--ink)}.trainer-hint{margin:0;color:var(--ink-soft);font-size:var(--fs-sm);max-width:68ch}.trainer-keys{margin:0;color:var(--muted);font-size:var(--fs-xs);line-height:1.9}.trainer-keys--home{max-width:80ch}@media(hover:none)and (pointer:coarse){.trainer-keys{display:none}}.trainer-answer{appearance:none;position:relative;min-height:calc(var(--tap) + 4px);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:var(--hair) solid var(--line-strong);border-radius:var(--r-sm);background:var(--card);color:var(--ink);font:inherit;font-weight:var(--fw-title);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:background .12s,border-color .12s,transform .06s}@media(hover:hover){.trainer-answer:hover:not(:disabled){background:var(--paper-3);border-color:var(--accent)}}.trainer-answer:active:not(:disabled){transform:translateY(1px)}.trainer-answer:disabled{cursor:default}.trainer-answer--plain:disabled{color:var(--muted)}.trainer-answer--right{border:var(--hair-strong) solid var(--ok);background:var(--ok-tint);color:var(--ok)}.trainer-answer--chosen{border:var(--hair-strong) dashed var(--warn);background:var(--warn-tint);color:var(--warn)}.trainer-answer__tick{width:1em;height:1em}.name-pad{display:grid;gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr))}@container (min-width: 30rem){.name-pad--seven{grid-template-columns:repeat(7,minmax(0,1fr))}}@container (min-width: 36rem){.name-pad--wide{grid-template-columns:repeat(6,minmax(0,1fr))}}.name-pad__key{font-size:var(--fs-xl);min-height:calc(var(--tap) * 1.3)}.name-pad__label{line-height:1}.board-pad{display:grid;grid-template-columns:minmax(0,3.6rem) repeat(4,minmax(0,1fr));gap:2px var(--space-2);padding:var(--space-2);border-radius:var(--r-md);background:var(--paper-2);border:var(--hair) solid var(--line)}.board-pad__open{min-height:var(--tap);padding:0;border-color:transparent;background:linear-gradient(to right,transparent calc(50% - 1.5px),var(--str) calc(50% - 1.5px),var(--str) calc(50% + 1.5px),transparent calc(50% + 1.5px)) bottom / 100% 30% no-repeat,linear-gradient(var(--line-strong),var(--line-strong)) bottom / 100% 4px no-repeat,var(--card)}.board-pad__string{display:grid;place-items:center;width:calc(34px * var(--scale));height:calc(34px * var(--scale));border-radius:var(--r-full);background:var(--str);color:var(--str-on);font-weight:var(--fw-figure)}.board-pad__open.trainer-answer--right .board-pad__string{box-shadow:0 0 0 3px var(--card),0 0 0 5px var(--ok)}.board-pad__open.trainer-answer--chosen .board-pad__string{box-shadow:0 0 0 3px var(--card),0 0 0 5px var(--warn)}.board-pad__open.trainer-answer--right,.board-pad__open.trainer-answer--chosen{border-color:transparent}.board-pad__row{display:contents}.board-pad__finger{display:flex;align-items:center;justify-content:flex-end;padding-inline-end:var(--space-1);font-size:var(--fs-xs);color:var(--muted);white-space:nowrap}.board-pad__row--tape .board-pad__finger{color:var(--ink-soft);font-weight:var(--fw-title)}.board-pad__stop{min-height:var(--tap);padding:0;border-color:transparent;background:linear-gradient(to right,transparent calc(50% - 1.5px),var(--str) calc(50% - 1.5px),var(--str) calc(50% + 1.5px),transparent calc(50% + 1.5px)),var(--card)}.board-pad__row--tape .board-pad__stop{background:linear-gradient(to right,transparent calc(50% - 1.5px),var(--str) calc(50% - 1.5px),var(--str) calc(50% + 1.5px),transparent calc(50% + 1.5px)),linear-gradient(transparent 46%,var(--line-strong) 46%,var(--line-strong) 54%,transparent 54%),var(--card)}.board-pad__dot{display:grid;place-items:center;width:calc(30px * var(--scale));height:calc(30px * var(--scale));border-radius:var(--r-full);border:2px solid var(--str-ink);background:var(--card);color:var(--ink);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.board-pad__stop.trainer-answer--right .board-pad__dot{background:var(--ok-tint);border-color:var(--ok);color:var(--ok)}.board-pad__stop.trainer-answer--chosen .board-pad__dot{background:var(--warn-tint);border-style:dashed;border-color:var(--warn);color:var(--warn)}.board-pad__stop.trainer-answer--right,.board-pad__stop.trainer-answer--chosen{border-color:transparent}.shape-pad{display:grid;gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}@container (min-width: 30rem){.shape-pad{grid-template-columns:repeat(4,minmax(0,1fr))}}.shape-pad__key{flex-direction:column;min-height:calc(var(--tap) * 1.8);gap:var(--space-1)}.shape-pad__icon{width:calc(34px * var(--scale));height:calc(28px * var(--scale))}.shape-pad__label{font-size:var(--fs-lg)}.shape-pad__kbd{position:absolute;top:var(--space-1);right:var(--space-2);font:inherit;font-size:var(--fs-xs);color:var(--muted)}@media(hover:none)and (pointer:coarse){.shape-pad__kbd{display:none}}.play-pad{display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start}.play-pad__ear{align-self:stretch;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--r-md);border:var(--hair-strong) solid var(--accent);background:var(--accent-tint)}.play-pad__ear--failed{border-style:dashed;border-color:var(--warn);background:var(--warn-tint)}.play-pad__ear--starting,.play-pad__ear--deaf{border-style:dashed}.play-pad__icon{flex:none;width:calc(40px * var(--scale));height:calc(40px * var(--scale));color:var(--accent-ink)}.play-pad__ear--listening .play-pad__icon{animation:trainer-listen 1.6s ease-in-out infinite}@keyframes trainer-listen{50%{opacity:.45}}.play-pad__words{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.play-pad__state{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-title)}.play-pad__heard{margin:0;color:var(--ink-soft);font-variant-numeric:tabular-nums}.play-pad__error{margin:0;color:var(--ink)}.trainer-summary{display:flex;flex-direction:column;gap:var(--space-3)}.trainer-summary__title{margin:0;font-size:var(--fs-2xl);line-height:1.15}.trainer-summary__lead{margin:0;font-size:var(--fs-lg);max-width:68ch}.trainer-summary__line{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);max-width:80ch}.trainer-summary__line--quiet{display:block;color:var(--ink-soft)}.trainer-pass{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--r-md);border:var(--hair-strong) solid var(--ok);background:color-mix(in srgb,var(--ok-tint) 80%,var(--card))}.trainer-pass p{margin:0}.trainer-pass__icon{flex:none;width:calc(28px * var(--scale));height:calc(28px * var(--scale));color:var(--ok)}.trainer-round{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.trainer-round__meta{display:flex;flex-wrap:wrap;gap:var(--space-2)}.trainer-round__lead{margin:0;max-width:68ch}.trainer-staff{min-width:0;padding:var(--space-2) 0;border-radius:var(--r-md);background:var(--card)}.trainer-rhythm-staff{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.count-strip{margin-top:calc(var(--space-1) * -1)}.count-strip__word{fill:var(--accent-ink)}.count-strip__word--silent{fill:var(--muted)}.trainer-live{min-height:calc(var(--tap) + var(--space-2));display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-3) var(--space-4);text-align:center}.trainer-live__status{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-title)}.trainer-live__count{margin:0;font-size:var(--fs-3xl);font-weight:var(--fw-figure);line-height:1;font-variant-numeric:tabular-nums;color:var(--accent-ink)}.beat-dots{display:flex;align-items:center;gap:var(--space-2)}.beat-dots__dot{display:grid;place-items:center;width:calc(30px * var(--scale));height:calc(30px * var(--scale));border-radius:var(--r-full);border:var(--hair-strong) solid var(--line-strong);color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-figure);transition:background .05s,transform .08s}.beat-dots__dot--one{width:calc(36px * var(--scale));height:calc(36px * var(--scale))}.beat-dots__dot--on{background:var(--accent);border-color:var(--accent);color:var(--on-accent);transform:scale(1.12)}.beat-dots--count .beat-dots__dot--on{background:var(--accent-ink);border-color:var(--accent-ink)}.trainer-pad{appearance:none;width:100%;min-height:calc(var(--tap) * 2.4);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-3);border:var(--hair-strong) solid var(--accent);border-radius:var(--r-xl);background:var(--accent-tint);color:var(--accent-ink);font:inherit;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform .06s,background .12s}.trainer-pad:active:not(:disabled){transform:scale(.985);background:color-mix(in srgb,var(--accent) 22%,var(--card))}.trainer-pad:disabled{cursor:default;border-style:dashed;border-color:var(--line-strong);background:var(--paper-2);color:var(--muted)}.trainer-pad__word{font-size:var(--fs-2xl);font-weight:var(--fw-title);line-height:1.1}.trainer-pad__count{font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.rhythm-verdicts{margin-top:var(--space-1)}.verdict-mark{stroke-linecap:round;stroke-linejoin:round}.verdict-mark--on-time{stroke:var(--ok)}.verdict-mark--early,.verdict-mark--late{stroke:var(--warn)}.verdict-mark--missed{stroke:var(--muted)}.timing-lane{margin-top:calc(var(--space-1) * -1)}.timing-lane__axis{stroke:var(--line)}.timing-lane__band{fill:color-mix(in srgb,var(--ok) 13%,transparent)}.timing-lane__beat{stroke:var(--ink-soft);stroke-linecap:round}.timing-lane__dot{stroke:var(--card);stroke-width:1px}.timing-lane__dot--on-time{fill:var(--ok)}.timing-lane__dot--early,.timing-lane__dot--late{fill:var(--warn)}.verdict-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);font-size:var(--fs-sm);color:var(--ink-soft)}.verdict-legend__item{display:inline-flex;align-items:center;gap:var(--space-1)}.verdict-legend__item--lane{flex-basis:100%}.rhythm-result{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:var(--hair) solid var(--line);border-radius:var(--r-md);background:var(--paper-2)}.rhythm-result__head{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-title)}.rhythm-result__tally{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4)}.rhythm-result__count{color:var(--ink-soft)}.rhythm-result__number{font-weight:var(--fw-figure);color:var(--ink);font-variant-numeric:tabular-nums}.rhythm-result__line{margin:0;max-width:68ch}.hear-options{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}@container (min-width: 40rem){.hear-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.hear-option{appearance:none;font:inherit;display:flex;align-items:center;gap:var(--space-2);min-height:calc(var(--tap) * 1.6);padding:var(--space-2) var(--space-3);border:var(--hair) solid var(--line-strong);border-radius:var(--r-md);background:var(--card);color:var(--ink);cursor:pointer;text-align:left;min-width:0}@media(hover:hover){.hear-option:hover:not(:disabled){border-color:var(--accent);background:var(--paper-2)}}.hear-option:disabled{cursor:default}.hear-option--right{border:var(--hair-strong) solid var(--ok);background:color-mix(in srgb,var(--ok-tint) 60%,var(--card))}.hear-option--chosen{border:var(--hair-strong) dashed var(--warn);background:color-mix(in srgb,var(--warn-tint) 60%,var(--card))}.hear-option>svg{flex:1 1 auto;min-width:0}.hear-option svg{pointer-events:none}.hear-option__n{flex:none;display:inline-flex;align-items:center;gap:2px;font-size:var(--fs-lg);font-weight:var(--fw-figure);color:var(--muted);font-variant-numeric:tabular-nums}.hear-option--right .hear-option__n{color:var(--ok)}.drill-tally{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr));gap:var(--space-2)}.drill-tally__item{display:flex;flex-direction:column-reverse;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--r-sm);background:var(--paper-2);border:var(--hair) solid var(--line)}.drill-tally__item dt{font-size:var(--fs-sm);color:var(--muted)}.drill-tally__item dd{margin:0;font-size:var(--fs-xl);font-weight:var(--fw-figure);line-height:1.15;font-variant-numeric:tabular-nums}@media(max-width:480px){.trainer-session__prompt{font-size:var(--fs-lg)}.trainer-card{padding:var(--space-2) var(--space-2) var(--space-3)}.rhythm-result,.trainer-pass{padding:var(--space-2) var(--space-3)}.board-pad{grid-template-columns:minmax(0,3rem) repeat(4,minmax(0,1fr));padding:var(--space-1);gap:2px var(--space-1)}}@media(prefers-reduced-motion:reduce){.trainer-timer>span{animation:none;transform:scaleX(0)}.play-pad__ear--listening .play-pad__icon{animation:none}.beat-dots__dot,.trainer-meter>span{transition:none}}.record-panel__live{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3);border:var(--hair) solid var(--danger);border-radius:var(--r-md);background:var(--danger-tint)}.record-panel__dot{width:.8em;height:.8em;border-radius:50%;background:var(--danger);animation:record-pulse 1.6s ease-in-out infinite}@keyframes record-pulse{0%,to{opacity:1}50%{opacity:.35}}.record-panel__time{font-weight:var(--fw-figure);font-variant-numeric:tabular-nums;color:var(--ink)}.record-panel .btn-row{gap:var(--space-2)}.record-panel__note{flex-basis:100%;margin:0}.record-panel__error{color:var(--danger)}.record-takes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr)}.record-take{display:flex;flex-direction:column;gap:var(--space-2);padding-block:var(--space-3);border-bottom:var(--hair) solid var(--line);min-width:0}.record-take:first-child{padding-top:0}.record-take:last-child{border-bottom:0}.record-take__head{display:flex;flex-direction:column;gap:2px;min-width:0}.record-take__name{font-weight:var(--fw-title);overflow-wrap:anywhere}.record-take__meta{font-size:var(--fs-sm);color:var(--muted);font-variant-numeric:tabular-nums}.record-take__nudge{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.record-take__nudge .field__hint{flex-basis:100%}
