/* ===== V11 proposal pages (A4), matched to ELEV8_Bid_Proposal_v11.pdf ===== */
.v11{
 --pnavy:#0b1120;--pink:#151d33;--ptxt:#40485a;--pmute:#7d8696;--pline:#d8dce3;--pcode:#2f5b8f;--psoft:#f2f4f7;
 font-family:"Helvetica Neue",Helvetica,Arial,"Liberation Sans",sans-serif;color:var(--ptxt);
 width:210mm;margin:16px auto 0;display:flex;flex-direction:column;gap:14px;font-feature-settings:"tnum" 1;-webkit-font-smoothing:antialiased
}
.v11 *{box-sizing:border-box}
.v11 .docpage,.v11 .cover,.v11 .closing{position:relative;width:210mm;height:297mm;overflow:hidden;background:#fff;box-shadow:0 1px 3px rgba(18,34,63,.12),0 8px 24px rgba(18,34,63,.08);break-inside:avoid}
.v11 h1,.v11 h2,.v11 h3,.v11 p{margin:0}
.v11 .lbl{display:block;font-size:6.6pt;font-weight:700;letter-spacing:.16em;color:var(--pmute);text-transform:uppercase}
.v11 .cap{font-size:6.8pt;color:var(--pmute)}
.v11 .lead{font-size:8.6pt;line-height:1.6;color:var(--ptxt);max-width:163mm;margin:0 0 7mm}

/* image frames — every image is a replaceable tender asset */
.v11 .media{position:relative;overflow:hidden;background:#e9ecf1}
.v11 .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.v11 .media-label{position:absolute;inset:0;display:none;align-items:center;justify-content:center;text-align:center;padding:6px;font-size:7.5pt;letter-spacing:.06em;color:#8a93a3;border:1px dashed #b9c1cd}
.v11 .media.empty .media-label,.v11 .media.missing .media-label{display:flex}
.v11 .media.missing img{visibility:hidden}

/* logos */
.v11 .proposal-logo{display:flex}
.v11 .proposal-logo-left{justify-content:flex-start}.v11 .proposal-logo-center{justify-content:center}.v11 .proposal-logo-right{justify-content:flex-end}
.v11 .proposal-logo img{display:block;object-fit:contain}
.v11 .logo{font-weight:900;letter-spacing:.08em;color:var(--pink);font-size:15pt}
.v11 .logo span{color:#43a3dc}
.v11 .logo-dark .logo{color:#fff;font-size:24pt}

/* white page frame: top bar, header, title, footer */
.v11 .docpage::before{content:"";position:absolute;left:0;right:0;top:0;height:1.4mm;background:var(--pnavy)}
.v11 .pg-head{position:absolute;left:16mm;right:16mm;top:8mm;height:15mm;display:flex;justify-content:space-between;align-items:center}
.v11 .proposal-page-header{font-size:7pt;color:var(--pmute)}
.v11 .proposal-page-header b{color:var(--pink)}
.v11 .pg-head .proposal-logo img{height:13mm;max-width:40mm}
.v11 .pg-head .logo{font-size:12pt}
.v11 .pg-body{position:absolute;left:16mm;right:16mm;top:31mm;bottom:20mm}
.v11 .pg-foot{position:absolute;left:16mm;right:16mm;bottom:9mm;border-top:1px solid var(--pline);padding-top:2.6mm;display:flex;justify-content:space-between;font-size:6.6pt;letter-spacing:.06em;color:var(--pmute);text-transform:uppercase}
.v11 .pg-title{font-size:20pt;font-weight:700;color:var(--pink);letter-spacing:-.005em;padding-bottom:4.2mm;border-bottom:1px solid var(--pline);margin-bottom:8mm}
.v11 .title-row{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid var(--pline);margin-bottom:5mm}
.v11 .title-row .pg-title{border:0;margin:0}
.v11 .title-row .cap{padding-bottom:5mm}
.v11 .title-row.small{border:0;margin:-3mm 0 3mm;align-items:center}
.v11 .title-row.small h2{font-size:12.5pt;font-weight:700;color:var(--pink)}

/* 1 · cover */
.v11 .cover{background:var(--pnavy);color:#fff}
.v11 .cover>.proposal-logo{position:absolute;left:16mm;right:16mm;top:17mm}
.v11 .cover>.proposal-logo img{height:27mm;max-width:60mm}
.v11 .cv-text{position:absolute;left:16mm;right:16mm;top:64mm}
.v11 .cv-eyebrow{display:flex;gap:4mm;font-size:6.8pt;color:#c9cfdb}
.v11 .cv-eyebrow b{letter-spacing:.16em;color:#8d97a8;font-weight:700}
.v11 .cv-rule{height:1px;background:rgba(255,255,255,.18);margin:4mm 0 9mm;position:relative}
.v11 .cv-rule::before{content:"";position:absolute;left:0;top:-.5px;width:17mm;height:2px;background:#8d97a8}
.v11 .cover h2{font-size:28pt;line-height:1.16;font-weight:700;max-width:120mm;margin-bottom:9mm;color:#fff}
.v11 .cv-project{font-size:11.5pt;color:#fff;margin-bottom:1.6mm}
.v11 .cv-location{font-size:6.6pt;font-weight:700;letter-spacing:.16em;color:#8d97a8;text-transform:uppercase}
.v11 .cv-hero{position:absolute;left:0;right:0;top:149mm;bottom:0;clip-path:polygon(0 19%,100% 0,100% 100%,0 100%)}
.v11 .cv-hero .media{position:absolute;inset:0;background:#141c30}
.v11 .cv-hero .media-label{border:0;color:#5d6880;align-items:flex-start;padding-top:38mm}
.v11 .cv-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:42mm;background:linear-gradient(180deg,rgba(11,17,32,0),rgba(11,17,32,.82))}
.v11 .cv-foot{position:absolute;z-index:2;left:16mm;right:16mm;bottom:15mm;border-top:1px solid rgba(255,255,255,.2);padding-top:5mm;display:grid;grid-template-columns:1fr 1fr 1fr}
.v11 .cv-foot small{display:block;font-size:6.4pt;font-weight:700;letter-spacing:.16em;color:#9aa3b3;margin-bottom:1.8mm}
.v11 .cv-foot b{font-size:8.6pt;color:#fff}
.v11 .cv-foot .r{text-align:right}

/* 2 · project overview */
.v11 .info-box{display:grid;grid-template-columns:1fr 1fr;gap:4.5mm 10mm;border:1px solid var(--pline);border-left:1.3mm solid var(--pink);padding:5mm 7mm;margin-bottom:8mm}
.v11 .info-box small,.v11 .metrics small{display:block;font-size:6.3pt;font-weight:700;letter-spacing:.14em;color:var(--pmute);margin-bottom:1.3mm}
.v11 .info-box b{font-size:8.6pt;color:var(--pink)}
.v11 .label-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2.5mm}
.v11 .site-grid{display:grid;grid-template-columns:1fr .62fr .62fr;grid-template-rows:38mm 38mm;gap:2.2mm;height:79mm;margin-bottom:6mm}
.v11 .site-grid .g-a{grid-row:1/3;grid-column:1;margin-right:1mm}.v11 .site-grid .g-b{grid-column:2/4}.v11 .site-grid .g-c{grid-column:2}.v11 .site-grid .g-d{grid-column:3}
.v11 .brief{display:grid;grid-template-columns:.78fr 1fr;gap:10mm;margin-bottom:8mm}
.v11 .brief h3{font-size:12.5pt;line-height:1.38;font-weight:700;color:var(--pink);margin-top:3.5mm}
.v11 .brief p{font-size:8.4pt;line-height:1.75;color:var(--ptxt)}
.v11 .metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--pline);padding-top:5mm}
.v11 .metrics>div{padding:0 4mm;border-left:1px solid var(--pline)}
.v11 .metrics>div:first-child{padding-left:0;border-left:0}
.v11 .metrics b{display:block;font-size:14pt;font-weight:700;color:var(--pink);white-space:nowrap}
.v11 .metrics span{font-size:6.6pt;color:var(--pmute)}

/* 3 · design direction */
.v11 .pg-design .lead{margin-bottom:6mm}
.v11 .render-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:70mm 46mm 46mm;gap:2.4mm;margin-bottom:2mm}
.v11 .render-grid .r-main{grid-column:1/3}
.v11 .pg-design>.pg-body>.cap{display:block;margin-bottom:8mm}
.v11 .palette{display:grid;gap:3.5mm;margin-top:3mm}
.v11 .palette i{display:block;height:11mm;border-radius:1.2mm;margin-bottom:2.4mm}
.v11 .palette b{display:block;font-size:7.2pt;color:var(--pink)}
.v11 .palette span{font-size:6.5pt;color:var(--pmute)}

/* 4 · proposed layout (two plans per page) */
.v11 .plan{display:grid;grid-template-columns:1.32fr 1fr;gap:10mm;height:106mm;padding-bottom:5mm;margin-bottom:5mm;border-bottom:1px solid var(--pline)}
.v11 .plan:last-child{border-bottom:0}
.v11 .plan-img{background:#fff}
.v11 .plan-img img{object-fit:contain}
.v11 .plan-info{padding-top:3mm}
.v11 .plan-info h3{font-size:12.5pt;font-weight:600;color:var(--pink);margin:1.5mm 0 5mm}
.v11 .plan-info ul{list-style:none;margin:0;padding:0}
.v11 .plan-info li{font-size:7.3pt;color:var(--ptxt);padding:2.4mm 0;border-top:1px solid var(--pline)}

/* 5 · scope & investment */
.v11 .inv-table{width:100%;border-collapse:collapse;min-width:0;font-size:8pt}
.v11 .inv-table th,.v11 .scope-priced th{background:var(--pnavy);color:#fff;font-size:6.4pt;font-weight:700;letter-spacing:.14em;padding:3.1mm 4mm;text-align:left;border:0}
.v11 .inv-table th:first-child{width:15mm;text-align:center}.v11 .inv-table th:last-child{text-align:right}
.v11 .inv-table td{padding:3.4mm 4mm;border:0;border-bottom:1px solid var(--pline);vertical-align:top}
.v11 .inv-table .ref{text-align:center;font-weight:700;color:var(--pink);padding-top:4.2mm}
.v11 .inv-table td b{display:block;font-size:8.8pt;color:var(--pink);margin-bottom:1mm}
.v11 .inv-table td span{font-size:6.8pt;color:var(--pmute)}
.v11 .inv-table .amt{text-align:right;white-space:nowrap}
.v11 .inv-table .amt b{font-size:8.2pt;margin:0}
.v11 .inv-bottom{display:grid;grid-template-columns:.78fr 1fr;gap:6mm;margin-top:7mm}
.v11 .ms-box{border:1px solid var(--pline);border-left:1.3mm solid var(--pink);padding:5mm 6mm}
.v11 .ms-box .lbl{margin-bottom:3mm}
.v11 .ms-row{display:flex;gap:2mm;font-size:7.4pt;color:var(--ptxt);padding:.9mm 0}
.v11 .ms-row b{color:var(--pink);min-width:8mm}
.v11 .ms-row em{margin-left:auto;font-style:normal;color:var(--ptxt)}
.v11 .ms-box small{display:block;font-size:6.3pt;color:var(--pmute);margin-top:1.5mm}
.v11 .total-box{position:relative;overflow:hidden;background:var(--pnavy);color:#c6ccd8;padding:5mm 6mm;font-size:7.4pt}
.v11 .total-box::before{content:"";position:absolute;top:0;bottom:0;right:0;width:46%;background:#141d34;clip-path:polygon(28% 0,100% 0,100% 100%,0 100%)}
.v11 .total-box>*{position:relative}
.v11 .tb-row{display:flex;justify-content:space-between;padding:.5mm 0;color:#c6ccd8}
.v11 .tb-row span:last-child{color:#fff}
.v11 .tb-grand{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid rgba(255,255,255,.16);margin-top:3.5mm;padding-top:3.5mm}
.v11 .tb-grand small{font-size:6.3pt;font-weight:700;letter-spacing:.16em;color:#8d97a8}
.v11 .tb-grand b{font-size:15pt;color:#fff;white-space:nowrap}
.v11 .foot-note{position:absolute;bottom:4mm;left:0;font-size:6.8pt;color:var(--pmute)}

/* 6+ · detailed scope & pricing */
.v11 .scope-priced{width:100%;border-collapse:collapse;table-layout:fixed;min-width:0;font-size:7.4pt}
.v11 .scope-priced th.c-ref{width:13mm}.v11 .scope-priced th.c-qty{width:12mm;text-align:right}.v11 .scope-priced th.c-unit{width:11mm}
.v11 .scope-priced th.c-rate{width:21mm;text-align:right}.v11 .scope-priced th.c-amt{width:28mm;text-align:right}
.v11 .scope-priced td{border:0;padding:2.2mm 1.6mm;vertical-align:top;color:var(--ptxt)}
.v11 .scope-priced tr.item td{border-bottom:1px solid var(--pline)}
.v11 .scope-priced td.c-ref{color:var(--pcode);font-weight:700;font-size:6.9pt;padding-left:4mm;padding-top:2.5mm;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v11 .scope-priced td.c-qty{text-align:right}
.v11 .scope-priced td.c-unit{color:var(--pmute);padding-left:2.4mm}
.v11 .scope-priced td.c-rate{text-align:right;white-space:nowrap}
.v11 .scope-priced td.c-amt{text-align:right;font-weight:700;color:var(--pink);white-space:nowrap;padding-right:4mm}
.v11 .scope-description b{display:block;font-size:7.8pt;color:var(--pink);margin-bottom:.6mm;overflow-wrap:anywhere}
.v11 .scope-description b.long{font-weight:400;font-size:7.4pt;line-height:1.45;color:var(--pink)}
.v11 .scope-description span{display:block;font-size:6.6pt;color:var(--pmute);line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
.v11 .scope-description .scope-status{display:inline-block;margin-top:.8mm;font-size:6pt;font-weight:700;letter-spacing:.08em;color:#9b5a13;text-transform:uppercase}
.v11 .pkg-head td{padding:4.2mm 0 2mm;border-bottom:1.3px solid var(--pink);font-size:10pt;font-weight:700;color:var(--pink)}
.v11 .pkg-head .pk{display:inline-block;width:7mm;font-size:9pt}
.v11 .pkg-head em{float:right;font-style:normal;font-size:6.3pt;font-weight:600;letter-spacing:.14em;color:#a0a8b5;padding-top:1mm}
.v11 .sub-head td{padding:2.6mm 1.6mm .8mm;font-size:6.9pt;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pink);border-bottom:.4px solid #d9dde4}
.v11 .sub-lead td{padding:1.4mm 1.6mm .6mm;font-size:7pt;font-style:italic;line-height:1.45;color:var(--pmute);overflow-wrap:anywhere}
.v11 .sub-note td{padding:2mm 1.6mm 2.4mm;font-size:6.6pt;line-height:1.5;color:var(--pmute)}
.v11 .sub-note b{color:var(--pink);font-size:6.6pt;letter-spacing:.08em;text-transform:uppercase;margin-right:1.2mm}
.v11 .sub-note ul{margin:.8mm 0 0 4mm;padding:0}
.v11 .pkg-total td{background:var(--psoft);padding:2.8mm 1.6mm;border:0;font-size:6.6pt;font-style:italic;color:var(--pmute)}
.v11 .pkg-total td:first-child{padding-left:4mm}
.v11 .pkg-total .pt-label{font-style:normal;text-align:right;font-weight:700;letter-spacing:.14em;color:var(--pink);font-size:6.4pt}
.v11 .pkg-total .c-amt{font-style:normal;font-size:8.2pt}
.v11 .scope-reconciliation{display:grid;grid-template-columns:1fr 1.05fr;gap:9mm;align-items:end;margin-top:7mm}
.v11 .scope-reconciliation p{font-size:6.8pt;line-height:1.7;color:var(--pmute)}
.v11 .scope-reconciliation .total-box{padding:5mm 6mm}

/* programme & terms */
.v11 .gantt{margin-bottom:6mm}
.v11 .g-axis{display:grid;grid-template-columns:42mm 1fr;align-items:center;margin-bottom:2.5mm}
.v11 .g-scale{position:relative;height:3mm}
.v11 .g-scale span{position:absolute;transform:translateX(-50%);font-size:6.4pt;color:var(--pmute)}
.v11 .g-scale span:first-child{transform:none}.v11 .g-scale span:last-child{transform:translateX(-100%)}
.v11 .g-body{position:relative}
.v11 .g-grid{position:absolute;left:42mm;right:0;top:0;bottom:0;pointer-events:none}
.v11 .g-grid i{position:absolute;top:0;bottom:0;border-left:1px dashed #d4d8df}
.v11 .g-row{display:grid;grid-template-columns:42mm 1fr;align-items:center;height:7.4mm}
.v11 .g-row>span{font-size:7.2pt;color:var(--pink)}
.v11 .g-track{position:relative;height:3mm}
.v11 .g-track b{position:absolute;top:0;bottom:0;background:var(--pink)}
.v11 .g-track b.alt{background:#8e98a6}
.v11 .gantt .cap{display:block;margin-top:3.5mm}
.v11 .terms{border-top:1px solid var(--pline);margin-bottom:6mm}
.v11 .terms>div{display:grid;grid-template-columns:37mm 1fr;padding:3.6mm 0;border-bottom:1px solid var(--pline);align-items:baseline}
.v11 .terms p{font-size:7.3pt;line-height:1.65;color:var(--ptxt)}
.v11 .xl-terms ol{margin:0;padding-left:4.5mm;font-size:7.3pt;line-height:1.65;color:var(--ptxt)}
.v11 .xl-terms li{margin-bottom:1.2mm;padding-left:1mm}
.v11 .excluded-list{color:var(--pmute)}
.v11 .accept{border:1px solid var(--pline);border-left:1.3mm solid var(--pink);padding:5mm 6mm 6mm}
.v11 .ac-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4mm}
.v11 .ac-cols{display:grid;grid-template-columns:1fr 1fr;gap:10mm}
.v11 .ac-cols b{display:block;font-size:7.8pt;color:var(--pink);margin-bottom:6mm}
.v11 .sig i{display:block;border-top:1px solid #aeb5c0;margin-bottom:1.3mm}
.v11 .sig small{font-size:6.4pt;color:var(--pmute)}
.v11 .sig.wide{margin-bottom:7mm}
.v11 .sig-row{display:grid;grid-template-columns:1.7fr 1fr;gap:4mm}

/* closing */
.v11 .closing{background:var(--pnavy);color:#c6ccd8}
.v11 .closing::before{content:"";position:absolute;right:0;bottom:0;width:50%;height:49.5%;background:#131c33;clip-path:polygon(54% 0,100% 0,100% 100%,0 100%)}
.v11 .closing>*{position:relative}
.v11 .closing>.proposal-logo{position:absolute;left:16mm;right:16mm;top:17mm}
.v11 .closing>.proposal-logo img{height:27mm;max-width:60mm}
.v11 .cl-about{position:absolute;left:16mm;right:16mm;top:61mm}
.v11 .cl-about h2{font-size:14.5pt;line-height:1.4;font-weight:700;color:#fff;max-width:150mm;margin:4mm 0 4mm}
.v11 .cl-about p{font-size:8.4pt;line-height:1.7;max-width:150mm;color:#b9c0cd}
.v11 .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:5mm;margin-top:9mm}
.v11 .steps>div{border-top:1px solid rgba(255,255,255,.22);padding-top:3.2mm}
.v11 .steps small{display:block;font-size:6.3pt;color:#8d97a8;margin-bottom:1.6mm}
.v11 .steps b{display:block;font-size:8pt;color:#fff;margin-bottom:1.3mm}
.v11 .steps span{display:block;font-size:6.6pt;line-height:1.55;color:#a9b1bf}
.v11 .cl-thanks{position:absolute;left:16mm;right:16mm;top:156mm}
.v11 .cl-thanks h2{font-size:23pt;line-height:1.25;font-weight:700;color:#fff;max-width:110mm;margin:4mm 0 5mm}
.v11 .cl-thanks p{font-size:8.2pt;color:#c6ccd8}
.v11 .cl-foot{position:absolute;left:16mm;right:16mm;bottom:15mm;border-top:1px solid rgba(255,255,255,.2);padding-top:5mm;display:grid;grid-template-columns:1.45fr 1fr 1fr}
.v11 .cl-foot small{display:block;font-size:6.4pt;font-weight:700;letter-spacing:.16em;color:#8d97a8;margin-bottom:2.4mm}
.v11 .cl-foot p{font-size:7.4pt;line-height:1.7;color:#fff}
.v11 .cl-foot span{color:#8d97a8}
.v11 .lbl{color:var(--pmute)}
.v11 .closing .lbl{color:#8d97a8}

/* editors */
.p-editors .p-group{border-top:1px solid var(--line,#d9e1eb);padding:10px 0}
.p-editors .p-group summary{cursor:pointer;font-weight:600;color:var(--ink,#12223f);font-size:14px}
.p-editors .p-group summary small{font-weight:400;color:var(--muted,#5b6a80);margin-left:10px;font-size:12px}
.p-editors .p-group .fields{margin-top:12px}
.field.wide{grid-column:1/-1}
.field .help{font-size:11.5px}
.pal-edit,.task-edit{display:flex;flex-direction:column;gap:6px;margin-bottom:6px}
.pal-row{display:grid;grid-template-columns:44px 1fr 1.6fr auto;gap:6px;align-items:center}
.pal-row input[type=color]{height:38px;padding:3px;width:44px}
.task-row{display:grid;grid-template-columns:1fr 80px 80px auto auto;gap:6px;align-items:center}
.sec-edit input+input{margin-top:6px}
.preview-bar{margin-top:22px;border-top:1px solid var(--line,#d9e1eb);padding-top:16px}
#proposal .document.v11{background:transparent;border:0;max-width:none}
#proposal{overflow-x:auto}

/* ===== Proposal studio: editor (left) + live A4 preview (right) ===== */
.p-studio{display:grid;grid-template-columns:minmax(360px,440px) minmax(0,1fr);gap:16px;align-items:start}
.p-side{display:flex;flex-direction:column;gap:8px;min-width:0}
.p-side-head h2{margin:0 0 2px;font-size:17px}
.p-side-head .help{margin:0 0 4px}
.p-sec{border:1px solid var(--line,#d9e1eb);border-radius:12px;background:#fff;overflow:hidden}
.p-sec.open{border-color:#a9d3ee;box-shadow:0 0 0 3px rgba(32,163,222,.10)}
.p-sec-head{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;cursor:pointer}
.p-sec-head:hover{background:var(--soft,#f5f8fb)}
.p-sec-head:focus-visible{outline:2px solid var(--cyan,#20a3de);outline-offset:-2px}
.p-sec-title{display:flex;flex-direction:column;flex:1;min-width:0}
.p-sec-title b{font-size:14px;font-weight:600;color:var(--ink,#12223f)}
.p-sec-title small{font-size:12px;color:var(--muted,#5b6a80);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p-chip{font-size:11px;font-weight:600;border-radius:999px;padding:3px 8px;white-space:nowrap;border:1px solid}
.p-chip.ok{color:#1f6b47;background:#eaf6ef;border-color:#cfe8da}
.p-chip.todo{color:#8a5a0a;background:#fff4dc;border-color:#f0dca6}
.p-chip.off{color:#5b6a80;background:#eef1f5;border-color:#d9e1eb}
.p-caret{color:var(--muted,#5b6a80);font-size:12px;width:10px}
.p-sec-body{padding:4px 14px 16px;border-top:1px solid var(--line,#d9e1eb);display:flex;flex-direction:column;gap:10px}
.p-sec-body .fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.p-sec-body .field.wide{grid-column:1/-1}
.p-sec-body .field textarea{min-height:64px}
.p-sub{font-size:12.5px;font-weight:600;color:var(--ink2,#1b3664);margin-top:6px}
.p-sub-row{display:flex;justify-content:space-between;align-items:center;gap:8px}
.p-sec-body .slot-grid{margin-top:0}
.p-sec-body .slot-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.p-sec-body .slot-grid.two .slot.wide{grid-column:1/-1}
.p-sec-body .slot-img{height:110px}
.p-sec-body .slot.wide .slot-img{height:150px}
.p-sec-body .slot-foot{padding:8px 10px}
.p-sec-body .slot-foot b{font-size:12.5px}
.p-sec-body .plan-card{grid-template-columns:1fr;padding:10px}
.p-sec-body .plan-card .slot-img{height:150px}
.p-sec-body .plan-card .fields{grid-template-columns:1fr 1fr}
.pchk-list{display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:var(--soft,#f5f8fb);border-radius:9px}
.btn.icon{padding:7px 10px}
.pal-row{grid-template-columns:40px 1fr 1.3fr auto}
.task-head{display:grid;grid-template-columns:1fr 64px 64px 78px;gap:6px;font-size:11.5px;color:var(--muted,#5b6a80);padding:0 2px}
.task-row{grid-template-columns:1fr 64px 64px auto auto}
.scope-editor .scope-edit-group{padding:8px 0}
.scope-editor .scope-edit-row{grid-template-columns:1fr;gap:6px}
.p-prev{position:sticky;top:10px;display:flex;flex-direction:column;gap:10px;min-width:0;height:calc(100vh - 20px)}
.p-prev-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;background:#fff;border:1px solid var(--line,#d9e1eb);border-radius:12px;padding:10px 14px}
.p-prev-bar b{display:block;font-size:14px;color:var(--ink,#12223f)}
.p-prev .print-blockers{margin:0;max-height:34vh;overflow:auto}
.p-prev-scroll{flex:1;min-height:0;overflow:auto;background:#dfe5ec;border-radius:12px;padding:14px}
.p-prev-scroll .v11{margin:0 auto}
.v11>section{cursor:pointer;transition:box-shadow .3s}
.v11>section:hover{box-shadow:0 0 0 2px rgba(32,163,222,.45),0 8px 24px rgba(18,34,63,.08)}
.v11>section.flash{box-shadow:0 0 0 4px rgba(32,163,222,.75),0 8px 24px rgba(18,34,63,.08)}
@media(max-width:1100px){.p-studio{grid-template-columns:1fr}.p-prev{position:static;height:auto}.p-prev-scroll{max-height:none}}

/* page switches */
.page-toggles{background:var(--soft,#f5f8fb);border:1px solid var(--line,#d9e1eb);border-radius:12px;padding:12px 14px;margin:12px 0 6px}
.page-toggles h3{font-size:14px;margin:0 0 2px}
.pchk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px 16px;margin-top:10px}
.pchk{display:flex;gap:9px;align-items:flex-start;cursor:pointer}
.pchk input{margin-top:3px;width:auto}
.pchk span{display:flex;flex-direction:column}
.pchk b{font-size:13px;font-weight:600;color:var(--ink,#12223f)}
.pchk small{font-size:11.5px;color:var(--muted,#5b6a80)}
.pchk.sub{padding-left:18px}
.pchk input:disabled+span{opacity:.5}
.v11 .pg-overview .brief{margin-top:2mm}

/* Photos & Drawings tab */
.slot-grid{display:grid;gap:12px;margin-top:12px}
.slot-grid.one{grid-template-columns:minmax(0,560px)}
.slot-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.slot-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.slot-grid.five{grid-template-columns:repeat(4,minmax(0,1fr))}
.slot-grid.five .slot.wide{grid-column:1/-1}
.slot{border:1px solid var(--line,#d9e1eb);border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.slot-img{position:relative;height:150px;background:#eef2f6}
.slot.wide .slot-img{height:220px}
.slot.logo-slot .slot-img{height:110px;background:#fff}
.slot.logo-slot.dark .slot-img{background:#0b1120}
.slot-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.logo-slot .slot-img img,.plan-card .slot-img img{object-fit:contain;padding:8px}
.slot-img .media-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#8a97a8;font-size:12px;border:1px dashed #c3cfdd;margin:8px;border-radius:8px}
.slot-img.missing .media-label{display:flex}
.slot-img:not(.empty):not(.missing) .media-label{display:none}
.slot-note{position:absolute;left:8px;bottom:6px;font-size:11px;color:#8a97a8;background:rgba(255,255,255,.85);padding:1px 6px;border-radius:6px}
.slot-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;flex-wrap:wrap}
.slot-foot b{font-size:13px;font-weight:600;color:var(--ink,#12223f)}
.slot-foot .actions{gap:6px}
.plan-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.plan-card{display:grid;grid-template-columns:300px 1fr;gap:14px;border:1px solid var(--line,#d9e1eb);border-radius:12px;padding:12px;background:#fff}
.plan-card .slot-img{height:220px;border-radius:8px;background:#fff;border:1px solid var(--line,#d9e1eb)}
.plan-fields{display:flex;flex-direction:column;gap:10px}
@media(max-width:900px){.slot-grid.four,.slot-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-card{grid-template-columns:1fr}}

/* ---------- printing: only the A4 pages, edge to edge ---------- */
@media print{
 @page{size:A4 portrait;margin:0}
 html,body{background:#fff!important;margin:0!important;padding:0!important}
 .topbar,.tabs,.footer,#cloud-bar,#overview,#boq,#drawings,#proposal .p-side,#proposal .p-prev-bar,#proposal .print-blockers,#proposal>.alert{display:none!important}
 .p-studio,.p-prev,.p-prev-scroll{display:block!important;position:static!important;height:auto!important;overflow:visible!important;padding:0!important;background:#fff!important;border:0!important}
 .v11{zoom:1!important}
 .v11>section{cursor:default;box-shadow:none!important}
 .shell,#proposal,.panel{display:block!important;border:0!important;box-shadow:none!important;margin:0!important;padding:0!important;max-width:none!important;background:#fff!important;overflow:visible!important}
 #proposal[hidden]{display:block!important}
 .v11{display:block;width:210mm;margin:0;gap:0}
 .v11 .docpage,.v11 .cover,.v11 .closing{box-shadow:none;break-after:page;page-break-after:always;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .v11>:last-child{break-after:auto;page-break-after:auto}
 .v11 *{print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .v11 .media.empty,.v11 .media.missing{background:#f1f3f6}
 .v11 .media-label{display:none!important}
 .v11 .cv-hero .media.empty{background:#141c30}
 .v11 .docpage::after{content:"DRAFT  ·  NOT APPROVED";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-32deg);color:rgba(118,130,145,.14);font-size:39px;font-weight:800;letter-spacing:.12em;white-space:nowrap;pointer-events:none;z-index:9}
}

/* wording edited directly on the pages (screen only; nothing of this prints) */
@media screen{
 .v11 [data-tk][contenteditable=true]{cursor:text;border-radius:2px;outline:1px dashed transparent;outline-offset:2px;transition:outline-color .12s}
 .v11 [data-tk][contenteditable=true]:hover{outline-color:rgba(32,163,222,.7)}
 .v11 [data-tk][contenteditable=true]:focus{outline:2px solid #20a3de;background:rgba(32,163,222,.06)}
 .v11 .tk-edited{box-shadow:inset 0 -2px 0 rgba(217,138,0,.55)}
}
.tk-toggle{display:flex;gap:10px;align-items:flex-start;margin:10px 0 2px;padding:10px 12px;border:1px solid #cfe7f5;background:#f1f9fd;border-radius:10px;cursor:pointer}
.tk-toggle input{margin-top:3px}
.tk-toggle b{display:block;font-size:13.5px;color:#12223f}
.tk-toggle small{display:block;font-size:12px;color:#5b6a80;margin-top:2px}
.tk-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.tk-row{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;border:1px solid #d9e1eb;border-radius:9px;padding:8px 10px;font-size:12.5px}
.tk-row small{display:block;color:#5b6a80;font-size:11px;margin-top:3px}
.tk-row s{color:#8a97a8;display:block;white-space:pre-line}
.tk-row span{display:block;white-space:pre-line;color:#12223f}
