@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0c0b12;--surface:#16151f;--surface-2:#1f1d2b;--surface-3:#292638;--line:#ffffff17;--text:#f5f3ff;--muted:#9d99b5;--lime:#c8ff2e;--pink:#ff4fa3;--violet:#8b5cf6;--cyan:#22e5ff;--danger:#ff5252;--radius:20px;--display:"Bricolage Grotesque Variable", "Arial Black", system-ui, sans-serif;--body:"Inter Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--tier:var(--lime);--nav-h:72px}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:radial-gradient(900px 500px at 85% -10%, #8b5cf638, transparent 60%), radial-gradient(700px 400px at -5% 10%, #ff4fa324, transparent 60%), var(--bg);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;background-attachment:fixed;min-height:100vh;margin:0;font-size:16px;line-height:1.55}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;margin:0;line-height:1.05}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul,ol{margin:0;padding:0;list-style:none}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--lime);outline-offset:2px;border-radius:8px}.wrap{width:min(1120px,100% - 32px);margin-inline:auto}.page{padding:28px 0 calc(var(--nav-h) + 48px)}.muted{color:var(--muted)}.pad{padding:12px 4px}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.error{color:#ff8a8a;font-weight:600}.error.banner{background:#ff52521f;border:1px solid #ff525266;border-radius:14px;padding:12px 16px}.topbar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#0c0b12bf;position:sticky;top:0}.topbar-inner{align-items:center;gap:24px;height:64px;display:flex}.logo{font-family:var(--display);letter-spacing:-.03em;align-items:center;gap:10px;font-size:22px;font-weight:800;display:flex}.logo-mark{filter:drop-shadow(0 0 8px #c8ff2e40);flex:none;width:26px;height:26px;transition:transform .35s cubic-bezier(.3,1.6,.5,1)}.logo:hover .logo-mark{transform:rotate(180deg)}.wm{letter-spacing:-.04em;align-items:baseline;gap:.04em;padding:.2em 0;font-weight:800;line-height:1;display:inline-flex}.wm-up,.wm-down{transition:transform .35s cubic-bezier(.3,1.6,.5,1);display:inline-block;position:relative}.wm-up{color:var(--lime);margin-left:.02em;transform:translateY(-.17em)rotate(-4deg)}.wm-down{color:var(--pink);transform:translateY(.17em)rotate(4deg)}.wm-or{letter-spacing:0;color:var(--muted);margin:0 .18em;font-size:.5em;font-style:italic;font-weight:600}.wm-up:after,.wm-down:after{content:"";background:currentColor;width:.26em;height:.22em;position:absolute;right:-.1em}.wm-up:after{clip-path:polygon(50% 0,100% 100%,0 100%);top:-.06em}.wm-down:after{clip-path:polygon(0 0,100% 0,50% 100%);bottom:-.06em}.logo:hover .wm-up{transform:translateY(.17em)rotate(4deg)}.logo:hover .wm-down{transform:translateY(-.17em)rotate(-4deg)}.logo-disc{background:radial-gradient(circle, var(--lime) 0 22%, #111 24% 100%);border-radius:50%;flex:none;width:28px;height:28px;animation:6s linear infinite spin;box-shadow:inset 0 0 0 2px #333,0 0 0 1px #000}.logo-disc.big{width:64px;height:64px}.boot{place-items:center;height:100vh;display:grid}@keyframes spin{to{transform:rotate(360deg)}}.nav-desktop{flex:1;gap:4px;display:flex}.nav-desktop a{color:var(--muted);border-radius:999px;padding:8px 14px;font-weight:600}.nav-desktop a:hover{color:var(--text)}.nav-desktop a.active{color:var(--bg);background:var(--lime)}.topbar-actions{align-items:center;gap:16px;margin-left:auto;display:flex}.nav-mobile{z-index:30;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);background:#12111aeb;justify-content:space-around;align-items:center;display:none;position:fixed;bottom:0;left:0;right:0}.nav-mobile a{color:var(--muted);flex-direction:column;align-items:center;gap:2px;min-width:72px;font-size:12px;font-weight:700;display:flex}.nav-mobile a span{filter:grayscale();opacity:.7;font-size:22px}.nav-mobile a.active{color:var(--lime)}.nav-mobile a.active span{filter:none;opacity:1}.nav-mobile .nav-plus{background:var(--lime);color:#0c0b12;border-radius:50%;place-items:center;width:56px;min-width:0;height:56px;margin-top:-26px;font-size:34px;font-weight:600;display:grid;box-shadow:0 8px 24px #c8ff2e59}.footer{padding:24px 0 calc(var(--nav-h) + 24px);color:var(--muted);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:13px;display:flex}.btn{border:1px solid var(--line);background:var(--surface-2);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:15px;font-weight:700;transition:transform .12s,background .12s,border-color .12s;display:inline-flex}.btn:hover{background:var(--surface-3);transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--lime);color:#0c0b12;border-color:#0000}.btn-primary:hover{background:#d8ff63}.btn-danger{color:#ff8a8a}.btn-danger:hover{background:#ff525226}.btn-sm{padding:7px 14px;font-size:14px}.btn-lg{padding:15px 28px;font-size:17px}.btn-link{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:4px 0;font-size:14px;font-weight:600;text-decoration:underline}.btn-link:hover{color:var(--text)}.icon-btn{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;flex:none;width:38px;height:38px;font-size:17px;font-weight:700;line-height:1}.icon-btn:hover:not(:disabled){background:var(--surface-3)}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn.danger:hover{color:var(--danger)}input,textarea,select{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1.5px solid var(--line);border-radius:14px;margin-top:6px;padding:12px 14px}input::placeholder,textarea::placeholder{color:#6b6884}input:focus,textarea:focus{border-color:var(--lime);outline:none;box-shadow:0 0 0 3px #c8ff2e2e}textarea{resize:vertical;line-height:1.6}label{color:#cfcbe6;font-size:14px;font-weight:700;display:block}fieldset{border:0;min-width:0;margin:0;padding:0}legend{color:#cfcbe6;margin-bottom:8px;padding:0;font-size:14px;font-weight:700}.form-stack{gap:16px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:16px 0;padding:20px}.inline-form{align-items:center;gap:8px;display:flex}.inline-form input{flex:1;min-width:0;margin-top:0}.page-title{font-size:clamp(32px,6vw,52px);font-weight:800}.section{margin-top:36px}.section:first-child{margin-top:0}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.section h2,.section-head h2{font-size:28px;font-weight:800}.controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter{border-radius:999px;width:260px;margin:0;padding:9px 14px}.seg{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px;display:inline-flex}.seg button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:7px 16px;font-size:14px;font-weight:700}.seg button.on{background:var(--surface-3);color:var(--text)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:12px;font-weight:800}.actions{flex-wrap:wrap;gap:10px;margin:22px 0;display:flex}.hint{margin:10px 0;font-size:14px}.empty{text-align:center;justify-items:center;gap:12px;padding:64px 16px;display:grid}.empty-emoji{font-size:56px}.empty h2{font-size:28px}.empty p{color:var(--muted);max-width:40ch}.skeleton{background:linear-gradient(100deg, var(--surface) 30%, var(--surface-2) 50%, var(--surface) 70%);border-radius:var(--radius);background-size:200% 100%;animation:1.4s infinite shimmer}.page-skeleton{height:60vh}.card.skeleton{aspect-ratio:3/4}@keyframes shimmer{to{background-position:-200% 0}}.spinner{border:3px solid var(--surface-3);border-top-color:var(--lime);border-radius:50%;flex:none;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}.cover{aspect-ratio:1;object-fit:cover;background:var(--surface-2);border-radius:14px;width:100%}.cover-fallback{font-family:var(--display);color:#ffffffd9;text-transform:uppercase;place-items:center;font-size:32px;font-weight:800;display:grid}.score{flex-wrap:wrap;align-items:center;gap:12px;display:inline-flex}.score-num{font-family:var(--display);color:var(--tier);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-weight:800;line-height:.9}.score-lg .score-num{font-size:72px}.score-xl .score-num{text-shadow:0 0 40px color-mix(in srgb, var(--tier) 45%, transparent);font-size:clamp(88px,18vw,148px)}.score-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:2px solid var(--tier);background:#0c0b12d1;border-radius:14px;padding:6px 10px;position:absolute;top:10px;right:10px}.score-badge .score-num{font-size:22px;line-height:1}.score-badge-inline .score-num{font-size:26px}.tier-chip{background:color-mix(in srgb, var(--tier) 18%, transparent);color:var(--tier);border:1.5px solid color-mix(in srgb, var(--tier) 60%, transparent);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:14px;font-weight:800;display:inline-flex}.grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:22px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px;transition:transform .18s,border-color .18s,box-shadow .18s;display:block}.card:hover{border-color:color-mix(in srgb, var(--tier) 70%, transparent);transform:translateY(-6px)rotate(-.6deg);box-shadow:0 18px 40px #00000073}.card-art{position:relative}.card-art .cover{border-radius:12px}.card-body{gap:2px;padding:12px 4px 4px;display:grid}.card-body h3{font-size:19px;font-weight:800}.card-artist{color:var(--muted);font-size:14px;font-weight:600}.card-headline{color:#d6d2ec;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:6px;font-size:14px;display:-webkit-box;overflow:hidden}.rail{scroll-snap-type:x mandatory;padding-bottom:10px;gap:18px;margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px;display:flex;overflow-x:auto}.rail .card{scroll-snap-align:start;flex:0 0 230px}.list-card{--tier:var(--violet)}.collage{aspect-ratio:1;border-radius:12px;gap:3px;display:grid;overflow:hidden}.collage-1{grid-template-columns:1fr}.collage-2,.collage-3,.collage-4{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.collage-2 .cover:first-child,.collage-3 .cover:first-child{grid-row:span 2}.collage .cover{border-radius:0;height:100%}.collage .cover-fallback{font-size:18px}.hero{border:1px solid var(--line);background:var(--surface);isolation:isolate;border-radius:32px;grid-template-columns:minmax(220px,360px) 1fr;align-items:center;gap:40px;padding:32px;display:grid;position:relative;overflow:hidden}.hero-glow{z-index:-1;filter:blur(60px)saturate(1.6);opacity:.4;background-position:50%;background-size:cover;position:absolute;inset:-40px}.hero-art{transition:transform .3s;transform:rotate(-3deg)}.hero:hover .hero-art{transform:rotate(0)scale(1.02)}.hero-art .cover{border-radius:20px;box-shadow:0 24px 60px #0000008c}.hero-text{justify-items:start;gap:10px;display:grid}.hero h1{font-size:clamp(38px,6vw,72px);font-weight:800}.hero-artist{color:#d6d2ec;font-size:22px;font-weight:600}.hero-score{margin:6px 0}.hero-headline{max-width:40ch;font-size:20px;font-style:italic}.search-box{background:var(--surface);border:2px solid var(--line);border-radius:999px;align-items:center;gap:12px;padding:4px 20px;display:flex}.search-box:focus-within{border-color:var(--lime);box-shadow:0 0 0 4px #c8ff2e26}.search-box input{background:0 0;border:0;margin:0;padding:14px 0;font-size:18px;box-shadow:none!important}.search-results{gap:8px;margin-top:14px;display:grid}.result{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:16px;align-items:center;gap:14px;width:100%;padding:10px;transition:background .12s,transform .12s;display:flex}.result:hover{background:var(--surface-2);transform:translate(4px)}.result-cover{border-radius:10px;flex:none;width:60px;height:60px}.result-text{flex:1;min-width:0;display:grid}.result-text strong{font-family:var(--display);font-size:18px}.result-text span{color:var(--muted);font-size:14px}.pill{white-space:nowrap;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:800;display:inline-flex}.pill-lime{color:var(--lime);background:#c8ff2e26;border:1px solid #c8ff2e66}.write-start{gap:14px;max-width:720px;margin-inline:auto;display:grid}.write-start .manual{justify-self:start;margin-top:8px}.write-wrap{max-width:760px;margin-inline:auto}.write{grid-template-columns:minmax(0,1fr);gap:22px;margin:20px 0 0;display:grid}.album-summary{align-items:center;gap:18px;display:flex}.summary-cover{border-radius:16px;flex:none;width:120px;height:120px}.summary-text{gap:6px;min-width:0;display:grid}.summary-text h2{font-size:28px;font-weight:800}.summary-text p{color:var(--muted);font-weight:600}.fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.fields .wide{grid-column:1/-1}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips.scroll{max-height:190px;padding:2px 2px 10px;overflow-y:auto}.chip{background:var(--surface-2);border:1.5px solid var(--line);color:#d6d2ec;text-align:left;border-radius:999px;align-items:center;padding:7px 14px;font-size:14px;font-weight:600;display:inline-flex}button.chip:hover{border-color:var(--muted)}.chip-on{background:var(--lime);color:#0c0b12;border-color:var(--lime);font-weight:800}.chip-link:hover{border-color:var(--lime)}.picker .inline-form{margin-top:8px}.rating-block{background:var(--surface);border:1px solid var(--line);border-radius:28px;justify-items:center;gap:12px;padding:22px;display:grid}.rating-top{justify-content:space-between;align-items:center;width:100%;display:flex}.rating-label{color:#cfcbe6;font-weight:800}.rating-controls{align-items:center;gap:22px;display:flex}.rating-controls .icon-btn{border-radius:50%;width:48px;height:48px;font-size:26px}.rating-num{font-family:var(--display);color:var(--tier);text-align:center;font-variant-numeric:tabular-nums;letter-spacing:-.04em;min-width:3.4ch;font-size:96px;font-weight:800;line-height:1}.slider{appearance:none;background:linear-gradient(90deg, var(--pink), #ffd43b 50%, var(--lime) 80%, var(--cyan));border:0;border-radius:999px;height:12px;margin:8px 0;padding:0;box-shadow:none!important}.slider::-webkit-slider-thumb{-webkit-appearance:none;border:5px solid var(--tier);cursor:grab;background:#fff;border-radius:50%;width:34px;height:34px;box-shadow:0 4px 14px #00000080}.slider::-moz-range-thumb{border:5px solid var(--tier);cursor:grab;background:#fff;border-radius:50%;width:24px;height:24px}.submit-bar{bottom:calc(var(--nav-h) + 8px);background:linear-gradient(transparent, var(--bg) 55%);z-index:5;align-items:center;gap:12px;padding:28px 0 12px;display:flex;position:sticky}.review{isolation:isolate;position:relative}.review-glow{z-index:-1;filter:blur(80px)saturate(1.5);opacity:.3;background-position:50%;background-size:cover;width:100vw;height:560px;position:absolute;top:-90px;left:50%;transform:translate(-50%);-webkit-mask-image:linear-gradient(#000 40%,#0000);mask-image:linear-gradient(#000 40%,#0000)}.review-head{grid-template-columns:minmax(240px,400px) 1fr;align-items:center;gap:88px;padding-top:12px;display:grid}.vinyl-wrap{position:relative}.vinyl{aspect-ratio:1;background:radial-gradient(circle, var(--tier) 0 17%, #111 18% 22%, transparent 23%), repeating-radial-gradient(circle, #151515 0 3px, #0a0a0a 4px 6px);z-index:0;border-radius:50%;width:92%;transition:transform .6s cubic-bezier(.2,.8,.2,1);position:absolute;top:4%;right:-16%;box-shadow:0 10px 30px #00000080}.vinyl-wrap:hover .vinyl{transform:translate(6%)rotate(120deg)}.review-cover{z-index:1;border-radius:18px;position:relative;box-shadow:0 30px 70px #0009}.review-title{z-index:2;justify-items:start;gap:10px;min-width:0;display:grid;position:relative}.review-title h1{font-size:clamp(40px,7vw,84px);font-weight:800}.review-artist{color:#d6d2ec;font-size:24px;font-weight:600}.review-headline{max-width:36ch;font-size:22px;font-style:italic}.picks{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:8px 0 28px;display:grid}.pick{border:1.5px solid var(--line);background:var(--surface);border-radius:20px;gap:4px;padding:18px 20px;display:grid}.pick-fav{background:#c8ff2e0f;border-color:#c8ff2e66}.pick-skip{background:#ff52520f;border-color:#ff525266}.pick-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:13px;font-weight:800}.pick-value{font-family:var(--display);font-size:24px;font-weight:700}.prose{color:#e6e3f7;gap:18px;max-width:68ch;font-size:18px;line-height:1.75;display:grid}.meta{border:1px solid var(--line);background:var(--surface);border-radius:20px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:0;margin:40px 0 0;display:grid;overflow:hidden}.meta div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 -1px -1px 0;padding:16px 20px}.meta dt{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:11px;font-weight:800}.meta dd{margin:2px 0 0;font-weight:700}.tracklist{background:var(--surface);border:1px solid var(--line);border-radius:20px;margin-top:28px;padding:6px 20px}.tracklist summary{cursor:pointer;padding:12px 0;font-weight:800}.tracklist ol{columns:2 280px;color:#cfcbe6;padding:0 0 14px 28px;list-style:decimal}.tracklist li{padding:2px 0}.tracklist li::marker{color:var(--muted)}.tracklist .is-fav{color:var(--lime);font-weight:700}.tracklist .is-skip{color:#ff8a8a;font-weight:700}.list-head{margin:16px 0 0}.rank-list{gap:12px;margin-top:18px;display:grid}.rank-row{background:var(--surface);border:1px solid var(--line);border-radius:20px;grid-template-columns:56px 1fr;align-items:center;gap:6px 14px;padding:12px 16px 12px 10px;transition:border-color .12s,opacity .12s,transform .12s;display:grid}.rank-row[draggable=true]{cursor:grab}.rank-row.dragging{opacity:.4}.rank-row.drag-over{border-color:var(--lime);transform:scale(1.01)}.rank-num{font-family:var(--display);text-align:center;color:var(--muted);letter-spacing:-.04em;font-size:40px;font-weight:800;line-height:1}.rank-num.top-1{color:#ffd43b;font-size:52px}.rank-num.top-2{color:#d8dce6;font-size:46px}.rank-num.top-3{color:#ff9a3c}.rank-main{align-items:center;gap:14px;min-width:0;display:flex}.rank-cover{border-radius:12px;flex:none;width:72px;height:72px}.rank-text{flex:1;min-width:0;display:grid}.rank-text strong{font-family:var(--display);font-size:21px;font-weight:800;line-height:1.15}.rank-text span{color:var(--muted);font-size:14px;font-weight:600}.rank-note{color:#cfcbe6;grid-column:2;font-size:15px;font-style:italic}.rank-tools{grid-column:2;align-items:center;gap:6px;display:flex}.note-input{margin:0;padding:8px 12px;font-size:14px}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#05040abf;place-items:center;padding:16px;animation:.15s fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--line);border-radius:28px;gap:14px;width:min(520px,100%);max-height:90vh;padding:24px;animation:.2s pop;display:grid;overflow-y:auto}.modal-head{justify-content:space-between;align-items:center;display:flex}.modal-head h2{font-size:26px;font-weight:800}.modal-share{width:min(460px,100%)}.share-preview{border-radius:16px;width:100%}.share-loading{color:var(--muted);justify-content:center;align-items:center;gap:10px;padding:60px 0;display:flex}.list-picker{gap:8px;display:grid}.list-picker li{background:var(--surface-2);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.list-picker-name{min-width:0;display:grid}.list-picker-name span{font-size:13px}.rank-add{align-items:center;gap:6px;display:flex}.rank-add input{text-align:center;width:64px;margin:0;padding:7px 8px}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(12px)scale(.97)}}.login{text-align:center;justify-items:stretch;gap:14px;max-width:420px;margin:40px auto;display:grid}.login .form-stack{text-align:left}.login .empty-emoji{font-size:48px}.toast{left:50%;bottom:calc(var(--nav-h) + 20px);z-index:60;background:var(--text);color:#0c0b12;border-radius:999px;max-width:calc(100vw - 32px);padding:12px 20px;font-weight:700;animation:.2s pop;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #00000080}.reactions{flex-wrap:wrap;gap:8px;margin:4px 0 22px;display:flex}.react{background:var(--surface-2);border:1.5px solid var(--line);border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:8px 14px;font-size:14px;font-weight:700;transition:transform .12s,border-color .12s,background .12s;display:inline-flex}.react:hover{border-color:var(--muted)}.react:active{transform:scale(.94)}.react-emoji{font-size:20px;line-height:1}.react-count{font-variant-numeric:tabular-nums;color:var(--muted)}.react.on{background:color-mix(in srgb, var(--lime) 16%, var(--surface-2));border-color:var(--lime)}.react.on .react-count{color:var(--lime)}.react.pop .react-emoji{animation:.45s bounce}@keyframes bounce{30%{transform:scale(1.6)rotate(-12deg)}60%{transform:scale(.9)}}.card-reacts{color:var(--muted);gap:10px;margin-top:8px;font-size:13px;font-weight:700;display:flex}.queue-list{gap:12px;margin-top:18px;display:grid}.queue-row{background:var(--surface);border:1px solid var(--line);border-radius:20px;grid-template-columns:36px 72px 1fr auto;align-items:center;gap:14px;padding:12px 16px 12px 10px;display:grid}.queue-num{font-family:var(--display);color:var(--muted);text-align:center;font-size:28px;font-weight:800}.queue-main{gap:2px;min-width:0;display:grid}.queue-main strong{font-family:var(--display);font-size:21px;font-weight:800;line-height:1.15}.queue-note{color:#cfcbe6;font-size:15px;font-style:italic}.queue-main .note-input{margin-top:6px}.queue-tools{justify-items:end;gap:8px;display:grid}.row.tight{flex-wrap:nowrap;gap:6px}.suggest-list{gap:10px;margin-top:8px;display:grid}.suggest-row{background:var(--surface);border:1px solid var(--line);border-radius:18px;grid-template-columns:64px 1fr auto;align-items:center;gap:14px;padding:10px 14px 10px 10px;display:grid}.suggest-row .rank-cover{width:64px;height:64px}.suggest-main{min-width:0;display:grid}.suggest-main strong{font-family:var(--display);font-size:19px;font-weight:800;line-height:1.15}.suggest-tools{align-items:center;gap:8px;display:flex}.activity-card{grid-template-columns:84px 1fr;align-items:center;gap:12px;display:grid;flex:0 0 280px!important}.activity-cover{width:84px;height:84px}.activity-body{gap:2px;min-width:0;display:grid}.activity-body strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:800;line-height:1.15;overflow:hidden}.activity-body .muted{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.activity-reacts{gap:10px;margin-top:2px;font-size:14px;font-weight:700;display:flex}.activity-time{color:var(--muted);font-size:12px}.howto{counter-reset:step;gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.howto li{counter-increment:step;color:#cfcbe6;align-items:baseline;gap:12px;font-size:15px;display:flex}.howto li:before{content:counter(step);background:var(--lime);color:#0c0b12;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:grid}.deck-strip{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:16px 16px 6px}.deck-label{color:#cfcbe6;margin-bottom:12px;font-size:14px;font-weight:700}.deck-strip .rail{margin-bottom:0}.deck-card{scroll-snap-align:start;flex:0 0 120px;gap:2px;display:grid}.deck-card strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:15px;line-height:1.15;overflow:hidden}.deck-card .muted{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.deck-card:hover .deck-cover{outline:3px solid var(--lime)}.listen{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.svc{gap:8px}.svc-icon{flex:none;width:20px;height:20px;display:block}.svc-spotify:hover{border-color:#1ed760}.svc-apple:hover{border-color:#fa5c70}.modal-carousel{width:min(640px,100%)}.slides{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:12px;padding-bottom:8px;display:flex;overflow-x:auto}.slide{scroll-snap-align:start;border:1px solid var(--line);border-radius:14px;flex:0 0 min(260px,62%);overflow:hidden}.slide img{width:100%;display:block}.check{align-items:center;gap:10px;min-height:44px;font-size:15px;font-weight:600;display:flex}.check input{width:22px;height:22px;accent-color:var(--lime);margin:0}.small{font-size:13px}@media (width>=821px){:root{--nav-h:0px}.page{padding-bottom:80px}.footer{padding-bottom:32px}.submit-bar{bottom:12px}.toast{bottom:24px}}@media (width<=820px){.nav-desktop,.topbar-actions .btn{display:none}.nav-mobile{display:flex}.topbar-inner{justify-content:space-between}.hero{grid-template-columns:1fr;gap:24px;padding:20px}.hero-art{max-width:280px;margin-inline:auto}.review-head{grid-template-columns:1fr;gap:28px}.vinyl-wrap{width:82%;max-width:300px;margin-inline:auto}.vinyl{right:-12%}.grid{grid-template-columns:repeat(2,1fr);gap:14px}.card{padding:8px}.card-body h3{font-size:16px}.filter,.controls{width:100%}.fields{grid-template-columns:1fr}.rating-num{font-size:80px}.rank-num{font-size:30px}.rank-num.top-1{font-size:38px}.rank-num.top-2{font-size:34px}.rank-row{grid-template-columns:40px 1fr;padding-right:10px}.rank-cover{width:56px;height:56px}.rank-text strong{font-size:17px}.rank-tools{flex-wrap:wrap}.note-input{flex-basis:100%}.album-summary{align-items:flex-start}.summary-cover{width:92px;height:92px}input,textarea,select,.note-input{font-size:16px}.chip,.chip-link{min-height:44px}.btn-link{align-items:center;min-height:44px;display:inline-flex}.icon-btn{width:44px;height:44px}.btn-sm,.seg button{min-height:44px}.hero-art{max-width:210px}.hero{gap:18px}.queue-row{grid-template-columns:28px 56px 1fr;padding-right:12px}.queue-tools{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.suggest-row{grid-template-columns:56px 1fr}.suggest-row .rank-cover{width:56px;height:56px}.suggest-tools{grid-column:1/-1;justify-content:space-between}.activity-card{flex-basis:260px!important}}@media (hover:none){.card:hover,.btn:hover,.result:hover{transform:none}.hero:hover .hero-art{transform:rotate(-3deg)}.vinyl-wrap:hover .vinyl{transform:none}}@media (hover:hover){.hint-touch{display:none}}@media (hover:none){.hint-mouse{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
