@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Fraunces:opsz,wght@9..144,400;9..144,600&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@500;600;700&display=swap";.portaal-kop{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.portaal-kop h2{color:var(--ink);margin:0}.portaal-acties{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.portaal-zoek{border:1px solid var(--line);background:var(--surface-solid);min-width:220px;color:var(--ink);border-radius:10px;padding:9px 12px}.jaar-stepper{color:var(--ink);align-items:center;gap:6px;font-weight:700;display:inline-flex}.jaar-stepper button{border:1px solid var(--line);background:var(--surface-solid);cursor:pointer;border-radius:8px;width:32px;height:32px}.leden-grid{border-collapse:separate;border-spacing:0 4px;width:100%}.leden-grid th{text-align:left;color:var(--ink-faint);padding:4px 6px;font-size:12px;font-weight:600}.leden-grid td{background:var(--surface-solid);padding:6px}.leden-grid td:first-child{border-radius:10px 0 0 10px}.lid-naam{color:var(--primary);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-weight:600}.lid-naam:hover,.lid-naam:focus-visible{text-decoration:underline}.lid-inactief{opacity:.5}.cel{border:1px solid var(--line);cursor:pointer;border-radius:6px;width:24px;height:24px;transition:transform .12s,background-color .12s}.cel:hover{transform:scale(1.12)}.cel:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.cel-leeg{background:#2430220f;border-color:#24302247}.cel-betaald{background:var(--primary-light);border-color:var(--primary)}.cel-niet_betaald{background:#d9534f;border-color:#b33a36}.portaal-fout{background:var(--rose-soft);color:#8a2b23;border-radius:10px;margin-bottom:12px;padding:10px 14px}.portaal-melding{background:var(--primary-softer);color:var(--teal-dark);border-radius:10px;margin-bottom:12px;padding:10px 14px}.portaal-leeg{text-align:center;color:var(--ink-soft);padding:32px}.modal-achtergrond{z-index:50;background:#141c1273;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-paneel{background:var(--surface-solid);border-radius:16px;width:min(720px,100%);max-height:90vh;padding:22px;overflow:auto;box-shadow:0 20px 60px #00000040}.form-raster{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.form-raster .breed{grid-column:1/-1}.form-veld label{color:var(--ink-soft);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.form-veld input,.form-veld select,.form-veld textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:9px;padding:9px 11px}.form-veld .veld-fout{color:#b33a36;margin-top:3px;font-size:12px}.filter-knoppen{gap:6px;display:inline-flex}.snel-rij{background:var(--surface-solid);border-radius:10px;align-items:center;gap:10px;margin-bottom:4px;padding:8px 10px;display:flex}@media (width<=640px){.form-raster{grid-template-columns:1fr}}.voortgang{background:#2430221f;border-radius:99px;height:8px;margin:10px 0;overflow:hidden}.voortgang>div{background:var(--primary-light);transform-origin:0;width:100%;height:100%;transition:transform var(--portaal-duur,.3s) cubic-bezier(.16, 1, .3, 1)}.project-raster{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.project-kaart{background:var(--surface-solid);border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 8px 24px #141c121a}.project-foto{aspect-ratio:16/9;background:linear-gradient(135deg, var(--primary-soft), #24302240) center / cover no-repeat;position:relative}.project-label{color:#fff;background:#141c12b3;border-radius:99px;padding:3px 8px;font-size:12px;position:absolute;top:10px;left:10px}.project-inhoud h3{color:var(--ink);margin:0 0 4px;font-size:17px}.project-cijfers{color:var(--ink);justify-content:space-between;gap:8px;font-size:14px;display:flex}.project-cijfers.zacht{color:var(--ink-faint);margin-top:4px;font-size:13px}.link-knop{cursor:pointer;color:var(--primary);background:0 0;border:none;padding:0;font-weight:600}.link-knop.gevaar{color:#b33a36}.link-knop:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.subtabs{background:var(--surface-soft);border-radius:12px;flex-wrap:wrap;gap:4px;margin-bottom:16px;padding:4px;display:inline-flex}.subtabs button{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;border-radius:9px;padding:8px 14px;font-weight:600}.fin-tabel{border-collapse:collapse;width:100%;font-size:14px}.fin-tabel th{text-align:left;color:var(--ink-faint);border-bottom:1px solid #2430221f;padding:8px;font-size:12px}.fin-tabel td{color:var(--ink);vertical-align:middle;border-bottom:1px solid #24302214;padding:8px}.fin-tabel select{background:#fff;border:1px solid #24302233;border-radius:7px;max-width:180px;padding:5px 7px}.bedrag-in{color:var(--teal-dark);white-space:nowrap;font-weight:700}.bedrag-uit{color:#b33a36;white-space:nowrap;font-weight:700}.kleur-bol{vertical-align:middle;border-radius:50%;width:12px;height:12px;margin-right:6px;display:inline-block}.stat-raster{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px;display:grid}.stat-tegel{background:var(--surface-solid);border-radius:14px;padding:14px 16px}.stat-tegel .waarde{color:var(--ink);margin-top:4px;font-size:24px;font-weight:800}.upload-zone{text-align:center;color:var(--ink-soft);border:2px dashed #24302240;border-radius:14px;padding:28px}@media (prefers-reduced-motion:reduce){.voortgang>div,.cel{transition:none}}.uitnodig-code{letter-spacing:6px;text-align:center;background:var(--primary-softer);color:var(--teal-dark);border-radius:12px;margin-bottom:12px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:30px;font-weight:800}.app-status{white-space:nowrap;border-radius:99px;padding:2px 8px;font-size:12px;font-weight:600}.app-status.uitgenodigd{color:#6b5320;background:#c9a86a40}.app-status.verlopen,.app-status.geen_email{background:var(--rose-soft);color:#8a2b23}.portaal-kop h2{font:600 34px/1.15 var(--fh);color:var(--navy)}.portaal-kop{margin-bottom:24px}.portaal-zoek{border:1.5px solid var(--field);min-width:300px;height:52px;font:400 17px var(--fb);background:#fff;border-radius:12px;padding:0 16px}.jaar-stepper{background:var(--paper);font:600 22px var(--fh);border:1.5px solid #b3a685;border-radius:14px;gap:4px;padding:4px}.jaar-stepper button{width:44px;height:44px;color:var(--navy);background:0 0;border:none;border-radius:10px;font-size:22px}.jaar-stepper button:hover{background:var(--cream2)}.leden-grid{border-spacing:0}.leden-grid th{background:var(--cream2);font:600 14px var(--fb);color:var(--ink2);text-transform:lowercase;padding:14px 6px}.leden-grid th:first-child{border-radius:12px 0 0;padding-left:16px}.leden-grid th:last-child{border-radius:0 12px 0 0}.leden-grid td{border-bottom:1px solid var(--line);background:0 0;padding:12px 6px}.leden-grid td:first-child{color:var(--ink3);border-radius:0;padding-left:16px}.leden-grid td:last-child{border-radius:0}.leden-grid tr:hover td{background:#faf4e4}.lid-naam{color:var(--navy);font-size:17px}.app-status{font:600 15px var(--fb);border-radius:16px;align-items:center;min-height:32px;padding:0 12px;display:inline-flex}.app-status.gekoppeld{background:var(--ok-bg);color:var(--ok-t)}.app-status.uitgenodigd{background:var(--gold-l);color:#6a5318}.app-status.verlopen{background:var(--bad-bg);color:var(--bad)}.app-status.geen_email{background:var(--nil-bg);color:var(--nil)}.portaal-fout{background:var(--bad-bg);color:var(--bad);border:1.5px solid #e2a9a2;border-radius:14px;padding:16px 20px;font-size:17px;font-weight:600}.portaal-melding{background:var(--ok-bg);color:var(--ok-t);border:1.5px solid #9fcdb0;border-radius:14px;padding:16px 20px;font-size:17px;font-weight:600}.portaal-leeg{color:var(--ink2);padding:48px 32px;font-size:18px}.filter-knoppen button{background:var(--paper);height:46px;color:var(--navy);font:600 16px var(--fb);box-shadow:none;border:1.5px solid #b3a685;border-radius:23px;padding:0 18px}.filter-knoppen button[aria-pressed=true]{background:var(--navy);color:var(--cream);border-color:var(--navy)}.snel-rij{background:var(--paper);border:1px solid var(--line);border-radius:12px;gap:14px;min-height:60px;padding:10px 16px;font-size:17px}.snel-rij input[type=checkbox]{width:26px;height:26px;accent-color:var(--teal-d)}.subtabs{background:var(--cream2);border-radius:16px;gap:8px;padding:6px}.subtabs button{height:48px;color:var(--navy);font:600 17px var(--fb);border-radius:12px;padding:0 22px}.subtabs button[aria-selected=true]{background:var(--navy);color:var(--cream);box-shadow:none}.project-kaart{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:18px}.project-foto{background:linear-gradient(135deg, var(--navy2), var(--navy3)) center / cover no-repeat;aspect-ratio:auto;height:190px}.project-label{color:var(--cream);font:600 14px var(--fb);background:#0e1620d9;border-radius:16px;align-items:center;height:32px;padding:0 12px;display:inline-flex}.project-inhoud{padding:22px 24px}.project-inhoud h3{font:600 21px var(--fh);color:var(--navy)}.project-cijfers{color:var(--navy);font-size:16px}.voortgang{background:#e4dcc6;border-radius:7px;height:14px}.voortgang>div{background:var(--teal-d);border-radius:7px}.stat-tegel{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px 26px}.stat-tegel .label{color:var(--ink3);font-size:16px;font-weight:600}.stat-tegel .waarde{font:600 36px var(--fh)}.fin-tabel th{background:var(--cream2);font:600 14px var(--fb);color:var(--ink2);padding:14px 12px}.fin-tabel td{border-bottom:1px solid var(--line);padding:14px 12px;font-size:16px}.fin-tabel tr:hover td{background:#faf4e4}.bedrag-in{color:var(--ok-t)}.bedrag-uit{color:var(--bad)}.uitnodig-code{background:var(--teal-l);color:var(--teal-dd);font-size:36px}.modal-paneel{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:32px}.modal-achtergrond{background:#0e162099}.form-veld label{color:var(--navy);font-size:16px}.form-veld input,.form-veld select,.form-veld textarea{border:1.5px solid var(--field);min-height:52px;font:400 17px var(--fb);border-radius:12px}.form-veld .veld-fout{color:var(--bad);font-size:15px;font-weight:600}.form-veld input[aria-invalid=true]{border:2px solid var(--bad);background:#fff6f4}.upload-zone{background:var(--paper);border:2px dashed #b3a685;font-size:17px}:root{--bg:#91998f;--bg-alt:#7f897c;--surface:#e6eae1a3;--surface-solid:#f4f6f0f0;--surface-soft:#eef1eb94;--dark:#525e4ebd;--dark-soft:#3e4a3b;--primary:#1e7a25;--primary-light:#3fa945;--primary-soft:#1e7a252e;--primary-softer:#1e7a251a;--green:#1e7a25;--green-soft:#1e7a252e;--amber:#1e7a25;--amber-soft:#1e7a2524;--rose:#f3a29a;--rose-soft:#f3a29a2e;--ink:#243022;--ink-soft:#4b5848;--ink-faint:#667262;--line:#ffffff85;--line-soft:#ffffff52;--blue:#1e7a25;--blue-soft:#1e7a2524;--teal:#1e7a25;--teal-soft:#1e7a2529;--teal-dark:#155d1c;--clay:#1e7a25;--clay-dark:#4e6949;--clay-soft:#1e7a2529;--radius-xl:28px;--radius-lg:22px;--radius-md:16px;--radius-sm:10px;--shadow-card:0 24px 58px #232b2038, inset 0 1px 0 #ffffff52;--shadow-soft:0 12px 32px #232b2029, inset 0 1px 0 #ffffff42;--font:"Outfit", -apple-system, sans-serif;--font-display:"Fraunces", Georgia, serif}*{box-sizing:border-box;margin:0;padding:0}html,body{color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;background-color:#0000;background-image:linear-gradient(120deg,#ffffff38 0%,#ffffff0d 34%,#0000 58%),linear-gradient(310deg,#5a65566b 0%,#0000 48%),linear-gradient(#b6bbb2 0%,#91998f 52%,#7f897c 100%);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;max-width:100vw;overflow-x:hidden}body{min-height:100vh;display:flex}#root{flex-direction:column;flex:1;max-width:100vw;min-height:100vh;display:flex}.login-wrap{background:linear-gradient(120deg,#ffffff3d 0%,#ffffff0f 36%,#0000 62%),linear-gradient(310deg,#5a65566b 0%,#0000 48%),linear-gradient(#b6bbb2 0%,#91998f 52%,#7f897c 100%);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);width:420px;box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(26px)saturate(130%);backdrop-filter:blur(26px)saturate(130%);padding:48px 40px}.login-card h1{letter-spacing:-.03em;color:var(--ink);margin-bottom:8px;font-size:26px;font-weight:800}.login-card .sub{color:var(--ink-soft);margin-bottom:28px;font-size:14px}.login-card form{flex-direction:column;gap:12px;display:flex}.login-card input{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);font-size:14px;font-family:var(--font);outline:none;padding:14px 16px;transition:border-color .2s}.login-card input:focus{border-color:var(--primary-light);background:var(--surface)}.login-card button{color:var(--ink);font-size:15px;font-weight:600;font-family:var(--font);cursor:pointer;box-shadow:var(--shadow-soft);background:#eef1eb61;border:1px solid #fff6;border-radius:999px;margin-top:8px;padding:14px;transition:transform .15s}.login-card button:hover{transform:translateY(-1px)}.error{color:#be123c;background:var(--rose-soft);border-radius:var(--radius-sm);padding:10px 14px;font-size:14px}.center{width:100%;min-height:100vh;color:var(--ink-soft);background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.app{width:100%;max-width:100vw;min-height:100vh;display:flex}.sidebar{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;background:0 0;flex-direction:column;flex-shrink:0;gap:4px;width:260px;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-header{justify-content:space-between;align-items:center;padding:8px 12px 24px;display:flex}.sidebar-header div{align-items:center;gap:10px;display:flex}.sidebar-header h2{letter-spacing:-.01em;color:var(--ink);-webkit-text-fill-color:var(--ink);background:0 0;font-size:15px;font-weight:700}.sidebar-header img{border-radius:10px!important;width:36px!important;height:36px!important}.role-badge{letter-spacing:.1em;text-transform:uppercase;background:var(--primary-soft);color:#276a22;border:1px solid var(--line);border-radius:999px;align-items:center;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex}.role-badge.role-admin{background:var(--blue-soft);color:#276a22;border-color:#fff6}.role-badge.role-beheerder{background:var(--green-soft);color:#276a22;border-color:#fff6}.role-badge.role-bezoeker{background:var(--surface-soft);color:var(--ink-soft)}.role-badge.clickable{cursor:pointer;transition:opacity .15s}.role-badge.clickable:hover{opacity:.78}.sidebar button{border-radius:var(--radius-md);cursor:pointer;color:var(--ink-soft);font-size:14px;font-weight:500;font-family:var(--font);text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;margin-bottom:2px;padding:11px 14px;transition:all .15s;display:flex}.sidebar button:hover{color:var(--ink);background:#eef1eb2e}.sidebar button:active{transform:scale(.97)}.sidebar button.active{background:var(--dark);color:#fff;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #ffffff38;font-weight:600}.sidebar button svg{flex-shrink:0;width:18px;height:18px}.sidebar button.active svg{opacity:1}.sidebar button .badge-count{background:var(--clay);color:#fff;border-radius:999px;margin-left:auto;padding:2px 7px;font-size:10px;font-weight:700}.sidebar button.active .badge-count{background:var(--primary)}.sidebar-user-card{border:1px solid var(--line-soft);background:#eef1eb29;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.sidebar-avatar-sm{background:var(--primary-soft);width:32px;height:32px;color:var(--ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.user-email{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.sidebar .logout{color:var(--rose);border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font);background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 14px;transition:background .15s;display:flex}.sidebar .logout:hover{background:var(--rose-soft)}.content{flex:1;min-width:0;max-width:100%;padding:28px 32px 48px;overflow:hidden auto}.header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.header-row h1,.content h1{letter-spacing:-.03em;color:var(--ink);-webkit-text-fill-color:var(--ink);background:0 0;font-size:26px;font-weight:800}.content h2{letter-spacing:-.02em;color:var(--ink);font-size:18px;font-weight:700}.content h3{letter-spacing:-.01em;color:var(--ink);font-size:15px;font-weight:700}.btn-primary{color:var(--ink);font-size:14px;font-weight:600;font-family:var(--font);cursor:pointer;box-shadow:var(--shadow-soft);background:#eef1eb61;border:1px solid #fff6;border-radius:999px;align-items:center;gap:8px;padding:11px 22px;transition:transform .15s;display:inline-flex}.btn-primary:hover{filter:none;background:#eef1ebc7;transform:translateY(-1px)}.btn-primary:active{filter:brightness(.95);transform:scale(.97)}.btn-primary:disabled{opacity:.45;cursor:not-allowed;filter:none;transform:none}.btn-primary svg{width:16px;height:16px}.btn-secondary{background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;font-family:var(--font);cursor:pointer;box-shadow:var(--shadow-soft);border:none;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%);border-radius:999px;align-items:center;gap:8px;padding:11px 20px;transition:transform .15s;display:inline-flex}.btn-secondary:hover{background:var(--surface-soft);transform:translateY(-1px)}.btn-secondary:active{transform:scale(.97)}.btn-secondary svg{width:16px;height:16px}.btn-icon{width:32px;height:32px;color:var(--ink-soft);cursor:pointer;background:#eef1eb29;border:none;border-radius:10px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.btn-icon svg{stroke:currentColor;width:14px;height:14px}.btn-icon:hover{background:var(--primary-soft);color:var(--primary)}.btn-icon:active{transform:scale(.92)}.btn-icon.btn-danger,.btn-icon.danger{color:var(--rose);background:var(--line-soft)}.btn-icon.btn-danger:hover,.btn-icon.danger:hover{background:var(--rose-soft);color:var(--rose)}.btn-icon.warn{color:var(--amber)}.btn-icon.warn:hover{background:var(--amber-soft);color:var(--amber)}.btn-icon:disabled{opacity:.3;cursor:not-allowed}.btn-close{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:22px;line-height:1;transition:all .15s;display:inline-flex}.btn-close:hover{background:var(--line-soft);color:var(--ink)}.data-table{border-collapse:collapse;width:100%}.data-table thead th{text-align:left;letter-spacing:.1em;color:var(--ink-faint);text-transform:uppercase;border-bottom:1px solid var(--line-soft);background:0 0;padding:14px 18px;font-size:11px;font-weight:700}.data-table tbody td{border-bottom:1px solid var(--line-soft);vertical-align:middle;color:var(--ink);padding:15px 18px;font-size:14px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .15s}.data-table select{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-size:13px;font-family:var(--font);outline:none;padding:6px 10px}.data-table select:focus{border-color:var(--primary-light)}.data-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);padding:8px;overflow:hidden}.type-badge{letter-spacing:.04em;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.titel-cel{text-overflow:ellipsis;white-space:nowrap;max-width:280px;font-weight:600;overflow:hidden}.acties{justify-content:flex-end;align-items:center;gap:6px;display:flex}.leeg{text-align:center;color:var(--ink-faint);font-size:14px;padding:40px!important}.moskee-col{text-overflow:ellipsis;white-space:nowrap;max-width:200px;color:var(--ink-soft);font-size:13px;overflow:hidden}.id-cell{color:var(--ink-faint);font-family:ui-monospace,SF Mono,monospace;font-size:11px}.code-cell{background:var(--primary-softer);letter-spacing:3px;color:var(--primary);border-radius:8px;padding:4px 12px;font-family:ui-monospace,SF Mono,monospace;font-size:15px;font-weight:700;display:inline-block}.role-badge-table{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}span.role-badge:not(.clickable){letter-spacing:.04em;text-transform:uppercase;background:var(--primary-soft);color:var(--teal-dark);border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}span.role-badge[class*=admin]:not(.clickable){background:var(--primary-soft);color:var(--primary)}.status-active{background:var(--green-soft);color:var(--teal-dark);border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.status-used{background:var(--line-soft);color:var(--ink-faint);border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.status-live{background:var(--rose-soft);color:var(--rose);border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;animation:2s ease-in-out infinite pulse-live;display:inline-flex}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.6}}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:100;background:#2d31265c;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);width:100%;max-width:1100px;max-height:92vh;box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(26px)saturate(130%);backdrop-filter:blur(26px)saturate(130%);padding:36px 40px;position:relative;overflow-y:auto}.mobile-header{z-index:150;-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%);border-bottom:1px solid var(--line);background:#91998fd1;align-items:center;gap:12px;min-height:52px;padding:12px 16px;display:none;position:sticky;top:0}.mobile-header h2{flex:1;font-size:16px;font-weight:800}.hamburger{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--ink);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.sidebar-overlay{z-index:200;background:#0009;display:none;position:fixed;inset:0}.sidebar-overlay.open{display:block}@media (width<=1024px){.mobile-header{display:flex}.sidebar{z-index:300;width:270px;height:100dvh;max-height:100dvh;padding-bottom:calc(96px + env(safe-area-inset-bottom,0px));background:var(--bg);border-right:1px solid var(--line);touch-action:pan-y;transition:left .25s;position:fixed;top:0;bottom:0;left:-280px;box-shadow:8px 0 32px #00000080}.sidebar.open{left:0}.app{flex-direction:column}.content{box-sizing:border-box;width:100vw;max-width:100vw;padding:16px 12px 32px;overflow-x:hidden!important}.content>div{max-width:100%;overflow-x:hidden}.header-row h1,.content h1{font-size:20px}.card{max-width:100%;padding:18px 14px}.live-uitzending-view{width:100%}.live-uitzending-view .card{border-radius:22px;padding:22px 18px}.live-uitzending-view .uz-quickstart{padding:30px 20px!important}.live-uitzending-view .uz-active-strip{padding:20px 18px!important}.live-uitzending-view .uz-options-card,.live-uitzending-view .uz-preview-card,.live-uitzending-view .uz-log-card{padding:24px 18px!important}.live-uitzending-view .uz-preview-item{border-radius:16px;padding:18px 16px}.form-grid{grid-template-columns:1fr!important}.login-card{max-width:420px;width:100%!important}.activ-filter-chip{padding:8px 14px!important;font-size:13px!important}.stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important;width:100%!important;max-width:100%!important}.stat-v2{gap:6px;min-height:auto;padding:12px 14px}.stat-value2{font-size:22px}.stat-label2{font-size:10px}.stat-delta{padding:2px 6px;font-size:9px}.stat-top2{margin-bottom:0}.icon-wrap2{border-radius:8px;width:30px;height:30px}.icon-wrap2 svg{width:14px;height:14px}.sparkline{height:20px}.platform-grid{grid-template-columns:1fr;max-width:100%}.platform-card{word-break:break-word;gap:10px;max-width:100%;padding:16px;overflow:hidden}.platform-card .pf-icon{border-radius:10px;width:36px;height:36px}.platform-card .pf-icon svg{width:18px;height:18px}.platform-card .pf-title{font-size:15px}.platform-card .pf-desc{font-size:12px}.quick-actions{gap:8px;max-width:100%;grid-template-columns:repeat(2,1fr)!important;display:grid!important}.qa-btn{gap:8px;padding:10px 12px}.qa-icon2{border-radius:8px;width:28px;height:28px}.qa-icon2 svg{width:13px;height:13px}.qa-title{font-size:11px}.qa-sub{font-size:10px}.charts-grid2,.dash-bottom{grid-template-columns:1fr}.quickstart-card{text-align:center;flex-direction:column;gap:12px;padding:18px 14px}.quickstart-card .qs-icon{border-radius:12px;width:44px;height:44px}.quickstart-card .qs-icon svg{width:20px;height:20px}.quickstart-card .qs-title{font-size:16px}.quickstart-card .qs-desc{font-size:12px}.quickstart-card .qs-btn{text-align:center;justify-content:center;width:100%;padding:10px 20px;font-size:13px}.data-card{overflow-x:auto}.data-table{min-width:600px}.activ-stat-strip{grid-template-columns:repeat(2,1fr);gap:8px}.usage-panel-grid{grid-template-columns:1fr;gap:10px}.usage-history-head{align-items:flex-start}.usage-history-main{min-width:180px}.activ-stat-mini{padding:10px 12px}.activ-stat-mini .icon-box{border-radius:8px;width:28px;height:28px}.activ-stat-mini .num{font-size:18px}.activ-card{grid-template-columns:48px 1fr;gap:10px;padding:12px}.activ-card .activ-author{display:none}.activ-card .acties{grid-column:1/-1;justify-content:flex-start}.activ-date-pill{width:48px;padding:6px 2px}.activ-date-pill .day{font-size:16px}.activ-date-pill .month{font-size:8px}.activ-date-pill .time{font-size:9px}.dash-topbar h1{font-size:20px}.dash-topbar p{font-size:12px}.activ-topbar .btn-primary,.activ-topbar .btn-secondary{padding:8px 14px;font-size:12px}.activ-topbar .btn-primary svg,.activ-topbar .btn-secondary svg{width:12px;height:12px}.activ-topbar h1{font-size:22px!important}.card{margin-bottom:10px}.feed-card2{padding:16px}.feed-item2{gap:10px;padding:8px 0}.feed-av{width:28px;height:28px;font-size:11px}.feed-naam{font-size:13px}.feed-meta{font-size:11px}.highlight-card{padding:16px}.highlight-card h3{font-size:16px}}@media (width<=900px){.modal-overlay{padding:16px}.modal{border-radius:20px;padding:24px}}@media (width<=600px){.modal-overlay{padding:8px}.modal{border-radius:16px;max-height:96vh;padding:18px}.form-grid{grid-template-columns:1fr!important}.form-row{flex-direction:column}}.modal-head{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.modal h2{letter-spacing:-.02em;color:var(--ink);font-size:20px;font-weight:700}.modal-actions{border-top:1px solid var(--line-soft);justify-content:flex-end;gap:10px;margin-top:28px;padding-top:20px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group.full{grid-column:1/-1}.form-group label{color:var(--ink);letter-spacing:.01em;font-size:13px;font-weight:700}.form-group input,.form-group select,.form-group textarea{border-radius:var(--radius-md);border:1.5px solid var(--line);font-family:var(--font);color:var(--ink);resize:vertical;background:#eef1eb2e;outline:none;padding:12px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--ink-faint)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1e7a2524}.form-group input:disabled{opacity:.55;cursor:not-allowed}.form-row{gap:12px;display:flex}.form-row .form-group{flex:1}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);margin-bottom:16px;padding:22px}.card h3{margin-bottom:14px}.live-uitzending-view{width:min(1120px,100%);margin:0 auto}.live-uitzending-view .card{border-radius:var(--radius-xl);margin-bottom:0;padding:32px 34px}.live-uitzending-view .uz-quickstart{padding:44px 38px}.live-uitzending-view .uz-active-strip{flex-wrap:wrap;padding:24px 30px}.live-uitzending-view .uz-qr-card{padding:38px 34px}.live-uitzending-view .uz-options-card,.live-uitzending-view .uz-preview-card,.live-uitzending-view .uz-log-card{padding:34px}.live-uitzending-view .uz-preview-item{border-radius:18px;padding:22px 24px}.hint{color:var(--ink-faint);font-size:11px}.zoek-input{background:var(--surface);border:1px solid var(--line);width:100%;color:var(--ink);font-size:14px;font-family:var(--font);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px)saturate(130%);backdrop-filter:blur(20px)saturate(130%);border-radius:999px;outline:none;margin-bottom:20px;padding:12px 20px}.zoek-input::placeholder{color:var(--ink-faint)}.code-zoek{margin-top:8px;position:relative}.code-zoek input{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-md);width:100%;color:var(--ink);font-size:14px;font-family:var(--font);outline:none;padding:12px 16px;transition:border-color .2s}.code-zoek input:focus{border-color:var(--primary-light);background:var(--surface)}.zoek-resultaten{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);z-index:10;max-height:280px;box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(22px)saturate(130%);backdrop-filter:blur(22px)saturate(130%);margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.zoek-item{border:none;border-bottom:1px solid var(--line-soft);width:100%;color:var(--ink);cursor:pointer;text-align:left;font-family:var(--font);background:0 0;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;transition:background .15s;display:flex}.zoek-item:last-child{border-bottom:none}.zoek-item:hover{background:var(--surface-soft)}.zoek-item span{color:var(--ink-faint);font-size:13px}.code-resultaat{text-align:center;margin-top:20px}.code-display{letter-spacing:10px;color:var(--primary);background:var(--primary-softer);border-radius:var(--radius-lg);cursor:pointer;border:1px solid #1e7a253d;margin:12px 0;padding:24px;font-family:ui-monospace,SF Mono,monospace;font-size:36px;font-weight:800;transition:all .2s;display:block}.code-display:hover{background:var(--primary-soft);border-color:var(--primary-light);transform:translateY(-1px)}.stats-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);flex-direction:column;gap:6px;padding:20px;transition:transform .15s;display:flex}.stat-card:hover{transform:translateY(-2px)}.stat-num{letter-spacing:-.03em;color:var(--ink);-webkit-text-fill-color:var(--ink);background:0 0;font-size:34px;font-weight:800;line-height:1;display:block}.stat-label{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:600}.charts-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.moskee-foto{object-fit:cover;border-radius:10px;width:40px;height:40px}.moskee-foto-placeholder{background:var(--primary-softer);border:1px solid #1e7a253d;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#1e7a252e padding-box padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#1e7a2547 padding-box padding-box;border:2px solid #0000}.dash-topbar{align-items:center;gap:16px;margin-bottom:22px;display:flex}.dash-topbar .grow{flex:1}.dash-topbar h1{letter-spacing:-.02em;color:var(--ink);-webkit-text-fill-color:var(--ink);background:0 0;font-size:26px;font-weight:700}.dash-topbar p{color:var(--ink-soft);margin-top:2px;font-size:14px}.stat-v2{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);flex-direction:column;gap:12px;min-height:140px;padding:20px;transition:transform .15s;display:flex}.stat-v2:hover{transform:translateY(-2px)}.stat-v2.donker{background:var(--dark);color:#fff;border-color:#ffffff3d}.stat-top2{justify-content:space-between;align-items:flex-start;display:flex}.icon-wrap2{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.icon-wrap2 svg{width:18px;height:18px}.icon-wrap2.blauw,.icon-wrap2.teal{color:var(--primary);background:#1e7a2524}.icon-wrap2.amber{color:var(--primary);background:#1e7a251f}.icon-wrap2.rose{color:var(--rose);background:#b24a351f}.stat-v2.donker .icon-wrap2{color:#e7eadf;background:#ffffff1f}.stat-label2{color:var(--ink-faint);letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:600}.stat-v2.donker .stat-label2{color:#ffffff80}.stat-value2{letter-spacing:-.03em;margin-top:2px;font-size:36px;font-weight:700;line-height:1}.stat-delta{border-radius:999px;align-items:center;gap:3px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.stat-delta.up{color:var(--teal-dark);background:#1e7a2524}.stat-delta.neutraal{background:var(--line-soft);color:var(--ink-soft)}.stat-v2.donker .stat-delta.up{color:#e7eadf;background:#ffffff1f}.stat-v2.donker .stat-delta.neutraal{color:#ffffffa6;background:#ffffff1a}.sparkline{width:100%;height:28px;margin-top:auto}.quick-actions{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px;display:grid}.qa-btn{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px)saturate(130%);backdrop-filter:blur(20px)saturate(130%);font-family:var(--font);text-align:left;align-items:center;gap:12px;padding:14px 16px;transition:transform .15s,box-shadow .15s;display:flex}.qa-btn:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.qa-btn:active{transform:scale(.97)}.qa-icon2{color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.qa-icon2 svg{width:16px;height:16px}.qa-title{color:var(--ink);font-size:13px;font-weight:700}.qa-sub{color:var(--ink-faint);margin-top:1px;font-size:11px}.platform-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:20px;display:grid}.platform-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);flex-direction:column;gap:14px;padding:24px;transition:transform .15s,border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.platform-card:hover{box-shadow:var(--shadow-card);border-color:#1e7a2547;transform:translateY(-3px)}.platform-card:active{transform:scale(.98)}.platform-card .pf-label{text-transform:uppercase;letter-spacing:1.5px;color:var(--ink-faint);font-size:10px;font-weight:800}.platform-card .pf-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.platform-card .pf-icon svg{width:22px;height:22px}.platform-card .pf-title{color:var(--ink);letter-spacing:-.02em;font-size:18px;font-weight:800}.platform-card .pf-desc{color:var(--ink-soft);font-size:13px;line-height:1.5}.platform-card .pf-action{color:var(--primary);align-items:center;gap:6px;margin-top:auto;font-size:13px;font-weight:700;display:inline-flex}.platform-card .pf-action svg{width:14px;height:14px}.platform-card .pf-badge{text-transform:uppercase;letter-spacing:1px;border-radius:8px;padding:4px 10px;font-size:10px;font-weight:800;position:absolute;top:16px;right:16px}.quickstart-card{border-radius:var(--radius-lg);cursor:pointer;-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);background:linear-gradient(135deg,#eef1eb3d 0%,#1e7a2524 100%);border:1px solid #ffffff52;grid-column:1/-1;align-items:center;gap:24px;margin-bottom:20px;padding:28px 32px;transition:transform .15s,box-shadow .2s;display:flex}.quickstart-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.quickstart-card .qs-icon{background:var(--dark);color:#fff;border:1px solid #fff3;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.quickstart-card .qs-icon svg{width:26px;height:26px}.quickstart-card .qs-text{flex:1}.quickstart-card .qs-label{text-transform:uppercase;letter-spacing:1.5px;color:var(--primary);margin-bottom:4px;font-size:10px;font-weight:800}.quickstart-card .qs-title{color:var(--ink);font-size:18px;font-weight:800}.quickstart-card .qs-desc{color:var(--ink-soft);margin-top:4px;font-size:13px}.quickstart-card .qs-btn{background:var(--primary);color:#fff;font:inherit;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;padding:12px 28px;font-size:14px;font-weight:800;transition:opacity .15s}.quickstart-card .qs-btn:hover{opacity:.9}@media (width<=900px){.platform-grid{grid-template-columns:1fr}.quickstart-card{text-align:center;flex-direction:column}}.charts-grid2{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.chart-card2{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);padding:22px}.chart-head2{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.chart-head2 h3{letter-spacing:-.01em;font-size:16px;font-weight:700}.chart-head2 .sub{color:var(--ink-faint);margin-top:2px;font-size:12px}.chart-total .v{letter-spacing:-.02em;color:var(--teal-dark);text-align:right;font-size:22px;font-weight:700;line-height:1}.chart-total .l{color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;text-align:right;margin-top:3px;font-size:10px;font-weight:600}.bar-list2{flex-direction:column;gap:11px;display:flex}.bar-row2{flex-direction:column;gap:5px;display:flex}.bar-naam{color:var(--ink);font-size:13px;font-weight:600}.bar-track2{align-items:center;gap:10px;display:flex}.bar-bg{background:var(--line-soft);border-radius:999px;flex:1;height:8px;overflow:hidden}.bar-fill2{background:linear-gradient(90deg,#1e7a25,#8dd483);border-radius:999px;height:100%;transition:width .5s}.bar-count{color:var(--ink);text-align:right;min-width:20px;font-size:13px;font-weight:700}.dash-bottom{grid-template-columns:2fr 1fr;gap:14px;display:grid}.feed-card2{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);padding:22px}.feed-head2{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.feed-head2 h3{letter-spacing:-.01em;font-size:16px;font-weight:700}.feed-head2 .feed-link{color:var(--primary);cursor:pointer;font-size:12px;font-weight:600;font-family:var(--font);background:0 0;border:none}.feed-item2{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:11px 0;display:flex}.feed-item2:last-child{border-bottom:none}.feed-av{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:flex}.feed-av.g1{background:linear-gradient(135deg,#667260,#1e7a25)}.feed-av.g2{background:linear-gradient(135deg,#7f897c,#8dd483)}.feed-av.g3{background:linear-gradient(135deg,#1e7a25,#8dd483)}.feed-av.g4{background:linear-gradient(135deg,#4e6949,#1e7a25)}.feed-av.g5{background:linear-gradient(135deg,#5a6555,#8a9487)}.feed-info{flex:1;min-width:0}.feed-naam{color:var(--ink);font-size:14px;font-weight:600}.feed-meta{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:12px;overflow:hidden}.feed-role{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;flex-shrink:0;padding:3px 9px;font-size:10px;font-weight:700}.feed-role.admin{background:var(--blue-soft);color:var(--dark-soft)}.feed-role.beheerder{background:var(--amber-soft);color:var(--clay)}.feed-role.bezoeker{background:var(--primary-soft);color:var(--primary)}.feed-time{color:var(--ink-faint);text-align:right;flex-shrink:0;min-width:60px;font-size:11px}.highlight-card{border-radius:var(--radius-lg);color:var(--ink);box-shadow:var(--shadow-card);border:1px solid var(--line);-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);background:linear-gradient(140deg,#eef1eb3d 0%,#1e7a2524 100%);flex-direction:column;gap:14px;padding:22px;display:flex}.highlight-label{letter-spacing:.12em;text-transform:uppercase;opacity:.75;font-size:10px;font-weight:700}.highlight-card h3{letter-spacing:-.02em;font-size:20px;font-weight:700;line-height:1.2}.highlight-sub{opacity:.65;font-size:13px}.highlight-stats{border-top:1px solid #0000001a;gap:22px;padding-top:14px;display:flex}.hl-stat .v{letter-spacing:-.02em;font-size:18px;font-weight:700}.hl-stat .l{letter-spacing:.08em;text-transform:uppercase;opacity:.65;margin-top:2px;font-size:9px;font-weight:600}.activ-topbar{flex-wrap:wrap;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.activ-topbar .grow{flex:100%;min-width:0}@media (width>=768px){.activ-topbar .grow{flex-basis:auto}}.activ-stat-strip{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px;display:grid}.activ-stat-mini{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px)saturate(130%);backdrop-filter:blur(20px)saturate(130%);align-items:center;gap:12px;padding:14px 16px;display:flex}.activ-stat-mini .icon-box{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.activ-stat-mini .num{letter-spacing:-.03em;font-size:22px;font-weight:800;line-height:1}.activ-stat-mini .lbl{color:var(--ink-faint);margin-top:2px;font-size:11px;font-weight:500}.activ-stat-mini.purple .icon-box{background:var(--primary-soft);color:var(--primary)}.activ-stat-mini.purple .num{color:var(--primary)}.activ-stat-mini.green .icon-box{background:var(--green-soft);color:var(--green)}.activ-stat-mini.green .num{color:var(--green)}.activ-stat-mini.blue .icon-box{background:var(--blue-soft);color:var(--blue)}.activ-stat-mini.blue .num{color:var(--blue)}.activ-stat-mini.amber .icon-box{background:var(--amber-soft);color:var(--amber)}.activ-stat-mini.amber .num{color:var(--amber)}.usage-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:8px 0 24px;display:grid}.usage-panel{padding:0;overflow:hidden}.usage-panel-head{justify-content:space-between;align-items:center;gap:12px;padding:16px 18px 8px;display:flex}.usage-panel-head span,.usage-history-head p,.usage-subline{color:var(--ink-faint);font-size:12px;font-weight:600}.usage-compact-table thead th,.usage-compact-table tbody td{padding-left:18px;padding-right:18px}.usage-history-head{align-items:flex-end;margin-top:4px;margin-bottom:10px}.usage-history-head p{margin:0}.usage-history-main{min-width:220px;max-width:420px}.usage-history-main strong,.usage-history-main span,.usage-subline{display:block}.usage-history-main span{color:var(--ink-soft);white-space:normal;margin-top:4px;font-size:12px;line-height:1.35}.usage-subline{margin-top:3px;line-height:1.25}.activ-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.activ-search-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(20px)saturate(130%);backdrop-filter:blur(20px)saturate(130%);flex:1;align-items:center;gap:8px;min-width:220px;padding:9px 13px;display:flex}.activ-search-box input{font-size:13px;font-family:var(--font);color:var(--ink);background:0 0;border:none;outline:none;flex:1}.activ-search-box input::placeholder{color:var(--ink-faint)}.activ-filter-chip{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);cursor:pointer;font-size:12px;font-weight:600;font-family:var(--font);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:7px 14px;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.activ-filter-chip:hover{border-color:var(--primary-light);color:var(--primary)}.activ-filter-chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.activ-view-tabs{background:var(--surface);box-shadow:var(--shadow-soft);border:1px solid var(--line-soft);-webkit-backdrop-filter:blur(20px)saturate(130%);backdrop-filter:blur(20px)saturate(130%);border-radius:999px;margin-bottom:16px;padding:4px;display:inline-flex}.activ-view-tabs button{color:var(--ink-faint);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font);background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:8px 16px;transition:all .12s;display:flex}.activ-view-tabs button:hover{color:var(--ink)}.activ-view-tabs button.active{background:var(--dark);color:#fff}.activ-list{flex-direction:column;gap:10px;display:flex}.activ-date-divider{align-items:center;gap:10px;margin:14px 0 6px;display:flex}.activ-date-divider:first-child{margin-top:0}.activ-date-divider .lbl{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap;font-size:11px;font-weight:700}.activ-date-divider .badge-count{background:var(--surface);color:var(--ink-faint);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.activ-date-divider .line{background:var(--line-soft);flex:1;height:1px}.activ-card{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);cursor:pointer;-webkit-backdrop-filter:blur(20px)saturate(130%);backdrop-filter:blur(20px)saturate(130%);border-left:3px solid #0000;grid-template-columns:64px 1fr auto auto;align-items:center;gap:18px;padding:16px;transition:transform .12s,box-shadow .12s;display:grid}.activ-card:hover{box-shadow:var(--shadow-card);border-color:var(--primary-soft);transform:translateY(-1px)}.activ-card.today{border-left-color:var(--primary);padding-left:14px}.activ-date-pill{background:var(--surface-soft);border:1px solid var(--line-soft);text-align:center;width:64px;color:var(--ink);border-radius:12px;flex-shrink:0;padding:8px 4px}.activ-date-pill.today{background:var(--dark);border-color:var(--dark)}.activ-date-pill.today .month{color:#fff9}.activ-date-pill.today .day{color:#fff}.activ-date-pill.today .time{color:var(--amber)}.activ-date-pill.past{opacity:.55}.activ-date-pill .month{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:9px;font-weight:700}.activ-date-pill .day{letter-spacing:-.02em;color:var(--ink);margin:2px 0;font-size:22px;font-weight:700;line-height:1}.activ-date-pill .time{color:var(--primary);font-feature-settings:"tnum";font-size:10px;font-weight:600}.activ-info{min-width:0}.activ-author{flex-shrink:0;align-items:center;gap:10px;display:flex}.activ-av{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.activ-av.admin{background:linear-gradient(135deg, var(--dark-soft), var(--primary))}.activ-av.beheerder{background:linear-gradient(135deg, var(--clay-dark), var(--clay))}@media (width<=1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.charts-grid,.form-grid{grid-template-columns:1fr}}@media (width<=700px){.sidebar{display:none}.sidebar.open{display:flex}.content{padding:20px 16px}.stats-grid{grid-template-columns:1fr 1fr}}:root{--navy:#0e1620;--navy2:#162231;--navy3:#233349;--cream:#f5efe3;--cream2:#ece4d0;--paper:#fffdf8;--gold:#bfa46a;--gold-d:#745c20;--gold-l:#f1e7cb;--teal-a:#2a9d8f;--teal-d:#1b7268;--teal-dd:#145a52;--teal-l:#dceeea;--ok:#1f7a45;--ok-t:#17603a;--ok-bg:#ddefe3;--bad:#a3302a;--bad-bg:#f8deda;--nil:#5b5749;--nil-bg:#e9e4d8;--field:#8c8468;--ink2:#444a52;--ink3:#5f646b;--fh:"Outfit", "Trebuchet MS", system-ui, sans-serif;--fb:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--bg:var(--cream);--bg-alt:var(--cream2);--surface:var(--paper);--surface-solid:var(--paper);--surface-soft:var(--cream2);--dark:var(--navy);--dark-soft:var(--navy3);--primary:var(--teal-d);--primary-light:var(--teal-a);--primary-soft:var(--teal-l);--primary-softer:#edf6f4;--green:var(--ok);--green-soft:var(--ok-bg);--amber:var(--gold-d);--amber-soft:var(--gold-l);--rose:var(--bad);--rose-soft:var(--bad-bg);--ink:var(--navy);--ink-soft:var(--ink2);--ink-faint:var(--ink3);--line:#e0d5bc;--line-soft:#eae1cc;--blue:var(--teal-d);--blue-soft:var(--teal-l);--teal:var(--teal-d);--teal-soft:var(--teal-l);--teal-dark:var(--teal-dd);--clay:var(--gold-d);--clay-dark:var(--gold-d);--clay-soft:var(--gold-l);--shadow-card:0 1px 0 #0e16200a, 0 8px 24px -16px #0e16202e;--shadow-soft:0 1px 0 #0e16200a, 0 6px 16px -12px #0e162033;--font:var(--fb);--font-display:var(--fh)}html,body{background:var(--cream);color:var(--navy);font:400 17px/1.5 var(--fb)}::selection{background:#2a9d8f40}.content h1,.content h2,.content h3,.header-row h1{font-family:var(--fh);letter-spacing:-.01em;color:var(--navy);-webkit-text-fill-color:var(--navy);font-weight:600}.content h1,.header-row h1{font-size:34px;line-height:1.15}.content h2{font-size:24px}.content h3{font-size:20px}.num{font-variant-numeric:tabular-nums}.sidebar{background:var(--navy);color:#ede6d4;width:288px;height:100vh;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;align-self:flex-start;gap:4px;padding:28px 18px 24px;position:sticky;top:0;overflow:hidden auto}.sidebar>*{position:relative}.sidebar .zijbalk-ster{opacity:.1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.zijbalk-ster path{fill:none;stroke:var(--gold);stroke-width:1.2px}.sidebar .merk{align-items:center;gap:14px;padding:0 6px 6px;display:flex}.sidebar .merk b{font:600 20px/1.2 var(--fh);color:#fff;display:block}.sidebar .merk span{color:#cdbe97;font-size:14px}.sidebar .merk svg{flex:none;width:52px;height:52px}.sidebar .rol{color:#ebddb1;height:34px;font:600 15px var(--fb);text-transform:capitalize;border:1.5px solid #bfa46abf;border-radius:17px;align-self:flex-start;align-items:center;gap:8px;margin:6px 0 10px 6px;padding:0 14px 0 10px;display:inline-flex}.sidebar .navlab{font:600 13px/1 var(--fb);letter-spacing:.1em;text-transform:uppercase;color:#cdbe97;padding:16px 14px 6px}.sidebar>button:not(.logout),.sidebar nav button{color:#e9e3d3;min-height:50px;font:500 17px var(--fb);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:14px;padding:0 14px;transition:background .15s,color .15s;display:flex}.sidebar>button:not(.logout):hover{color:#fff;background:#ffffff17}.sidebar>button:not(.logout):focus-visible,.sidebar .logout:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.sidebar>button.active{color:#fff;background:#bfa46a38;font-weight:600}.sidebar>button.active svg{color:var(--gold)}.sidebar>button svg{flex:none;width:22px;height:22px}.sidebar-header{display:none}.sidebar-footer{border-top:1px solid #ffffff29;flex-direction:column;gap:12px;margin-top:auto;padding-top:16px;display:flex}.sidebar-user-card{box-shadow:none;background:0 0;border:none;align-items:center;gap:12px;padding:0 6px;display:flex}.sidebar-avatar-sm{background:var(--gold);width:44px;height:44px;color:var(--navy);font:600 17px var(--fh);border-radius:50%;flex:none;place-items:center;display:grid}.sidebar .user-email{color:#fff;word-break:break-all;font-size:15px;font-weight:600}.sidebar .logout{color:#f3eddd;height:50px;font:600 16px var(--fb);border:1.5px solid #ede6d473;border-radius:12px;justify-content:center}.sidebar .logout:hover{background:#ffffff1a;border-color:#fff}.mobile-header{background:var(--navy);color:#fff}.mobile-header h2{color:#fff;font-family:var(--fh)}.hamburger{color:#fff}.content{background:var(--cream);padding:36px 40px 56px}.btn-primary,.btn-secondary{height:52px;font:600 17px var(--fb);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:12px;padding:0 24px;transition:background .15s,border-color .15s,box-shadow .15s,transform .1s}.btn-primary{background:var(--teal-d);color:#fff;border:2px solid var(--teal-d)}.btn-primary:hover{background:var(--teal-dd);border-color:var(--teal-dd);transform:none;box-shadow:0 4px 12px #145a524d}.btn-secondary{background:var(--paper);color:var(--navy);border:2px solid #b3a685}.btn-secondary:hover{background:var(--cream2);border-color:var(--navy);transform:none}.btn-primary:active,.btn-secondary:active{transform:translateY(1px)}.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-icon:focus-visible{outline:3px solid var(--gold);outline-offset:2px}a.btn-primary{align-items:center;text-decoration:none;display:inline-flex}.btn-icon{background:var(--cream2);width:40px;height:40px;color:var(--navy)}.card,.data-card,.stat-card,.stat-v2,.platform-card,.activ-card,.highlight-card,.feed-card2{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-card);-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--navy);border-radius:18px}.data-table thead th{font:600 14px var(--fb);letter-spacing:0;text-transform:none;color:var(--ink2);background:var(--cream2)}.data-table tbody td{font-size:16px}.data-table tbody tr:hover{background:#faf4e4}.content input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]),.content select,.content textarea,.modal input,.modal select,.modal textarea{border:1.5px solid var(--field);min-height:48px;color:var(--navy);font:400 17px var(--fb);background:#fff;border-radius:12px;padding:0 14px}.content textarea,.modal textarea{padding:12px 14px}.content input:focus,.content select:focus,.content textarea:focus{border-color:var(--teal-d);outline:none;box-shadow:0 0 0 4px #2a9d8f47}.modal{background:var(--paper);border:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 30px 80px -20px #0e162099}.modal-overlay{background:#0e162099}.role-badge{border-radius:16px}.login-wrap{background:var(--cream);flex-wrap:wrap;align-items:stretch;padding:0}.login-hero{background:var(--navy);color:var(--cream);flex-direction:column;flex:520px;justify-content:space-between;gap:40px;min-height:100vh;padding:56px 72px;display:flex;position:relative;overflow:hidden}.login-hero svg.zijbalk-ster{opacity:.16;width:100%;height:100%;position:absolute;inset:0}.login-hero>*{position:relative}.login-hero .merk{font:600 30px/1 var(--fh);align-items:center;gap:16px;display:flex}.login-hero .merk svg{width:64px;height:64px}.login-hero h2{font:600 52px/1.08 var(--fh);color:#fff;letter-spacing:-.02em;max-width:560px}.login-hero p{color:#d9d0bb;max-width:540px;font-size:20px;line-height:1.55}.login-hero .klein{color:#cdbe97;font-size:15px}.login-kolom{flex:520px;justify-content:center;align-items:center;padding:48px 24px;display:flex}.login-card{background:var(--paper);border:1px solid var(--line);width:100%;max-width:500px;box-shadow:var(--shadow-card);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:18px;padding:44px}.login-card h1{font:600 32px var(--fh);color:var(--navy);letter-spacing:-.01em}.login-card .sub{color:var(--ink3);margin:8px 0 26px;font-size:18px}.login-card form{gap:18px}.login-card label{color:var(--navy);flex-direction:column;gap:8px;font-size:16px;font-weight:600;display:flex}.login-card input{border:1.5px solid var(--field);height:52px;font:400 17px var(--fb);color:var(--navy);background:#fff;border-radius:12px;padding:0 16px}.login-card input:focus{border-color:var(--teal-d);background:#fff;box-shadow:0 0 0 4px #2a9d8f47}.login-card button{background:var(--teal-d);color:#fff;height:64px;font:600 20px var(--fb);box-shadow:none;border:none;border-radius:14px;margin-top:6px}.login-card button:hover{background:var(--teal-dd);transform:none}.login-card .voet{color:var(--ink3);text-align:center;border-top:1px solid var(--line);margin-top:22px;padding-top:20px;font-size:15px}@media (width<=760px){.login-hero{min-height:auto;padding:32px 24px}.login-hero h2{font-size:34px}.content{padding:22px 16px 40px}}.i{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:24px;height:24px}.i-s{width:20px;height:20px}.i-l{width:30px;height:30px}.muted{color:var(--ink3)}.pagina{flex-direction:column;gap:28px;display:flex}.pagina-kop{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;display:flex}.pagina-kop p{color:var(--ink3);margin-top:6px;font-size:18px}.link{color:var(--teal-d);text-underline-offset:3px;cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.link:hover{color:var(--teal-dd)}.card-h{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.content .card{padding:28px}.tegels{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:20px;display:grid}.tile{background:var(--paper);border:1px solid var(--line);border-radius:18px;flex-direction:column;gap:6px;padding:24px 26px;display:flex}.tile .lab{color:var(--ink3);font-size:16px;font-weight:600}.tile .big{font:600 42px/1.1 var(--fh);color:var(--navy);font-variant-numeric:tabular-nums}.tile .sub{color:var(--ink3);font-size:15px}.ring{background:conic-gradient(var(--teal-d) 0 var(--p,0%), #e4dcc6 0);border-radius:50%;flex:none;place-items:center;width:96px;height:96px;display:grid}.ring i{background:var(--paper);width:72px;height:72px;font:600 22px var(--fh);color:var(--navy);border-radius:50%;place-items:center;font-style:normal;display:grid}.balk{background:#e4dcc6;border-radius:7px;height:14px;overflow:hidden}.balk>b{background:var(--teal-d);transform-origin:0;border-radius:7px;height:100%;display:block}.qa-raster{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:16px;display:grid}.qa{border:1.5px solid var(--line);background:var(--paper);min-height:84px;color:var(--navy);font:600 19px var(--fh);cursor:pointer;text-align:left;border-radius:16px;align-items:center;gap:16px;padding:0 24px;transition:background .15s,border-color .15s,transform .12s,box-shadow .15s;display:flex}.qa:hover{border-color:var(--teal-d);background:#fff;transform:translateY(-2px);box-shadow:0 10px 20px -12px #0e162059}.qa:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.qa .ic{background:var(--teal-l);width:48px;height:48px;color:var(--teal-dd);border-radius:12px;flex:none;place-items:center;display:grid}.qa.pri{background:var(--teal-d);border-color:var(--teal-d);color:#fff}.qa.pri:hover{background:var(--teal-dd)}.qa.pri .ic{color:#fff;background:#ffffff2e}.li{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:14px 0;display:flex}.li:last-child{border-bottom:0;padding-bottom:0}.li:first-child{padding-top:0}.li .t{flex:1;min-width:0}.li .t b{color:var(--navy);font-weight:600;display:block}.li .t span{color:var(--ink3);font-size:15px}.datebox{text-align:center;background:var(--cream2);border-radius:12px;flex:none;width:58px;padding:6px 0;line-height:1.1}.datebox b{font:600 24px var(--fh);color:var(--navy);display:block}.datebox span{color:var(--ink2);text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:600}.pill{min-height:32px;font:600 15px var(--fb);white-space:nowrap;border-radius:16px;align-items:center;gap:6px;padding:0 12px 0 9px;display:inline-flex}.pill .i{stroke-width:2.2px;width:18px;height:18px}.p-ok{background:var(--ok-bg);color:var(--ok-t)}.p-wait{background:var(--gold-l);color:#6a5318}.p-bad{background:var(--bad-bg);color:var(--bad)}.p-nil{background:var(--nil-bg);color:var(--nil)}.p-tl{background:var(--teal-l);color:var(--teal-dd)}.mv{width:34px;height:34px;font:700 17px/1 var(--fb);cursor:pointer;border:1.5px solid;border-radius:8px;place-items:center;padding:0;transition:transform .1s,box-shadow .1s;display:grid}.mv:hover{transform:scale(1.14);box-shadow:0 3px 8px #0e162047}.mv:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.mv:before{content:"–"}.mv.p{background:var(--ok);border-color:var(--ok);color:#fff}.mv.p:before{content:"✓"}.mv.u{background:var(--bad-bg);color:var(--bad);border-color:#d49a93}.mv.u:before{content:"✕"}.mv.e{background:var(--nil-bg);color:var(--nil);border:1.5px dashed #9a9279}.chip{background:var(--paper);height:46px;color:var(--navy);font:600 16px var(--fb);cursor:pointer;border:1.5px solid #b3a685;border-radius:23px;align-items:center;gap:8px;padding:0 18px;transition:background .15s;display:inline-flex}.chip:hover{background:var(--cream2)}.chip:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.chip.on,.chip[aria-pressed=true]{background:var(--navy);color:var(--cream);border-color:var(--navy)}.tabs{background:var(--cream2);border-radius:16px;flex-wrap:wrap;align-self:flex-start;gap:8px;padding:6px;display:flex}.tab{height:48px;color:var(--navy);font:600 17px var(--fb);cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;padding:0 22px;transition:background .15s;display:inline-flex}.tab:hover{background:#ffffffb3}.tab:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.tab[aria-selected=true]{background:var(--navy);color:var(--cream)}.ban{border-radius:14px;align-items:center;gap:14px;padding:16px 20px;font-size:17px;font-weight:600;display:flex}.ban-ok{background:var(--ok-bg);color:var(--ok-t);border:1.5px solid #9fcdb0}.ban-err{background:var(--bad-bg);color:var(--bad);border:1.5px solid #e2a9a2}.ban-info{background:var(--gold-l);color:#5e4912;border:1.5px solid #d9c48f}.empty{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:56px 40px;display:flex}.empty p{max-width:420px;color:var(--ink2);font-size:18px}.eicon{background:var(--gold-l);width:104px;height:104px;color:var(--gold-d);border-radius:50%;place-items:center;display:grid}@media (prefers-reduced-motion:reduce){.qa,.mv,.chip,.tab{transition:none}.qa:hover,.mv:hover{transform:none}}@media (width>=901px){.app{height:100vh;overflow:hidden}.app>.content{height:100vh;overflow-y:auto}.app>.sidebar{height:100vh}}
