:root{--yellow:#f4c430;--yellow-dark:#d9a900;--ink:#252525;--muted:#6d6d6d;--line:#dedede;--bg:#f4f5f6;--white:#fff;--danger:#b42318;--success:#146c43;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;line-height:1.5}a{color:inherit}.topbar{min-height:68px;background:#222;color:#fff;display:flex;align-items:center;padding:0 clamp(20px,4vw,64px);gap:36px;box-shadow:0 2px 10px #0002}.brand{text-decoration:none;font-size:22px;font-weight:800}.brand span{color:var(--yellow)}.topbar nav{display:flex;gap:8px;flex:1}.topbar nav a{padding:10px 14px;text-decoration:none;border-radius:6px}.topbar nav a:hover{background:#ffffff16}.account{display:flex;align-items:center;gap:16px}.account form{margin:0}.container{width:min(1120px,calc(100% - 32px));margin:42px auto 80px}.container--narrow{width:min(440px,calc(100% - 32px));margin-top:10vh}.page-heading,.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}.page-heading h1,.section-heading h2{margin:6px 0 0;line-height:1.15}.page-heading p,.section-heading p,.muted,.hint{color:var(--muted);margin:6px 0 0}.back{font-size:14px;color:var(--muted);text-decoration:none}.panel,.login-card,.danger-zone{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:clamp(20px,4vw,36px);box-shadow:0 8px 30px #0000000a}.login-card h1{text-align:center;margin:14px 0 0}.login-card>p{text-align:center;margin-bottom:28px}.login-mark{width:54px;height:54px;margin:auto;background:var(--yellow);border-radius:12px;display:grid;place-items:center;font-weight:900;font-size:28px}.stack{display:grid;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label,.label{display:grid;gap:7px;font-weight:650;font-size:14px}input,select,textarea{width:100%;font:inherit;border:1px solid #bbb;border-radius:7px;padding:11px 12px;background:#fff}input:focus,select:focus,textarea:focus,.rich-editor:focus{outline:3px solid #f4c43055;border-color:var(--yellow-dark)}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--yellow);border:1px solid var(--yellow-dark);border-radius:7px;padding:10px 17px;font:inherit;font-weight:750;text-decoration:none;color:#201d12;cursor:pointer}.button:hover{filter:brightness(.96)}.button--secondary{background:#fff;border-color:#aaa}.button--ghost{background:transparent;border-color:transparent}.button--danger{background:var(--danger);border-color:#85170f;color:#fff}.button--small{padding:6px 10px;font-size:14px}.link-button{background:none;border:0;color:inherit;text-decoration:underline;cursor:pointer;padding:0;font:inherit}.link-button--danger{color:var(--danger)}.form-actions{display:flex;justify-content:flex-end;gap:8px}.alert{padding:13px 15px;border-radius:8px;margin:0 0 22px}.alert--error{background:#fee4e2;color:#8a1c13;border:1px solid #fda29b}.alert--success{background:#dcfae6;color:#075e3a;border:1px solid #75e0a7}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.dashboard-card{display:grid;background:#fff;border:1px solid var(--line);border-radius:12px;padding:30px;text-decoration:none;transition:.15s}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px #0001;border-color:var(--yellow)}.dashboard-card strong{font-size:40px;color:var(--yellow-dark)}.dashboard-card span{font-size:20px;font-weight:800}.dashboard-card small{color:var(--muted);margin-top:6px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line)}th{font-size:13px;color:var(--muted);background:#fafafa}tbody tr:last-child td{border-bottom:0}.actions{text-align:right}.tag{display:inline-block;padding:3px 8px;border-radius:999px;background:#f1f1f1;font-size:12px;font-weight:700}.section-gap{margin-top:28px}.danger-zone{border-color:#f4b4ae}.editor-toolbar{display:flex;flex-wrap:wrap;gap:5px;background:#eee;border:1px solid #bbb;border-bottom:0;padding:7px;border-radius:7px 7px 0 0}.editor-toolbar button{background:#fff;border:1px solid #bbb;border-radius:4px;padding:5px 9px;cursor:pointer}.rich-editor{min-height:320px;background:#fff;border:1px solid #bbb;border-radius:0 0 7px 7px;padding:16px;font-weight:400;overflow:auto}.crop-shell{display:grid;gap:14px}.crop-stage{position:relative;width:min(100%,720px);aspect-ratio:3/2;overflow:hidden;background:#171717;border-radius:8px;cursor:grab;touch-action:none;box-shadow:inset 0 0 0 2px var(--yellow)}.crop-stage:active{cursor:grabbing}.crop-stage img{position:absolute;max-width:none;user-select:none;pointer-events:none;transform-origin:top left}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px;margin-top:28px}.photo-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}.photo-card img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;background:#eee}.photo-card>div{display:flex;justify-content:space-between;align-items:center;padding:10px}.error-page{text-align:center;margin-top:10vh}@media(max-width:700px){.topbar{align-items:flex-start;flex-wrap:wrap;padding:16px 20px;gap:12px}.topbar nav{order:3;width:100%}.account span{display:none}.container{margin-top:26px}.page-heading{align-items:flex-start;flex-direction:column}.dashboard-grid,.form-grid{grid-template-columns:1fr}th:nth-child(3),td:nth-child(3){display:none}.panel{padding:20px}}
.quill-editor .ql-editor{min-height:320px;font-size:16px;line-height:1.6}.ql-toolbar.ql-snow{margin-top:7px;border-radius:7px 7px 0 0;background:#f7f7f7}.ql-container.ql-snow{border-radius:0 0 7px 7px;background:#fff}.ql-editor:focus{outline:3px solid #f4c43055;outline-offset:-3px}
.table-tools{display:flex;justify-content:flex-end;margin:0 0 12px}.table-tools label{width:min(360px,100%)}.sort-button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:0;color:inherit;font:inherit;font-weight:inherit;cursor:pointer}.sort-button::after{content:"↕";color:#999;font-size:12px}th[aria-sort="ascending"] .sort-button::after{content:"↑";color:var(--ink)}th[aria-sort="descending"] .sort-button::after{content:"↓";color:var(--ink)}.table-empty{padding:24px;text-align:center;color:var(--muted)}
.crop-shell[hidden]{display:none}
:root{--yellow:#8bc952;--yellow-dark:#5d9b2d;--ink:#303437;--muted:#687078;--line:#d9dfe2;--bg:#f3f5f5}.topbar{background:#505458}.editor .ql-editor{min-height:220px;max-height:520px;overflow:auto;font-size:16px;line-height:1.6}.check{display:flex;grid-auto-flow:column;justify-content:start;align-items:center}.check input{width:auto}
.image-preview[hidden]{display:none}.image-preview{padding:12px;background:#f3f3f3;border:1px solid var(--line);border-radius:8px;text-align:center}.image-preview img{display:block;max-width:100%;max-height:520px;width:auto;height:auto;margin:auto}
.editor-save-top{display:flex;margin:-66px 0 24px auto}@media(max-width:700px){.editor-save-top{margin:0 0 16px}}
.photo-missing{display:grid;place-items:center;width:100%;aspect-ratio:3/2;padding:16px;background:#fee4e2;color:#8a1c13;font-weight:700;text-align:center}
.crop-steps{display:flex;flex-wrap:wrap;gap:18px;align-items:end}.crop-steps label{min-width:220px}.crop-steps label>span:first-child{text-transform:uppercase;font-size:12px}.crop-file-button{position:relative;overflow:hidden}.crop-file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.crop-workspace[hidden],.crop-toolbar[hidden]{display:none}.crop-workspace{height:min(500px,55vw);min-height:300px;background:#cfd2d6;border-radius:8px;overflow:hidden}.crop-workspace img{display:block;max-width:100%}.crop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.crop-tools{display:flex;flex-wrap:wrap;gap:6px}.crop-tools button{min-width:42px;padding:8px 10px;border:1px solid #5966d8;border-radius:5px;background:#6574e8;color:#fff;font:inherit;font-weight:700;cursor:pointer}.crop-tools button:hover{filter:brightness(.94)}.crop-save{display:flex;align-items:center;gap:12px;text-transform:uppercase;font-size:12px}@media(max-width:700px){.crop-steps>*{width:100%}.crop-workspace{height:360px}.crop-toolbar{align-items:stretch}.crop-save{justify-content:flex-end;width:100%}}

/* Citeg visual identity */
:root{--citeg-green:#8cc957;--citeg-green-dark:#669f39;--citeg-charcoal:#505456;--citeg-soft:#edf4e8;--citeg-shadow:0 18px 50px rgba(45,55,58,.09)}
body{min-height:100vh;background:linear-gradient(145deg,#f7f9f7 0%,#eef2f1 100%)}
.topbar{min-height:82px;padding:0 clamp(20px,4vw,58px);gap:34px;background:rgba(80,84,86,.98);border-bottom:4px solid var(--citeg-green);box-shadow:0 8px 24px rgba(31,35,37,.16)}
.brand{display:flex;align-items:center;gap:13px;min-width:max-content}
.brand-logo{display:flex;align-items:center;padding:7px 12px;background:#fff;border-radius:5px}.brand-logo img{display:block;width:137px;height:auto}
.brand-label{padding-left:13px;border-left:1px solid rgba(255,255,255,.28);color:#fff!important;font-size:14px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}
.topbar nav{height:82px;align-items:stretch}.topbar nav a{position:relative;display:flex;align-items:center;gap:8px;padding:0 18px;border-radius:0;color:#e9eded;font-weight:650}
.topbar nav a:hover,.topbar nav a.is-active{background:rgba(255,255,255,.08)}.topbar nav a.is-active::after{content:"";position:absolute;right:18px;bottom:15px;left:18px;height:3px;border-radius:3px;background:var(--citeg-green)}
.nav-icon{font-size:20px;color:var(--citeg-green)}
.account{font-size:13px}.account-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.site-link{padding:8px 11px;border:1px solid rgba(255,255,255,.24);border-radius:5px;color:#fff;text-decoration:none}.site-link:hover{border-color:var(--citeg-green);background:rgba(140,201,87,.12)}
.container{width:min(1180px,calc(100% - 40px));margin:46px auto 80px}.admin-footer{display:flex;justify-content:space-between;width:min(1180px,calc(100% - 40px));margin:-40px auto 28px;padding-top:20px;border-top:1px solid #dce2df;color:#8a9290;font-size:12px}
.page-heading{position:relative;margin-bottom:28px;padding-bottom:20px}.page-heading::after{content:"";position:absolute;bottom:0;left:0;width:54px;height:4px;border-radius:4px;background:var(--citeg-green)}.page-heading h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.035em}.page-heading p{font-size:16px}
.panel,.login-card,.danger-zone,.table-wrap{border-color:#dfe5e2;box-shadow:var(--citeg-shadow)}.panel{border-top:4px solid var(--citeg-green)}
.button{gap:8px;background:var(--citeg-green);border-color:var(--citeg-green-dark);box-shadow:0 4px 12px rgba(102,159,57,.16);transition:transform .15s,box-shadow .15s,filter .15s}.button:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(102,159,57,.24)}.button--secondary{background:#fff;border-color:#bac4bf;box-shadow:none}.button--ghost{box-shadow:none}
.table-tools input{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23687078' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E") no-repeat 12px center;padding-left:40px}.table-wrap{overflow:hidden}th{background:#f6f8f7;color:#545c59;text-transform:uppercase;letter-spacing:.04em}tbody tr{transition:background .12s}tbody tr:hover{background:#f7fbf4}.sort-button::after{content:"↕"}th[aria-sort="ascending"] .sort-button::after{content:"↑"}th[aria-sort="descending"] .sort-button::after{content:"↓"}.tag{background:var(--citeg-soft);color:#568a2e}
.photo-card{box-shadow:0 7px 20px rgba(45,55,58,.07);transition:transform .15s,box-shadow .15s}.photo-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(45,55,58,.12)}
.crop-tools button{border-color:var(--citeg-green-dark);background:var(--citeg-green-dark)}

/* Login */
.auth-page{display:grid;min-height:100vh;grid-template-rows:1fr auto;background:linear-gradient(125deg,rgba(54,59,61,.95),rgba(80,84,86,.88)),radial-gradient(circle at 82% 18%,rgba(140,201,87,.55),transparent 32%)}
.auth-page::before{content:"";position:fixed;top:-170px;right:-120px;width:480px;height:480px;border:85px solid rgba(140,201,87,.12);border-radius:50%;pointer-events:none}.auth-page::after{content:"";position:fixed;bottom:-180px;left:-130px;width:420px;height:420px;border:70px solid rgba(255,255,255,.04);border-radius:50%;pointer-events:none}
.auth-page .container--narrow{position:relative;z-index:1;width:min(480px,calc(100% - 32px));margin:auto}.login-card{padding:0;overflow:hidden;border:0;border-radius:14px;box-shadow:0 28px 80px rgba(0,0,0,.28)}
.login-brand{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 30px;border-bottom:1px solid #e7ece9;background:#f8faf9}.login-brand img{width:174px;height:auto}.login-brand span{color:#78807d;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.login-heading{padding:30px 34px 14px}.login-heading h1{margin:5px 0 7px;text-align:left;font-size:34px;letter-spacing:-.035em}.login-heading p{margin:0;color:var(--muted)}.eyebrow{color:var(--citeg-green-dark);font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.login-card form{padding:10px 34px 30px}.login-card .alert{margin:10px 34px 0}.login-card input{padding:13px 14px;background:#fbfcfb}.login-button{justify-content:space-between;margin-top:4px;padding:13px 17px}.login-button span{font-size:20px}.login-help{margin:0;padding:16px 34px;border-top:1px solid #e7ece9;background:#f8faf9;color:#7a8380;text-align:center!important;font-size:12px}
.auth-page .admin-footer{position:relative;z-index:1;color:rgba(255,255,255,.6);border-color:rgba(255,255,255,.12)}

/* Dashboard */
.dashboard-hero{position:relative;display:flex;justify-content:space-between;align-items:center;min-height:260px;overflow:hidden;margin-bottom:36px;padding:clamp(32px,6vw,64px);border-radius:16px;background:linear-gradient(120deg,#4c5153 0%,#646a6b 100%);box-shadow:var(--citeg-shadow);color:#fff}.dashboard-hero::after{content:"";position:absolute;right:-95px;bottom:-155px;width:390px;height:390px;border:65px solid rgba(140,201,87,.16);border-radius:50%}.dashboard-hero>div{position:relative;z-index:1}.dashboard-hero .eyebrow{color:#aee67c}.dashboard-hero h1{max-width:720px;margin:8px 0 12px;font-size:clamp(30px,5vw,50px);line-height:1.08;letter-spacing:-.04em}.dashboard-hero p{max-width:600px;margin:0;color:#e4e8e6;font-size:17px}.dashboard-hero img{position:relative;z-index:1;width:min(230px,25vw);padding:15px 18px;border-radius:7px;background:#fff;box-shadow:0 14px 36px rgba(0,0,0,.18)}
.dashboard-section-heading{display:flex;justify-content:space-between;margin-bottom:16px}.dashboard-section-heading h2{margin:0;font-size:23px}.dashboard-section-heading p{margin:4px 0 0;color:var(--muted)}.dashboard-grid--single{grid-template-columns:1fr}
.dashboard-card--featured{position:relative;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:20px;padding:28px 30px;border-left:5px solid var(--citeg-green)}.dashboard-card--featured:hover{border-color:var(--citeg-green);transform:translateY(-2px)}.dashboard-card-icon{display:grid;width:54px;height:54px;place-items:center;border-radius:12px;background:var(--citeg-soft);color:var(--citeg-green-dark);font-size:30px}.dashboard-card-content{display:grid}.dashboard-card-content>span{font-size:20px;font-weight:800}.dashboard-card--featured strong{display:grid;justify-items:end;color:var(--citeg-charcoal);font-size:34px;line-height:1}.dashboard-card--featured strong small{margin-top:5px;color:var(--muted);font-size:11px;font-weight:650;text-transform:uppercase}.dashboard-card-arrow{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:var(--citeg-green);font-size:21px}
.dashboard-tip{display:flex;align-items:center;gap:15px;margin-top:24px;padding:18px 22px;border:1px solid #d7e6cd;border-radius:10px;background:#f6fbf2}.tip-icon{display:grid;flex:0 0 30px;height:30px;place-items:center;border-radius:50%;background:var(--citeg-green);font-family:Georgia,serif;font-weight:800}.dashboard-tip p{margin:2px 0 0;color:var(--muted)}.dashboard-tip a{margin-left:auto;color:var(--citeg-green-dark);font-weight:750;white-space:nowrap}

@media(max-width:900px){.site-link,.account-name{display:none}.dashboard-hero img{display:none}.dashboard-card--featured{grid-template-columns:auto 1fr auto}.dashboard-card--featured strong{display:none}}
@media(max-width:700px){.topbar{padding:12px 18px}.brand-logo img{width:112px}.brand-label{display:none}.topbar nav{order:3;height:auto}.topbar nav a{padding:10px 13px}.topbar nav a.is-active::after{right:13px;bottom:2px;left:13px}.container{width:min(100% - 28px,1180px)}.admin-footer{width:calc(100% - 28px)}.dashboard-hero{min-height:225px;padding:30px 25px}.dashboard-card--featured{grid-template-columns:auto 1fr;padding:22px}.dashboard-card-arrow{display:none}.dashboard-tip{align-items:flex-start}.dashboard-tip a{display:none}.login-brand{padding:21px 24px}.login-brand img{width:145px}.login-brand span{display:none}.login-heading{padding:25px 26px 12px}.login-card form{padding:10px 26px 26px}.login-card .alert{margin-right:26px;margin-left:26px}.login-help{padding-right:24px;padding-left:24px}}
/* Citeg websitebeheer: aanvullende onderdelen */
.site-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.media-group{grid-column:1/-1;margin:18px 0 0}.media-card>img{width:100%;height:240px;object-fit:cover;margin-bottom:20px;background:#eef0ec}.stack textarea{box-sizing:border-box;width:100%;padding:12px 13px;border:1px solid #ccd0d9;border-radius:4px;font:inherit}.topbar nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}.site-media-grid{grid-template-columns:1fr}}
.dashboard-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid--four .dashboard-card{display:flex;min-height:190px;flex-direction:column;padding:28px 30px;border-top:4px solid var(--citeg-green)}.dashboard-grid--four .dashboard-card-content{display:grid;gap:7px}.dashboard-grid--four .dashboard-card-content>span{font-size:22px;line-height:1.25}.dashboard-grid--four .dashboard-card-content small{font-size:14px;line-height:1.55;font-weight:500}.dashboard-grid--four .dashboard-card strong{display:flex;align-items:baseline;justify-items:initial;gap:7px;margin-top:auto;padding-top:24px;color:var(--citeg-green-dark);font-size:34px;line-height:1}.dashboard-grid--four .dashboard-card strong small{margin:0;color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.tag--custom{background:#e7f3e3;color:#34662d}.field-help{margin-top:-8px;color:#626b65;font-size:13px}@media(max-width:700px){.dashboard-grid--four{grid-template-columns:1fr}.dashboard-grid--four .dashboard-card{min-height:165px;padding:24px}}

/* Navigatie: actieve pagina over de volledige menuhhoogte markeren. */
.topbar nav{align-items:stretch;flex-wrap:nowrap}.topbar nav a{min-height:82px}.topbar nav a.is-active{background:rgba(140,201,87,.14);color:#fff}.topbar nav a.is-active::after{right:0;bottom:0;left:0;height:4px}
@media(max-width:700px){.topbar nav{width:100%;align-items:stretch;flex-wrap:wrap}.topbar nav a{min-height:44px;flex:1 1 auto;justify-content:center}.topbar nav a.is-active::after{bottom:0}}
