@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#090811;--panel:#13111e;--panel2:#1b1728;--text:#f7f4ff;--muted:#a7a0b8;--purple:#a78bfa;--pink:#e879f9;--line:rgba(255,255,255,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.topbar{height:78px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(9,8,17,.9);backdrop-filter:blur(18px);z-index:5}.brand{font:800 19px Manrope,sans-serif;letter-spacing:1.6px;display:flex;align-items:center;gap:9px}.brand>span:last-child{color:var(--purple)}.brand-mark{display:grid;place-items:center;width:29px;height:29px;background:linear-gradient(135deg,#8b5cf6,#d946ef);border-radius:9px;color:white;font-size:17px}.main-nav{display:flex;gap:30px;color:var(--muted);font-size:13px}.main-nav a:hover,.main-nav .active{color:white}.header-actions{display:flex;align-items:center;gap:13px}.search{display:flex;align-items:center;gap:7px;background:#171421;border:1px solid var(--line);padding:9px 12px;border-radius:30px;color:var(--muted)}.search input{background:none;border:0;outline:0;color:white;width:130px;font:inherit;font-size:12px}.admin-open{background:transparent;border:1px solid #5b4b79;color:#d8c9ff;padding:9px 15px;border-radius:24px;font-size:12px}.hero{min-height:550px;padding:92px 9vw 75px;position:relative;overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse at 78% 45%,#2c1748 0%,#171026 26%,#090811 62%)}.hero-content{position:relative;z-index:2;max-width:550px}.eyebrow{font-size:10px;letter-spacing:2.2px;color:#c4a9ff;font-weight:700}.live-dot{display:inline-block;width:7px;height:7px;background:#c084fc;border-radius:50%;margin-right:8px;box-shadow:0 0 13px #c084fc}.hero h1{font:800 clamp(44px,6vw,76px)/1.05 Manrope,sans-serif;letter-spacing:-3px;margin:22px 0}.hero h1 em,h2 em{font-style:normal;color:var(--purple)}.hero-copy{color:#bdb6ca;line-height:1.8;max-width:410px;font-size:14px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.primary{background:linear-gradient(110deg,#8b5cf6,#c026d3);border:0;color:white;border-radius:30px;padding:14px 22px;font-weight:700;font-size:12px;box-shadow:0 8px 35px #8b5cf633}.primary span{margin-left:15px}.text-link{font-size:12px;color:#d4c8ec}.hero-meta{display:flex;gap:12px;color:#827a92;font-size:10px;margin-top:46px}.hero-art{position:absolute;right:12%;top:50%;transform:translateY(-50%);width:330px;height:380px}.orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-one{width:260px;height:260px;right:0;top:40px;background:radial-gradient(circle at 30% 30%,#e879f9,#6d28d9 45%,transparent 72%);opacity:.65}.orb-two{width:210px;height:210px;left:0;bottom:0;background:radial-gradient(circle,#7c3aed88,transparent 70%)}.hero-frame{position:absolute;inset:30px 35px 20px 55px;border:1px solid #ffffff35;border-radius:18px;background:linear-gradient(145deg,#ffffff20,#ffffff03);backdrop-filter:blur(8px);box-shadow:0 25px 90px #0008;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(7deg)}.hero-frame span{font-size:9px;letter-spacing:4px;color:#e9d5ff}.hero-frame b{font:800 42px/.95 Manrope;text-align:center;letter-spacing:-2px;margin:25px 0}.hero-frame small{font-size:8px;letter-spacing:3px;color:#c4b5fd}.hero-bottom{position:absolute;bottom:25px;left:9vw;color:#746d80;font-size:9px;letter-spacing:2px}.hero-bottom span{margin-left:12px;color:#c4b5fd}.quick-cats{display:flex;gap:10px;padding:28px 9vw;border-bottom:1px solid var(--line);overflow:auto}.cat-chip{white-space:nowrap;border:1px solid var(--line);background:#100e19;color:#bcb4cb;border-radius:30px;padding:10px 17px;font-size:12px}.cat-chip span{margin-left:5px}.cat-chip.selected,.cat-chip:hover{background:#2a1c40;border-color:#7754a9;color:white}.content-section,.music-section{padding:70px 9vw}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section-heading h2,.wide-promo h2,.join-banner h2{font:800 clamp(28px,4vw,42px)/1.15 Manrope;letter-spacing:-1.6px;margin:8px 0}.section-note{font-size:11px;color:var(--muted)}.content-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.media-card{min-width:0;cursor:pointer}.poster{height:240px;border-radius:13px;position:relative;overflow:hidden;display:flex;align-items:end;padding:17px;background:linear-gradient(145deg,var(--c1),var(--c2));isolation:isolate}.poster:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,#ffffff50,transparent 30%),linear-gradient(0deg,#090811d9,transparent 75%);z-index:-1}.poster:after{content:"";position:absolute;width:170px;height:170px;border:1px solid #ffffff40;border-radius:50%;right:-50px;top:30px;box-shadow:0 0 0 18px #ffffff09,0 0 0 38px #ffffff08}.poster-art{position:absolute;top:30px;left:20px;font:800 50px Manrope;color:#ffffffa8}.poster-label{font-size:9px;letter-spacing:1.8px;color:#e9d5ff}.card-title{font:700 14px Manrope;margin:13px 0 5px}.card-meta{font-size:10px;color:var(--muted)}.card-type{position:absolute;top:12px;left:12px;background:#09081199;border:1px solid #ffffff30;padding:6px 9px;border-radius:20px;font-size:9px;backdrop-filter:blur(5px)}.play-badge{position:absolute;right:13px;bottom:13px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ffffffdf;color:#28163d}.empty-state{padding:35px;text-align:center;color:var(--muted)}.wide-promo{margin:0 9vw 25px;padding:45px 55px;border:1px solid #493263;border-radius:18px;background:radial-gradient(circle at 80% 40%,#542b7b88,transparent 35%),linear-gradient(110deg,#1b1428,#100e19);display:flex;justify-content:space-between;align-items:center}.wide-promo p:not(.eyebrow){font-size:12px;color:var(--muted);max-width:360px;line-height:1.7}.promo-symbol{font:800 140px Manrope;color:#ffffff0d;position:relative}.promo-symbol span{position:absolute;color:#d8b4fe;font-size:38px;right:8px;top:5px}.music-list{border-top:1px solid var(--line)}.track{display:flex;align-items:center;gap:16px;padding:14px 5px;border-bottom:1px solid var(--line)}.track-cover{width:48px;height:48px;border-radius:9px;background:linear-gradient(135deg,#6d28d9,#ec4899);display:grid;place-items:center;font-size:20px}.track-info{flex:1}.track-info b{font:600 13px Manrope}.track-info small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.track button{border:1px solid var(--line);background:#171421;color:#eee;padding:8px 13px;border-radius:20px;font-size:11px}.join-banner{margin:20px 9vw 80px;padding:40px 48px;border-radius:17px;background:linear-gradient(110deg,#201532,#11101b);display:flex;align-items:center;justify-content:space-between}footer{border-top:1px solid var(--line);padding:28px 9vw;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px}footer div{display:flex;gap:20px}.modal{position:fixed;inset:0;z-index:10;display:none;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-backdrop{position:absolute;inset:0;background:#05040bd9;backdrop-filter:blur(8px)}.modal-card{position:relative;width:min(650px,100%);max-height:90vh;overflow:auto;background:#151220;border:1px solid #ffffff20;border-radius:18px;padding:25px;box-shadow:0 25px 100px #000}.modal-close{position:absolute;right:16px;top:13px;border:0;background:#ffffff18;color:white;border-radius:50%;width:32px;height:32px;font-size:21px;z-index:2}.player-screen{height:280px;border-radius:12px;background:radial-gradient(circle,#45256b,#090811 70%);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#d8b4fe}.play-symbol{font-size:45px}.player-screen p{font-size:9px;letter-spacing:3px}.modal-info h2,.admin-card h2{font:800 27px Manrope;margin:7px 0}.modal-info>p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:1.7}.notice{font-size:10px!important;color:#8e849f!important}.download-link{display:inline-block;color:#d8b4fe;font-size:12px;margin:8px 0}.admin-card{width:min(580px,100%)}.admin-intro{font-size:12px;color:var(--muted);line-height:1.7}.admin-card form{display:grid;gap:13px;margin-top:22px}.admin-card label{display:grid;gap:7px;font-size:11px;color:#c8bfd7}.admin-card input,.admin-card textarea,.admin-card select{width:100%;border:1px solid var(--line);border-radius:8px;background:#0e0c16;color:white;padding:11px;font:12px 'DM Sans';outline:none}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-card .check-label{display:flex;align-items:center;gap:8px}.check-label input{width:auto}.full{width:100%}.admin-items{margin-top:25px;border-top:1px solid var(--line);padding-top:15px}.admin-items h3{font:600 13px Manrope}.admin-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:11px;color:#ddd}.admin-row button{background:none;border:0;color:#f0a0c8;font-size:10px}
@media(max-width:900px){.main-nav{gap:14px}.hero-art{right:4%;opacity:.65}.content-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.topbar{height:auto;min-height:65px;padding:12px 5vw;flex-wrap:wrap;gap:12px}.main-nav{order:3;width:100%;overflow:auto;padding:5px 0;gap:20px}.main-nav a{white-space:nowrap}.header-actions{margin-left:auto}.search input{width:85px}.hero{min-height:540px;padding:75px 7vw}.hero-art{right:-90px;top:55%;transform:translateY(-50%) scale(.8);opacity:.35}.hero-content{max-width:100%}.hero h1{font-size:51px}.hero-meta{font-size:9px;flex-wrap:wrap}.quick-cats{padding:20px 6vw}.content-section,.music-section{padding:48px 6vw}.content-grid{grid-template-columns:repeat(2,1fr);gap:16px}.poster{height:205px}.section-note{display:none}.wide-promo{margin:0 6vw 20px;padding:30px 25px}.promo-symbol{font-size:90px}.join-banner{margin:15px 6vw 55px;padding:28px;gap:20px}.join-banner .primary{white-space:nowrap}footer{padding:25px 6vw;flex-wrap:wrap;gap:18px}footer p{order:3;width:100%}.player-screen{height:210px}}

.upload-hint{display:block;color:#a7a0b8;font-size:10px;line-height:1.6;margin-top:-5px}.admin-card input[type=file]{padding:9px;font-size:11px}.admin-card #adminToken{border-color:#7754a9}
