:root{--navy:#14243b;--blue:#1d65a6;--blue2:#0f4f86;--bg:#f3f6fa;--card:#fff;--line:#e1e7ef;--text:#182538;--muted:#66758a;--green:#19704c;--green-bg:#e6f5ed;--orange:#a65a10;--orange-bg:#fff1dc;--red:#a83a3a;--red-bg:#fdeaea;--radius:15px;--shadow:0 8px 25px rgba(18,36,59,.07)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.45 Inter,Segoe UI,Arial,sans-serif}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:var(--navy);color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none;padding:0 8px 25px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:#fff;color:var(--blue);font-weight:800;font-size:22px}.brand strong,.brand small{display:block}.brand strong{font-size:19px}.brand small{color:#aebed1}.sidebar nav{display:grid;gap:7px}.sidebar nav a{color:#c7d3e3;text-decoration:none;padding:12px 14px;border-radius:10px;font-weight:600}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:rgba(255,255,255,.1)}.sidebar-foot{margin-top:auto;padding:16px 10px;color:#d5dfeb}.sidebar-foot small{color:#8498b2}main{margin-left:245px;min-height:100vh}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;color:var(--muted)}.menu{display:none}.user{font-weight:600;color:var(--text)}.content{padding:34px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:25px}.page-head h1{font-size:32px;line-height:1.1;margin:3px 0 8px}.page-head p{margin:0;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px!important;color:var(--blue)!important;font-weight:800}.button-row{display:flex;gap:10px}.button{appearance:none;border:1px solid #ccd6e2;background:#fff;color:var(--text);padding:10px 16px;border-radius:9px;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.button:hover{border-color:var(--blue);color:var(--blue)}.button.primary{background:var(--blue);border-color:var(--blue);color:#fff}.button.primary:hover{background:var(--blue2)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.stats article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:21px;box-shadow:var(--shadow)}.stats span{display:block;color:var(--muted);font-weight:600}.stats strong{display:block;font-size:32px;margin-top:7px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:23px;margin-bottom:22px}.grid{display:grid;gap:22px}.grid.two{grid-template-columns:1.5fr 1fr}.grid.detail{grid-template-columns:1.15fr 1fr}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.card-head h2{font-size:19px;margin:0}.card-head p{margin:3px 0 0;color:var(--muted)}.card-head a{color:var(--blue);text-decoration:none;font-weight:700}.table-card{padding:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}th{text-align:left;text-transform:uppercase;letter-spacing:.05em;font-size:11px;color:#78869a;background:#f8fafc}th,td{padding:14px 16px;border-bottom:1px solid var(--line);white-space:nowrap}tr:last-child td{border-bottom:0}td a{color:var(--text);text-decoration:none}td small,td strong{display:block}td small,.doc-row small,.result small,.timeline small{color:var(--muted)}.actions{display:flex;gap:13px}.actions a{color:var(--blue);font-weight:700}.badge{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.badge.gekeurd{color:var(--green);background:var(--green-bg)}.badge.verloopt-binnenkort{color:var(--orange);background:var(--orange-bg)}.badge.verlopen{color:var(--red);background:var(--red-bg)}.badge.controleren,.badge.neutral{color:#516175;background:#edf1f5}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:14px;align-items:end}.filters label,.form label{font-weight:700;color:#46556a}.filters input,.filters select,.form input,.form textarea{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #cfd8e4;border-radius:8px;background:#fff;color:var(--text);font:inherit}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.form .wide{grid-column:1/-1}.check{display:flex;gap:9px;align-items:center}.check input{width:auto;margin:0}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}dl{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;margin:0}dl div{border-bottom:1px solid var(--line);padding-bottom:12px}dt{color:var(--muted);font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}dd{margin:5px 0 0;font-weight:650}.doc-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--text)}.doc-row:last-child{border:0}.file-icon{display:grid;place-items:center;width:41px;height:41px;border-radius:9px;background:var(--red-bg);color:var(--red);font-size:10px;font-weight:900}.doc-row strong,.doc-row small{display:block}.empty{padding:25px;text-align:center;color:var(--muted)}.timeline>div{display:flex;gap:12px;padding:8px 0}.timeline>div>span{width:9px;height:9px;margin-top:7px;background:var(--blue);border-radius:50%}.timeline p,.timeline strong,.timeline small{display:block;margin:0}.link-danger{border:0;background:none;color:var(--red);padding:5px;cursor:pointer}.drop{display:grid;place-items:center;text-align:center;border:2px dashed #b9c7d8;border-radius:12px;padding:45px;margin-bottom:17px;background:#f8fbfe}.drop span{color:var(--muted);font-weight:400;margin:6px 0 16px}.drop input{max-width:380px}.result{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.result strong,.result small{display:block}.result a{color:var(--blue);font-weight:700}.result:last-child{border-bottom:0}@media(max-width:1000px){.stats{grid-template-columns:repeat(2,1fr)}.grid.two,.grid.detail{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.sidebar{transform:translateX(-100%);transition:.2s}.nav-open .sidebar{transform:none}main{margin-left:0}.menu{display:block;border:0;background:none;font-size:22px}.topbar{padding:0 20px}.content{padding:24px}}@media(max-width:650px){.content{padding:18px}.page-head{align-items:flex-start;flex-direction:column}.stats,.filters,.form-grid,dl{grid-template-columns:1fr}.form .wide{grid-column:auto}.button-row{width:100%;flex-wrap:wrap}.card{padding:18px}.topbar>span:first-of-type{display:none}}
.procedure{background:#f5f8fc;border:1px solid #dce7f1;border-left:4px solid var(--blue);border-radius:0 10px 10px 0;padding:17px 20px;margin-bottom:22px}.procedure ul{margin:8px 0 0;padding-left:20px}.checklist-card{overflow:hidden}.checklist-card h3{color:var(--navy);font-size:17px}.check-row{display:grid;grid-template-columns:minmax(330px,1fr) 570px;gap:22px;align-items:center;padding:16px 14px;border-bottom:1px solid var(--line);margin:0 -14px}.check-row:hover{background:#f8fbfe}.check-row>span{line-height:1.45}.rating-options{display:grid;grid-template-columns:repeat(6,minmax(70px,1fr));gap:7px}.rating-options label{cursor:pointer;min-width:0}.rating-options input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important}.rating-options span{display:flex;align-items:center;justify-content:center;min-height:36px;border:1px solid #ccd6e2;border-radius:8px;padding:6px;font-size:11px;background:#fff;white-space:nowrap}.rating-options input:checked+span{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 3px 9px rgba(29,101,166,.2)}.rating-options label:nth-child(4) input:checked+span{background:var(--green);border-color:var(--green)}.rating-options label:nth-child(5) input:checked+span{background:var(--red);border-color:var(--red)}@media(max-width:1150px){.check-row{grid-template-columns:1fr}.rating-options{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.rating-options{grid-template-columns:repeat(2,1fr)}}
.inspection-intro{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px}.inspection-meta{display:grid;gap:12px}.inspection-meta select{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #cfd8e4;border-radius:8px;background:#fff;font:inherit}.date-shortcuts{display:grid;grid-template-columns:repeat(3,1fr)}.date-shortcuts button,.group-rating button{border:1px solid #a9c3dc;background:#fff;color:var(--blue);padding:8px 5px;cursor:pointer}.date-shortcuts button:first-child{border-radius:7px 0 0 7px}.date-shortcuts button:last-child{border-radius:0 7px 7px 0}.check-group-head{display:grid;grid-template-columns:minmax(330px,1fr) 570px;gap:22px;align-items:center;margin:26px -14px 0;padding:0 14px 10px;border-bottom:1px solid var(--line)}.check-group-head h3{margin:0}.group-rating{display:grid;grid-template-columns:repeat(6,minmax(70px,1fr));gap:7px}.group-rating button{width:38px;height:38px;padding:0;border-radius:50%;justify-self:center}.group-rating button:hover,.group-rating button.active{background:var(--blue);color:#fff}@media(max-width:1150px){.inspection-intro{grid-template-columns:1fr}.check-group-head{grid-template-columns:1fr}.group-rating{width:100%;grid-template-columns:repeat(6,1fr)}}@media(max-width:650px){.group-rating{grid-template-columns:repeat(3,1fr)}}
.lifecycle-summary{margin-top:18px;padding:18px;border:1px solid #dce5ef;border-radius:12px;background:#fff}.lifecycle-summary h3{margin:0 0 4px}.lifecycle-summary>p{margin:0 0 15px;color:var(--muted)}

/* Gecentreerde omgevingskeuze met transparant MBS-logo. */
.workspace-choice{display:grid;place-items:center}
.workspace-choice .workspace-shell{width:min(1160px,calc(100% - 40px));min-height:0;margin:auto;padding:30px 0}
.workspace-choice .workspace-header{grid-template-columns:98px 1fr auto}
.workspace-choice .workspace-logo{width:98px;height:98px;border-radius:0;background:transparent url('/static/img/mbs-brandwachten-logo-transparent.png') center/contain no-repeat;box-shadow:none}
@media(max-width:800px){.workspace-choice .workspace-header{grid-template-columns:72px 1fr}.workspace-choice .workspace-logo{width:72px;height:72px}}
@media(max-width:500px){.workspace-choice .workspace-shell{width:min(100% - 24px,1160px);padding-top:25px}}

.topbar-user{display:flex;align-items:center;gap:13px}.topbar-user form{margin:0}.topbar-user button{border:0;background:none;color:var(--blue);font:inherit;font-weight:700;cursor:pointer}
.login-page{display:grid;place-items:center;min-height:100vh;padding:24px;background:radial-gradient(circle at 12% 15%,#dcecf8,transparent 34%),linear-gradient(145deg,#f5f8fb,#e8eff6)}.login-page main{margin:0;min-height:0}.login-shell{display:grid;grid-template-columns:1fr 420px;width:min(980px,100%);overflow:hidden;border:1px solid rgba(255,255,255,.8);border-radius:26px;background:#fff;box-shadow:0 25px 70px rgba(18,36,59,.17)}.login-brand{padding:55px;background:linear-gradient(145deg,#142b46,#154f76);color:#fff}.login-logo{display:block;width:115px;height:115px;margin-bottom:34px;background:url('/static/img/mbs-brandwachten-logo-transparent.png') center/contain no-repeat}.login-brand .eyebrow{color:#8bd4ec!important}.login-brand h1{margin:7px 0 14px;font-size:38px}.login-brand>p:last-child{max-width:440px;color:#cad9e7;font-size:16px}.login-card{padding:55px 45px}.login-card h2{margin:4px 0 6px;font-size:31px}.login-card>div>p:last-child,.login-card>small{color:var(--muted)}.login-card form{display:grid;gap:17px;margin:30px 0 20px}.login-card label{font-weight:700;color:#46556a}.login-card input{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #cbd6e2;border-radius:9px;font:inherit}.login-card .button{width:100%;padding:13px}.login-error{margin-top:18px;padding:11px 13px;border-radius:8px;background:var(--red-bg);color:var(--red);font-weight:700}@media(max-width:750px){.login-shell{grid-template-columns:1fr}.login-brand{padding:30px}.login-logo{width:75px;height:75px;margin-bottom:18px}.login-brand h1{font-size:30px}.login-card{padding:32px 28px}}
.nav-section-title{display:block;margin:2px 14px 5px;color:#fff;font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.nav-switch-label{display:block;margin:22px 14px 3px;color:#7890aa;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.sidebar nav .nav-switch{display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.04)}.rescue-area .sidebar{background:linear-gradient(180deg,#12283f,#112237)}.rescue-area .sidebar nav a.active{background:#176690}.work-area .sidebar{background:linear-gradient(180deg,#172740,#132137)}
.workspace-choice{min-height:100vh;overflow:auto;background:radial-gradient(circle at 15% 10%,#e7f2fa,transparent 34%),linear-gradient(145deg,#f5f8fb,#eaf0f6)}.workspace-choice main{margin:0}.workspace-shell{width:min(1160px,calc(100% - 40px));margin:0 auto;padding:52px 0 35px}.workspace-header{display:grid;grid-template-columns:88px 1fr auto;gap:24px;align-items:center;margin-bottom:35px}.workspace-logo{display:block;width:88px;height:88px;border-radius:20px;background:#fff url('/static/img/mbs-brandwachten-logo.jpg') center/contain no-repeat;box-shadow:var(--shadow)}.workspace-header h1{margin:2px 0 8px;font-size:40px;line-height:1.05}.workspace-header p{margin:0;color:var(--muted);font-size:16px}.workspace-header .eyebrow{font-size:12px}.workspace-user{align-self:start;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font-weight:700}.workspace-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.workspace-card{position:relative;display:grid;grid-template-columns:72px 1fr;gap:22px;min-height:385px;padding:32px;border:1px solid var(--line);border-radius:24px;background:#fff;color:var(--text);text-decoration:none;box-shadow:0 18px 45px rgba(18,36,59,.1);overflow:hidden;transition:.18s ease}.workspace-card:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--blue)}.workspace-card.rescue:before{background:#ef7f35}.workspace-card:hover{transform:translateY(-4px);box-shadow:0 22px 55px rgba(18,36,59,.16)}.workspace-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:18px;background:#e9f3fb;color:var(--blue);font-size:29px;font-weight:900}.workspace-card.rescue .workspace-icon{background:#fff0e6;color:#d8661d}.workspace-copy{display:flex;flex-direction:column}.workspace-copy>small{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:900}.workspace-copy h2{margin:7px 0 10px;font-size:28px}.workspace-copy p{margin:0;color:var(--muted);font-size:16px}.workspace-copy dl{grid-template-columns:1fr 1fr;margin:28px 0}.workspace-copy dl div{padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.workspace-copy dd{font-size:27px}.workspace-copy>strong{display:flex;align-items:center;justify-content:space-between;margin-top:auto;color:var(--blue);font-size:16px}.workspace-card.rescue .workspace-copy>strong{color:#ca5d19}.workspace-shell footer{text-align:center;margin-top:24px;color:var(--muted)}@media(max-width:800px){.workspace-header{grid-template-columns:64px 1fr}.workspace-logo{width:64px;height:64px}.workspace-user{display:none}.workspace-header h1{font-size:32px}.workspace-grid{grid-template-columns:1fr}.workspace-card{min-height:330px}}@media(max-width:500px){.workspace-shell{width:min(100% - 24px,1160px);padding-top:25px}.workspace-header{align-items:start;gap:14px}.workspace-card{grid-template-columns:1fr;padding:24px}.workspace-icon{width:56px;height:56px}.workspace-copy h2{font-size:24px}}
.login-activate{display:block;margin:-4px 0 18px;color:var(--blue);font-weight:800;text-align:center;text-decoration:none}.login-activate:hover{text-decoration:underline}
.workspace-user{display:flex;align-items:center;gap:12px}.workspace-user form{margin:0}.workspace-user button{border:0;background:var(--blue);color:#fff;padding:8px 12px;border-radius:999px;font:inherit;font-weight:800;cursor:pointer}.workspace-user button:hover{background:var(--blue2)}
