:root{--bg:#07100d;--panel:#101c18;--panel2:#14241e;--line:#263a32;--text:#edf5f0;--muted:#91a69b;--green:#1fbd77;--green2:#14915b;--red:#ef5b67;--amber:#e9b949;--blue:#58a6ff;--radius:15px;--shadow:0 18px 50px rgba(0,0,0,.28)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:#0b1512;border-right:1px solid var(--line);padding:24px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.logo{display:flex;align-items:center;gap:12px;padding:0 9px 25px}.logo>span,.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:linear-gradient(145deg,var(--green),#0d7548);font-weight:900;letter-spacing:-1px}.logo strong,.logo small{display:block}.logo strong{font-size:18px}.logo small{color:var(--muted);margin-top:2px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{padding:12px;border-radius:10px;color:#b5c5bd;display:flex;gap:12px;align-items:center}.sidebar nav a i{width:20px;text-align:center;font-style:normal}.sidebar nav a:hover,.sidebar nav a.active{background:var(--panel2);color:white}.sidebar nav a.active{box-shadow:inset 3px 0 var(--green)}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:#60746a;margin:22px 12px 7px}.sidebar-user{margin-top:auto;border-top:1px solid var(--line);padding:18px 7px 0;display:grid;grid-template-columns:38px 1fr 24px;gap:10px;align-items:center}.avatar{width:38px;height:38px;border-radius:50%;background:#263d33;display:grid;place-items:center;font-weight:800}.sidebar-user strong,.sidebar-user small{display:block}.sidebar-user small{color:var(--muted);font-size:11px}.main{min-width:0}.topbar{height:100px;padding:22px 34px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:rgba(7,16,13,.86);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:1.8px;color:var(--green)}h1{font-size:25px;margin:4px 0 0}h2{margin:0 0 20px;font-size:19px}h3{margin:0 0 15px}.content{padding:30px 34px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat{background:var(--panel);border:1px solid var(--line);padding:21px;border-radius:var(--radius);box-shadow:var(--shadow)}.stat span{color:var(--muted);display:block;margin-bottom:12px}.stat strong{font-size:30px}.danger-stat strong{color:var(--red)}.grid{display:grid;gap:20px}.grid.two{grid-template-columns:minmax(0,1.4fr) minmax(330px,.8fr)}.case-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr)}.stack{display:flex;flex-direction:column;gap:20px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:21px;box-shadow:var(--shadow);min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel-head h2{margin:0}.panel-head a,.text-link{color:var(--green)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 11px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted)}td a{color:#72dca7;font-weight:700}.block{display:block;color:var(--muted);font-weight:400;margin-top:3px}.empty{text-align:center;color:var(--muted);padding:30px}.empty-block{padding:30px;text-align:center;color:var(--muted)}.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700;background:#24352e}.status-actief,.status-opsporing{color:#70e8ad;background:#153b2b}.status-nieuw{color:#9acbff;background:#17324c}.status-observatie{color:#f2d27e;background:#413618}.status-aangehouden{color:#d7b0ff;background:#302147}.status-afgerond,.status-geseponeerd{color:#b4c0ba;background:#27302c}.priority-kritiek{color:#ff9aa2;background:#481c22}.priority-hoog{color:#ffcd83;background:#442d15}.priority-normaal{color:#9acbff;background:#17324c}.priority-laag{color:#b7c7bf;background:#29352f}.btn{border:0;border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.btn.primary{background:var(--green);color:#06110c}.btn.primary:hover{background:#33ce89}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--text)}.btn.small{font-size:11px;padding:6px 9px}.alert{padding:13px 16px;border-radius:10px;margin-bottom:18px;border:1px solid}.alert.success{background:#103723;border-color:#1b7448;color:#b8f2d3}.alert.danger{background:#421c22;border-color:#79313b;color:#ffd0d4}.alert.warning{background:#3d3217;border-color:#715a21;color:#f8e0a1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.span-2{grid-column:span 2}label{display:flex;flex-direction:column;gap:7px;color:#c5d2cc;font-weight:600;margin-bottom:14px}input,select,textarea{width:100%;background:#0b1512;border:1px solid #30463c;border-radius:9px;color:white;padding:11px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green)}textarea{resize:vertical}.check{flex-direction:row;align-items:center}.check input{width:auto}.filters{margin-bottom:14px;max-width:360px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.7);display:none;place-items:center;z-index:50;padding:20px}.modal.show{display:grid}.modal-card{width:min(720px,100%);max-height:90vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:25px;position:relative}.modal-close{position:absolute;right:16px;top:12px;border:0;background:none;color:white;font-size:28px;cursor:pointer}.case-header{background:linear-gradient(135deg,#142a21,#101b17);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.case-header h2{font-size:27px;margin:7px 0}.case-header p{color:var(--muted);margin:0}.mono{font-family:Consolas,monospace;color:var(--green)}.notes article{border-top:1px solid var(--line);padding:16px 0}.notes article header{display:flex;justify-content:space-between}.notes time{color:var(--muted);font-size:11px}.notes p{line-height:1.6}.mini h3{display:flex;justify-content:space-between}.mini h3 span{color:var(--green)}.mini-row{padding:11px 0;border-top:1px solid var(--line)}.mini-row strong,.mini-row small{display:block}.mini-row small{color:var(--muted);margin-top:3px}.timeline>div{display:grid;grid-template-columns:15px 1fr;gap:10px;position:relative}.timeline>div>span{width:9px;height:9px;background:var(--green);border-radius:50%;margin-top:5px}.timeline>div p{margin:0 0 17px}.timeline small{display:block;color:var(--muted);margin-top:4px}.task-row,.task-card{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid var(--line);padding:14px 0}.task-row strong,.task-row small{display:block}.task-row small,.task-card small,.task-card p{color:var(--muted)}.task-card.done{opacity:.55}.task-card.done strong{text-decoration:line-through}.icon-btn{width:31px;height:31px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--green);cursor:pointer}.details{display:grid;grid-template-columns:150px 1fr;gap:12px}.details dt{color:var(--muted)}.details dd{margin:0}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#143728 0,transparent 38%),#06100c;padding:25px}.login-shell{width:min(970px,100%);display:grid;grid-template-columns:1.2fr .8fr;background:#0b1512;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.55)}.brand-panel{padding:58px;display:flex;align-items:flex-start;gap:20px;background:linear-gradient(140deg,rgba(30,189,119,.17),transparent)}.brand-panel h1{font-size:40px;margin:7px 0 15px}.brand-panel p{color:#b2c4bb;line-height:1.7;max-width:560px}.brand-mark{flex:0 0 58px;width:58px;height:58px}.login-card{padding:55px;background:#101c18}.login-card h2{font-size:28px}.muted,.security-note{color:var(--muted)}.login-card .btn{width:100%;margin-top:5px}.security-note{font-size:11px;text-align:center;margin-top:20px}@media(max-width:1050px){.stats{grid-template-columns:repeat(2,1fr)}.grid.two,.case-grid{grid-template-columns:1fr}.app{grid-template-columns:80px 1fr}.sidebar{padding:20px 10px}.logo div,.sidebar nav a:not(.active){font-size:0}.logo>span{width:42px}.sidebar nav a{justify-content:center}.sidebar nav a i{font-size:16px}.nav-label,.sidebar-user div:not(.avatar),.sidebar-user>a{display:none}.sidebar-user{display:flex;justify-content:center}.topbar,.content{padding-left:22px;padding-right:22px}}@media(max-width:680px){.app{display:block}.sidebar{position:fixed;bottom:0;top:auto;left:0;right:0;width:auto;height:66px;z-index:30;display:block;padding:8px;background:#0b1512}.logo,.nav-label,.sidebar-user{display:none}.sidebar nav{display:flex;flex-direction:row;justify-content:space-around}.sidebar nav a{font-size:0;padding:10px}.sidebar nav a i{font-size:18px}.main{padding-bottom:75px}.topbar{height:85px}.topbar .btn{display:none}.content{padding:18px 14px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:15px}.stat strong{font-size:24px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.login-shell{grid-template-columns:1fr}.brand-panel{display:none}.login-card{padding:32px 24px}.case-header{align-items:flex-start;gap:15px;flex-direction:column}}

/* Accountbeheer v1.2 */
details summary{cursor:pointer;list-style:none}details summary::-webkit-details-marker{display:none}.account-actions{min-width:520px;max-width:680px;margin-top:12px;padding:16px;border:1px solid var(--border);border-radius:12px;background:#081710}.form-grid.compact{gap:10px}.inline-form{display:flex;gap:10px;align-items:center;margin-top:10px}.inline-form input{flex:1;margin:0}@media(max-width:760px){.account-actions{min-width:0;width:calc(100vw - 70px)}.inline-form{align-items:stretch;flex-direction:column}}
.login-options{display:grid;gap:14px;margin-top:24px}.back-link{display:inline-block;margin-bottom:22px;color:#83d9b5}.btn.danger{background:#7f1d1d;border-color:#b91c1c;color:#fff}.text-danger{border:0;background:none;color:#ff8585;cursor:pointer;padding:0}.chat-box{max-height:560px;overflow:auto;display:flex;flex-direction:column;gap:12px}.chat-message{padding:14px;border:1px solid #1d4938;border-radius:12px;background:#071a13}.chat-message>div{display:flex;justify-content:space-between;gap:12px}.chat-message small{color:#85a99a}.chat-message p{margin:8px 0 0;white-space:normal}.prose{max-width:1050px}.prose h3{margin-top:28px;color:#8fe0ba}.prose li{margin:8px 0}.change{padding:18px 0;border-bottom:1px solid #1b3f31}.danger-zone{margin-top:8px}@media(max-width:700px){.chat-message>div{display:block}.login-options{grid-template-columns:1fr}}

/* Groeperingen v1.5 */
.group-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.group-card{display:grid;grid-template-columns:112px 1fr;gap:16px;border:1px solid var(--line);border-radius:14px;padding:14px;background:#0b1713}.group-logo{width:112px;height:112px;border-radius:13px;overflow:hidden;background:#173128;display:grid;place-items:center;font-size:28px;font-weight:900;color:#8ee1b8}.group-logo img,.group-profile>img{width:100%;height:100%;object-fit:cover}.group-body h3{margin:4px 0 0}.group-body p{margin:5px 0}.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.group-profile{display:flex;align-items:center;gap:18px}.group-profile>img,.group-logo.large{width:92px;height:92px;border-radius:16px;overflow:hidden;flex:0 0 92px}.group-header{gap:20px}@media(max-width:900px){.group-cards{grid-template-columns:1fr}}@media(max-width:520px){.group-card{grid-template-columns:72px 1fr}.group-logo{width:72px;height:72px}.group-profile>img,.group-logo.large{width:68px;height:68px;flex-basis:68px}}

/* ===== Politie Goudhaven v2.0 Futuristic Blue UI ===== */
:root{--bg:#030a14;--bg2:#071426;--panel:rgba(8,25,48,.78);--panel2:rgba(11,35,65,.72);--line:rgba(98,191,255,.20);--line-strong:rgba(98,191,255,.42);--text:#eef8ff;--muted:#87a5bf;--green:#38bdf8;--blue:#1d7bea;--blue2:#42d3ff;--gold:#ddb85c;--red:#ff5c70;--shadow:0 24px 70px rgba(0,0,0,.38);--radius:20px}
*{scrollbar-color:#1d7bea #06111f;scrollbar-width:thin}body{background:radial-gradient(circle at 78% 8%,rgba(29,123,234,.17),transparent 26%),radial-gradient(circle at 18% 84%,rgba(56,189,248,.10),transparent 28%),linear-gradient(145deg,#020710,#071426 58%,#030914);color:var(--text)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 48%,rgba(80,190,255,.035) 50%,transparent 52%);background-size:220px 220px;animation:scanBg 14s linear infinite;z-index:-1}.ambient-grid{position:fixed;inset:0;z-index:-1;opacity:.22;pointer-events:none;background-image:linear-gradient(rgba(71,173,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(71,173,255,.12) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 82%)}@keyframes scanBg{to{background-position:220px 0}}
.app{grid-template-columns:290px minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(180deg,rgba(5,18,36,.94),rgba(3,12,25,.90));border-right:1px solid var(--line);backdrop-filter:blur(24px);box-shadow:15px 0 60px rgba(0,0,0,.25);padding:24px 18px;transition:.32s cubic-bezier(.2,.8,.2,1)}.sidebar:before{content:"";position:absolute;inset:0 0 auto;height:150px;background:radial-gradient(circle at 50% 0,rgba(56,189,248,.18),transparent 68%);pointer-events:none}.logo{position:relative;gap:13px;padding:2px 5px 22px;border-bottom:1px solid var(--line)}.logo img{width:64px;height:64px;filter:drop-shadow(0 0 18px rgba(56,189,248,.38));animation:logoFloat 4s ease-in-out infinite}.logo strong{font-size:15px;letter-spacing:.04em}.logo small{font-size:9px;letter-spacing:.16em;color:#70cfff;text-transform:uppercase}@keyframes logoFloat{50%{transform:translateY(-4px) rotate(1.5deg);filter:drop-shadow(0 0 28px rgba(56,189,248,.62))}}
.sidebar nav{padding-top:18px}.sidebar nav a{position:relative;border:1px solid transparent;border-radius:14px;margin:5px 0;padding:12px 13px;color:#9eb5ca;gap:12px;transition:.22s ease;overflow:hidden}.sidebar nav a:before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(29,123,234,.20),rgba(56,189,248,.05));opacity:0;transition:.22s}.sidebar nav a:hover{color:#fff;border-color:var(--line);transform:translateX(4px)}.sidebar nav a:hover:before,.sidebar nav a.active:before{opacity:1}.sidebar nav a.active{color:#fff;border-color:rgba(56,189,248,.38);box-shadow:inset 3px 0 0 #42d3ff,0 8px 24px rgba(0,92,190,.15)}.sidebar nav a i{position:relative;width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:rgba(45,139,231,.10);color:#62d1ff;font-style:normal;box-shadow:inset 0 0 0 1px rgba(97,203,255,.14)}.sidebar nav a span{position:relative}.nav-label{color:#52738e;letter-spacing:.18em;font-size:9px;margin:20px 12px 8px}.sidebar-user{margin-top:auto;background:rgba(12,38,69,.62);border:1px solid var(--line);border-radius:16px;padding:11px;box-shadow:0 12px 35px rgba(0,0,0,.2)}.avatar{background:linear-gradient(145deg,#1e88e5,#35d1ff);color:#02101e;box-shadow:0 0 20px rgba(56,189,248,.25)}
.main{min-width:0}.topbar{height:102px;background:rgba(3,12,25,.58);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);padding:18px 34px;display:flex;align-items:center;gap:18px;position:sticky;top:0;z-index:25}.sidebar-toggle{width:42px;height:42px;border-radius:13px;border:1px solid var(--line);color:#8fdcff;background:rgba(15,56,96,.55);cursor:pointer;font-size:18px;transition:.2s}.sidebar-toggle:hover{transform:rotate(4deg) scale(1.05);border-color:#42d3ff}.page-title{flex:1}.topbar h1{font-size:25px;margin:3px 0 0;letter-spacing:-.02em}.eyebrow{color:#52cfff;letter-spacing:.16em;font-size:9px;text-transform:uppercase}.topbar-tools{display:flex;gap:12px;align-items:center}.live-status,.profile-chip{display:flex;align-items:center;gap:10px;background:rgba(10,35,63,.7);border:1px solid var(--line);border-radius:14px;padding:9px 12px}.live-status>span{width:9px;height:9px;border-radius:50%;background:#4cff9b;box-shadow:0 0 14px #4cff9b;animation:pulseDot 1.8s infinite}.live-status strong,.profile-chip strong{display:block;font-size:11px}.live-status small,.profile-chip small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.profile-chip{color:var(--text);text-decoration:none;transition:.2s}.profile-chip:hover{border-color:#42d3ff;transform:translateY(-2px)}.profile-chip .avatar{width:32px;height:32px;font-size:11px}@keyframes pulseDot{50%{opacity:.45;transform:scale(.72)}}
.content{padding:30px 34px 90px;animation:contentIn .42s ease both}@keyframes contentIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.panel,.stat,.case-card,.task-card,.group-card,.case-header{background:linear-gradient(145deg,rgba(12,38,69,.78),rgba(5,20,39,.76));border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(18px);position:relative;overflow:hidden}.panel:before,.stat:before,.case-card:before,.group-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#55d7ff,transparent);opacity:.45}.panel:hover,.stat:hover,.case-card:hover,.group-card:hover{border-color:rgba(91,204,255,.38)}.panel{border-radius:var(--radius);padding:22px}.stats{gap:16px}.stat{border-radius:18px;padding:20px;transition:.25s}.stat:hover{transform:translateY(-5px);box-shadow:0 25px 60px rgba(0,70,140,.22)}.stat strong{background:linear-gradient(90deg,#fff,#6bdcff);-webkit-background-clip:text;background-clip:text;color:transparent}.stat span{color:#86a9c4}.grid.two,.case-grid{gap:18px}.table-wrap{border:1px solid var(--line);border-radius:16px;background:rgba(4,15,29,.45)}table th{background:rgba(17,53,92,.72);color:#8ddcff;letter-spacing:.08em;text-transform:uppercase;font-size:9px}table td{border-color:rgba(102,184,242,.10)}table tbody tr{transition:.18s}table tbody tr:hover{background:rgba(38,128,215,.09)}
.btn{border-radius:12px;padding:10px 15px;transition:.2s;box-shadow:none}.btn.primary{background:linear-gradient(135deg,#1875d1,#41c8ff);color:#03111e;box-shadow:0 10px 25px rgba(20,128,222,.25)}.btn.primary:hover{background:linear-gradient(135deg,#2592ef,#64ddff);transform:translateY(-2px);box-shadow:0 14px 32px rgba(20,128,222,.35)}.btn.ghost{background:rgba(11,44,79,.55);border-color:var(--line);color:#dff7ff}.btn.ghost:hover{border-color:#42d3ff;background:rgba(27,102,170,.28)}input,select,textarea{background:rgba(2,14,28,.72);border-color:rgba(89,181,245,.23);border-radius:12px;color:#fff;transition:.2s}input:focus,select:focus,textarea:focus{border-color:#4bd0ff;box-shadow:0 0 0 3px rgba(56,189,248,.10)}label{color:#bfd4e5}.modal{background:rgba(0,5,12,.76);backdrop-filter:blur(10px)}.modal-card{background:linear-gradient(145deg,#0c294a,#06172c);border-color:rgba(93,206,255,.35);box-shadow:0 40px 120px rgba(0,0,0,.65)}.modal-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#47d2ff,transparent)}
.group-card{background:linear-gradient(145deg,rgba(13,44,78,.82),rgba(5,22,42,.80));transition:.25s}.group-card:hover{transform:translateY(-4px)}.group-logo{background:radial-gradient(circle at 35% 25%,#245f91,#071a31);color:#6bdcff;border:1px solid var(--line);box-shadow:inset 0 0 35px rgba(56,189,248,.12)}.case-header{background:linear-gradient(135deg,rgba(16,59,100,.88),rgba(4,22,42,.86));border-radius:24px}.mono{color:#61d7ff}.timeline>div>span{background:#42d3ff;box-shadow:0 0 13px #42d3ff}.chat-message{background:rgba(6,25,47,.72);border-color:var(--line);border-radius:15px}.change.featured{background:linear-gradient(135deg,rgba(22,97,166,.20),rgba(56,189,248,.06));border:1px solid var(--line);padding:18px;border-radius:16px}.prose h3{color:#74dcff}
.fab-wrap{position:fixed;right:30px;bottom:30px;z-index:60}.fab-main{width:62px;height:62px;border-radius:22px;border:1px solid rgba(120,222,255,.5);background:linear-gradient(145deg,#1478d7,#45d4ff);color:#03111e;font-size:32px;cursor:pointer;box-shadow:0 18px 45px rgba(0,115,222,.42),0 0 0 8px rgba(56,189,248,.06);transition:.28s}.fab-main:hover{transform:translateY(-4px) rotate(3deg)}.fab-wrap.open .fab-main{transform:rotate(45deg);border-radius:50%}.fab-menu{position:absolute;right:0;bottom:76px;display:grid;gap:10px;opacity:0;transform:translateY(15px) scale(.94);pointer-events:none;transition:.24s}.fab-wrap.open .fab-menu{opacity:1;transform:none;pointer-events:auto}.fab-menu a{display:flex;align-items:center;gap:10px;white-space:nowrap;padding:11px 14px;border-radius:13px;background:rgba(7,28,52,.96);border:1px solid var(--line-strong);color:#eaf8ff;text-decoration:none;box-shadow:0 12px 35px rgba(0,0,0,.35);backdrop-filter:blur(16px)}.fab-menu a:hover{transform:translateX(-4px);border-color:#54d8ff}.fab-menu span{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;background:rgba(56,189,248,.13);color:#59d9ff}
body.sidebar-collapsed .app{grid-template-columns:92px minmax(0,1fr)}body.sidebar-collapsed .sidebar{padding-left:13px;padding-right:13px}body.sidebar-collapsed .logo div,body.sidebar-collapsed .sidebar nav a span,body.sidebar-collapsed .sidebar-user div:not(.avatar),body.sidebar-collapsed .sidebar-user>a,body.sidebar-collapsed .nav-label{display:none}body.sidebar-collapsed .logo{justify-content:center}body.sidebar-collapsed .logo img{width:54px}body.sidebar-collapsed .sidebar nav a{justify-content:center;padding:11px}body.sidebar-collapsed .sidebar-user{justify-content:center}
.login-body{background:radial-gradient(circle at 20% 20%,rgba(30,126,221,.22),transparent 34%),radial-gradient(circle at 85% 80%,rgba(64,210,255,.12),transparent 30%),linear-gradient(145deg,#020811,#08182d);position:relative;overflow:hidden}.login-body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(80,184,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(80,184,255,.08) 1px,transparent 1px);background-size:55px 55px;mask-image:radial-gradient(circle at center,#000,transparent 80%)}.login-shell{position:relative;background:rgba(5,20,39,.76);border-color:rgba(92,205,255,.27);backdrop-filter:blur(24px);box-shadow:0 40px 120px rgba(0,0,0,.58),0 0 80px rgba(29,123,234,.10)}.brand-panel{background:linear-gradient(140deg,rgba(29,123,234,.24),rgba(56,189,248,.04));position:relative}.brand-panel:after{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(76,202,255,.14);border-radius:50%;right:-120px;bottom:-170px;box-shadow:0 0 0 35px rgba(76,202,255,.035),0 0 0 70px rgba(76,202,255,.02)}.brand-mark{flex-basis:92px;width:92px;height:92px;background:none}.brand-mark img{width:100%;height:100%;filter:drop-shadow(0 0 22px rgba(56,189,248,.42));animation:logoFloat 4s ease-in-out infinite}.brand-panel h1{background:linear-gradient(90deg,#fff,#7bdfff);-webkit-background-clip:text;background-clip:text;color:transparent}.login-card{background:rgba(4,17,33,.78)}.back-link{color:#77dcff}
@media(max-width:1050px){.app{grid-template-columns:92px 1fr}.sidebar .logo div,.sidebar nav a span,.sidebar-user div:not(.avatar),.sidebar-user>a,.nav-label{display:none}.sidebar .logo{justify-content:center}.sidebar nav a{justify-content:center}.topbar{padding-left:20px;padding-right:20px}.live-status{display:none}.content{padding-left:20px;padding-right:20px}}@media(max-width:680px){.sidebar{height:72px;background:rgba(3,15,29,.94);backdrop-filter:blur(20px)}.sidebar nav a i{width:35px;height:35px}.topbar{height:82px;padding:12px 14px}.sidebar-toggle{display:none}.page-title h1{font-size:19px}.page-title .eyebrow{display:none}.profile-chip>span:last-child{display:none}.profile-chip{padding:7px}.content{padding:18px 13px 105px}.fab-wrap{right:18px;bottom:88px}.fab-main{width:56px;height:56px;border-radius:19px}.login-shell{border-radius:20px}.login-card{padding:30px 22px}}

/* v2.0.1 - onafhankelijke scrollgebieden voor navigatie en hoofdinhoud */
@media (min-width: 681px) {
  html,
  body {
    height: 100%;
    overflow: hidden;
  }

  .app {
    height: 100vh;
    min-height: 0;
    overflow: hidden;
  }

  .sidebar {
    position: relative;
    top: auto;
    height: 100vh;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(66, 211, 255, .42) transparent;
  }

  .sidebar::-webkit-scrollbar {
    width: 6px;
  }

  .sidebar::-webkit-scrollbar-track {
    background: transparent;
  }

  .sidebar::-webkit-scrollbar-thumb {
    background: rgba(66, 211, 255, .32);
    border-radius: 999px;
  }

  .sidebar::-webkit-scrollbar-thumb:hover {
    background: rgba(66, 211, 255, .55);
  }

  .main {
    height: 100vh;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(66, 211, 255, .42) transparent;
  }

  .main::-webkit-scrollbar {
    width: 8px;
  }

  .main::-webkit-scrollbar-track {
    background: rgba(2, 10, 20, .35);
  }

  .main::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(34, 139, 230, .7), rgba(66, 211, 255, .48));
    border-radius: 999px;
    border: 2px solid rgba(2, 10, 20, .35);
  }

  .main::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, rgba(53, 162, 255, .9), rgba(86, 222, 255, .72));
  }

  .topbar {
    top: 0;
  }
}

@media (max-width: 680px) {
  html,
  body {
    height: auto;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .app,
  .main {
    height: auto;
    min-height: 100vh;
    overflow: visible;
  }
}


/* v2.0.2 - robuuste scroll voor modale formulieren */
html.modal-open,
body.modal-open {
  overflow: hidden !important;
}

.modal {
  align-items: flex-start;
  justify-content: center;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  padding: 24px;
  scrollbar-width: thin;
  scrollbar-color: rgba(66, 211, 255, .55) rgba(2, 10, 20, .28);
}

.modal.show {
  display: flex;
}

.modal::-webkit-scrollbar {
  width: 8px;
}

.modal::-webkit-scrollbar-track {
  background: rgba(2, 10, 20, .28);
}

.modal::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(34, 139, 230, .82), rgba(66, 211, 255, .60));
  border-radius: 999px;
  border: 2px solid rgba(2, 10, 20, .28);
}

.modal-card {
  flex: 0 0 auto;
  width: min(720px, 100%);
  max-height: calc(100dvh - 48px);
  margin: 0 auto;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(66, 211, 255, .55) rgba(2, 10, 20, .18);
}

.modal-card::-webkit-scrollbar {
  width: 7px;
}

.modal-card::-webkit-scrollbar-track {
  background: rgba(2, 10, 20, .18);
  border-radius: 999px;
}

.modal-card::-webkit-scrollbar-thumb {
  background: rgba(66, 211, 255, .48);
  border-radius: 999px;
}

.modal-card h2 {
  padding-right: 42px;
}

.modal-close {
  position: sticky;
  z-index: 4;
  float: right;
  right: 0;
  top: 0;
  margin-top: -10px;
  margin-right: -8px;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(3, 17, 32, .88);
  border: 1px solid rgba(93, 206, 255, .24);
  backdrop-filter: blur(12px);
}

.modal-open .main,
.modal-open .sidebar {
  overscroll-behavior: none;
}

@media (max-width: 680px) {
  .modal {
    padding: 10px;
  }

  .modal-card {
    width: 100%;
    max-height: calc(100dvh - 20px);
    padding: 20px 16px;
    border-radius: 16px;
  }
}


/* v2.0.3 - interactieve changelog en privacy-audit */
.changelog-shell{padding:0;overflow:visible}.changelog-head{padding:24px 26px;border-bottom:1px solid var(--line);align-items:flex-start}.changelog-head h2{margin:4px 0 7px}.changelog-head p,.panel-head p{color:var(--muted);margin:0}.version-pill,.privacy-badge{display:inline-flex;align-items:center;border:1px solid rgba(76,202,255,.28);background:rgba(18,91,146,.28);color:#8fe3ff;border-radius:999px;padding:8px 12px;font-size:11px;white-space:nowrap}.privacy-badge:before{content:"✓";margin-right:6px;color:#50f0a2}.change-timeline{position:relative;padding:26px 26px 30px 48px}.change-timeline:before{content:"";position:absolute;left:27px;top:31px;bottom:34px;width:2px;background:linear-gradient(#48d6ff,rgba(72,214,255,.08))}.release-card{position:relative;margin:0 0 14px;border:1px solid rgba(83,194,255,.18);border-radius:17px;background:linear-gradient(145deg,rgba(9,35,64,.74),rgba(4,18,35,.72));overflow:hidden;transition:.22s}.release-card:hover{border-color:rgba(83,194,255,.4);transform:translateX(3px)}.release-card.current{box-shadow:0 0 35px rgba(35,158,238,.12)}.release-card summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:17px 18px}.release-card summary::-webkit-details-marker{display:none}.release-card summary strong{display:block;font-size:15px}.release-card summary small{display:block;color:var(--muted);margin-top:4px}.release-dot{position:absolute;left:-29px;width:14px;height:14px;border-radius:50%;background:#1a77bd;border:3px solid #081a30;box-shadow:0 0 0 2px rgba(74,210,255,.35),0 0 15px rgba(74,210,255,.55)}.current .release-dot{background:#55dcff}.release-toggle{font-size:10px;color:#77d9ff;border:1px solid rgba(83,194,255,.22);border-radius:999px;padding:6px 9px}.release-card[open] .release-toggle{font-size:0}.release-card[open] .release-toggle:after{content:"Inklappen";font-size:10px}.release-body{padding:0 18px 18px;display:grid;gap:9px;border-top:1px solid rgba(83,194,255,.10)}.change-item{display:grid;grid-template-columns:88px 1fr;gap:12px;align-items:start;padding:13px 0 3px}.change-item span{display:inline-flex;justify-content:center;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.change-item p{margin:2px 0;color:#c6d9e8}.type-new span{background:rgba(42,199,126,.16);color:#65efa9}.type-improved span{background:rgba(53,155,255,.17);color:#72c8ff}.type-changed span{background:rgba(255,159,67,.17);color:#ffc07b}.type-fixed span{background:rgba(255,83,105,.16);color:#ff879a}.type-important span{background:rgba(222,176,58,.17);color:#ffe086}@media(max-width:680px){.changelog-head{display:block}.version-pill{margin-top:14px}.change-timeline{padding:18px 12px 22px 34px}.change-timeline:before{left:18px}.release-dot{left:-23px}.release-card summary{grid-template-columns:1fr auto;padding:14px}.release-card summary>span:nth-child(2){grid-column:1}.release-toggle{grid-column:2;grid-row:1}.change-item{grid-template-columns:1fr;gap:5px}.change-item span{justify-self:start}}

/* v2.0.4 mediagalerijen */
.media-panel{margin-top:22px}.media-upload{padding:16px;margin:14px 0 22px;border:1px dashed rgba(72,190,255,.36);border-radius:18px;background:rgba(5,24,48,.48)}.media-upload small{display:block;margin-top:7px;color:var(--muted)}.media-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.media-card{overflow:hidden;border:1px solid rgba(82,181,255,.24);border-radius:18px;background:linear-gradient(180deg,rgba(12,42,76,.88),rgba(4,20,39,.9));box-shadow:0 16px 38px rgba(0,0,0,.22);transition:transform .2s ease,border-color .2s ease}.media-card:hover{transform:translateY(-4px);border-color:rgba(66,199,255,.62)}.media-preview{display:flex;align-items:center;justify-content:center;width:100%;height:175px;background:#031223;overflow:hidden}.media-preview img,.media-preview video{width:100%;height:100%;object-fit:cover}.media-preview video{background:#000}.file-tile{display:grid;place-items:center;width:74px;height:90px;border-radius:12px;background:linear-gradient(145deg,#1c75bc,#3fc4ff);box-shadow:0 0 30px rgba(45,178,255,.34);font-weight:900;color:#fff;letter-spacing:.08em}.media-meta{padding:14px}.media-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-meta p{margin:8px 0;color:#d6e8fa;font-size:.92rem}.media-meta small{display:block;color:var(--muted);margin-bottom:10px}@media(max-width:700px){.media-gallery{grid-template-columns:1fr}.media-preview{height:210px}}
