*{box-sizing:border-box} :root{--bg:#090909;--panel:#111;--panel2:#171717;--text:#f4f4f4;--muted:#898989;--line:#282828;--lime:#c4ff55;--font:'DM Sans',sans-serif;--display:'Space Grotesk',sans-serif}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.ambient{position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(130px);opacity:.09;pointer-events:none}.ambient-one{background:#a4ff38;top:200px;left:-260px}.ambient-two{background:#6750ff;top:700px;right:-300px}.topbar{height:82px;padding:0 6.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #202020;background:rgba(9,9,9,.82);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font:700 22px var(--display);letter-spacing:-1px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:var(--lime);color:#090909;border-radius:10px;font-size:22px}.brand-light{font-weight:500;color:#9b9b9b}.main-nav{display:flex;gap:36px;color:#aaa;font-size:13px}.main-nav a:hover,.footer a:hover{color:var(--lime)}.header-actions{display:flex;align-items:center;gap:18px}.icon-btn,.mobile-menu{background:none;border:0;color:white;font-size:29px}.admin-link{background:#191919;border:1px solid #303030;color:#ddd;padding:11px 16px;border-radius:7px;font-size:12px}.admin-link:hover{border-color:var(--lime);color:var(--lime)}.mobile-menu{display:none}.hero{min-height:620px;padding:90px 9% 65px;position:relative;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.hero-copy{max-width:550px;z-index:2}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:700;color:var(--lime)}.pulse-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime);margin-right:8px;box-shadow:0 0 14px var(--lime)}h1,h2,h3,p{margin-top:0}.hero h1{font:700 clamp(62px,8vw,106px)/.95 var(--display);letter-spacing:-7px;margin:28px 0}.hero h1 span,.wide-cta h2 span{color:var(--lime)}.hero-copy>p{color:#999;max-width:420px;line-height:1.8;font-size:15px}.hero-buttons{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 20px;border-radius:7px;font-weight:700;font-size:12px;border:1px solid transparent;transition:.25s}.btn-primary{background:var(--lime);color:#101010}.btn-primary:hover{background:#d6ff8a;transform:translateY(-2px);box-shadow:0 8px 30px #c4ff5522}.btn-ghost{border-color:#383838;color:#ddd;background:#111}.btn-ghost:hover{border-color:#777}.btn.small{padding:9px 14px}.hero-note{display:flex;align-items:center;gap:12px;color:#686868;font-size:9px;letter-spacing:2px;margin-top:60px}.note-line{width:35px;height:1px;background:var(--lime)}.hero-art{width:430px;height:430px;position:relative;display:grid;place-items:center;margin-right:3%}.hero-disc{width:300px;height:300px;border-radius:50%;padding:17px;background:repeating-radial-gradient(circle,#181818 0 2px,#303030 3px 4px,#101010 5px 7px);box-shadow:0 30px 90px #000,0 0 90px #c4ff5512;animation:spin 24s linear infinite}.disc-inner{height:100%;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#282828 0 10%,#121212 11% 34%,#252525 35%,#111 70%);border:1px solid #454545}.disc-center{width:80px;height:80px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:#111;font:700 24px var(--display);box-shadow:0 0 35px #c4ff5544}.hero-orbit{position:absolute;border:1px solid #45454555;border-radius:50%;transform:rotate(-25deg)}.orbit-a{width:420px;height:160px}.orbit-b{width:390px;height:270px;transform:rotate(55deg)}.floating-tag{position:absolute;background:#191919;border:1px solid #333;padding:12px 16px;border-radius:7px;font:500 10px/1.5 var(--display);letter-spacing:2px;box-shadow:0 10px 30px #000}.floating-tag b{font-size:18px;color:var(--lime)}.tag-top{top:42px;right:5px}.tag-bottom{bottom:45px;left:0;display:flex;align-items:center;gap:12px}.equalizer{height:20px;display:flex;align-items:center;gap:3px}.equalizer i{width:3px;background:var(--lime);height:8px;animation:eq .8s infinite alternate}.equalizer i:nth-child(2){height:16px;animation-delay:.2s}.equalizer i:nth-child(3){height:11px;animation-delay:.4s}.equalizer i:nth-child(4){height:19px;animation-delay:.1s}.equalizer i:nth-child(5){height:7px;animation-delay:.3s}.hero-bottom{position:absolute;bottom:24px;left:9%;right:9%;display:flex;justify-content:space-between;color:#555;font-size:9px;letter-spacing:2px}.banner-strip{padding:0 7% 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.promo-banner{min-height:170px;border-radius:12px;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:center;padding:28px;gap:8px;overflow:hidden;transition:.3s}.promo-banner:hover{transform:translateY(-3px)}.promo-banner strong{font:700 28px var(--display);max-width:450px}.promo-banner small{color:#ccc}.section{padding:75px 7%}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px;gap:20px}.section h2,.admin-card h2{font:700 clamp(32px,4vw,48px) var(--display);letter-spacing:-2px;margin:10px 0 0}.section h2 span,.admin-card h2 span{color:var(--lime)}.search-wrap{display:flex;align-items:center;gap:10px;background:#141414;border:1px solid #292929;border-radius:8px;padding:0 14px;width:min(340px,100%);color:#777}.search-wrap input{background:none;border:0;outline:0;color:#fff;padding:13px 0;width:100%;font-size:12px}.filter-row{display:flex;align-items:center;gap:8px;margin-bottom:24px}.filter-chip{border:1px solid #292929;background:#111;color:#888;padding:9px 15px;border-radius:20px;font-size:11px}.filter-chip.active,.filter-chip:hover{background:var(--lime);color:#111;border-color:var(--lime)}.result-count{margin-left:auto;color:#666;font-size:9px;letter-spacing:1px}.track-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.track-card{background:#111;border:1px solid #202020;border-radius:11px;padding:12px;transition:.3s;min-width:0}.track-card:hover{transform:translateY(-5px);border-color:#484848;box-shadow:0 18px 40px #0007}.cover-button{position:relative;display:block;width:100%;padding:0;border:0;background:#202020;border-radius:7px;overflow:hidden;aspect-ratio:1}.track-cover{width:100%;height:100%;object-fit:cover;display:block;transition:.5s}.track-card:hover .track-cover{transform:scale(1.05)}.cover-play{position:absolute;right:12px;bottom:12px;width:40px;height:40px;border-radius:50%;background:var(--lime);color:#111;display:grid;place-items:center;opacity:0;transform:translateY(8px);transition:.25s}.track-card:hover .cover-play{opacity:1;transform:none}.track-info{display:flex;justify-content:space-between;align-items:start;gap:8px;padding:15px 2px 10px}.track-info h3{font:600 15px var(--display);margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-info p{font-size:11px;color:#888;margin:0}.more-btn{background:none;border:0;color:#777}.track-meta{border-top:1px solid #242424;padding:10px 2px 1px;display:flex;align-items:center;justify-content:space-between;color:#666;font-size:8px;letter-spacing:1px}.track-meta button{border:0;background:none;color:var(--lime);font-size:9px;font-weight:700}.albums-section{background:#0d0d0d}.section-desc{color:#777;font-size:13px}.album-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.album-card{height:280px;position:relative;border-radius:10px;overflow:hidden;background:#191919}.album-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.album-card:hover img{transform:scale(1.06)}.album-overlay{position:absolute;inset:0;background:linear-gradient(transparent 30%,#000d);display:flex;flex-direction:column;justify-content:end;padding:20px}.album-overlay span{color:var(--lime);font-size:9px;letter-spacing:2px}.album-overlay h3{font:700 21px var(--display);margin:8px 0 3px}.album-overlay p{color:#aaa;font-size:11px;margin:0}.wide-cta{margin:45px 7%;padding:55px 7%;background:linear-gradient(110deg,#191d12,#111 60%,#171717);border:1px solid #30352a;border-radius:14px;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.wide-cta h2{font:700 clamp(38px,5vw,60px)/1.05 var(--display);letter-spacing:-3px;margin:15px 0}.wide-cta p{color:#999;font-size:13px;margin:0}.cta-symbol{font-size:170px;color:var(--lime);opacity:.7;transform:rotate(-15deg)}.posts-section{padding-bottom:150px}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.post-card{border:1px solid #252525;border-radius:10px;overflow:hidden;background:#111}.post-card>img{width:100%;height:190px;object-fit:cover}.post-content{padding:20px}.post-content h3{font:600 20px var(--display);margin:12px 0}.post-content p{font-size:12px;color:#999;line-height:1.7;white-space:pre-wrap}.post-content .eyebrow{font-size:8px}footer{padding:28px 7%;border-top:1px solid #222;display:flex;align-items:center;justify-content:space-between;color:#777;font-size:10px}footer .brand{color:#fff}.player{position:fixed;z-index:30;bottom:0;left:0;right:0;background:rgba(16,16,16,.96);backdrop-filter:blur(18px);border-top:1px solid #333;padding:12px 5%;display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:center;gap:25px;transform:translateY(110%);transition:.35s}.player.visible{transform:translateY(0)}.player-track{display:flex;align-items:center;gap:12px;min-width:0}.player-track img{width:48px;height:48px;object-fit:cover;background:#292929;border-radius:5px}.player-track strong,.player-track small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-track strong{font-size:12px}.player-track small{color:#888;font-size:10px;margin-top:4px}.player-center{max-width:550px;width:100%;margin:auto}.player-controls{display:flex;justify-content:center;align-items:center;gap:25px;margin-bottom:7px}.player-controls button,.player-volume button{background:none;border:0;color:#bbb;font-size:14px}.player-controls .play-main{width:34px;height:34px;border-radius:50%;background:var(--lime);color:#111;font-size:13px}.timeline{display:flex;align-items:center;gap:10px;color:#777;font-size:9px}.timeline input,.player-volume input{accent-color:var(--lime);width:100%;height:3px}.player-volume{display:flex;align-items:center;gap:12px;max-width:150px;justify-self:end}.player-volume input{width:90px}.empty-state{grid-column:1/-1;padding:35px;text-align:center;color:#777;border:1px dashed #333;border-radius:10px;font-size:13px}.config-warning{color:#f0d28b}.modal{position:fixed;z-index:50;inset:0;background:#000b;display:none;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(8px)}.modal.open{display:flex;animation:fade .2s}.modal-card{position:relative;background:#111;border:1px solid #333;border-radius:14px;width:min(760px,100%);max-height:90vh;overflow:auto;padding:34px}.modal-close{position:absolute;right:17px;top:12px;background:none;border:0;color:#aaa;font-size:28px}.detail-layout{display:grid;grid-template-columns:220px 1fr;gap:25px;align-items:center}.detail-cover{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;background:#222}.detail-layout h2{font:700 32px var(--display);margin:12px 0 4px}.detail-layout p{color:#999;font-size:13px;line-height:1.6}.review-area{border-top:1px solid #292929;margin-top:30px;padding-top:20px}.review-area h3,.admin-panel h3{font:600 18px var(--display)}.review-form{display:grid;grid-template-columns:1fr 130px;gap:9px;margin:15px 0}.review-form textarea{grid-column:1/-1}.review-form input,.review-form select,.review-form textarea,.form-stack input,.admin-form input,.admin-form textarea,.admin-form select{background:#1a1a1a;border:1px solid #333;border-radius:6px;color:#eee;padding:12px;outline:0;width:100%;font-size:12px}.review-form input:focus,.review-form textarea:focus,.form-stack input:focus,.admin-form input:focus,.admin-form textarea:focus{border-color:var(--lime)}.review-form button{grid-column:1/-1;justify-self:start}.review{padding:13px 0;border-bottom:1px solid #292929}.review>div{display:flex;justify-content:space-between;font-size:12px}.review>div span{color:var(--lime)}.review p{color:#999;font-size:12px;margin:8px 0 0;white-space:pre-wrap}.admin-card{width:min(900px,100%);padding:35px}.admin-card h2{font-size:30px}.muted{color:#888;font-size:12px;line-height:1.6}.form-stack{display:grid;gap:15px;margin-top:25px;max-width:420px}.form-stack label,.admin-form label{display:grid;gap:7px;color:#aaa;font-size:11px}.admin-heading{display:flex;justify-content:space-between;align-items:center;padding-right:30px}.admin-tabs{display:flex;gap:5px;overflow-x:auto;margin:25px 0;border-bottom:1px solid #333}.admin-tabs button{white-space:nowrap;padding:12px 14px;background:none;border:0;color:#888;font-size:11px;border-bottom:2px solid transparent}.admin-tabs button.active{color:var(--lime);border-color:var(--lime)}.admin-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}.admin-form label:has(textarea),.admin-form label:has(input[type=file]),.admin-form .check-label,.admin-form button,.admin-form .form-message{grid-column:1/-1}.admin-form .check-label{display:flex;align-items:center;gap:8px}.admin-form .check-label input{width:auto;accent-color:var(--lime)}.admin-form button{justify-self:start}.subheading{margin-top:30px}.admin-list{border-top:1px solid #292929}.admin-list-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 3px;border-bottom:1px solid #292929;font-size:12px}.delete-btn{background:#281818;border:1px solid #542929;color:#ff8a8a;border-radius:5px;padding:7px 10px;font-size:10px;white-space:nowrap}.review-admin span{line-height:1.7}.form-message{font-size:11px;min-height:15px}.form-message.error{color:#ff7777}.form-message.success{color:var(--lime)}.toast{position:fixed;z-index:80;bottom:100px;left:50%;transform:translate(-50%,20px);opacity:0;background:#c4ff55;color:#111;padding:12px 18px;border-radius:7px;font-size:12px;font-weight:700;transition:.25s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}@keyframes spin{to{transform:rotate(360deg)}}@keyframes eq{to{height:4px}}@keyframes fade{from{opacity:0}to{opacity:1}}
@media(max-width:1000px){.track-grid,.album-grid{grid-template-columns:repeat(3,1fr)}.hero{padding-left:7%;padding-right:7%}.hero-art{transform:scale(.85);margin-right:-20px}.main-nav{gap:18px}}
@media(max-width:700px){.topbar{height:68px;padding:0 5%}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;padding:20px;background:#111;border-bottom:1px solid #333;flex-direction:column;gap:18px}.main-nav.nav-open{display:flex}.mobile-menu{display:block}.admin-link{font-size:10px;padding:9px}.hero{min-height:auto;padding:70px 7% 80px;display:block}.hero h1{font-size:66px;letter-spacing:-5px}.hero-art{width:100%;height:300px;margin:25px 0 0;transform:scale(.8)}.hero-disc{width:240px;height:240px}.hero-orbit.orbit-a{width:340px}.hero-bottom{left:7%;right:7%}.section{padding:55px 5%}.section-head{align-items:start;flex-direction:column}.search-wrap{width:100%}.track-grid,.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.track-card{padding:8px}.track-info h3{font-size:13px}.album-card{height:220px}.wide-cta{margin:25px 5%;padding:35px 25px}.cta-symbol{font-size:90px}.post-grid{grid-template-columns:1fr}.posts-section{padding-bottom:180px}.player{grid-template-columns:1fr auto;gap:8px;padding:9px 4%}.player-track img{width:40px;height:40px}.player-center{grid-column:1/-1;grid-row:2}.player-volume{grid-column:2;grid-row:1}.player-volume input{width:55px}.player-controls{margin-bottom:4px}.detail-layout{grid-template-columns:100px 1fr;gap:15px}.detail-layout h2{font-size:22px}.modal-card{padding:27px 20px}.admin-card{padding:28px 17px}.admin-form{grid-template-columns:1fr}.admin-form label,.admin-form label:has(textarea),.admin-form label:has(input[type=file]),.admin-form .check-label,.admin-form button,.admin-form .form-message{grid-column:1}.admin-heading{padding-right:25px}.admin-card h2{font-size:24px}.admin-tabs button{padding:10px 9px}footer{padding:25px 5%;gap:12px;flex-wrap:wrap}footer>span{order:3;width:100%}.filter-row{flex-wrap:wrap}.result-count{width:100%;margin:5px 0 0}.review-form{grid-template-columns:1fr 100px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Separate administration page */
.admin-main{position:relative;z-index:1;padding:55px 6%;min-height:calc(100vh - 82px)}
.admin-shell{max-width:1100px;margin:0 auto;background:#111;border:1px solid #292929;border-radius:15px;padding:34px;box-shadow:0 25px 80px #0006}
.admin-login{max-width:500px;margin:35px auto 55px}
.admin-login h1,.admin-heading h1{font:700 clamp(30px,4vw,44px) var(--display);letter-spacing:-2px;margin:12px 0}
.admin-login h1 span,.admin-heading h1 span{color:var(--lime)}
.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.admin-heading .muted{margin:8px 0 0}
.admin-panel h2{font:600 22px var(--display);margin:0 0 20px}
.admin-page .topbar{position:relative}
@media(max-width:700px){.admin-main{padding:22px 4%}.admin-shell{padding:22px 15px}.admin-heading{align-items:flex-start}.admin-heading h1{font-size:27px}}

/* SoundVibe admin v2 — redesigned control center */
.admin-v2{background:#080909;color:#f4f4f0;min-height:100vh;font-family:var(--body,Arial,sans-serif)}
.admin-v2 .ambient{position:fixed;pointer-events:none;filter:blur(110px);opacity:.13}.admin-v2 .ambient-one{width:380px;height:380px;background:#b7f34a;top:-180px;left:20%}.admin-v2 .ambient-two{width:300px;height:300px;background:#5c7a28;right:-150px;bottom:0}
.admin-v2 .btn{font-family:inherit}.admin-v2 .btn-primary{background:#c7ff54;color:#10120b;border:0;font-weight:800;border-radius:9px;box-shadow:0 8px 25px #baff3a18;transition:.2s}.admin-v2 .btn-primary:hover{background:#d7ff83;transform:translateY(-1px)}
.login-screen{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:35px 20px}.login-brand{position:absolute;top:30px;left:5%;text-decoration:none}.login-card{width:min(450px,100%);padding:42px;background:linear-gradient(145deg,#151715,#101110);border:1px solid #292d25;border-radius:20px;box-shadow:0 35px 100px #0009}.login-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#c7ff54;color:#10120b;font:800 25px var(--display);margin-bottom:28px;box-shadow:0 0 35px #c7ff5422}.login-card h1{font:700 43px/1.05 var(--display);letter-spacing:-2px;margin:12px 0}.login-card h1 span{color:#c7ff54}.login-card>.muted{font-size:13px;margin:14px 0 28px}.login-form{display:grid;gap:17px}.login-form label{display:grid;gap:8px;color:#b7b9b1;font-size:11px;font-weight:700;letter-spacing:.3px}.login-form input{width:100%;background:#0b0d0b;border:1px solid #30352d;color:#fff;border-radius:9px;padding:14px 15px;outline:0;font-family:var(--font);font-size:13px;transition:.2s}.login-form input:focus{border-color:#c7ff54;box-shadow:0 0 0 3px #c7ff5415}.login-form .btn{height:48px;margin-top:4px}.login-form .btn span{float:right;font-size:18px}.login-back{display:inline-block;color:#8d9187;text-decoration:none;font-size:11px;margin-top:26px}.login-back:hover{color:#c7ff54}.login-foot{position:absolute;bottom:24px;color:#51564b;font-size:9px;letter-spacing:2px}.login-form .form-message{margin:0;min-height:14px}
.dashboard-layout{position:relative;z-index:1;min-height:100vh}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#0d0f0d;border-right:1px solid #252923;padding:27px 17px 18px;display:flex;flex-direction:column;z-index:5}.side-brand{display:flex;text-decoration:none;padding:0 10px 34px}.side-caption{font-size:9px;letter-spacing:1.6px;color:#656b5e;font-weight:800;padding:0 12px 13px}.side-nav{display:grid;gap:5px}.side-link{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:#a5a99e;padding:12px 12px;font-family:var(--font);font-size:12px;font-weight:600;cursor:pointer;transition:.18s}.side-link:hover{background:#171b15;color:#fff}.side-link.active{background:#c7ff5412;border-color:#c7ff5429;color:#d7ff8b}.nav-ico{font-size:17px;width:20px;text-align:center}.side-link i{font-style:normal;font-size:10px;color:#858b7d;margin-left:auto;background:#1b2018;border-radius:20px;padding:3px 7px}.side-link.active i{background:#c7ff5420;color:#c7ff54}.sidebar-bottom{margin-top:auto}.admin-online{display:flex;align-items:center;gap:10px;border-top:1px solid #262a24;border-bottom:1px solid #262a24;padding:17px 8px;margin-bottom:12px}.admin-online>span{width:8px;height:8px;background:#a7ef50;border-radius:50%;box-shadow:0 0 10px #a7ef50}.admin-online b,.admin-online small{display:block}.admin-online b{font-size:10px;color:#dce4d3}.admin-online small{font-size:9px;color:#747b6e;margin-top:4px}.side-site-link,.side-logout{display:block;width:100%;text-align:left;text-decoration:none;color:#92988b;font-family:var(--font);font-size:11px;font-weight:600;padding:11px 9px;border:0;background:none;cursor:pointer}.side-site-link:hover,.side-logout:hover{color:#c7ff54}.admin-workspace{margin-left:245px;min-height:100vh}.workspace-top{height:76px;border-bottom:1px solid #242821;background:#0c0e0cdd;backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;position:sticky;top:0;z-index:4}.workspace-top .eyebrow{font-size:8px;color:#73796c;letter-spacing:1.5px}.top-title{font:600 15px var(--display);margin-top:5px}.top-actions{display:flex;align-items:center;gap:20px}.admin-user{display:flex;align-items:center;gap:9px;color:#b6baaf;font-size:10px}.user-dot{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#252c1c;color:#c7ff54;font-weight:800}.workspace-content{max-width:1450px;margin:auto;padding:40px 4.5% 80px}.admin-v2 .admin-panel{animation:adminFade .25s ease}.welcome-row{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.welcome-row h1,.page-heading h1{font:700 clamp(31px,4vw,43px)/1.1 var(--display);letter-spacing:-2px;margin:9px 0}.welcome-row h1 span{color:#c7ff54}.welcome-row .muted,.page-heading .muted{font-size:12px;margin:9px 0 0}.welcome-note{display:flex;align-items:center;gap:12px;padding:15px 18px;background:#c7ff540b;border:1px solid #c7ff5424;border-radius:12px}.welcome-note>span{font-size:26px;color:#c7ff54}.welcome-note b,.welcome-note small{display:block}.welcome-note b{font-size:11px}.welcome-note small{font-size:9px;color:#8e9681;margin-top:5px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px}.stat-card{background:linear-gradient(145deg,#151815,#111311);border:1px solid #292e26;border-radius:12px;padding:18px 19px;min-height:128px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#9da395;font-size:10px}.stat-top b{font-size:18px;color:#c7ff54;font-weight:500}.stat-card>strong{display:block;font:700 31px var(--display);margin:13px 0 3px}.stat-card>small{font-size:9px;color:#73796d}.overview-columns{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.quick-card,.recent-card,.library-card,.editor-card{background:#111411;border:1px solid #292e26;border-radius:13px;padding:22px}.section-title,.library-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-title .eyebrow,.library-head .eyebrow{font-size:8px;letter-spacing:1.5px;color:#7c8374}.section-title h2,.library-head h2{font:600 18px var(--display);margin:6px 0 0}.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.quick-actions button{position:relative;text-align:left;min-height:98px;padding:14px;background:#171b15;border:1px solid #2b3126;border-radius:9px;color:#eee;cursor:pointer;transition:.2s}.quick-actions button:hover{border-color:#91b64b;background:#1b2117;transform:translateY(-2px)}.quick-actions button>span{display:block;color:#c7ff54;font-size:19px;margin-bottom:8px}.quick-actions button b,.quick-actions button small{display:block}.quick-actions button b{font-size:11px}.quick-actions button small{font-size:9px;color:#858d7c;margin-top:4px}.quick-actions button em{position:absolute;right:13px;top:14px;color:#8b957c;font-style:normal}.recent-content{display:grid;gap:2px}.recent-row{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid #252a23}.recent-row:last-child{border:0}.recent-thumb{width:37px;height:37px;border-radius:7px;background:#20251b;overflow:hidden;display:grid;place-items:center;color:#c7ff54;flex:none}.recent-thumb img{width:100%;height:100%;object-fit:cover}.recent-row b,.recent-row small{display:block}.recent-row b{font-size:10px;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-row small{font-size:9px;color:#858c7c;margin-top:5px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.page-heading .eyebrow{font-size:8px;letter-spacing:1.5px;color:#858d79}.page-symbol{font-size:55px;color:#c7ff54;opacity:.8;padding-right:15px}.editor-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(360px,1.15fr);gap:16px;align-items:start}.editor-card{display:grid;gap:15px}.editor-heading{display:flex;align-items:center;gap:13px;padding-bottom:13px;border-bottom:1px solid #292e26;margin-bottom:3px}.editor-number{width:34px;height:34px;border-radius:9px;background:#c7ff5415;color:#c7ff54;display:grid;place-items:center;font:700 12px var(--display)}.editor-heading h2{font:600 17px var(--display);margin:0}.editor-heading p{font-size:9px;color:#838a7b;margin:5px 0 0}.editor-card>label{display:grid;gap:7px;color:#b7bdb0;font-size:10px;font-weight:700}.editor-card input:not([type=checkbox]),.editor-card textarea,.editor-card select{width:100%;background:#0b0e0b;border:1px solid #30362c;border-radius:8px;color:#eee;padding:12px 13px;font-family:var(--font);font-size:12px;outline:0;transition:.2s}.editor-card textarea{resize:vertical;min-height:75px}.editor-card input:focus,.editor-card textarea:focus,.editor-card select:focus{border-color:#9acb46;box-shadow:0 0 0 3px #c7ff5410}.editor-card input::placeholder,.editor-card textarea::placeholder{color:#596052}.editor-card .optional,.editor-card .required{font-size:8px;color:#78816c;font-weight:500;margin-left:4px}.editor-card .required{color:#d5a35e}.file-field input[type=file]{padding:9px!important;font-size:10px!important}.file-field input::file-selector-button{background:#242c1e;color:#d7efb5;border:1px solid #3b4b2c;border-radius:5px;padding:7px 10px;margin-right:10px;font-size:9px;cursor:pointer}.file-field>small{font-size:9px;color:#70786a;font-weight:400}.toggle-line{display:flex!important;align-items:center;gap:10px!important;cursor:pointer}.toggle-line>input{position:absolute;opacity:0;width:1px;height:1px}.fake-toggle{width:34px;height:19px;background:#343a30;border-radius:20px;position:relative;transition:.2s;flex:none}.fake-toggle:after{content:'';position:absolute;width:13px;height:13px;background:#a5aa9e;border-radius:50%;left:3px;top:3px;transition:.2s}.toggle-line input:checked+.fake-toggle{background:#829f42}.toggle-line input:checked+.fake-toggle:after{left:18px;background:#fff}.toggle-line b,.toggle-line small{display:block}.toggle-line b{font-size:10px;color:#dce2d5}.toggle-line small{font-size:9px;color:#7e8775;font-weight:400;margin-top:3px}.editor-submit{justify-self:start;padding:13px 18px;font-size:10px}.editor-submit:disabled{opacity:.65;cursor:wait}.library-card{min-width:0}.library-head{margin-bottom:15px}.count-pill{background:#c7ff5415;color:#c7ff54;border:1px solid #c7ff5425;border-radius:20px;padding:5px 10px;font-size:10px;font-weight:700}.list-search{width:100%;background:#0b0e0b;border:1px solid #2c3229;border-radius:8px;color:#eee;padding:11px 13px;font-size:10px;outline:0;margin-bottom:12px}.list-search:focus{border-color:#829e49}.admin-list{border:0;display:grid;gap:7px}.admin-item{display:flex;align-items:center;gap:11px;padding:9px;background:#171a16;border:1px solid #252b22;border-radius:9px;min-width:0}.item-thumb{width:49px;height:49px;flex:none;border-radius:7px;overflow:hidden;background:#252b20;display:grid;place-items:center;color:#c7ff54;font-size:19px}.item-thumb img{width:100%;height:100%;object-fit:cover}.item-info{min-width:0;flex:1}.item-info b,.item-info small,.item-info em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-info b{font-size:10px;color:#e5e9df}.item-info small{font-size:9px;color:#90988a;margin-top:4px}.item-info em{font-style:normal;font-size:8px;color:#6e7766;margin-top:5px}.item-delete{width:29px;height:29px;flex:none;border:1px solid #59312c;background:#2a1917;color:#f28c7c;border-radius:7px;font-size:19px;line-height:1;cursor:pointer;transition:.2s}.item-delete:hover{background:#51231e;color:#fff}.item-delete:disabled{opacity:.5}.empty-admin{padding:35px 15px;text-align:center;display:grid;justify-items:center;gap:8px;color:#798171}.empty-admin>span{font-size:24px;color:#c7ff54}.empty-admin b{font-size:11px;color:#bfc6b7}.empty-admin small{font-size:9px}.review-library{max-width:100%}.review-item{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid #292e26}.review-avatar{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:#28321c;color:#c7ff54;font-weight:800;font-size:12px}.review-body{flex:1;min-width:0}.review-meta{display:flex;justify-content:space-between;gap:12px}.review-meta b{font-size:11px}.review-meta span{color:#c7ff54;letter-spacing:1px;font-size:11px}.review-body p{font-size:10px;line-height:1.6;color:#aeb4a7;margin:8px 0}.review-body>small{font-size:8px;color:#77806e}.review-actions{display:flex;align-items:center;gap:7px}.visibility-btn{background:#20271a;border:1px solid #39452c;color:#c7e99b;border-radius:6px;padding:7px 9px;font-size:9px;cursor:pointer;white-space:nowrap}.visibility-btn:hover{background:#2a3820}.toast{bottom:28px;background:#c7ff54;color:#10120b;border-radius:9px;padding:13px 18px;box-shadow:0 12px 40px #0008}.form-message{font-size:10px;min-height:14px}.form-message.error{color:#ff8a7b}.form-message.success{color:#c7ff54}.loader-dot{display:inline-block;width:9px;height:9px;border:2px solid #18210c;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;margin-right:7px;vertical-align:middle}.admin-v2 [hidden]{display:none!important}@keyframes adminFade{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.admin-sidebar{width:205px}.admin-workspace{margin-left:205px}.editor-layout{grid-template-columns:1fr}.overview-columns{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.admin-sidebar{position:sticky;top:0;width:100%;height:auto;padding:10px 12px;background:#0d0f0df5;border-right:0;border-bottom:1px solid #252923}.side-brand{padding:0 4px 10px}.side-brand .brand-mark{width:25px;height:25px;font-size:15px}.side-caption,.sidebar-bottom{display:none}.side-nav{display:flex;overflow-x:auto;gap:5px;padding-bottom:2px}.side-link{width:auto;white-space:nowrap;padding:9px 10px;font-size:10px;gap:7px}.side-link i{display:none}.nav-ico{font-size:14px;width:auto}.admin-workspace{margin-left:0}.workspace-top{height:60px;padding:0 5%}.workspace-top .top-actions{gap:9px}.admin-user{font-size:0}.user-dot{font-size:10px}.workspace-top .btn{font-size:9px;padding:8px 10px}.workspace-content{padding:27px 4% 55px}.welcome-row{align-items:flex-start}.welcome-note{display:none}.welcome-row h1{font-size:31px}.stats-grid{gap:8px}.stat-card{min-height:108px;padding:14px}.stat-card>strong{font-size:26px}.stat-card>small{font-size:8px}.quick-card,.recent-card,.library-card,.editor-card{padding:16px}.quick-actions{gap:7px}.quick-actions button{padding:11px;min-height:92px}.page-heading h1{font-size:33px}.page-symbol{font-size:40px;padding:0}.editor-layout{grid-template-columns:minmax(0,1fr);gap:12px}.review-item{gap:8px}.review-actions{flex-direction:column-reverse;align-items:flex-end}.visibility-btn{font-size:8px;padding:6px}.login-card{padding:30px 23px}.login-card h1{font-size:37px}.login-brand{top:20px;left:20px}}
@media(max-width:380px){.side-link{padding:8px;font-size:9px}.quick-actions{grid-template-columns:1fr 1fr}.workspace-top .eyebrow{font-size:7px}.top-title{font-size:13px}}

/* =====================================================================
   МОБІЛЬНА АДАПТАЦІЯ SoundVibe
   Усе нижче працює лише на екранах ≤1000px / touch-пристроях.
   ПК-версія (від 1001px, з мишею) не змінюється.
   ===================================================================== */
@keyframes svNavIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

@media (max-width:1000px),(hover:none){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
  button,.btn,a{touch-action:manipulation}
}

/* На touch-екранах немає hover: показуємо кнопку play одразу, без «залипання» ефектів */
@media (hover:none){
  .track-card:hover{transform:none;border-color:#202020;box-shadow:none}
  .track-card:hover .track-cover,.album-card:hover img{transform:none}
  .cover-play{opacity:1;transform:none}
  .promo-banner:hover,.btn-primary:hover{transform:none}
}

/* ---------- Планшети (портрет) ---------- */
@media (min-width:701px) and (max-width:900px){
  .hero{flex-direction:column;align-items:flex-start;gap:40px;padding-top:70px}
  .hero-copy{max-width:none}
  .hero-art{align-self:center;margin:0;transform:none}
}

/* ---------- Телефони ---------- */
@media (max-width:700px){
  html{scroll-padding-top:76px}
  body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
  body:has(.player.visible){padding-bottom:132px}

  /* Шапка + меню */
  .topbar{height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 4% 0}
  .brand{font-size:20px}
  .header-actions{gap:2px}
  .icon-btn,.mobile-menu{display:grid;place-items:center;width:44px;height:44px;padding:0;font-size:26px;border-radius:10px}
  .main-nav{top:100%;padding:6px 5% 12px;gap:0;max-height:calc(100vh - 64px);max-height:calc(100dvh - 64px);overflow:auto;background:#101010;box-shadow:0 24px 50px #000b}
  .main-nav.nav-open{display:flex;animation:svNavIn .22s ease both}
  .main-nav a{font-size:16px;color:#ddd;padding:16px 4px;border-bottom:1px solid #1f1f1f}
  .main-nav a:last-child{border-bottom:0}

  /* Hero */
  .hero{min-height:0;padding:44px 6% 56px}
  .hero h1{font-size:clamp(44px,16.5vw,72px);letter-spacing:-.07em;line-height:.98;margin:0 0 20px}
  .hero-copy>p{font-size:15px;max-width:none;line-height:1.7}
  .hero-buttons{flex-direction:column;gap:10px;margin-top:26px}
  .hero-buttons .btn{width:100%;padding:16px 20px;font-size:14px;justify-content:center}
  .hero-art{width:100%;max-width:340px;height:290px;margin:34px auto 0;transform:none}
  .hero-disc{width:210px;height:210px;padding:13px}
  .disc-center{width:62px;height:62px;font-size:19px}
  .hero-orbit.orbit-a{width:310px;height:120px}
  .hero-orbit.orbit-b{width:290px;height:200px}
  .floating-tag{padding:9px 12px;font-size:9px;letter-spacing:1.5px}
  .floating-tag b{font-size:15px}
  .tag-top{top:6px;right:0}
  .tag-bottom{bottom:8px;left:0;gap:9px}

  /* Секції */
  .section{padding:48px 5%}
  .section-head{gap:16px;margin-bottom:20px}
  .section h2{font-size:clamp(30px,9vw,38px);letter-spacing:-.05em}
  .search-wrap{padding:0 14px;border-radius:12px}
  .search-wrap input{font-size:16px;padding:14px 0}   /* 16px — щоб iOS не зумив сторінку */
  .filter-row{flex-wrap:nowrap;overflow-x:auto;margin:0 -5% 18px;padding:0 5% 2px;scrollbar-width:none}
  .filter-row::-webkit-scrollbar{display:none}
  .filter-chip{flex:none;padding:11px 16px;font-size:13px}

  /* Треки */
  .track-grid{gap:12px}
  .track-card{padding:8px;border-radius:12px}
  .track-grid .track-card>.fav-btn{top:14px;right:14px;width:36px;height:36px}
  .track-info{padding:12px 2px 8px;gap:4px}
  .track-info>div{min-width:0}
  .track-info h3{font-size:14px}
  .track-info p{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .more-btn{flex:none;width:32px;height:32px;margin:-6px -6px 0 0;font-size:13px}
  .track-meta{flex-wrap:wrap;gap:8px;padding-top:9px;font-size:10px;letter-spacing:.5px}
  .track-meta>span{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .track-meta button{width:100%;padding:11px 8px;font-size:11px;border:1px solid #c4ff5540;border-radius:8px;background:#c4ff5512}

  /* Альбоми */
  .album-grid{gap:12px}
  .album-card{height:clamp(190px,52vw,260px)}
  .album-grid .album-card>.fav-btn{top:10px;right:10px;width:36px;height:36px}
  .album-overlay{padding:14px}
  .album-overlay span{font-size:10px}
  .album-overlay h3{font-size:16px}
  .album-overlay p{font-size:12px}

  /* CTA */
  .wide-cta{position:relative;margin:20px 5%;padding:36px 22px;border-radius:16px}
  .wide-cta>div:first-child{position:relative;z-index:1}
  .wide-cta h2{font-size:clamp(34px,10.5vw,46px);letter-spacing:-.05em}
  .wide-cta p{font-size:14px}
  .cta-symbol{position:absolute;right:-6px;bottom:-26px;font-size:130px;opacity:.14;pointer-events:none}

  /* Дописи */
  .posts-section{padding-bottom:60px}
  .post-grid{gap:14px}
  .post-card>img{height:200px}
  .post-content{padding:18px}
  .post-content h3{font-size:19px}
  .post-content p{font-size:14px;line-height:1.65}
  .post-content .eyebrow{font-size:10px}
  footer{padding:24px 5% calc(24px + env(safe-area-inset-bottom));font-size:12px}

  /* Плеєр: ряд 1 — трек + керування, ряд 2 — таймлайн. Гучність на телефонах не потрібна (є кнопки пристрою) */
  .player{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;border-radius:18px 18px 0 0;
    padding:10px max(4%,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(4%,env(safe-area-inset-left))}
  .player-center{display:contents}
  .player-track{grid-column:1;grid-row:1}
  .player-controls{grid-column:2;grid-row:1;margin:0;gap:2px}
  .timeline{grid-column:1/-1;grid-row:2;gap:10px;font-size:11px}
  .player-volume{display:none}
  .player-track img{width:46px;height:46px;border-radius:8px}
  .player-track strong{font-size:14px}
  .player-track small{font-size:12px;margin-top:3px}
  .player-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;font-size:15px}
  .player-controls .play-main{width:46px;height:46px;font-size:16px}
  .timeline input{height:24px;margin:0}
  .timeline span{min-width:32px}

  /* Toast не перекриває плеєр */
  .toast{bottom:calc(24px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 32px);text-align:center;font-size:13px}
  body:has(.player.visible) .toast{bottom:calc(140px + env(safe-area-inset-bottom))}

  /* Вікно треку — «bottom sheet» */
  .modal{padding:0;align-items:flex-end}
  .modal-card{width:100%;max-height:92vh;max-height:92dvh;border-radius:20px 20px 0 0;border-bottom:0;
    padding:56px 18px calc(24px + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .modal-close{position:sticky;top:8px;right:auto;display:grid;place-items:center;width:40px;height:40px;margin:-44px 0 4px auto;
    padding:0;border-radius:50%;background:#1d1d1d;border:1px solid #333;color:#ddd;font-size:24px;line-height:1;z-index:3}
  body:has(.modal.open){overflow:hidden}
  .detail-layout{grid-template-columns:1fr;gap:18px}
  .detail-cover{max-width:min(240px,72vw);margin:0 auto}
  .detail-layout h2{font-size:26px}
  .detail-layout p{font-size:15px}
  .modal .detail-layout .btn{width:100%;padding:15px;font-size:14px;margin:8px 0 0}
  .modal .detail-layout .fav-wide{margin-left:0}
  .review-area{margin-top:24px}
  .review-form{grid-template-columns:minmax(0,1fr) 112px;gap:10px}
  .review-form input,.review-form select,.review-form textarea{font-size:16px;padding:13px}
  .review-form textarea{min-height:110px}
  .review-form button{width:100%;justify-self:stretch;padding:15px;font-size:14px}
  .review>div,.review p{font-size:14px}

  /* ============ АДМІН-ПАНЕЛЬ ============ */
  .login-screen{min-height:100vh;min-height:100dvh;flex-direction:column;justify-content:center;padding:92px 16px 28px}
  .login-brand{top:calc(24px + env(safe-area-inset-top))}
  .login-foot{position:static;margin-top:26px}
  .login-card{padding:30px 22px;border-radius:18px}
  .login-card h1{font-size:clamp(32px,10vw,40px)}
  .login-form label{font-size:12px}
  .login-form input{font-size:16px;padding:15px}
  .login-form .btn{height:52px;font-size:14px}
  .login-back{font-size:13px;padding:6px 0}

  .admin-sidebar{z-index:20;padding:calc(10px + env(safe-area-inset-top)) 12px 8px}
  .side-brand{padding:0 4px 8px}
  /* кнопка «Вийти» раніше зникала на телефоні — повертаємо її в шапку */
  .sidebar-bottom{display:block;margin:0}
  .sidebar-bottom .admin-online,.sidebar-bottom .side-site-link{display:none}
  .sidebar-bottom .side-logout{position:absolute;top:calc(8px + env(safe-area-inset-top));right:12px;width:auto;padding:9px 12px;
    font-size:11px;color:#c9cfc0;border:1px solid #2b3127;border-radius:9px}
  .side-nav{margin:0 -12px;padding:0 12px 4px;scrollbar-width:none}
  .side-nav::-webkit-scrollbar{display:none}
  .side-link{flex:none;padding:11px 14px;font-size:12px;border-radius:10px}
  .workspace-top{position:static;height:auto;padding:16px 5%}
  .workspace-content{padding:22px 4% 48px}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stat-card:first-child{grid-column:1/-1}
  .stat-top{font-size:12px}
  .stat-card>small{font-size:11px}
  .quick-actions button:last-child{grid-column:1/-1}
  .quick-actions button b{font-size:13px}
  .quick-actions button small{font-size:11px}
  .section-title .eyebrow,.library-head .eyebrow,.page-heading .eyebrow,.workspace-top .eyebrow{font-size:10px}
  .page-heading .muted,.welcome-row .muted{font-size:13px}
  .recent-row>div:last-child{min-width:0}
  .recent-row b{font-size:13px;max-width:100%}
  .recent-row small{font-size:11px}

  .editor-heading h2{font-size:17px}
  .editor-heading p{font-size:12px}
  .editor-card>label{font-size:12px}
  .editor-card input:not([type=checkbox]),.editor-card textarea,.editor-card select,.list-search{font-size:16px;padding:13px}
  .editor-card .file-field input[type=file]{font-size:13px!important}
  .editor-card .optional,.editor-card .required{font-size:10px}
  .file-field>small,.toggle-line small{font-size:11px}
  .toggle-line b{font-size:13px}
  .editor-submit{justify-self:stretch;width:100%;padding:15px;font-size:13px}
  .form-message{font-size:12px}
  .count-pill{font-size:12px}

  .admin-item{padding:10px;gap:12px}
  .item-thumb{width:52px;height:52px}
  .item-info b{font-size:13px}
  .item-info small{font-size:12px}
  .item-info em{font-size:10px}
  .item-delete{width:40px;height:40px;font-size:22px;border-radius:9px}
  .review-item{flex-wrap:wrap}
  .review-meta{flex-wrap:wrap}
  .review-meta b{font-size:13px}
  .review-body p{font-size:13px}
  .review-body>small{font-size:11px}
  .review-actions{flex-direction:row;width:100%;justify-content:flex-end;padding-left:46px}
  .visibility-btn{font-size:12px;padding:10px 14px}
}

/* ---------- Дуже вузькі екрани (iPhone SE, 320–380px) ---------- */
@media (max-width:380px){
  .track-grid,.album-grid{gap:10px}
  .track-info h3{font-size:13px}
  .hero-art{height:260px}
  .hero-disc{width:190px;height:190px}
  .hero-orbit.orbit-a{width:280px}
  .hero-orbit.orbit-b{width:260px}
  .album-overlay h3{font-size:15px}
  .detail-layout h2{font-size:23px}
}

/* =====================================================================
   ОБРАНЕ · АКАУНТ · ПРОФІЛЬ
   ===================================================================== */
.fav-open{position:relative;font-size:26px;line-height:1;padding:0 2px;transition:color .2s}
.fav-open:hover,.fav-open.has{color:var(--lime)}
.fav-badge{position:absolute;top:-7px;right:-9px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--lime);color:#111;font:700 10px/17px var(--font);font-style:normal;text-align:center}
.auth-btn{display:inline-flex;align-items:center;gap:8px;background:#191919;border:1px solid #303030;color:#ddd;padding:10px 14px;border-radius:8px;font-size:12px;font-weight:700;transition:.2s}
.auth-btn:hover{border-color:var(--lime);color:var(--lime)}
.auth-btn svg{flex:none}
.avatar-btn{width:40px;height:40px;padding:0;border-radius:50%;border:2px solid var(--lime);background:#1a1a1a;color:#ddd;overflow:hidden;display:grid;place-items:center;transition:.2s;box-shadow:0 0 18px #c4ff5520}
.avatar-btn:hover{transform:scale(1.07)}
.avatar-btn svg{width:20px;height:20px}
.avatar-btn img,.me-avatar img{width:100%;height:100%;object-fit:cover;display:block}

.auth-card{width:min(440px,100%)}
.auth-title{font:700 34px var(--display);letter-spacing:-2px;margin:10px 0 6px}
.auth-title span{color:var(--lime)}
.auth-card .muted{font-size:13px;margin:8px 0 0}
.auth-tabs{display:flex;gap:4px;background:#0d0d0d;border:1px solid #262626;border-radius:10px;padding:4px;margin:22px 0 18px}
.auth-tabs button{flex:1;background:none;border:0;border-radius:7px;color:#888;padding:11px;font-size:13px;font-weight:700;transition:.2s}
.auth-tabs button.active{background:var(--lime);color:#111}
.auth-form,.set-form{display:grid;gap:14px}
.auth-form label,.set-form label{display:grid;gap:7px;color:#aaa;font-size:11px;font-weight:700}
.auth-form input,.set-form input{width:100%;background:#1a1a1a;border:1px solid #333;border-radius:8px;color:#eee;padding:13px;outline:0;font-size:13px;transition:.2s}
.auth-form input:focus,.set-form input:focus{border-color:var(--lime);box-shadow:0 0 0 3px #c4ff5512}
.auth-form .btn{padding:15px}
.link-btn{background:none;border:0;color:#888;font-size:12px;justify-self:start;padding:4px 0}
.link-btn:hover{color:var(--lime)}

.me-card{width:min(780px,100%)}
.me-head{display:flex;align-items:center;gap:18px;padding-right:44px}
.me-avatar{width:72px;height:72px;flex:none;border-radius:50%;border:2px solid var(--lime);overflow:hidden;background:#1b1b1b;display:grid;place-items:center;color:#bbb}
.me-avatar svg{width:44%;height:44%}
.me-avatar.big{width:96px;height:96px}
.me-who{min-width:0}
.me-who h2{font:700 28px var(--display);letter-spacing:-1px;margin:6px 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.me-who .muted{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.me-tabs{display:flex;gap:6px;border-bottom:1px solid #292929;margin:24px 0 20px}
.me-tab{background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;color:#888;padding:12px 14px;font-size:13px;font-weight:600}
.me-tab:hover{color:#ddd}
.me-tab.active{color:var(--lime);border-color:var(--lime)}
.me-tab i{font-style:normal;background:#c4ff5518;color:var(--lime);border-radius:10px;padding:1px 7px;font-size:10px;margin-left:6px}
.me-tab i[hidden]{display:none}

.fav-list{display:grid;gap:8px}
.fav-row{display:flex;align-items:center;gap:12px;background:#151515;border:1px solid #232323;border-radius:10px;padding:8px}
.fav-row-cover{position:relative;width:52px;height:52px;flex:none;border:0;padding:0;border-radius:8px;overflow:hidden;background:#252525;color:#fff}
.fav-row-cover img{width:100%;height:100%;object-fit:cover;display:block}
.fav-row-cover span{position:absolute;inset:0;display:grid;place-items:center;background:#000a;opacity:0;transition:.2s}
.fav-row-cover:hover span{opacity:1}
.fav-row-info{flex:1;min-width:0;text-align:left;background:none;border:0;color:inherit;padding:0}
.fav-row-info b,.fav-row-info small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fav-row-info b{font:600 14px var(--display)}
.fav-row-info small{color:#888;font-size:12px;margin-top:4px}
.fav-row-info:hover b{color:var(--lime)}
.fav-albums{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.fav-albums .album-card{height:190px}
.guest-note{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;padding:16px 18px;border:1px solid #30352a;background:linear-gradient(110deg,#191d12,#111);border-radius:12px}
.guest-note b,.guest-note small{display:block}
.guest-note b{font-size:13px}
.guest-note small{color:#889;font-size:12px;margin-top:4px}
.guest-actions{display:flex;gap:8px;flex-wrap:wrap}

.set-avatar{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.set-avatar-actions{display:flex;gap:8px;flex-wrap:wrap}
.file-btn{cursor:pointer}
.set-form{grid-template-columns:1fr auto;align-items:end;margin-bottom:16px}
.set-form .btn{padding:13px 18px}
.set-row{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid #262626;margin:8px 0 14px;font-size:12px;color:#888}
.set-row b{color:#ddd;font-weight:600;overflow:hidden;text-overflow:ellipsis}
.btn.danger{color:#ff8a8a;border-color:#542929}
.btn.danger:hover{border-color:#ff8a8a}
#set-message,#auth-message{min-height:16px}

@media (hover:none){.fav-row-cover span{opacity:1;background:#0005}}

@media (max-width:700px){
  .fav-open{font-size:26px}
  .fav-badge{top:4px;right:1px}
  .auth-btn{width:44px;height:44px;padding:0;justify-content:center;border-radius:12px}
  .auth-text{display:none}
  .avatar-btn{width:40px;height:40px;margin:0 3px}
  .auth-title{font-size:30px}
  .auth-form input,.set-form input{font-size:16px;padding:14px}
  .auth-form .btn,.set-form .btn{min-height:48px;font-size:14px}
  .me-head{gap:14px}
  .me-avatar{width:60px;height:60px}
  .me-avatar.big{width:84px;height:84px}
  .me-who h2{font-size:23px}
  .me-tab{padding:13px 12px;flex:1;text-align:center}
  .fav-row-info b{font-size:15px}
  .fav-albums{grid-template-columns:repeat(2,minmax(0,1fr))}
  .set-form{grid-template-columns:1fr}
  .set-avatar{gap:16px}
  .guest-note{flex-direction:column;align-items:stretch;text-align:left}
  .guest-note .btn,.guest-actions .btn{width:100%;padding:14px}
  .btn.danger{width:100%;padding:15px;font-size:14px}
}
@media (max-width:360px){#search-focus{display:none}}

/* Декоративні розмиті плями не повинні розширювати сторінку на телефоні */
@media (max-width:700px){
  .ambient{position:fixed;max-width:100vw}
  html,body{max-width:100%}
}


/* ===== Бібліотека треків: кнопка та окрема сторінка ===== */
.view-all-tracks{
  width:min(100%, 360px);
  min-height:58px;
  margin:30px auto 0;
  padding:0 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border:1px solid var(--lime);
  border-radius:9px;
  background:linear-gradient(110deg,#151a10,#111);
  color:#f4f4f4;
  font:700 13px var(--display);
  letter-spacing:.45px;
  transition:background .25s,border-color .25s,transform .25s,box-shadow .25s;
}
.view-all-tracks[hidden]{display:none!important}
.view-all-tracks span{color:var(--lime);font-size:23px;line-height:1;transition:transform .25s}
.view-all-tracks:hover{background:#1b2412;border-color:#d6ff8a;transform:translateY(-2px);box-shadow:0 10px 28px #c4ff5518}
.view-all-tracks:hover span{transform:translate(3px,-3px)}
.tracks-page .hero,.tracks-page #albums,.tracks-page .wide-cta,.tracks-page #posts{display:none!important}
.tracks-page .all-tracks-page-section{min-height:calc(100vh - 190px);padding-top:58px}
.tracks-page .all-tracks-page-section .section-head{align-items:end}
.tracks-page .all-tracks-page-section h2{margin-top:10px}
.back-home-tracks{display:inline-flex;align-items:center;margin-top:34px;color:#999;font-size:12px;transition:color .2s}
.back-home-tracks:hover{color:var(--lime)}
@media(max-width:700px){
  .view-all-tracks{display:none!important}
  .tracks-page .all-tracks-page-section{padding-top:38px}
  .tracks-page .all-tracks-page-section .section-head{align-items:stretch;flex-direction:column}
}


/* Clickable current-track area in the bottom player */
.player-track[data-open-player]{cursor:pointer;border-radius:9px;padding:4px;margin:-4px;transition:background .2s ease}
.player-track[data-open-player]:hover{background:#ffffff0a}
.player-track[data-open-player]:focus-visible{outline:2px solid var(--lime);outline-offset:4px}

/* SoundVibe expanded now-playing screen */
.track-title-open{display:inline;padding:0;border:0;background:none;color:inherit;text-align:left;font:inherit;cursor:pointer;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;transition:color .2s}
.track-title-open:hover{color:var(--lime)}
.cover-expand{position:absolute;left:12px;bottom:12px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#090909b8;border:1px solid #ffffff40;color:#fff;font-size:23px;line-height:1;opacity:0;transform:translateY(5px);transition:.2s;z-index:2}
.track-card:hover .cover-expand,.cover-button:focus-visible .cover-expand{opacity:1;transform:none}
.now-playing{position:fixed;inset:0;z-index:100;background:radial-gradient(ellipse at 18% 18%,#29351a 0,transparent 38%),radial-gradient(ellipse at 85% 85%,#172016 0,transparent 38%),linear-gradient(135deg,#11150e,#080908 58%,#10130d);color:#f5f6f1;display:flex;align-items:center;justify-content:center;padding:42px 7%;opacity:0;visibility:hidden;pointer-events:none;transform:scale(1.015);transition:opacity .35s ease,visibility .35s,transform .45s cubic-bezier(.2,.8,.2,1);overflow:auto}
.now-playing.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.np-close{position:absolute;top:max(24px,env(safe-area-inset-top));right:max(28px,env(safe-area-inset-right));width:48px;height:48px;border:1px solid #ffffff28;border-radius:50%;background:#ffffff0c;color:#fff;font-size:34px;font-weight:300;line-height:1;display:grid;place-items:center;cursor:pointer;transition:.2s;z-index:2}
.np-close:hover{background:var(--lime);border-color:var(--lime);color:#10120b;transform:rotate(90deg)}
.np-inner{width:min(1080px,100%);margin:auto}
.np-topline{display:flex;align-items:center;gap:10px;color:#c7ff54;font:700 11px var(--display);letter-spacing:3px;margin-bottom:clamp(30px,6vh,65px)}
.np-brand-dot{width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 18px var(--lime)}
.np-top-caption{margin-left:8px;color:#74796c;font-size:9px;letter-spacing:2px}
.np-main{display:grid;grid-template-columns:minmax(280px,470px) minmax(300px,1fr);align-items:center;gap:clamp(45px,8vw,110px)}
.np-art-wrap{position:relative;width:100%;max-width:470px;justify-self:center;aspect-ratio:1}
.np-art-glow{position:absolute;inset:12%;border-radius:50%;background:var(--lime);filter:blur(90px);opacity:.16}
.np-cover{position:relative;width:100%;height:100%;object-fit:cover;border-radius:18px;box-shadow:0 35px 100px #000a;border:1px solid #ffffff1c;display:block;animation:npCoverIn .5s cubic-bezier(.2,.8,.2,1) both}
@keyframes npCoverIn{from{opacity:.5;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
.np-details{min-width:0}
.np-eyebrow{color:var(--lime);font-size:10px;font-weight:800;letter-spacing:2.5px;margin-bottom:15px}
.np-details h2{font:700 clamp(32px,4.2vw,58px)/1.06 var(--display);letter-spacing:-2px;margin:0 0 12px;overflow-wrap:anywhere}
.np-details>p{color:#a4a89c;font-size:17px;margin:0 0 34px}
.np-visualizer{height:74px;display:flex;align-items:center;justify-content:space-between;gap:5px;margin:0 0 30px;padding:0 2px;opacity:.45;overflow:hidden}
.np-visualizer i{display:block;flex:1;max-width:9px;height:10%;min-height:4px;border-radius:8px;background:linear-gradient(0deg,#9edb37,var(--lime));transform-origin:center;box-shadow:0 0 14px #c7ff5430}
.np-visualizer.playing{opacity:1}
.np-visualizer.playing i{animation:npBars .72s ease-in-out infinite alternate}
.np-visualizer.playing i:nth-child(4n+1){animation-duration:.52s}.np-visualizer.playing i:nth-child(4n+2){animation-duration:.83s}.np-visualizer.playing i:nth-child(4n+3){animation-duration:.64s}.np-visualizer.playing i:nth-child(5n){animation-duration:1s}
@keyframes npBars{0%{height:8%}25%{height:72%}55%{height:28%}80%{height:95%}100%{height:42%}}
.np-timeline{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:12px;color:#888;font-size:11px;font-variant-numeric:tabular-nums}
.np-timeline input{width:100%;height:4px;accent-color:var(--lime);cursor:pointer}
.np-controls{display:flex;align-items:center;justify-content:center;gap:32px;margin:28px 0 30px}
.np-controls button{width:48px;height:48px;border:0;background:none;color:#d4d8cc;font-size:19px;cursor:pointer;transition:.2s}
.np-controls button:hover:not(:disabled){color:var(--lime);transform:scale(1.1)}
.np-controls button:disabled{opacity:.25;cursor:default}
.np-controls .np-play{width:66px;height:66px;border-radius:50%;background:var(--lime);color:#10120b;font-size:23px;box-shadow:0 8px 35px #c7ff5430}
.np-controls .np-play:hover{background:#dcff9a;color:#10120b;transform:scale(1.06)}
.np-footer-note{display:flex;align-items:center;justify-content:center;gap:9px;color:#68705c;font:700 9px var(--display);letter-spacing:2.5px}
.np-live-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px var(--lime)}
body.now-playing-open{overflow:hidden}
@media(max-width:700px){
 .cover-expand{opacity:1;transform:none;left:8px;bottom:8px;width:32px;height:32px;font-size:21px}
 .now-playing{align-items:stretch;padding:calc(72px + env(safe-area-inset-top)) 7% calc(28px + env(safe-area-inset-bottom));}
 .np-close{top:calc(14px + env(safe-area-inset-top));right:5%;width:43px;height:43px;font-size:31px}
 .np-inner{display:flex;flex-direction:column;justify-content:center;width:100%;max-width:460px}
 .np-topline{font-size:9px;letter-spacing:2px;margin:0 0 26px}
 .np-main{display:flex;flex-direction:column;gap:28px;width:100%}
 .np-art-wrap{width:min(76vw,340px);max-width:340px;flex:none}
 .np-cover{border-radius:14px}
 .np-details{width:100%;text-align:center}
 .np-eyebrow{font-size:9px;margin-bottom:9px}
 .np-details h2{font-size:clamp(25px,8vw,36px);letter-spacing:-1px;margin-bottom:6px}
 .np-details>p{font-size:14px;margin-bottom:20px}
 .np-visualizer{height:48px;margin-bottom:22px;gap:4px}
 .np-visualizer i{max-width:7px}
 .np-timeline{grid-template-columns:36px 1fr 36px;gap:8px;font-size:10px}
 .np-controls{gap:24px;margin:22px 0 22px}
 .np-controls button{width:44px;height:44px;font-size:17px}
 .np-controls .np-play{width:60px;height:60px;font-size:21px}
 .np-footer-note{font-size:8px}
}
@media(max-height:700px) and (max-width:700px){.now-playing{padding-top:65px}.np-topline{margin-bottom:14px}.np-main{gap:16px}.np-art-wrap{width:min(54vw,250px)}.np-visualizer{height:35px;margin-bottom:12px}.np-controls{margin:14px 0}.np-details>p{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.now-playing,.np-cover,.np-visualizer.playing i{transition:none;animation:none!important}}
