:root{
  --bg:#f4f5f7; --card:#fff; --ink:#1c2330; --muted:#6b7280; --line:#e4e7ec;
  --brand:#0a66f5;
  --radius:10px;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 -apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:10px 18px;background:#101828;color:#fff;flex-wrap:wrap;gap:6px}
.topbar .brand{font-size:16px}
.topbar .sub{color:#98a2b3;font-size:12px;margin-left:6px}
.topbar nav{display:flex;align-items:center;gap:2px}
.topbar nav a,.topbar .linkbtn{color:#d0d5dd;margin-left:14px;background:none;border:0;cursor:pointer;font-size:14px;padding:0}
.topbar .linkbtn:hover{color:#fff;text-decoration:underline}
main{max-width:1180px;margin:0 auto;padding:18px}
.banner{padding:10px 14px;border-radius:var(--radius);margin-bottom:14px;font-size:14px}
.banner.ok{background:#e7f6ec;border:1px solid #b7e3c3;color:#166534}
.banner.warn{background:#fef3c7;border:1px solid #fde68a;color:#92400e}
.banner.err{background:#fee4e2;border:1px solid #fecdca;color:#b42318}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px}
.login-wrap{max-width:410px;margin:56px auto}
label{display:block;font-size:13px;color:var(--muted);margin:10px 0 4px}
input[type=text],input[type=email],input[type=password],select,textarea{width:100%;padding:9px 10px;border:1px solid #d0d5dd;border-radius:8px;font:inherit;background:#fff}
textarea{resize:vertical}
button{padding:9px 14px;border:1px solid #d0d5dd;background:#fff;border-radius:8px;cursor:pointer;font:inherit}
button:hover{background:#f9fafb}
button.primary{background:var(--brand);border-color:var(--brand);color:#fff}
button.primary:hover{filter:brightness(1.05)}
button.danger{color:#b42318;border-color:#fecdca}
.tabs{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}
.tabs a{padding:6px 11px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:13px;color:#344054}
.tabs a.on{background:#101828;border-color:#101828;color:#fff}
.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-bottom:12px}
.filters .f{min-width:120px}
.filters .f.grow{flex:1;min-width:200px}
table.items{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
table.items th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:#667085;text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);background:#f9fafb;white-space:nowrap}
table.items th a{color:#475467}
table.items td{padding:6px 10px;border-bottom:1px solid #f2f4f7;vertical-align:top}
tr.item-row:hover{background:#fcfcfd}
details.item summary{list-style:none;display:flex;gap:8px;align-items:center;cursor:pointer;flex-wrap:wrap}
details.item summary::-webkit-details-marker{display:none}
.subject{font-weight:600;flex:1;min-width:220px}
.meta{color:var(--muted);font-size:12.5px;white-space:nowrap}
.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}
.st-open{background:#e8f0fe;color:#0a66f5}
.st-geactiveerd{background:#fef3c7;color:#b45309}
.st-on_hold{background:#f2f4f7;color:#667085}
.st-afgehandeld{background:#e7f6ec;color:#15803d}
.st-verwijderd{background:#fee4e2;color:#b42318}
.prio{font-size:12px;font-weight:600;white-space:nowrap}
.prio-Hoog{color:#b42318}
.prio-Normaal{color:#b45309}
.prio-Laag{color:#667085}
.item-body{padding:12px 4px 6px 4px}
.desc{white-space:pre-wrap;background:#f9fafb;border:1px solid #f2f4f7;border-radius:8px;padding:10px 12px;margin:0 0 10px 0}
.timeline{margin:10px 0}
.ev{display:grid;grid-template-columns:92px 70px 1fr;gap:8px;padding:4px 0;font-size:13.5px;border-bottom:1px dashed #f0f1f4}
.ev:last-child{border-bottom:0}
.ev-when{color:var(--muted);font-size:12px;padding-top:1px}
.ev-who{font-weight:600}
.ev-who.puk{color:#7c3aed}
.ev-who.sander{color:#0a66f5}
.ev-text{white-space:pre-wrap}
.ev.reply .ev-text{background:#f5f3ff;border:1px solid #ede9fe;border-radius:8px;padding:6px 9px}
.actions{margin-top:10px}
.btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.muted{color:var(--muted);font-size:12.5px}
.footer{margin:22px 0 10px;color:var(--muted);font-size:12.5px;text-align:center}
.inline{display:inline}
.newitem{margin-bottom:14px}
.newitem summary{cursor:pointer;font-weight:600;color:#0a66f5}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.mt{margin-top:10px}
.narrow{max-width:680px}
@media(max-width:760px){.grid3{grid-template-columns:1fr}.ev{grid-template-columns:1fr}.meta{white-space:normal}}
