/* mijnraam.be – projectoverzicht (pv-) */
.m-btn.sm{min-height:36px;padding:0 14px;font-size:14px}
.m-icon.sm{width:32px;height:32px;font-size:18px}
.pvbtn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 14px;margin-right:8px;border-radius:980px;background:#f5f5f7;color:#1d1d1f!important;text-decoration:none!important;font-size:14px;font-weight:500;transition:background .2s}
.pvbtn:hover{background:#e8e8ed}.pvbtn:focus-visible{outline:2px solid #1d1d1f;outline-offset:2px}
@media (max-width:700px){.pvbtn span{display:none}.pvbtn{width:44px;padding:0;justify-content:center;margin-right:6px}}
.pv{position:fixed;inset:0;z-index:450;background:#f5f5f7;overflow:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;transition:opacity .25s}
.pv-open .pv{opacity:1;visibility:visible}
.pv *{font-style:normal}
.pv-top{position:sticky;top:0;z-index:5;background:rgba(245,245,247,.86);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid #e3e3e8}
.pv-top .in{max-width:1120px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 24px}
.pv-tt{font-size:15px;font-weight:600}
.pv-cnt{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:11px;background:#1d1d1f;color:#fff;font-size:12px;font-weight:600;padding:0 6px}
.pv-wrap{max-width:1120px;margin:0 auto;padding:20px 24px 120px}
.pv-tabs{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 6px;margin:0 -2px 14px;scrollbar-width:none}
.pv-tabs::-webkit-scrollbar{display:none}
.pv-tab{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border-radius:980px;border:1px solid #d2d2d7;background:#fff;color:#1d1d1f;font-size:14px;font-weight:500;white-space:nowrap}
.pv-tab small{font-size:12px;color:#6e6e73;font-weight:500}
.pv-tab[aria-selected="true"]{background:#1d1d1f;border-color:#1d1d1f;color:#fff}.pv-tab[aria-selected="true"] small{color:#d2d2d7}
.pv-tab.nieuw{border-style:dashed;background:transparent}
.pv-tab:focus-visible,.pv-w:focus-visible,.pv .m-btn:focus-visible,.pv .m-lnk:focus-visible,.pv-chip:focus-visible,.pv-dlg .m-btn:focus-visible,.pv-dlg .m-icon:focus-visible,.pv-dlg .pv-chip:focus-visible{outline:2px solid #1d1d1f!important;outline-offset:2px!important}
.pv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.pv-head h2{font-size:28px!important;line-height:1.15!important;font-weight:700!important;letter-spacing:-.02em;margin:0!important;outline:0}
.pv-sum{margin:4px 0 0!important;font-size:14px;color:#6e6e73}.pv-sum b{color:#1d1d1f}
.pv-hacts{display:flex;gap:6px;flex-wrap:wrap}
.pv-del{color:#b3261e!important}
.pv-cons{background:#fff;border:1px solid #f0d9a0;border-radius:16px;padding:12px 16px;margin-bottom:16px;font-size:14px}
.pv-cons b{display:block;font-size:13px;color:#6b4f00;margin-bottom:2px}
.pv-cons ul{margin:0;padding-left:18px}.pv-cons p{margin:4px 0 0!important;color:#424245;font-size:13px}
.pv section{padding:0!important;margin:0}
.pv .pv-gevel,.pv .pv-list{background:#fff;border-radius:18px;padding:18px 20px!important;margin-bottom:16px!important;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.pv-sh{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.pv-sh h3{font-size:17px!important;font-weight:600!important;margin:0!important;line-height:1.3!important}
.pv-hint,.pv-keys{font-size:12px;color:#6e6e73}
.pv kbd{font:500 11px/1 -apple-system,BlinkMacSystemFont,sans-serif;padding:2px 5px;border-radius:5px;background:#f5f5f7;border:1px solid #d2d2d7;color:#1d1d1f;margin:0 1px}
.pv-scroll{overflow-x:auto;padding:8px 2px 4px;margin:0 -2px;scroll-snap-type:x proximity}
.pv-row{display:flex;align-items:flex-end;gap:20px;min-width:min-content;padding:6px 4px 0;position:relative}
.pv-scale{flex:none}.pv-scale .pv-gi{border-bottom-color:transparent;padding:0 2px}.pv-scale .pv-gl{font-weight:400;color:#6e6e73}
.pv-scale i{display:block;width:6px;border:1.5px solid #86868b;border-left:0;border-right:0;background:linear-gradient(#86868b,#86868b) center/1.5px 100% no-repeat}
.pv-scale span{font-size:11px;color:#6e6e73}
.pv-grp{display:flex;flex-direction:column;align-items:center;scroll-snap-align:start}
.pv-gi{display:flex;align-items:flex-end;gap:12px;padding:0 10px;border-bottom:3px solid #1d1d1f}
.pv-gl{padding:8px 0 2px;font-size:12px;font-weight:600;color:#1d1d1f;white-space:nowrap;text-align:center}
.pv-w{display:flex;flex-direction:column;align-items:center;gap:4px;border-radius:8px;padding:4px 4px 0;cursor:pointer;outline-offset:2px}
.pv-fig{position:relative;border-radius:3px;transition:box-shadow .15s}
.pv-fig>svg{display:block;width:100%;height:100%}
.pv-w:hover .pv-fig{box-shadow:0 0 0 2px #d2d2d7}
.pv-w.sel .pv-fig{box-shadow:0 0 0 3px #1d1d1f}
.pv-w.fout .pv-fig{box-shadow:0 0 0 2px #b3261e}
.pv-n{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(29,29,31,.88);color:#fff;font-size:11px;font-weight:700;border-radius:8px;padding:2px 6px}
.pv-ck{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;background:#1d1d1f;color:#fff;font-size:11px;font-weight:700;display:none;place-items:center;box-shadow:0 0 0 2px #fff}
.pv-w.sel .pv-ck{display:grid}
.pv-dim{font-size:11px;color:#6e6e73;font-variant-numeric:tabular-nums;white-space:nowrap}
.pv-keys{margin:12px 0 0!important;line-height:2}
.pv-la{display:flex;gap:12px;align-items:center}
.pv-room+.pv-room{margin-top:8px}
.pv-rh{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0 6px;border-bottom:1px solid #e8e8ed}
.pv-rh h4{font-size:14px!important;font-weight:600!important;margin:0!important}
.pv-rh span{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.pv-rh small{font-weight:400;color:#6e6e73;font-size:12px}
.pv-room ul{list-style:none;margin:0;padding:0}
.pv-it{display:grid;grid-template-columns:28px 56px minmax(0,1fr) auto;grid-template-areas:"cb th tx pr" "cb th ia ia";gap:2px 12px;align-items:start;padding:12px 6px;border-bottom:1px solid #f0f0f3;border-radius:10px;transition:background .15s}
.pv-it.sel{background:#f5f5f7}
.pv-cb{grid-area:cb;padding-top:16px;display:flex;justify-content:center}
.pv-cb input{width:20px;height:20px;accent-color:#1d1d1f;cursor:pointer;margin:0}
.pv-cb input:focus-visible{outline:2px solid #1d1d1f;outline-offset:2px}
.pv-th{grid-area:th;width:56px;height:56px;display:grid;place-items:center;background:#f5f5f7;border-radius:10px;padding:6px}
.pv-th svg{max-width:100%;max-height:100%}
.pv-tx{grid-area:tx;display:flex;flex-direction:column;gap:1px;min-width:0}
.pv-tx b{font-size:15px;font-weight:600}.pv-tx span{font-size:13px;color:#6e6e73}
.pv-err{color:#b3261e!important}
.pv-pr{grid-area:pr;text-align:right;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.pv-pr small{display:block;font-weight:400;font-size:12px;color:#6e6e73}
.pv-ia{grid-area:ia;display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:4px}
.pv-ia .m-del{margin-left:auto}
.pv-tot{max-width:420px;margin-left:auto!important}
.pv-kassa{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.pv-empty{background:#fff;border-radius:18px;padding:48px 24px;text-align:center}
.pv-empty h3{font-size:19px!important;margin:12px 0 6px!important}.pv-empty p{color:#6e6e73;max-width:460px;margin:0 auto!important;font-size:14px}
.pv-ea{display:flex;gap:10px;justify-content:center;margin-top:18px;flex-wrap:wrap}
.pv-inbox{display:flex;gap:16px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid #1d1d1f;border-radius:16px;padding:14px 16px;margin-bottom:16px}
.pv-inbox>div:nth-child(2){flex:1;min-width:200px}.pv-inbox p{margin:2px 0 0!important;font-size:13px;color:#6e6e73}
.pv-ith{display:flex;gap:6px;align-items:flex-end}.pv-ith span{width:34px;height:34px;display:grid;place-items:center}.pv-ith svg{max-width:100%;max-height:100%}
.pv-ia2{display:flex;gap:8px}
/* bulkbalk */
.pv-bulk{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:460;display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:980px;padding:6px 6px 6px 18px;box-shadow:0 12px 36px rgba(0,0,0,.16),0 0 0 .5px rgba(0,0,0,.08);max-width:calc(100vw - 24px)}
.pv-bn{font-size:14px;font-weight:600;white-space:nowrap;margin-right:6px}
.pv.bulk .m-toast{bottom:90px}
/* dialoog */
.pv-scrim{position:fixed;inset:0;background:rgba(0,0,0,.32);z-index:540}
.pv-dlg{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:550;width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 24px 64px rgba(0,0,0,.24)}
.pv-dh{display:flex;justify-content:space-between;align-items:center;padding:16px 16px 4px 20px}
.pv-dh h3{font-size:17px!important;font-weight:600!important;margin:0!important}
.pv-db{padding:8px 20px 4px}
.pv-dfoot{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px 18px;position:sticky;bottom:0;background:#fff}
.pv-f{display:grid;gap:5px;font-size:13px;font-weight:500;color:#1d1d1f}
.pv-f input,.pv-f select{height:44px;border:1px solid #d2d2d7;border-radius:12px;padding:0 12px;font-size:16px;font-family:inherit;color:#1d1d1f;background:#fff;width:100%;box-sizing:border-box}
.pv-f input:focus,.pv-f select:focus{outline:2px solid #1d1d1f!important;outline-offset:1px;border-color:#1d1d1f!important;box-shadow:none!important}
.pv-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pv-ferr{display:block;color:#b3261e;font-size:13px;min-height:18px;margin-top:4px}
.pv-tip,.pv-sl{font-size:13px;color:#6e6e73;margin:8px 0 0!important}
.pv-fs{border:0;padding:0;margin:0 0 16px}.pv-fs legend{font-size:13px;font-weight:600;margin-bottom:6px;padding:0}
.pv-sw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pv-swo{position:relative;cursor:pointer}
.pv-swo input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pv-swo span{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 10px;border:1px solid #d2d2d7;border-radius:12px;font-size:12px;font-weight:500;line-height:1.2}
.pv-swo i{flex:none;width:20px;height:20px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.pv-swo i.nc{background:repeating-linear-gradient(45deg,#fff 0 3px,#d2d2d7 3px 4px)}
.pv-swo input:checked+span{border-color:#1d1d1f;box-shadow:inset 0 0 0 1px #1d1d1f;font-weight:600}
.pv-swo input:focus-visible+span{outline:2px solid #1d1d1f;outline-offset:2px}
.pv-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.pv-chip{border:1px solid #d2d2d7;background:#fff;color:#1d1d1f;border-radius:980px;padding:6px 12px;font-size:13px}
.pv-chip:hover{background:#f5f5f7}
.pv-prev{font-size:13px;min-height:20px;padding:10px 12px;background:#f5f5f7;border-radius:12px}
.pv-prev:empty{display:none}
.pv-print-head{display:none}
@media (max-width:700px){
 .pv-top .in{padding:8px 16px}.pv-wrap{padding:14px 16px 140px}
 .pv-head h2{font-size:22px!important}
 .pv-hacts{width:100%}.pv-hacts .m-btn{flex:1 1 auto}
 .pv .pv-gevel,.pv .pv-list{padding:14px!important;border-radius:16px}
 .pv-keys,.pv-hint{display:none}
 .pv-it{grid-template-columns:24px 48px minmax(0,1fr);grid-template-areas:"cb th tx" "cb th pr" "ia ia ia";padding:12px 2px}
 .pv-th{width:48px;height:48px}.pv-pr{text-align:left}.pv-pr small{display:inline;margin-left:6px}
 .pv-ia{gap:14px;padding-left:36px}
 .pv-kassa .m-btn{flex:1 1 100%}
 .pv-bulk{left:12px;right:12px;transform:none;border-radius:20px;flex-wrap:wrap;justify-content:center;padding:8px}
 .pv-bn{width:100%;text-align:center;margin:0 0 2px}
 .pv-bulk .m-btn{flex:1 1 auto;padding:0 10px}
 .pv-dlg{left:0;right:0;top:auto;bottom:0;transform:none;width:auto;border-radius:20px 20px 0 0;max-height:88vh;padding-bottom:env(safe-area-inset-bottom)}
 .pv-sw{grid-template-columns:1fr 1fr}
 .pv-la{width:100%;justify-content:space-between}
}
@media (prefers-reduced-motion:reduce){.pv,.pv-fig,.pv-it{transition:none!important}}
/* afdrukken / PDF */
@media print{
 body.pv-open>*:not(#pvView){display:none!important}
 body.pv-open{background:#fff!important}
 .pv{position:static!important;overflow:visible!important;background:#fff!important;opacity:1!important;visibility:visible!important}
 .pv-noprint,.pv-bulk,.pv-tabs,.pv-dlg,.pv-scrim,#pvIn,.m-toast{display:none!important}
 .pv-wrap{padding:0!important;max-width:none}
 .pv-print-head{display:flex!important;justify-content:space-between;border-bottom:2px solid #1d1d1f;padding-bottom:8px;margin-bottom:16px;font-size:12px}
 .pv-gevel,.pv-list{box-shadow:none!important;border:1px solid #d2d2d7;break-inside:avoid-page}
 .pv-scroll{overflow:visible!important}.pv-row{flex-wrap:wrap}
 .pv-it{grid-template-columns:56px minmax(0,1fr) auto;grid-template-areas:"th tx pr";break-inside:avoid}
 .pv-w.sel .pv-fig{box-shadow:none}.pv-ck{display:none!important}.pv-it.sel{background:none}
 .pv-cons{break-inside:avoid}
 @page{margin:14mm}
}
.pv-bulk[hidden],.pv-dlg[hidden],.pv-scrim[hidden],#pvIn[hidden]{display:none!important}
.pv-top .m-btn{gap:4px}.pv-fs legend{margin-top:4px}
@media (max-width:700px){
 .pv-la{flex-wrap:wrap;gap:8px}.pv-la .m-btn{flex:1 1 100%}
 .pv-bulk{position:fixed}.pv-bulk [data-b=wis]{position:absolute;top:6px;right:8px}
 .pv-bulk .pv-bn{line-height:32px}
}
@media (max-width:700px){.pv-ia{padding-left:0;gap:2px 16px;margin-top:6px}}
body.pv-open.pv-bulk-on .m-toast{bottom:96px}
@media (max-width:700px){body.pv-open.pv-bulk-on .m-toast{bottom:150px}}
/* winkelmand: projectkeuze en afrekenen voor */
.m-pbar{display:flex;gap:8px;align-items:flex-end;margin-bottom:12px}
.m-psel{flex:1;min-width:0;display:grid;gap:4px}
.m-psel label{font-size:12px;color:var(--m-tx2,#6e6e73);font-weight:500}
.m-psel select{height:36px;width:100%;border:1px solid #d2d2d7;border-radius:980px;padding:0 34px 0 14px;font:500 14px/1 inherit;font-family:inherit;color:#1d1d1f;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231d1d1f' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 14px center;appearance:none;-webkit-appearance:none;text-overflow:ellipsis}
.m-psel select:focus-visible{outline:2px solid #1d1d1f;outline-offset:2px}
.m-pbar .m-btn{flex:none}
.m-scope{margin-bottom:12px}.m-scope .lab{display:block;font-size:12px;color:var(--m-tx2,#6e6e73);font-weight:500;margin-bottom:4px}
.m-ph{font-size:13px!important;font-weight:600!important;margin:14px 0 0!important;padding-bottom:4px;border-bottom:1px solid #e8e8ed;color:#1d1d1f}
.m-ph:first-of-type{margin-top:4px!important}
.pv-om{font-size:12px;color:#1b7f3b!important;font-weight:500}
