/* ================================================================
   Prolift Inspectieformulier — v3.9.14
   Oranje: #E87722  |  Donkerblauw: #0B3C8C  |  Font: DM Sans
   Formulier-stijl gelijkgetrokken met frontend dashboard
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800;0,9..40,900;1,9..40,400;1,9..40,600&display=swap');

:root {
    --lc-oranje:    #E87722;
    --lc-oranje-dk: #C9641A;
    --lc-oranje-lt: rgba(232,119,34,.08);
    --lc-blauw:     #0B3C8C;
    --lc-blauw2:    #1769c2;
    --lc-antr:      #071d44;
    --lc-antr2:     #0B3C8C;
    --lc-grijs:     #f4f7fb;
    --lc-wit:       #FFFFFF;
    --lc-rand:      #e4e9f2;
    --lc-rand-focus:#E87722;
    --lc-tekst:     #102033;
    --lc-muted:     #64748b;
    --lc-fout:      #EF4444;
    --lc-ok:        #22C55E;
    --lc-r:         16px;
    --lc-shadow:    0 24px 70px rgba(15,23,42,.10);
    --lc-transition: .18s cubic-bezier(.4,0,.2,1);
}

/* ── Reset & base ─────────────────────────────── */
.lc-wrap, .lc-wrap * { box-sizing: border-box; }
.lc-wrap {
    font-family: 'DM Sans', -apple-system, sans-serif;
    width: 100%;
    max-width: 900px;
    margin: 0 auto 56px;
    background: var(--lc-grijs);
    border-radius: 24px;
    box-shadow: var(--lc-shadow);
    overflow: hidden;
    position: relative;
}

/* ── Header ───────────────────────────────────── */
.lc-head {
    background: linear-gradient(180deg, var(--lc-antr), var(--lc-antr2));
    padding: 20px 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.lc-logo {
    display: flex;
    align-items: baseline;
    gap: 0;
    line-height: 1;
    text-decoration: none;
}
.lc-lift {
    font-family: 'DM Sans', sans-serif;
    font-size: 26px;
    font-weight: 900;
    font-style: normal;
    color: #fff;
    letter-spacing: -0.5px;
}
.lc-centraal {
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: rgba(255,255,255,.5);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-left: 6px;
    align-self: center;
}
.lc-logo-reg {
    display: none;
}
.lc-head-title {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,.45);
}

/* ── Progress ─────────────────────────────────── */
.lc-progress-bar {
    height: 4px;
    background: rgba(255,255,255,.1);
    background-color: var(--lc-antr2);
}
.lc-progress-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--lc-oranje), #F5A623);
    transition: width .4s cubic-bezier(.4,0,.2,1);
}
.lc-progress-label {
    padding: 10px 32px;
    font-size: 12px;
    font-weight: 700;
    color: var(--lc-muted);
    background: var(--lc-grijs);
    border-bottom: 1px solid var(--lc-rand);
}

/* ── Stap-indicator pills ─────────────────────── */
.lc-steps-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 10px 32px;
    background: var(--lc-grijs);
    border-bottom: 1px solid var(--lc-rand);
}
.lc-step-dot {
    width: 32px; height: 32px;
    border-radius: 8px;
    background: var(--lc-rand);
    border: none; cursor: pointer; padding: 0;
    transition: background var(--lc-transition), transform var(--lc-transition);
    display: flex; align-items: center; justify-content: center;
    font-size: 15px; line-height: 1;
    position: relative;
}
.lc-step-dot:hover  { background: #b0bec5; transform: scale(1.1); }
.lc-step-dot.gedaan { background: rgba(11,60,140,.18); }
.lc-step-dot.active {
    background: var(--lc-blauw);
    transform: scale(1.15);
    box-shadow: 0 2px 6px rgba(11,60,140,.35);
}
.lc-step-dot.active .lc-step-dot-icon { filter: brightness(0) invert(1); }
.lc-step-dot-icon { font-size: 14px; pointer-events: none; }
.lc-step-dot.lc-dot--verborgen {
    width: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    transition: width .25s, opacity .25s, margin .25s;
}

/* ── Stap wrapper ─────────────────────────────── */
.lc-stap { display: none; padding: 28px 28px 36px; }
.lc-stap--actief {
    display: block;
    animation: lc-fade .22s ease;
}
@keyframes lc-fade {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Stap header — nu als echte card header ───── */
.lc-stap-header {
    display: flex;
    align-items: center;
    gap: 14px;
    background: linear-gradient(135deg, var(--lc-blauw), var(--lc-blauw2));
    border-radius: 18px;
    padding: 20px 24px;
    margin-bottom: 20px;
    box-shadow: 0 12px 32px rgba(11,60,140,.18);
    position: relative;
    overflow: hidden;
}
.lc-stap-header::after {
    content: '';
    position: absolute;
    right: -20px; top: -20px;
    width: 120px; height: 120px;
    border-radius: 50%;
    background: rgba(255,255,255,.05);
}
.lc-stap-icoon {
    font-size: 28px;
    width: 52px; height: 52px;
    background: rgba(255,255,255,.12);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    backdrop-filter: blur(4px);
}
.lc-stap-titel {
    font-size: 22px;
    font-weight: 800;
    color: #fff;
    margin: 0;
    letter-spacing: -0.5px;
}
.lc-stap-header-lijn { display: none; }

/* ── Velden grid — in witte card ──────────────── */
.lc-velden {
    background: #fff;
    border-radius: 18px 18px 0 0;
    border: 1px solid var(--lc-rand);
    border-bottom: none;
    box-shadow: 0 4px 16px rgba(15,23,42,.05);
    padding: 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 24px;
}

.lc-veld { display: flex; flex-direction: column; gap: 6px; }
.lc-veld--textarea,
.lc-veld--file,
.lc-veld--radio { grid-column: 1 / -1; }

.lc-veld label,
.lc-veld legend {
    font-size: 12px;
    font-weight: 700;
    color: var(--lc-muted);
    text-transform: uppercase;
    letter-spacing: .6px;
    padding: 0; border: none;
}
.lc-req { color: var(--lc-oranje); margin-left: 2px; }

/* ── Inputs ───────────────────────────────────── */
input[type="text"],
input[type="number"],
input[type="date"],
select,
textarea {
    width: 100%;
    padding: 11px 14px;
    border: 1.5px solid var(--lc-rand);
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    font-family: 'DM Sans', sans-serif;
    color: var(--lc-tekst);
    background: var(--lc-grijs);
    transition: border-color var(--lc-transition), box-shadow var(--lc-transition), background var(--lc-transition);
    box-sizing: border-box;
    appearance: none;
    -webkit-appearance: none;
}
select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-color: var(--lc-grijs);
    padding-right: 36px;
}
input[type="text"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
select:focus,
textarea:focus {
    outline: none;
    border-color: var(--lc-blauw);
    box-shadow: 0 0 0 3px rgba(11,60,140,.10);
    background: #fff;
}
textarea { resize: vertical; min-height: 96px; line-height: 1.6; }
input::placeholder { color: #A1A1AA; }

/* ── Radio / JA-NEE — pill toggles ───────────── */
.lc-radio-groep { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 2px; }
.lc-radio-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 20px;
    border: 1.5px solid var(--lc-rand);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    font-family: 'DM Sans', sans-serif;
    cursor: pointer;
    transition: all var(--lc-transition);
    background: var(--lc-grijs);
    user-select: none;
    color: var(--lc-muted);
}
.lc-radio-label input[type="radio"] { display: none; }
.lc-radio-label:hover {
    border-color: var(--lc-blauw);
    background: rgba(11,60,140,.05);
    color: var(--lc-blauw);
}
/* JA = groen tint, NEE = rood tint */
.lc-radio-label:has(input[value="JA"]:checked) {
    border-color: var(--lc-ok);
    background: rgba(34,197,94,.08);
    color: #15803d;
    font-weight: 800;
}
.lc-radio-label:has(input[value="NEE"]:checked) {
    border-color: var(--lc-fout);
    background: rgba(239,68,68,.08);
    color: #dc2626;
    font-weight: 800;
}
/* Overige radio opties (niet JA/NEE) */
.lc-radio-label:has(input:checked):not(:has(input[value="JA"]):not(:has(input[value="NEE"]))) {
    border-color: var(--lc-blauw);
    background: rgba(11,60,140,.08);
    color: var(--lc-blauw);
    font-weight: 800;
}
.lc-radio-label:has(input:not([value="JA"]):not([value="NEE"]):checked) {
    border-color: var(--lc-blauw);
    background: rgba(11,60,140,.08);
    color: var(--lc-blauw);
    font-weight: 800;
}

/* ── Upload zone — drag & drop stijl ─────────── */
.lc-upload { display: flex; flex-direction: column; gap: 10px; }
.lc-upload input[type="file"] { display: none; }
.lc-upload-label {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 24px 20px;
    border: 2px dashed var(--lc-rand);
    border-radius: 14px;
    font-size: 13px;
    font-weight: 600;
    font-family: 'DM Sans', sans-serif;
    color: var(--lc-muted);
    cursor: pointer;
    transition: all var(--lc-transition);
    background: var(--lc-grijs);
    text-align: center;
    width: 100%;
}
.lc-upload-label span { display: none; }
.lc-upload-label::before {
    content: '📷';
    font-size: 26px;
    display: block;
    margin-bottom: 2px;
}
.lc-upload-label::after {
    content: 'Klik of sleep foto hierheen';
    font-size: 13px;
    font-weight: 600;
    color: var(--lc-muted);
}
.lc-upload-label:hover {
    border-color: var(--lc-blauw);
    color: var(--lc-blauw);
    background: rgba(11,60,140,.04);
}
.lc-upload-label:hover::after { color: var(--lc-blauw); }
.lc-upload-preview { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.lc-upload-preview img {
    width: 80px; height: 80px;
    object-fit: cover;
    border-radius: 10px;
    border: 2px solid var(--lc-rand);
    transition: border-color var(--lc-transition);
}
.lc-upload-preview img:hover { border-color: var(--lc-oranje); }
.lc-upload-preview span {
    font-size: 11px; color: var(--lc-muted);
    padding: 5px 10px;
    background: var(--lc-grijs);
    border-radius: 6px;
    align-self: center;
    max-width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Navigatieknoppen — in de card ────────────── */
.lc-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0;
    padding: 20px 24px;
    border-top: 1px solid var(--lc-rand);
    background: #fff;
    border-radius: 0 0 18px 18px;
    margin-top: -1px;
}
.lc-btn {
    padding: 12px 28px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 800;
    font-family: 'DM Sans', sans-serif;
    cursor: pointer;
    border: 1.5px solid transparent;
    transition: all var(--lc-transition);
    letter-spacing: .2px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 44px;
}
.lc-btn--sec {
    background: #fff;
    border-color: var(--lc-rand);
    color: var(--lc-muted);
}
.lc-btn--sec:hover {
    border-color: #94a3b8;
    color: var(--lc-tekst);
    background: var(--lc-grijs);
}
.lc-btn--pri {
    background: linear-gradient(135deg, var(--lc-blauw), var(--lc-blauw2));
    color: #fff;
    border-color: transparent;
    box-shadow: 0 8px 24px rgba(11,60,140,.25);
}
.lc-btn--pri:hover {
    box-shadow: 0 12px 32px rgba(11,60,140,.35);
    transform: translateY(-1px);
}
.lc-btn--submit {
    background: linear-gradient(135deg, var(--lc-oranje), #F5A623);
    color: #fff;
    border-color: transparent;
    box-shadow: 0 8px 24px rgba(232,119,34,.3);
    padding: 14px 40px;
    font-size: 15px;
}
.lc-btn--submit:hover {
    box-shadow: 0 12px 32px rgba(232,119,34,.4);
    transform: translateY(-1px);
}
.lc-btn:active { transform: scale(.98) !important; }

/* ── Bevestiging ──────────────────────────────── */
.lc-bevestiging { padding: 64px 40px; text-align: center; }
.lc-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 80px; height: 80px;
    background: linear-gradient(135deg, var(--lc-ok), #16a34a);
    color: #fff;
    border-radius: 50%;
    font-size: 36px;
    margin-bottom: 24px;
    box-shadow: 0 8px 24px rgba(34,197,94,.3);
}
.lc-bevestiging h2 {
    font-size: 26px; font-weight: 800;
    margin: 0 0 10px;
    color: var(--lc-tekst);
    letter-spacing: -0.4px;
}
.lc-bevestiging p { color: var(--lc-muted); margin-bottom: 28px; font-size: 15px; }

/* ── Footer ───────────────────────────────────── */
.lc-foot {
    background: linear-gradient(180deg, var(--lc-antr), var(--lc-antr2));
    padding: 14px 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.lc-foot span { color: rgba(255,255,255,.3); font-size: 11px; letter-spacing: .5px; }
.lc-foot-dot { color: var(--lc-oranje); font-size: 8px; }

/* ── Validatie ────────────────────────────────── */
.lc-veld.lc-fout input,
.lc-veld.lc-fout select,
.lc-veld.lc-fout textarea {
    border-color: var(--lc-fout);
    box-shadow: 0 0 0 3px rgba(239,68,68,.1);
}
.lc-fout-tekst {
    font-size: 12px;
    color: var(--lc-fout);
    margin-top: 3px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
}
.lc-fout-tekst::before { content: '⚠'; font-size: 11px; }

/* ── Autofill hints ───────────────────────────── */
.lc-autofill-hint, .lc-autofill-small {
    margin-top: 6px;
    font-size: 12px;
    color: var(--lc-blauw);
    font-weight: 600;
    background: rgba(11,60,140,.06);
    border: 1px solid rgba(11,60,140,.12);
    border-radius: 8px;
    padding: 6px 10px;
}

/* ── MJOB preview block ───────────────────────── */
.lc-mjob-preview, .lc-generic-mjob-preview {
    margin-top: 10px;
    padding: 14px 16px;
    border-radius: 12px;
    background: rgba(11,60,140,.05);
    border: 1px solid rgba(11,60,140,.12);
    color: var(--lc-tekst);
    font-size: 13px;
    line-height: 1.5;
}
.lc-mjob-preview strong, .lc-generic-mjob-preview strong {
    display: block;
    margin-bottom: 4px;
    color: var(--lc-blauw);
    font-weight: 800;
}



/* ── Responsive ───────────────────────────────── */
@media (max-width: 640px) {
    .lc-stap          { padding: 16px; }
    .lc-head          { padding: 16px 20px; }
    .lc-steps-nav     { padding: 8px 12px; gap: 3px; }
    .lc-step-dot      { width: 26px; height: 26px; border-radius: 6px; font-size: 12px; }
    .lc-step-dot-icon { font-size: 12px; }
    .lc-progress-label{ padding: 6px 16px; font-size: 12px; }
    .lc-velden        { grid-template-columns: 1fr; padding: 16px; }
    .lc-veld--textarea,
    .lc-veld--file,
    .lc-veld--radio   { grid-column: 1; }
    .lc-lift { font-size: 20px; }
    .lc-centraal { font-size: 11px; }
    .lc-stap-titel    { font-size: 18px; }
    .lc-stap-header   { padding: 16px; }
    .lc-nav-knoppen   { padding: 12px 16px; gap: 8px; }
    .lc-volgende, .lc-vorige { padding: 10px 16px; font-size: 14px; }
    /* Offerte modal op mobile */
    .lc-offerte-modal-overlay { padding: 12px; }
    .lc-offerte-modal { max-height: 92vh; }
    .lc-ov-contact-optie { font-size: 13px; }
    .lc-ov-contact-email { display: none; }
    /* Start cards op mobile */
    .lc-start-grid { grid-template-columns: 1fr; }
}
/* Prolift frontend dashboard v3.4.5 */
.pfd-app,.pfd-app *{box-sizing:border-box}.pfd-app{--pfd-blue:#0B3C8C;--pfd-blue2:#1769c2;--pfd-bg:#f4f7fb;--pfd-line:#e4e9f2;--pfd-text:#102033;--pfd-muted:#64748b;display:grid;grid-template-columns:250px minmax(0,1fr);min-height:760px;background:var(--pfd-bg);border-radius:24px;overflow:hidden;font-family:'DM Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 24px 70px rgba(15,23,42,.12);margin:20px auto;max-width:1280px;color:var(--pfd-text)}.pfd-sidebar{background:linear-gradient(180deg,#071d44,#0B3C8C);color:#fff;padding:28px 20px;display:flex;flex-direction:column;gap:26px}.pfd-brand{font-size:28px;font-weight:500;letter-spacing:-.7px}.pfd-brand span{font-weight:900;color:#52a9ff;font-style:italic}.pfd-sidebar nav{display:grid;gap:8px}.pfd-sidebar nav a{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.78);text-decoration:none;padding:12px 14px;border-radius:14px;font-weight:800}.pfd-sidebar nav a.active,.pfd-sidebar nav a:hover{background:rgba(255,255,255,.12);color:#fff}.pfd-sidebar nav b{width:24px;height:24px;border-radius:10px;background:rgba(255,255,255,.12);display:inline-flex;align-items:center;justify-content:center}.pfd-side-note{margin-top:auto;color:rgba(255,255,255,.72);font-weight:700;font-size:13px;line-height:1.45}.pfd-side-note small{color:rgba(255,255,255,.45)}.pfd-main{padding:32px;min-width:0}.pfd-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:24px}.pfd-topbar h1{margin:0;color:#0f172a;font-size:30px;letter-spacing:-.8px}.pfd-topbar p{margin:6px 0 0;color:var(--pfd-muted);font-size:14px}.pfd-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.pfd-btn,.pfd-dossier-actions a,.pfd-search button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:999px;background:linear-gradient(135deg,var(--pfd-blue),var(--pfd-blue2));color:#fff!important;text-decoration:none!important;border:0;padding:10px 18px;font-weight:900;box-shadow:0 12px 28px rgba(11,60,140,.22);cursor:pointer}.pfd-btn.secondary{background:#fff;color:var(--pfd-blue)!important;border:1px solid var(--pfd-line);box-shadow:none}.pfd-hero,.pfd-dossier-hero{background:linear-gradient(135deg,#0B3C8C,#1871d6);border-radius:26px;color:#fff;padding:28px;margin-bottom:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:22px;box-shadow:0 22px 60px rgba(11,60,140,.22)}.pfd-hero h2,.pfd-dossier-hero h2{margin:8px 0 8px;font-size:32px;letter-spacing:-1px}.pfd-hero p,.pfd-dossier-hero p{margin:0;color:rgba(255,255,255,.78);max-width:680px}.pfd-eyebrow{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.14);font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.9px}.pfd-grid{display:grid;gap:16px}.pfd-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.pfd-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.pfd-tile,.pfd-kpis>div,.pfd-kpis>a{background:#fff;border:1px solid var(--pfd-line);border-radius:22px;padding:22px;text-decoration:none!important;color:var(--pfd-text);box-shadow:0 10px 30px rgba(15,23,42,.06)}.pfd-tile strong,.pfd-kpis b,.pfd-kpis>a b{display:block;font-size:32px;color:var(--pfd-blue);line-height:1}.pfd-tile span,.pfd-kpis span,.pfd-kpis>a span{display:block;margin-top:8px;font-weight:900}.pfd-tile small{display:block;margin-top:7px;color:var(--pfd-muted)}.pfd-search{display:flex;gap:12px;background:#fff;border:1px solid var(--pfd-line);padding:12px;border-radius:22px;margin-bottom:20px;box-shadow:0 10px 30px rgba(15,23,42,.05)}.pfd-search input{border:0!important;box-shadow:none!important;flex:1;font-size:15px;padding:11px 12px!important}.pfd-client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.pfd-client-card{background:#fff;border:1px solid var(--pfd-line);border-radius:24px;padding:20px;text-decoration:none!important;color:var(--pfd-text)!important;box-shadow:0 10px 34px rgba(15,23,42,.07);display:grid;gap:16px;transition:.18s ease}.pfd-client-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(15,23,42,.1)}.pfd-card-head{display:flex;align-items:center;gap:12px}.pfd-avatar{width:50px;height:50px;border-radius:18px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:var(--pfd-blue);font-weight:1000;display:inline-flex;align-items:center;justify-content:center;font-size:22px;flex:0 0 auto}.pfd-avatar.small{width:34px;height:34px;border-radius:12px;font-size:14px}.pfd-card-head h3{margin:0;font-size:19px;color:#0f172a}.pfd-card-head span,.pfd-relation-row small{display:block;color:var(--pfd-muted);font-size:13px;margin-top:2px}.pfd-card-contact{color:#334155;font-weight:700;line-height:1.45}.pfd-card-contact small{color:var(--pfd-muted);font-weight:500}.pfd-mini-stats{display:flex;gap:8px;flex-wrap:wrap}.pfd-mini-stats span{background:#f1f6ff;border:1px solid #dbeafe;border-radius:999px;padding:7px 10px;color:var(--pfd-blue);font-weight:800;font-size:12px}.pfd-open{border-top:1px solid var(--pfd-line);padding-top:14px;color:var(--pfd-blue);font-weight:1000}.pfd-empty,.pfd-login-box{grid-column:1/-1;background:#fff;border:1px solid var(--pfd-line);border-radius:22px;padding:22px;color:var(--pfd-muted)}.pfd-dossier-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.pfd-dossier-actions a{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);box-shadow:none}.pfd-kpis{margin-bottom:18px}.pfd-two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.pfd-panel{background:#fff;border:1px solid var(--pfd-line);border-radius:24px;padding:22px;box-shadow:0 10px 34px rgba(15,23,42,.06);margin-bottom:18px}.pfd-panel h3{margin:0 0 16px;color:#0f172a;font-size:18px}.pfd-info-list{display:grid;grid-template-columns:130px 1fr;gap:10px 16px;margin:0}.pfd-info-list dt{color:var(--pfd-muted);font-weight:800}.pfd-info-list dd{margin:0;font-weight:800;color:#0f172a}.pfd-relation-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--pfd-line)}.pfd-relation-row:last-child{border-bottom:0}.pfd-muted{color:var(--pfd-muted);margin:0}.pfd-list-cards{display:grid;gap:10px}.pfd-row-card{display:flex;justify-content:space-between;gap:16px;align-items:center;background:#f8fafc;border:1px solid var(--pfd-line);border-radius:18px;padding:15px 16px}.pfd-row-card strong{display:block;color:#0f172a}.pfd-row-card small{display:block;color:var(--pfd-muted);margin-top:3px}.pfd-row-card>span{background:#fff;border:1px solid var(--pfd-line);border-radius:999px;padding:7px 10px;color:var(--pfd-blue);font-weight:900;white-space:nowrap}@media(max-width:1050px){.pfd-app{grid-template-columns:1fr}.pfd-sidebar{border-radius:0;gap:16px}.pfd-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.pfd-side-note{display:none}.pfd-grid-3,.pfd-grid-4,.pfd-client-grid,.pfd-two-col{grid-template-columns:1fr}.pfd-dossier-hero,.pfd-topbar{display:block}.pfd-actions,.pfd-dossier-actions{justify-content:flex-start;margin-top:14px}.pfd-main{padding:18px}.pfd-search{display:block}.pfd-search button{width:100%;margin-top:10px}}

.lc-mjob-preview, .lc-generic-mjob-preview{margin-top:10px;padding:12px 14px;border-radius:14px;background:#eef6ff;border:1px solid #bfdbfe;color:#0f172a;font-size:13px;line-height:1.45}.lc-mjob-preview strong, .lc-generic-mjob-preview strong{display:block;margin-bottom:4px;color:#0B3C8C}.lc-autofill-hint{margin-top:8px;font-size:12px;color:#64748b}



/* Prolift frontend editable dossier v3.7.1 */
.pfd-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.pfd-panel-head h3{margin:0}.pfd-small-link{color:var(--pfd-blue)!important;text-decoration:none!important;font-weight:900;background:#f1f6ff;border:1px solid #dbeafe;border-radius:999px;padding:8px 12px}.pfd-edit-box{margin-top:16px;background:#f8fafc;border:1px solid var(--pfd-line);border-radius:18px;padding:12px}.pfd-edit-box>summary,.pfd-row-edit>summary,.pfd-relation-edit>summary{cursor:pointer;font-weight:900;color:var(--pfd-blue);list-style:none}.pfd-edit-box>summary::-webkit-details-marker,.pfd-row-edit>summary::-webkit-details-marker,.pfd-relation-edit>summary::-webkit-details-marker{display:none}.pfd-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.pfd-edit-form.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.pfd-edit-form label{display:grid;gap:6px;color:var(--pfd-muted);font-weight:800;font-size:12px}.pfd-edit-form input,.pfd-edit-form select,.pfd-edit-form textarea{width:100%;border:1px solid var(--pfd-line)!important;border-radius:12px!important;padding:10px 12px!important;background:#fff!important;color:var(--pfd-text)!important;box-shadow:none!important;font-size:14px}.pfd-edit-form textarea{min-height:80px;resize:vertical}.pfd-edit-form .wide{grid-column:1/-1}.pfd-edit-form button{justify-self:start}.pfd-row-edit{background:#f8fafc;border:1px solid var(--pfd-line);border-radius:18px;padding:0;overflow:hidden}.pfd-row-edit>summary{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 16px;color:var(--pfd-text)}.pfd-row-edit>summary strong{display:block;color:#0f172a}.pfd-row-edit>summary small{display:block;color:var(--pfd-muted);margin-top:3px}.pfd-row-edit>summary>span{background:#fff;border:1px solid var(--pfd-line);border-radius:999px;padding:7px 10px;color:var(--pfd-blue);font-weight:900;white-space:nowrap}.pfd-row-edit .pfd-edit-form{padding:0 16px 16px}.pfd-relation-edit{border-bottom:1px solid var(--pfd-line);padding:8px 0}.pfd-relation-edit>summary{display:flex;align-items:center;gap:12px;color:var(--pfd-text)}.pfd-relation-edit>summary small{display:block;color:var(--pfd-muted);font-weight:600;margin-top:2px}@media(max-width:720px){.pfd-edit-form,.pfd-edit-form.compact{grid-template-columns:1fr}.pfd-panel-head{align-items:flex-start;flex-direction:column}.pfd-row-edit>summary{align-items:flex-start;flex-direction:column}}

/* Prolift 3.7.2 — duidelijke frontend bewerkknoppen */
.pfd-row-main{flex:1;min-width:0}
.pfd-edit-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    background:#eef6ff!important;
    border:1px solid #bfdbfe!important;
    color:#0057c2!important;
    border-radius:999px!important;
    padding:7px 12px!important;
    font-size:12px!important;
    font-weight:900!important;
    white-space:nowrap;
}
.pfd-edit-pill:before{content:"✎";font-size:12px}
.pfd-row-edit[open] > summary .pfd-edit-pill,
.pfd-relation-edit[open] > summary .pfd-edit-pill{
    background:#0057c2!important;
    color:#fff!important;
    border-color:#0057c2!important;
}
.pfd-row-edit > summary:hover,
.pfd-relation-edit > summary:hover{
    background:#f8fbff;
}
.pfd-relation-edit > summary{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
}
.pfd-row-edit > summary{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
}

/* Prolift 3.7.6 — verwijderknoppen in frontend bewerkformulieren */
.pfd-form-actions{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    flex-wrap:wrap!important;
    margin-top:8px!important;
}
.pfd-delete-pill{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid #fecaca!important;
    background:#fff5f5!important;
    color:#dc2626!important;
    border-radius:999px!important;
    padding:10px 15px!important;
    font-size:13px!important;
    font-weight:900!important;
    cursor:pointer!important;
    line-height:1!important;
    white-space:nowrap!important;
}
.pfd-delete-pill:hover{background:#fee2e2!important}

/* Prolift 3.8.0 — lift detailpagina basis */
.pfd-lift-page{padding:18px;max-width:1280px;margin:0 auto}
.pfd-lift-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.pfd-backlink{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#0057c2;font-weight:800;background:#fff;border:1px solid #dbe7ff;border-radius:999px;padding:10px 14px}
.pfd-lift-actions{display:flex;gap:10px}
.pfd-primary-btn,.pfd-mini-btn{border:1px solid #dbe7ff;background:#fff;color:#003f98;border-radius:12px;padding:10px 14px;font-weight:900;text-decoration:none;cursor:pointer}
.pfd-primary-btn{background:#0057c2;color:#fff;border-color:#0057c2}
.pfd-lift-hero{display:grid;grid-template-columns:230px 1fr 420px;gap:18px;background:#fff;border:1px solid #dbe3ef;border-radius:22px;padding:18px;box-shadow:0 18px 45px rgba(15,34,66,.08);margin-bottom:18px}
.pfd-lift-photo{border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#eef6ff,#fff);border:1px solid #dde8f7;min-height:210px;display:flex;align-items:center;justify-content:center}
.pfd-lift-photo-placeholder{font-size:72px;opacity:.85}
.pfd-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#0057c2;font-weight:900}
.pfd-lift-title h1{font-size:36px;margin:8px 0 4px;color:#061735}
.pfd-status-badge{display:inline-flex;background:#dcfce7;color:#166534;border-radius:999px;padding:6px 12px;font-weight:900}
.pfd-lift-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}
.pfd-lift-meta-grid small{display:block;color:#64748b;font-weight:800;margin-bottom:4px}
.pfd-lift-meta-grid strong{color:#0f172a}
.pfd-lift-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pfd-kpi-card{border:1px solid #dde8f7;border-radius:16px;background:#fff;padding:18px}
.pfd-kpi-card small{display:block;color:#64748b;font-weight:900;margin-bottom:8px}
.pfd-kpi-card strong{display:block;font-size:22px;color:#061735}
.pfd-kpi-card span{font-size:13px;color:#64748b}
.pfd-lift-tabs{display:flex;gap:8px;background:#fff;border:1px solid #dbe3ef;border-radius:18px;padding:8px;margin-bottom:18px;overflow:auto}
.pfd-lift-tabs a{padding:12px 16px;border-radius:12px;text-decoration:none;color:#334155;font-weight:900;white-space:nowrap}
.pfd-lift-tabs a.active{background:#eef6ff;color:#0057c2}
.pfd-lift-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}
.pfd-card{background:#fff;border:1px solid #dbe3ef;border-radius:18px;padding:18px;box-shadow:0 12px 30px rgba(15,34,66,.06)}
.pfd-card h3{margin:0 0 14px;color:#061735}
.pfd-detail-list{display:grid;grid-template-columns:1fr 1.2fr;gap:9px 14px;margin:0}
.pfd-detail-list dt{color:#64748b;font-weight:800}
.pfd-detail-list dd{margin:0;font-weight:900;color:#0f172a}
.pfd-status-list{display:grid;gap:12px}
.pfd-status-list div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #edf2f7;padding-bottom:10px}
.dot{width:9px;height:9px;border-radius:999px;display:inline-block;margin-right:8px}
.dot.green{background:#22c55e}.dot.orange{background:#f59e0b}.dot.red{background:#ef4444}
.pfd-panel summary:focus,
.pfd-panel summary:focus-visible {
    outline: none;
}
.pfd-component-summary div{display:flex;justify-content:space-between;border-bottom:1px solid #edf2f7;padding-bottom:9px}
.pfd-component-summary span{color:#64748b;font-weight:800}
.pfd-muted{color:#64748b}
.pfd-wide-card{margin-bottom:18px}
.pfd-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.pfd-section-head h3{margin:0}
.pfd-section-head span{color:#64748b;font-weight:900}
.pfd-lift-inspection-list{display:grid;gap:10px}
.pfd-inspection-row{display:flex;justify-content:space-between;align-items:center;border:1px solid #e2e8f0;border-radius:14px;padding:14px;background:#f8fbff}
.pfd-inspection-row small{display:block;color:#64748b;margin-top:4px}
.pfd-empty-state{border:1px dashed #bfdbfe;background:#f8fbff;border-radius:14px;padding:16px;color:#64748b}
.pfd-open-lift{display:inline-flex;align-items:center;background:#eef6ff;border:1px solid #bfdbfe;color:#0057c2;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:900;text-decoration:none;margin-left:6px}
@media(max-width:1100px){.pfd-lift-hero{grid-template-columns:1fr}.pfd-lift-kpis,.pfd-lift-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.pfd-lift-kpis,.pfd-lift-grid,.pfd-lift-meta-grid{grid-template-columns:1fr}}

/* 3.8.6 - statusknoppen: klanten/contactpersonen actief, liften in beheer */
.pfd-status-toggle-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;line-height:1;white-space:nowrap;margin-left:auto;border:1px solid transparent}
.pfd-status-toggle-badge.is-active{background:#dcfce7;color:#166534;border-color:#bbf7d0}
.pfd-status-toggle-badge.is-inactive{background:#f1f5f9;color:#475569;border-color:#e2e8f0}
.pfd-status-toggle-btn{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:999px;padding:9px 13px;font-weight:900;cursor:pointer}
.pfd-status-toggle-btn.is-active{background:#fff7ed;border-color:#fed7aa;color:#9a3412}
.pfd-status-toggle-btn.is-inactive{background:#ecfdf5;border-color:#bbf7d0;color:#166534}
.pfd-check-row{display:flex!important;align-items:center;gap:9px;font-weight:900;color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px}
.pfd-check-row input{width:auto!important;margin:0!important}
.pfd-card-head{gap:10px}


/* Prolift 3.8.9 — rustigere liftdetail cockpit */
.pfd-lift-page{
    max-width:1180px!important;
    padding:24px!important;
}
.pfd-lift-hero{
    grid-template-columns:96px minmax(0,1fr)!important;
    gap:20px!important;
    align-items:start!important;
    padding:22px!important;
}
.pfd-lift-photo{
    min-height:96px!important;
    height:96px!important;
    border-radius:20px!important;
}
.pfd-lift-photo-placeholder{
    font-size:38px!important;
}
.pfd-lift-title h1{
    font-size:34px!important;
    line-height:1.06!important;
    margin:6px 0 8px!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
}
.pfd-lift-meta-grid{
    grid-template-columns:repeat(3,minmax(150px,1fr))!important;
    gap:12px 22px!important;
    margin-top:18px!important;
}
.pfd-lift-meta-grid strong{
    display:block!important;
    line-height:1.35!important;
    overflow-wrap:break-word!important;
}
.pfd-lift-kpis{
    grid-column:1 / -1!important;
    grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
    gap:14px!important;
}
.pfd-kpi-card{
    padding:16px!important;
    min-height:92px!important;
}
.pfd-kpi-card strong{
    font-size:20px!important;
    line-height:1.2!important;
    overflow-wrap:break-word!important;
}
.pfd-lift-tabs{
    padding:6px!important;
    border-radius:16px!important;
}
.pfd-lift-tabs a{
    padding:10px 14px!important;
}
.pfd-lift-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
    align-items:stretch!important;
}
.pfd-lift-grid .pfd-card{
    min-height:0!important;
}
.pfd-card{
    padding:20px!important;
}
.pfd-card h3{
    font-size:20px!important;
    line-height:1.2!important;
}
.pfd-detail-list{
    grid-template-columns:160px minmax(0,1fr)!important;
    gap:10px 18px!important;
}
.pfd-detail-list dd{
    overflow-wrap:break-word!important;
    line-height:1.35!important;
}
.pfd-status-list div,
.pfd-component-summary div{
    align-items:center!important;
    line-height:1.35!important;
}
.pfd-status-list strong,
.pfd-component-summary span{
    text-align:right!important;
    max-width:55%!important;
    overflow-wrap:break-word!important;
}
.pfd-card p{
    line-height:1.55!important;
    margin-top:0!important;
}
.pfd-wide-card{
    padding:22px!important;
}
@media(max-width:900px){
    .pfd-lift-page{padding:14px!important}
    .pfd-lift-hero{grid-template-columns:1fr!important}
    .pfd-lift-photo{display:none!important}
    .pfd-lift-meta-grid,
    .pfd-lift-grid,
    .pfd-detail-list{
        grid-template-columns:1fr!important;
    }
    .pfd-status-list div,
    .pfd-component-summary div{
        align-items:flex-start!important;
    }
    .pfd-status-list strong,
    .pfd-component-summary span{
        max-width:none!important;
    }
}


/* ==== PROLIFT 3.9.1 MJOB visualisatie ==== */
.pfd-mjob-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 18px}
.pfd-mjob-summary>div{background:#f8fbff;border:1px solid #dbe8fb;border-radius:14px;padding:14px 16px}
.pfd-mjob-summary strong{display:block;font-size:20px;color:#001f5b;margin-bottom:4px}.pfd-mjob-summary span{font-size:12px;color:#55708f}
.pfd-mjob-bars{display:flex;align-items:flex-end;gap:14px;min-height:150px;padding:14px 10px 8px;border:1px solid #e4edf8;border-radius:16px;background:#fff;margin-bottom:18px;overflow-x:auto}
.pfd-mjob-bar-item{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:70px}.pfd-mjob-bar-value{font-size:11px;color:#1f3b61;white-space:nowrap}.pfd-mjob-bar-track{height:96px;width:26px;background:#edf4ff;border-radius:999px;display:flex;align-items:flex-end;overflow:hidden}.pfd-mjob-bar-track span{display:block;width:100%;background:linear-gradient(180deg,#ff4d5f,#ffb020);border-radius:999px 999px 0 0}.pfd-mjob-bar-item small{font-size:11px;color:#55708f}.pfd-mjob-table-wrap{overflow-x:auto}.pfd-mjob-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.pfd-mjob-table th{text-align:left;color:#55708f;font-weight:700;border-bottom:1px solid #e5edf7;padding:10px 12px}.pfd-mjob-table td{border-bottom:1px solid #edf2f8;padding:12px;vertical-align:top}.pfd-mjob-table td small{display:block;color:#6b7f99;margin-top:3px;line-height:1.35}.pfd-mjob-prio{display:inline-block;padding:4px 9px;border-radius:999px;font-weight:800;font-size:11px}.pfd-mjob-prio-hoog{background:#ffe3e6;color:#b4232c}.pfd-mjob-prio-middel{background:#fff0c2;color:#946200}.pfd-mjob-prio-laag{background:#dff7eb;color:#16794c}
@media(max-width:760px){.pfd-mjob-summary{grid-template-columns:1fr}.pfd-mjob-bars{gap:10px}}


/* Prolift 3.9.2 - MJOB component cards */
.pfd-mjob-component-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin:18px 0 12px;
}
.pfd-mjob-component-card{
    border:1px solid #dbe7f7;
    border-radius:14px;
    padding:12px 14px;
    background:#f8fbff;
}
.pfd-mjob-component-card strong{
    display:block;
    color:#06245a;
    font-size:13px;
    margin-bottom:4px;
}
.pfd-mjob-component-card span{
    display:block;
    color:#0b3c8c;
    font-weight:700;
    font-size:12px;
    margin-bottom:4px;
}
.pfd-mjob-component-card small{
    display:block;
    color:#47627f;
    line-height:1.35;
}
@media(max-width:1100px){
    .pfd-mjob-component-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:700px){
    .pfd-mjob-component-grid{grid-template-columns:1fr;}
}


/* Prolift 3.9.3 - MJOB download button */
.pfd-download-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-left:12px;
    padding:8px 12px;
    border-radius:10px;
    background:#0b3c8c;
    color:#fff!important;
    text-decoration:none;
    font-weight:700;
    font-size:12px;
}
.pfd-download-btn:hover{
    background:#06245a;
    color:#fff!important;
}

.pfd-premium-report-btn{
    background:#1EC98A!important;
    color:#06245a!important;
    margin-left:8px;
}
.pfd-premium-report-btn:hover{
    background:#16b77b!important;
}

.pfd-mjob-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-left:auto;}
.pfd-premium-report-btn{background:#1EC98A!important;color:#06245a!important;margin-left:0!important;}
.pfd-premium-report-btn:hover{background:#16b77b!important;}

/* 3.9.14 - foto-upload: individuele bestanden verwijderen */
.lc-upload-count {
    display: block;
    width: 100%;
    margin: 8px 0 4px;
    font-size: 13px;
    font-weight: 700;
    color: #0f172a;
}
.lc-upload-item {
    position: relative;
    width: 96px;
    padding: 6px;
    border: 1px solid rgba(15,23,42,.12);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(15,23,42,.06);
}
.lc-upload-thumb {
    width: 82px;
    height: 82px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 10px;
    background: #f8fafc;
    border: 2px solid var(--lc-rand);
}
.lc-upload-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
    border-radius: 0;
}
.lc-upload-thumb span {
    font-size: 12px;
    font-weight: 900;
    color: #0B3C8C;
    background: transparent;
    padding: 0;
}
.lc-upload-name {
    margin-top: 6px;
    font-size: 10px;
    line-height: 1.2;
    color: #64748b;
    max-width: 82px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.lc-upload-remove {
    position: absolute;
    top: -8px;
    right: -8px;
    width: 26px;
    height: 26px;
    border: 0;
    border-radius: 999px;
    background: #ef4444;
    color: #fff;
    font-size: 20px;
    line-height: 1;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 6px 14px rgba(239,68,68,.28);
}
.lc-upload-clear {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    padding: 8px 12px;
    border: 1px solid rgba(15,23,42,.18);
    border-radius: 999px;
    background: #fff;
    color: #0f172a;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}
.lc-upload-clear:hover { background: #f8fafc; }

/* Liftdossier 3.9.15 - directe offerte vanuit inspectiescherm */
.lc-direct-offer-box{margin:22px 0 8px;}
.lc-direct-offer-card{border:1px solid #dbeafe;background:linear-gradient(135deg,#eff6ff,#ffffff);border-radius:18px;padding:20px;box-shadow:0 12px 32px rgba(11,60,140,.10);}
.lc-direct-offer-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#0b3c8c;font-weight:800;margin-bottom:6px;}
.lc-direct-offer-card h3{margin:0 0 8px;font-size:20px;color:#0b3c8c;}
.lc-direct-offer-card p{margin:0 0 14px;color:#374151;}
.lc-direct-offer-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:14px 0;background:#fff;border-radius:14px;padding:12px;border:1px solid #e5e7eb;}
.lc-direct-offer-meta span{font-size:14px;color:#1f2937;}
.lc-direct-offer-note-label{display:block;font-weight:700;margin:12px 0 6px;color:#1f2937;}
.lc-direct-offer-note{width:100%;border:1px solid #d1d5db;border-radius:12px;padding:10px;resize:vertical;}
.lc-direct-offer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;}
.lc-direct-offer-send,.lc-direct-offer-refresh{border:0;border-radius:999px;padding:11px 18px;font-weight:800;cursor:pointer;}
.lc-direct-offer-send{background:#1ec98a;color:#fff;}
.lc-direct-offer-send:disabled{opacity:.65;cursor:wait;}
.lc-direct-offer-refresh{background:#0b3c8c;color:#fff;}
.lc-direct-offer-result{margin-top:12px;padding:10px 12px;border-radius:12px;font-weight:700;}
.lc-direct-offer-result.is-success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;}
.lc-direct-offer-result.is-error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;}

/* ── Offerte FAB & overlay (v3.9.16) ──────────────────── */

.lc-offerte-fab {
    position: fixed;
    bottom: 28px;
    right: 28px;
    background: var(--lc-donker, #2D3033);
    color: #fff;
    border: none;
    border-radius: 50px;
    padding: 13px 22px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 4px 20px rgba(0,0,0,.25);
    transition: background .2s, transform .15s, opacity .2s;
    z-index: 9000;
    opacity: .55;
    pointer-events: none;
    display: flex;
    align-items: center;
    gap: 8px;
}
.lc-offerte-fab--actief {
    background: var(--lc-oranje, #E87722);
    opacity: 1;
    pointer-events: auto;
    animation: lc-fab-in .3s ease;
}
.lc-offerte-fab--actief:hover { background: #c9641a; transform: scale(1.04); }

@keyframes lc-fab-in {
    from { transform: scale(.8); opacity: 0; }
    to   { transform: scale(1);  opacity: 1; }
}

.lc-offerte-badge {
    background: #fff;
    color: var(--lc-oranje, #E87722);
    font-size: 11px;
    font-weight: 800;
    width: 20px; height: 20px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Overlay backdrop */
.lc-offerte-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.55);
    z-index: 9100;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    animation: lc-overlay-in .2s ease;
}
@keyframes lc-overlay-in {
    from { opacity: 0; } to { opacity: 1; }
}

/* Modal */
.lc-offerte-modal {
    background: #fff;
    border-radius: 18px;
    width: 100%;
    max-width: 620px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0,0,0,.3);
    animation: lc-modal-in .25s ease;
}
@keyframes lc-modal-in {
    from { transform: translateY(30px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

.lc-offerte-modal-head {
    background: #0b3c8c;
    color: #fff;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
}
.lc-offerte-modal-head h2 { margin: 0; font-size: 18px; }
.lc-ov-sluiten {
    background: none; border: none; color: rgba(255,255,255,.7);
    font-size: 20px; cursor: pointer; padding: 0; line-height: 1;
}
.lc-ov-sluiten:hover { color: #fff; }

.lc-offerte-modal-body {
    flex: 1;
    overflow-y: auto;
    padding: 0;
}

.lc-ov-sectie {
    padding: 20px 24px;
    border-bottom: 1px solid #f0f0f0;
}
.lc-ov-sectie:last-child { border-bottom: none; }

.lc-ov-sectie-titel {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #9ca3af;
    margin-bottom: 12px;
}

/* Onderdeel rijen */
.lc-ov-rij {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    cursor: pointer;
    transition: background .12s;
    margin-bottom: 4px;
}
.lc-ov-rij:hover { background: #fff7f2; }
.lc-ov-rij:has(.lc-ov-check:checked) { background: #fff4ec; }

.lc-ov-check { width: 18px; height: 18px; accent-color: var(--lc-oranje, #E87722); flex-shrink: 0; }

.lc-ov-foto {
    width: 56px; height: 44px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
    flex-shrink: 0;
}
.lc-ov-foto--leeg {
    width: 56px; height: 44px;
    background: #f3f4f6;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.lc-ov-info { flex: 1; min-width: 0; }
.lc-ov-naam { font-size: 14px; font-weight: 600; display: block; }
.lc-ov-staat { font-size: 12px; color: #dc2626; font-weight: 500; }

.lc-ov-prijs {
    font-size: 14px;
    font-weight: 700;
    color: #0b3c8c;
    white-space: nowrap;
    flex-shrink: 0;
}

.lc-ov-totaal {
    margin-top: 10px;
    padding: 10px 12px;
    background: #f9fafb;
    border-radius: 8px;
    text-align: right;
    font-size: 14px;
    color: #374151;
}
.lc-ov-totaal strong { color: #0b3c8c; font-size: 16px; }

/* Contactpersonen */
.lc-ov-contact-opties { display: flex; flex-direction: column; gap: 6px; }
.lc-ov-contact-optie {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    cursor: pointer;
    transition: border-color .12s, background .12s;
}
.lc-ov-contact-optie:hover { border-color: var(--lc-oranje, #E87722); background: #fff7f2; }
.lc-ov-contact-optie:has(input:checked) { border-color: var(--lc-oranje, #E87722); background: #fff4ec; }
.lc-ov-contact-optie input[type=radio] { accent-color: var(--lc-oranje, #E87722); }
.lc-ov-contact-naam { font-weight: 600; font-size: 14px; }
.lc-ov-contact-functie { font-size: 12px; color: #6b7280; }
.lc-ov-contact-email { font-size: 12px; color: #9ca3af; margin-left: auto; }
.lc-ov-geen-contact { font-size: 13px; color: #6b7280; margin: 0; }

.lc-ov-zelf-invullen { margin-top: 12px; }
.lc-ov-zelf-label { font-size: 12px; color: #6b7280; margin-bottom: 6px; }
.lc-ov-input {
    padding: 8px 11px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 13px;
    margin-right: 8px;
    margin-bottom: 6px;
    width: calc(50% - 10px);
    box-sizing: border-box;
}
.lc-ov-input:focus { border-color: var(--lc-oranje, #E87722); outline: none; }

.lc-ov-textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 13px;
    resize: vertical;
    box-sizing: border-box;
    font-family: inherit;
}
.lc-ov-textarea:focus { border-color: var(--lc-oranje, #E87722); outline: none; }

/* Footer */
.lc-offerte-modal-foot {
    padding: 16px 24px;
    border-top: 1px solid #f0f0f0;
    background: #fafafa;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.lc-ov-verstuur-btn {
    background: #0b3c8c;
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 13px 24px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: background .15s;
    align-self: flex-end;
}
.lc-ov-verstuur-btn:hover { background: #0a3070; }
.lc-ov-verstuur-btn:disabled { opacity: .6; cursor: not-allowed; }

.lc-ov-resultaat {
    font-size: 13px;
    padding: 10px 14px;
    border-radius: 8px;
    font-weight: 600;
}
.lc-ov-resultaat.is-success { background: #ecfdf5; color: #065f46; }
.lc-ov-resultaat.is-error   { background: #fef2f2; color: #991b1b; }

/* v3.9.19 — nieuwe startflow opdrachtgever → gebouw → lift */
.lc-stap:first-of-type .lc-velden {
    gap: 16px;
}
.lc-start-card {
    border: 1px solid #dbe3ef;
    background: #ffffff;
    border-radius: 18px;
    padding: 18px;
    box-shadow: 0 10px 28px rgba(11, 60, 140, .06);
    opacity: .72;
    transition: opacity .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.lc-start-card--active {
    opacity: 1;
    border-color: rgba(11, 60, 140, .28);
    box-shadow: 0 14px 34px rgba(11, 60, 140, .10);
}
.lc-start-card-head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
}
.lc-start-card-head strong {
    display: block;
    color: #0B3C8C;
    font-size: 17px;
    line-height: 1.25;
}
.lc-start-card-head small {
    display: block;
    color: #64748b;
    font-size: 13px;
    margin-top: 3px;
    line-height: 1.35;
}
.lc-start-step {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: #0B3C8C;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    flex: 0 0 30px;
}
.lc-start-new-panel {
    margin-top: 14px;
    border: 1px solid #e5e7eb;
    background: #f8fafc;
    border-radius: 14px;
    padding: 14px;
}
.lc-start-panel-title {
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 10px;
}
.lc-start-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.lc-start-new-panel label {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-weight: 700;
    color: #334155;
    font-size: 13px;
}
.lc-start-new-panel input {
    width: 100%;
    border: 1px solid #d1d5db;
    background: #fff;
    border-radius: 11px;
    padding: 11px 12px;
    font-size: 14px;
    box-sizing: border-box;
}
.lc-start-new-panel input:focus,
.lc-start-card select:focus {
    outline: none;
    border-color: #0B3C8C;
    box-shadow: 0 0 0 3px rgba(11, 60, 140, .10);
}
.lc-start-card select {
    min-height: 46px;
}
@media (max-width: 720px) {
    .lc-start-grid { grid-template-columns: 1fr; }
    .lc-start-card { padding: 15px; border-radius: 15px; }
}

/* v3.9.21 — concept opslaan */
.lc-progress-label{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.lc-save-status{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 10px;
    border-radius:999px;
    background:#eef2f7;
    color:#64748b;
    font-size:12px;
    font-weight:900;
    letter-spacing:.02em;
}
.lc-save-status.is-saving{ background:#fff7ed; color:#c2410c; }
.lc-save-status.is-saved{ background:#ecfdf5; color:#047857; }
.lc-save-status.is-error{ background:#fef2f2; color:#b91c1c; }
.lc-save-status.is-offline{ background:#eff6ff; color:#1d4ed8; }
.lc-save-status.is-sync-error{ background:#fef2f2; color:#b91c1c; cursor:pointer; }
.lc-save-status.is-sync-error:hover{ text-decoration:underline; }
.lc-nav{
    gap:12px;
    flex-wrap:wrap;
}
.lc-nav .lc-save-exit{
    margin-left:auto;
}
.lc-nav .lc-save-exit + .lc-volgende,
.lc-nav .lc-save-exit + .lc-btn--submit{
    margin-left:0;
}
@media(max-width:720px){
    .lc-progress-label{align-items:flex-start;flex-direction:column;}
    .lc-nav .lc-save-exit,
    .lc-nav .lc-btn{width:100%;margin-left:0!important;}
}

/* 3.9.24 - Lift algemeen opgeschoond */
.lc-form-section-title{
  grid-column:1 / -1;
  margin:14px 0 2px;
  padding:14px 16px;
  border:1px solid #d8e2f3;
  border-radius:16px;
  background:linear-gradient(180deg,#f8fbff,#eef5ff);
}
.lc-form-section-title:first-child{margin-top:0;}
.lc-form-section-title h3{
  margin:0;
  color:#06357a;
  font-size:18px;
  line-height:1.2;
  font-weight:900;
}
.lc-form-section-title p{
  margin:5px 0 0;
  color:#51627a;
  font-size:13px;
  line-height:1.35;
}
.lc-veld--liftboek-foto.lc-hidden-by-choice{display:none!important;}
.lc-radio-groep .lc-radio-label{
  border:1px solid #d8e2f3;
  border-radius:999px;
  padding:9px 13px;
  background:#f8fbff;
  cursor:pointer;
}
.lc-radio-groep .lc-radio-label:has(input:checked){
  border-color:#0b55b7;
  background:#eaf3ff;
  color:#083b82;
  font-weight:800;
}

/* 3.9.25 - Leverancier/installateur als vaste keuze met Anders-veld */
.lc-veld--leverancier-anders{display:none;}

/* 3.9.26 - conditioneel veld bij Leverancier / installateur */
.lc-inline-conditional{
    margin-top:12px;
    padding:14px;
    border:1px solid #d9e3f3;
    border-radius:14px;
    background:#f8fbff;
}
.lc-inline-conditional label{
    display:block;
    margin:0 0 8px;
    font-size:12px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:#0b2c5f;
}
.lc-inline-conditional input{
    width:100%;
}

/* v3.9.30 - Frontend technisch dossier als overzichtelijke componentkaarten/pills */
.pfd-tech-dossier-3930{margin-top:22px;padding:22px!important;background:#fff!important;border-radius:24px!important;border:1px solid #dbe3ef!important;box-shadow:0 14px 36px rgba(15,34,66,.07)!important}
.pfd-tech-main-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;border-bottom:1px solid #e8eef7;padding-bottom:16px}
.pfd-tech-main-head h3{margin:0 0 6px!important;font-size:22px!important;color:#071b45!important}
.pfd-tech-main-head>span{background:#eef6ff;color:#0b3c8c;border:1px solid #d8e9ff;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;white-space:nowrap}
.pfd-tech-dossier-3930 .pfd-tech-dossier-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;margin-top:0!important}
.pfd-tech-dossier-3930 .pfd-tech-section{background:linear-gradient(180deg,#fff,#fbfdff)!important;border:1px solid #dbe6f3!important;border-radius:22px!important;padding:18px!important;box-shadow:0 10px 28px rgba(15,34,66,.055)!important;overflow:hidden}
.pfd-tech-section-head{display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 0 14px!important;padding:0 0 13px!important;border-bottom:1px solid #eef2f7!important}
.pfd-tech-title{display:flex!important;align-items:center!important;gap:11px!important;min-width:0}
.pfd-tech-icon{width:42px!important;height:42px!important;border-radius:15px!important;background:linear-gradient(135deg,#eaf4ff,#d9ecff)!important;color:#0b3c8c!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;flex:0 0 auto!important}
.pfd-tech-title strong{display:block!important;font-size:17px!important;line-height:1.2!important;color:#071b45!important}
.pfd-tech-title small{display:block!important;margin-top:4px!important;color:#64748b!important;font-size:12px!important;font-weight:800!important}
.pfd-tech-pills{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.pfd-tech-pill{background:#f8fbff!important;border:1px solid #dfe8f4!important;border-radius:16px!important;padding:12px 13px!important;min-height:70px!important;display:flex!important;flex-direction:column!important;gap:6px!important;justify-content:center!important}
.pfd-tech-pill-label{display:block!important;color:#64748b!important;font-size:11px!important;font-weight:900!important;line-height:1.25!important;text-transform:none!important;letter-spacing:.02em!important}
.pfd-tech-pill-value{display:block!important;color:#071b45!important;font-size:14px!important;font-weight:950!important;line-height:1.32!important;overflow-wrap:anywhere!important}
.pfd-tech-pill.is-empty{background:#fbfcfe!important;border-style:dashed!important;color:#94a3b8!important}
.pfd-tech-pill.is-empty .pfd-tech-pill-value{color:#94a3b8!important;font-weight:800!important}
.pfd-tech-pill.is-photo{background:#eef6ff!important;border-color:#cfe4ff!important}
.pfd-tech-pill.is-photo a{color:#0b3c8c!important;text-decoration:none!important;font-weight:950!important}
.pfd-tech-subheader{grid-column:1/-1!important;background:#eef6ff!important;border:1px solid #d9eaff!important;border-radius:14px!important;padding:10px 12px!important;margin-top:4px!important}
.pfd-tech-subheader strong{display:block!important;color:#0b3c8c!important;font-size:13px!important;font-weight:1000!important}
.pfd-tech-subheader span{display:block!important;color:#64748b!important;font-size:12px!important;margin-top:3px!important}
@media(max-width:1100px){.pfd-tech-dossier-3930 .pfd-tech-dossier-grid{grid-template-columns:1fr!important}}
@media(max-width:720px){.pfd-tech-main-head{display:block}.pfd-tech-main-head>span{display:inline-flex;margin-top:10px}.pfd-tech-pills{grid-template-columns:1fr!important}.pfd-tech-dossier-3930{padding:16px!important}}

/* v3.9.57 - centraal offerteblok op Inspectieadvies */
.lc-inspectieadvies-offerteblok{
    margin:22px 0 4px;
    padding:18px;
    border:1px solid #cfe0f7;
    border-radius:16px;
    background:#f6fbff;
    box-shadow:0 10px 25px rgba(11,60,140,.06);
}
.lc-ia-offerte-kop{
    font-weight:800;
    color:#0b3c8c;
    font-size:18px;
    margin-bottom:8px;
}
.lc-ia-offerte-intro,
.lc-ia-offerte-leeg{
    margin:0 0 12px;
    color:#374151;
    font-size:14px;
}
.lc-ia-offerte-lijst{
    display:grid;
    gap:10px;
    margin-top:12px;
}
.lc-ia-offerte-rij{
    display:grid;
    grid-template-columns:auto 1fr auto auto;
    gap:10px;
    align-items:center;
    padding:12px 14px;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:12px;
    cursor:pointer;
}
.lc-ia-offerte-rij:hover{border-color:#0b3c8c;}
.lc-ia-offerte-naam{font-weight:800;color:#111827;}
.lc-ia-offerte-staat{font-size:12px;color:#b45309;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;padding:3px 8px;}
.lc-ia-offerte-prijs{color:#0b3c8c;white-space:nowrap;}
.lc-ia-offerte-voet{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid #dbeafe;
}
@media(max-width:640px){
    .lc-ia-offerte-rij{grid-template-columns:auto 1fr;}
    .lc-ia-offerte-prijs{grid-column:2;}
    .lc-ia-offerte-voet{align-items:stretch;flex-direction:column;}
}

/* ── Dashboard tegels ───────────────────────────────────────── */
.pfd-dashboard-greeting{padding:28px 32px 8px;}
.pfd-dashboard-greeting h2{margin:0 0 4px;font-size:22px;font-weight:700;color:#1e293b;}
.pfd-dashboard-greeting p{margin:0;color:#64748b;font-size:14px;}
.pfd-crm-dashboard{padding:24px 32px 40px;}
.pfd-crm-greeting{margin-bottom:20px;}
.pfd-crm-greeting h2{margin:0 0 2px;font-size:22px;font-weight:700;color:#1e293b;}
.pfd-crm-greeting p{margin:0;color:#64748b;font-size:13px;}
.pfd-crm-taken{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px 22px;margin-bottom:20px;}
.pfd-crm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.pfd-crm-tile{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px 22px;}
.pfd-crm-tile--wide{grid-column:1/-1;}
.pfd-crm-card-header{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.pfd-crm-card-header h3{margin:0;font-size:14px;font-weight:600;color:#1e293b;flex:1;}
.pfd-crm-icon{width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;}
.pfd-crm-icon--blue{background:#e8f0fe;color:#185FA5;}
.pfd-crm-icon--teal{background:#e1f5ee;color:#0F6E56;}
.pfd-crm-icon--amber{background:#faeeda;color:#854F0B;}
.pfd-crm-icon--purple{background:#eeedfe;color:#534AB7;}
.pfd-crm-icon--coral{background:#faece7;color:#993C1D;}
.pfd-crm-stats{display:flex;gap:10px;margin-bottom:14px;}
.pfd-crm-stat{flex:1;background:#f8fafc;border-radius:8px;padding:10px 12px;}
.pfd-crm-stat strong{display:block;font-size:22px;font-weight:700;color:#0b3c8c;line-height:1;}
.pfd-crm-stat span{display:block;font-size:11px;color:#64748b;margin-top:3px;}
.pfd-crm-tile-footer{font-size:12px;display:flex;gap:16px;}
.pfd-crm-tile-footer a{color:#185FA5;text-decoration:none;}
.pfd-crm-tile-footer a:hover{text-decoration:underline;}
.pfd-crm-muted{color:#94a3b8;}
.pfd-crm-comingsoon{font-size:11px;background:#f1f5f9;color:#64748b;padding:2px 8px;border-radius:20px;}
.pfd-crm-empty-state{font-size:13px;color:#94a3b8;padding:8px 0;}

/* ── Sidebar instellingen ───────────────────────────────────── */
.pfd-sidebar-divider{height:1px;background:rgba(255,255,255,.1);margin:12px 16px;}
.pfd-sidebar-settings a{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:8px;color:rgba(255,255,255,.65);text-decoration:none;font-size:13px;transition:background .15s,color .15s;}
.pfd-sidebar-settings a:hover,.pfd-sidebar-settings a.active{background:rgba(255,255,255,.1);color:#fff;}
.pfd-sidebar-settings a b{font-style:normal;font-size:16px;width:20px;text-align:center;}

/* ── Onderdelenbibliotheek ──────────────────────────────────── */
.pfd-bibliotheek{padding:24px 32px;}
.pfd-bib-groep{margin-bottom:32px;}
.pfd-bib-categorie{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin:0 0 12px;}
.pfd-bib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;}
.pfd-bib-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;}
.pfd-bib-card strong{font-size:14px;color:#1e293b;}
.pfd-bib-card small{font-size:11px;color:#64748b;}
.pfd-bib-card p{margin:4px 0 0;font-size:12px;color:#94a3b8;}

/* ── Bibliotheek editeerbaar ────────────────────────────────── */
.pfd-bib-add-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:0;margin-bottom:24px;overflow:hidden;}
.pfd-bib-add-box summary{padding:14px 18px;cursor:pointer;font-size:13px;font-weight:600;color:#0b3c8c;list-style:none;}
.pfd-bib-add-box summary::-webkit-details-marker{display:none;}
.pfd-bib-add-box[open] summary{border-bottom:1px solid #e2e8f0;}
.pfd-bib-add-box .pfd-edit-form{padding:16px 18px;}

.pfd-bib-card--edit{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:0;overflow:hidden;cursor:pointer;}
.pfd-bib-card--edit summary{padding:14px 16px;list-style:none;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.pfd-bib-card--edit summary::-webkit-details-marker{display:none;}
.pfd-bib-card--edit summary strong{font-size:14px;color:#1e293b;flex:1;}
.pfd-bib-card--edit summary small{font-size:11px;color:#64748b;}
.pfd-bib-card--edit[open]{border-color:#0b3c8c;}
.pfd-bib-card--edit[open] summary{border-bottom:1px solid #e2e8f0;background:#f8fafc;}

.pfd-bib-badge{font-size:10px;font-weight:700;background:#f0f4ff;color:#0b3c8c;border-radius:999px;padding:2px 8px;}
.pfd-bib-omschrijving{margin:8px 16px;font-size:12px;color:#64748b;}

.pfd-bib-varianten-tabel{width:100%;border-collapse:collapse;font-size:12px;margin:0;}
.pfd-bib-varianten-tabel th{padding:8px 12px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc;border-bottom:1px solid #e2e8f0;}
.pfd-bib-varianten-tabel td{padding:8px 12px;border-bottom:1px solid #f1f5f9;}
.pfd-bib-varianten-tabel tr:last-child td{border-bottom:none;}

.pfd-bib-add-variant,.pfd-bib-edit-onderdeel{border-top:1px solid #e2e8f0;}
.pfd-bib-add-variant summary,.pfd-bib-edit-onderdeel summary{padding:10px 16px;font-size:12px;font-weight:600;color:#0b3c8c;cursor:pointer;list-style:none;}
.pfd-bib-add-variant summary::-webkit-details-marker,.pfd-bib-edit-onderdeel summary::-webkit-details-marker{display:none;}
.pfd-bib-add-variant .pfd-edit-form,.pfd-bib-edit-onderdeel .pfd-edit-form{padding:12px 16px;}

.pfd-bib-categorie span{font-size:11px;font-weight:400;color:#94a3b8;margin-left:4px;}

/* ── Variant rijen klikbaar ─────────────────────────────────── */
.pfd-bib-variant-rij{cursor:pointer;transition:background .1s;}
.pfd-bib-variant-rij:hover{background:#f0f4ff;}
.pfd-bib-variant-rij td:last-child{color:#0b3c8c;font-size:14px;text-align:center;}
.pfd-bib-variant-edit-rij td{padding:0!important;border-bottom:2px solid #0b3c8c!important;}
.pfd-bib-variant-edit-form{padding:12px 16px;background:#f8fafc;}

/* ── Variant edit form layout fix ───────────────────────────── */
.pfd-bib-variant-edit-form .pfd-edit-form{
    display:flex;
    flex-direction:column;
    gap:8px;
}
.pfd-bib-variant-edit-form .pfd-edit-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:#64748b;}
.pfd-bib-variant-edit-form .pfd-edit-form label input{font-size:13px;padding:6px 8px;border:1px solid #e2e8f0;border-radius:6px;width:100%;}
.pfd-bib-variant-edit-form .pfd-form-actions{margin-top:4px;}

.pfd-sidebar-new-inspectie{display:block;background:#2563eb;color:#fff !important;text-align:center;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:600;text-decoration:none !important;transition:background .15s;}
.pfd-sidebar-new-inspectie:hover{background:#1d4ed8;}

.lc-head-dashboard-btn{font-size:12px;font-weight:600;color:rgba(255,255,255,.75);text-decoration:none;border:1px solid rgba(255,255,255,.25);padding:6px 14px;border-radius:6px;transition:background .15s,color .15s;white-space:nowrap;}
.lc-head-dashboard-btn:hover{background:rgba(255,255,255,.12);color:#fff;}

.pfd-crm-tile--link{transition:box-shadow .15s,transform .15s;}
.pfd-crm-tile--link:hover{box-shadow:0 4px 18px rgba(0,0,0,.08);transform:translateY(-2px);}

.pfd-kpi-link{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:inherit;cursor:pointer;transition:background .15s,box-shadow .15s;border-radius:10px;}
.pfd-kpi-link:hover{background:#f0f4ff;box-shadow:0 2px 8px rgba(0,0,0,.07);}
.pfd-kpi-link b{color:#0b3c8c;}


/* ================================================================
   Liftdossier v4.1.310 - mobiele basis voor dashboard + inspectie
   Doel: dashboard en inspectieformulier bruikbaar op telefoon/tablet,
   zonder MJOB/inspectielogica aan te raken.
   ================================================================ */
@media (max-width: 900px) {
  html, body { overflow-x: hidden; }
  .wp-site-blocks,
  .entry-content,
  .entry-content > *,
  .wp-block-post-content,
  .wp-block-post-content > * {
    max-width: 100% !important;
  }

  /* Dashboard / klantomgeving */
  .pfd-app {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    grid-template-columns: 1fr !important;
    min-height: 100vh;
  }
  .pfd-main {
    width: 100% !important;
    min-width: 0 !important;
    padding: 16px !important;
  }
  .pfd-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    padding: 18px 16px !important;
    gap: 14px !important;
    border-radius: 0 !important;
  }
  .pfd-sidebar nav,
  .pfd-sidebar-settings {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 4px;
  }
  .pfd-sidebar nav::-webkit-scrollbar,
  .pfd-sidebar-settings::-webkit-scrollbar { display: none; }
  .pfd-sidebar nav a,
  .pfd-sidebar-settings a,
  .pfd-sidebar-new-inspectie {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    padding: 9px 11px !important;
    border-radius: 12px !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
  }
  .pfd-sidebar nav b { width: 20px !important; height: 20px !important; border-radius: 8px !important; }
  .pfd-brand { font-size: 22px !important; }
  .pfd-side-note { display: block !important; margin-top: 2px !important; font-size: 11px !important; }
  .pfd-sidebar-divider { margin: 4px 0 !important; }
  .pfd-topbar,
  .pfd-dossier-hero,
  .pfd-hero,
  .pfd-panel-head {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
  .pfd-topbar h1 { font-size: 24px !important; line-height: 1.15 !important; }
  .pfd-hero h2,
  .pfd-dossier-hero h2 { font-size: 25px !important; line-height: 1.15 !important; }
  .pfd-grid,
  .pfd-grid-3,
  .pfd-grid-4,
  .pfd-kpis,
  .pfd-client-grid,
  .pfd-two-col {
    grid-template-columns: 1fr !important;
  }
  .pfd-tile,
  .pfd-kpis > div,
  .pfd-kpis > a,
  .pfd-panel,
  .pfd-client-card {
    padding: 16px !important;
    border-radius: 18px !important;
  }
  .pfd-row-card,
  .pfd-inspection-row {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .pfd-actions,
  .pfd-dossier-actions,
  .pfd-form-actions {
    width: 100% !important;
    justify-content: flex-start !important;
  }
  .pfd-btn,
  .pfd-dossier-actions a,
  .pfd-search button {
    min-height: 40px !important;
    padding: 9px 14px !important;
    font-size: 13px !important;
  }
  .pfd-info-list { grid-template-columns: 1fr !important; gap: 4px 0 !important; }
  .pfd-search { display: grid !important; gap: 8px !important; }
  .pfd-search input,
  .pfd-search button { width: 100% !important; }
  .pfd-tabs,
  .pfd-tabbar,
  .pfd-dossier-tabs,
  .pfd-nav-tabs {
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch;
  }
  table.pfd-table,
  .pfd-panel table,
  .pfd-mjob-table,
  .pfd-bib-varianten-tabel {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  /* Inspectieformulier */
  .lc-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 32px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  .lc-head {
    padding: 14px 16px !important;
    gap: 10px !important;
    align-items: center !important;
  }
  .lc-lift { font-size: 21px !important; }
  .lc-centraal { font-size: 10px !important; letter-spacing: 1px !important; }
  .lc-head-title { font-size: 9px !important; letter-spacing: 1.2px !important; text-align: right !important; }
  .lc-progress-label { padding: 8px 14px !important; }
  .lc-steps-nav {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 5px !important;
    padding: 8px 12px !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .lc-steps-nav::-webkit-scrollbar { display:none; }
  .lc-step-dot {
    flex: 0 0 auto !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 8px !important;
  }
  .lc-stap { padding: 14px !important; }
  .lc-stap-header { padding: 16px !important; border-radius: 18px 18px 0 0 !important; }
  .lc-stap-titel { font-size: 20px !important; }
  .lc-velden {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    padding: 16px !important;
  }
  .lc-veld,
  .lc-veld--textarea,
  .lc-veld--file,
  .lc-veld--radio,
  .lc-veld--wide,
  .lc-start-step,
  .lc-start-grid {
    grid-column: 1 / -1 !important;
    min-width: 0 !important;
  }
  .lc-start-grid { grid-template-columns: 1fr !important; }
  .lc-veld input,
  .lc-veld select,
  .lc-veld textarea {
    max-width: 100% !important;
    font-size: 16px !important; /* voorkomt iPhone zoom */
  }
  .lc-nav-knoppen {
    padding: 12px 14px !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }
  .lc-volgende,
  .lc-vorige,
  .lc-btn {
    min-height: 42px !important;
    font-size: 14px !important;
  }
  .lc-mjob-preview,
  .lc-generic-mjob-preview {
    font-size: 12px !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 480px) {
  .pfd-main { padding: 12px !important; }
  .pfd-sidebar { padding: 14px 12px !important; }
  .pfd-tile strong,
  .pfd-kpis b,
  .pfd-kpis > a b { font-size: 26px !important; }
  .pfd-card-head h3 { font-size: 17px !important; }
  .lc-head { align-items: flex-start !important; }
  .lc-head-title { max-width: 140px; }
  .lc-nav-knoppen .lc-vorige,
  .lc-nav-knoppen .lc-volgende,
  .lc-nav-knoppen .lc-btn { flex: 1 1 auto !important; }
}

/* ================================================================
   Liftdossier v4.1.311 - mobile polish dashboard + inspectie
   Doel: echte telefoonbreedte gebruiken en sidebar compact maken.
   ================================================================ */
@media (max-width: 900px) {
  html, body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  /* WordPress block themes houden content soms kunstmatig smal */
  body .wp-site-blocks,
  body .entry-content,
  body .entry-content > *,
  body .wp-block-post-content,
  body .wp-block-post-content > *,
  body .is-layout-constrained,
  body .is-layout-constrained > * {
    max-width: none !important;
    width: 100% !important;
  }

  body .pfd-app {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block !important;
    min-height: 100vh !important;
    overflow: hidden !important;
  }

  body .pfd-main {
    width: 100% !important;
    min-width: 0 !important;
    padding: 14px !important;
  }

  /* Mobiele top-sidebar: minder hoog, horizontaal scrollbaar */
  body .pfd-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    padding: 14px 14px 12px !important;
    gap: 10px !important;
    border-radius: 0 !important;
    display: block !important;
  }

  body .pfd-brand {
    font-size: 20px !important;
    line-height: 1.1 !important;
    margin: 0 0 10px !important;
  }

  body .pfd-sidebar img,
  body .pfd-logo,
  body .pfd-company-logo {
    max-height: 42px !important;
    max-width: 150px !important;
    width: auto !important;
  }

  body .pfd-sidebar nav,
  body .pfd-sidebar-settings {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 0 0 6px !important;
    margin: 0 !important;
  }

  body .pfd-sidebar nav::-webkit-scrollbar,
  body .pfd-sidebar-settings::-webkit-scrollbar { display: none !important; }

  body .pfd-sidebar nav a,
  body .pfd-sidebar-settings a,
  body .pfd-sidebar-new-inspectie {
    flex: 0 0 auto !important;
    width: auto !important;
    min-height: 34px !important;
    padding: 8px 10px !important;
    border-radius: 11px !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
    gap: 6px !important;
  }

  body .pfd-sidebar nav b {
    width: 19px !important;
    height: 19px !important;
    min-width: 19px !important;
    border-radius: 7px !important;
    font-size: 11px !important;
  }

  body .pfd-sidebar-new-inspectie {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 8px 0 !important;
    width: 100% !important;
    min-height: 38px !important;
  }

  body .pfd-side-note,
  body .pfd-sidebar-divider {
    display: none !important;
  }

  body .pfd-topbar h1,
  body .pfd-dashboard-title,
  body .pfd-main h1 {
    font-size: 22px !important;
    line-height: 1.15 !important;
  }

  body .pfd-hero,
  body .pfd-dossier-hero,
  body .pfd-panel,
  body .pfd-tile,
  body .pfd-client-card,
  body .pfd-kpis > div,
  body .pfd-kpis > a {
    border-radius: 16px !important;
    padding: 16px !important;
  }

  body .pfd-grid,
  body .pfd-grid-3,
  body .pfd-grid-4,
  body .pfd-kpis,
  body .pfd-client-grid,
  body .pfd-two-col,
  body .pfd-crm-grid,
  body .pfd-dashboard-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body .pfd-actions,
  body .pfd-dossier-actions {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  body .pfd-btn,
  body .pfd-dossier-actions a,
  body .pfd-search button {
    min-height: 40px !important;
    padding: 9px 14px !important;
    font-size: 13px !important;
  }

  body .pfd-tabs,
  body .pfd-lift-tabs,
  body .pfd-tabbar {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 8px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 6px !important;
  }
  body .pfd-tabs::-webkit-scrollbar,
  body .pfd-lift-tabs::-webkit-scrollbar,
  body .pfd-tabbar::-webkit-scrollbar { display: none !important; }
  body .pfd-tabs a,
  body .pfd-lift-tabs a,
  body .pfd-tabbar a { flex: 0 0 auto !important; white-space: nowrap !important; }
}

@media (max-width: 560px) {
  body .pfd-main { padding: 10px !important; }
  body .pfd-sidebar { padding: 12px 10px 10px !important; }
  body .pfd-panel,
  body .pfd-tile,
  body .pfd-client-card,
  body .pfd-kpis > div,
  body .pfd-kpis > a { padding: 14px !important; }
  body .pfd-tile strong,
  body .pfd-kpis b,
  body .pfd-kpis > a b { font-size: 24px !important; }
}

/* Inspectieformulier mobiel: volledige breedte, geen theme-krimp */
@media (max-width: 900px) {
  body .lc-form-wrap,
  body .lc-shell,
  body .lc-container,
  body .lc-form-page {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body .lc-card,
  body .lc-step-card,
  body .lc-form-card {
    border-radius: 16px !important;
  }

  body .lc-icon-rail,
  body .lc-stappen,
  body .lc-step-icons {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  body .lc-icon-rail::-webkit-scrollbar,
  body .lc-stappen::-webkit-scrollbar,
  body .lc-step-icons::-webkit-scrollbar { display: none !important; }

  body .lc-veld-grid,
  body .lc-form-grid,
  body .lc-grid,
  body .lc-start-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}

/* v4.1.312 - Inspectieformulier mobiele polish */
@media (max-width: 900px) {
  html, body { overflow-x:hidden!important; }
  body .lc-shell,
  body .lc-form-wrap,
  body .lc-container,
  body .lc-form-page,
  body .lc-card,
  body .lc-step-card,
  body .lc-form-card {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body .lc-shell,
  body .lc-form-wrap { padding-left:10px!important; padding-right:10px!important; }
  body .lc-card,
  body .lc-step-card,
  body .lc-form-card { border-radius:18px!important; padding:16px!important; }
  body .lc-veld-grid,
  body .lc-form-grid,
  body .lc-grid,
  body .lc-start-grid,
  body .lc-two-col {
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body .lc-icon-rail,
  body .lc-stappen,
  body .lc-step-icons {
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    padding-bottom:6px!important;
  }
  body .lc-icon-rail::-webkit-scrollbar,
  body .lc-stappen::-webkit-scrollbar,
  body .lc-step-icons::-webkit-scrollbar { display:none!important; }
  body input,
  body select,
  body textarea { max-width:100%!important; }
}

/* ==========================================================
   v4.1.313 - Mobiel dashboard: echt hamburger menu
   ========================================================== */
.pfd-mobile-nav-toggle,
.pfd-mobile-nav-button,
.pfd-mobile-nav-backdrop{display:none;}

@media (max-width: 768px){
  html, body { overflow-x:hidden !important; }
  body .wp-site-blocks,
  body .entry-content,
  body .entry-content > *,
  body .wp-block-post-content,
  body .is-layout-constrained,
  body .is-layout-flow,
  body main.wp-block-group,
  body .wp-block-group,
  body .wp-block-group__inner-container{
    max-width:none !important;
    width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  body .pfd-mobile-nav-button{
    display:flex !important;
    position:sticky;
    top:0;
    z-index:10010;
    width:100%;
    min-height:58px;
    align-items:center;
    gap:12px;
    padding:12px 16px;
    background:linear-gradient(135deg,#071d44,#0B3C8C);
    color:#fff;
    box-shadow:0 12px 28px rgba(15,23,42,.22);
    font-family:'DM Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  }
  body.admin-bar .pfd-mobile-nav-button{ top:46px; }
  body .pfd-mobile-nav-button span{
    width:36px;height:36px;border-radius:12px;
    display:inline-flex;align-items:center;justify-content:center;
    background:rgba(255,255,255,.14);
    font-size:22px;line-height:1;
  }
  body .pfd-mobile-nav-button strong{font-size:18px;letter-spacing:-.3px;}

  body .pfd-mobile-nav-backdrop{
    position:fixed;inset:0;z-index:10000;
    background:rgba(5,16,38,.46);
  }
  body .pfd-mobile-nav-toggle:checked ~ .pfd-mobile-nav-backdrop{display:block !important;}

  body .pfd-app{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-height:100vh !important;
    margin:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    overflow:visible !important;
    background:#f4f7fb !important;
  }

  body .pfd-sidebar{
    position:fixed !important;
    top:0;left:0;bottom:0;
    z-index:10020;
    width:min(86vw,340px) !important;
    max-width:340px !important;
    transform:translateX(-105%);
    transition:transform .22s ease;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    border-radius:0 24px 24px 0 !important;
    padding:22px 16px !important;
    gap:14px !important;
    display:flex !important;
  }
  body.admin-bar .pfd-sidebar{ top:46px; }
  body .pfd-mobile-nav-toggle:checked ~ .pfd-app .pfd-sidebar{transform:translateX(0);}
  body .pfd-mobile-nav-toggle:checked ~ .pfd-app .pfd-sidebar{overflow-y:auto;max-height:100vh;}

  /* Bottom navigation bar op mobiel */
  .pfd-bottom-nav{
    display:flex !important;
    position:fixed;
    bottom:0;left:0;right:0;
    z-index:10030;
    background:linear-gradient(180deg,#071d44,#0B3C8C);
    border-top:1px solid rgba(255,255,255,.12);
    padding:8px 0 env(safe-area-inset-bottom, 8px);
    justify-content:space-around;
    align-items:center;
  }
  .pfd-bottom-nav a{
    display:flex;flex-direction:column;align-items:center;
    color:rgba(255,255,255,.65);text-decoration:none;
    font-size:10px;font-weight:700;gap:3px;padding:4px 8px;
    border-radius:10px;min-width:56px;
  }
  .pfd-bottom-nav a.active, .pfd-bottom-nav a:hover{color:#fff;background:rgba(255,255,255,.12);}
  .pfd-bottom-nav a span{font-size:20px;line-height:1;}
  body .pfd-main{padding-bottom:80px !important;}

  body .pfd-sidebar .pfd-brand{font-size:24px !important;margin-bottom:4px;}
  body .pfd-sidebar-bedrijfslogo{padding:4px 8px 8px !important;}
  body .pfd-sidebar-bedrijfslogo img{max-height:48px !important;max-width:190px !important;}

  body .pfd-sidebar nav,
  body .pfd-sidebar-settings{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
    overflow:visible !important;
    white-space:normal !important;
  }
  body .pfd-sidebar nav a,
  body .pfd-sidebar-settings a{
    width:100% !important;
    min-height:44px !important;
    font-size:14px !important;
    padding:11px 12px !important;
    justify-content:flex-start !important;
    white-space:normal !important;
  }
  body .pfd-sidebar nav b,
  body .pfd-sidebar-settings b{
    width:26px !important;height:26px !important;flex:0 0 26px !important;
  }
  body .pfd-sidebar-new-inspectie{
    width:100% !important;
    min-height:46px !important;
    border-radius:14px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:14px !important;
  }
  body .pfd-side-note{display:block !important;margin-top:auto !important;padding:14px 8px 0 !important;}

  body .pfd-main{
    width:100% !important;
    max-width:100% !important;
    padding:18px 14px 28px !important;
  }
  body .pfd-topbar{margin-bottom:18px !important;}
  body .pfd-topbar h1{font-size:26px !important;line-height:1.12 !important;}
  body .pfd-topbar p{font-size:13px !important;}

  body .pfd-hero,
  body .pfd-dossier-hero,
  body .pfd-panel,
  body .pfd-tile,
  body .pfd-kpis>div,
  body .pfd-kpis>a,
  body .pfd-client-card{
    border-radius:18px !important;
  }

  body .pfd-grid-3,
  body .pfd-grid-4,
  body .pfd-client-grid,
  body .pfd-two-col{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  body .pfd-kpis,
  body .pfd-mini-stats{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  body .pfd-kpis>div,
  body .pfd-kpis>a,
  body .pfd-mini-stats span{
    min-width:0 !important;
    padding:14px !important;
  }
  body .pfd-kpis b,
  body .pfd-kpis>a b{font-size:28px !important;}

  body .pfd-actions,
  body .pfd-dossier-actions{width:100% !important;justify-content:flex-start !important;}
  body .pfd-btn,
  body .pfd-dossier-actions a{min-height:44px !important;}

  body .pfd-tabs,
  body .lc-tabs,
  body .pfd-tabbar{
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    white-space:nowrap !important;
    display:flex !important;
    gap:8px !important;
    padding-bottom:4px !important;
  }

  body table,
  body .pfd-table,
  body .pfd-mjob-table{
    max-width:100% !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
  }
}

@media (max-width: 420px){
  body .pfd-main{padding:14px 10px 24px !important;}
  body .pfd-kpis,
  body .pfd-mini-stats{grid-template-columns:1fr 1fr !important;}
  body .pfd-topbar h1{font-size:24px !important;}
}


/* v4.1.319 - smal scherm balans: 317 behouden, compacter zonder stapelen */
@media (max-width: 768px) {
  body .pfd-mobile-nav-button{
    min-height:52px!important;
    padding:9px 12px!important;
    gap:10px!important;
  }
  body .pfd-mobile-nav-button span{
    width:32px!important;
    height:32px!important;
    border-radius:10px!important;
    font-size:20px!important;
  }
  body .pfd-mobile-nav-button strong{font-size:16px!important;}
  body .pfd-main{
    padding:22px 12px 26px!important;
    width:100%!important;
    max-width:100%!important;
  }
  body .pfd-main > h1,
  body .pfd-topbar h1,
  body h1.pfd-page-title{
    margin-top:8px!important;
    margin-bottom:18px!important;
    line-height:1.15!important;
  }
  body .pfd-crm-dashboard,
  body .pfd-dashboard,
  body .pfd-dashboard-wrap{
    padding-top:8px!important;
  }
  body .pfd-crm-greeting,
  body .pfd-dashboard-greeting{
    margin:0 0 18px!important;
    padding:0!important;
  }
  body .pfd-crm-greeting h2,
  body .pfd-dashboard-greeting h2{
    font-size:21px!important;
    line-height:1.18!important;
  }
  body .pfd-crm-greeting p,
  body .pfd-dashboard-greeting p{font-size:12px!important;}
  body .pfd-crm-tile,
  body .pfd-dashboard-card,
  body .pfd-card,
  body .pfd-panel,
  body .pfd-tile{
    padding:16px!important;
    border-radius:16px!important;
    margin-bottom:12px!important;
  }
  body .pfd-crm-tile h3,
  body .pfd-dashboard-card h3,
  body .pfd-card h3{
    font-size:15px!important;
    line-height:1.25!important;
    margin-bottom:12px!important;
  }
  body .pfd-crm-stats,
  body .pfd-stats,
  body .pfd-kpi-row,
  body .pfd-kpis,
  body .pfd-mini-stats{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
  }
  body .pfd-crm-stat,
  body .pfd-stat,
  body .pfd-kpi,
  body .pfd-mini-stat{
    min-width:0!important;
    width:100%!important;
    padding:10px 8px!important;
    border-radius:11px!important;
  }
  body .pfd-crm-stat strong,
  body .pfd-stat strong,
  body .pfd-kpi strong,
  body .pfd-mini-stat strong,
  body .pfd-crm-stat b,
  body .pfd-stat b,
  body .pfd-kpi b,
  body .pfd-mini-stat b{
    font-size:22px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
  }
  body .pfd-crm-stat small,
  body .pfd-stat small,
  body .pfd-kpi small,
  body .pfd-mini-stat small{
    font-size:10.5px!important;
    line-height:1.2!important;
    overflow-wrap:anywhere!important;
  }
  body .pfd-crm-tile-footer,
  body .pfd-card-actions,
  body .pfd-actions{
    margin-top:12px!important;
    gap:10px!important;
  }
  body .pfd-crm-tile-footer a,
  body .pfd-card-actions a,
  body .pfd-actions a{
    font-size:12px!important;
  }
  /* Mail/actiekaarten: botsende pill-knoppen op smal scherm netjes onder elkaar */
  body .pfd-mail-card .pfd-actions,
  body .pfd-mail-card .pfd-card-actions,
  body .pfd-crm-mail .pfd-actions,
  body .pfd-crm-mail .pfd-card-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  body .pfd-mail-card .pfd-btn,
  body .pfd-crm-mail .pfd-btn{
    width:100%!important;
    justify-content:center!important;
  }
}
@media (max-width: 380px) {
  body .pfd-main{padding-left:10px!important;padding-right:10px!important;}
  body .pfd-crm-tile,
  body .pfd-dashboard-card,
  body .pfd-card,
  body .pfd-panel,
  body .pfd-tile{padding:14px!important;}
  body .pfd-crm-stats,
  body .pfd-stats,
  body .pfd-kpi-row,
  body .pfd-kpis,
  body .pfd-mini-stats{gap:6px!important;}
  body .pfd-crm-stat,
  body .pfd-stat,
  body .pfd-kpi,
  body .pfd-mini-stat{padding:9px 6px!important;}
  body .pfd-crm-stat strong,
  body .pfd-stat strong,
  body .pfd-kpi strong,
  body .pfd-mini-stat strong,
  body .pfd-crm-stat b,
  body .pfd-stat b,
  body .pfd-kpi b,
  body .pfd-mini-stat b{font-size:20px!important;}
  body .pfd-crm-stat small,
  body .pfd-stat small,
  body .pfd-kpi small,
  body .pfd-mini-stat small{font-size:9.8px!important;}
}

/* v4.1.322 — subtiele formulierbeheerknoppen */
.lc-form-edit-toggle{border:1px solid #e5e7eb;background:#fff;color:#64748b;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;margin-left:auto;}
.lc-form-edit-toggle:hover{color:#0B3C8C;border-color:#0B3C8C;background:#f8fafc;}
.lc-form-edit-panel{margin:0 0 12px;padding:10px 12px;border:1px dashed #cbd5e1;background:#f8fafc;border-radius:12px;gap:8px;align-items:center;color:#475569;font-size:13px;}
.lc-form-edit-panel strong{color:#0f172a;}
.lc-form-hide-field{display:none;position:absolute;right:10px;top:8px;border:1px solid #fecaca;background:#fff;color:#b91c1c;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:800;cursor:pointer;z-index:3;}
.lc-form-edit-mode .lc-veld{position:relative;outline:1px dashed #e2e8f0;outline-offset:2px;}
.lc-form-edit-mode .lc-form-hide-field{display:inline-flex;}
.lc-form-add-field{margin:16px 0 4px;padding:14px;border:1px dashed #cbd5e1;background:#f8fafc;border-radius:14px;grid-template-columns:minmax(180px,1fr) 180px minmax(180px,1fr) auto;gap:10px;align-items:center;}
.lc-form-add-field h4{grid-column:1/-1;margin:0;color:#0f172a;}
.lc-form-add-field input,.lc-form-add-field select{min-height:40px;border:1px solid #d1d5db;border-radius:10px;padding:8px 10px;}
.lc-form-add-submit{min-height:40px;border:0;border-radius:999px;background:#1EC98A;color:#fff;font-weight:800;padding:8px 14px;cursor:pointer;}
@media(max-width:700px){.lc-form-add-field{grid-template-columns:1fr}.lc-form-edit-toggle{width:auto;margin-top:8px}.lc-form-hide-field{position:static;margin:0 0 8px auto;display:none}.lc-form-edit-mode .lc-form-hide-field{display:flex}}


/* v4.1.324 - formulierbeheer: eigen velden kunnen worden verwijderd */
.lc-form-delete-custom-field{
  display:none;
  position:absolute;
  top:8px;
  right:8px;
  z-index:5;
  border:1px solid #fecaca;
  background:#fff1f2;
  color:#991b1b;
  border-radius:999px;
  padding:5px 10px;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
}
.lc-form-edit-mode .lc-form-delete-custom-field{display:inline-flex;align-items:center;gap:4px;}
.lc-form-edit-mode .lc-veld{position:relative;}

/* v4.1.325 formulierbeheer veldopties */
.lc-form-add-field{gap:10px;padding:14px;border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc;margin-top:12px}
.lc-form-add-field select,.lc-form-add-field input{min-height:38px}
.lc-form-add-flags{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:8px;font-size:12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px;grid-column:1/-1}
.lc-form-add-flags label{display:flex;align-items:center;gap:6px;margin:0;color:#334155;font-weight:600}
.lc-form-field-badges{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 7px 0}
.lc-form-field-badges span{font-size:11px;font-weight:700;background:#eef2ff;color:#3730a3;border-radius:999px;padding:3px 8px}

/* 4.1.418 - verwijder zwarte focusrand rond activiteit-tegel */
.pfd-activity-tile, .pfd-activity-tile:focus, .pfd-activity-tile:focus-visible { outline: none !important; }
.pfd-activity-tile .pfd-crm-card-header, .pfd-activity-tile .pfd-crm-card-header:focus, .pfd-activity-tile .pfd-crm-card-header:focus-visible { outline: none !important; }


/* v4.1.555 - inspectieformulier: beheerknoppen niet tonen tijdens normale opname */
.lc-stap .lc-form-hide-field,
.lc-stap .lc-form-delete-custom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* v4.1.557 Automatische opmerkingen */
.lc-auto-opmerking-wrap{margin:0 0 12px 0;padding:12px;border:1px solid #dbe4f0;border-radius:10px;background:#f8fafc;}
.lc-auto-opmerking-wrap label{display:block;font-weight:700;margin-bottom:6px;color:#1f2937;}
.lc-auto-opmerking{width:100%;min-height:82px;background:#fff;color:#374151;border:1px solid #cbd5e1;border-radius:8px;padding:10px;resize:vertical;}
.lc-auto-opmerking-wrap + textarea{margin-top:4px;}


/* v4.1.583 - mobiel: drawer/sidebar definitief uitzetten
   De mobiele bottom navigation is leidend. De oude hamburger-checkbox kan nog
   checked zijn, daarom neutraliseren we ook de checked-state. */
@media (max-width: 900px){
  html body .pfd-mobile-nav-toggle,
  html body .pfd-mobile-nav-backdrop{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  html body .pfd-mobile-nav-button{
    display:flex!important;
    position:sticky!important;
    top:0!important;
    z-index:50!important;
    width:100%!important;
    min-height:52px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    padding:9px 14px!important;
    background:linear-gradient(135deg,#071d44,#0B3C8C)!important;
    color:#fff!important;
    box-shadow:0 12px 28px rgba(15,23,42,.22)!important;
    cursor:default!important;
    pointer-events:none!important;
  }
  html body.admin-bar .pfd-mobile-nav-button{ top:46px!important; }
  html body .pfd-mobile-nav-button span{ display:none!important; }
  html body .pfd-mobile-nav-button strong{
    display:block!important;
    font-size:15px!important;
    font-weight:900!important;
    letter-spacing:-.01em!important;
  }

  html body .pfd-app{
    display:block!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    border-radius:0!important;
    overflow:visible!important;
  }

  html body .pfd-app > .pfd-sidebar,
  html body .pfd-sidebar,
  html body .pfd-mobile-nav-toggle:checked ~ .pfd-app > .pfd-sidebar,
  html body .pfd-mobile-nav-toggle:checked ~ .pfd-app .pfd-sidebar{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    position:absolute!important;
    left:-9999px!important;
    top:auto!important;
    bottom:auto!important;
    width:0!important;
    max-width:0!important;
    height:0!important;
    max-height:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    transform:none!important;
    transition:none!important;
  }

  html body .pfd-main{
    width:100%!important;
    max-width:100%!important;
    padding-top:18px!important;
    padding-bottom:76px!important;
  }
}

/* v4.1.584 - mobiele login/uitlog-link in bovenbalk */
@media (max-width:768px){
  body .pfd-mobile-nav-button{
    justify-content:space-between!important;
    pointer-events:auto!important;
  }
  body .pfd-mobile-auth-link{
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1!important;
    padding:7px 9px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.12)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    white-space:nowrap!important;
  }
  body .pfd-mobile-auth-link:hover,
  body .pfd-mobile-auth-link:focus{
    color:#fff!important;
    background:rgba(255,255,255,.18)!important;
    outline:0!important;
    box-shadow:0 0 0 2px rgba(255,255,255,.18)!important;
  }
  body .pfd-mobile-auth-icon{
    display:inline!important;
    font-size:13px!important;
    line-height:1!important;
  }
}


/* v4.1.585 - mobiele login/uitlog-link echt klikbaar maken
   Oudere mobiele CSS zette pointer-events uit op de topbar en verborg alle spans.
   Deze override maakt alleen de auth-link klikbaar, zonder hamburger/sidebar terug te brengen. */
@media (max-width:900px){
  html body .pfd-mobile-nav-button{
    pointer-events:auto!important;
    justify-content:space-between!important;
    z-index:10050!important;
  }
  html body .pfd-mobile-auth-link,
  html body .pfd-mobile-auth-link:link,
  html body .pfd-mobile-auth-link:visited{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    pointer-events:auto!important;
    position:relative!important;
    z-index:10060!important;
    cursor:pointer!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1!important;
    padding:8px 10px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.14)!important;
    border:1px solid rgba(255,255,255,.18)!important;
    white-space:nowrap!important;
    min-height:32px!important;
  }
  html body .pfd-mobile-nav-button .pfd-mobile-auth-icon,
  html body .pfd-mobile-auth-link .pfd-mobile-auth-icon{
    display:inline-flex!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    border-radius:0!important;
    background:transparent!important;
    font-size:13px!important;
    line-height:1!important;
  }
  html body .pfd-mobile-nav-backdrop,
  html body .pfd-mobile-nav-toggle{
    pointer-events:none!important;
  }
}

/* v4.1.625 - rustige navigatiekaarten onder de MJOB KPI-rij */
.pfd-dashboard-nav-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:14px 0 16px;
}
.pfd-dashboard-nav-card{
  min-height:92px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 17px;
  box-sizing:border-box;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:12px;
  text-decoration:none!important;
  color:#0f172a!important;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.pfd-dashboard-nav-card:hover{
  transform:translateY(-2px);
  box-shadow:0 6px 18px rgba(15,23,42,.07);
  border-color:#cbd5e1;
}
.pfd-dashboard-nav-icon{
  width:38px;
  height:38px;
  border-radius:9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 38px;
  font-size:18px;
  font-weight:800;
}
.pfd-dashboard-nav-copy{min-width:0;display:flex;flex-direction:column;gap:4px;}
.pfd-dashboard-nav-copy strong{font-size:14px;line-height:1.2;color:#0f172a;}
.pfd-dashboard-nav-copy small{font-size:11px;line-height:1.35;color:#64748b;font-weight:500;}
.pfd-dashboard-nav-arrow{margin-left:auto;color:#2563eb;font-size:18px;font-weight:800;}
.pfd-dashboard-nav-card--blue .pfd-dashboard-nav-icon{background:#e8f0fe;color:#185fa5;}
.pfd-dashboard-nav-card--purple .pfd-dashboard-nav-icon{background:#eeedfe;color:#534ab7;}
.pfd-dashboard-nav-card--green .pfd-dashboard-nav-icon{background:#e7f7ed;color:#17803d;}
.pfd-dashboard-nav-card--teal .pfd-dashboard-nav-icon{background:#e1f5f2;color:#087f78;}
@media(max-width:1100px){.pfd-dashboard-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.pfd-dashboard-nav-grid{grid-template-columns:1fr;}.pfd-dashboard-nav-card{min-height:76px;}}


/* v4.1.630 — klantenoverzicht: compact houden, namen en contact beter leesbaar */
@media (min-width:1051px){
  body .pfd-client-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:12px !important;
  }

  body .pfd-client-card{
    min-width:0 !important;
  }

  body .pfd-client-card .pfd-card-head{
    align-items:flex-start !important;
    gap:9px !important;
  }

  body .pfd-client-card .pfd-card-head > div:nth-child(2){
    min-width:0 !important;
    flex:1 1 auto !important;
  }

  body .pfd-client-card .pfd-card-head h3{
    white-space:normal !important;
    overflow:hidden !important;
    text-overflow:clip !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    line-clamp:2 !important;
    font-size:14px !important;
    line-height:1.13 !important;
    min-height:2.26em !important;
    margin:0 0 2px !important;
  }

  body .pfd-client-card .pfd-card-head span{
    font-size:10px !important;
    line-height:1.2 !important;
  }

  body .pfd-client-card .pfd-card-contact{
    font-size:11.5px !important;
    line-height:1.32 !important;
    overflow-wrap:anywhere !important;
  }

  body .pfd-client-card .pfd-card-contact small{
    font-size:10.5px !important;
    line-height:1.3 !important;
  }
}



/* v4.1.633 — MJOB-processtatus op liftkaarten */
.pfd-lift-process-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-top:8px;
}
.pfd-lift-process-status{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:5px 9px;
  font-size:10.5px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
  border:1px solid transparent;
}
.pfd-lift-process-status--todo{
  background:#f3f4f6;
  color:#475569;
  border-color:#e2e8f0;
}
.pfd-lift-process-status--review{
  background:#fff7ed;
  color:#c2410c;
  border-color:#fed7aa;
}
.pfd-lift-process-status--ready{
  background:#eef4ff;
  color:#1d4ed8;
  border-color:#dbeafe;
}
.pfd-lift-process-status--published{
  background:#ecfdf5;
  color:#15803d;
  border-color:#bbf7d0;
}
.pfd-lift-process-arrow{
  color:var(--pfd-blue);
  font-weight:800;
}


/* v4.1.634 — liftkaarten: exact één navigatiepijl */
.pfd-lift-card > .pfd-open,
.pfd-lift-card .pfd-open{
  display:none !important;
}
.pfd-lift-card::after,
.pfd-lift-card .pfd-card-head::after,
.pfd-lift-card .pfd-mini-stats::after{
  content:none !important;
  display:none !important;
}
.pfd-lift-process-arrow{
  display:inline-flex !important;
  margin-left:auto;
}


/* v4.1.638 — risico's en aandachtspunten scanbaar tonen */
.pfd-risico-list{
  display:flex;
  flex-direction:column;
  margin-top:4px;
}
.pfd-risico-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:6px 0;
  border-bottom:1px solid var(--pfd-line);
  font-size:12px;
  line-height:1.3;
}
.pfd-risico-row:last-child{border-bottom:0}
.pfd-risico-row strong{
  color:var(--pfd-text);
  font-weight:700;
  min-width:0;
}
.pfd-risico-row span{
  color:var(--pfd-muted);
  text-align:right;
  white-space:nowrap;
}


/* v4.1.640 — inspectiestatus zichtbaar in liftdossier */
.pfd-inspection-main{min-width:0;flex:1}
.pfd-inspection-title-line{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.pfd-inspection-status{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:4px 8px;
  font-size:10px;
  line-height:1;
  font-weight:800;
  white-space:nowrap;
  border:1px solid transparent;
}
.pfd-inspection-status--done{
  background:#ecfdf5;
  color:#15803d;
  border-color:#bbf7d0;
}
.pfd-inspection-status--pending{
  background:#fff7ed;
  color:#c2410c;
  border-color:#fed7aa;
}

/* v4.1.643 — MJOB editor: professionele werklijst zonder functionaliteit te verwijderen */
.pfd-mjob-editor-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:18px 0 10px;padding-top:16px;border-top:1px solid #e5edf7}.pfd-mjob-editor-head>div:first-child{display:flex;flex-direction:column;gap:2px}.pfd-mjob-editor-head strong{font-size:15px;color:#10213a}.pfd-mjob-editor-head span{font-size:11px;color:#6b7f99}.pfd-mjob-editor-tools{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.pfd-mjob-editor-tools select,.pfd-mjob-search{height:36px;border:1px solid #d8e3f0;border-radius:9px;background:#fff;color:#17304f;font-size:11px}.pfd-mjob-editor-tools select{padding:0 28px 0 10px;font-weight:700}.pfd-mjob-search{display:flex;align-items:center;gap:6px;padding:0 10px;min-width:220px}.pfd-mjob-search span{font-size:16px;color:#6b7f99}.pfd-mjob-search input{border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;width:100%;font-size:11px;color:#17304f;padding:0!important}.pfd-mjob-filter-count{display:inline-flex;align-items:center;height:32px;padding:0 9px;border-radius:999px;background:#eff6ff;color:#1d4ed8!important;font-weight:800!important;white-space:nowrap}.pfd-mjob-editor-wrap{border:1px solid #e1eaf5;border-radius:12px;background:#fff}.pfd-mjob-editor-table thead th{background:#f7faff;position:sticky;top:0;z-index:2;font-size:11px;text-transform:none;color:#506984}.pfd-mjob-editor-table tbody tr{transition:background .15s ease}.pfd-mjob-editor-table tbody tr:hover{background:#f9fbfe}.pfd-mjob-editor-table td{padding-top:10px;padding-bottom:10px}.pfd-mjob-editor-table td:nth-child(2){font-weight:800;color:#17304f;min-width:125px}.pfd-mjob-editor-table td:nth-child(3){min-width:260px;max-width:390px}.pfd-mjob-editor-table input[type=number],.pfd-mjob-editor-table select{background:#fff;border-color:#ccd9e8!important;min-height:31px}.pfd-mjob-editor-table input[type=number]:focus,.pfd-mjob-editor-table select:focus{outline:2px solid #bfdbfe;outline-offset:1px;border-color:#60a5fa!important}.pfd-mjob-editor-table .pfd-mjob-opslaan-btn{background:#eff6ff;border-color:#bfdbfe;color:#0b57b7;font-weight:800}.pfd-mjob-editor-table tr.pfd-mjob-filter-hidden{display:none}.pfd-mjob-no-results{padding:22px;text-align:center;color:#6b7f99;font-size:12px}
@media(max-width:900px){.pfd-mjob-editor-head{align-items:flex-start;flex-direction:column}.pfd-mjob-editor-tools{justify-content:flex-start;width:100%}.pfd-mjob-search{min-width:180px;flex:1}}


/* v4.1.644 — compacte MJOB filterwerkbalk; overschrijft globale form/select breedtes */
.pfd-mjob-editor-head{
  display:block !important;
  margin:16px 0 10px !important;
}
.pfd-mjob-editor-head > div:first-child{
  display:flex !important;
  flex-direction:row !important;
  align-items:baseline !important;
  gap:6px !important;
  margin-bottom:8px !important;
}
.pfd-mjob-editor-tools{
  display:grid !important;
  grid-template-columns:minmax(220px,1fr) 125px 145px auto !important;
  gap:8px !important;
  align-items:center !important;
  width:100% !important;
}
.pfd-mjob-editor-tools .pfd-mjob-search{
  display:flex !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  height:36px !important;
  margin:0 !important;
}
.pfd-mjob-editor-tools .pfd-mjob-search input{
  width:100% !important;
  min-width:0 !important;
  height:34px !important;
}
.pfd-mjob-editor-tools select{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:36px !important;
  margin:0 !important;
  display:block !important;
}
.pfd-mjob-editor-tools .pfd-mjob-filter-count{
  width:auto !important;
  justify-self:end !important;
  margin:0 !important;
}
@media(max-width:760px){
  .pfd-mjob-editor-tools{
    grid-template-columns:1fr 1fr !important;
  }
  .pfd-mjob-editor-tools .pfd-mjob-search{grid-column:1/-1}
  .pfd-mjob-editor-tools .pfd-mjob-filter-count{justify-self:start}
}

/* v4.1.646 — server-side MJOB filterbalk */
.pfd-mjob-editor-tools{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:8px !important;
  width:100% !important;
  flex-wrap:wrap !important;
}
.pfd-mjob-editor-tools .pfd-mjob-search{
  flex:1 1 260px !important;
  min-width:220px !important;
  width:auto !important;
  margin:0 !important;
}
.pfd-mjob-editor-tools select{
  flex:0 0 130px !important;
  width:130px !important;
  min-width:130px !important;
  max-width:150px !important;
  height:36px !important;
  margin:0 !important;
}
.pfd-mjob-filter-submit,.pfd-mjob-filter-reset{
  flex:0 0 auto !important;
  height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-decoration:none !important;
}


/* v4.1.647 — filterbalk blijft ook ná filteren exact compact op één regel */
.pfd-mjob-editor-tools{
  display:grid !important;
  grid-template-columns:minmax(140px,1fr) 92px 112px auto auto !important;
  align-items:center !important;
  gap:7px !important;
  width:100% !important;
  max-width:100% !important;
  flex-wrap:nowrap !important;
}
.pfd-mjob-editor-tools .pfd-mjob-search{
  grid-column:auto !important;
  min-width:0 !important;
  width:100% !important;
  max-width:none !important;
  height:36px !important;
  margin:0 !important;
  flex:none !important;
}
.pfd-mjob-editor-tools .pfd-mjob-search input{
  min-width:0 !important;
  width:100% !important;
}
.pfd-mjob-editor-tools select{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:36px !important;
  margin:0 !important;
  flex:none !important;
}
.pfd-mjob-filter-submit,
.pfd-mjob-filter-reset{
  width:auto !important;
  min-width:0 !important;
  height:36px !important;
  padding:0 11px !important;
  margin:0 !important;
  white-space:nowrap !important;
}
@media(max-width:700px){
  .pfd-mjob-editor-tools{
    grid-template-columns:minmax(110px,1fr) 82px 100px auto auto !important;
    gap:5px !important;
  }
  .pfd-mjob-filter-submit,
  .pfd-mjob-filter-reset{padding:0 8px !important;}
}


/* v4.1.648 — vaste compacte filterbalk zonder Wis */
.pfd-mjob-editor-tools{
  display:grid !important;
  grid-template-columns:minmax(220px,1fr) 130px 145px auto !important;
  gap:8px !important;
  align-items:center !important;
  width:100% !important;
  max-width:100% !important;
}
.pfd-mjob-editor-tools .pfd-mjob-search{
  grid-column:auto !important;
  min-width:0 !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
.pfd-mjob-editor-tools select{
  min-width:0 !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
.pfd-mjob-editor-tools .pfd-mjob-filter-submit{
  width:auto !important;
  min-width:58px !important;
  margin:0 !important;
  white-space:nowrap !important;
}

/* v4.1.649 — MJOB-regel opent exact technisch onderdeel + foto's */
.pfd-mjob-part-btn{display:inline-flex!important;align-items:center;justify-content:center;white-space:nowrap;font-size:10px!important;font-weight:800!important;text-decoration:none!important;background:#f0f7ff!important;color:#0b57b7!important;border-color:#bfdbfe!important;padding:4px 7px!important}
.pfd-part-group-highlight{box-shadow:0 0 0 3px rgba(37,99,235,.14),0 10px 28px rgba(15,23,42,.08)}
.pfd-part-photo-section{border-top:1px solid var(--pfd-line);margin-top:12px;padding-top:12px}
.pfd-part-photo-title{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--pfd-muted);font-weight:800;margin-bottom:8px}
.pfd-part-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
.pfd-part-photo{display:block;overflow:hidden;border:1px solid var(--pfd-line);border-radius:10px;background:#fff;color:var(--pfd-text);text-decoration:none}
.pfd-part-photo img{display:block;width:100%;height:90px;object-fit:cover}
.pfd-part-photo span{display:block;padding:6px 8px;font-size:10px;color:var(--pfd-muted)}

/* v4.1.650 — apart technisch onderdeeldossier */
.pfd-component-dossier{max-width:1180px;margin:0 auto}
.pfd-component-dossier-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:12px;color:var(--pfd-muted);font-weight:800}
.pfd-component-back{color:#0b57b7;text-decoration:none}
.pfd-component-hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0b3f8a,#0a58ca);color:#fff;border-radius:18px;padding:24px 26px;margin-bottom:16px}
.pfd-component-eyebrow{display:block;text-transform:uppercase;letter-spacing:.8px;font-size:10px;font-weight:900;opacity:.72;margin-bottom:5px}
.pfd-component-hero h2{margin:0;font-size:26px;color:#fff}
.pfd-component-hero p{margin:6px 0 0;opacity:.8}
.pfd-component-status{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);padding:8px 14px;border-radius:999px;font-weight:900}
.pfd-component-dossier-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px}
.pfd-component-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pfd-component-field-grid>div{border:1px solid var(--pfd-line);background:#f8fafc;border-radius:10px;padding:10px 12px}
.pfd-component-field-grid span{display:block;color:var(--pfd-muted);font-size:10px;text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}
.pfd-component-field-grid strong{font-size:13px;word-break:break-word}
.pfd-component-mjob-card dl{margin:0;display:grid;gap:0}
.pfd-component-mjob-card dl>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--pfd-line);padding:9px 0}
.pfd-component-mjob-card dt{color:var(--pfd-muted);font-size:11px}
.pfd-component-mjob-card dd{margin:0;font-weight:800;font-size:12px;text-align:right}
.pfd-component-note{margin:12px 0;padding:10px 12px;background:#f8fafc;border-radius:10px;font-size:11px}
.pfd-component-note p{margin:5px 0 0;color:var(--pfd-muted);line-height:1.5}
.pfd-component-photo-card{margin-top:16px}
.pfd-component-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.pfd-component-photo-grid a{display:block;border-radius:12px;overflow:hidden;border:1px solid var(--pfd-line);background:#f8fafc}
.pfd-component-photo-grid img{display:block;width:100%;height:150px;object-fit:cover}
@media(max-width:800px){.pfd-component-dossier-grid{grid-template-columns:1fr}.pfd-component-field-grid{grid-template-columns:1fr}.pfd-component-hero{align-items:flex-start;gap:12px}.pfd-component-hero h2{font-size:21px}}

/* v4.1.651 — gelikt compleet onderdeeldossier */
.pfd-component-dossier-651{max-width:1100px!important}
.pfd-component-hero-651{margin-bottom:12px!important}
.pfd-condition-pill{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);font-weight:900}
.pfd-identity-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 14px}
.pfd-identity-strip>div{background:#fff;border:1px solid var(--pfd-line);border-radius:12px;padding:12px 14px;min-height:62px}
.pfd-identity-strip span,.pfd-condition-summary span{display:block;color:var(--pfd-muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}
.pfd-identity-strip strong{font-size:14px;word-break:break-word}
.pfd-component-grid-651{grid-template-columns:minmax(0,1.6fr) minmax(270px,.8fr)!important}
.pfd-condition-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pfd-condition-summary>div{padding:12px;background:#f8fafc;border:1px solid var(--pfd-line);border-radius:10px}
.pfd-findings{margin-top:12px;padding:12px 14px;border-radius:10px;background:#fffaf0;border:1px solid #fde7bd}
.pfd-findings>strong{font-size:11px}.pfd-findings p{font-size:11px;line-height:1.5;margin:6px 0 0}
.pfd-mjob-big{background:#eef6ff;border:1px solid #dbeafe;border-radius:11px;padding:12px;margin-bottom:8px}
.pfd-mjob-big span{display:block;color:#64748b;font-size:9px;text-transform:uppercase;font-weight:800}.pfd-mjob-big strong{display:block;font-size:23px;color:#0b3f8a;margin-top:2px}
.pfd-photo-card-651{margin-top:14px!important}
.pfd-photo-grid-651{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))!important}
.pfd-photo-grid-651 a{position:relative;text-decoration:none!important}
.pfd-photo-grid-651 img{height:120px!important}
.pfd-photo-grid-651 span{display:block;padding:6px 8px;font-size:9px;color:var(--pfd-muted);font-weight:700}
.pfd-all-tech-651{margin-top:14px}
.pfd-tech-table-651{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.pfd-tech-table-651>div{display:grid;grid-template-columns:minmax(130px,.8fr) 1.2fr;gap:10px;padding:8px 2px;border-bottom:1px solid var(--pfd-line)}
.pfd-tech-table-651 span{font-size:10px;color:var(--pfd-muted)}.pfd-tech-table-651 strong{font-size:10.5px;word-break:break-word}
@media(max-width:800px){.pfd-identity-strip{grid-template-columns:1fr 1fr}.pfd-component-grid-651,.pfd-tech-table-651{grid-template-columns:1fr!important}}


/* =========================================================
   v4.1.652 — PREMIUM DESIGN PASS TECHNISCH ONDERDEELDOSSIER
   Alleen presentatie; datastructuur en koppelingen ongewijzigd.
   ========================================================= */

.pfd-component-dossier-651{
  max-width:1120px!important;
  padding-bottom:28px;
}

/* top navigation */
.pfd-component-dossier-651 .pfd-component-dossier-top{
  min-height:34px;
  margin-bottom:12px;
}
.pfd-component-dossier-651 .pfd-component-back{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  border:1px solid #dbe7f5;
  border-radius:999px;
  background:#fff;
  box-shadow:0 3px 10px rgba(15,23,42,.04);
  font-size:10px;
  font-weight:850;
}
.pfd-component-dossier-651 .pfd-component-dossier-top>span{
  font-size:9px;
  letter-spacing:.55px;
  text-transform:uppercase;
  color:#8a9ab1;
}

/* premium component hero */
.pfd-component-hero-651{
  position:relative;
  overflow:hidden;
  min-height:122px;
  padding:24px 28px!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 88% 16%,rgba(84,166,255,.28),transparent 28%),
    linear-gradient(118deg,#082d69 0%,#0754b8 58%,#0876dc 100%)!important;
  box-shadow:0 16px 34px rgba(5,64,142,.18);
  border:1px solid rgba(255,255,255,.13);
}
.pfd-component-hero-651:after{
  content:"";
  position:absolute;
  right:-60px;
  bottom:-110px;
  width:260px;
  height:260px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:50%;
}
.pfd-component-hero-651>div{position:relative;z-index:1}
.pfd-component-hero-651 .pfd-component-eyebrow{
  font-size:9px;
  letter-spacing:1.25px;
  opacity:.72;
}
.pfd-component-hero-651 h2{
  font-size:30px!important;
  line-height:1.05;
  letter-spacing:-.7px;
  margin-top:5px!important;
}
.pfd-component-hero-651 p{
  margin-top:8px!important;
  font-size:11px;
  opacity:.78;
}
.pfd-component-hero-651 .pfd-condition-pill{
  position:relative;
  z-index:2;
  min-width:72px;
  text-align:center;
  padding:8px 15px;
  background:rgba(255,255,255,.96);
  color:#08704b;
  border:0;
  box-shadow:0 5px 15px rgba(0,0,0,.10);
  font-size:10px;
}

/* identity/specification bar */
.pfd-component-dossier-651 .pfd-identity-strip{
  gap:9px!important;
  margin-top:12px!important;
  margin-bottom:14px!important;
}
.pfd-component-dossier-651 .pfd-identity-strip>div{
  position:relative;
  min-height:70px;
  padding:13px 15px!important;
  border:1px solid #dfe8f3!important;
  border-radius:13px!important;
  box-shadow:0 5px 16px rgba(15,23,42,.035);
}
.pfd-component-dossier-651 .pfd-identity-strip>div:before{
  content:"";
  position:absolute;
  left:0;
  top:14px;
  bottom:14px;
  width:3px;
  border-radius:0 3px 3px 0;
  background:#2c7be5;
  opacity:.72;
}
.pfd-component-dossier-651 .pfd-identity-strip span{
  margin-left:4px;
  font-size:8.5px;
  letter-spacing:.7px;
}
.pfd-component-dossier-651 .pfd-identity-strip strong{
  display:block;
  margin-left:4px;
  margin-top:7px;
  font-size:13px!important;
  line-height:1.25;
  color:#13233c;
}

/* cards */
.pfd-component-dossier-651 .pfd-card{
  border:1px solid #dfe8f3!important;
  border-radius:15px!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;
  background:#fff!important;
}
.pfd-component-dossier-651 .pfd-section-head{
  margin-bottom:13px;
  padding-bottom:10px;
  border-bottom:1px solid #edf2f7;
}
.pfd-component-dossier-651 .pfd-section-head h3{
  margin:0;
  font-size:13px;
  letter-spacing:-.15px;
  color:#10213a;
}
.pfd-component-dossier-651 .pfd-section-head span{
  font-size:8.5px;
  color:#8796aa;
  font-weight:750;
}

/* condition / inspection */
.pfd-component-dossier-651 .pfd-condition-summary{
  gap:9px;
}
.pfd-component-dossier-651 .pfd-condition-summary>div{
  min-height:61px;
  padding:12px 14px;
  background:#f7faff;
  border-color:#e5edf7;
}
.pfd-component-dossier-651 .pfd-condition-summary strong{
  display:block;
  margin-top:5px;
  font-size:13px;
  color:#13233c;
}
.pfd-component-dossier-651 .pfd-findings{
  margin-top:10px;
  padding:13px 15px;
  background:#f8fbff;
  border:1px solid #e4edf8;
  border-left:3px solid #2c7be5;
}
.pfd-component-dossier-651 .pfd-findings>strong{
  color:#173154;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.45px;
}
.pfd-component-dossier-651 .pfd-findings p{
  margin-top:7px;
  color:#41536c;
  line-height:1.55;
}

/* MJOB focal card */
.pfd-component-dossier-651 .pfd-component-mjob-card{
  background:linear-gradient(180deg,#fff 0%,#f9fbfe 100%)!important;
}
.pfd-component-dossier-651 .pfd-mjob-big{
  position:relative;
  overflow:hidden;
  padding:14px 15px;
  background:linear-gradient(135deg,#edf6ff,#f8fbff);
  border:1px solid #dceafa;
}
.pfd-component-dossier-651 .pfd-mjob-big:after{
  content:"";
  position:absolute;
  width:70px;
  height:70px;
  border-radius:50%;
  right:-25px;
  top:-30px;
  background:rgba(44,123,229,.08);
}
.pfd-component-dossier-651 .pfd-mjob-big strong{
  font-size:27px!important;
  letter-spacing:-.7px;
}
.pfd-component-dossier-651 .pfd-component-mjob-card dl>div{
  padding:10px 2px;
}
.pfd-component-dossier-651 .pfd-component-mjob-card dt{
  font-size:9.5px;
}
.pfd-component-dossier-651 .pfd-component-mjob-card dd{
  color:#172943;
  font-size:11px;
}

/* photos as a real gallery */
.pfd-component-dossier-651 .pfd-photo-card-651{
  padding-bottom:16px;
}
.pfd-component-dossier-651 .pfd-photo-grid-651{
  grid-template-columns:repeat(auto-fill,minmax(185px,1fr))!important;
  gap:12px!important;
}
.pfd-component-dossier-651 .pfd-photo-grid-651 a{
  overflow:hidden;
  border:1px solid #dce6f1!important;
  border-radius:13px!important;
  background:#f8fafc;
  box-shadow:0 5px 14px rgba(15,23,42,.05);
  transition:transform .16s ease,box-shadow .16s ease;
}
.pfd-component-dossier-651 .pfd-photo-grid-651 a:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(15,23,42,.10);
}
.pfd-component-dossier-651 .pfd-photo-grid-651 img{
  height:165px!important;
  background:#eef3f8;
  transition:transform .2s ease;
}
.pfd-component-dossier-651 .pfd-photo-grid-651 a:hover img{
  transform:scale(1.025);
}
.pfd-component-dossier-651 .pfd-photo-grid-651 span{
  padding:8px 10px!important;
  background:#fff;
  font-size:9px!important;
}

/* technical passport */
.pfd-component-dossier-651 .pfd-all-tech-651{
  margin-top:14px;
}
.pfd-component-dossier-651 .pfd-tech-table-651{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:24px!important;
  row-gap:0!important;
}
.pfd-component-dossier-651 .pfd-tech-table-651>div{
  min-height:42px;
  padding:9px 4px!important;
  border-bottom:1px solid #edf2f7!important;
  align-items:center;
}
.pfd-component-dossier-651 .pfd-tech-table-651 span{
  font-size:9.5px!important;
  color:#78889d!important;
  line-height:1.35;
}
.pfd-component-dossier-651 .pfd-tech-table-651 strong{
  font-size:10.5px!important;
  line-height:1.4;
  color:#182a43;
  font-weight:750!important;
}

/* responsive */
@media(max-width:900px){
  .pfd-component-dossier-651 .pfd-photo-grid-651{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .pfd-component-hero-651{padding:20px!important}
  .pfd-component-hero-651 h2{font-size:25px!important}
  .pfd-component-dossier-651 .pfd-identity-strip{grid-template-columns:1fr 1fr!important}
  .pfd-component-dossier-651 .pfd-tech-table-651{grid-template-columns:1fr!important}
  .pfd-component-dossier-651 .pfd-photo-grid-651{grid-template-columns:1fr 1fr!important}
}


/* =========================================================
   v4.1.654 — MJOB tabel zonder horizontale scrollbar
   Volledige editor past binnen beschikbare breedte.
   ========================================================= */

.pfd-mjob-editor-wrap{
  overflow-x:visible !important;
  width:100% !important;
}

.pfd-mjob-editor-table{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
  border-collapse:collapse;
}

.pfd-mjob-editor-table th,
.pfd-mjob-editor-table td{
  min-width:0 !important;
  max-width:none !important;
  white-space:normal !important;
  overflow-wrap:anywhere;
  word-break:normal;
  vertical-align:top;
}

/* Verdeling kolommen */
.pfd-mjob-editor-table th:nth-child(1),
.pfd-mjob-editor-table td:nth-child(1){width:8% !important;}

.pfd-mjob-editor-table th:nth-child(2),
.pfd-mjob-editor-table td:nth-child(2){width:18% !important;}

.pfd-mjob-editor-table th:nth-child(3),
.pfd-mjob-editor-table td:nth-child(3){width:27% !important;}

.pfd-mjob-editor-table th:nth-child(4),
.pfd-mjob-editor-table td:nth-child(4){width:12% !important;}

.pfd-mjob-editor-table th:nth-child(5),
.pfd-mjob-editor-table td:nth-child(5){width:13% !important;}

.pfd-mjob-editor-table th:nth-child(6),
.pfd-mjob-editor-table td:nth-child(6){width:9% !important;}

.pfd-mjob-editor-table th:nth-child(7),
.pfd-mjob-editor-table td:nth-child(7){width:13% !important;}

/* Inputs altijd binnen kolom houden */
.pfd-mjob-editor-table input[type=number],
.pfd-mjob-editor-table select{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

/* Jaarveld compacter */
.pfd-mjob-editor-table .pfd-mjob-jaar-input{
  padding-left:6px !important;
  padding-right:4px !important;
}

/* Kosten/uren compacter */
.pfd-mjob-editor-table .pfd-mjob-kosten-input,
.pfd-mjob-editor-table .pfd-mjob-uren-input{
  width:100% !important;
}

/* Actieknoppen compact en wrappen binnen kolom */
.pfd-mjob-row-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:4px !important;
  align-items:center !important;
  white-space:normal !important;
}

.pfd-mjob-part-btn,
.pfd-mjob-opslaan-btn,
.pfd-mjob-delete-btn{
  flex:0 1 auto !important;
  max-width:100% !important;
}

.pfd-mjob-part-btn{
  font-size:9px !important;
  padding:4px 6px !important;
}

.pfd-mjob-opslaan-btn{
  font-size:9px !important;
  padding:4px 6px !important;
}

.pfd-mjob-delete-btn{
  padding:4px 6px !important;
}

/* Lange toelichtingen netjes binnen actie-kolom */
.pfd-mjob-editor-table td:nth-child(3) small{
  display:block;
  margin-top:3px;
  line-height:1.35;
  word-break:break-word;
}

/* Mobiel/tablet: tabel wordt kaartenachtig, nog steeds zonder horizontale scroll */
@media(max-width:900px){
  .pfd-mjob-editor-table{
    table-layout:auto !important;
  }
  .pfd-mjob-editor-table th,
  .pfd-mjob-editor-table td{
    font-size:10px !important;
  }
  .pfd-mjob-editor-table th:nth-child(1),
  .pfd-mjob-editor-table td:nth-child(1){width:9% !important;}
  .pfd-mjob-editor-table th:nth-child(2),
  .pfd-mjob-editor-table td:nth-child(2){width:18% !important;}
  .pfd-mjob-editor-table th:nth-child(3),
  .pfd-mjob-editor-table td:nth-child(3){width:25% !important;}
  .pfd-mjob-editor-table th:nth-child(4),
  .pfd-mjob-editor-table td:nth-child(4){width:12% !important;}
  .pfd-mjob-editor-table th:nth-child(5),
  .pfd-mjob-editor-table td:nth-child(5){width:13% !important;}
  .pfd-mjob-editor-table th:nth-child(6),
  .pfd-mjob-editor-table td:nth-child(6){width:9% !important;}
  .pfd-mjob-editor-table th:nth-child(7),
  .pfd-mjob-editor-table td:nth-child(7){width:14% !important;}
}


/* =========================================================
   v4.1.655 — breder desktop werkvlak
   Sidebar blijft gelijk; dossier/content benut meer schermbreedte.
   Mobiel/tablet ongewijzigd.
   ========================================================= */
@media (min-width:1200px){

  /* Dashboard shell / hoofdgebied */
  .pfd-dashboard,
  .pfd-dashboard-shell,
  .pfd-dashboard-main,
  .pfd-main,
  .pfd-main-content,
  .pfd-content,
  .pfd-content-wrap,
  .pfd-lift-detail,
  .pfd-lift-detail-wrap{
    max-width:none !important;
  }

  /* Het rechter werkvlak mag vrijwel alle ruimte naast de sidebar gebruiken */
  .pfd-dashboard-main,
  .pfd-main,
  .pfd-main-content,
  .pfd-content{
    width:calc(100% - 12px) !important;
  }

  /* Specifiek de lift-detail / tabinhoud ruimer */
  .pfd-lift-detail,
  .pfd-lift-detail-wrap,
  .pfd-wide-card,
  #mjob{
    max-width:none !important;
    width:100% !important;
  }

  /* Onderdeeldossier mag op brede schermen ook meer lucht krijgen */
  .pfd-component-dossier-651{
    max-width:1380px !important;
  }

  /* MJOB editor benut volledige kaartbreedte */
  .pfd-mjob-editor-wrap,
  .pfd-mjob-editor-table{
    width:100% !important;
    max-width:none !important;
  }
}

@media (min-width:1500px){
  .pfd-component-dossier-651{
    max-width:1500px !important;
  }
}


/* =========================================================
   v4.1.656 — extra breed desktop werkvlak
   Sidebar blijft vast; rechter contentvlak gebruikt vrijwel
   alle beschikbare schermbreedte.
   ========================================================= */
@media (min-width:1200px){

  body .pfd-app{
    width:calc(100vw - 24px) !important;
    max-width:none !important;
    margin-left:12px !important;
    margin-right:12px !important;
  }

  body .pfd-main{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }

  body .pfd-main > *,
  body .pfd-lift-detail,
  body .pfd-lift-detail-wrap,
  body .pfd-wide-card,
  body #mjob{
    max-width:none !important;
  }

  body .pfd-mjob-editor-wrap{
    width:100% !important;
    max-width:none !important;
    overflow-x:hidden !important;
  }

  body .pfd-mjob-editor-table{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }

  /* Extra ruimte vooral naar Onderdeel en Actie */
  body .pfd-mjob-editor-table th:nth-child(1),
  body .pfd-mjob-editor-table td:nth-child(1){width:7% !important;}

  body .pfd-mjob-editor-table th:nth-child(2),
  body .pfd-mjob-editor-table td:nth-child(2){width:19% !important;}

  body .pfd-mjob-editor-table th:nth-child(3),
  body .pfd-mjob-editor-table td:nth-child(3){width:30% !important;}

  body .pfd-mjob-editor-table th:nth-child(4),
  body .pfd-mjob-editor-table td:nth-child(4){width:10% !important;}

  body .pfd-mjob-editor-table th:nth-child(5),
  body .pfd-mjob-editor-table td:nth-child(5){width:12% !important;}

  body .pfd-mjob-editor-table th:nth-child(6),
  body .pfd-mjob-editor-table td:nth-child(6){width:8% !important;}

  body .pfd-mjob-editor-table th:nth-child(7),
  body .pfd-mjob-editor-table td:nth-child(7){width:14% !important;}
}

@media (min-width:1600px){
  body .pfd-app{
    width:calc(100vw - 32px) !important;
    margin-left:16px !important;
    margin-right:16px !important;
  }
  body .pfd-main{
    padding-left:20px !important;
    padding-right:20px !important;
  }
}


/* =========================================================
   v4.1.657 — bredere kostenvelden in MJOB-editor
   Ruimte verschoven van Uren/Acties naar Kosten.
   ========================================================= */
@media (min-width:1200px){

  body .pfd-mjob-editor-table th:nth-child(1),
  body .pfd-mjob-editor-table td:nth-child(1){width:7% !important;}

  body .pfd-mjob-editor-table th:nth-child(2),
  body .pfd-mjob-editor-table td:nth-child(2){width:18% !important;}

  body .pfd-mjob-editor-table th:nth-child(3),
  body .pfd-mjob-editor-table td:nth-child(3){width:28% !important;}

  body .pfd-mjob-editor-table th:nth-child(4),
  body .pfd-mjob-editor-table td:nth-child(4){width:10% !important;}

  /* Kosten krijgt bewust extra ruimte */
  body .pfd-mjob-editor-table th:nth-child(5),
  body .pfd-mjob-editor-table td:nth-child(5){width:16% !important;}

  /* Uren kan compacter */
  body .pfd-mjob-editor-table th:nth-child(6),
  body .pfd-mjob-editor-table td:nth-child(6){width:7% !important;}

  body .pfd-mjob-editor-table th:nth-child(7),
  body .pfd-mjob-editor-table td:nth-child(7){width:14% !important;}

  body .pfd-mjob-editor-table td:nth-child(5){
    white-space:nowrap !important;
  }

  body .pfd-mjob-kosten-input{
    width:calc(100% - 14px) !important;
    min-width:88px !important;
    max-width:none !important;
    box-sizing:border-box !important;
    padding-left:7px !important;
    padding-right:7px !important;
    font-variant-numeric:tabular-nums;
  }

  body .pfd-mjob-uren-input{
    min-width:48px !important;
    padding-left:5px !important;
    padding-right:5px !important;
  }
}


/* =========================================================
   v4.1.658 — mobiele MJOB-editor als kaarten
   Desktop blijft ongewijzigd.
   ========================================================= */
@media (max-width: 768px){

  /* Filters mobiel overzichtelijk stapelen */
  .pfd-mjob-editor-tools{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  .pfd-mjob-editor-tools .pfd-mjob-search{
    grid-column:1 / -1 !important;
    width:100% !important;
    min-width:0 !important;
  }
  .pfd-mjob-editor-tools select{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
  .pfd-mjob-filter-submit{
    grid-column:1 / -1 !important;
    width:100% !important;
    justify-content:center !important;
  }

  /* Tabel verandert in losse kaarten */
  .pfd-mjob-editor-wrap{
    overflow:visible !important;
    border:0 !important;
    background:transparent !important;
  }

  .pfd-mjob-editor-table,
  .pfd-mjob-editor-table tbody,
  .pfd-mjob-editor-table tr,
  .pfd-mjob-editor-table td{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .pfd-mjob-editor-table{
    table-layout:auto !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    background:transparent !important;
  }

  .pfd-mjob-editor-table thead{
    display:none !important;
  }

  .pfd-mjob-editor-table tbody{
    display:grid !important;
    gap:12px !important;
  }

  .pfd-mjob-editor-table tbody tr{
    margin:0 !important;
    padding:14px !important;
    border:1px solid #dce6f1 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 6px 18px rgba(15,23,42,.05);
  }

  .pfd-mjob-editor-table tbody td{
    position:relative;
    padding:8px 0 8px 104px !important;
    border:0 !important;
    border-bottom:1px solid #eef3f8 !important;
    white-space:normal !important;
    overflow:visible !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    min-height:36px;
    font-size:12px !important;
  }

  .pfd-mjob-editor-table tbody td:last-child{
    border-bottom:0 !important;
    padding-bottom:0 !important;
  }

  .pfd-mjob-editor-table tbody td:before{
    content:attr(data-label);
    position:absolute;
    left:0;
    top:10px;
    width:92px;
    color:#718198;
    font-size:9px;
    line-height:1.2;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.45px;
  }

  /* Onderdeel wordt kaarttitel */
  .pfd-mjob-editor-table tbody td[data-label="Onderdeel"]{
    padding:0 0 10px !important;
    border-bottom:1px solid #e7eef6 !important;
    font-size:15px !important;
    font-weight:850 !important;
    color:#11243e !important;
  }
  .pfd-mjob-editor-table tbody td[data-label="Onderdeel"]:before{
    display:none !important;
  }

  /* Actie mag ruimer lezen */
  .pfd-mjob-editor-table tbody td[data-label="Actie"]{
    padding-top:10px !important;
    line-height:1.35 !important;
  }
  .pfd-mjob-editor-table tbody td[data-label="Actie"] small{
    display:block !important;
    margin-top:5px !important;
    color:#718198 !important;
    font-size:10px !important;
    line-height:1.4 !important;
  }

  /* Inputs mobiel weer normale breedte */
  .pfd-mjob-editor-table input[type=number],
  .pfd-mjob-editor-table select,
  .pfd-mjob-kosten-input,
  .pfd-mjob-uren-input,
  .pfd-mjob-jaar-input{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:36px !important;
    box-sizing:border-box !important;
    font-size:12px !important;
  }

  .pfd-mjob-editor-table td[data-label="Kosten"] > div{
    width:100% !important;
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    gap:5px !important;
    align-items:center !important;
  }

  /* Acties groot genoeg voor touch */
  .pfd-mjob-row-actions{
    display:grid !important;
    grid-template-columns:1fr auto 1fr !important;
    gap:7px !important;
    width:100% !important;
    white-space:normal !important;
  }

  .pfd-mjob-part-btn,
  .pfd-mjob-opslaan-btn{
    min-height:36px !important;
    width:100% !important;
    justify-content:center !important;
    font-size:10px !important;
    padding:6px 8px !important;
  }

  .pfd-mjob-delete-btn{
    width:36px !important;
    min-width:36px !important;
    height:36px !important;
    padding:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  /* De grote MJOB samenvatting en componentkaarten ook netter stapelen */
  .pfd-mjob-summary{
    grid-template-columns:1fr !important;
  }

  .pfd-mjob-component-grid{
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  .pfd-mjob-bars{
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    padding-bottom:5px;
  }
}

@media (max-width: 440px){
  .pfd-mjob-component-grid{
    grid-template-columns:1fr !important;
  }
  .pfd-mjob-editor-table tbody td{
    padding-left:92px !important;
  }
  .pfd-mjob-editor-table tbody td:before{
    width:80px !important;
  }
}


/* =========================================================
   v4.1.659 — mobiele/tablet MJOB kaartweergave
   Fix: breakpoint sluit nu exact aan op desktop (>=1200px).
   ========================================================= */
@media (max-width:1199px){

  .pfd-mjob-editor-head{
    display:block !important;
  }

  .pfd-mjob-editor-tools{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:8px !important;
    width:100% !important;
    margin-top:10px !important;
  }
  .pfd-mjob-editor-tools .pfd-mjob-search{
    grid-column:1 / -1 !important;
    width:100% !important;
    min-width:0 !important;
  }
  .pfd-mjob-editor-tools .pfd-mjob-search input,
  .pfd-mjob-editor-tools select{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  .pfd-mjob-filter-submit{
    grid-column:1 / -1 !important;
    width:100% !important;
  }

  .pfd-mjob-table-wrap.pfd-mjob-editor-wrap{
    overflow:visible !important;
    width:100% !important;
    max-width:100% !important;
    border:0 !important;
    background:transparent !important;
  }

  table.pfd-mjob-editor-table,
  table.pfd-mjob-editor-table tbody{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:auto !important;
  }

  table.pfd-mjob-editor-table thead{
    display:none !important;
  }

  table.pfd-mjob-editor-table tbody tr{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:0 12px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    margin:0 0 12px !important;
    padding:14px !important;
    background:#fff !important;
    border:1px solid #dce6f1 !important;
    border-radius:14px !important;
    box-shadow:0 6px 18px rgba(15,23,42,.05) !important;
  }

  table.pfd-mjob-editor-table tbody td{
    display:block !important;
    position:relative !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    padding:23px 0 9px !important;
    border:0 !important;
    border-bottom:1px solid #edf2f7 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    overflow:visible !important;
    font-size:12px !important;
  }

  table.pfd-mjob-editor-table tbody td::before{
    content:attr(data-label) !important;
    display:block !important;
    position:absolute !important;
    top:7px !important;
    left:0 !important;
    width:auto !important;
    color:#7a899e !important;
    font-size:8px !important;
    line-height:1 !important;
    font-weight:850 !important;
    text-transform:uppercase !important;
    letter-spacing:.55px !important;
  }

  table.pfd-mjob-editor-table tbody td[data-label="Onderdeel"]{
    grid-column:1 / -1 !important;
    order:-10 !important;
    padding:0 0 11px !important;
    margin-bottom:2px !important;
    font-size:15px !important;
    line-height:1.25 !important;
    font-weight:850 !important;
    color:#10233e !important;
  }
  table.pfd-mjob-editor-table tbody td[data-label="Onderdeel"]::before{
    display:none !important;
  }

  table.pfd-mjob-editor-table tbody td[data-label="Actie"]{
    grid-column:1 / -1 !important;
    order:-9 !important;
    padding-top:25px !important;
  }
  table.pfd-mjob-editor-table tbody td[data-label="Actie"] small{
    display:block !important;
    margin-top:5px !important;
    font-size:10px !important;
    line-height:1.4 !important;
    color:#74849a !important;
  }

  table.pfd-mjob-editor-table tbody td[data-label="Jaar"]{order:-8 !important;}
  table.pfd-mjob-editor-table tbody td[data-label="Prioriteit"]{order:-7 !important;}
  table.pfd-mjob-editor-table tbody td[data-label="Kosten"]{order:-6 !important;}
  table.pfd-mjob-editor-table tbody td[data-label="Uren"]{order:-5 !important;}

  table.pfd-mjob-editor-table tbody td[data-label="Acties"]{
    grid-column:1 / -1 !important;
    order:10 !important;
    border-bottom:0 !important;
    padding-bottom:0 !important;
  }

  table.pfd-mjob-editor-table input[type=number],
  table.pfd-mjob-editor-table select,
  table.pfd-mjob-editor-table .pfd-mjob-jaar-input,
  table.pfd-mjob-editor-table .pfd-mjob-kosten-input,
  table.pfd-mjob-editor-table .pfd-mjob-uren-input{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:36px !important;
    box-sizing:border-box !important;
    font-size:12px !important;
  }

  table.pfd-mjob-editor-table td[data-label="Kosten"] > div{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    gap:5px !important;
    width:100% !important;
    align-items:center !important;
  }

  table.pfd-mjob-editor-table .pfd-mjob-row-actions{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr) !important;
    gap:7px !important;
    width:100% !important;
  }
  table.pfd-mjob-editor-table .pfd-mjob-part-btn,
  table.pfd-mjob-editor-table .pfd-mjob-opslaan-btn{
    width:100% !important;
    min-width:0 !important;
    min-height:38px !important;
    padding:6px 7px !important;
    justify-content:center !important;
    text-align:center !important;
    white-space:normal !important;
  }
  table.pfd-mjob-editor-table .pfd-mjob-delete-btn{
    width:38px !important;
    min-width:38px !important;
    height:38px !important;
    padding:0 !important;
  }
}

@media (max-width:520px){
  .pfd-mjob-editor-tools{
    grid-template-columns:1fr !important;
  }
  .pfd-mjob-editor-tools .pfd-mjob-search,
  .pfd-mjob-filter-submit{
    grid-column:1 !important;
  }
  table.pfd-mjob-editor-table tbody tr{
    grid-template-columns:1fr 1fr !important;
    padding:12px !important;
  }
}


/* =========================================================
   v4.1.660 — HARD FIX mobiele MJOB-kaarten
   Overschrijft expliciet alle desktop nth-child kolombreedtes.
   ========================================================= */
@media (max-width:1199px){

  body .pfd-mjob-editor-table,
  body .pfd-mjob-editor-table tbody{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  body .pfd-mjob-editor-table tbody tr{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    padding:14px !important;
    margin:0 0 12px !important;
  }

  /* Desktop kolombreedtes volledig neutraliseren */
  body .pfd-mjob-editor-table tbody td,
  body .pfd-mjob-editor-table tbody td:nth-child(1),
  body .pfd-mjob-editor-table tbody td:nth-child(2),
  body .pfd-mjob-editor-table tbody td:nth-child(3),
  body .pfd-mjob-editor-table tbody td:nth-child(4),
  body .pfd-mjob-editor-table tbody td:nth-child(5),
  body .pfd-mjob-editor-table tbody td:nth-child(6),
  body .pfd-mjob-editor-table tbody td:nth-child(7){
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    overflow:visible !important;
  }

  /* Titel */
  body .pfd-mjob-editor-table tbody td[data-label="Onderdeel"]{
    grid-column:1 / -1 !important;
    width:100% !important;
    padding:0 0 10px !important;
    margin:0 0 2px !important;
    font-size:15px !important;
    line-height:1.25 !important;
  }

  /* Actie volle breedte */
  body .pfd-mjob-editor-table tbody td[data-label="Actie"]{
    grid-column:1 / -1 !important;
    width:100% !important;
    padding:24px 0 10px !important;
  }

  /* 2x2 eigenschappen */
  body .pfd-mjob-editor-table tbody td[data-label="Jaar"],
  body .pfd-mjob-editor-table tbody td[data-label="Prioriteit"],
  body .pfd-mjob-editor-table tbody td[data-label="Kosten"],
  body .pfd-mjob-editor-table tbody td[data-label="Uren"]{
    width:100% !important;
    min-width:0 !important;
    padding:24px 0 10px !important;
  }

  body .pfd-mjob-editor-table tbody td[data-label="Jaar"],
  body .pfd-mjob-editor-table tbody td[data-label="Kosten"]{
    padding-right:6px !important;
  }
  body .pfd-mjob-editor-table tbody td[data-label="Prioriteit"],
  body .pfd-mjob-editor-table tbody td[data-label="Uren"]{
    padding-left:6px !important;
  }

  /* Acties volle breedte */
  body .pfd-mjob-editor-table tbody td[data-label="Acties"]{
    grid-column:1 / -1 !important;
    width:100% !important;
    padding:24px 0 0 !important;
  }

  /* Labels boven velden */
  body .pfd-mjob-editor-table tbody td::before{
    position:absolute !important;
    top:7px !important;
    left:0 !important;
    width:auto !important;
    max-width:none !important;
    white-space:nowrap !important;
    word-break:normal !important;
  }

  /* Inputs nooit terugvallen naar desktop percentages */
  body .pfd-mjob-editor-table tbody td input,
  body .pfd-mjob-editor-table tbody td select,
  body .pfd-mjob-editor-table .pfd-mjob-jaar-input,
  body .pfd-mjob-editor-table .pfd-mjob-kosten-input,
  body .pfd-mjob-editor-table .pfd-mjob-uren-input,
  body .pfd-mjob-editor-table .pfd-mjob-prio-select{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    height:38px !important;
  }

  body .pfd-mjob-editor-table td[data-label="Kosten"] > div{
    display:grid !important;
    grid-template-columns:16px minmax(0,1fr) !important;
    align-items:center !important;
    gap:4px !important;
    width:100% !important;
    min-width:0 !important;
  }

  /* Buttons horizontaal, nooit letter-voor-letter */
  body .pfd-mjob-editor-table .pfd-mjob-row-actions{
    display:grid !important;
    grid-template-columns:minmax(0,1.4fr) 40px minmax(0,1fr) !important;
    gap:7px !important;
    width:100% !important;
    min-width:0 !important;
  }

  body .pfd-mjob-editor-table .pfd-mjob-part-btn,
  body .pfd-mjob-editor-table .pfd-mjob-opslaan-btn{
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:40px !important;
    padding:0 8px !important;
    align-items:center !important;
    justify-content:center !important;
    white-space:nowrap !important;
    word-break:normal !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:10px !important;
  }

  body .pfd-mjob-editor-table .pfd-mjob-delete-btn{
    display:flex !important;
    width:40px !important;
    min-width:40px !important;
    max-width:40px !important;
    height:40px !important;
    align-items:center !important;
    justify-content:center !important;
  }
}

@media (max-width:430px){
  body .pfd-mjob-editor-table tbody tr{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    padding:12px !important;
  }
  body .pfd-mjob-editor-table .pfd-mjob-row-actions{
    grid-template-columns:1fr 40px 1fr !important;
  }
}


/* =========================================================
   v4.1.662 — MJOB 25-jaars investerings-tijdlijn
   ========================================================= */
.pfd-mjob-timeline{
  display:grid;
  gap:8px;
  width:100%;
  margin:12px 0 14px;
  padding:16px 18px;
  box-sizing:border-box;
  border:1px solid #dbe6f2;
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fbfdff);
}
.pfd-mjob-timeline-row{
  display:grid;
  grid-template-columns:62px minmax(0,1fr) 105px;
  gap:12px;
  align-items:center;
  min-height:27px;
}
.pfd-mjob-timeline-year{
  font-size:11px;
  font-weight:850;
  color:#173154;
}
.pfd-mjob-timeline-track{
  position:relative;
  height:12px;
  overflow:hidden;
  border-radius:999px;
  background:#edf3fa;
}
.pfd-mjob-timeline-track span{
  display:block;
  height:100%;
  min-width:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#ffad1f 0%,#ff7a22 55%,#ff4f64 100%);
  box-shadow:0 1px 3px rgba(255,91,55,.18);
}
.pfd-mjob-timeline-value{
  text-align:right;
  font-size:11px;
  font-weight:800;
  color:#10233e;
  font-variant-numeric:tabular-nums;
}

@media(max-width:768px){
  .pfd-mjob-timeline{
    padding:13px 12px;
    gap:10px;
  }
  .pfd-mjob-timeline-row{
    grid-template-columns:44px minmax(0,1fr) 78px;
    gap:7px;
  }
  .pfd-mjob-timeline-year,
  .pfd-mjob-timeline-value{
    font-size:9.5px;
  }
  .pfd-mjob-timeline-track{
    height:10px;
  }
}


/* v4.1.664 — dashboard KPI-tegels klikbaar */
.pfd-mjob-kpi-link{
  display:block;
  color:inherit !important;
  text-decoration:none !important;
  cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.pfd-mjob-kpi-link:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(15,45,90,.10);
  border-color:#bdd3ef;
}
.pfd-mjob-kpi-link:focus-visible{
  outline:3px solid rgba(37,99,235,.22);
  outline-offset:2px;
}
