:root{--ink:#0a1a2f;--muted:#5b6877;--line:#dce3ea;--soft:#f3f5f7;--green:#176f50;--green-soft:#e3f0e9;--blue:#39769b;--amber:#b97b18;--red:#b42318}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:Manrope,system-ui,sans-serif}.site-nav{height:90px;display:flex;align-items:center;gap:42px;padding:0 max(5vw,32px);border-bottom:1px solid var(--line)}.brand{width:130px;height:52px}.brand img{display:block;width:100%;height:100%;object-fit:contain}.site-nav ul{display:flex;gap:24px;padding:0;margin:0;list-style:none}.site-nav a{text-decoration:none;color:var(--muted);font-size:.82rem}.site-nav a.active{color:var(--ink);font-weight:800}main{max-width:1280px;margin:auto;padding:58px 28px 70px}.calculator-header{margin:0 0 25px}.eyebrow{margin:0 0 9px;font-size:.7rem;font-weight:800;letter-spacing:.13em;color:var(--muted)}h1{margin:0;font-family:Sora,sans-serif;font-size:clamp(2.8rem,5.5vw,5rem);font-weight:500;line-height:1;letter-spacing:-.065em}.lead{max-width:680px;margin:13px 0 0;color:var(--muted);line-height:1.55}.preset-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 24px}.preset-row>span{margin-right:5px;color:var(--muted);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.preset-row button{height:35px;padding:0 12px;border:1px solid #cbd5df;background:#fff;color:var(--ink);font:700 .76rem Manrope,sans-serif;cursor:pointer}.preset-row button:hover{background:#e8f1ec;border-color:#97b9a8}.app-grid{display:grid;grid-template-columns:minmax(390px,.86fr) minmax(500px,1.14fr);gap:20px;align-items:start}.card{border:1px solid var(--line);background:#fff}.panel{padding:26px}.section-heading{display:flex;align-items:center;gap:9px;margin:0 0 23px}.section-heading p{margin:0;color:var(--green);font-size:.74rem;font-weight:800}.section-heading h2{margin:0;font-size:1.1rem}.input-group{border:0;border-top:1px solid var(--line);margin:0;padding:20px 0}.input-group:first-of-type{padding-top:0;border-top:0}.input-group:last-child{padding-bottom:0}.input-group legend{margin:0 0 14px;padding:0;color:var(--muted);font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.field-row{display:grid;gap:10px}.field-row.two{grid-template-columns:1fr 1fr}label{min-width:0}label>span{display:block;margin-bottom:6px;color:#415166;font-size:.76rem;font-weight:700}input,select{width:100%;min-width:0;height:39px;padding:0 10px;border:1px solid #cbd5df;border-radius:0;background:#fff;color:var(--ink);font:600 .86rem Manrope,sans-serif}input:focus,select:focus{outline:2px solid #9dc3b0;outline-offset:1px}.unit-input{display:flex}.unit-input input{flex:1}.unit-input span{display:flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:56px;height:39px;margin:0;border:1px solid #cbd5df;border-left:0;background:#f6f8fa;color:#405066;font-size:.79rem;font-weight:700}.custom-field{margin-top:10px}.helper,.room-volume{margin:8px 0 0;color:var(--muted);font-size:.72rem;line-height:1.45}.room-volume strong{color:var(--ink)}.result-heading{margin-bottom:12px}.result-summary{padding:22px;background:var(--green);color:#fff}.result-summary.warning{background:var(--amber)}.result-summary.alert{background:var(--red)}.result-summary>p:first-child{margin:0 0 8px;color:#e6f0eb;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.summary-value{font:500 clamp(2.6rem,5vw,4.5rem)/1 Sora,sans-serif;letter-spacing:-.06em}.summary-unit{display:block;margin-top:5px;font-size:.86rem;font-weight:800}.status-text{min-height:20px;margin:16px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.3);color:#fff;font-size:.8rem;line-height:1.45}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:17px}.summary-grid div{min-width:0}.summary-grid span{display:block;color:rgba(255,255,255,.72);font-size:.65rem;letter-spacing:.04em;text-transform:uppercase}.summary-grid strong{display:block;margin-top:4px;font-size:.85rem}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.metric{padding:16px;border:1px solid var(--line)}.metric span{display:block;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.metric strong{display:block;margin:7px 0 2px;font-size:1.38rem;letter-spacing:-.04em}.metric small{display:block;color:var(--muted);font-size:.72rem}.chart-card{margin-top:20px;padding:20px;border:1px solid var(--line)}.chart-head{display:flex;justify-content:space-between;gap:18px;align-items:start}.chart-head h3{margin:0;font-size:1rem}.chart-head p{max-width:390px;margin:4px 0 0;color:var(--muted);font-size:.75rem;line-height:1.45}.chart-duration{padding:5px 8px;background:var(--soft);color:var(--muted);font-size:.7rem;font-weight:800;white-space:nowrap}.chart{height:280px;margin-top:16px}.chart svg{display:block;width:100%;height:100%;overflow:visible}.chart text{fill:#5b6877;font-family:Manrope,system-ui,sans-serif;font-size:11px}.chart .axis{stroke:#c7d1da;stroke-width:1}.chart .grid{stroke:#edf0f2;stroke-width:1}.chart .curve{fill:none;stroke:var(--green);stroke-width:3}.chart .target{stroke:var(--red);stroke-width:1.5;stroke-dasharray:5 4}.chart .steady{stroke:var(--blue);stroke-width:1.5;stroke-dasharray:2 4}.chart-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:.71rem}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{display:block;width:19px;height:3px}.line-key{background:var(--green)}.target-key{background:repeating-linear-gradient(to right,var(--red) 0 5px,transparent 5px 8px)}.steady-key{background:repeating-linear-gradient(to right,var(--blue) 0 2px,transparent 2px 5px)}.explanation{display:grid;grid-template-columns:1.1fr .85fr 1.5fr;gap:30px;align-items:start;margin-top:22px;padding:24px}.explanation h2{margin:0;font-size:1.14rem}.formula{padding:14px;border:1px solid var(--line);font-family:Sora,sans-serif;font-size:.86rem;line-height:1.7}.method-grid{display:grid;gap:9px}.method-grid p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.5}.method-grid strong{color:var(--ink)}footer{padding:22px 28px;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem;text-align:center}@media(max-width:950px){.app-grid{grid-template-columns:1fr}.site-nav{gap:22px}.site-nav ul{gap:13px}.explanation{grid-template-columns:1fr}}@media(max-width:620px){.site-nav{height:70px;padding:0 17px}.brand{width:104px}.site-nav ul{overflow:auto;white-space:nowrap}.site-nav li:not(:nth-child(-n+2)){display:none}main{padding:38px 16px 50px}.panel{padding:18px}.field-row.two,.metric-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr 1fr}.chart-card{padding:15px}.chart{height:240px}.chart-head{display:block}.chart-duration{display:inline-block;margin-top:10px}.explanation{padding:18px;gap:18px}}.calculator-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end}.calculator-actions{display:flex;gap:8px;flex-wrap:wrap}.calculator-actions button{height:38px;padding:0 12px;border:1px solid #0a1a2f;background:#0a1a2f;color:#fff;font:800 .78rem Manrope,system-ui,sans-serif;cursor:pointer}.calculator-actions button:last-child{background:#fff;color:#0a1a2f}.pdf-report{display:none}@media(max-width:620px){.calculator-heading{display:block}.calculator-actions{margin-top:18px}}@media print{@page{size:A4 portrait;margin:14mm}body>*:not(.pdf-report){display:none!important}.pdf-report{display:block!important;color:#0a1a2f;font:10pt Arial,sans-serif}.pdf-report h1{margin:0;font-size:25pt}.pdf-report h2{margin:20px 0 8px;font-size:13pt}.pdf-report p{color:#405066}.pdf-report .pdf-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #dce3ea;background:#dce3ea}.pdf-report .pdf-meta div{padding:9px;background:#f4f6f8}.pdf-report .pdf-meta span{display:block;color:#5b6573;font-size:7pt;font-weight:bold;text-transform:uppercase}.pdf-report .pdf-result{margin:15px 0;padding:16px;background:#176f50;color:#fff}.pdf-report .pdf-result strong{display:block;margin-top:5px;font-size:28pt}.pdf-report table{width:100%;border-collapse:collapse}.pdf-report th,.pdf-report td{padding:7px;border-bottom:1px solid #dce3ea;text-align:left}.pdf-report th{font-size:7pt;text-transform:uppercase;color:#5b6573}.pdf-report .pdf-footer{margin-top:16px;padding-top:8px;border-top:1px solid #dce3ea;font-size:8pt;color:#5b6573}}
:root{--print-ink:#0a1a2f}.calculator-actions select{height:38px;min-width:180px;padding:0 30px 0 12px;border:1px solid var(--ink);background:#fff;color:var(--ink);font:800 .78rem Manrope,system-ui,sans-serif;cursor:pointer}.pdf-report .pdf-chart{height:210px;border:1px solid #dce3ea}.pdf-report .pdf-chart svg{display:block;width:100%;height:100%;overflow:visible}.pdf-report .pdf-chart text{fill:#5b6877;font:8pt Arial,sans-serif}.pdf-report .pdf-chart .axis{stroke:#c7d1da}.pdf-report .pdf-chart .grid{stroke:#edf0f2}.pdf-report .pdf-chart .curve{fill:none;stroke:#176f50;stroke-width:3}.pdf-report .pdf-chart .target{stroke:#b42318;stroke-width:1.5;stroke-dasharray:5 4}.pdf-report .pdf-chart .steady{stroke:#39769b;stroke-width:1.5;stroke-dasharray:2 4}.pdf-report .pdf-chart .outdoor{stroke:#667e99;stroke-width:1;stroke-dasharray:2 4}@media(max-width:620px){.calculator-actions select{min-width:0;flex:1 1 180px}}@media print{.pdf-report h2{margin:16px 0 8px}}
:root{--print-ink:#0a1a2f}.chart .curve-over{stroke:var(--red);stroke-width:3.5}.chart .crossing{fill:var(--red);stroke:#fff;stroke-width:2}.pdf-report .pdf-chart .curve-over{stroke:#b42318;stroke-width:3.5}.pdf-report .pdf-chart .crossing{fill:#b42318;stroke:#fff;stroke-width:2}
:root{--print-ink:#0a1a2f}.calculator-actions{align-items:end}.calculator-actions button{height:39px;background:#fff;color:var(--ink)}
:root{--print-ink:#0a1a2f}.result-summary.empty{background:#f3f5f7;color:var(--ink);border:1px solid var(--line)}.result-summary.empty>p:first-child,.result-summary.empty .summary-grid span{color:var(--muted)}.result-summary.empty .status-text{color:var(--muted);border-top-color:var(--line)}
.pdf-export-dialog{width:min(520px,calc(100vw - 32px));padding:0;border:0;box-shadow:0 22px 60px rgba(10,26,47,.26)}.pdf-export-dialog::backdrop{background:rgba(10,26,47,.42)}.pdf-export-form{display:grid;gap:16px;padding:28px}.pdf-export-form h2{margin:0;font:500 1.65rem Sora,sans-serif;letter-spacing:-.04em}.pdf-export-form>p{margin:-6px 0 2px;color:var(--muted);font-size:.86rem;line-height:1.5}.pdf-export-form label>span{margin-bottom:7px}.pdf-export-form small{color:var(--muted);font-weight:600}.pdf-export-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:8px}.pdf-export-actions button{height:39px;padding:0 14px;border:1px solid var(--ink);background:#fff;color:var(--ink);font:800 .78rem Manrope,system-ui,sans-serif;cursor:pointer}.pdf-export-actions button[type="submit"]{background:var(--ink);color:#fff}@media(max-width:520px){.pdf-export-form{padding:22px}.pdf-export-actions{justify-content:stretch}.pdf-export-actions button{flex:1}}
.pdf-report-context{margin:4px 0 15px!important;color:#405066!important}.pdf-report-context strong{color:#0a1a2f}

.pdf-date-options{display:flex;flex-wrap:wrap;gap:16px}.pdf-date-options label{display:flex;align-items:center;gap:7px}.pdf-date-options input{width:16px;height:16px;margin:0}

/* Enhetlig typografi för alla PDF-dialoger. */
#pdfExportDialog{font-family:Manrope,system-ui,sans-serif;font-size:14px;color:#0a1a2f;width:min(520px,calc(100vw - 32px));padding:26px;border:1px solid #dce3ea}
#pdfExportDialog form{display:flex;flex-direction:column;gap:0;padding:0}
#pdfExportDialog h2{font:500 1.5rem/1.3 Sora,Manrope,system-ui,sans-serif;letter-spacing:-.04em;margin:0 0 8px}
#pdfExportDialog form>label,#pdfExportDialog form>label>span{font:600 14px/1.5 Manrope,system-ui,sans-serif;color:#415166}
#pdfExportDialog form>label{display:block;margin:16px 0 0}
#pdfExportDialog form>label>span{display:block;margin:0}
#pdfExportDialog input[type=text]{font:500 14px Manrope,system-ui,sans-serif;width:100%;height:42px;margin:7px 0 0;padding:0 10px;border:1px solid #cbd5df;border-radius:0}
#pdfExportDialog small{font:500 12px Manrope,system-ui,sans-serif;color:#5b6877}
#pdfExportDialog .pdf-date-options{display:flex;gap:16px;margin:18px 0 0}
#pdfExportDialog .pdf-date-options label{display:flex!important;align-items:center;gap:8px!important;margin:0!important;font:500 14px Manrope,system-ui,sans-serif;color:#415166}
#pdfExportDialog .pdf-date-options input{width:16px;height:16px;margin:0;padding:0;accent-color:#176f50}
#pdfExportDialog .pdf-dialog-actions,#pdfExportDialog .pdf-export-actions{display:flex;justify-content:flex-end;gap:10px;margin:22px 0 0}
#pdfExportDialog button{font:700 13px Manrope,system-ui,sans-serif;height:40px;padding:0 14px;margin:0;border:1px solid #0a1a2f;background:#fff;color:#0a1a2f;border-radius:0}
#pdfExportDialog button[type=submit]{background:#0a1a2f;color:#fff}
#pdfExportDialog form>p{font:400 12px/1.5 Manrope,system-ui,sans-serif;color:#5b6877;margin:16px 0 0}
