:root{--navy:#0F172A;--panel:#172033;--ink:#172033;--muted:#526174;--green:#2563EB;--accent:#2563EB;--accent-bright:#3B82F6;--link-dark:#93C5FD;--off-white:#F8FAFC;--secondary-dark:#B8C4D6;--line:#CBD5E1;--bg:#0F172A;--soft:#EFF6FF;--danger:#B42336;--danger-dark:#FDA4AF;--border-dark:#3F4D64;--border-shell:rgba(255,255,255,.15);--border-focus:#64748B;--shadow:rgba(0,0,0,.16)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:0;border-radius:10px;padding:13px 20px;min-height:48px;background:var(--green);color:white;font-weight:650}button:hover{filter:brightness(.95)}button:disabled{opacity:.45;cursor:default}.ghost{background:transparent;color:var(--ink)}.secondary{background:var(--soft);color:var(--ink)}.top{max-width:1160px;margin:auto;padding:24px 28px;display:flex;justify-content:space-between;align-items:center}.brand{color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:10px;font-weight:750;font-size:19px}.brand small{font-size:11px;font-weight:500;color:var(--muted)}.mark{width:35px;height:35px;background:var(--green);color:white;display:grid;place-content:center;border-radius:9px;position:relative;font-size:23px}.mark span{position:absolute;font-size:12px;right:4px;bottom:1px}main{max-width:1020px;margin:auto;padding:25px 28px 80px}.start{max-width:660px;margin:65px auto}.eyebrow{font-size:12px;letter-spacing:1.5px;font-weight:700;text-transform:uppercase;color:var(--green)}h1{font-size:38px;letter-spacing:-1.3px;line-height:1.15;margin:14px 0 18px}h2{font-size:20px;margin:0 0 12px}p{color:var(--muted);margin:10px 0 22px}.start p{font-size:18px;max-width:540px}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:26px;margin:18px 0}.start .card{padding:24px}.start textarea{min-height:180px;border:0;padding:0;resize:vertical;margin:0 0 18px}.start button{width:100%}.hint{font-size:12px;color:var(--muted);margin-top:15px}.progress{display:flex;gap:12px;margin-bottom:36px;align-items:center}.step{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted);flex:1}.step span{border:1px solid var(--line);border-radius:50%;width:28px;height:28px;display:grid;place-content:center}.step.active{color:var(--green);font-weight:700}.step.active span,.step.done span{background:var(--green);color:white;border-color:var(--green)}.subtitle{max-width:650px}.chip{display:inline-block;padding:5px 11px;border-radius:20px;background:var(--soft);font-size:12px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.summary{background:var(--ink);color:white;position:sticky;top:20px}.summary p,.summary small{color:var(--secondary-dark)}.amount{font-size:32px;letter-spacing:-1px;font-weight:700}.metric{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--border-shell);font-size:14px}.summary button{width:100%;background:var(--accent);color:var(--ink);margin-top:18px}.question{padding:20px 0;border-bottom:1px solid var(--line)}.question:first-child{padding-top:0}.question:last-child{border-bottom:0}.question b{display:block;margin-bottom:10px}.choices{display:flex;gap:8px;flex-wrap:wrap}.choices button{background:var(--soft);color:var(--ink);padding:10px 20px}.choices button[aria-pressed=true]{background:var(--green);color:white}.actions{display:flex;justify-content:space-between;gap:10px;margin-top:24px}.notice{background:var(--soft);color:var(--ink);padding:15px 18px;border-radius:10px;font-size:14px;margin:15px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}label{font-size:13px;font-weight:650;display:block}input,textarea,select{width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:white;margin-top:7px;min-height:46px}textarea{min-height:100px}.row{padding:18px 0;border-bottom:1px solid var(--line)}.row:first-child{padding-top:0}.rowhead{display:flex;align-items:center;gap:8px}.rowhead input{font-weight:650;margin:0}.delete{background:transparent;color:var(--danger);padding:8px 13px;flex-shrink:0}.rowfields{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:12px;margin-top:10px}.rowsum{font-size:13px;text-align:right;color:var(--muted);margin-top:8px}.offer-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px}.paper{background:white;padding:38px;border:1px solid var(--line);border-radius:12px;margin:18px 0}.paperhead{display:flex;justify-content:space-between;border-bottom:2px solid var(--green);padding-bottom:24px;gap:16px}.paper h2{font-size:28px}.paper .contact{font-size:12px;white-space:pre-line}.offerbody{white-space:pre-line}.totals{margin-top:24px;border-top:1px solid var(--line)}.totals div{display:flex;justify-content:space-between;padding:8px 0}.totals .grand{font-size:20px;font-weight:700;border-top:1px solid var(--line);margin-top:5px;padding-top:15px}table{width:100%;border-collapse:collapse;font-size:13px;margin:20px 0}th,td{text-align:right;padding:10px 5px;border-bottom:1px solid var(--line)}th:first-child,td:first-child{text-align:left}th{font-size:11px;color:var(--muted)}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:10px;padding:12px 22px;display:none}.error{color:var(--danger);font-size:14px}.terms{font-size:13px;white-space:pre-line;margin-top:28px}.mini{font-size:13px}.empty{padding:20px;color:var(--muted)}@media(max-width:760px){.top{padding:16px}.brand{font-size:16px}.brand small{display:none}main{padding:20px 16px 50px}.start{margin:36px auto}h1{font-size:32px}.card{padding:20px}.progress{gap:5px;margin-bottom:26px}.step{font-size:10px;display:block;text-align:center}.step span{margin:0 auto 6px}.layout,.offer-layout{grid-template-columns:1fr}.summary{position:static}.paper{padding:20px}.fields{gap:12px}.rowfields{gap:8px}.paperhead{display:block}.paperhead>div+div{margin-top:15px}.offer-layout>.card{margin-bottom:0}table{font-size:11px}th,td{padding:8px 3px}}@media print{@page{size:A4;margin:18mm}body{background:white;color:var(--ink)}.top,.progress,.no-print,#toast{display:none!important}main{padding:0;max-width:none}.offer-layout{display:block}.paper{border:0;padding:0;margin:0;border-radius:0}.paperhead{display:flex}.paper table tr{break-inside:avoid}.totals,.terms{break-inside:avoid}button{display:none!important}}

.price-control{position:sticky;top:8px;z-index:3;box-shadow:0 6px 22px var(--shadow);padding:18px 22px}.live-numbers{display:flex;justify-content:space-between;gap:15px;align-items:center}.live-numbers span,.live-numbers strong,.live-numbers b{display:block}.live-numbers strong{font-size:29px;line-height:1.25}.live-numbers>div:last-child{text-align:right}.price-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:12px 0}.price-control .mini{color:var(--muted)}@media(max-width:760px){.price-control{padding:14px;top:0;margin:12px 0}.live-numbers strong{font-size:25px}.price-fields{gap:10px;margin:8px 0}.price-fields label{font-size:11px}.price-fields input,.price-fields select{padding:8px;min-height:44px}.price-control #priceReason{font-size:11px}.live-numbers .mini{font-size:11px}}@media print{.price-control{display:none!important}}

/* Launch pages share the existing palette, spacing and controls. */
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.skip-link{position:absolute;top:-80px;left:16px;background:white;padding:12px;z-index:20}.skip-link:focus{top:12px}a{color:var(--accent)}a.button{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px;background:var(--green);color:white;border-radius:10px;padding:13px 20px;font-weight:650}a.button.secondary{background:var(--soft);color:var(--ink)}.site-footer{max-width:1020px;margin:auto;padding:20px 28px 35px;border-top:1px solid var(--line)}.site-footer nav{display:flex;flex-wrap:wrap;gap:4px 16px}.site-footer a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}.site-footer p{font-size:12px;margin:12px 0}.seo-info,.info-page,.tool-page{max-width:850px;margin:auto}.seo-info{max-width:660px;margin-top:40px}.seo-info p{font-size:15px}.start{margin:35px auto 25px}.start h1{font-size:35px}.start textarea{padding-top:10px}.header-actions{display:flex;align-items:center;gap:4px}.recovery{padding:16px;background:var(--soft);border:1px solid var(--line);border-radius:12px;margin:15px 0}.recovery p{font-size:14px;margin:0 0 10px}.tool-result{background:var(--ink);color:white}.tool-result .metric{font-size:15px}.tool-result p{color:var(--secondary-dark)}.tool-result strong{font-size:25px}.info-page h1{font-size:36px}.info-page h2:not(:first-child){margin-top:28px}.fields>div{min-width:0}.invalid{color:var(--danger);font-size:12px}.offer-layout>section{align-self:start}.offer-layout>div{min-width:0}.paper{overflow-wrap:anywhere}.paper table{table-layout:fixed}.paper th:first-child{width:32%}.paper td{overflow-wrap:anywhere}.header-actions button{padding:12px}.site-footer a:focus-visible{outline-offset:0}summary{min-height:44px;cursor:pointer}.rowfields{grid-template-columns:1fr 1fr 1.4fr}input,textarea,select{min-width:0}input[aria-invalid=true]{border-color:var(--danger)}
@media(max-width:760px){.top{gap:8px;flex-wrap:wrap}.header-actions{margin-left:auto}.header-actions button{font-size:12px;padding:9px 10px}.brand{font-size:15px}.start h1{font-size:30px}.start{margin-top:20px}.site-footer{padding:20px 16px 30px}.fields{grid-template-columns:1fr}.rowfields{grid-template-columns:1fr 1fr}.rowfields label:last-child{grid-column:1/-1}.paper{padding:16px}.paper table{font-size:10px}.paper th,.paper td{padding:8px 2px}.paper th:first-child{width:28%}.price-fields{grid-template-columns:1fr 1fr}.price-control{position:static}.price-control #priceReason{display:block}.summary{position:static}.tool-page h1{font-size:30px}.live-numbers strong{font-size:23px}.live-numbers{gap:8px}.info-page h1{font-size:30px}}@media(min-width:390px) and (max-width:760px){.price-control{position:sticky}}@media print{.site-footer,.skip-link,#storageStatus{display:none!important}.paper table{font-size:12px}.paper th:first-child{width:32%}}

/* OppdragsKalk 1.2: visual profile only. Light work surfaces on a navy shell. */
body{color:var(--off-white);font-family:Arial,Helvetica,sans-serif}body>main>h1,.start h1,.info-page>h1,.tool-page>h1{color:var(--off-white)}p,.hint,.empty{color:var(--secondary-dark)}a{color:var(--link-dark)}.eyebrow{color:var(--link-dark)}.top{border-bottom:1px solid var(--border-shell)}.brand{min-width:0;gap:8px}.brand-logo{display:block;width:240px;height:48px;max-width:100%;object-fit:contain}.brand small{color:var(--secondary-dark);white-space:nowrap}.ghost{color:var(--off-white)}.card,.paper,.recovery,.notice,.skip-link{color:var(--ink)}.card p,.card .mini,.card .hint,.paper p,.paper .mini,.recovery p,.notice p{color:var(--muted)}.card a,.paper a,.recovery a,.skip-link{color:var(--accent)}.card .ghost,.card .secondary{color:var(--ink)}.card{box-shadow:0 4px 18px var(--shadow);border-radius:14px}.summary,.tool-result{background:var(--panel);color:var(--off-white);border-color:var(--border-dark)}.summary p,.summary .mini,.summary small,.tool-result p{color:var(--secondary-dark)}.summary button{color:white}.amount,.tool-result strong{color:var(--link-dark)}.live-numbers strong{color:var(--accent)}.step{color:var(--secondary-dark)}.step.active{color:var(--link-dark)}.step span{border-color:var(--border-focus)}.step.active span,.step.done span{border-color:var(--accent)}.step.done{color:var(--off-white)}.paper{background:white}.paper h2{color:var(--ink)}.site-footer{border-color:var(--border-shell)}.site-footer p{color:var(--secondary-dark)}.error,.invalid{color:var(--danger)}.delete{color:var(--danger)}input,textarea,select{border-color:var(--line)}.start textarea{border:1px solid var(--line);padding:12px;min-height:170px}.notice{border:1px solid var(--line);border-left:4px solid var(--accent)}.price-control{box-shadow:0 4px 18px var(--shadow)}#toast{background:var(--panel);border:1px solid var(--border-focus);max-width:calc(100vw - 32px);width:max-content}:focus-visible{outline-color:var(--accent-bright)}.summary :focus-visible,.top :focus-visible{outline-color:var(--link-dark)}.metric{border-color:var(--border-shell)}.tool-result .metric{gap:12px}.skip-link{background:var(--off-white)}
@media(max-width:760px){.brand-logo{width:210px;height:42px}.top{align-items:center}.header-actions{gap:4px}.header-actions button{min-height:44px}.site-footer{margin-top:12px}.actions{flex-wrap:wrap}.metric b{overflow-wrap:anywhere}}
@media(max-width:389px){.brand-logo{width:198px;height:40px}.live-numbers{align-items:flex-start;flex-wrap:wrap}.live-numbers>div:last-child{text-align:left}.amount{font-size:28px}}
@media print{body{color:var(--ink);background:white}.paper p,.paper .mini{color:var(--muted)}a{color:var(--ink)}}

.error{color:var(--danger-dark)}.card .error,.card .invalid{color:var(--danger)}
.chip{color:var(--ink)}
