:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1c2927;background:#f4f6f3;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #1c2927;--muted: #62706d;--line: #d9dfdb;--surface: #ffffff;--soft: #eef2ef;--accent: #1f705f;--accent-soft: #dfeee9;--warning: #9a5c12;--warning-soft: #fff3dc;--danger: #9b3b35;--danger-soft: #fbeae8;--radius: 16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 88% 6%,rgba(31,112,95,.08),transparent 22rem),#f4f6f3}button,input,select{font:inherit}a{color:var(--accent)}.page-shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.site-header{border-bottom:1px solid rgba(28,41,39,.1);background:#f4f6f3d6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:var(--ink);font-size:1.1rem;font-weight:800;letter-spacing:-.035em;text-decoration:none}.brand span{color:var(--accent)}.privacy-label{color:var(--muted);font-size:.82rem}.hero{display:grid;grid-template-columns:1.35fr .65fr;align-items:end;gap:64px;padding:76px 0 48px}.eyebrow{display:block;margin-bottom:10px;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:720px;margin-bottom:0;font-size:clamp(2.65rem,6vw,5.25rem);line-height:.99;letter-spacing:-.065em}.hero>p{margin-bottom:4px;color:var(--muted);font-size:1rem;line-height:1.7}.calculator-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);gap:24px;align-items:start}.results-panel,.guideline-section,.medical-note,.sources{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 12px 40px #2635310a}.calculator-form{min-width:0;display:flex;flex-direction:column;gap:18px}.form-section{min-width:0;margin:0;padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 12px 40px #2635310a}.section-heading{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:14px;margin-bottom:24px;padding:0 0 20px;border-bottom:1px solid var(--line)}.section-heading-copy{display:flex;flex:1;flex-direction:column;gap:4px}.section-heading h2,.section-heading h3{margin:0;font-size:1.08rem;line-height:1.3}.section-heading p{margin:0;color:var(--muted);font-size:.82rem;font-weight:400}.step-badge{flex:0 0 auto;align-self:center;padding:7px 10px;border:1px solid rgba(31,112,95,.16);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.04em;line-height:1;white-space:nowrap}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.full-width{grid-column:1 / -1}label{min-width:0;display:flex;flex-direction:column;gap:8px;color:#33413e;font-size:.83rem;font-weight:700}input,select{width:100%;min-height:46px;border:1px solid #cbd3cf;border-radius:10px;outline:none;background:#fbfcfb;color:var(--ink);padding:0 13px;transition:border-color .14s ease,box-shadow .14s ease}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1f705f1f}input:disabled,select:disabled{cursor:not-allowed;opacity:.6}.input-with-unit{position:relative;display:block}.input-with-unit input{padding-right:67px}.input-with-unit>span{position:absolute;top:50%;right:12px;color:var(--muted);font-size:.74rem;font-weight:600;transform:translateY(-50%)}.helper-text{color:var(--muted);font-size:.73rem;font-weight:400;line-height:1.5}.step-recommendation{padding:16px;border:1px solid rgba(31,112,95,.18);border-radius:12px;background:var(--accent-soft)}.step-recommendation.is-low,.step-recommendation.is-building{border-color:#ead2a7;background:var(--warning-soft)}.step-recommendation.is-invalid{border-color:var(--line);background:var(--soft)}.step-recommendation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.step-recommendation-head>div{display:flex;flex-direction:column;gap:3px}.step-recommendation-head span{color:var(--muted);font-size:.67rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.step-recommendation-head strong{color:var(--ink);font-size:.9rem}.step-recommendation-head>strong{color:var(--accent);font-size:1rem}.step-recommendation.is-low .step-recommendation-head>strong,.step-recommendation.is-building .step-recommendation-head>strong{color:var(--warning)}.step-recommendation progress{width:100%;height:8px;display:block;margin:14px 0 7px;overflow:hidden;border:0;border-radius:999px;background:#1f705f1f;accent-color:var(--accent)}.step-recommendation progress::-webkit-progress-bar{border-radius:999px;background:#1f705f1f}.step-recommendation progress::-webkit-progress-value{border-radius:999px;background:var(--accent)}.step-recommendation progress::-moz-progress-bar{border-radius:999px;background:var(--accent)}.step-recommendation.is-low progress,.step-recommendation.is-building progress{accent-color:var(--warning)}.step-recommendation.is-low progress::-webkit-progress-value,.step-recommendation.is-building progress::-webkit-progress-value,.step-recommendation.is-low progress::-moz-progress-bar,.step-recommendation.is-building progress::-moz-progress-bar{background:var(--warning)}.step-progress-labels{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.66rem}.step-recommendation p{margin:12px 0 0;color:#52605d;font-size:.76rem;font-weight:400;line-height:1.55}.step-recommendation.is-invalid strong{font-size:.86rem}.step-recommendation.is-invalid p{margin-top:5px}.checkbox-row{min-height:54px;flex-direction:row;align-items:flex-start;gap:11px;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.checkbox-row input{width:18px;min-height:18px;margin:1px 0 0;accent-color:var(--accent)}.checkbox-row>span{display:flex;flex-direction:column;gap:3px}.checkbox-row small{color:var(--muted);font-weight:400}.results-panel{position:sticky;top:18px;min-height:640px;padding:30px}.results-header{padding-bottom:22px;border-bottom:1px solid var(--line)}.results-header h2{margin:0;font-size:1.55rem;letter-spacing:-.035em}.results-stack{display:flex;flex-direction:column;gap:18px;padding-top:22px}.goal-status{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border-radius:12px}.goal-status.is-safe{background:var(--accent-soft)}.goal-status.is-warning{background:var(--warning-soft)}.goal-status h3{margin:0;font-size:1.05rem}.status-dot{width:12px;height:12px;flex:0 0 auto;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #1f705f1f}.is-warning .status-dot{background:var(--warning);box-shadow:0 0 0 5px #9a5c121f}.message{border-radius:10px;padding:14px 16px;font-size:.82rem;line-height:1.55}.message h3{margin-bottom:8px;font-size:1rem}.message ul{margin:0;padding-left:18px}.message-warning{border:1px solid #efd6a9;background:var(--warning-soft);color:#76450c}.message-error{border:1px solid #ecc6c2;background:var(--danger-soft);color:#77312d}.metric-grid,.macro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.metric-card{min-width:0;padding:15px;border:1px solid var(--line);border-radius:11px;background:#fbfcfb}.metric-card p{min-height:2.2em;margin-bottom:10px;color:var(--muted);font-size:.7rem;line-height:1.25}.metric-card strong{display:block;overflow-wrap:anywhere;font-size:1.05rem;line-height:1.15;letter-spacing:-.025em}.metric-card small{display:block;margin-top:5px;color:var(--muted);font-size:.65rem}.deadline-card{display:grid;grid-template-columns:1fr auto;gap:24px;padding:20px;border-radius:12px;background:#1d312d;color:#f8fbf9}.deadline-card .eyebrow{color:#86c6b7}.deadline-card h3{margin-bottom:8px;font-size:1.05rem}.deadline-card p{margin:0;color:#c7d4d0;font-size:.75rem;line-height:1.55}.deadline-facts{min-width:135px;display:grid;gap:3px;align-content:center;padding-left:20px;border-left:1px solid rgba(255,255,255,.17)}.deadline-facts span{color:#9eb0aa;font-size:.64rem}.deadline-facts strong{margin-bottom:8px;font-size:.82rem}.compact-heading{align-items:end;margin-bottom:12px;padding-bottom:0;border-bottom:0}.macro-grid .metric-card p{min-height:auto}.calculation-note{display:flex;gap:8px;color:var(--muted);font-size:.72rem;line-height:1.5}.calculation-note strong{flex:0 0 auto;color:#3e4d49}.guideline-section{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:60px;margin-top:24px;padding:36px}.guideline-section h2,.medical-note h2{margin-bottom:10px;font-size:1.4rem;letter-spacing:-.035em}.guideline-section p,.medical-note p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.65}.recommendation-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:11px;background:var(--soft)}.check>span{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:var(--muted);background:var(--surface)}.check.is-met>span{color:#fff;background:var(--accent)}.check p{display:flex;flex-direction:column;gap:3px}.check strong{color:var(--ink);font-size:.78rem}.check small{color:var(--muted);font-size:.68rem}.medical-note{display:flex;align-items:flex-start;gap:18px;margin-top:24px;padding:28px 32px;border-color:#e5d3b4;background:#fffaf0}.medical-icon{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--warning);color:#fff;font-family:Georgia,serif;font-weight:700}.medical-note h2{margin-bottom:4px;font-size:1rem}.sources{margin:24px 0 80px;padding:0 28px}.sources summary{cursor:pointer;padding:22px 0;color:var(--ink);font-size:.86rem;font-weight:750}.sources-content{padding:0 0 24px;color:var(--muted);font-size:.82rem;line-height:1.6}.sources-content ul{columns:2;margin-bottom:0;padding-left:18px}.sources-content li{margin-bottom:7px;break-inside:avoid}footer{border-top:1px solid var(--line);background:#e9eeea}footer .page-shell{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--muted);font-size:.74rem}@media(max-width:980px){.hero{grid-template-columns:1fr;gap:24px}.hero>p{max-width:680px}.calculator-layout{grid-template-columns:1fr}.results-panel{position:static}.guideline-section{gap:32px}}@media(max-width:680px){.page-shell{width:min(100% - 24px,1180px)}.privacy-label{font-size:0}.privacy-label:after{content:"Lokal & privat";font-size:.75rem}.hero{padding:52px 0 34px}h1{font-size:clamp(2.5rem,15vw,4rem)}.form-section,.results-panel{padding:22px}.field-grid,.metric-grid,.macro-grid,.guideline-section,.recommendation-checks{grid-template-columns:1fr}.full-width{grid-column:auto}.metric-grid,.macro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deadline-card{grid-template-columns:1fr}.deadline-facts{grid-template-columns:1fr auto;padding:16px 0 0;border-top:1px solid rgba(255,255,255,.17);border-left:0}.deadline-facts strong{text-align:right}.compact-heading,.calculation-note{align-items:flex-start;flex-direction:column}.section-heading{align-items:flex-start}.step-badge{align-self:flex-start;margin-top:1px}.guideline-section{padding:26px 22px}.sources-content ul{columns:1}footer .page-shell{align-items:flex-start;flex-direction:column;justify-content:center;gap:5px}}@media(max-width:420px){.metric-grid,.macro-grid{grid-template-columns:1fr}.metric-card p{min-height:auto}}
