/* v0.9.50c layout-herstel: basis CSS teruggezet */
:root{--bg:#f4f7f5;--card:#ffffff;--text:#10251b;--muted:#64746b;--line:#dfe7e2;--primary:#0f7a3d;--primary2:#0b5f30;--danger:#b91c1c;--warning:#b45309;--info:#1d4ed8;--shadow:0 14px 38px rgba(16,37,27,.08)}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.45}a{color:#0b6bcb;text-decoration:none}a:hover{text-decoration:underline}h1{font-size:clamp(28px,3vw,42px);line-height:1.12;margin:0 0 10px}h2{font-size:clamp(20px,2vw,28px);line-height:1.2;margin:0 0 14px}h3{margin:0 0 10px}.muted{color:var(--muted)}.small{font-size:.88rem}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;margin:0 0 18px;box-shadow:var(--shadow)}.notice{background:#f0f9ff;border:1px solid #bae6fd;border-radius:14px;padding:12px 14px}.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534;border-radius:14px;padding:12px 14px}.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:14px;padding:12px 14px}.flash{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534;border-radius:14px;padding:12px 14px;margin:0 0 18px}.grid,.grid2,.grid3,.grid4{display:grid;gap:18px}.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn,button{appearance:none;border:0;border-radius:13px;background:var(--primary);color:white;padding:10px 14px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;min-height:40px}.btn:hover{text-decoration:none;background:var(--primary2)}button.secondary,.btn.secondary{background:#eef3f0;color:#143026;border:1px solid #dbe7df}button.secondary:hover,.btn.secondary:hover{background:#e2eee7}input,select,textarea{width:100%;border:1px solid #cfdcd4;border-radius:12px;padding:10px 12px;background:white;color:var(--text);font:inherit;margin:6px 0 12px}textarea{min-height:96px;resize:vertical}label{font-weight:750;display:block;margin-top:6px}table{width:100%;border-collapse:collapse;background:white;border-radius:14px;overflow:hidden}th,td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}th{background:#f8faf9;color:#506158;font-size:.88rem;text-transform:uppercase;letter-spacing:.02em}.stat strong,.stat .stat{display:block;font-size:clamp(28px,4vw,44px);line-height:1;font-weight:900;margin:8px 0}.bar{height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;background:var(--primary)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(460px,100%)}.brand-dark{font-weight:900;font-size:26px;margin-bottom:8px}.app-shell{min-height:100vh}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;min-height:20px;border-radius:999px;background:#0f7a3d;color:white;font-size:12px;padding:0 7px;font-weight:800}.badge.success{background:#dcfce7;color:#166534}.badge.warning{background:#fef3c7;color:#92400e}.badge.info{background:#dbeafe;color:#1e40af}.badge.danger{background:#fee2e2;color:#991b1b}.topnav-shell{min-height:100vh;background:#f4f7f5;color:#10251b}.app-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid #dfe7e2;box-shadow:0 2px 14px rgba(16,37,27,.06);padding:10px 22px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}.brand-row{display:flex;align-items:center;gap:12px;min-width:250px}.top-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#10251b;font-weight:800;font-size:20px}.bolt{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:#e6f5ec;color:#0f7a3d;font-weight:900}.version{font-size:12px;color:#64746b;white-space:nowrap}.top-nav{display:flex;align-items:center;gap:4px;flex:1;min-width:320px;flex-wrap:wrap}.top-nav>a,.nav-dropdown>button{appearance:none;border:0;background:transparent;color:#23352b;text-decoration:none;font:inherit;font-size:14px;font-weight:650;padding:10px 12px;border-radius:12px;cursor:pointer;display:inline-flex;align-items:center;gap:7px}.top-nav>a:hover,.nav-dropdown>button:hover,.top-nav>a.active,.nav-dropdown.active>button{background:#e6f5ec;color:#0f6f3a;text-decoration:none}.nav-dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;background:#fff;border:1px solid #dfe7e2;border-radius:16px;box-shadow:0 14px 36px rgba(15,23,42,.13);padding:8px;min-width:230px;max-height:72vh;overflow:auto}.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{display:grid;gap:2px}.dropdown-menu a{display:block;text-decoration:none;color:#26372e;padding:9px 11px;border-radius:10px;font-size:14px}.dropdown-menu a:hover,.dropdown-menu a.active{background:#e6f5ec;color:#0f6f3a}.settings-menu{grid-template-columns:repeat(2,minmax(190px,1fr));min-width:460px}.mobile-menu-toggle{display:none;border:1px solid #cfe0d5;background:#fff;color:#143026;border-radius:12px;padding:9px 12px;font-weight:700}.main{padding:24px;max-width:1540px;margin:0 auto}.top{display:flex;align-items:center;gap:14px;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap}.top h1{margin:0}.page-subtitle{margin:4px 0 0;color:#64746b}.top-search{display:flex;gap:8px;min-width:min(520px,100%);flex:1;max-width:620px}.top-search input{flex:1;margin:0}.user-chip{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#25372d;background:#fff;border:1px solid #dfe7e2;border-radius:999px;padding:8px 12px}.avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#e6f5ec;font-size:12px;font-weight:800}body.menu-open .top-nav{display:flex}
@media(max-width:1100px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-menu{grid-template-columns:1fr;min-width:260px}}
@media(max-width:900px){.app-header{align-items:flex-start}.mobile-menu-toggle{display:inline-flex;margin-left:auto}.top-nav{display:none;width:100%;min-width:0;flex-direction:column;align-items:stretch}.top-nav>a,.nav-dropdown>button{width:100%;justify-content:space-between}.nav-dropdown{width:100%}.dropdown-menu{position:static;display:grid;box-shadow:none;border-radius:12px;margin:4px 0 8px 0;min-width:0;max-height:none}.settings-menu{grid-template-columns:1fr;min-width:0}.main{padding:16px}.top-search{order:10;width:100%;max-width:none}.user-chip{display:none}.grid2,.grid3,.grid4{grid-template-columns:1fr}.actions .btn,.actions button{width:100%}table{display:block;overflow-x:auto;white-space:nowrap}}



/* v0.9.39 reparatieplanning */
.grid7{display:grid;grid-template-columns:repeat(7,minmax(160px,1fr));gap:14px}
.day-card{min-height:180px}
.planning-item{border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:10px;margin:8px 0;background:rgba(255,255,255,.7)}
@media(max-width:1100px){.grid7{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.grid7{grid-template-columns:1fr}.actions{align-items:stretch}.actions label,.actions input,.actions select,.actions button{width:100%}}

.capacity-card{border:1px solid #dfe7e2;border-radius:14px;padding:12px;background:#fff}
.capacity-card.is-full{background:#fff3f3;border-color:#efb5b5}
.badge.danger{background:#fee2e2;color:#991b1b}
.badge.success{background:#dcfce7;color:#166534}
.small{font-size:.88rem}

.kanban{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:start}.kanban-col{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:12px;min-height:120px}.kanban-col h3{margin-top:0}.kanban-card{display:block;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:12px;margin:10px 0;text-decoration:none;color:inherit;box-shadow:0 1px 2px rgba(15,23,42,.05)}.kanban-card span{display:block;color:#64748b;font-size:12px;margin-top:3px}.badge.success{background:#dcfce7;color:#166534}.badge.warning{background:#fef3c7;color:#92400e}.badge.info{background:#dbeafe;color:#1e40af}.badge.danger{background:#fee2e2;color:#991b1b}.actions form{display:inline-block;margin:2px}

/* v0.9.42 horizontaal topmenu */
.topnav-shell{min-height:100vh;background:#f4f7f5;color:#10251b}
.app-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid #dfe7e2;box-shadow:0 2px 14px rgba(16,37,27,.06);padding:10px 22px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.brand-row{display:flex;align-items:center;gap:12px;min-width:250px}.top-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#10251b;font-weight:800;font-size:20px}.bolt{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:#e6f5ec;color:#0f7a3d;font-weight:900}.version{font-size:12px;color:#64746b;white-space:nowrap}.top-nav{display:flex;align-items:center;gap:4px;flex:1;min-width:320px;flex-wrap:wrap}.top-nav>a,.nav-dropdown>button{appearance:none;border:0;background:transparent;color:#23352b;text-decoration:none;font:inherit;font-size:14px;font-weight:650;padding:10px 12px;border-radius:12px;cursor:pointer;display:inline-flex;align-items:center;gap:7px}.top-nav>a:hover,.nav-dropdown>button:hover,.top-nav>a.active,.nav-dropdown.active>button{background:#e6f5ec;color:#0f6f3a}.nav-dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;background:#fff;border:1px solid #dfe7e2;border-radius:16px;box-shadow:0 14px 36px rgba(15,23,42,.13);padding:8px;min-width:230px;max-height:72vh;overflow:auto}.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{display:grid;gap:2px}.dropdown-menu a{display:block;text-decoration:none;color:#26372e;padding:9px 11px;border-radius:10px;font-size:14px}.dropdown-menu a:hover,.dropdown-menu a.active{background:#e6f5ec;color:#0f6f3a}.settings-menu{grid-template-columns:repeat(2,minmax(190px,1fr));min-width:460px}.mobile-menu-toggle{display:none;border:1px solid #cfe0d5;background:#fff;border-radius:12px;padding:9px 12px;font-weight:700}.main{padding:24px;max-width:1540px;margin:0 auto}.top{display:flex;align-items:center;gap:14px;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap}.top h1{margin:0}.page-subtitle{margin:4px 0 0;color:#64746b}.top-search{display:flex;gap:8px;min-width:min(520px,100%);flex:1;max-width:620px}.top-search input{flex:1}.user-chip{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#25372d;background:#fff;border:1px solid #dfe7e2;border-radius:999px;padding:8px 12px}.avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#e6f5ec;font-size:12px;font-weight:800}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;min-height:20px;border-radius:999px;background:#0f7a3d;color:white;font-size:12px;padding:0 6px}body.menu-open .top-nav{display:flex}
@media(max-width:900px){.app-header{align-items:flex-start}.mobile-menu-toggle{display:inline-flex;margin-left:auto}.top-nav{display:none;width:100%;min-width:0;flex-direction:column;align-items:stretch}.top-nav>a,.nav-dropdown>button{width:100%;justify-content:space-between}.nav-dropdown{width:100%}.dropdown-menu{position:static;display:grid;box-shadow:none;border-radius:12px;margin:4px 0 8px 0;min-width:0;max-height:none}.settings-menu{grid-template-columns:1fr;min-width:0}.main{padding:16px}.top-search{order:10;width:100%;max-width:none}.user-chip{display:none}}

/* v0.9.43 werkplaats dashboard */
.quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px 0}.dashboard-stats .stat span{display:block;margin-top:6px}.workflow-lanes{display:grid;grid-template-columns:1fr 1fr;gap:14px}.workflow-lanes>div{border:1px solid #e5e7eb;border-radius:14px;padding:12px;background:#fafafa}.workflow-lanes h3{margin-top:0;font-size:15px}@media(max-width:800px){.workflow-lanes{grid-template-columns:1fr}.quick-actions .btn{width:100%;text-align:center}}
.workflow-board{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:14px;align-items:start}.workflow-column{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:12px}.workflow-column h2{font-size:16px;margin:0 0 10px}.mini-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px;margin-bottom:10px;box-shadow:0 1px 2px rgba(0,0,0,.04)}@media(max-width:1100px){.workflow-board{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.workflow-board{grid-template-columns:1fr}}


/* v0.9.44 planning verbeteringen */
.capacity-meter{
  width:100%;
  height:10px;
  background:#e5e7eb;
  border-radius:999px;
  overflow:hidden;
  margin-top:6px;
}
.capacity-meter span{
  display:block;
  height:100%;
  background:#16a34a;
}
.capacity-meter.warning span{background:#f59e0b;}
.capacity-meter.danger span{background:#dc2626;}

.quick-reschedule{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}

.monteur-filter{
  display:flex;
  gap:8px;
  align-items:center;
  margin-bottom:14px;
  flex-wrap:wrap;
}


/* v0.9.50 werkplaats suite */
.suite-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:16px;
}
.suite-card{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:16px;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.suite-card h3{margin-top:0;}
.suite-card .tag{
  display:inline-block;
  padding:3px 8px;
  border-radius:999px;
  background:#eef6ff;
  color:#075985;
  font-size:12px;
  margin-top:6px;
}
.mobile-workshop-bar{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:14px 0;
}
.mobile-workshop-bar a{
  flex:1 1 180px;
  text-align:center;
}
