/*
Theme Name: Zedche
Theme URI: https://example.com/zedche
Author: Zedche
Description: Modern Zambian-inspired music streaming and digital music marketplace. Includes artist registration/login, dashboards, music uploads, artwork carousels and WooCommerce-ready digital sales.
Version: 2.3.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: zedche
*/
:root{--bg:#08090c;--surface:#101218;--surface2:#181b23;--text:#f8f8fb;--muted:#969daa;--line:#252a35;--brand:#1ed760;--brand2:#20d66a;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(var(--max),92%);margin:auto}
.header{position:sticky;top:0;z-index:100;background:rgba(8,9,12,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.06)}.nav{height:72px;display:flex;align-items:center;gap:30px}.logo{font-size:25px;font-weight:950;letter-spacing:-1px}.logo b{color:var(--brand)}.navlinks{display:flex;gap:22px;margin-left:auto;align-items:center}.navlinks a{font-size:14px;color:#d5d8df}.navlinks a:hover{color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:11px 19px;background:var(--brand);color:#071009;font-weight:800;cursor:pointer}.btn:hover{filter:brightness(1.08)}.btn.dark{background:var(--surface2);color:#fff;border:1px solid var(--line)}
.hero{min-height:520px;display:grid;align-items:end;padding:90px 0 70px;background:radial-gradient(circle at 75% 25%,rgba(30,215,96,.18),transparent 30%),linear-gradient(180deg,#10131a,#08090c)}.hero h1{font-size:clamp(46px,8vw,86px);letter-spacing:-4px;line-height:.98;max-width:850px;margin:10px 0 22px}.hero p{max-width:680px;color:var(--muted);font-size:18px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:900;color:var(--brand)}
.section{padding:48px 0}.sectionhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.sectionhead h2{font-size:26px;margin:0;letter-spacing:-.7px}.sectionhead a{font-size:13px;color:var(--muted)}.slider{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 18px;scrollbar-width:none}.slider::-webkit-scrollbar{display:none}.release{flex:0 0 205px;scroll-snap-align:start}.artwork{aspect-ratio:1;border-radius:9px;overflow:hidden;background:linear-gradient(135deg,#292e39,#11141b);box-shadow:0 12px 30px rgba(0,0,0,.25);position:relative}.artwork img{width:100%;height:100%;object-fit:cover}.placeholder{width:100%;height:100%;display:grid;place-items:center;font-size:56px;color:#aaa}.release:hover .artwork{transform:translateY(-3px);transition:.2s}.release-title{font-size:14px;font-weight:750;margin-top:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.release-meta{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arrowrow{display:flex;gap:8px}.arrow{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface2);color:#fff;cursor:pointer}
.artist-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.artist{min-width:0}.artist img,.artist-placeholder{aspect-ratio:1;border-radius:50%;object-fit:cover;background:linear-gradient(135deg,#303541,#11141b);display:grid;place-items:center;font-size:42px}.artist strong{display:block;text-align:center;margin-top:10px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.page{padding:55px 0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px}.form{max-width:560px;margin:0 auto}.field{margin:0 0 17px}.field label{display:block;font-size:13px;font-weight:750;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;background:#0b0d11;color:#fff;border:1px solid var(--line);border-radius:10px;padding:13px}.field textarea{min-height:130px}.notice{background:var(--surface2);border:1px solid var(--line);padding:14px;border-radius:10px;margin-bottom:18px}.form-links{display:flex;justify-content:space-between;margin-top:15px;font-size:13px;color:var(--muted)}
.dashboard{display:grid;grid-template-columns:220px 1fr;gap:24px}.side{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:10px;height:max-content}.side a{display:block;padding:11px 12px;border-radius:9px;color:#c9cdd5}.side a:hover{background:var(--surface2);color:#fff}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.stat{background:var(--surface);border:1px solid var(--line);padding:19px;border-radius:14px}.stat strong{display:block;font-size:29px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:13px}.player{position:fixed;bottom:0;left:0;right:0;z-index:200;background:rgba(16,18,24,.97);border-top:1px solid var(--line);padding:10px 15px}.playerin{width:min(var(--max),100%);margin:auto;display:flex;align-items:center;gap:14px}.player audio{flex:1}.footer{padding:40px 0 100px;border-top:1px solid var(--line);color:var(--muted);margin-top:35px}
@media(max-width:900px){.artist-grid{grid-template-columns:repeat(3,1fr)}.dashboard{grid-template-columns:1fr}.side{display:flex;overflow:auto;gap:5px}.side a{white-space:nowrap}.navlinks a:not(.btn){display:none}}
@media(max-width:550px){.release{flex-basis:145px}.artist-grid{grid-template-columns:repeat(2,1fr)}.hero{min-height:470px}.hero h1{letter-spacing:-2px}.stats{grid-template-columns:1fr}}

.searchbox{display:flex;gap:10px;margin-bottom:25px}.searchbox input{flex:1;background:var(--surface);border:1px solid var(--line);color:#fff;border-radius:999px;padding:13px 18px}.searchbox button{border:0;border-radius:999px;background:var(--brand);font-weight:800;padding:0 22px}

/* Latest Post cards */
.postcard{flex:0 0 250px;width:250px}.postcard .postart{width:250px;height:250px;border-radius:10px;overflow:hidden;background:linear-gradient(135deg,#303541,#101218)}.postcard .postart img{width:250px;height:250px;object-fit:cover}.postcard .release-title{font-size:14px;margin-top:9px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.postmeta{font-size:12px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:550px){.postcard{flex-basis:250px;width:250px}.postcard .postart{width:250px;height:250px}.postcard .postart img{width:250px;height:250px}}
