@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/demos/resonance-rings/assets/instrument-sans-latin-ext-wght-normal-B5bTHO_g.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/demos/resonance-rings/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/demos/resonance-rings/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/demos/resonance-rings/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/demos/resonance-rings/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/demos/resonance-rings/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/demos/resonance-rings/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ground: #0b0d10;--surface: #12151a;--raised: #1a1f26;--border: #1c222a;--rule: #161a20;--control: #2e3742;--control-hover: #4a5666;--text: #e6eaf0;--muted: #a8b1be;--faint: #8a94a3;--nav: #b8c1cd;--negative: #e5566f;--warning: #e5a93b;--brand: #e8b33c;--brand-hover: #f0c35f;--brand-ink: #0b0d10;--brand-wash: rgba(232, 179, 60, .12);--radius-card: 20px;--radius-row: 12px;--gap: 14px;--pad: 22px;--control-height: 36px;--top: 64px;--rail: 248px;--fs-title: 20px;--fs-section: 16px;--fs-body: 14px;--fs-small: 12px;--font: "Instrument Sans Variable", system-ui, -apple-system, sans-serif;--font-num: "JetBrains Mono Variable", ui-monospace, monospace;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--ground)}body{color:var(--text);font-family:var(--font);font-size:var(--fs-body);line-height:20px;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--text);outline-offset:2px}.clef{display:inline-flex;align-items:flex-end;gap:1px;margin-left:6px;color:var(--faint)}.phone-only{display:none!important}.app{position:relative;min-height:100dvh;display:grid;grid-template-columns:var(--rail) minmax(0,1fr);grid-template-rows:var(--top) minmax(0,1fr) auto;grid-template-areas:"top top" "rail board" "bottom bottom";background:var(--ground)}.app.view-player{height:100dvh}.app.view-plans{overflow-x:clip;grid-template-rows:var(--top) auto;grid-template-areas:"top top" "page page"}.topbar{grid-area:top;display:flex;align-items:center;gap:16px;min-width:0;padding:0 24px;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;flex:none}.wordmark{font-size:var(--fs-section);font-weight:600;white-space:nowrap}.mark{display:block;flex:none}.topbar-divider{align-self:stretch;width:1px;background:var(--border);flex:none}.now{min-width:0;flex:0 1 auto}.now h1{margin:0;font-size:var(--fs-body);font-weight:600;line-height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.now p{margin:0;color:var(--faint);font-size:var(--fs-small);line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topnav{display:flex;gap:4px;margin:0 auto}.topnav button{height:var(--control-height);padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--nav);font-weight:500;cursor:pointer}.topnav button:hover{color:var(--text)}.topnav button.is-active{color:var(--brand);background:var(--brand-wash)}.topbar-actions{display:flex;align-items:center;gap:8px;flex:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--control-height);padding:0 16px;border:1px solid var(--control);border-radius:999px;background:transparent;color:var(--text);font-size:var(--fs-body);font-weight:500;white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s}.btn:hover{background:var(--surface);border-color:var(--control-hover)}.btn.is-on{background:var(--brand-wash);border-color:var(--brand);color:var(--brand)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{border-color:var(--brand);background:var(--brand);color:var(--brand-ink);font-weight:600}.btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.icon-btn{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid var(--control);border-radius:999px;background:transparent;color:var(--text);cursor:pointer}.icon-btn:hover:not(:disabled){background:var(--surface)}.icon-btn:disabled{opacity:.35;cursor:default}.text-link{padding:0;border:0;background:none;color:var(--text);font-size:var(--fs-small);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.rail{grid-area:rail;display:flex;flex-direction:column;gap:2px;min-height:0;padding:16px 12px;border-right:1px solid var(--border);overflow-y:auto}.badge{--hue: var(--muted);display:grid;grid-template-columns:3px 44px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:60px;padding:8px 10px 8px 0;border:0;border-radius:var(--radius-row);background:color-mix(in srgb,var(--hue) 7%,transparent);color:var(--text);text-align:left;cursor:pointer;transition:background-color .15s}.badge:hover,.badge.is-focused{background:color-mix(in srgb,var(--hue) 14%,transparent)}.badge.is-solo{background:color-mix(in srgb,var(--hue) 24%,transparent)}.badge.is-muted{opacity:.45}.badge-bar{width:3px;height:32px;border-radius:2px;background:var(--hue)}.badge-icons{display:flex;align-items:center;justify-content:center;gap:2px;color:var(--hue);transition:opacity .12s ease-out}.badge-text{display:flex;flex-direction:column;min-width:0}.badge-label{display:flex;align-items:center;font-size:var(--fs-body);font-weight:500;white-space:nowrap}.badge-range{font-family:var(--font-num);font-size:var(--fs-small);line-height:16px;color:var(--faint)}.badge-note{min-width:36px;font-family:var(--font-num);font-size:var(--fs-section);font-weight:600;text-align:right;color:var(--hue)}.badge-dot,.label-short{display:none}.badge-note.is-silent{color:var(--faint);font-weight:400}.rail-clear{margin-top:6px;min-height:var(--control-height);border:1px solid var(--control);border-radius:999px;background:transparent;color:var(--text);font-size:var(--fs-small);cursor:pointer}.rail-hint{margin:auto 0 0;padding:14px 10px 0;color:var(--faint);font-size:var(--fs-small);line-height:18px}.board{grid-area:board;position:relative;min-width:0;min-height:0}.ring-canvas-host{position:absolute;top:0;right:0;bottom:0;left:0}.ring-canvas-host canvas{display:block;cursor:crosshair;touch-action:manipulation}.empty{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(360px,calc(100% - 32px));display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 24px;border-radius:var(--radius-card);background:var(--brand);color:var(--brand-ink);text-align:center}.empty h2{margin:0;font-size:var(--fs-title);font-weight:600;line-height:28px}.empty p{margin:0;color:var(--brand-ink);font-size:var(--fs-body)}.empty .btn{border-color:var(--brand-ink);color:var(--brand-ink)}.empty .btn:hover{background:#0b0d1014}.empty .btn-primary{background:var(--brand-ink);color:var(--brand)}.empty .btn-primary:hover{background:var(--raised)}.empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px}.bottombar{grid-area:bottom;display:flex;align-items:center;gap:24px;min-height:64px;padding:10px 24px;border-top:1px solid var(--border)}.transport{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.play{display:grid;place-items:center;width:44px;height:44px;flex:none;border:0;border-radius:50%;background:var(--brand);color:var(--brand-ink);cursor:pointer}.play:hover:not(:disabled){background:var(--brand-hover)}.play:disabled{background:var(--raised);color:var(--faint);cursor:default}.time{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:var(--fs-small);color:var(--text);flex:none;min-width:36px}.time.muted{color:var(--faint)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:44px;margin:0;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:3px;border-radius:2px;background:var(--raised)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-5.5px;border-radius:50%;background:var(--brand)}input[type=range]:disabled::-webkit-slider-thumb{background:var(--faint)}input[type=range]::-moz-range-track{height:3px;border-radius:2px;background:var(--raised)}input[type=range]::-moz-range-thumb{width:14px;height:14px;border:none;border-radius:50%;background:var(--brand)}.scrub{flex:1;min-width:60px}.vol{display:flex;align-items:center;gap:8px;color:var(--muted);flex:none}.vol input{width:88px}.readouts{display:flex;align-items:baseline;gap:16px;color:var(--muted);font-size:var(--fs-small);flex:none}.readouts>span:not(.est){padding:4px 10px;border-radius:999px;background:var(--brand-wash);color:var(--brand);font-weight:600}.readouts .est{color:var(--faint);font-family:var(--font)}.tabbar{display:none}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#05070a99}.library{position:fixed;top:0;right:0;bottom:0;z-index:31;width:min(440px,100vw);display:flex;flex-direction:column;gap:var(--gap);padding:20px var(--pad) calc(20px + var(--safe-b));background:var(--surface);overflow-y:auto}.lib-head{display:flex;align-items:center;justify-content:space-between}.lib-head h2{margin:0;font-size:var(--fs-title);font-weight:600;line-height:28px}.grab{display:none}.lib-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.lib-warn{color:var(--warning);font-size:var(--fs-small)}.lib-url{display:flex;gap:8px}.lib-url input{flex:1;min-width:0;min-height:44px;padding:0 14px;border:1px solid var(--control);border-radius:999px;background:var(--ground);color:var(--text);font:inherit}.lib-url input::placeholder{color:var(--faint)}.lib-offline{color:var(--muted);line-height:22px}.lib-offline p{margin:0 0 10px}.lib-offline strong{color:var(--text);font-weight:600}.lib-offline code{font-family:var(--font-num);font-size:var(--fs-small);padding:1px 6px;border-radius:6px;background:var(--raised);color:var(--text)}.lib-error{padding:10px 14px;border-radius:var(--radius-row);background:#2c1a20;color:var(--negative);font-size:var(--fs-small)}.lib-uploading{color:var(--muted);font-size:var(--fs-small)}.bar{display:block;flex:1;height:3px;border-radius:2px;background:var(--raised);overflow:hidden}.bar i{display:block;height:100%;background:var(--text);transition:width .25s ease-out}.progress{display:flex;align-items:center;gap:10px;margin-top:6px;color:var(--text);font-size:var(--fs-small)}.lib-list{display:flex;flex-direction:column;min-height:0}.lib-empty{margin:12px 0;color:var(--faint)}.lib-card{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--border)}.lib-card.is-open .lib-title:after{content:" · playing";color:var(--faint);font-weight:400}.lib-open{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;min-height:72px;padding:12px 0;border:0;background:transparent;text-align:left;cursor:pointer}.lib-open:disabled{cursor:default}.lib-open:hover:not(:disabled) .lib-title{text-decoration:underline;text-underline-offset:3px}.lib-title{font-size:var(--fs-section);font-weight:500;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lib-sub{color:var(--muted);font-size:var(--fs-small)}.lib-icons{display:flex;gap:8px;margin-top:6px;color:var(--faint)}.lib-errtext{color:var(--negative);font-size:var(--fs-small);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lib-card-actions{display:flex;gap:6px}.lib-foot{margin:0;color:var(--faint);font-size:var(--fs-small);line-height:18px}.lib-links{display:flex;flex-wrap:wrap;align-items:center;gap:16px;color:var(--faint);font-size:var(--fs-small)}.plans{grid-area:page;width:min(1040px,100%);margin:0 auto;padding:40px 24px calc(64px + var(--safe-b))}.owner-note{display:inline-flex;align-items:center;gap:8px;margin:0 0 24px;padding:8px 14px;border-radius:999px;background:var(--brand-wash);color:var(--brand);font-size:var(--fs-small)}.plans-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-inline:calc(50% - 50vw);padding:40px calc(50vw - 50%) 44px;background:var(--brand);color:var(--brand-ink)}.plans-head p{color:var(--brand-ink)!important}.plans-head .segmented{background:#0b0d101f}.plans-head .segmented button{color:var(--brand-ink)}.plans-head .segmented button[aria-checked=true]{background:var(--brand-ink);color:var(--brand)}.plans-head h2{margin:0;font-size:32px;font-weight:600;line-height:40px;letter-spacing:-.02em}.plans-head p{margin:8px 0 0;color:var(--muted);font-size:var(--fs-section);line-height:24px}.segmented{display:inline-flex;flex:none;padding:4px;border-radius:999px;background:var(--surface)}.segmented button{min-height:var(--control-height);padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--nav);font-weight:500;cursor:pointer}.segmented button[aria-checked=true]{background:var(--brand);color:var(--brand-ink)}.hue-strip{display:flex;gap:6px;margin:32px 0 24px}.hue-strip i{width:40px;height:4px;border-radius:2px}.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);align-items:start}.plan{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:28px;border-radius:var(--radius-card);background:var(--surface)}.plan-studio{border-top:4px solid var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--surface))}.plan-studio li:before{background:var(--brand)!important}.plan h3{margin:0;font-size:var(--fs-title);font-weight:600}.price,.price-alt{font-variant-numeric:tabular-nums}.price{margin:0;font-size:28px;font-weight:600;line-height:36px}.price span{font-family:var(--font);color:var(--muted);font-size:var(--fs-body);font-weight:400}.price-alt{margin:-8px 0 0;color:var(--faint);font-size:var(--fs-small)}.plan ul{margin:4px 0 8px;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;color:var(--muted)}.plan li{padding-left:18px;position:relative}.plan li:before{content:"";position:absolute;left:2px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--faint)}.plan .btn{width:100%;min-height:44px}.disclosure{margin:0;color:var(--faint);font-size:var(--fs-small);line-height:18px}.plans-lower{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);align-items:start;margin-top:48px}.compare,.faq{padding:0 4px}.compare h3,.faq h3{margin:0 0 12px;font-size:var(--fs-section);font-weight:600}.compare table{width:100%;border-collapse:collapse}.compare th,.compare td{padding:14px 0;border-bottom:1px solid var(--border);text-align:left;font-weight:400}.compare thead th{color:var(--faint);font-size:var(--fs-small);padding-top:0}.compare tbody th{color:var(--text)}.compare td,.compare thead th:not(:first-child){width:22%;text-align:right;color:var(--muted)}.compare .yes{color:var(--text)}.compare .no{color:var(--faint)}.faq details{border-bottom:1px solid var(--border)}.faq summary{display:flex;align-items:center;min-height:52px;cursor:pointer;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";margin-left:auto;color:var(--muted);font-size:18px}.faq details[open] summary:after{content:"–"}.faq details p{margin:0 0 16px;max-width:68ch;color:var(--muted);line-height:22px}.dropveil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:#0b0d10e6;border:2px dashed var(--control);font-size:24px;font-weight:600;pointer-events:none}.toast{position:fixed;left:50%;bottom:calc(84px + var(--safe-b));transform:translate(-50%);z-index:50;max-width:calc(100vw - 32px);padding:10px 16px;border-radius:var(--radius-row);background:#2c1a20;color:var(--negative)}@media (max-width: 900px){.desk-only,.topnav,.wordmark,.topbar-divider,.readouts,.rail-hint,.rail-clear,.vol{display:none!important}.phone-only{display:initial!important}.icon-btn.phone-only{display:grid!important}.app,.app.view-player{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto auto;grid-template-areas:"top" "rail" "board" "bottom" "tabs"}.app.view-plans{grid-template-rows:auto auto auto;grid-template-areas:"top" "page" "tabs"}.topbar{min-height:56px;padding:calc(6px + var(--safe-t)) calc(16px + var(--safe-r)) 6px calc(16px + var(--safe-l));gap:12px;border-bottom:0}.now{flex:1}.now h1{font-size:var(--fs-section);line-height:22px}.topbar-actions .icon-btn{border:0;border-radius:var(--radius-row);background:var(--surface)}.rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:4px 16px 8px;border:0;overflow:visible}.badge{grid-template-columns:8px minmax(0,1fr) auto;gap:8px;min-height:44px;padding:0 12px;background:color-mix(in srgb,var(--hue) 12%,var(--surface))}.badge.is-focused,.badge:hover{background:color-mix(in srgb,var(--hue) 22%,var(--surface))}.badge-bar,.badge-icons,.badge-range,.badge-label .clef{display:none}.badge-dot{display:block;width:8px;height:8px;border-radius:50%;background:var(--hue)}.label-full{display:none}.label-short{display:inline}.badge-label{font-size:13px;overflow:hidden;text-overflow:ellipsis}.badge-note{min-width:0;font-size:13px}.empty{padding:16px}.empty p{font-size:13px}.bottombar{margin:0 16px 8px;padding:6px 16px 6px 8px;border:0;border-radius:var(--radius-card);background:var(--surface)}.tabbar{grid-area:tabs;display:grid;grid-template-columns:repeat(3,1fr);padding:0 var(--safe-r) var(--safe-b) var(--safe-l);border-top:1px solid var(--border);background:var(--ground)}.tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:60px;border:0;background:transparent;color:var(--nav);font-size:var(--fs-small);font-weight:500;cursor:pointer}.tabbar button.is-active{color:var(--brand)}.library{top:auto;left:0;width:100%;max-height:82dvh;border-radius:var(--radius-card) var(--radius-card) 0 0;padding-top:12px}.lib-head{position:relative;padding-top:12px}.grab{display:block;position:absolute;top:0;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:2px;background:var(--control)}.plans{padding:24px 16px 32px}.plans-head{flex-direction:column;align-items:flex-start}.plans-head h2{font-size:24px;line-height:32px}.plan-grid,.plans-lower{grid-template-columns:minmax(0,1fr)}.plans-lower{gap:40px}.plan{padding:22px}.compare td,.compare thead th:not(:first-child){width:28%}}@media (max-width: 1000px) and (max-height: 520px) and (orientation: landscape){.desk-only,.topnav,.wordmark,.topbar-divider,.readouts,.rail-hint,.rail-clear,.vol{display:none!important}.app,.app.view-player{grid-template-columns:calc(72px + var(--safe-l)) minmax(0,1fr) calc(280px + var(--safe-r));grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"tabs board top" "tabs board rail" "tabs board bottom"}.app.view-plans{grid-template-columns:calc(72px + var(--safe-l)) minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:"tabs top" "tabs page"}.topbar{min-height:0;padding:12px calc(16px + var(--safe-r)) 8px 0;border:0}.topbar .brand{display:none}.now{flex:1}.rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:6px;padding:0 calc(16px + var(--safe-r)) 0 0;border:0}.badge{grid-template-columns:8px minmax(0,1fr) auto;gap:8px;min-height:44px;padding:0 10px;background:color-mix(in srgb,var(--hue) 12%,var(--surface))}.badge-bar,.badge-icons,.badge-range,.badge-label .clef{display:none}.badge-dot{display:block;width:8px;height:8px;border-radius:50%;background:var(--hue)}.label-full{display:none}.label-short{display:inline}.badge-label{font-size:13px}.badge-note{min-width:0;font-size:13px}.bottombar{margin:8px calc(16px + var(--safe-r)) calc(8px + var(--safe-b)) 0;padding:4px 12px 4px 6px;border:0;border-radius:var(--radius-card);background:var(--surface)}.tabbar{grid-area:tabs;display:flex;flex-direction:column;justify-content:center;gap:4px;padding-left:var(--safe-l);border-right:1px solid var(--border)}.tabbar button{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:60px;border:0;background:transparent;color:var(--nav);font-size:var(--fs-small);cursor:pointer}.tabbar button.is-active{color:var(--brand)}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}
