:root{--bg: #0e0f13;--card: #181a22;--card-2: #20232d;--text: #f4f4f6;--muted: #a9adba;--accent: #ff7a18;--accent-2: #ffb86b;--danger: #ff4d4d;--good: #33d17a;--border: rgba(255,255,255,.09);--shadow: 0 18px 45px rgba(0,0,0,.24)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 28px;background:#0e0f13db;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:12px;cursor:pointer}.brand-mark,.avatar{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--accent),#d83d00);font-weight:900;color:#fff;box-shadow:var(--shadow)}.brand h1{margin:0;font-size:1.25rem}.brand p{margin:0;color:var(--muted);font-size:.8rem}.nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.nav-btn,.text-btn{border:0;background:transparent;color:var(--muted);padding:9px 12px;border-radius:12px}.nav-btn.active,.nav-btn:hover{background:var(--card-2);color:var(--text)}main{width:min(1200px,calc(100% - 32px));margin:28px auto 60px}.view{display:none}.active-view{display:block;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.card{background:linear-gradient(180deg,rgba(255,255,255,.035),transparent),var(--card);border:1px solid var(--border);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.hero{display:grid;grid-template-columns:1.6fr .8fr;gap:24px;align-items:center}.hero h2{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:12px 0;max-width:850px}.hero p{color:var(--muted);font-size:1.05rem;max-width:780px}.hero-actions,.inline-controls{display:flex;gap:10px;flex-wrap:wrap}.hero-stats{display:grid;gap:12px}.hero-stats div,.stat{background:var(--card-2);border-radius:18px;padding:18px;border:1px solid var(--border)}.hero-stats strong,.stat strong{display:block;font-size:2rem}.hero-stats span,.stat span,.muted{color:var(--muted)}.primary,.secondary{border:0;border-radius:14px;padding:11px 16px;font-weight:800}.primary{background:var(--accent);color:#17110b}.secondary{background:var(--card-2);color:var(--text);border:1px solid var(--border)}.small{padding:8px 12px;font-size:.9rem}.pill{display:inline-flex;padding:7px 10px;border-radius:999px;background:#ff7a1824;color:var(--accent-2);font-weight:800}.grid{display:grid;gap:18px;margin-top:18px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head h2,.section-head h3,.card h2,.card h3{margin:0}.toolbar,.filters{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.filters input{flex:1;min-width:220px}input,select,textarea{background:var(--card-2);color:var(--text);border:1px solid var(--border);border-radius:14px;padding:12px 13px;outline:none}textarea{min-height:120px;resize:vertical}.album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}.album-card{padding:14px;transition:transform .15s ease,border-color .15s ease}.album-card:hover{transform:translateY(-4px);border-color:#ff7a1880}.cover{aspect-ratio:1;border-radius:18px;background:linear-gradient(135deg,#313544,#11131a);display:grid;place-items:center;font-size:2.8rem;font-weight:900;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover}.album-info h4{margin:13px 0 4px;font-size:1.05rem}.album-info p{margin:0;color:var(--muted);font-size:.92rem}.meta-row,.album-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;flex-wrap:wrap}.score{color:var(--accent-2);font-weight:900}.type-badge{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.album-list{display:grid;gap:12px}.album-list.compact .mini-album,.feed-item,.friend-item,.compare-row,.request-item,.rating-row,.suggestion-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;background:var(--card-2);border:1px solid var(--border);border-radius:16px}.mini-cover{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#333846;font-weight:900}.feed{display:grid;gap:12px}.profile-header{display:flex;align-items:center;gap:18px}.profile-actions{margin-left:auto}.rating-table{display:grid;gap:10px}.rating-row{grid-template-columns:minmax(170px,1fr) auto auto auto}.tag{background:#ffffff14;color:var(--muted);border-radius:999px;padding:5px 8px;font-size:.78rem}.friends-list,.compare-list,.sent-suggestions,.request-list{display:grid;gap:12px;margin-top:14px}.suggestion-form,#requestForm{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}#requestForm{grid-template-columns:1fr 1fr 160px}#requestForm textarea,#requestForm button{grid-column:1 / -1}.request-card{margin-bottom:18px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:grid;place-items:center;padding:18px;z-index:50}.modal.hidden{display:none}.modal-content{width:min(860px,100%);max-height:90vh;overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:26px;padding:24px;box-shadow:var(--shadow);position:relative}.close{position:absolute;top:14px;right:16px;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);color:var(--text);background:var(--card-2);font-size:1.4rem}.modal-grid{display:grid;grid-template-columns:240px 1fr;gap:22px}.track-list{display:grid;gap:8px;margin-top:14px}.track-row{display:grid;grid-template-columns:1fr 80px;gap:10px;align-items:center}.track-row input{width:100%}.review-box{display:grid;gap:10px;margin-top:16px}.list-toggles{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.toggle.active{outline:2px solid var(--accent)}.good{color:var(--good)}.bad{color:var(--danger)}@media (max-width: 820px){.topbar{align-items:flex-start;flex-direction:column}.hero,.two,.four,.modal-grid{grid-template-columns:1fr}.toolbar,.filters,.profile-header,.section-head.stack-on-mobile{align-items:stretch;flex-direction:column}.suggestion-form,#requestForm,.rating-row{grid-template-columns:1fr}}.row-button{width:100%;cursor:pointer}.card-button{display:block}.grid-space{margin-top:18px}.brand-button,.row-button,.card-button{border:0;color:inherit;font:inherit;text-align:left}.brand-button{background:transparent;padding:0}.card-button{width:100%}.spotify-panel{margin-bottom:18px}.spotify-search-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.spotify-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:14px}.spotify-result{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;background:var(--card-2);border:1px solid var(--border);border-radius:16px}@media (max-width: 700px){.spotify-search-row,.spotify-result{grid-template-columns:1fr}}.spotify-panel{margin-bottom:18px;overflow:hidden}.spotify-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center}.spotify-status{margin:14px 0 0}.spotify-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin-top:18px}.spotify-result{position:relative;display:grid;grid-template-columns:1fr;gap:12px;align-items:start;padding:14px;background:var(--card-2);border:1px solid var(--border);border-radius:20px;overflow:hidden;min-height:100%}.spotify-result .cover{width:100%;aspect-ratio:1 / 1;border-radius:16px}.spotify-result-info h4{margin:6px 0 5px;line-height:1.2;font-size:1rem}.spotify-result-info p{margin:3px 0}.spotify-import-btn{width:100%;justify-content:center;text-align:center}button:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 760px){.spotify-search-row{grid-template-columns:1fr}.spotify-results{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}}.album-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.album-card{padding:10px!important}.album-info h4{font-size:.95rem}.album-info p,.album-info .meta-row{font-size:.78rem}.spotify-search-row{align-items:center}.spotify-search-row input{flex:1}.profile-page{max-width:1400px;margin:0 auto}.profile-hero{display:grid;grid-template-columns:1fr auto;align-items:end;gap:24px;padding:8px 0 20px}.profile-main{display:flex;align-items:center;gap:26px}.profile-avatar-large{width:132px;height:132px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#d9dde3;color:#353942;font-size:2.4rem;font-weight:900}.profile-avatar-large img{width:100%;height:100%;object-fit:cover}.profile-main h2{margin:0 0 14px;font-size:clamp(2rem,4vw,3.2rem);font-weight:400}.profile-stats-strip{display:flex;align-items:center;justify-content:flex-end}.profile-stats-strip div{min-width:96px;padding:0 18px;text-align:center;border-left:1px solid var(--border)}.profile-stats-strip strong{display:block;font-size:2.1rem;font-weight:400}.profile-stats-strip span{color:var(--muted);text-transform:uppercase;font-size:.8rem}.profile-tabs{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));margin-bottom:22px;border-radius:4px;overflow:hidden;border:1px solid var(--border)}.profile-tabs button{border:0;padding:14px 16px;background:var(--card-2);color:var(--text);text-transform:uppercase;letter-spacing:.08em}.profile-tabs button.active{background:#ffffff1f}.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}.profile-left{display:grid;gap:34px}.profile-shelf{border-bottom:1px solid var(--border);padding-bottom:26px}.profile-shelf .section-head{border-bottom:1px solid var(--border);padding-bottom:8px;margin-bottom:20px}.profile-shelf h3,.profile-sidebar h3{text-transform:uppercase;letter-spacing:.08em;font-size:1.05rem}.profile-album-row{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:20px;align-items:start}.profile-album-tile{background:transparent;padding:0}.profile-album-tile .cover{border-radius:2px}.profile-album-tile p{margin:10px 0 2px;color:var(--muted)}.profile-album-tile h4{margin:0;font-size:.98rem}.profile-sidebar{position:sticky;top:96px;border-radius:4px;padding:18px}.profile-bio{white-space:pre-line;line-height:1.42}.distribution-chart{display:grid;gap:8px;margin-top:12px}.distribution-row{display:grid;grid-template-columns:58px 1fr 28px;gap:10px;align-items:center;font-size:.9rem}.distribution-row div{height:13px;background:#ffffff1a;border-radius:3px;overflow:hidden}.distribution-row i{display:block;height:100%;background:var(--accent-2)}.distribution-row em{color:var(--muted);font-style:normal}.average-rating{margin-top:16px;color:var(--muted)}.profile-tab-page{padding-top:10px}.profile-subfilters{display:flex;align-items:center;gap:22px;padding:16px 0 24px;border-bottom:1px solid var(--border);flex-wrap:wrap}.profile-subfilters button{border:0;background:transparent;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;padding:0}.profile-subfilters button.active{color:var(--text);font-weight:800}.profile-subfilters input{margin-left:auto;min-width:min(480px,100%)}.profile-rated-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:28px;padding-top:34px}.profile-rated-card{background:transparent;padding:0}.profile-rated-card .cover{border-radius:2px}.profile-rated-card p{color:var(--muted);margin:10px 0 2px}.profile-rated-card h4{margin:0 0 4px}.profile-rated-card span{color:var(--muted);font-size:.9rem}.album-info h4,.profile-rated-card h4,.profile-album-tile h4{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.36em}.profile-rated-card .row-button,.profile-album-tile{height:100%}.profile-card-score{margin-top:10px;display:flex;align-items:center;gap:14px;border-top:1px dotted var(--border);padding-top:10px}.profile-card-score strong{color:var(--accent-2);font-size:1.3rem}.profile-card-score small{color:var(--muted)}.settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.settings-card{display:grid;gap:12px}.settings-card label{color:var(--muted);font-weight:700}.settings-search-results{display:grid;gap:12px;margin-top:14px}@media (max-width: 1000px){.profile-hero,.profile-layout,.settings-layout{grid-template-columns:1fr}.profile-stats-strip{justify-content:flex-start;flex-wrap:wrap}.profile-album-row{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.profile-sidebar{position:static}}@media (max-width: 650px){.profile-main{align-items:flex-start;flex-direction:column}.profile-tabs{grid-template-columns:repeat(2,1fr)}.profile-stats-strip div{min-width:82px;padding:10px}}.settings-layout-stacked{display:grid;grid-template-columns:minmax(0,1fr);max-width:980px;margin:0 auto}.favourites-settings-card .spotify-result,.compact-favourite-result{grid-template-columns:74px 1fr auto;min-height:0}.favourites-settings-card .spotify-result .cover,.compact-favourite-result .cover{width:74px;height:74px;border-radius:10px}.compact-search-results{grid-template-columns:1fr}.settings-favourites-list .mini-cover{width:56px;height:56px}.compact-tabs{display:flex;align-items:center;width:fit-content;min-width:420px;max-width:100%}.compact-tabs button{min-width:96px;padding:9px 14px;font-size:.82rem}.profile-lists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.profile-list-card{border-radius:12px}.mini-cover-row{display:flex;gap:8px;margin-top:14px}.profile-action-card{display:grid;gap:10px}.profile-action-card>.row-button{background:transparent;padding:0}.album-card-actions{display:flex;flex-wrap:wrap;gap:6px}.album-card-actions button{border:1px solid var(--border);background:var(--card-2);color:var(--muted);border-radius:999px;padding:5px 8px;font-size:.72rem}.album-card-actions button.active{color:var(--text);border-color:#ff7a1899;background:#ff7a1829}.song-rating-list{display:grid;gap:8px}.song-rating-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--card-2)}.song-rating-row p{margin:3px 0 0}@media (max-width: 760px){.compact-tabs{width:100%;min-width:0}.compact-tabs button{flex:1;min-width:0}.favourites-settings-card .spotify-result,.compact-favourite-result{grid-template-columns:1fr}.favourites-settings-card .spotify-result .cover,.compact-favourite-result .cover{width:100%;height:auto}}.no-gradient-page{background:var(--bg)}body:has(.no-gradient-page){background:var(--bg)}.smaller-profile-hero{align-items:center;padding-top:0}.profile-avatar-large.compact-avatar{width:92px;height:92px;font-size:1.65rem}.smaller-profile-hero .profile-main{gap:18px}.smaller-profile-hero .profile-main h2{font-size:clamp(1.7rem,3vw,2.5rem)}.albums-page-view{padding-top:4px}.albums-tabs{width:auto;min-width:0;flex-wrap:wrap;margin-bottom:16px}.albums-tabs button{min-width:auto;padding:8px 12px;font-size:.78rem}.album-page-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,240px);gap:12px;margin:16px 0 4px}.rating-value{display:inline-grid;gap:4px;min-width:46px;align-items:start}.rating-value strong{font-size:1.1rem;line-height:1}.rating-bar{display:block;width:42px;height:5px;background:#ffffff38;overflow:hidden;border-radius:1px}.rating-bar.small{width:34px;height:4px}.rating-bar i{display:block;height:100%}.profile-card-score{align-items:end}.profile-card-score strong{color:inherit}.song-rating-row .rating-value{justify-items:end}.distribution-row div{background:#ffffff26}@media (max-width: 760px){.album-page-controls{grid-template-columns:1fr}.profile-avatar-large.compact-avatar{width:76px;height:76px}}.fixed-home-list .mini-album,.album-list.compact .mini-album,.feed-item,.suggestion-item,.friend-item,.compare-row{overflow:hidden}.fixed-home-list .mini-cover,.album-list.compact .mini-cover,.feed-item .mini-cover,.suggestion-item .mini-cover,.friend-item .mini-cover{width:54px;height:54px;min-width:54px;border-radius:10px;overflow:hidden}.fixed-home-list .mini-cover img,.album-list.compact .mini-cover img,.feed-item .mini-cover img,.suggestion-item .mini-cover img,.friend-item .mini-cover img,.settings-favourites-list .mini-cover img{width:100%;height:100%;object-fit:cover;display:block}.fixed-home-list .mini-album strong,.feed-item strong,.suggestion-item strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fixed-home-list .mini-album p,.feed-item p,.suggestion-item p{margin:3px 0 0;overflow:hidden;text-overflow:ellipsis}.settings-favourites-list .mini-album{grid-template-columns:56px minmax(0,1fr) auto!important}.settings-favourites-list .mini-cover{width:56px;height:56px;min-width:56px}.list-builder-card{margin:16px 0}.list-create-row,.profile-list-card .inline-controls{margin-top:12px}.profile-list-card input{width:100%;margin-bottom:8px}.profile-subtabs{display:flex;gap:18px;color:var(--muted);margin:12px 0 4px}.compare-album-results{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.public-profile-card h4{margin-bottom:10px}.compact-public-profile{margin-bottom:12px}.friend-item .row-button{background:transparent;padding:0}@media (max-width: 760px){.list-create-row{grid-template-columns:1fr}}.album-page-controls{grid-template-columns:minmax(220px,1fr) minmax(150px,190px) minmax(180px,240px)}.profile-list-card{overflow:hidden}.profile-list-card .mini-cover-row{height:62px;overflow:hidden;align-items:center}.profile-list-card .mini-cover-row .mini-cover{width:56px;height:56px;min-width:56px;max-width:56px;border-radius:8px;overflow:hidden}.profile-list-card .mini-cover-row .mini-cover img{width:100%;height:100%;object-fit:cover;display:block}.compare-search-dropdown{display:grid;gap:8px;margin-top:12px}.compare-search-option{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center;padding:10px;background:var(--card-2);border:1px solid var(--border);border-radius:12px}.compare-search-option span{display:grid;gap:2px}.compare-search-option em{color:var(--muted);font-style:normal;font-size:.88rem}.compare-selected-layout{display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:18px;align-items:start;margin-top:16px}.compare-selected-cover{display:grid;gap:8px;background:transparent;padding:0}.compare-selected-cover .cover{border-radius:10px}.compare-rating-panel{margin-top:0}@media (max-width: 760px){.album-page-controls,.compare-selected-layout{grid-template-columns:1fr}}.track-ratings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:18px}.track-ratings-heading h3{margin:0}.track-rating-summary{display:grid;gap:8px;min-width:155px}.track-average-badge{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--card-2);color:var(--muted);font-size:.78rem}.track-average-badge strong{color:var(--accent-2);font-size:.95rem;font-weight:900}.track-row input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.track-row input[type=number]::-webkit-outer-spin-button,.track-row input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.track-row input[type=number]:focus{border-color:#ff7a18b8;box-shadow:0 0 0 3px #ff7a1824}@media (max-width: 760px){.track-ratings-heading{align-items:stretch;flex-direction:column}.track-rating-summary{width:100%;min-width:0}}.sidebar-favourites{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.ranked-favourites-list,.ranked-settings-list{display:grid;gap:10px}.ranked-favourite-row,.settings-favourite-row .mini-album{display:grid;grid-template-columns:auto 48px minmax(0,1fr);gap:10px;align-items:center;width:100%;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--card-2)}.ranked-favourite-row .mini-cover,.settings-favourite-row .mini-cover{width:48px;height:48px;min-width:48px}.rank-number{color:var(--accent-2);font-weight:900;font-size:.9rem}.ranked-favourite-row strong,.settings-favourite-row strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ranked-favourite-row em{display:block;margin-top:2px;color:var(--muted);font-style:normal;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-favourite-row{display:grid;gap:8px}.favourite-order-controls{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.full-song-rating-list{margin-top:18px}.songs-page-view .album-page-controls{margin-top:10px}.settings-favourites-list .settings-favourite-row .mini-album{grid-template-columns:auto 48px minmax(0,1fr)!important}.mini-cover{width:48px;height:48px;min-width:48px;max-width:48px;aspect-ratio:1 / 1;overflow:hidden;border-radius:10px;flex:0 0 48px}.mini-cover img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;display:block}.ranked-favourite-row,.settings-favourite-row .mini-album{grid-template-columns:auto 48px minmax(0,1fr)!important;align-items:center}.ranked-favourite-row .mini-cover,.settings-favourite-row .mini-cover,.settings-favourites-list .mini-cover{width:48px!important;height:48px!important;min-width:48px!important;max-width:48px!important;overflow:hidden!important}.ranked-favourite-row .mini-cover img,.settings-favourite-row .mini-cover img,.settings-favourites-list .mini-cover img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover!important;display:block!important}@media (max-width: 760px){.ranked-favourite-row,.settings-favourite-row .mini-album{grid-template-columns:auto 48px minmax(0,1fr)!important}.favourites-settings-card .spotify-result,.compact-favourite-result{grid-template-columns:74px 1fr auto!important;align-items:center!important}.favourites-settings-card .spotify-result .cover,.compact-favourite-result .cover{width:74px!important;height:74px!important;max-width:74px!important;max-height:74px!important;aspect-ratio:1 / 1!important;overflow:hidden!important}.favourites-settings-card .spotify-result .cover img,.compact-favourite-result .cover img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}}@media (max-width: 760px){body{overflow-x:hidden}main{width:min(100% - 20px,1200px);margin:14px auto 72px}.topbar{position:sticky;top:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:10px}.brand{min-width:0;gap:8px}.brand-mark,.avatar{width:38px;height:38px;min-width:38px;border-radius:12px}.brand h1{font-size:.95rem;white-space:nowrap}.brand p{display:none}.nav{width:100%;min-width:0;display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 0}.nav::-webkit-scrollbar{display:none}.nav-btn,.text-btn{flex:0 0 auto;white-space:nowrap;padding:8px 10px;font-size:.82rem;border-radius:999px}.album-grid,.spotify-results,.profile-rated-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.album-card{min-width:0;padding:8px!important;border-radius:16px}.album-card:hover{transform:none}.cover,.spotify-result .cover,.profile-rated-card .cover,.profile-album-tile .cover{border-radius:12px;font-size:1.6rem}.album-info h4,.spotify-result-info h4,.profile-rated-card h4,.profile-album-tile h4{font-size:.82rem;line-height:1.18}.album-info p,.spotify-result-info p,.profile-rated-card p,.profile-rated-card span,.profile-album-tile p{font-size:.72rem}.meta-row,.album-actions,.profile-card-score{gap:6px;margin-top:8px}.card{padding:16px;border-radius:18px}.filters,.toolbar,.album-page-controls,.spotify-search-row,.suggestion-form,#requestForm{grid-template-columns:1fr!important;align-items:stretch}.filters input,.filters select,.toolbar input,.toolbar select,.album-page-controls input,.album-page-controls select,.spotify-search-row input,.spotify-search-row select,.suggestion-form input,.suggestion-form select,.suggestion-form textarea,#requestForm input,#requestForm select,#requestForm textarea{width:100%;min-width:0;max-width:100%}.suggestion-form,#requestForm{overflow:hidden}.suggestion-form>*,#requestForm>*{min-width:0}.suggestion-form button,#requestForm button,.spotify-search-row button{width:100%}.two,.four,.hero,.profile-layout,.settings-layout{grid-template-columns:1fr!important}}@media (max-width: 420px){.album-grid,.spotify-results,.profile-rated-grid{gap:10px!important}.album-info h4,.spotify-result-info h4,.profile-rated-card h4{font-size:.78rem}.score,.type-badge,.tag{font-size:.68rem}}.readonly-rating-display,.readonly-review,.readonly-track-score{background:var(--card-2);border:1px solid var(--border);border-radius:14px;padding:12px 13px;color:var(--text)}.readonly-rating-display,.readonly-track-score{font-weight:900;color:var(--accent-2)}.readonly-review{min-height:72px;white-space:pre-wrap;color:var(--muted)}.readonly-track-score{min-width:64px;text-align:center}.discover-page{max-width:980px;margin:0 auto}.discover-search-panel{margin-bottom:0}.list-create-row{grid-template-columns:minmax(220px,1fr) minmax(130px,160px) auto}.profile-list-open{background:transparent;padding:0}.profile-list-card-head,.list-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-list-card-head h3,.list-detail-head h3{margin:0}.profile-list-card .tag{text-transform:capitalize}.saved-profile-list-card{border-style:dashed}.list-detail-head{background:var(--card-2);border:1px solid var(--border);border-radius:16px;padding:12px;margin-bottom:14px}.list-detail-head>div:last-child{text-align:right}.list-detail-head span{display:block;color:var(--muted);font-weight:800;margin-top:3px}.album-modal-content{width:min(780px,100%);padding:18px}.album-modal-grid{grid-template-columns:190px 1fr;gap:18px}.album-modal-main h2{margin:6px 0 2px}.compact-album-meta{margin-bottom:10px}.compact-review-box{gap:8px;margin-top:12px}.compact-review-box textarea{min-height:84px}.compact-save-controls{margin-top:2px}.album-icon-actions{display:grid;grid-template-columns:repeat(4,minmax(72px,1fr));gap:8px;margin:12px 0}.icon-toggle{display:grid;place-items:center;gap:4px;padding:9px 6px;border-radius:14px;border:1px solid var(--border);background:var(--card-2);color:var(--text);cursor:pointer}.icon-toggle span{font-size:1.15rem;line-height:1}.icon-toggle small{font-size:.68rem;color:var(--muted);text-align:center}.icon-toggle.active{outline:2px solid var(--accent);background:#ffffff14}.list-picker-popover{display:grid;gap:6px;padding:10px;margin-bottom:10px;border:1px solid var(--border);border-radius:16px;background:var(--card-2)}.list-picker-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text);text-align:left;cursor:pointer}.list-picker-option.active,.list-picker-option:hover{border-color:var(--border);background:#ffffff0f}.track-ratings-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:10px 12px;border:1px solid var(--border);border-radius:16px;background:var(--card-2);color:var(--text);cursor:pointer}.track-ratings-trigger>span{font-weight:900}.nested-modal{z-index:70;background:#000000c7}.track-rating-modal-content{width:min(620px,100%);padding:18px}.condensed-track-list{gap:5px;max-height:60vh;overflow:auto;padding-right:4px}.condensed-track-row{grid-template-columns:minmax(0,1fr) 64px;padding:7px 0;border-bottom:1px solid var(--border)}.condensed-track-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-rating-text{justify-self:end;font-weight:900}.track-modal-actions{justify-content:flex-end;margin-top:12px}@media (max-width: 820px){.album-modal-grid{grid-template-columns:1fr}.album-modal-grid>.cover{width:min(210px,100%)}.album-icon-actions{grid-template-columns:repeat(4,minmax(62px,1fr))}}@media (max-width: 620px){.list-create-row,.list-detail-head{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.list-detail-head>div:last-child{text-align:left}.album-icon-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-footer{margin-top:28px;padding:26px 0 6px;border-top:1px solid var(--border)}.home-footer-column{display:grid;gap:8px;max-width:260px}.home-footer h3{margin:0 0 2px;color:var(--muted);font-size:1rem;letter-spacing:.04em;text-transform:uppercase}.home-footer a{width:fit-content;color:var(--text);font-size:1.05rem;text-decoration:none}.home-footer a:hover{color:var(--accent)}.admin-rating-search{display:grid;gap:10px;min-width:0}.admin-rating-search-results{display:grid;gap:8px;max-height:280px;overflow:auto;padding-right:4px}.admin-rating-search-result{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center;width:100%;padding:10px;border:1px solid var(--border);border-radius:14px;background:var(--card-2);color:var(--text);text-align:left}.admin-rating-search-result:hover,.admin-rating-search-result:focus-visible{border-color:#ff7a18a6;background:#ff7a181f}.admin-rating-search-result span{min-width:0}.admin-rating-search-result strong,.admin-rating-search-result em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-rating-search-result em{color:var(--muted);font-style:normal;font-size:.86rem;margin-top:2px}.profile-stats-strip button{min-width:96px;padding:0 18px;text-align:center;border:0;border-left:1px solid var(--border);background:transparent;color:inherit}.profile-stats-strip button:hover strong,.profile-stats-strip button:hover span{color:var(--accent-2)}.topbar{position:sticky}.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.notification-button{position:relative;width:42px;height:42px;border-radius:14px;border:1px solid var(--border);background:var(--card-2);color:var(--text)}.notification-button span{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;display:grid;place-items:center;border-radius:999px;background:var(--accent);color:#17110b;font-size:.72rem;font-weight:900}.notifications-popover{position:absolute;right:28px;top:calc(100% + 10px);width:min(430px,calc(100vw - 32px));max-height:70vh;overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:22px;padding:16px;box-shadow:var(--shadow)}.notification-list,.review-page-list{display:grid;gap:12px}.notification-item,.review-page-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;background:var(--card-2);border:1px solid var(--border);border-radius:16px}.review-page-card p{margin:6px 0 0;color:var(--muted)}.profile-friend-search{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.profile-friend-search h4{margin:0 0 10px}.profile-friend-search input{width:100%;margin-bottom:12px}.mini-cover{border:0;color:var(--text)}.expand-album-button{position:absolute;top:14px;right:62px}.expanded-album-page{width:min(1120px,100%)}.expanded-album-sections{display:grid;gap:18px;margin-top:22px}.album-suggestion-inline{display:grid;grid-template-columns:190px 1fr auto;gap:10px}@media (max-width: 820px){.topbar-actions{width:100%;justify-content:space-between;margin-left:0}.notifications-popover{right:16px;left:16px;width:auto}.profile-stats-strip button{min-width:82px;padding:10px}.album-suggestion-inline{grid-template-columns:1fr}.expand-album-button{position:static;margin:0 46px 14px 0}}.card{background:var(--card);border-radius:14px;box-shadow:none}.secondary,input,select,textarea,.primary{border-radius:10px}.album-card,.spotify-result,.notification-item,.review-page-card,.feed-item,.friend-item,.compare-row,.request-item,.rating-row,.suggestion-item,.album-list.compact .mini-album{border-radius:12px;box-shadow:none}.modal{padding:0;align-items:stretch;justify-items:stretch}.modal-content.album-modal-content{width:min(860px,calc(100vw - 32px));max-height:calc(100vh - 32px);align-self:center;justify-self:center;padding:0;border-radius:18px;overflow:hidden;background:var(--card);box-shadow:0 24px 70px #0000005c}.album-modal-content .close,.album-modal-content .expand-album-button{z-index:3}.album-modal-content .close{top:12px;right:12px;border-radius:10px}.expand-album-button{top:12px;right:58px;width:38px;height:38px;display:grid;place-items:center;padding:0;border-radius:10px;font-size:1.05rem;line-height:1}.album-modal-grid{grid-template-columns:250px minmax(0,1fr);gap:0;min-height:100%}.album-modal-grid>.cover{width:100%;height:100%;min-height:420px;aspect-ratio:auto;border-radius:0}.album-modal-main{padding:26px 26px 24px}.album-modal-main h2{font-size:clamp(1.9rem,4vw,3rem);line-height:.98;letter-spacing:-.04em}.album-modal-main .pill{background:transparent;padding:0;color:var(--accent-2);border-radius:0;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem}.album-icon-actions{display:flex;gap:0;margin:18px 0 0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--card-2)}.icon-toggle{flex:1;border:0;border-right:1px solid var(--border);border-radius:0;background:transparent}.icon-toggle:last-child{border-right:0}.icon-toggle.active{outline:0;background:#ff7a1824}.compact-review-box{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.compact-review-box input,.compact-review-box textarea,.readonly-rating-display,.readonly-review,.track-ratings-trigger,.list-picker-popover{background:#ffffff09;border-radius:10px}.track-ratings-trigger{border-radius:12px;margin-top:16px}.expanded-album-page{width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important;align-self:stretch!important;justify-self:stretch!important;overflow:auto!important}.expanded-album-page .album-modal-grid{grid-template-columns:minmax(260px,34vw) minmax(0,1fr);min-height:min(620px,64vh);border-bottom:1px solid var(--border)}.expanded-album-page .album-modal-grid>.cover{min-height:560px}.expanded-album-page .album-modal-main{align-self:center;max-width:760px;padding:44px clamp(28px,5vw,70px)}.expanded-album-sections{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:0;margin-top:0;border-top:0}.expanded-album-sections>.card{border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;padding:clamp(20px,3vw,34px);background:transparent}.expanded-album-sections>.card:last-child{grid-column:1 / -1;border-right:0}.expanded-album-sections .notification-item,.expanded-album-sections .review-page-card{background:transparent;border-width:0 0 1px;border-radius:0;padding:14px 0}.album-suggestion-inline{grid-template-columns:1fr}.profile-list-card{border-radius:10px;padding:0;overflow:hidden;background:var(--card)}.profile-list-open{padding:16px}.profile-list-card-head{border-bottom:1px solid var(--border);padding-bottom:10px;margin-bottom:10px}.profile-list-card .mini-cover-row{margin-top:14px;height:auto}.profile-list-card .mini-cover-row .mini-cover{border-radius:4px}.profile-list-card .inline-controls,.profile-list-card>.primary,.profile-list-card>.secondary{margin:0 16px 16px}.list-builder-card,.list-detail-head{border-radius:10px}.list-detail-head{background:var(--card)}.profile-tabs,.compact-tabs{border-radius:8px}@media (max-width: 820px){.modal-content.album-modal-content{width:100vw;max-height:100vh;border-radius:0}.album-modal-grid,.expanded-album-page .album-modal-grid{grid-template-columns:1fr}.album-modal-grid>.cover,.expanded-album-page .album-modal-grid>.cover{min-height:0;height:auto;aspect-ratio:1 / 1}.album-modal-main,.expanded-album-page .album-modal-main{padding:22px 16px 20px}.album-icon-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.icon-toggle:nth-child(2n){border-right:0}.icon-toggle:nth-child(-n+2){border-bottom:1px solid var(--border)}.expanded-album-sections{grid-template-columns:1fr}.expanded-album-sections>.card,.expanded-album-sections>.card:last-child{grid-column:auto;border-right:0}.expand-album-button{position:absolute;margin:0;right:58px}}.modal-content.album-modal-content{width:min(920px,calc(100vw - 32px))}.album-modal-grid,.expanded-album-page .album-modal-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px;align-items:start;min-height:0;padding:24px;border-bottom:0}.album-modal-grid>.cover,.expanded-album-page .album-modal-grid>.cover{width:210px;height:210px;min-height:0;max-height:210px;aspect-ratio:1 / 1;border-radius:12px;align-self:start}.album-modal-grid>.cover img,.expanded-album-page .album-modal-grid>.cover img{width:100%;height:100%;object-fit:cover;display:block}.album-modal-main,.expanded-album-page .album-modal-main{align-self:start;max-width:none;padding:0 52px 0 0}.album-modal-main h2{margin-top:4px;font-size:clamp(1.55rem,3.2vw,2.45rem);line-height:1}.compact-album-meta{margin-bottom:8px}.album-icon-actions{margin-top:12px}.compact-review-box{display:grid;grid-template-columns:128px minmax(0,1fr);gap:9px 12px;margin-top:14px;padding-top:14px}.compact-review-box label{align-self:center;color:var(--muted);font-size:.82rem}.compact-review-box input,.compact-review-box textarea,.compact-review-box .readonly-rating-display,.compact-review-box .readonly-review{width:100%;min-width:0}.compact-review-box textarea,.compact-review-box .readonly-review{min-height:68px}.compact-save-controls{grid-column:1 / -1;justify-content:flex-end;margin-top:2px}.track-ratings-trigger{margin-top:12px}.nested-modal{display:grid;place-items:center;align-items:center;justify-items:center;padding:18px}.nested-modal .track-rating-modal-content{align-self:center;justify-self:center;width:min(620px,calc(100vw - 32px));max-height:calc(100vh - 36px);border-radius:16px;overflow:auto}.expanded-album-page .album-modal-grid{grid-template-columns:260px minmax(0,1fr);padding:clamp(28px,4vw,52px)}.expanded-album-page .album-modal-grid>.cover{width:260px;height:260px;max-height:260px}.expanded-album-page .album-modal-main{padding-right:70px}@media (max-width: 820px){.album-modal-grid,.expanded-album-page .album-modal-grid{grid-template-columns:118px minmax(0,1fr);gap:14px;padding:18px 14px}.album-modal-grid>.cover,.expanded-album-page .album-modal-grid>.cover{width:118px;height:118px;max-height:118px}.album-modal-main,.expanded-album-page .album-modal-main{padding:0 48px 0 0}.album-modal-main h2{font-size:clamp(1.25rem,7vw,1.85rem)}.compact-review-box{grid-template-columns:1fr}.compact-save-controls{justify-content:stretch}.compact-save-controls button{flex:1}}@media (max-width: 520px){.album-modal-grid,.expanded-album-page .album-modal-grid{grid-template-columns:92px minmax(0,1fr);gap:12px}.album-modal-grid>.cover,.expanded-album-page .album-modal-grid>.cover{width:92px;height:92px;max-height:92px}.album-icon-actions{grid-column:1 / -1}}:root{--motion-fast: .14s;--motion-med: .22s;--motion-slow: .36s;--motion-ease: cubic-bezier(.2,.8,.2,1)}html{scroll-behavior:smooth}body{animation:siteFadeIn .34s var(--motion-ease)}@keyframes siteFadeIn{0%{opacity:0}to{opacity:1}}.active-view{animation:viewEnter .32s var(--motion-ease)}@keyframes viewEnter{0%{opacity:0;transform:translateY(10px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}.card,.album-card,.spotify-result,.profile-list-card,.profile-rated-card .row-button,.profile-album-tile,.feed-item,.friend-item,.notification-item,.review-page-card,.suggestion-item,.request-item,.compare-row,.album-list.compact .mini-album{transition:transform var(--motion-med) var(--motion-ease),border-color var(--motion-med) var(--motion-ease),background-color var(--motion-med) var(--motion-ease),box-shadow var(--motion-med) var(--motion-ease),opacity var(--motion-med) var(--motion-ease)}.album-card,.spotify-result,.profile-rated-card .row-button,.profile-album-tile,.profile-list-card,.feed-item,.friend-item,.notification-item,.review-page-card{will-change:transform}.album-card:hover,.spotify-result:hover,.profile-rated-card .row-button:hover,.profile-album-tile:hover,.profile-list-card:hover{transform:translateY(-6px) scale(1.018);border-color:#ff7a187a;box-shadow:0 18px 48px #00000047}.album-card:hover .cover,.spotify-result:hover .cover,.profile-rated-card .row-button:hover .cover,.profile-album-tile:hover .cover{transform:scale(1.025)}.cover{transition:transform var(--motion-slow) var(--motion-ease),filter var(--motion-med) var(--motion-ease)}.album-card:active,.spotify-result:active,.profile-rated-card .row-button:active,.profile-album-tile:active,.profile-list-card:active{transform:translateY(-2px) scale(.995)}.primary,.secondary,.nav-btn,.notification-button,.icon-toggle,.track-ratings-trigger,.list-picker-option,.admin-rating-search-result,.compare-search-option,.spotify-import-btn{transition:transform var(--motion-fast) var(--motion-ease),background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast) var(--motion-ease),opacity var(--motion-fast) var(--motion-ease)}.primary:hover:not(:disabled),.secondary:hover:not(:disabled),.notification-button:hover,.track-ratings-trigger:hover,.spotify-import-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px #00000038}.primary:active:not(:disabled),.secondary:active:not(:disabled),.notification-button:active,.nav-btn:active,.icon-toggle:active,.track-ratings-trigger:active,.spotify-import-btn:active:not(:disabled){transform:translateY(1px) scale(.98)}.nav-btn{position:relative}.nav-btn.active:after,.nav-btn:hover:after{transform:scaleX(1)}.nav-btn:after{content:"";position:absolute;left:12px;right:12px;bottom:5px;height:2px;border-radius:999px;background:var(--accent);transform:scaleX(0);transform-origin:center;transition:transform var(--motion-med) var(--motion-ease)}.modal:not(.hidden){animation:modalBackdropIn .22s ease}.modal:not(.hidden) .modal-content{animation:modalPanelIn .28s var(--motion-ease)}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes modalPanelIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.notifications-popover,.list-picker-popover,.compare-search-dropdown,.admin-rating-search-results,.settings-search-results{animation:softDropIn .2s var(--motion-ease)}@keyframes softDropIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}input:focus,select:focus,textarea:focus{border-color:#ff7a18ad;box-shadow:0 0 0 3px #ff7a1821;transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease}.rating-bar i,.distribution-row i{transform-origin:left center;animation:barGrow .42s var(--motion-ease)}@keyframes barGrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (max-width: 760px){.album-card:hover,.spotify-result:hover,.profile-rated-card .row-button:hover,.profile-album-tile:hover,.profile-list-card:hover,.primary:hover:not(:disabled),.secondary:hover:not(:disabled),.notification-button:hover,.track-ratings-trigger:hover,.spotify-import-btn:hover:not(:disabled){transform:none;box-shadow:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.album-modal-grid>.cover,.expanded-album-page .album-modal-grid>.cover{flex:0 0 auto;overflow:hidden!important;transform:none!important}.album-modal-grid>.cover img,.expanded-album-page .album-modal-grid>.cover img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;display:block!important}.nested-modal{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important}.nested-modal .track-rating-modal-content{position:relative!important;margin:auto!important;width:min(620px,calc(100vw - 32px))!important;max-height:calc(100vh - 36px)!important}.album-request-panel{margin-top:18px}.album-request-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 130px;gap:10px}.album-request-form textarea,.album-request-form button{grid-column:1 / -1}.admin-request-list{display:grid;gap:10px}.admin-request-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--card-2)}.admin-request-item strong,.admin-request-item p{margin:0 0 4px}@media (max-width: 760px){.album-request-form,.admin-request-item{grid-template-columns:1fr}}.admin-request-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}@media (max-width: 760px){.admin-request-actions{justify-content:flex-start}}.songs-page-summary{display:grid;grid-template-columns:minmax(220px,360px) minmax(0,1fr);gap:24px;align-items:start;margin:18px 0 16px}.songs-page-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.songs-page-summary .stat{margin:0}.songs-page-distribution h3{margin:0 0 10px}@media (max-width: 820px){.songs-page-summary{grid-template-columns:1fr}}@media (max-width: 520px){.songs-page-stat-grid{grid-template-columns:1fr}}
