:root{--bg:#0a0d14;--panel:#111722;--panel2:#151d2a;--line:#222c3b;--text:#eef3fa;--muted:#8492a6;--accent:#7c5cff;--green:#35d39a;--amber:#f6bd60;--red:#ff6b78}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}a{color:inherit;text-decoration:none}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:#0d121b;border-right:1px solid var(--line);padding:26px 16px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 34px}.brand b{display:block;font-size:16px;letter-spacing:.2px}.brand small{display:block;color:var(--muted);font-size:11px}.brandmark{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#8a70ff,#5d3be9);font-weight:900;box-shadow:0 7px 22px #6d4cff33}.navlabel,.eyebrow{font-size:10px;letter-spacing:1.5px;color:#66758b;font-weight:800}.navlabel{padding:0 12px 12px}.sidebar>a{padding:11px 13px;color:#9aa7ba;border-radius:9px;margin:2px 0;font-size:13px}.sidebar>a:hover,.sidebar>a:first-of-type{background:#191f31;color:#fff}.sidebarbottom{margin-top:auto;border-top:1px solid var(--line);padding:18px 5px 0;display:flex;align-items:center;gap:10px}.sidebarbottom b{font-size:12px;display:block}.sidebarbottom small{font-size:10px;color:var(--muted)}.userdot{width:32px;height:32px;border-radius:50%;background:#27314a;display:grid;place-items:center;font-weight:800;color:#c9c0ff}.logout{margin-left:auto;color:var(--muted)}.main{margin-left:250px;min-height:100vh}.topbar{height:92px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:#0b1018}.topbar h1{margin:3px 0 0;font-size:22px;letter-spacing:-.5px}.topright{display:flex;gap:18px;align-items:center}.livepill{font-size:11px;color:#b8c5d8;border:1px solid #283344;background:#121a26;border-radius:30px;padding:7px 11px}.livepill i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:6px;box-shadow:0 0 9px #35d39a88}.content{padding:30px 36px;max-width:1600px;margin:auto}.welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.welcome h2{font-size:24px;letter-spacing:-.7px;margin:7px 0}.welcome p,.panelhead p{margin:0;color:var(--muted);font-size:12px}.welcomeicon{font-size:34px;color:#8b79ff;background:#17152c;width:65px;height:65px;border-radius:20px;display:grid;place-items:center}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.stat,.panel{background:var(--panel);border:1px solid var(--line);border-radius:13px}.stat{padding:20px}.stat span{display:block;color:#9aa8bc;font-size:12px}.stat strong{display:block;font-size:30px;margin:7px 0 4px;letter-spacing:-1px}.stat small{color:var(--muted);font-size:11px}.green{color:var(--green)!important}.amber{color:var(--amber)!important}.grid2{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.panel{padding:22px;min-width:0}.panelhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.panelhead h3{font-size:15px;margin:0 0 4px}.textlink{color:#a89bff;font-size:11px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}th{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#697990;font-weight:700}td,th{padding:12px 9px;border-bottom:1px solid #202938}td{color:#cbd5e3}td small{display:block;color:var(--muted)}.badge{display:inline-block;padding:4px 8px;border-radius:5px;background:#252d3b;color:#bac6d7;font-size:10px;text-transform:capitalize}.badge.active,.badge.played{background:#13372f;color:#5be0b0}.badge.pending{background:#3a3020;color:#f3c36b}.badge.suspended,.badge.rejected,.badge.blocked,.badge.deleted{background:#3c222a;color:#ff929d}.stationhero{display:flex;gap:13px;align-items:center;margin:15px 0 23px}.stationlogo{width:52px;height:52px;border-radius:13px;background:#24203f;color:#aa9aff;display:grid;place-items:center;font-size:24px}.stationhero h3{margin:0 0 5px}.detailrow{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.detailrow span{color:var(--muted)}.detailrow b{font-weight:600;text-align:right}.btn{border:0;border-radius:8px;padding:11px 15px;font:inherit;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:space-between;gap:15px}.primary{background:var(--accent);color:white}.secondary{background:#202a3a;color:#dce5f2;border:1px solid #303b4e}.full{width:100%;margin-top:18px}.muted{color:var(--muted)}footer{padding:18px 36px;color:#58677d;font-size:10px;border-top:1px solid var(--line)}footer span{float:right}.loginbody{display:grid;place-items:center;min-height:100vh;background:radial-gradient(ellipse at 50% 0%,#1c1740 0%,#0a0d14 55%)}.loginbox{width:min(420px,calc(100% - 32px));padding:36px;background:#111722;border:1px solid var(--line);border-radius:17px;box-shadow:0 25px 80px #0005}.centered{justify-content:center;padding:0 0 24px}.loginbox h1{font-size:25px;margin:8px 0}.loginbox p{font-size:12px;margin:0 0 24px}.loginbox label{display:block;color:#b5c0d0;font-size:12px;margin:15px 0 7px}.loginbox input,.field{width:100%;background:#0b111a;border:1px solid #293446;color:var(--text);padding:12px;border-radius:8px;outline:none}.loginbox input:focus,.field:focus{border-color:#8975ff}.loginbox .btn{margin-top:23px}.loginbox>small{display:block;text-align:center;margin-top:18px}.alert{padding:10px;border:1px solid #63303a;background:#301b22;border-radius:7px;color:#ffadb5;font-size:12px}@media(max-width:1000px){.sidebar{width:205px}.main{margin-left:205px}.content{padding:22px}.topbar{padding:0 22px}.stats{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}}@media(max-width:650px){.sidebar{position:static;width:auto;height:auto;padding:12px;display:block}.sidebar .brand{padding:0 8px 10px}.sidebar .navlabel,.sidebarbottom{display:none}.sidebar>a{display:inline-block;padding:8px}.main{margin:0}.topbar{height:auto;padding:20px}.content{padding:16px}.stats{gap:9px}.stat{padding:14px}.stat strong{font-size:24px}.welcomeicon{display:none}}

.registerbox{width:min(480px,calc(100% - 32px));max-height:95vh;overflow:auto}.registerbox label{margin-top:12px}.registerbox .muted{font-size:11px}.successbox{border:1px solid #285c4c;background:#10271f;border-radius:10px;padding:18px}.successbox h1{color:#71e5b6}.successbox p{color:#c1d8ce;line-height:1.7}

.topavatar{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1px solid #39465a}.logout{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:18px}.logout small{font-size:9px;color:#8b99ad}.theme-banner{padding:13px 16px;border:1px solid #55478f;background:#1c1832;border-radius:10px;margin-bottom:18px;color:#ddd5ff}.suspended-banner{padding:15px 18px;border:1px solid #713a46;background:#301b22;border-radius:10px;margin-bottom:18px;color:#ffb6bf}.pending-banner{padding:15px 18px;border:1px solid #6e552a;background:#2e271a;border-radius:10px;margin-bottom:18px;color:#f6d38e}

/* Seasonal dashboard accents */
body.theme-sinterklaas .brandmark{background:linear-gradient(135deg,#d84d4d,#e8b74c)}
body.theme-kerst .brandmark{background:linear-gradient(135deg,#c83248,#167b55)}
body.theme-oud_nieuw .brandmark{background:linear-gradient(135deg,#d5ad4f,#565cbb)}
body.theme-winter .brandmark{background:linear-gradient(135deg,#67bce8,#5369b7)}
body.theme-herfst .brandmark{background:linear-gradient(135deg,#d97835,#a84c31)}
body.theme-lente .brandmark{background:linear-gradient(135deg,#75c879,#d68ab8)}
body.theme-zomer .brandmark{background:linear-gradient(135deg,#efb53f,#e97745)}
.request-head{align-items:flex-start;gap:18px;flex-wrap:wrap}.request-folders{display:flex;gap:8px;flex-wrap:wrap}.request-folders a{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid #303b4e;background:#151d2a;border-radius:9px;color:#aebbd0;font-weight:700;font-size:12px}.request-folders a.selected{background:#30265c;border-color:#7460d7;color:#fff}.theme-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:14px 0 24px}.theme-tile{min-height:115px;border-radius:12px;border:1px solid #3a4658;padding:14px;display:flex;flex-direction:column;gap:5px;background:linear-gradient(145deg,#253047,#121924);overflow:hidden}.theme-tile b{font-size:13px}.theme-tile small{font-size:10px;color:#d0d8e6}.theme-art{font-size:28px;filter:drop-shadow(0 4px 5px #0005)}.theme-tile-sinterklaas{background:linear-gradient(145deg,#8d242c,#351923)}.theme-tile-kerst{background:linear-gradient(145deg,#145a3c,#76222f)}.theme-tile-oud_nieuw{background:linear-gradient(145deg,#22264d,#8a6c2b)}.theme-tile-winter{background:linear-gradient(145deg,#235e83,#172e54)}.theme-tile-herfst{background:linear-gradient(145deg,#9d4c25,#45251b)}.theme-tile-lente{background:linear-gradient(145deg,#397b50,#784766)}.theme-tile-zomer{background:linear-gradient(145deg,#bd8423,#b54c2b)}
/* Professioneel widgetbeheer en thema-afbeeldingen */
.theme-tile img{box-shadow:0 5px 16px #0004}.panelhead p{max-width:760px}.tablewrap input[type=file]{max-width:190px;font-size:11px;color:#aebbd0}.tablewrap input[type=date]{min-width:135px}.detailrow label{display:flex;align-items:center;gap:7px}.detailrow label input{accent-color:#8a70ff}.widget-management-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.widget-management-card{padding:18px;border:1px solid #303b4e;border-radius:13px;background:linear-gradient(145deg,#192333,#111823)}.widget-management-card h3{margin:0 0 8px}.widget-management-card p{color:#9eacc0;font-size:12px;line-height:1.6}

/* Responsive navigation: keep all menu groups reachable on short screens. */
.sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#303b4e #0d121b}.sidebar::-webkit-scrollbar{width:7px}.sidebar::-webkit-scrollbar-thumb{background:#303b4e;border-radius:8px}.navgroup summary:focus-visible,.navgroup a:focus-visible,.sidebar>a:focus-visible{outline:2px solid #9a89ff;outline-offset:2px}
@media(max-height:720px) and (min-width:651px){.sidebar{padding-top:14px;padding-bottom:14px}.brand{padding-bottom:18px}.navlabel{padding-bottom:7px}.sidebarbottom{padding-top:10px}}
