:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4ecdf;--surface:#fffcf7f0;--surface-strong:#fffaf1;--surface-soft:#e9decd;--text:#211912;--muted:#776b60;--line:#44312221;--brand:#6546b7;--brand-soft:#6546b721;--green:#27c86f;--gold:#c9912e;--shadow:0 22px 60px #4b352224;--nav-height:72px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}:root[data-theme=concert]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0b16;--surface:#19152af2;--surface-strong:#1d1830;--surface-soft:#27203d;--text:#f7f0ff;--muted:#b9aecb;--line:#c6b1ff24;--brand:#b584ff;--brand-soft:#b584ff26;--green:#40db83;--gold:#e4ad4d;--shadow:0 24px 70px #0000006b}*{box-sizing:border-box}html{background:var(--surface-strong);-webkit-text-size-adjust:100%;text-rendering:optimizelegibility;height:100%;min-height:100dvh;overflow:hidden}body{background:radial-gradient(circle at 15% -10%, var(--brand-soft), transparent 34rem), var(--bg);height:100%;min-height:100dvh;color:var(--text);overscroll-behavior-y:none;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;overflow:hidden}@media (max-width:719px){body{background:var(--surface-strong)}.app-frame{background:radial-gradient(circle at 15% -10%, var(--brand-soft), transparent 34rem), var(--bg)}}button,a,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}.app-frame{width:min(100%,760px);height:100dvh;min-height:100dvh;padding:calc(var(--safe-top) + 64px) 0 var(--nav-height);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.app-frame>.install-card,.app-frame>.practice-card,.app-frame>.home-tabs{flex:none}.app-scroll-region{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:hidden auto}.app-topbar{z-index:40;width:min(100%,760px);height:calc(64px + var(--safe-top));padding:var(--safe-top) 18px 10px;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);justify-content:space-between;align-items:flex-end;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.app-frame[data-practice-header=true] .app-topbar{color:#f7f3ff;background:#100d1d;border-bottom-color:#ffffff1a}.app-frame[data-practice-header=true] .brand-lockup strong{color:#f7f3ff}.app-frame[data-practice-header=true] .network-indicator,.app-frame[data-practice-header=true] .icon-button{color:#d7cee8;background:#211b35;border-color:#ffffff21}.brand-lockup{align-items:center;gap:10px;min-width:0;display:flex}.brand-lockup img{object-fit:contain;filter:drop-shadow(0 6px 12px #00000040);width:40px;height:40px}.brand-lockup div{letter-spacing:-.03em;align-items:baseline;gap:5px;display:flex}.brand-lockup span{color:var(--brand);font-size:1.04rem;font-weight:850}.brand-lockup strong{font-size:.92rem;font-weight:720}.icon-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:50%;width:44px;height:44px;font-size:1.12rem}.topbar-actions{align-items:center;gap:9px;display:flex}.network-indicator{border:1px solid var(--line);background:var(--surface);min-height:28px;color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:.67rem;font-weight:760;display:inline-flex}.network-indicator:before{background:var(--muted);content:"";border-radius:50%;width:7px;height:7px}.network-indicator.is-online:before{background:var(--green);box-shadow:0 0 0 4px color-mix(in srgb, var(--green) 14%, transparent)}.network-indicator.is-offline{color:#e06363}.network-indicator.is-offline:before{background:#e06363}.network-indicator.is-degraded{color:#d07b31}.network-indicator.is-degraded:before{background:#f0a04b;box-shadow:0 0 0 4px #f0a04b24}.install-card{border:1px solid color-mix(in srgb, var(--brand) 38%, var(--line));background:color-mix(in srgb, var(--surface) 90%, var(--brand-soft));box-shadow:var(--shadow);border-radius:18px;grid-template-columns:42px 1fr 36px;align-items:center;gap:12px;margin:14px 16px 0;padding:13px;display:grid}.install-icon{background:var(--brand-soft);width:42px;height:42px;color:var(--brand);border-radius:13px;place-items:center;font-size:1.35rem;font-weight:800;display:grid}.install-card strong{font-size:.88rem;display:block}.install-card p{color:var(--muted);margin:3px 0 0;font-size:.76rem;line-height:1.35}.install-card>button{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:1.4rem}.practice-card{min-height:62px;box-shadow:none;color:#f3f1fa;background:#1b1730;border:0;border-radius:0;grid-template-columns:34px minmax(0,1fr) 1px minmax(50px,auto) 1px minmax(46px,auto);align-items:center;gap:9px;margin:0;padding:9px 14px;display:grid}.practice-guitar{color:#b39ddb;place-items:center;width:34px;height:34px;font-size:1.55rem;line-height:1;display:grid}.practice-main>span{color:#b4aec9;margin-bottom:2px;font-size:.67rem;display:block}.practice-value-row{align-items:center;gap:4px;min-width:0;display:flex}.practice-main strong{color:#4cd07a;flex:none;font-size:.87rem;line-height:1}.practice-main b{color:#f3f1fa;white-space:nowrap;flex:none;font-size:.77rem;font-weight:560}.practice-main em{color:#4cd07a;text-align:right;flex:none;min-width:28px;font-size:.75rem;font-style:normal;font-weight:800}.progress-track{background:#332c52;border-radius:999px;flex:auto;min-width:20px;height:4px;margin:0 3px;overflow:hidden}.progress-track i{border-radius:inherit;background:#4cd07a;height:100%;display:block}.practice-stat{white-space:nowrap;justify-items:center;gap:2px;min-width:0;display:grid}.practice-stat strong{color:#c7b8e8;font-size:.73rem;line-height:1}.practice-stat span{color:#9683b8;font-size:.61rem;line-height:1}.practice-divider{background:#ffffff29;width:1px;height:30px;display:block}.practice-card[data-attention=warning] .practice-main strong,.practice-card[data-attention=warning] .practice-main em{color:#f2c94c}.practice-card[data-attention=warning] .progress-track i{background:#f2c94c}.practice-card[data-attention=critical] .practice-main strong,.practice-card[data-attention=critical] .practice-main em{color:#f16a63}.practice-card[data-attention=critical] .progress-track i{background:#f16a63}.practice-limit-panel{background:#241e3d;border-top:1px solid #ffffff24;grid-column:1/-1;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;margin:2px -14px -9px;padding:9px 14px;display:grid}.practice-limit-icon{color:#b584ff;font-size:.75rem}.practice-limit-panel div{gap:2px;min-width:0;display:grid}.practice-limit-panel strong{color:#f3f1fa;font-size:.68rem;line-height:1.25}.practice-limit-panel small{color:#b4aec9;font-size:.58rem;line-height:1.3}.practice-limit-panel button{color:#fff;white-space:nowrap;cursor:pointer;background:#7652ce;border:0;border-radius:999px;min-height:34px;padding:0 12px;font-size:.64rem;font-weight:780}.practice-card[data-connectivity=true] .practice-limit-panel{margin-bottom:0}.practice-connectivity-panel{background:#241e3d;border-top:1px solid #ffffff24;grid-column:1/-1;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;margin:2px -14px -9px;padding:9px 14px;display:grid}.practice-connectivity-icon{color:#f0a04b;font-size:.9rem}.practice-connectivity-panel div{gap:2px;min-width:0;display:grid}.practice-connectivity-panel strong{color:#f3f1fa;font-size:.68rem;line-height:1.25}.practice-connectivity-panel small{color:#b4aec9;font-size:.58rem;line-height:1.3}.practice-connectivity-panel button{color:#f3f1fa;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #ffffff3d;border-radius:999px;min-height:34px;padding:0 12px;font-size:.64rem;font-weight:780}.home-tabs{border-block:1px solid var(--line);background:color-mix(in srgb, var(--surface) 76%, transparent);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0;display:grid}.home-tabs button{min-width:0;min-height:52px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:0 5px;font-size:clamp(.68rem,3.2vw,.82rem);font-weight:690}.home-tabs button[data-active=true]{border-bottom-color:var(--brand);color:var(--brand)}.content-section{padding:25px 16px 16px}.section-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:17px;display:flex}.eyebrow{color:var(--brand);letter-spacing:.14em;margin:0 0 7px;font-size:.68rem;font-weight:820}.section-heading h1,.secondary-screen>h1{letter-spacing:-.045em;margin:0;font-size:clamp(1.65rem,7vw,2.25rem);line-height:1.02}.section-summary{color:var(--muted);margin:8px 0 0;font-size:.75rem}.filter-button{border:1px solid var(--line);background:var(--surface);min-width:82px;min-height:42px;color:var(--brand);cursor:pointer;border-radius:14px;padding:0 14px;font-size:.78rem;font-weight:760}.catalog-tools{gap:11px;margin:-2px 0 17px;display:grid}.catalog-search{border:1px solid var(--line);background:var(--surface);min-height:50px;box-shadow:0 9px 26px color-mix(in srgb, var(--shadow) 22%, transparent);border-radius:17px;grid-template-columns:24px minmax(0,1fr) 36px;align-items:center;gap:7px;padding:0 8px 0 14px;display:grid}.catalog-search>span{color:var(--brand);font-size:1.3rem;font-weight:760}.catalog-search input{width:100%;min-width:0;height:48px;color:var(--text);background:0 0;border:0;outline:0;font-size:.88rem}.catalog-search input::placeholder{color:var(--muted)}.catalog-search>button{background:var(--surface-soft);width:36px;height:36px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;font-size:1.16rem}.catalog-search:not(:has(button)){grid-template-columns:24px minmax(0,1fr);padding-right:14px}.category-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.category-filter-row label{gap:5px;min-width:0;display:grid}.category-filter-row label>span{color:var(--muted);padding-left:4px;font-size:.66rem;font-weight:720}.category-filter-row select{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;min-height:46px;color:var(--text);border-radius:15px;outline:none;padding:0 34px 0 12px;font-size:.76rem;font-weight:700}.category-filter-row select:focus-visible,.catalog-search:focus-within{border-color:color-mix(in srgb, var(--brand) 68%, var(--line));box-shadow:0 0 0 3px var(--brand-soft)}.reset-filters{border:1px solid var(--line);min-height:42px;color:var(--brand);cursor:pointer;background:0 0;border-radius:14px;grid-column:1/-1;justify-self:start;padding:0 15px;font-size:.72rem;font-weight:760}.filter-result-summary{color:var(--muted);margin:0 0 10px;font-size:.72rem}.load-more-button{border:1px solid color-mix(in srgb, var(--brand) 34%, var(--line));background:var(--brand-soft);width:100%;min-height:50px;color:var(--brand);cursor:pointer;border-radius:17px;margin-top:14px;font-size:.82rem;font-weight:780}.load-more-button:disabled{cursor:wait;opacity:.64}.track-list{gap:10px;display:grid}.track-row{border:1px solid var(--line);background:linear-gradient(145deg, var(--surface), color-mix(in srgb, var(--surface) 91%, var(--brand-soft)));text-align:left;width:100%;min-height:88px;box-shadow:0 12px 30px color-mix(in srgb, var(--shadow) 36%, transparent);cursor:pointer;border-radius:19px;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.catalog-track-row{min-width:0;transition:filter .16s,opacity .16s;position:relative}.catalog-track-row.is-offline-unavailable{filter:grayscale(.72)saturate(.42);opacity:.42}.catalog-track-row.is-offline-unavailable .catalog-track-main{cursor:default}.catalog-track-row.is-offline-ready{filter:none;opacity:1}.catalog-track-main{padding-right:62px}.catalog-track-menu{z-index:1;border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:color-mix(in srgb, var(--surface-strong) 88%, transparent);width:42px;height:52px;color:var(--muted);cursor:pointer;border-radius:14px;font-size:1.35rem;line-height:1;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.track-row:active{transform:scale(.992)}.track-artwork{border-radius:15px;place-items:end;width:66px;height:66px;padding:7px;display:grid;overflow:hidden;box-shadow:inset 0 0 28px #00000047}.track-artwork.has-image{background-position:50%;background-size:cover}.track-artwork i{color:#251a17;background:#ffffffd6;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.62rem;font-style:normal;display:grid}.artwork-amber{background:radial-gradient(circle at 72% 20%,#ffc569,#0000 26%),linear-gradient(145deg,#190f0a,#9b491c 46%,#181012)}.artwork-blue{background:radial-gradient(circle at 22% 24%,#4ed8ff,#0000 25%),linear-gradient(145deg,#07101b,#17456e 52%,#0b1222)}.artwork-violet{background:radial-gradient(circle at 75% 22%,#ff4ca9,#0000 25%),linear-gradient(145deg,#170828,#593194 52%,#160c2a)}.artwork-cyan{background:radial-gradient(circle at 20% 22%,#63ffd9,#0000 25%),linear-gradient(145deg,#071914,#1d746f 52%,#0a1921)}.track-copy{gap:4px;min-width:0;display:grid}.track-copy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.track-copy span,.track-copy small,.track-duration{color:var(--muted);font-size:.72rem}.track-duration{align-self:start;padding:4px 2px}.track-rank{color:var(--brand);align-self:start;padding:4px 2px;font-size:.72rem;font-weight:800}.category-list{gap:12px;display:grid}.category-card{color:#fff;text-align:right;min-height:124px;box-shadow:var(--shadow), inset 0 0 80px #00000038;cursor:pointer;border:0;border-radius:24px;flex-direction:column;justify-content:center;align-items:flex-end;padding:20px;display:flex}.category-card.has-image{background-position:50%;background-size:cover}.category-card span{letter-spacing:-.035em;max-width:72%;font-size:1.3rem;font-weight:820}.category-card small{color:#ffffffbd;margin-top:5px;font-size:.82rem}.empty-state,.foundation-card{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:26px;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:34px;display:flex}.empty-state>span,.foundation-card>span{color:var(--brand);font-size:2.7rem}.empty-state h2,.foundation-card h2{letter-spacing:-.03em;margin:20px 0 8px}.empty-state p,.foundation-card p{max-width:420px;color:var(--muted);margin:0;line-height:1.55}.offline-library-foundation{gap:14px;display:grid}.offline-storage-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:24px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:14px;padding:18px;display:grid}.offline-storage-card[data-prepared=true]{border-color:color-mix(in srgb, var(--green) 36%, var(--line))}.offline-storage-card.is-error{border-color:color-mix(in srgb, #e06363 38%, var(--line))}.offline-storage-icon{background:var(--brand-soft);width:54px;height:54px;color:var(--brand);border-radius:17px;place-items:center;font-size:1.5rem;font-weight:850;display:grid}.offline-storage-card[data-prepared=true] .offline-storage-icon{background:color-mix(in srgb, var(--green) 14%, var(--surface));color:var(--green)}.offline-storage-card>div{min-width:0}.offline-storage-card strong{font-size:.94rem;display:block}.offline-storage-card p{color:var(--muted);margin:5px 0 0;font-size:.7rem;line-height:1.45}.offline-storage-card>button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:14px;grid-column:1/-1;min-height:44px;font-weight:800}.offline-storage-card>button:disabled{cursor:wait;opacity:.6}.offline-storage-summary{border:1px solid var(--line);background:var(--surface);border-radius:22px;gap:0;display:grid;overflow:hidden}.offline-storage-summary>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:51px;padding:10px 16px;display:flex}.offline-storage-summary span{color:var(--muted);font-size:.7rem}.offline-storage-summary strong{text-align:right;font-size:.74rem}.offline-storage-summary p{color:var(--muted);margin:0;padding:14px 16px;font-size:.68rem;line-height:1.5}.offline-storage-error{background:color-mix(in srgb, #e06363 10%, var(--surface));color:#d34d4d;border-radius:13px;margin:0;padding:11px 13px;font-size:.7rem;line-height:1.45}.offline-bundle-section,.offline-download-candidates{border:1px solid var(--line);background:var(--surface);border-radius:22px;display:grid;overflow:hidden}.offline-bundle-section>header,.offline-download-candidates>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:10px 15px;display:flex}.offline-bundle-section>header span,.offline-download-candidates>header span{font-size:.78rem;font-weight:820}.offline-bundle-section>header strong{background:var(--brand-soft);min-width:26px;color:var(--brand);text-align:center;border-radius:999px;padding:4px 8px;font-size:.66rem}.offline-download-candidates>header small{color:var(--muted);font-size:.6rem}.offline-bundle-row,.offline-download-candidates article{border-bottom:1px solid var(--line);align-items:center;gap:11px;min-height:66px;padding:10px 13px;display:flex}.offline-bundle-row:last-child,.offline-download-candidates article:last-child{border-bottom:0}.offline-bundle-row>div,.offline-download-candidates article>div{flex:1;gap:3px;min-width:0;display:grid}.offline-bundle-row strong,.offline-download-candidates article strong{text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.offline-bundle-row small,.offline-download-candidates article small{color:var(--muted);font-size:.62rem}.offline-bundle-ready{background:color-mix(in srgb, var(--green) 14%, var(--surface));width:30px;height:30px;color:var(--green);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.offline-bundle-row button,.offline-download-candidates article button{border:1px solid color-mix(in srgb, var(--brand) 40%, var(--line));background:var(--brand-soft);min-width:72px;min-height:36px;color:var(--brand);cursor:pointer;border-radius:12px;flex:none;padding:0 11px;font-size:.64rem;font-weight:800}.offline-bundle-row button{border-color:color-mix(in srgb, #e06363 35%, var(--line));background:color-mix(in srgb, #e06363 8%, var(--surface));color:#c85252}.offline-bundle-row button.offline-play-button{border-color:color-mix(in srgb, var(--brand) 40%, var(--line));background:var(--brand-soft);color:var(--brand)}.offline-bundle-row button:disabled,.offline-download-candidates article button:disabled{cursor:wait;opacity:.6}.offline-download-candidates article:has(.offline-download-error){flex-wrap:wrap}.offline-download-candidates article>.offline-download-error{background:color-mix(in srgb, #e06363 9%, var(--surface));color:#c85252;border-radius:13px;flex:0 0 100%;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 11px;font-size:.64rem;line-height:1.4;display:flex}.offline-download-candidates article>.offline-download-error span{flex:1}.offline-download-candidates article>.offline-download-error button{border-color:color-mix(in srgb, var(--brand) 45%, var(--line));background:var(--surface);min-width:112px;color:var(--brand)}.catalog-alert{border:1px solid color-mix(in srgb, #e06363 36%, var(--line));background:color-mix(in srgb, #e06363 9%, var(--surface));border-radius:18px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;padding:14px;display:flex}.catalog-alert strong{font-size:.84rem}.catalog-alert p{color:var(--muted);margin:4px 0 0;font-size:.72rem;line-height:1.4}.catalog-alert button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:13px;flex:none;min-height:40px;padding:0 13px;font-size:.72rem;font-weight:760}.home-trial-banner{background:linear-gradient(112deg,#00aeef 0%,#246bfe 50%,#7b2ff7 100%);border:1px solid #aeebff6b;border-radius:17px;margin:-11px 0 15px;display:block;position:relative;overflow:hidden;box-shadow:0 8px 18px #246bfe33}:root[data-theme=concert] .home-trial-banner{background:linear-gradient(112deg,#17216a 0%,#4b22d8 52%,#00a7e8 125%);border-color:#7ee7ff61;box-shadow:0 9px 22px #00000052}.home-trial-main{color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;width:100%;min-height:68px;padding:12px 48px 12px 16px;display:flex}.home-trial-main:disabled{opacity:.68}.home-trial-copy{gap:4px;min-width:0;display:grid}.home-trial-copy strong{color:#fff;font-size:.94rem;line-height:1.15}.home-trial-copy span{color:#ffffffe0;font-size:.79rem}.home-trial-copy .home-trial-error{color:#fff3b0;font-size:.68rem}.home-trial-dismiss{z-index:2;color:#fffffff0;width:36px;height:36px;font:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:1.55rem;font-weight:300;display:grid;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.trial-flow-backdrop{z-index:240;padding:calc(10px + var(--safe-top)) 10px calc(10px + var(--safe-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#150f1f61;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.trial-flow-dialog{border:1px solid color-mix(in srgb, var(--brand) 28%, var(--line));background:var(--surface-strong);width:min(100%,480px);max-height:100%;color:var(--text);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:28px;gap:14px;padding:20px 18px 18px;display:grid;position:relative;overflow-y:auto;box-shadow:0 32px 90px #0000006b}.trial-flow-close{z-index:3;background:color-mix(in srgb, var(--surface) 92%, transparent);width:40px;height:40px;color:var(--muted);font:inherit;cursor:pointer;border:0;border-radius:50%;justify-self:end;place-items:center;margin:-5px -3px -45px 0;font-size:1.4rem;display:grid;position:sticky;top:0;box-shadow:0 5px 18px #0000001f}.trial-flow-header{gap:6px;padding-right:44px;display:grid}.trial-flow-header>span{color:var(--brand);letter-spacing:.14em;text-transform:uppercase;font-size:.66rem;font-weight:850}.trial-flow-header h2{margin:0;font-size:clamp(1.35rem,6vw,1.75rem);line-height:1.12}.trial-artist-card{border:1px solid color-mix(in srgb, var(--gold) 45%, var(--line));background:linear-gradient(155deg, color-mix(in srgb, #fbf3e6 90%, var(--surface)), color-mix(in srgb, #ead6b2 76%, var(--surface)));color:#2a1a04;border-radius:23px;justify-items:center;gap:7px;padding:22px 18px 18px;display:grid;position:relative;overflow:hidden}:root[data-theme=concert] .trial-artist-card{color:#f0dca8;background:linear-gradient(155deg,#1c1209,#100906)}.trial-popular-badge{color:#fff;letter-spacing:.08em;text-align:center;text-transform:uppercase;background:#9c6b24;width:142px;padding:5px 0;font-size:.52rem;font-weight:850;position:absolute;top:15px;right:-34px;transform:rotate(42deg)}.trial-artist-emblem{color:#8a5808;background:#9c6b241f;border:1px solid #9c6b2452;border-radius:50%;place-items:center;width:62px;height:62px;font-size:1.8rem;display:grid}.trial-artist-card h3{margin:0;font-size:1.45rem}.trial-artist-card>p{color:color-mix(in srgb, currentColor 72%, transparent);margin:0;font-size:.72rem}.trial-artist-card ul{gap:9px;width:100%;margin:8px 0 0;padding:0;list-style:none;display:grid}.trial-artist-card li{align-items:flex-start;gap:9px;font-size:.72rem;line-height:1.35;display:flex}.trial-artist-card li span{color:#9c6b24;background:#9c6b2426;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:.66rem;font-weight:900;display:grid}.trial-period-toggle{background:var(--surface-soft);border-radius:15px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;display:grid}.trial-period-toggle button{min-width:0;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:11px;gap:3px;padding:10px 7px;display:grid}.trial-period-toggle button[data-selected=true]{border-color:color-mix(in srgb, var(--brand) 42%, var(--line));background:var(--surface);color:var(--text);box-shadow:0 3px 12px #00000017}.trial-period-toggle b{font-size:.7rem}.trial-period-toggle span{font-size:.62rem}.trial-summary-card,.trial-confirmation-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;gap:10px;padding:15px;display:grid}.trial-summary-card p,.trial-confirmation-card p{justify-content:space-between;align-items:baseline;gap:12px;margin:0;display:flex}.trial-summary-card p span,.trial-confirmation-card p span{color:var(--muted);font-size:.66rem}.trial-summary-card p strong,.trial-confirmation-card p strong{text-align:right;font-size:.76rem}.trial-summary-card small,.trial-confirmation-card small{color:var(--muted);font-size:.62rem;line-height:1.45}.trial-primary-button,.trial-back-button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:15px;width:100%;min-height:50px;font-size:.75rem;font-weight:820}.trial-primary-button:disabled,.trial-back-button:disabled{cursor:not-allowed;opacity:.55}.trial-back-button{min-height:38px;color:var(--brand);background:0 0;margin-top:-6px}.trial-timeline{gap:0;margin:2px 0;padding:0;list-style:none;display:grid}.trial-timeline li{grid-template-columns:34px minmax(0,1fr);gap:11px;padding-bottom:18px;display:grid;position:relative}.trial-timeline li:not(:last-child):after{background:color-mix(in srgb, var(--brand) 38%, var(--line));content:"";width:2px;position:absolute;top:30px;bottom:2px;left:15px}.trial-timeline li>span{z-index:1;background:var(--brand-soft);width:32px;height:32px;color:var(--brand);border-radius:50%;place-items:center;font-size:.68rem;font-weight:850;display:grid}.trial-timeline strong{padding-top:2px;font-size:.75rem;display:block}.trial-timeline p{color:var(--muted);margin:4px 0 0;font-size:.67rem;line-height:1.45}.trial-flow-error{background:color-mix(in srgb, #ef4444 11%, var(--surface));color:#d14343;border-radius:12px;margin:0;padding:10px 12px;font-size:.68rem;line-height:1.4}@media (max-width:560px){.home-trial-banner{margin-inline:0}.home-trial-copy strong{font-size:.91rem}.trial-flow-backdrop{align-items:stretch;padding-inline:0}.trial-flow-dialog{border-inline:0;border-radius:0;width:100%;max-height:100%}}.catalog-skeleton{gap:10px;display:grid}.catalog-skeleton span{border:1px solid var(--line);background:linear-gradient(105deg, var(--surface) 28%, var(--brand-soft) 43%, var(--surface) 58%);background-size:240% 100%;border-radius:19px;min-height:88px;animation:1.35s linear infinite catalog-shimmer;overflow:hidden}@keyframes catalog-shimmer{to{background-position:-240% 0}}.secondary-screen{padding-top:48px}.secondary-screen-content{margin-top:24px}.favorite-list{gap:10px;display:grid}.favorite-row{border:1px solid var(--line);background:linear-gradient(145deg, var(--surface), color-mix(in srgb, var(--surface) 91%, var(--brand-soft)));min-width:0;box-shadow:0 12px 30px color-mix(in srgb, var(--shadow) 36%, transparent);border-radius:19px;grid-template-columns:minmax(0,1fr) 52px;align-items:stretch;display:grid;overflow:hidden}.favorite-open{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:88px;padding:10px;display:grid}.favorite-open:active{transform:scale(.994)}.favorite-open:disabled,.favorite-remove:disabled{cursor:wait;opacity:.65}.favorite-artwork{border-radius:15px;place-items:end;width:66px;height:66px;padding:7px;display:grid;overflow:hidden;box-shadow:inset 0 0 28px #00000047}.favorite-artwork i{color:#251a17;background:#ffffffd6;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.62rem;font-style:normal;display:grid}.favorite-copy{gap:6px;min-width:0;display:grid}.favorite-copy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.favorite-copy small{color:var(--muted);font-size:.7rem}.favorite-progress{color:var(--brand);font-size:1.2rem}.favorite-remove{border:0;border-left:1px solid var(--line);background:color-mix(in srgb, var(--brand-soft) 54%, transparent);min-width:52px;color:var(--brand);cursor:pointer;font-size:1.25rem}.favorites-inline-alert{margin-bottom:12px}.favorites-auth-required>button,.playlists-auth-required>button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:15px;min-width:132px;min-height:46px;margin-top:22px;padding:0 22px;font-size:.82rem;font-weight:780}.playlist-screen-toolbar{justify-content:space-between;align-items:center;gap:14px;min-height:48px;margin-bottom:14px;display:flex}.playlist-screen-toolbar>span{color:var(--muted);font-size:.75rem}.playlist-screen-toolbar>button{border:1px solid color-mix(in srgb, var(--brand) 60%, var(--line));background:var(--brand-soft);min-height:44px;color:var(--brand);cursor:pointer;border-radius:15px;justify-content:center;align-items:center;gap:7px;padding:0 17px;font-size:.76rem;font-weight:780;display:inline-flex}.playlist-screen-toolbar>button b{font-size:1.12rem}.playlist-screen-toolbar>button:disabled,.playlist-row-menu:disabled,.playlist-track-actions button:disabled{cursor:not-allowed;opacity:.4}.playlist-list{gap:10px;display:grid}.playlist-row{border:1px solid var(--line);background:linear-gradient(145deg, var(--surface), color-mix(in srgb, var(--surface) 91%, var(--brand-soft)));min-width:0;box-shadow:0 12px 30px color-mix(in srgb, var(--shadow) 36%, transparent);border-radius:19px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid;overflow:hidden}.playlist-row-open{min-width:0;min-height:86px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.playlist-row-open>span:nth-child(2){gap:6px;min-width:0;display:grid}.playlist-row-open strong,.playlist-row-open small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.playlist-row-open strong{font-size:.9rem}.playlist-row-open small{color:var(--muted);font-size:.68rem}.playlist-row-open>b{color:var(--muted);font-size:1.35rem}.playlist-row-icon{background:linear-gradient(145deg, color-mix(in srgb, var(--brand) 72%, #111), color-mix(in srgb, var(--gold) 55%, #111));color:#fff;border-radius:15px;place-items:center;width:52px;height:52px;font-size:1.25rem;display:grid;box-shadow:inset 0 0 24px #00000038}.playlist-row-menu{border:0;border-left:1px solid var(--line);background:color-mix(in srgb, var(--brand-soft) 36%, transparent);width:52px;color:var(--muted);cursor:pointer;font-size:1.35rem}.playlist-detail{gap:16px;display:grid}.playlist-detail-header{border:1px solid var(--line);background:var(--surface);border-radius:20px;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:10px;min-height:76px;padding:10px;display:grid}.playlist-detail-header>button{background:var(--brand-soft);width:46px;height:46px;color:var(--brand);cursor:pointer;border:0;border-radius:14px;font-size:1.25rem}.playlist-detail-header>button:disabled{opacity:.4}.playlist-detail-header>span{gap:3px;min-width:0;display:grid}.playlist-detail-header small{color:var(--brand);letter-spacing:.16em;font-size:.58rem;font-weight:820}.playlist-detail-header strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.playlist-detail-header b{color:var(--muted);font-size:.68rem;font-weight:650}.playlist-track-list{gap:9px;display:grid}.playlist-catalog-row{min-width:0;position:relative}.playlist-track-main{padding-right:108px}.playlist-track-main:disabled{cursor:wait;opacity:.62}.playlist-track-menu{z-index:1;border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:color-mix(in srgb, var(--surface-strong) 88%, transparent);width:42px;height:52px;color:var(--muted);cursor:pointer;border-radius:14px;font-size:1.35rem;line-height:1;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.playlist-track-grip{z-index:2;border:1px solid color-mix(in srgb, var(--brand) 38%, var(--line));background:color-mix(in srgb, var(--brand-soft) 54%, var(--surface));width:42px;height:52px;color:var(--brand);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:14px;font-size:1.35rem;font-weight:820;line-height:1;position:absolute;top:50%;right:58px;transform:translateY(-50%)}.playlist-track-grip:active{cursor:grabbing}.playlist-track-grip:disabled{cursor:not-allowed;opacity:.4}.playlist-catalog-row.is-dragging{z-index:3;filter:drop-shadow(0 18px 28px #0000004d);opacity:.9;transform:scale(1.015)}.playlist-track-menu:disabled{cursor:wait;opacity:.45}.playlist-inline-alert{margin-top:12px}.playlist-dialog-backdrop{z-index:180;padding:20px 14px calc(20px + var(--safe-bottom));-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#05040aa8;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.track-actions-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#05040a12;padding:0;display:block}.playlist-dialog.track-actions-popover{overscroll-behavior:contain;border-radius:19px;gap:12px;width:min(340px,100vw - 24px);max-height:min(440px,100svh - 24px);padding:15px;position:fixed;left:50%;right:auto;overflow-y:auto;transform:translate(-50%);box-shadow:0 18px 48px #00000047}.track-actions-popover>div:first-child strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem;line-height:1.3;display:-webkit-box;overflow:hidden}.track-actions-popover .playlist-track-menu-actions button{min-height:44px}.track-picker-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#05040a57}.playlist-dialog{border:1px solid var(--line);background:var(--surface-strong);border-radius:26px;gap:18px;width:min(100%,520px);padding:20px;display:grid;box-shadow:0 30px 90px #00000073}.playlist-dialog>div:first-child{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.playlist-dialog>div:first-child>span{gap:5px;display:grid}.playlist-dialog>div:first-child small{color:var(--brand);letter-spacing:.15em;font-size:.6rem;font-weight:820}.playlist-dialog>div:first-child strong{color:var(--text);font-size:1.08rem}.playlist-dialog>div:first-child>button{background:var(--surface);width:38px;height:38px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;font-size:1.3rem}.playlist-dialog label{color:var(--muted);gap:8px;font-size:.7rem;font-weight:720;display:grid}.playlist-dialog input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:50px;color:var(--text);font:inherit;border-radius:15px;outline:none;padding:0 14px}.playlist-dialog input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.playlist-dialog>button[type=submit]{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:15px;min-height:50px;font-size:.8rem;font-weight:800}.playlist-dialog button:disabled{cursor:not-allowed;opacity:.48}.playlist-dialog-error{border:1px solid color-mix(in srgb, #ef4444 45%, var(--line));background:color-mix(in srgb, #ef4444 12%, var(--surface));color:color-mix(in srgb, #ef4444 72%, var(--text));border-radius:12px;margin:-6px 0 0;padding:10px 12px;font-size:.7rem;line-height:1.45}.playlist-confirm-dialog>p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.55}.playlist-confirm-actions{grid-template-columns:1fr 1fr;gap:10px!important;display:grid!important}.playlist-confirm-actions button{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--text);cursor:pointer;border-radius:14px;font-size:.76rem;font-weight:760}.playlist-confirm-actions button:last-child{border-color:color-mix(in srgb, #ef4444 62%, var(--line));background:color-mix(in srgb, #ef4444 18%, var(--surface));color:color-mix(in srgb, #ef4444 78%, var(--text))}.playlist-track-menu-actions{gap:8px!important;display:grid!important}.playlist-track-menu-actions button{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--text);text-align:left;cursor:pointer;border-radius:14px;padding:0 15px;font-size:.75rem;font-weight:730}.playlist-track-menu-actions button.is-destructive{color:color-mix(in srgb, #ef4444 76%, var(--text))}.playlist-track-menu-actions button:disabled{cursor:not-allowed;opacity:.38}@media (max-width:560px){.playlist-row-menu{width:46px}.playlist-row-open{grid-template-columns:46px minmax(0,1fr) auto;gap:9px;padding:10px}.playlist-row-icon{width:46px;height:46px}.playlist-track-main{padding-right:104px}}.foundation-card{margin-top:30px}.profile-title-row{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.profile-title-row h1{margin:0}.profile-feedback-button{border:1px solid color-mix(in srgb, var(--green) 42%, var(--line));background:color-mix(in srgb, var(--green) 10%, var(--surface));width:48px;height:48px;color:color-mix(in srgb, var(--green) 74%, var(--text));cursor:pointer;border-radius:50%;flex:none;place-items:center;display:grid}.profile-feedback-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:25px;height:25px}.feedback-backdrop{z-index:220;padding:calc(18px + var(--safe-top)) 16px calc(18px + var(--safe-bottom));-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#05040a7a;place-items:center;display:grid;position:fixed;inset:0}.feedback-dialog{border:1px solid color-mix(in srgb, var(--brand) 38%, var(--line));background:var(--surface-strong);border-radius:26px;gap:14px;width:min(100%,520px);max-height:100%;padding:20px;display:grid;overflow-y:auto;box-shadow:0 30px 90px #0006}.feedback-dialog-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.feedback-dialog-heading>div{gap:5px;display:grid}.feedback-dialog-heading small{color:var(--brand);letter-spacing:.15em;font-size:.62rem;font-weight:820}.feedback-dialog-heading strong{font-size:1.12rem}.feedback-dialog-heading>button{background:var(--surface);width:38px;height:38px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;font-size:1.3rem}.feedback-dialog>p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.55}.feedback-dialog label{color:var(--muted);gap:8px;font-size:.7rem;font-weight:720;display:grid}.feedback-dialog textarea{resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;min-height:132px;color:var(--text);font:inherit;border-radius:15px;outline:none;padding:13px 14px;line-height:1.5}.feedback-dialog textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.feedback-counter{color:var(--muted);justify-self:end;margin-top:-8px;font-size:.64rem}.feedback-error{border:1px solid color-mix(in srgb, #ef4444 45%, var(--line));background:color-mix(in srgb, #ef4444 12%, var(--surface));border-radius:12px;padding:10px 12px;color:color-mix(in srgb, #ef4444 72%, var(--text))!important}.feedback-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.feedback-actions button,.feedback-success button{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--text);cursor:pointer;border-radius:14px;font-weight:760}.feedback-actions button:last-child,.feedback-success button{border-color:var(--brand);background:var(--brand);color:#fff}.feedback-actions button:disabled{cursor:not-allowed;opacity:.48}.feedback-success{text-align:center;justify-items:center;gap:10px;padding:10px 0 2px;display:grid}.feedback-success>span{background:color-mix(in srgb, var(--green) 14%, var(--surface));width:52px;height:52px;color:var(--green);border-radius:50%;place-items:center;font-size:1.5rem;font-weight:850;display:grid}.feedback-success p{color:var(--muted);margin:0 0 6px;font-size:.78rem;line-height:1.5}.feedback-success button{width:100%}.offline-restore-backdrop{z-index:245;padding:calc(18px + var(--safe-top)) 16px calc(18px + var(--safe-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05040a75;place-items:center;display:grid;position:fixed;inset:0}.offline-restore-dialog{border:1px solid color-mix(in srgb, var(--brand) 34%, var(--line));background:var(--surface-strong);text-align:center;border-radius:28px;justify-items:center;gap:11px;width:min(100%,440px);padding:24px 20px 20px;display:grid;box-shadow:0 30px 90px #0000006b}.offline-restore-emblem{background:var(--brand-soft);width:54px;height:54px;color:var(--brand);border-radius:18px;place-items:center;font-size:1.55rem;font-weight:800;display:grid}.offline-restore-dialog h2{margin:3px 0 0;font-size:1.22rem}.offline-restore-dialog p{color:var(--text);margin:0;font-size:.79rem;line-height:1.5}.offline-restore-dialog>small{color:var(--muted);font-size:.65rem;line-height:1.45}.offline-restore-actions{grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:5px;display:grid}.offline-restore-actions button{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--text);cursor:pointer;border-radius:15px;font-weight:760}.offline-restore-actions button:last-child{border-color:var(--brand);background:var(--brand);color:#fff}.offline-restore-actions button:disabled{cursor:wait;opacity:.55}.profile-session-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:26px;gap:18px;padding:20px;display:grid}.profile-session-card.is-authenticated{grid-template-columns:58px minmax(0,1fr);align-items:center}.profile-ios-stack{gap:14px;display:grid}.profile-account-card,.profile-ios-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:24px;padding:16px}.profile-account-card{background:radial-gradient(circle at 12% 16%, color-mix(in srgb, var(--brand) 15%, transparent), transparent 48%), var(--surface);grid-template-columns:118px minmax(0,1fr);align-items:stretch;gap:13px;padding:14px;display:grid}.profile-account-avatar{width:118px;height:118px;min-height:0;box-shadow:0 12px 28px color-mix(in srgb, var(--brand) 20%, transparent);border-radius:26px;align-self:center;font-size:1.8rem}.profile-account-details{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-strong) 72%, transparent);border-radius:18px;align-content:center;min-width:0;display:grid;overflow:hidden}.profile-account-name{text-overflow:ellipsis;white-space:nowrap;padding:10px 12px 8px;font-size:.91rem;overflow:hidden}.profile-account-row{border-top:1px solid var(--line);grid-template-columns:20px minmax(0,1fr);align-items:center;column-gap:8px;min-width:0;min-height:40px;padding:5px 10px;display:grid}.profile-account-row:first-of-type{border-top:0}.profile-account-row>span{color:var(--brand);text-align:center;grid-row:1/span 2;font-size:.84rem}.profile-account-row>small{color:var(--muted);font-size:.57rem}.profile-account-row>b{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;font-weight:690;overflow:hidden}.profile-ios-card{gap:12px;display:grid}.profile-ios-card-heading{align-items:center;gap:11px;display:flex}.profile-ios-card-heading>span{background:var(--brand-soft);width:38px;height:38px;color:var(--brand);border-radius:12px;flex:none;place-items:center;font-size:1.08rem;display:grid}.profile-ios-card-heading>div{gap:2px;min-width:0;display:grid}.profile-ios-card-heading strong{color:var(--text);font-size:.87rem}.profile-ios-card-heading small{color:var(--muted);font-size:.65rem;line-height:1.4}.profile-ios-link,.profile-session-action{border:0;border-top:1px solid var(--line);width:100%;min-height:46px;color:var(--brand);text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:0 2px;font-size:.74rem;font-weight:720;text-decoration:none;display:flex}.profile-ios-link>span,.profile-session-action>span{color:var(--muted);font-size:1.1rem}.profile-ios-link:disabled{cursor:wait;opacity:.55}.profile-session-action.is-logout{color:var(--green)}.profile-session-action.is-delete{color:#c86287}.profile-session-management .profile-security-note{margin:0}.profile-offline-status{background:var(--brand-soft);color:var(--brand);border-radius:13px;margin:0;padding:10px 12px;font-size:.67rem;line-height:1.45}.profile-offline-status.is-success{background:color-mix(in srgb, var(--green) 11%, var(--surface));color:var(--green)}.profile-offline-status.is-error{background:color-mix(in srgb, #e06363 10%, var(--surface));color:#d34d4d}.profile-ios-switch-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:54px;display:flex}.profile-push-status{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:76px;padding:10px 0;display:flex}.profile-push-status>div{gap:3px;min-width:0;display:grid}.profile-push-status strong{color:var(--text);font-size:.76rem;font-weight:740}.profile-push-status small{color:var(--muted);font-size:.62rem;line-height:1.4}.profile-push-status>.profile-device-push-switch{background:color-mix(in srgb, var(--muted) 25%, var(--surface-soft));touch-action:manipulation;border:0;border-radius:999px;flex:none;width:50px;height:30px;padding:0;transition:background .18s;position:relative}.profile-device-push-switch>span{background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 2px 7px #00000047}.profile-device-push-switch[aria-checked=true]{background:var(--green)}.profile-device-push-switch[aria-checked=true]>span{transform:translate(20px)}.profile-device-push-switch:disabled{opacity:.5}.profile-ios-switch-row>div{gap:2px;min-width:0;display:grid}.profile-ios-switch-row strong{color:var(--text);font-size:.76rem;font-weight:690}.profile-ios-switch-row small{color:var(--muted);font-size:.62rem;line-height:1.35}.profile-ios-switch-row>button{background:color-mix(in srgb, var(--muted) 25%, var(--surface-soft));cursor:pointer;touch-action:manipulation;border:0;border-radius:999px;flex:none;width:50px;height:30px;padding:0;transition:background .18s;position:relative}.profile-ios-switch-row>button>span{background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 2px 7px #00000047}.profile-ios-switch-row>button[aria-checked=true]{background:var(--green)}.profile-ios-switch-row>button[aria-checked=true]>span{transform:translate(20px)}.profile-ios-switch-row>button:disabled{cursor:not-allowed;opacity:.55}.profile-ios-loading{border-top:1px solid var(--line);min-height:50px;color:var(--muted);align-items:center;gap:10px;font-size:.68rem;display:flex}.profile-ios-loading>span{border:2px solid var(--brand-soft);border-top-color:var(--brand);border-radius:50%;width:20px;height:20px;animation:.85s linear infinite profile-spin}.profile-ios-inline-error{color:#d26060;margin:0;font-size:.66rem;line-height:1.4}.profile-ios-load-error{border-top:1px solid var(--line);gap:9px;padding-top:11px;display:grid}.profile-ios-load-error>span{color:var(--muted);font-size:.67rem;line-height:1.4}.profile-ios-load-error>button{border:1px solid var(--brand);min-height:40px;color:var(--brand);background:0 0;border-radius:13px;font-size:.7rem;font-weight:760}.profile-ios-load-error>button:disabled{opacity:.5}@media (max-width:390px){.profile-account-card{grid-template-columns:106px minmax(0,1fr);gap:11px;padding:12px}.profile-account-avatar{width:106px;height:106px;min-height:0}.profile-account-row{padding-inline:7px}}.profile-loading-dot{border:4px solid var(--brand-soft);border-top-color:var(--brand);border-radius:50%;width:42px;height:42px;animation:.85s linear infinite profile-spin}@keyframes profile-spin{to{transform:rotate(360deg)}}.profile-avatar{border:1px solid color-mix(in srgb, var(--brand) 44%, var(--line));background:var(--brand-soft);width:58px;height:58px;color:var(--brand);border-radius:19px;place-items:center;font-size:1.35rem;font-weight:820;display:grid;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-avatar.profile-account-avatar{border-radius:26px;align-self:center;width:118px;height:118px;min-height:0}@media (max-width:390px){.profile-avatar.profile-account-avatar{width:106px;height:106px}}.profile-identity{gap:3px;min-width:0;display:grid}.profile-identity>span,.profile-identity>small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.profile-identity>strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;overflow:hidden}.profile-settings-button{border:1px solid color-mix(in srgb, var(--brand) 38%, var(--line));background:var(--brand-soft);min-height:48px;color:var(--brand);cursor:pointer;border-radius:16px;grid-column:1/-1;padding:0 15px;font-size:.78rem;font-weight:780}.billing-overview{border:1px solid color-mix(in srgb, var(--brand) 30%, var(--line));background:color-mix(in srgb, var(--brand-soft) 54%, var(--surface));border-radius:18px;grid-column:1/-1;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:78px;padding:12px;display:grid}.billing-level-badge{background:var(--brand);color:#fff;border-radius:15px;place-items:center;width:48px;height:48px;font-size:1.25rem;display:grid}.billing-overview-copy,.billing-overview.is-loading>div,.billing-overview.is-error>div{gap:2px;min-width:0;display:grid}.billing-overview small{color:var(--muted);font-size:.66rem}.billing-overview strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.94rem;overflow:hidden}.billing-overview-copy span{color:var(--muted);font-size:.66rem}.billing-overview>button{border:1px solid var(--brand);min-height:40px;color:var(--brand);cursor:pointer;background:0 0;border-radius:13px;padding:0 13px;font-weight:780}.billing-overview>button:disabled{cursor:not-allowed;opacity:.45}.billing-overview.is-loading{grid-template-columns:38px minmax(0,1fr)}.billing-overview.is-loading>span{border:3px solid var(--brand-soft);border-top-color:var(--brand);border-radius:50%;width:34px;height:34px;animation:.85s linear infinite profile-spin}.billing-overview.is-error{grid-template-columns:minmax(0,1fr) auto}.billing-profile-subscription{border:1px solid var(--line);background:var(--surface);border-radius:18px;grid-column:1/-1;gap:12px;padding:14px;display:grid}.billing-profile-subscription-heading{align-items:center;gap:11px;display:flex}.billing-profile-subscription-heading>span{background:var(--brand-soft);width:38px;height:38px;color:var(--brand);border-radius:13px;flex:none;place-items:center;font-size:1.18rem;display:grid}.billing-profile-subscription-heading>div{gap:2px;min-width:0;display:grid}.billing-profile-subscription-heading small{color:var(--muted);font-size:.66rem}.billing-profile-subscription-heading strong{color:var(--text);font-size:.86rem}.billing-profile-subscription-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:6px;padding:12px 0;display:grid}.billing-profile-subscription-details span{color:var(--muted);font-size:.68rem;line-height:1.4}.billing-profile-subscription-details strong{color:var(--text);font-weight:720}.billing-profile-auto-renew{justify-content:space-between;align-items:center;gap:14px;display:flex}.billing-profile-auto-renew>div{gap:3px;min-width:0;display:grid}.billing-profile-auto-renew strong{color:var(--text);font-size:.75rem}.billing-profile-auto-renew span{color:var(--muted);font-size:.64rem;line-height:1.4}.billing-profile-auto-renew>button{background:var(--line);cursor:pointer;border:0;border-radius:999px;flex:none;width:48px;height:28px;padding:0;transition:background .16s;position:relative}.billing-profile-auto-renew>button>span{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #00000038}.billing-profile-auto-renew>button[aria-checked=true]{background:var(--brand)}.billing-profile-auto-renew>button[aria-checked=true]>span{transform:translate(20px)}.billing-profile-auto-renew>button:disabled{cursor:not-allowed;opacity:.5}.billing-profile-retry{border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:13px;width:100%;min-height:42px;font-size:.7rem;font-weight:780}.billing-profile-retry:disabled{cursor:not-allowed;opacity:.5}.billing-backdrop{z-index:225;padding:calc(8px + var(--safe-top)) 10px calc(8px + var(--safe-bottom));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#05040a5c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.billing-dialog{border:1px solid color-mix(in srgb, var(--brand) 34%, var(--line));background:var(--surface-strong);overscroll-behavior:contain;border-radius:26px;gap:14px;width:min(100%,560px);max-height:100%;padding:18px;scroll-padding-top:70px;display:grid;overflow-y:auto;box-shadow:0 30px 90px #0000006b}.billing-paywall-dialog{gap:0;padding:10px 0 12px;position:relative}.billing-paywall-close{z-index:8;background:var(--surface);width:38px;height:38px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;justify-self:end;margin:0 12px 4px 0;font-size:1.3rem;position:sticky;top:0;box-shadow:0 4px 14px #0000001f}.billing-tier-carousel-shell{min-width:0;position:relative}.billing-paywall-dialog .billing-tier-carousel{padding:2px calc((100% - var(--tier-card-width)) / 2) 16px;margin:0}.billing-paywall-dialog>.billing-checkout-error{margin:0 18px}.billing-tier-nav,.billing-tier-position{display:none}.billing-external-transition{z-index:230;padding:calc(24px + var(--safe-top)) 24px calc(24px + var(--safe-bottom));background:var(--surface-strong);color:var(--text);text-align:center;align-content:center;justify-items:center;gap:12px;display:grid;position:fixed;inset:0}.billing-external-transition>span{background:var(--brand-soft);width:64px;height:64px;color:var(--brand);border-radius:50%;place-items:center;font-size:2rem;animation:1.2s linear infinite profile-spin;display:grid}.billing-external-transition>strong{font-size:1.12rem}.billing-external-transition>small{max-width:300px;color:var(--muted);font-size:.7rem;line-height:1.45}.billing-tier-carousel{--tier-card-width:min(86%, 330px);padding:4px calc((100% - var(--tier-card-width)) / 2) 16px;scroll-snap-type:x mandatory;scroll-padding-inline:calc((100% - var(--tier-card-width)) / 2);scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:11px;margin:0 -18px;display:flex;overflow-x:auto}.billing-tier-carousel::-webkit-scrollbar{display:none}.billing-tier-card{--tier-top:#e2ecf8;--tier-bottom:#ccd8f0;--tier-stroke:#7098d066;--tier-accent:#2a54a8;--tier-primary:#142040;--tier-secondary:#3c5480;--tier-button:#3858c0;width:var(--tier-card-width);min-width:var(--tier-card-width);scroll-snap-align:center;scroll-snap-stop:always;border:1px solid var(--tier-stroke);background:linear-gradient(155deg, var(--tier-top), var(--tier-bottom));min-height:485px;color:var(--tier-primary);box-shadow:0 14px 30px color-mix(in srgb, var(--tier-accent) 17%, transparent);border-radius:24px;flex-direction:column;align-items:center;padding:18px 16px 15px;display:flex;position:relative;overflow:hidden}.billing-tier-card[data-tier=musician]{--tier-top:#ede6f8;--tier-bottom:#dcd2f4;--tier-stroke:#8060c866;--tier-accent:#4e30a8;--tier-primary:#200a40;--tier-secondary:#402878;--tier-button:#6840cc}.billing-tier-card[data-tier=artist]{--tier-top:#fbf3e6;--tier-bottom:#f2e4cc;--tier-stroke:#b8803066;--tier-accent:#8a5808;--tier-primary:#2a1a04;--tier-secondary:#5a380c;--tier-button:#9c6b3a}:root[data-theme=concert] .billing-tier-card[data-tier=start]{--tier-top:#0d1628;--tier-bottom:#080e1c;--tier-stroke:#5b84c48c;--tier-accent:#9bb8e8;--tier-primary:#d4e2f8;--tier-secondary:#7a9bc8;--tier-button:#3858c0}:root[data-theme=concert] .billing-tier-card[data-tier=musician]{--tier-top:#120a2c;--tier-bottom:#0a0618;--tier-stroke:#8060c88c;--tier-accent:#b898e8;--tier-primary:#e0d8ff;--tier-secondary:#9880c8;--tier-button:#6840c8}:root[data-theme=concert] .billing-tier-card[data-tier=artist]{--tier-top:#1a1008;--tier-bottom:#100804;--tier-stroke:#b888308c;--tier-accent:#c09840;--tier-primary:#eed8a0;--tier-secondary:#a87830;--tier-button:#b88820}.billing-current-ribbon{background:var(--tier-accent);width:120px;color:var(--tier-bottom);letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:5px 0;font-size:.54rem;font-weight:850;position:absolute;top:14px;right:-31px;transform:rotate(42deg)}.billing-tier-emblem{border:1px solid color-mix(in srgb, var(--tier-accent) 34%, transparent);background:color-mix(in srgb, var(--tier-accent) 15%, transparent);width:64px;height:64px;color:var(--tier-accent);border-radius:50%;place-items:center;font-size:2rem;font-weight:800;display:grid}.billing-tier-card h2{color:var(--tier-primary);margin:8px 0 2px;font-size:1.28rem}.billing-tier-subtitle{min-height:18px;color:var(--tier-secondary);text-align:center;margin:0;font-size:.72rem}.billing-practice-line{min-height:50px;color:var(--tier-primary);text-align:center;justify-content:center;align-items:center;gap:8px;padding:9px 0 7px;font-size:.72rem;font-weight:720;display:flex}.billing-practice-line b{color:var(--tier-accent);font-size:1.35rem}.billing-tier-card ul{gap:9px;width:100%;margin:4px 0 14px;padding:0;list-style:none;display:grid}.billing-tier-card li{color:var(--tier-primary);align-items:flex-start;gap:8px;font-size:.7rem;line-height:1.35;display:flex}.billing-tier-card li span{background:color-mix(in srgb, var(--tier-accent) 14%, transparent);width:18px;height:18px;color:var(--tier-accent);border-radius:50%;flex:none;place-items:center;font-size:.65rem;font-weight:900;display:grid}.billing-periods{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;margin-top:auto;display:grid}.billing-periods:has(>:only-child){grid-template-columns:1fr}.billing-period-pill{border:1px solid color-mix(in srgb, var(--tier-accent) 28%, transparent);background:color-mix(in srgb, var(--tier-accent) 10%, transparent);text-align:center;border-radius:12px;gap:2px;min-width:0;padding:9px 7px;display:grid}.billing-period-pill[type=button]{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.billing-period-pill[type=button][data-selected=true]{border-color:var(--tier-accent);background:color-mix(in srgb, var(--tier-accent) 22%, transparent);box-shadow:0 0 0 2px color-mix(in srgb, var(--tier-accent) 18%, transparent)}.billing-period-pill[type=button]:disabled{cursor:not-allowed;opacity:.54}.billing-period-pill b{color:var(--tier-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.billing-period-pill small{color:var(--tier-secondary);font-size:.58rem}.billing-tier-card>button{background:var(--tier-button);color:#fff;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:13px;width:100%;min-height:44px;margin-top:9px;font-weight:800}:root[data-theme=concert] .billing-tier-card[data-tier=artist]>button{color:#180c00}.billing-tier-card>button:disabled{opacity:.72}.billing-trial-copy{width:100%;color:var(--tier-secondary);text-align:center;margin:8px 0 -2px;font-size:.58rem;line-height:1.35}.billing-operation-message{background:color-mix(in srgb, var(--green) 11%, var(--surface));color:var(--green);border-radius:12px;margin:0;padding:10px 12px;font-size:.7rem;line-height:1.45}.billing-checkout-error{border:1px solid color-mix(in srgb, #ef4444 45%, var(--line));background:color-mix(in srgb, #ef4444 11%, var(--surface));color:color-mix(in srgb, #ef4444 76%, var(--text));border-radius:12px;margin:0;padding:10px 12px;font-size:.7rem;line-height:1.45}.payment-return-page{min-height:100dvh;padding:calc(20px + var(--safe-top)) 16px calc(20px + var(--safe-bottom));background:radial-gradient(circle at 50% 0, var(--brand-soft), transparent 30rem), var(--bg);place-items:center;display:grid}.payment-return-card{border:1px solid var(--line);background:var(--surface-strong);width:min(100%,460px);box-shadow:var(--shadow);text-align:center;border-radius:28px;justify-items:center;gap:12px;padding:26px 22px;display:grid}.payment-return-card>img{object-fit:contain;width:64px;height:64px}.payment-return-icon{background:var(--brand-soft);width:54px;height:54px;color:var(--brand);border-radius:50%;place-items:center;font-size:1.5rem;font-weight:850;display:grid}.payment-return-card[data-state=checking] .payment-return-icon,.payment-return-card[data-state=pending] .payment-return-icon{animation:1.2s linear infinite profile-spin}.payment-return-card[data-state=success] .payment-return-icon{background:color-mix(in srgb, var(--green) 14%, var(--surface));color:var(--green)}.payment-return-card[data-state=failed] .payment-return-icon{background:color-mix(in srgb, #ef4444 12%, var(--surface));color:#ef4444}.payment-return-card .eyebrow{margin:2px 0 -7px}.payment-return-card h1{margin:0;font-size:1.7rem}.payment-return-card>p:not(.eyebrow){color:var(--muted);margin:0;font-size:.78rem;line-height:1.55}.payment-return-card>button,.payment-return-card>a{border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:14px;justify-content:center;align-items:center;width:100%;min-height:48px;font-weight:780;text-decoration:none;display:flex}.payment-return-card>a{border-color:var(--line);background:var(--surface);color:var(--text)}.payment-return-card>small{color:var(--muted);font-size:.64rem}.profile-personalization-error{background:color-mix(in srgb, #e06363 9%, var(--surface));border-radius:16px;grid-column:1/-1;gap:10px;padding:13px 14px;display:grid}.profile-personalization-error span{color:#e06363;font-size:.72rem;line-height:1.45}.profile-personalization-error button{border:1px solid color-mix(in srgb, #e06363 28%, var(--line));color:#e06363;cursor:pointer;background:0 0;border-radius:13px;min-height:40px;font-weight:760}.profile-security-note{background:var(--brand-soft);border-radius:17px;grid-column:1/-1;gap:5px;padding:14px 15px;display:grid}.profile-security-note strong{color:var(--brand);font-size:.78rem}.profile-security-note span{color:var(--muted);font-size:.7rem;line-height:1.45}.logout-button{border:1px solid var(--line);min-height:48px;color:var(--muted);cursor:pointer;background:0 0;border-radius:16px;grid-column:1/-1;font-size:.8rem;font-weight:760}.personalization-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:26px;gap:20px;padding:20px;display:grid}.personalization-heading{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:13px;display:grid}.personalization-heading>span{background:var(--brand-soft);width:48px;height:48px;color:var(--brand);border-radius:16px;place-items:center;font-size:1.25rem;font-weight:820;display:grid}.personalization-heading strong{font-size:.98rem}.personalization-heading p{color:var(--muted);margin:5px 0 0;font-size:.73rem;line-height:1.45}.personalization-group{gap:11px;display:grid}.personalization-group-title{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.personalization-group-title strong{font-size:.82rem}.personalization-group-title span{color:var(--muted);text-align:right;font-size:.63rem}.personalization-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.personalization-options button{border:1px solid var(--line);background:var(--surface-strong);min-width:0;min-height:52px;color:var(--text);text-align:left;cursor:pointer;border-radius:15px;grid-template-columns:28px minmax(0,1fr) 20px;align-items:center;gap:8px;padding:9px 11px;font-family:inherit;display:grid}.personalization-options button i{background:var(--brand-soft);width:28px;height:28px;color:var(--brand);border-radius:10px;place-items:center;font-style:normal;display:grid}.personalization-options button span{text-overflow:ellipsis;font-size:.72rem;font-weight:710;overflow:hidden}.personalization-options button b{color:var(--muted);text-align:center;font-size:.85rem}.personalization-options button.is-selected{border-color:color-mix(in srgb, var(--brand) 58%, var(--line));background:var(--brand-soft);color:var(--brand)}.personalization-options button.is-selected b{color:var(--brand)}.personalization-empty{background:var(--surface-strong);color:var(--muted);border-radius:14px;margin:0;padding:13px 14px;font-size:.7rem;line-height:1.45}.personalization-cancel{min-height:44px;color:var(--brand);cursor:pointer;background:0 0;border:0;font-size:.72rem;font-weight:760}.personalization-cancel:disabled{cursor:wait;opacity:.55}.profile-intro{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:13px;display:grid}.profile-intro>span{background:var(--brand-soft);width:48px;height:48px;color:var(--brand);border-radius:16px;place-items:center;font-size:1.2rem;display:grid}.profile-intro strong{font-size:.98rem}.profile-intro p{color:var(--muted);margin:5px 0 0;font-size:.74rem;line-height:1.45}.login-form{gap:13px;display:grid}.login-form label{gap:6px;display:grid}.login-form label>span{color:var(--muted);padding-left:3px;font-size:.7rem;font-weight:720}.login-form input{border:1px solid var(--line);background:var(--surface-strong);width:100%;min-height:50px;color:var(--text);border-radius:16px;outline:none;padding:0 14px;font-size:.86rem}.login-form input:focus-visible{border-color:color-mix(in srgb, var(--brand) 68%, var(--line));box-shadow:0 0 0 3px var(--brand-soft)}.login-error{background:color-mix(in srgb, #e06363 10%, var(--surface));color:#e06363;border-radius:14px;margin:0;padding:11px 13px;font-size:.72rem;line-height:1.4}.auth-notice{background:color-mix(in srgb, var(--brand) 11%, var(--surface));color:var(--brand);border-radius:14px;margin:0;padding:11px 13px;font-size:.72rem;line-height:1.45}.login-button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:16px;min-height:50px;font-size:.84rem;font-weight:790}.login-button:disabled{cursor:wait;opacity:.66}.auth-links{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-links.is-centered{justify-content:center}.auth-links button{min-height:34px;color:var(--brand);cursor:pointer;background:0 0;border:0;padding:2px 3px;font-size:.7rem;font-weight:740}.auth-links button:disabled{cursor:wait;opacity:.55}.login-form .auth-code-input{text-align:center;letter-spacing:.34em;font-size:1.25rem;font-weight:780}.legal-checks{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-strong) 82%, var(--brand-soft));border-radius:16px;gap:12px;padding:14px;display:grid}.legal-checks label{cursor:pointer;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px}.legal-checks input,.login-form .legal-checks input{width:18px;height:18px;min-height:18px;accent-color:var(--brand);margin:1px 0 0;padding:0}.legal-checks label>span{color:var(--muted);padding:0;font-size:.68rem;font-weight:560;line-height:1.45}.legal-checks a{color:var(--brand);font-weight:720}.legal-checks small{color:var(--muted);font-size:.65rem}.auth-divider{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:.66rem;display:grid}.auth-divider:before,.auth-divider:after{background:var(--line);content:"";height:1px}.social-login-grid{gap:10px;display:grid}.social-login-button{border:1px solid var(--line);cursor:pointer;border-radius:16px;justify-content:center;align-items:center;min-height:50px;padding:0 16px;font-family:inherit;font-size:.8rem;font-weight:780;text-decoration:none;display:flex}.social-login-button:disabled{opacity:.48;cursor:not-allowed}.social-login-button.is-vk{border-color:color-mix(in srgb, #2787f5 46%, var(--line));background:color-mix(in srgb, #2787f5 13%, var(--surface));color:color-mix(in srgb, #2787f5 82%, var(--text))}.social-login-button.is-yandex{border-color:color-mix(in srgb, #f43 42%, var(--line));background:color-mix(in srgb, #f43 10%, var(--surface));color:color-mix(in srgb, #f43 76%, var(--text))}.social-login-note{color:var(--muted);text-align:center;margin:0;font-size:.68rem;line-height:1.5}.bottom-nav{z-index:50;width:min(100%,760px);height:calc(var(--nav-height) + var(--safe-bottom));padding:calc(7px + var(--safe-bottom)) 8px 0;box-shadow:none;isolation:isolate;background:0 0;border-top:0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav:before{z-index:-1;top:var(--safe-bottom);border-top:1px solid var(--line);background:var(--surface-strong);box-shadow:0 -10px 34px color-mix(in srgb, var(--shadow) 32%, transparent);content:"";pointer-events:none;position:absolute;bottom:0;left:0;right:0}.bottom-nav button{min-width:0;min-height:58px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:16px;align-content:center;place-items:center;gap:3px;display:grid}.bottom-nav button[data-active=true]{background:var(--brand-soft);color:var(--brand)}.bottom-nav span{font-size:1.2rem;font-weight:800;line-height:1}.bottom-nav small{text-overflow:ellipsis;font-size:.66rem;font-weight:720;overflow:hidden}.player-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05040a8f;justify-content:center;align-items:flex-end;min-height:0;padding-top:0;display:flex;position:fixed;inset:0}.player-sheet{overscroll-behavior:contain;width:min(100%,760px);height:100%;min-height:0;max-height:100%;padding:38px 24px calc(24px + var(--safe-bottom));border:1px solid var(--line);background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--gold) 18%, transparent), transparent 32%), linear-gradient(180deg, var(--surface-strong), color-mix(in srgb, var(--surface-strong) 85%, var(--gold)));border-bottom:0;border-radius:34px 34px 0 0;flex-direction:column;display:flex;position:relative;overflow-y:auto;box-shadow:0 -25px 90px #00000057}.sheet-handle{background:var(--line);border-radius:999px;width:56px;height:5px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.player-close{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:2rem;position:absolute;top:18px;right:18px}.chord-focus-zone{flex:170px;grid-template-rows:minmax(28px,auto) 12px minmax(82px,1fr);align-items:stretch;min-height:145px;padding:8px 0 4px;display:grid}.next-chord,.current-chord{justify-content:center;align-items:center;min-width:0;display:flex}.next-chord{color:var(--muted);opacity:.59}.current-chord{color:var(--text);padding:4px 0 10px}.chord-symbol-host{justify-content:center;align-items:center;width:100%;min-width:0;display:flex}.chord-symbol{width:max-content;max-width:none;color:inherit;letter-spacing:-.055em;white-space:nowrap;align-items:center;font-weight:780;line-height:.9;display:inline-flex}.chord-symbol--current{font-size:clamp(58px,15vw,72px)}.chord-symbol--next{font-size:30px}.chord-symbol__base{align-items:baseline;display:inline-flex}.chord-symbol__base sup{margin-right:.02em;font-size:.5em;line-height:0;position:relative;top:-.38em}.chord-symbol__extensions{letter-spacing:0;flex-direction:column;align-self:center;gap:0;margin-left:.1em;font-size:.5em;line-height:.9;display:inline-flex}.chord-symbol__extensions strong,.chord-symbol__extensions small{font:inherit;line-height:inherit;white-space:pre}.chord-symbol__extensions strong{font-weight:780}.chord-symbol__extensions small{font-weight:500}.chord-symbol__slash{letter-spacing:0;align-self:flex-end;margin-left:.1em;padding-bottom:.08em;font-size:.5em;font-weight:780}.chord-symbol--fallback{letter-spacing:0;text-align:center;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;line-height:1.05;display:-webkit-box;overflow:hidden}.chord-symbol--animate{animation:.22s cubic-bezier(.2,.65,.3,1) both chord-symbol-fade}@keyframes chord-symbol-fade{0%{opacity:0}to{opacity:1}}.player-queue-context{border:1px solid color-mix(in srgb, var(--brand) 44%, var(--line));background:color-mix(in srgb, var(--brand-soft) 58%, transparent);min-height:34px;color:var(--brand);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;padding:8px 12px;font-size:.67rem;font-weight:760;display:flex}.player-queue-context span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.player-queue-context b{flex:none;font-size:.68rem}.player-copy p{margin:0;font-size:1.02rem;font-weight:820}.player-copy span{color:var(--muted);margin-top:7px;font-size:.8rem;display:block}.player-login-note{border:1px solid var(--line);background:var(--surface);border-radius:17px;gap:5px;margin-top:22px;padding:14px 16px;display:grid}.player-login-note strong{color:var(--brand);font-size:.82rem}.player-login-note span{color:var(--muted);font-size:.72rem;line-height:1.45}.player-login-note button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:13px;min-height:42px;margin-top:8px;font-weight:760}.player-login-note.is-error{border-color:color-mix(in srgb, #ef4444 48%, var(--line))}.player-login-note.is-error strong,.player-inline-error{color:#ef4444}.player-limit-note button{background:var(--brand)}.player-sheet audio{display:none}.seek-row{color:var(--muted);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-top:18px;font-size:.75rem;display:grid}.seek-row input[type=range]{z-index:1;appearance:none;width:100%;height:38px;accent-color:var(--gold);cursor:pointer;touch-action:none;background:0 0;margin:0;position:relative}.seek-track-shell{--fragment-start:0%;--fragment-end:100%;align-items:center;min-width:0;height:52px;display:flex;position:relative}.seek-track-shell>input[type=range]{flex:1}.seek-track-shell.is-fragment>input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, color-mix(in srgb, var(--muted) 18%, var(--line)) 0 var(--fragment-start), color-mix(in srgb, var(--brand) 24%, var(--line)) var(--fragment-start) var(--fragment-end), color-mix(in srgb, var(--muted) 18%, var(--line)) var(--fragment-end) 100%)}.fragment-selection{z-index:2;left:var(--fragment-start);right:calc(100% - var(--fragment-end));background:color-mix(in srgb, var(--brand) 72%, var(--gold));height:7px;box-shadow:0 0 0 1px color-mix(in srgb, var(--brand) 45%, transparent), 0 3px 12px color-mix(in srgb, var(--brand) 22%, transparent);pointer-events:none;border-radius:999px;position:absolute;top:22.5px}.fragment-handle{z-index:4;width:44px;height:44px;color:var(--brand);cursor:ew-resize;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;padding:0;position:absolute;top:4px;transform:translate(-50%)}.fragment-handle:before{content:"";width:13px;filter:drop-shadow(0 2px 3px color-mix(in srgb, var(--brand) 25%, transparent));border-top:3px solid;border-bottom:3px solid;position:absolute;top:8px;bottom:8px}.fragment-handle.is-start:before{border-left:3px solid;border-radius:4px 0 0 4px;left:15px}.fragment-handle.is-end:before{border-right:3px solid;border-radius:0 4px 4px 0;right:15px}.fragment-handle span{color:var(--brand);font-size:.54rem;font-weight:850;line-height:1;position:absolute;top:-7px;left:50%;transform:translate(-50%)}.fragment-time-label{z-index:3;color:var(--brand);pointer-events:none;justify-content:space-between;font-size:.56rem;font-weight:760;display:flex;position:absolute;bottom:-12px;left:0;right:0}.seek-row input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--gold) 0 var(--seek-progress), color-mix(in srgb, var(--gold) 16%, var(--line)) var(--seek-progress) 100%);border-radius:999px;height:7px}.seek-row input[type=range]::-webkit-slider-thumb{appearance:none;border:3px solid var(--surface-strong);background:var(--gold);width:28px;height:28px;box-shadow:0 3px 12px color-mix(in srgb, var(--gold) 42%, transparent);border-radius:50%;margin-top:-10.5px}.seek-row input[type=range]::-moz-range-track{background:color-mix(in srgb, var(--gold) 16%, var(--line));border-radius:999px;height:7px}.seek-row input[type=range]::-moz-range-progress{background:var(--gold);border-radius:999px;height:7px}.seek-row input[type=range]::-moz-range-thumb{border:3px solid var(--surface-strong);background:var(--gold);border-radius:50%;width:24px;height:24px}.play-button{border:1px solid color-mix(in srgb, var(--gold) 66%, white);background:linear-gradient(145deg, #f7d995, var(--gold));color:#24170b;width:76px;height:76px;box-shadow:0 14px 34px color-mix(in srgb, var(--gold) 30%, transparent);cursor:pointer;border-radius:50%;margin:0;font-size:1.8rem}.play-button:disabled{cursor:not-allowed;filter:grayscale(.55);opacity:.48}.player-transport{grid-template-columns:58px 76px 58px;justify-content:center;align-items:center;gap:18px;margin-top:14px;display:grid}.skip-button{border:1px solid var(--line);background:var(--surface);width:58px;height:58px;color:var(--text);cursor:pointer;border-radius:50%;font-size:.88rem;font-weight:800}.skip-button:disabled{cursor:not-allowed;opacity:.42}.player-inline-error{text-align:center;margin:12px 0 0;font-size:.76rem;line-height:1.4}.player-control-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.player-mode-controls{grid-template-columns:1fr 1fr;gap:8px;min-width:0;display:grid}.player-stepper{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 84%, var(--gold));border-radius:999px;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;min-width:0;display:grid;overflow:hidden}.player-stepper button{min-height:54px;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:1.28rem}.player-stepper button:disabled{cursor:not-allowed;opacity:.35}.player-stepper span{text-align:center;gap:2px;min-width:0;display:grid}.player-stepper small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;overflow:hidden}.player-stepper strong{color:var(--text);font-size:.86rem}.repeat-button,.fragment-button{border:1px solid var(--line);background:var(--surface);min-height:56px;color:var(--muted);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;font-size:1.12rem;display:flex}.repeat-button span,.fragment-button span{font-size:.76rem;font-weight:720}.fragment-button{flex-direction:column;gap:1px;font-size:.76rem}.fragment-button b{letter-spacing:.02em;font-size:.72rem}.repeat-button.is-active,.fragment-button.is-active{border-color:color-mix(in srgb, var(--brand) 62%, var(--line));background:var(--brand-soft);color:var(--brand)}.repeat-button:disabled,.fragment-button:disabled{cursor:default;opacity:.72}.player-library-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.player-library-actions button{border:1px solid var(--line);background:var(--surface);min-height:50px;color:var(--muted);cursor:pointer;border-radius:16px;justify-content:center;align-items:center;gap:8px;font-size:.74rem;font-weight:740;display:flex}.player-library-actions button span{color:var(--brand);font-size:1.18rem}.player-library-actions button.is-active{border-color:color-mix(in srgb, var(--brand) 62%, var(--line));background:var(--brand-soft);color:var(--brand)}.player-library-actions button:disabled{cursor:not-allowed;opacity:.5}.player-library-message{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-strong) 94%, transparent);min-height:38px;color:var(--text);text-align:center;box-shadow:var(--shadow);pointer-events:none;border-radius:14px;margin:8px 0 0;padding:10px 14px;font-size:.7rem;line-height:1.4;transition:opacity .16s,visibility .16s}.player-library-message[data-visible=false]{visibility:hidden;opacity:0}.playlist-modal-backdrop{z-index:5;padding:18px 12px calc(18px + var(--safe-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05040a9e;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.playlist-picker{border:1px solid var(--line);background:var(--surface-strong);width:min(100%,520px);max-height:min(72svh,560px);box-shadow:var(--shadow);overscroll-behavior:contain;border-radius:24px;gap:8px;margin:0;padding:18px;display:grid;overflow-y:auto}.playlist-picker>div{justify-content:space-between;align-items:center;display:flex}.playlist-picker>div>strong{font-size:.82rem}.playlist-picker>div>button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1.25rem}.playlist-picker>button{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--text);text-align:left;cursor:pointer;border-radius:13px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:0 13px;display:grid}.playlist-picker>button span{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:720;overflow:hidden}.playlist-picker>button small{color:var(--muted);font-size:.62rem}.playlist-picker>button b{color:var(--brand);font-size:1rem}.playlist-picker>p{color:var(--muted);margin:4px;font-size:.72rem;line-height:1.5}.playlist-picker>.playlist-create-row{grid-template-columns:minmax(0,1fr) 42px;gap:8px;display:grid}.playlist-create-row input{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:42px;color:var(--text);font:inherit;border-radius:12px;padding:0 12px;font-size:.72rem}.playlist-picker>.playlist-create-row>button{background:var(--brand);color:#fff;border-radius:12px;width:42px;height:42px;font-size:1.1rem}.playlist-picker>.playlist-create-row>button:disabled{cursor:not-allowed;opacity:.45}.player-tools{grid-template-columns:1fr 64px 64px;gap:12px;margin-top:22px;display:grid}.player-tools button{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 80%, var(--gold));min-height:58px;color:var(--muted);cursor:pointer;border-radius:999px;font-size:1.15rem}.player-tools strong{color:var(--text);margin:0 13px;font-size:.98rem}.offline-fallback{min-height:100svh;padding:calc(32px + var(--safe-top)) 28px calc(32px + var(--safe-bottom));text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.offline-fallback img{filter:drop-shadow(0 16px 30px #00000059)}.offline-fallback h1{letter-spacing:-.05em;margin:3px 0 12px;font-size:2rem}.offline-fallback>p:not(.eyebrow){max-width:440px;color:var(--muted);margin:0;line-height:1.6}.offline-fallback a{background:var(--brand);color:#fff;border-radius:999px;align-items:center;min-height:48px;margin-top:26px;padding:0 20px;font-weight:750;text-decoration:none;display:inline-flex}.web-push-onboarding-backdrop{z-index:1200;padding:24px 16px calc(18px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(7px);background:#18141247;place-items:end center;display:grid;position:fixed;inset:0}.web-push-onboarding-dialog{border:1px solid color-mix(in srgb, var(--line) 72%, transparent);background:color-mix(in srgb, var(--surface) 96%, transparent);width:min(100%,430px);color:var(--text);text-align:center;border-radius:28px;padding:24px 22px 12px;box-shadow:0 24px 64px #1c141047}.web-push-onboarding-icon{background:color-mix(in srgb, var(--brand) 16%, var(--surface));width:64px;height:64px;color:var(--brand);border-radius:21px;place-items:center;margin:0 auto 16px;font-size:2rem;font-weight:800;display:grid}.web-push-onboarding-dialog>span{color:var(--brand);letter-spacing:.18em;font-size:.68rem;font-weight:850}.web-push-onboarding-dialog h2{letter-spacing:-.04em;margin:8px 0 10px;font-size:clamp(1.4rem,7vw,1.8rem)}.web-push-onboarding-dialog p{color:var(--muted);margin:0 auto 22px;font-size:.9rem;line-height:1.5}.web-push-onboarding-error{color:#c74462;margin:-8px 0 14px;font-size:.78rem;font-weight:700}.web-push-onboarding-primary,.web-push-onboarding-secondary{width:100%;min-height:52px;font:inherit;border-radius:16px;font-weight:800}.web-push-onboarding-primary{background:var(--brand);color:#fff}.web-push-onboarding-secondary{color:var(--brand);background:0 0;margin-top:4px}.web-push-onboarding-primary:disabled,.web-push-onboarding-secondary:disabled{opacity:.55}@media (min-width:720px){.app-frame{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 76%, transparent);height:calc(100dvh - 36px);min-height:calc(100dvh - 36px);box-shadow:var(--shadow);border-radius:30px;margin-block:18px;overflow:hidden}.app-topbar{border-radius:30px 30px 0 0;top:18px}.bottom-nav{border:1px solid var(--line);border-radius:0 0 30px 30px;bottom:18px}.billing-tier-nav{z-index:7;border:1px solid color-mix(in srgb, var(--brand) 30%, var(--line));background:color-mix(in srgb, var(--surface-strong) 92%, transparent);width:46px;height:46px;color:var(--brand);cursor:pointer;border-radius:50%;place-items:center;font-size:2rem;line-height:1;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 8px 24px #0003}.billing-tier-nav:hover:not(:disabled){border-color:var(--brand);background:var(--surface-strong);transform:translateY(-50%)scale(1.05)}.billing-tier-nav:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 34%, transparent);outline-offset:2px}.billing-tier-nav:disabled{opacity:.3;cursor:default}.billing-tier-nav-previous{left:8px}.billing-tier-nav-next{right:8px}.billing-tier-position{color:var(--muted);text-align:center;margin:-6px 0 5px;font-size:.68rem;font-weight:750;display:block}}@media (display-mode:standalone) and (min-width:720px){.app-frame{background:radial-gradient(circle at 15% -10%, var(--brand-soft), transparent 34rem), var(--bg);width:100%;height:100dvh;min-height:100dvh;box-shadow:none;border:0;border-radius:0;margin:0}.app-topbar{border-radius:0;width:100%;top:0}.bottom-nav{border-bottom:0;border-left:0;border-right:0;border-radius:0;width:100%;bottom:0}}@media (max-width:390px){.brand-lockup strong{display:none}.practice-card{grid-template-columns:30px minmax(0,1fr) 1px minmax(44px,auto) 1px minmax(40px,auto);gap:6px;padding-inline:9px}.practice-guitar{width:30px;height:30px;font-size:1.35rem}.practice-main>span{font-size:.62rem}.practice-main strong{font-size:.8rem}.practice-main b{font-size:.68rem}.practice-main em{min-width:25px;font-size:.68rem}.practice-stat strong{font-size:.66rem}.practice-stat span{font-size:.56rem}.practice-limit-panel{grid-template-columns:16px minmax(0,1fr);margin-inline:-9px;padding-inline:10px}.practice-limit-panel button{grid-column:2;width:max-content}.practice-connectivity-panel{grid-template-columns:16px minmax(0,1fr);margin-inline:-9px;padding-inline:10px}.practice-connectivity-panel button{grid-column:2;width:max-content}.track-row{grid-template-columns:60px minmax(0,1fr)}.track-artwork{width:60px;height:60px}.track-duration{display:none}.player-sheet{padding-inline:18px}.category-filter-row{grid-template-columns:1fr}.reset-filters{grid-column:auto}}.beta-access-backdrop{z-index:300;padding:max(24px, env(safe-area-inset-top)) 22px max(24px, env(safe-area-inset-bottom));background:color-mix(in srgb, var(--bg) 84%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);place-items:center;display:grid;position:fixed;inset:0}.beta-access-card{border:1px solid color-mix(in srgb, var(--brand) 28%, var(--line));background:var(--surface);text-align:center;border-radius:32px;width:min(100%,430px);padding:30px 24px 24px;box-shadow:0 28px 80px #130b223d}.beta-access-mark{background:linear-gradient(145deg, var(--brand), #8d55df);color:#fff;width:72px;height:72px;box-shadow:0 16px 36px color-mix(in srgb, var(--brand) 30%, transparent);border-radius:24px;place-items:center;margin:0 auto 18px;font-size:2.15rem;font-weight:850;display:grid}.beta-access-card>small{color:var(--brand);letter-spacing:.16em;font-size:.7rem;font-weight:850}.beta-access-card h1{margin:8px 0 10px;font-size:clamp(1.65rem,8vw,2.1rem)}.beta-access-card>p{color:var(--muted);margin:0;line-height:1.5}.beta-access-note{background:var(--brand-soft);color:var(--text);text-align:left;border-radius:18px;margin:20px 0;padding:15px 16px;font-size:.88rem;line-height:1.45}.beta-access-card .login-button{width:100%}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
