/* Scoped presentation-only Kingspan Studio · consistent with Deck/Brick/Calados. */
.kingspan-estudio-page{background:#f7f6f2!important;color:#284b37;font-family:Arial,Helvetica,sans-serif}
.kingspan-estudio-page .calc-main{max-width:1460px;margin:0 auto;padding:126px 40px 65px}
.kingspan-estudio-page .ks-intro{display:flex;align-items:end;justify-content:space-between;gap:35px;max-width:none;margin-bottom:43px}
.kingspan-estudio-page .ks-intro>div{flex:1;min-width:0}.kingspan-estudio-page .ks-intro .eyebrow{font-size:10px;color:#5d855e;letter-spacing:2px}
.kingspan-estudio-page .ks-intro h1{font-size:clamp(35px,4.2vw,57px);font-weight:500;letter-spacing:-2px;line-height:1.08;margin:12px 0 19px;color:#244833}
.kingspan-estudio-page .ks-intro h1 em{font-style:normal;color:#738b76}
.kingspan-estudio-page .ks-intro>div>p:last-child{font-size:15px;line-height:1.7;color:#667b6b;max-width:600px}
.kingspan-estudio-page .ks-intro aside{flex:0 0 255px;border-left:1px solid #d1ddd1;padding:8px 0 8px 23px}
.kingspan-estudio-page .ks-intro aside small{letter-spacing:1.3px;font-size:10px;color:#628269}
.kingspan-estudio-page .ks-intro aside p{font-size:16px;color:#68806e;line-height:1.6}
.kingspan-estudio-page .ks-intro aside a{color:#286345;font-size:11px;text-decoration:none}
.kingspan-estudio-page .ks-layout{grid-template-columns:320px minmax(0,1fr);gap:24px;align-items:start}
.kingspan-estudio-page .ks-form{background:#fff;border:1px solid #dce5dd;padding:22px;border-radius:17px;box-shadow:none;min-width:0}
.kingspan-estudio-page .ks-step{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.kingspan-estudio-page .ks-step b{display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border-radius:50%;font-size:10px;background:#edf4ea;color:#57745b}
.kingspan-estudio-page .ks-step h2{font-size:15px!important;font-weight:650;color:#294c38;margin:0}
.kingspan-estudio-page .ks-step-border{border-top:1px solid #e4ece3;padding-top:22px;margin-top:20px}
.kingspan-estudio-page .ks-form label{display:flex;flex-direction:column;gap:8px;color:#496652;font-size:11px;margin-bottom:17px}
.kingspan-estudio-page .ks-form :is(input,select){min-width:0;width:100%;min-height:44px;font-size:13px;background:#fbfdfa;color:#254633;border:1px solid #d8e3d9;border-radius:7px;box-shadow:none}
.kingspan-estudio-page .ks-form .form-two{grid-template-columns:1fr 1fr;gap:9px}.kingspan-estudio-page .ks-form [hidden]{display:none!important}
.kingspan-estudio-page .ks-spec{background:#f0f6ee;padding:12px;font-size:11px;line-height:1.6;border-radius:9px;color:#496a56}
.kingspan-estudio-page .ks-form .fine{font-size:11px;color:#708273;line-height:1.6}.kingspan-estudio-page .ks-form a{color:#286741;font-size:11px}
.kingspan-estudio-page .ks-result{background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;min-width:0}
.kingspan-estudio-page .ks-viewer,.kingspan-estudio-page .ks-results,.kingspan-estudio-page .ks-tech{background:#fff;border:1px solid #dfe5dd;border-radius:17px;overflow:hidden}
.kingspan-estudio-page .ks-view-modes{display:flex;gap:6px;padding:13px 18px}
.kingspan-estudio-page .ks-view-modes button{background:#f2f5ee;border:0;border-radius:7px;padding:10px 14px;color:#708675;font-size:11px;cursor:pointer}
.kingspan-estudio-page .ks-view-modes button[aria-pressed=true]{background:#eaf3e7;color:#1a5b39;font-weight:700}
.kingspan-estudio-page #ks-view-canvas{display:block;width:100%;height:auto;aspect-ratio:112/69;background:#e6ece5}
.kingspan-estudio-page .ks-view-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;color:#708372;font-size:11px}
.kingspan-estudio-page .ks-view-caption button{font-size:11px;color:#286742;background:transparent;border:0;cursor:pointer}
.kingspan-estudio-page .ks-results{padding:23px 24px;margin-top:18px}.kingspan-estudio-page .ks-results .eyebrow{font-size:10px;color:#69826a}
.kingspan-estudio-page .ks-results h2{font-size:24px;font-weight:550;color:#2c503a;margin:8px 0 19px}
.kingspan-estudio-page .ks-results .metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.kingspan-estudio-page .ks-results .metrics>div{background:#fff;border:0;border-left:1px solid #e3ebe2;border-radius:0;padding:8px 10px;min-width:0}
.kingspan-estudio-page .ks-results .metrics>div:first-child{border-left:0}
.kingspan-estudio-page .ks-results .metrics>div.metric-main{background:#edf5e8;border:0;border-radius:8px}
.kingspan-estudio-page .ks-results .metrics strong{color:#2c543c;font-size:clamp(23px,2.5vw,31px);font-weight:550}
.kingspan-estudio-page .ks-results .metrics span{color:#718675;font-size:10px}
.kingspan-estudio-page .ks-results .fine{color:#647b69;font-size:11px}
.kingspan-estudio-page .ks-tech{margin-top:18px;padding:22px 24px}
.kingspan-estudio-page .ks-tech .eyebrow{font-size:10px;color:#6a846c}
.kingspan-estudio-page .ks-tech h3{font-size:19px;color:#2a5038;margin:7px 0 16px}
.kingspan-estudio-page .ks-tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}
.kingspan-estudio-page .ks-tech-grid>div{border-top:1px solid #e3eae3;padding-top:11px}
.kingspan-estudio-page .ks-tech-grid strong{font-size:12px;color:#24543b}
.kingspan-estudio-page .ks-tech-grid p,.kingspan-estudio-page .ks-special-note{font-size:11px;color:#697e70;line-height:1.6}
.kingspan-estudio-page .ks-tech a{font-size:11px;color:#286942}
.kingspan-estudio-page .ks-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.kingspan-estudio-page .ks-actions #roof-quote{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#1c4834;color:#fff;border:0;border-radius:8px;padding:15px 19px;font-size:14px}
.kingspan-estudio-page .ks-action-secondary{display:flex;justify-content:center}
.kingspan-estudio-page .ks-action-secondary button{background:transparent;border:0;color:#638069;font-size:11px;cursor:pointer}
.kingspan-estudio-page .ks-actions>.dsy-project-add-button{align-self:center;background:#f0f7ed;color:#236139;border:1px solid #b8d4bc}
.kingspan-estudio-page .ks-actions button:disabled{opacity:.5;cursor:not-allowed}
@media(min-width:1200px){.kingspan-estudio-page .ks-form{position:sticky;top:102px;max-height:calc(100vh - 122px);overflow:auto;scrollbar-width:thin}}
@media(max-width:1020px){.kingspan-estudio-page .calc-main{padding:120px 24px 42px}.kingspan-estudio-page .ks-layout{grid-template-columns:280px minmax(0,1fr);gap:18px}.kingspan-estudio-page .ks-results .metrics{grid-template-columns:1fr 1fr}.kingspan-estudio-page .ks-results .metrics>div:nth-child(3){border-left:0}}
@media(max-width:760px){.kingspan-estudio-page .calc-main{padding:110px 16px 35px}.kingspan-estudio-page .ks-intro{display:block;margin-bottom:24px}.kingspan-estudio-page .ks-intro aside{display:none}.kingspan-estudio-page .ks-intro h1{font-size:40px}.kingspan-estudio-page .ks-layout{display:flex;flex-direction:column}.kingspan-estudio-page .ks-form{order:0;width:100%;position:static;max-height:none;overflow:visible}.kingspan-estudio-page .ks-result{display:contents}.kingspan-estudio-page .ks-viewer{order:1;width:100%}.kingspan-estudio-page .ks-results{order:2;width:100%;margin:0}.kingspan-estudio-page .ks-tech{order:3;margin:0;width:100%}.kingspan-estudio-page .ks-actions{order:4;width:100%;margin:0}.kingspan-estudio-page #roof-status{order:5}.kingspan-estudio-page .ks-tech-grid{grid-template-columns:1fr}.kingspan-estudio-page .ks-form :is(select,input){font-size:16px}}
@media(max-width:550px){.kingspan-estudio-page .ks-form{padding:18px}.kingspan-estudio-page .ks-tech{padding:18px}.kingspan-estudio-page .ks-results{padding:17px}.kingspan-estudio-page .ks-results .metrics strong{font-size:26px}.kingspan-estudio-page .ks-view-caption{padding:11px}}
@media print{.kingspan-estudio-page .ks-viewer,.kingspan-estudio-page .ks-tech{display:none!important}.kingspan-estudio-page.dsy-report-print-mode .dsy-report-sketch img{display:block;max-height:155px;max-width:100%;object-fit:contain}}

/* Compact only the Kingspan printed report; other calculators retain their layouts. */
@media print{
 @page{size:A4;margin:11mm 13mm 12mm}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-heading{margin-bottom:8px;padding-bottom:7px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-band{padding:10px 14px;margin-bottom:10px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report h2{margin:8px 0 4px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-metric{min-height:42px;padding:8px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-sketch{padding:5px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-sketch img{max-height:128px!important;width:100%;object-fit:contain;display:block}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-table td,.kingspan-estudio-page.dsy-report-print-mode .dsy-report-table th{padding:3px 5px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-footer{padding-top:5px;margin-top:7px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report>p{font-size:8.6px;line-height:1.35;margin:5px 0}
}

/* Local photo overlay: no upload, no effect on quantities. */
.kingspan-estudio-page .ks-photo-panel{padding:16px 18px;background:#fff;border-top:1px solid #e2eae0}
.kingspan-estudio-page .ks-photo-panel[hidden]{display:none!important}
.kingspan-estudio-page .ks-photo-panel label{display:block;font-size:11px;font-weight:700;color:#325d41;margin-bottom:12px}
.kingspan-estudio-page .ks-photo-panel input[type=file]{display:block;max-width:100%;font-size:12px;margin-top:8px}
.kingspan-estudio-page .ks-photo-panel input[type=range]{display:block;width:100%;margin-top:7px;accent-color:#1f7044}
.kingspan-estudio-page .ks-photo-panel p{color:#68806c;font-size:11px;line-height:1.55}
.kingspan-estudio-page #ks-clear-photo{color:#8e5042;font-size:11px;border:1px solid #e6d6d0;background:#fff;border-radius:7px;padding:8px 12px;cursor:pointer}
.kingspan-estudio-page .ks-photo-sliders{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.kingspan-estudio-page #ks-view-canvas.ks-draggable{cursor:grab;touch-action:none}
.kingspan-estudio-page #ks-view-canvas.ks-dragging{cursor:grabbing}
@media(max-width:550px){.kingspan-estudio-page .ks-view-modes{gap:5px;padding:12px}.kingspan-estudio-page .ks-view-modes button{flex:1;padding:9px 7px;font-size:10px}}

/* Una / dos aguas and preliminary edge-trim schedule. Scoped to Kingspan. */
.kingspan-estudio-page .ks-roof-geometry{border:1px solid #dce9dc;background:#f7faf5;border-radius:10px;padding:12px;margin:8px 0 16px}
.kingspan-estudio-page .ks-roof-geometry label{margin-bottom:8px}
.kingspan-estudio-page #ks-second-slope[hidden],.kingspan-estudio-page #ks-trim-controls[hidden],.kingspan-estudio-page #ks-trim-results[hidden]{display:none!important}
.kingspan-estudio-page .ks-trim-controls{margin:6px 0 20px}
.kingspan-estudio-page .ks-trim-results{margin-top:18px;background:#fff;border:1px solid #dfe5dd;border-radius:17px;padding:21px 24px}
.kingspan-estudio-page .ks-trim-results .eyebrow{font-size:10px;letter-spacing:1px;color:#688369}
.kingspan-estudio-page .ks-trim-results h3{font-size:19px;color:#264e35;margin:6px 0 17px;font-weight:600}
.kingspan-estudio-page .ks-trim-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.kingspan-estudio-page .ks-trim-card{border:1px solid #e4ebe2;background:#fbfcf9;border-radius:9px;padding:12px;min-width:0}
.kingspan-estudio-page .ks-trim-card>strong{display:block;font-size:12px;color:#22543a}
.kingspan-estudio-page .ks-trim-card-numbers{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:10px 0}
.kingspan-estudio-page .ks-trim-card-numbers span{color:#315b3f;font-size:17px;font-weight:650}
.kingspan-estudio-page .ks-trim-card-numbers b{color:#245c3c;font-size:12px}
.kingspan-estudio-page .ks-trim-card small{display:block;font-size:10px;color:#69806d;line-height:1.55}
.kingspan-estudio-page .ks-trim-total{margin:14px 0;font-size:12px;color:#285b3f;font-weight:700;line-height:1.5}
.kingspan-estudio-page .ks-trim-results .fine{font-size:11px;line-height:1.6;color:#687c6b}
@media(max-width:980px){.kingspan-estudio-page .ks-trim-grid{grid-template-columns:1fr}}
@media print{
 .kingspan-estudio-page .ks-trim-results{display:none!important}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-trim-report-table td,.kingspan-estudio-page.dsy-report-print-mode .dsy-trim-report-table th{padding:2px 6px!important}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-trim-report-note{font-size:8px!important;margin:3px 0!important}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-sketch img{max-height:105px!important}
}

@media print{
 @page{size:A4;margin:8mm 11mm 9mm}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-sketch img{max-height:85px!important}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-band{padding:7px 12px;margin-bottom:6px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-metrics{gap:5px;margin-bottom:5px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-metric{min-height:34px;padding:5px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report h2{margin:6px 0 3px;font-size:10px}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-table th,.kingspan-estudio-page.dsy-report-print-mode .dsy-report-table td{font-size:8px;padding:2px 5px;line-height:1.2}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report>p{font-size:7.8px;line-height:1.23;margin:3px 0}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-trim-report-note{font-size:7.6px!important;margin:2px 0!important}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-source{font-size:7px;overflow-wrap:anywhere}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-footer{font-size:8px;padding-top:3px;margin-top:4px}
}

/* Ensure mobile flow matches other DISAYM Studio calculators. */
@media(max-width:760px){
 .kingspan-estudio-page .ks-viewer{order:1}
 .kingspan-estudio-page .ks-results{order:2}
 .kingspan-estudio-page .ks-trim-results{order:3;margin:0}
 .kingspan-estudio-page .ks-tech{order:4}
 .kingspan-estudio-page .ks-actions{order:5}
 .kingspan-estudio-page #roof-status{order:6}
}
@media print{
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report-sketch img{max-height:165px!important}
 .kingspan-estudio-page.dsy-report-print-mode .dsy-report>p{font-size:8.4px;line-height:1.32}
}
