.atelier-calculator{--soft:#edf4ef;color:var(--ink);scroll-margin-top:30px;overflow-wrap:anywhere}
.atelier-calculator [hidden]{display:none!important}
.atelier-calculator>.intro{max-width:720px;color:var(--muted)}
.atelier-calculator>.eyebrow{color:var(--primary)}
.atelier-calculator>h2{max-width:850px;font-size:clamp(32px,4vw,52px)}
.atelier-calculator>h2 span{color:var(--primary)}
.atelier-calculator .layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:24px;align-items:start}
.atelier-calculator .card{padding:clamp(18px,2.5vw,28px);border:1px solid var(--line);border-radius:16px;background:#fff;margin-bottom:20px;min-width:0}
.atelier-calculator .card h2{font-size:25px;letter-spacing:-.02em}
.atelier-calculator h3{font-size:18px}
.atelier-calculator .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.atelier-calculator .wide{grid-column:1/-1}
.atelier-calculator label{display:block;font-size:14px;font-weight:650}
.atelier-calculator :is(input,select){width:100%;min-width:0;min-height:44px;font:inherit;padding:11px;border:1px solid #a4b5aa;border-radius:9px;background:#fff;color:var(--ink);margin-top:7px}
.atelier-calculator input[type=checkbox]{min-height:20px;flex-shrink:0;accent-color:var(--primary)}
.atelier-calculator input:invalid{border-color:#ae5226}
.atelier-calculator :is(small,.hint){font-size:13px;color:var(--muted);font-weight:400}
.atelier-calculator .hint{margin:10px 0}
.atelier-calculator .note{background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:14px;font-size:14px;margin:14px 0}
.atelier-calculator .result{background:var(--primary);color:#fff}
.atelier-calculator .result :is(.hint,.eyebrow,.metric span){color:#e4eee7}
.atelier-calculator .big{font-size:clamp(28px,3.4vw,43px);line-height:1.2;font-weight:800;letter-spacing:-.04em;margin:7px 0;font-variant-numeric:tabular-nums}
.atelier-calculator .big small{font-size:17px;color:inherit}
.atelier-calculator .metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}
.atelier-calculator .metric{border-top:1px solid #ffffff66;padding-top:14px}
.atelier-calculator .metric strong{font-size:23px;display:block}
.atelier-calculator .metric span{font-size:13px}
.atelier-calculator .line{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.atelier-calculator .line strong{text-align:right}
.atelier-calculator .total{font-size:17px;font-weight:800;padding-top:14px}
.atelier-calculator :is(input,select,summary,a,button):focus-visible{outline:3px solid var(--cta);outline-offset:4px}
.atelier-calculator details{margin:18px 0}
.atelier-calculator summary{cursor:pointer;font-size:15px;font-weight:700;min-height:44px;padding-block:10px}
.atelier-calculator .scroll{overflow:auto;max-width:100%}
.atelier-calculator table{width:100%;border-collapse:collapse;font-size:13px}
.atelier-calculator :is(td,th){text-align:right;padding:11px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
.atelier-calculator :is(td,th):first-child{text-align:left}
.atelier-calculator th{color:var(--muted);font-size:12px}
.atelier-calculator tr.cross{background:var(--soft);font-weight:750}
.atelier-calculator .chart{width:100%;height:auto;display:block}
.atelier-calculator .legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.atelier-calculator .dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#287754;margin-right:5px}
.atelier-calculator .dot.cost{background:#9b7251}
.atelier-calculator .error{padding:20px;background:#ffeadb;border-radius:12px}
.atelier-calculator .scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.atelier-calculator .scenario{padding:13px;background:var(--soft);border-radius:12px;font-size:12px}
.atelier-calculator .scenario strong{display:block;font-size:20px;margin:6px 0}
.atelier-calculator .scenario.active{border:1px solid var(--primary)}
.atelier-calculator .source{font-size:14px;color:var(--muted)}
.atelier-calculator .atelier-quote{padding:24px;margin-bottom:24px;border:1px solid var(--line);border-radius:16px;background:var(--soft)}
.atelier-calculator .atelier-quote p{font-size:14px;margin-bottom:16px;max-width:680px}
.atelier-calculator .atelier-quote small{display:block;margin-top:12px}
.atelier-calculator .atelier-table-details{border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.atelier-calculator .atelier-table-details>summary{padding:16px 20px;font-size:18px;line-height:1.4;color:var(--primary);font-weight:750}
.atelier-calculator .atelier-table-details>summary span{display:block;margin-top:5px;font-size:13px;font-weight:400;color:var(--muted)}
.atelier-calculator .atelier-table-details[open]>summary span{display:none}
.atelier-calculator .atelier-table-details .scroll{padding:0 16px 16px;background:#fff}
.atelier-calculator .atelier-tool{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--primary);font:inherit;font-size:14px;font-weight:650;text-align:left}
.atelier-calculator .atelier-tool:hover{background:var(--soft)}
.atelier-calculator .atelier-tool::after{display:none}
@media(max-width:800px){.atelier-calculator .layout{grid-template-columns:1fr}.atelier-calculator .card{padding:20px}.atelier-calculator .scenarios{gap:6px}.atelier-calculator .scenario{padding:10px}.atelier-calculator .scenario strong{font-size:18px}}
@media(max-width:380px){.atelier-calculator .fields,.atelier-calculator .metrics,.atelier-calculator .scenarios{grid-template-columns:1fr}.atelier-calculator .atelier-quote{padding:18px}}
@media print{body:has(.atelier-calculator)>:is(header,footer,.sticky-quote,.idle-popup){display:none}body:has(.atelier-calculator) .site-main>*:not(.atelier-calculator){display:none}.atelier-calculator .atelier-download-actions,.atelier-calculator .atelier-tool,.atelier-calculator .atelier-quote{display:none}.atelier-calculator .layout{display:block}.atelier-calculator .card{break-inside:avoid;padding:15px}.atelier-calculator .result{background:#fff;color:#183c35}.atelier-calculator .result :is(.hint,.eyebrow,.metric span){color:#52635b}.atelier-calculator .big{font-size:29px}.atelier-calculator details>*{display:block}.atelier-calculator table{font-size:10px}.atelier-calculator :is(td,th){padding:5px}}
/* Frame complete input and output groups rather than individual decorative rules. */
.atelier-calculator .atelier-input-panel,.atelier-calculator .atelier-output-panel{padding:20px;border:2px solid #9eb6a9;border-radius:18px;min-width:0}
.atelier-calculator .atelier-input-panel{background:#f7faf8;margin-bottom:24px}
.atelier-calculator .atelier-output-panel{border-color:var(--primary);background:#fff}
.atelier-calculator .atelier-panel-label{margin:0 0 16px;color:var(--primary);font-size:20px;font-weight:800;line-height:1.4}
.atelier-calculator .atelier-input-panel>.card{padding:0;border:0;border-radius:0;background:transparent;margin-bottom:24px}
.atelier-calculator .atelier-input-panel>details{margin-bottom:0}
.atelier-calculator .atelier-output-heading{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}
.atelier-calculator .atelier-output-heading .atelier-panel-label{margin-bottom:4px}
.atelier-calculator .atelier-download-actions{display:flex;flex-wrap:wrap;gap:10px}
.atelier-calculator .atelier-pdf{background:var(--primary);border-color:var(--primary);color:#fff;text-align:center}
.atelier-calculator .atelier-pdf:hover{background:#183d2c}
.atelier-calculator #projection{border:2px solid var(--primary);margin-bottom:0}
.atelier-calculator .atelier-assumptions-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
@media(max-width:800px){.atelier-calculator .atelier-input-panel,.atelier-calculator .atelier-output-panel{padding:18px}}
@media print{.atelier-calculator .atelier-input-panel,.atelier-calculator .atelier-output-panel{border:0;padding:0}.atelier-calculator .atelier-input-column{display:contents}}
@media(max-width:800px){.atelier-calculator .atelier-input-column{display:contents}.atelier-calculator .atelier-input-panel{order:0;margin-bottom:0}.atelier-calculator .atelier-output-panel{order:1}.atelier-calculator #projection{order:2}}

/* Four useful columns, with the full before/after data retained in CSV. */
.atelier-calculator .atelier-table-hint{padding:12px 16px;margin:0;font-size:12px;color:var(--muted)}
.atelier-calculator .atelier-table-details .scroll{max-height:360px;padding:0 12px 12px;overscroll-behavior:contain}
.atelier-calculator .atelier-table-details table{font-variant-numeric:tabular-nums;font-size:12px;line-height:1.4}
.atelier-calculator .atelier-table-details :is(td,th){padding:10px 7px}
.atelier-calculator .atelier-table-details thead th{position:sticky;top:0;z-index:1;background:#edf4ef;color:var(--primary);white-space:normal;font-size:12px}
.atelier-calculator .atelier-table-details tbody th{color:var(--ink);font-weight:600}
.atelier-calculator .atelier-table-details tbody tr:nth-child(even){background:#f7faf8}
.atelier-calculator .atelier-table-details tbody tr.cross{background:#dcebdc;color:var(--primary);font-weight:750}
@media print{
 .atelier-calculator #projection{break-inside:auto}
 .atelier-calculator .atelier-table-details,.atelier-calculator .atelier-table-details .scroll{max-height:none;overflow:visible;border:0;padding:0}
 .atelier-calculator .atelier-table-details thead{display:table-header-group}
 .atelier-calculator .atelier-table-details thead th{position:static}
 .atelier-calculator .atelier-table-details tr{break-inside:avoid}
 .atelier-calculator .atelier-table-details table{font-size:10px;width:100%}
 .atelier-calculator .atelier-table-details :is(td,th){padding:6px}
 .atelier-calculator .atelier-table-hint{padding-inline:0}
}

.atelier-calculator .atelier-download-actions{margin:0 0 24px}
.atelier-calculator #projection h2{font-size:24px;line-height:1.25;margin-bottom:12px}
.atelier-calculator #projection .legend{font-size:14px;gap:8px 16px;margin-top:10px}
.atelier-calculator .atelier-table-details>summary{font-size:17px;padding:14px 16px}
.atelier-calculator .chart{min-height:240px}
@media print{.atelier-calculator .atelier-download-actions{display:none}}
