:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#203339;background:#f3f4ef;font-synthesis:none;--ink:#172b31;--muted:#6b7778;--line:#dce1dc;--gold:#e3b755;--paper:#fff;--red:#a02619}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}a{color:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b0801f;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,3.1vw,46px);line-height:1.14;font-weight:650;letter-spacing:-1.6px;margin-bottom:14px}h2{font-size:18px;letter-spacing:-.35px;font-weight:650;margin-bottom:16px}h3{font-size:15px;font-weight:650}p{line-height:1.65}.shell{display:flex;min-height:100vh}.sidebar{width:246px;flex:0 0 246px;padding:38px 22px 24px;background:var(--ink);color:#e9edeb;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;overflow:auto}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:24px;font-weight:700;letter-spacing:1px;margin-bottom:58px;padding:0 10px}.brand-mark{display:flex;align-items:center;justify-content:center;background:#284047;border:1px solid #4a5b5f;color:#fff;width:45px;height:45px;font-size:29px;border-radius:10px;letter-spacing:-4px;padding-right:4px}.brand-mark span{color:var(--gold);font-size:24px;margin-left:-2px}.brand-sub{display:block;font-size:9px;font-weight:500;letter-spacing:3.6px;margin-top:3px}.nav-label{color:#8da1a6;font-size:9px;font-weight:650;letter-spacing:1.8px;padding-left:13px;margin-bottom:15px}.nav-label.second{margin-top:38px}nav{display:flex;flex-direction:column;gap:6px}nav a{display:flex;align-items:center;gap:12px;text-decoration:none;color:#b7c3c4;font-size:13px;line-height:1.35;padding:13px 12px;border-radius:7px;border:1px solid transparent}nav a:hover{background:#233a41;color:#fff}nav a.active{color:#fff;background:#2b4349;border-color:#52615b;box-shadow:inset 3px 0 var(--gold)}.nav-icon{display:inline-flex;width:22px;justify-content:center;font-size:19px;color:#9fb0b2}nav a.active .nav-icon{color:var(--gold)}.sidebar-foot{font-size:11px;margin-top:auto;padding:50px 10px 0;line-height:1.7;color:#c8d2d1}.sidebar-foot small{color:#8da1a6;font-size:9px}.status-dot{display:inline-block;width:6px;height:6px;background:#75a68b;border-radius:50%;margin-right:7px}.workspace{margin-left:246px;width:calc(100% - 246px);display:flex;flex-direction:column}.topbar{height:75px;padding:0 44px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:1.5px;color:var(--muted)}.separator{margin:0 15px;color:#a4afad}.unit-badge{letter-spacing:.5px;background:#e8ece6;border:1px solid #d6ddd5;border-radius:5px;padding:7px 10px;color:#52625c}main{padding:43px 44px 60px;max-width:1560px;width:100%;margin:0 auto;flex:1}.page-intro{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:2px;color:#897038;font-weight:700;margin-bottom:13px}.page-intro p{max-width:700px;font-size:14px;color:var(--muted);margin-bottom:0}.module-number{font-size:76px;color:#d8ded6;letter-spacing:-6px;font-weight:300;line-height:1;padding-right:4px}.calculator-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);gap:26px;align-items:start}.panel{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:26px;box-shadow:0 3px 12px #142a3103}.panel-heading{display:flex;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid #e9ede8;padding-bottom:20px;margin-bottom:23px}.panel-heading h2,.panel-heading h3{margin:0}.tag{font-size:8px;font-weight:650;letter-spacing:1px;color:#65776f;background:#f0f3ed;padding:6px 8px;border-radius:4px;white-space:nowrap}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}.field{min-width:0}.field label,.save-panel>label{display:flex;justify-content:space-between;gap:7px;font-size:11px;font-weight:600;color:#495a5d;line-height:1.5;margin-bottom:8px}.field label span{color:#7c8885;font-size:10px;font-weight:400;white-space:nowrap}input,select{width:100%;height:46px;border:1px solid #d4ddd8;border-radius:5px;padding:10px 12px;background:#fcfdfa;color:#1c343a;outline:none;font-size:14px;line-height:1.4;transition:border-color .15s,box-shadow .15s}input{font-variant-numeric:tabular-nums}select{font-size:12px;padding-right:22px}input:focus,select:focus{border-color:#8d9f94;box-shadow:0 0 0 3px #8d9f941a}input.invalid{border-color:#bf493b;background:#fffafa}.field small,.save-panel small{display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:7px}.validation-message{color:var(--red);font-size:11px;margin-top:6px;line-height:1.5}.form-section-title{font-size:11px;letter-spacing:1px;font-weight:600;color:#687b71;text-transform:uppercase;margin:30px 0 20px;border-top:1px solid #e7ece7;padding-top:25px}.form-actions{display:flex;align-items:center;gap:20px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:6px;padding:12px 19px;min-height:44px;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap}.button:hover{background:#30494f}.button span{color:var(--gold);font-size:17px}.button.secondary{color:var(--ink);background:#fff;border-color:#cbd5ce;gap:8px}.button.secondary:hover{background:#edf1e9}.text-button{padding:8px 0;background:none;border:0;color:#6c7a77;font-size:11px;line-height:1.5}.text-button:hover{text-decoration:underline}.empty-result{min-height:410px;border:1px dashed #ccd7cf;border-radius:12px;background:radial-gradient(circle,#c4cec766 .7px,transparent .8px) 0 0/14px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 25px}.empty-cross{width:90px;height:90px;display:flex;align-items:center;justify-content:center;font-size:52px;font-weight:200;line-height:1;border:1px solid #b9c8be;border-radius:50%;color:#7b9285;background:#f3f4ef;margin-bottom:25px;box-shadow:0 0 0 12px #f3f4ef,0 0 0 13px #dfe5dc}.empty-result h3{margin-bottom:10px;font-size:16px}.empty-result p{font-size:12px;color:var(--muted);margin:0;background:#f3f4ef}.result-heading{display:flex;align-items:center;color:#52705d;letter-spacing:1.4px;font-size:9px;font-weight:650;margin:3px 0 16px}.result-heading>span:last-child{margin-left:auto;font-size:8px;color:#86968b}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.metric{background:#fff;border:1px solid var(--line);border-radius:10px;padding:23px 20px;min-height:125px}.metric.primary{background:var(--ink);border-color:var(--ink);color:#fff}.metric-label{font-size:10px;color:#6d7e75;margin-bottom:16px;line-height:1.5}.primary .metric-label{color:#b5c6bc}.metric-value{font-size:clamp(22px,2.3vw,33px);font-weight:500;letter-spacing:-1px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-value span{font-size:11px;color:#829087;letter-spacing:0;white-space:nowrap}.primary .metric-value{color:#f0cc7c}.primary .metric-value span{color:#c2cbbc}.metric p{font-size:10px;color:var(--muted);margin:10px 0 0}.notice{padding:15px 19px;background:#f7efd8;border:1px solid #e6d7ac;border-radius:7px;font-size:12px;line-height:1.65;color:#6b5829;margin-bottom:20px}.notice.error{background:#fff1ec;border-color:#e9b6ac;color:#8e2a20}.notice.subtle{background:#eaf0e6;border-color:#d6e1d0;color:#55694d}.result-assumption{font-size:11px;color:var(--muted);margin:20px 2px}.save-panel{padding-top:22px;border-top:1px solid #d8e0d7;margin-top:23px}.save-row{display:flex;gap:10px}.save-row input{min-width:0;background:#fff;font-size:12px}.save-row .button{font-size:11px;padding:10px 14px}.success{color:#426c4d;font-size:11px;margin:12px 0}.source-note{margin-top:30px;border:1px solid #d7e0d5;border-radius:9px;background:#edf1e8}.source-note summary{padding:18px 22px;cursor:pointer;font-size:12px;font-weight:600;color:#506551}.source-body{padding:3px 22px 18px}.source-body p{font-size:12px;margin:10px 0}.formula-strip{display:flex;gap:10px;flex-wrap:wrap;padding:7px 0}.formula-strip code{background:#fff;padding:10px 13px;border:1px solid #dce4d8;border-radius:5px;font-size:12px;overflow-wrap:anywhere}.source-citation{color:#758171!important;font-size:10px!important}.advanced{margin-top:27px;padding-top:21px;border-top:1px solid #e3e9e1}.advanced summary{font-size:12px;font-weight:600;cursor:pointer;margin-bottom:20px}.panel.compact{padding:20px;margin-bottom:18px}.panel.compact .panel-heading{margin-bottom:10px;padding-bottom:15px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:11px;line-height:1.6}th{font-size:9px;text-align:left;color:#7c8980;font-weight:500;border-bottom:1px solid #dce4da;padding:9px 9px 9px 0}td{padding:12px 9px 12px 0;border-bottom:1px solid #ebeee8;font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:0}.detail-values{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px 16px;font-size:11px;margin:16px 0 0}.detail-values dt{color:#6f7d73;overflow-wrap:anywhere}.detail-values dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.page-footer{display:flex;justify-content:space-between;margin:0 44px;padding:24px 0;border-top:1px solid var(--line);font-size:10px;color:#8b968c;gap:20px}.page-footer span{font-size:8px;letter-spacing:1.5px}.history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px;color:var(--muted);font-size:12px}.history-empty{padding:55px;text-align:center;margin-bottom:25px}.history-empty p{color:var(--muted);font-size:13px}.history-list{display:grid;gap:14px;margin-bottom:25px}.case-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.case-card>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;padding:25px;list-style:none}.case-card>summary::-webkit-details-marker{display:none}.case-card h2{margin:8px 0;overflow-wrap:anywhere}.case-date{font-size:11px;color:var(--muted)}.case-count{font-size:10px;white-space:nowrap;color:#6a7d6e}.case-count>span{margin-left:20px}.case-body{padding:0 25px 25px;border-top:1px solid #e4eae1}.case-body>p{font-size:12px;color:var(--muted);margin-top:20px}.case-columns,.sources-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.case-columns{padding:25px 0}.case-actions{display:flex;align-items:center;gap:22px}.danger{color:#a02619}.prose h2{margin-top:12px;font-size:21px}.prose h3{margin-top:25px}.prose p,.prose li{font-size:13px;line-height:1.8;color:#637469}.prose li{margin-bottom:9px}.prose ul{padding-left:19px}.source-register{margin:25px 0}.source-register td{vertical-align:top;font-size:12px;padding:15px 18px 15px 0}.source-register th{font-size:11px}.boot{max-width:400px;margin:20vh auto;text-align:center;padding:20px}.boot .brand-mark{margin:0 auto 25px}.boot h1{font-size:30px}.boot p{color:var(--muted);font-size:13px}progress{width:180px;height:5px;accent-color:var(--gold)}.skip-link{position:fixed;left:20px;top:-100px;z-index:1000;background:white;padding:15px}.skip-link:focus{top:15px}#blazor-error-ui{display:none;position:fixed;bottom:0;left:0;right:0;background:#fff0db;border-top:2px solid #b78322;padding:20px;z-index:1001;font-size:14px}#blazor-error-ui .dismiss{float:right;cursor:pointer}
@media(min-width:1600px){main{padding-top:55px}.calculator-grid{gap:32px}.panel{padding:32px}.form-grid{gap:25px}}
@media(max-width:1180px){.sidebar{width:215px;flex-basis:215px;padding-left:15px;padding-right:15px}.workspace{margin-left:215px;width:calc(100% - 215px)}main{padding:32px 27px 45px}.topbar{padding:0 27px}.calculator-grid{gap:18px;grid-template-columns:1.1fr 1fr}.panel{padding:20px}.form-grid{gap:18px 12px}.panel-heading{flex-wrap:wrap}.metric{padding:18px 14px}.metric-value{font-size:25px}.save-row{flex-direction:column}.page-footer{margin:0 27px}}
@media(max-width:960px){.calculator-grid{grid-template-columns:1fr}.empty-result{min-height:240px}.save-row{flex-direction:row}.metric-value{font-size:32px}.sources-grid{grid-template-columns:1fr}.module-number{font-size:60px}.page-intro h1{font-size:34px}}
@media(max-width:680px){.shell{display:block}.sidebar{position:relative;width:100%;height:auto;padding:20px 18px 15px}.brand{margin-bottom:20px;padding:0;font-size:20px}.brand-mark{width:38px;height:38px;font-size:25px}.brand-sub{font-size:8px}.nav-label,.sidebar-foot{display:none}nav{flex-direction:row;flex-wrap:wrap;gap:5px}nav a{padding:9px 10px;font-size:11px;gap:6px;border-radius:5px}.nav-icon{font-size:16px;width:16px}nav+nav{margin-top:6px}.sidebar nav[aria-label="Arbeitsbereich"]{margin-top:8px}.workspace{margin:0;width:100%}.topbar{height:54px;padding:0 20px;font-size:8px}.separator{margin:0 8px}.unit-badge{font-size:8px}main{padding:28px 18px 35px}.page-intro{margin-bottom:25px;align-items:flex-start}.page-intro h1{font-size:31px;letter-spacing:-1px}.page-intro p{font-size:12px}.module-number{font-size:48px}.eyebrow{font-size:8px}.panel{padding:20px 16px}.panel-heading h2{font-size:16px}.field label{font-size:10px}.form-grid{gap:19px 12px}.field input{font-size:14px}.field select{font-size:11px}.metrics{gap:10px}.metric{min-height:120px}.metric-value{font-size:27px}.result-heading>span:last-child{display:none}.save-row{flex-direction:column}.case-columns{grid-template-columns:1fr}.case-count{display:none}.case-card>summary{padding:20px}.case-body{padding:0 18px 20px}.history-toolbar{align-items:flex-start;flex-direction:column}.history-empty{padding:35px 20px}.page-footer{margin:0 18px;line-height:1.7}.page-footer span{max-width:100px}.source-body{padding:0 15px 15px}.formula-strip code{font-size:11px}.prose p,.prose li{font-size:12px}.form-actions{gap:18px}.notice{font-size:11px}.source-register td{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
