:root{
  --bg:#f5fbfa;--surface:#fff;--surface2:#eef9f7;--ink:#17312e;--muted:#6f817e;
  --line:#dcebe8;--mint:#29b99a;--mint2:#75dbc6;--deep:#0b6f62;--navy:#163e3a;
  --warn:#f2a74b;--danger:#d85a6a;--shadow:0 16px 40px rgba(19,69,62,.09);--radius:24px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}img{max-width:100%}button,input,select,textarea{font:inherit}.wrap{width:min(1160px,calc(100% - 32px));margin:auto}.topbar{background:#123f3a;color:#eafaf7;font-size:13px}.topbar .wrap{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:18px}.toplinks{display:flex;gap:18px;flex-wrap:wrap}.toplinks a{text-decoration:none}.nav{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,235,232,.8)}.nav .wrap{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:900;font-size:20px}.mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--mint),var(--mint2));box-shadow:0 9px 20px rgba(41,185,154,.24);color:#fff;font-size:20px}.brand small{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:800}.menu{display:flex;align-items:center;gap:22px}.menu a{text-decoration:none;font-weight:700;color:#365b56}.btn{border:0;border-radius:14px;padding:12px 17px;cursor:pointer;font-weight:850;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,var(--mint),#38c7aa);color:#fff;box-shadow:0 10px 22px rgba(41,185,154,.22)}.btn.secondary{background:#eaf8f5;color:var(--deep)}.btn.ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn.danger{background:#fff0f2;color:#aa3045}.btn.small{padding:8px 11px;border-radius:11px;font-size:13px}.hero{padding:74px 0 58px;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,var(--mint2),transparent 66%);opacity:.16;right:-150px;top:-190px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:58px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:#e5f8f3;color:var(--deep);font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:11px}.hero h1{font-size:clamp(42px,6vw,72px);line-height:1.02;letter-spacing:-.045em;margin:17px 0 18px;max-width:820px}.hero h1 span{color:var(--mint)}.hero p{font-size:18px;color:#58726e;max-width:680px}.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:27px}.trust{display:flex;gap:20px;flex-wrap:wrap;margin-top:28px;color:#506c68;font-weight:700;font-size:13px}.hero-card{background:var(--surface);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);padding:25px;position:relative}.hero-card:after{content:"";position:absolute;inset:9px;border:1px dashed #d8efea;border-radius:23px;pointer-events:none}.price-chip{display:inline-flex;background:#123f3a;color:#fff;border-radius:14px;padding:9px 12px;font-weight:850}.mini-list{display:grid;gap:11px;margin:18px 0}.mini{display:flex;align-items:center;gap:12px;padding:13px;border-radius:16px;background:#f7fbfa}.mini i{font-style:normal;width:38px;height:38px;border-radius:12px;background:#e4f7f2;display:grid;place-items:center}.section{padding:66px 0}.section.white{background:#fff}.section-title{display:flex;justify-content:space-between;gap:22px;align-items:end;margin-bottom:26px}.section-title h2{font-size:clamp(28px,4vw,45px);letter-spacing:-.035em;margin:7px 0 0}.section-title p{max-width:620px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:23px;box-shadow:0 9px 26px rgba(20,66,60,.055)}.card .icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:#e8f8f4;font-size:21px}.card h3{margin:14px 0 7px;font-size:19px}.card p{margin:0;color:var(--muted)}.compare{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare .side{border-radius:26px;padding:26px}.compare .ours{background:linear-gradient(145deg,#123f3a,#176f63);color:#fff}.compare .portal{background:#fff;border:1px solid var(--line)}.checks{display:grid;gap:12px;margin-top:18px}.check{display:flex;gap:10px;align-items:flex-start}.check b{font-size:15px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.step{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;position:relative}.step .num{font-weight:950;color:var(--mint);font-size:28px}.form-shell{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:start}.contact-card{background:#123f3a;color:white;border-radius:28px;padding:28px}.contact-card a{color:#fff}.form-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:var(--shadow)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px}.field label{font-size:12px;font-weight:850;color:#516a66}.field input,.field select,.field textarea{width:100%;border:1px solid #d6e6e3;background:#fbfefd;border-radius:13px;padding:12px 13px;color:var(--ink);outline:none}.field textarea{min-height:112px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--mint);box-shadow:0 0 0 3px rgba(41,185,154,.11)}.notice{padding:12px 14px;border-radius:14px;background:#eaf8f5;color:#17675c;font-weight:750}.notice.error{background:#fff0f2;color:#9f3447}.footer{background:#0f312e;color:#cbe1dd;padding:42px 0 28px}.footer-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:28px}.footer h4{color:white}.footer a{color:#d6ebe7;text-decoration:none}.muted{color:var(--muted)}.hide-mobile{display:inline}
/* admin */
.admin-body{background:#f4f8f7}.admin-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:#123f3a;color:#dff3ef;padding:22px 16px;position:sticky;top:0;height:100vh;overflow:auto}.sidebar .brand{color:#fff;margin:2px 7px 25px}.side-nav{display:grid;gap:5px}.side-nav a{display:flex;gap:10px;align-items:center;text-decoration:none;color:#cce3de;padding:10px 12px;border-radius:12px;font-weight:750}.side-nav a.active,.side-nav a:hover{background:rgba(255,255,255,.1);color:#fff}.side-caption{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#75a9a1;font-weight:900;margin:21px 12px 7px}.admin-main{padding:24px 30px 50px;min-width:0}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px}.admin-head h1{font-size:30px;margin:0;letter-spacing:-.03em}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:18px 0 24px}.stat{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px}.stat strong{display:block;font-size:29px}.stat span{color:var(--muted);font-size:12px;font-weight:750}.panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 8px 23px rgba(18,63,58,.04);margin-bottom:17px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.panel-head h2,.panel-head h3{margin:0}.table-wrap{overflow:auto;border-radius:14px}.table{width:100%;border-collapse:collapse;min-width:720px}.table th{font-size:11px;text-transform:uppercase;letter-spacing:.07em;text-align:left;color:#78908c;padding:10px;border-bottom:1px solid var(--line)}.table td{padding:12px 10px;border-bottom:1px solid #edf3f2;vertical-align:top}.table tr:hover td{background:#fbfefd}.pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e9f8f4;color:#176d60;font-size:11px;font-weight:900}.pill.gray{background:#eef2f1;color:#60726f}.pill.orange{background:#fff4e5;color:#a96917}.pill.red{background:#fff0f2;color:#a43f51}.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.toolbar input,.toolbar select{border:1px solid var(--line);background:white;border-radius:12px;padding:9px 11px}.admin-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:17px}.admin-grid.equal{grid-template-columns:1fr 1fr}.kv{display:grid;grid-template-columns:180px 1fr;gap:10px;border-bottom:1px solid #edf3f2;padding:9px 0}.kv span:first-child{color:var(--muted);font-size:12px;font-weight:800}.timeline{display:grid;gap:11px}.timeline .item{border-left:3px solid #ccece5;padding:4px 0 4px 13px}.timeline small{color:var(--muted)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top right,#d9f6ef,transparent 40%),#f4fbf9}.login-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.login-card h1{margin:12px 0 3px}.login-card .brand{margin-bottom:24px}.stack{display:grid;gap:13px}.sep{height:1px;background:var(--line);margin:17px 0}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#eef6f4;border-radius:10px;padding:8px;word-break:break-all}.right{text-align:right}.empty{padding:24px;text-align:center;color:var(--muted);background:#f9fcfb;border-radius:16px}.mobilebar{display:none}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day{min-height:105px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:8px}.day.other{opacity:.45}.day b{font-size:12px}.day .ev{margin-top:5px;padding:5px 6px;background:#e8f8f4;border-radius:8px;font-size:10px;font-weight:750}.toast{position:fixed;right:20px;bottom:20px;background:#123f3a;color:#fff;padding:12px 15px;border-radius:14px;z-index:80;box-shadow:var(--shadow)}
@media(max-width:900px){.menu a:not(.btn){display:none}.hero-grid,.form-shell,.compare,.admin-grid,.admin-grid.equal{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.admin-shell{display:block}.sidebar{position:fixed;left:-285px;z-index:60;width:270px;transition:.2s}.sidebar.open{left:0}.admin-main{padding:18px 15px 80px}.mobilebar{display:flex;position:fixed;z-index:50;bottom:12px;left:12px;right:12px;background:#123f3a;color:#fff;border-radius:17px;padding:9px;justify-content:space-around;box-shadow:0 15px 40px rgba(0,0,0,.2)}.mobilebar a{color:white;text-decoration:none;font-size:12px;font-weight:800}.stats{grid-template-columns:1fr 1fr}.calendar{gap:4px}.day{min-height:78px;padding:5px}.grid2{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{width:min(100% - 22px,1160px)}.topbar .wrap{padding:7px 0}.topbar .wrap>span{display:none}.toplinks{gap:10px}.nav .wrap{height:66px}.hero{padding:48px 0 38px}.hero h1{font-size:42px}.hero-card{padding:18px}.section{padding:48px 0}.section-title{align-items:start;display:block}.cards,.steps{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}.hide-mobile{display:none}.admin-head{align-items:flex-start}.admin-head h1{font-size:25px}.admin-actions .btn{padding:9px 11px}.kv{grid-template-columns:1fr}.calendar{grid-template-columns:repeat(7,minmax(40px,1fr));overflow:auto}.day{min-width:48px}}
/* booking + Vollmacht */
.booking-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;align-items:start}.booking-success{text-align:center;padding:38px}.booking-success .hero-actions{justify-content:center}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.choice,.slot{position:relative;cursor:pointer}.choice input,.slot input{position:absolute;opacity:0;pointer-events:none}.choice span,.slot span{display:block;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff;font-weight:800;text-align:center;transition:.18s}.choice input:checked+span,.slot input:checked+span{border-color:var(--mint);background:#e8f8f4;box-shadow:0 0 0 3px rgba(41,185,154,.09);color:var(--deep)}.slot-days{display:grid;gap:14px}.slot-day{border-top:1px solid var(--line);padding-top:12px}.slot-day:first-child{border-top:0;padding-top:0}.slot-day h3{margin:0 0 8px;font-size:14px}.slot-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.slot span{padding:9px 7px;font-size:13px}.consent-row{display:flex;gap:9px;align-items:flex-start;font-size:12px;color:var(--muted);line-height:1.5}.consent-row input{margin-top:3px}.poa-paper{padding:30px}.poa-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:2px solid #edf3f2;padding-bottom:18px;margin-bottom:22px}.poa-text{white-space:normal;line-height:1.75;font-size:15px}.signature-wrap{position:relative;border:1px dashed #a9cbc4;border-radius:16px;background:#fbfefd;overflow:hidden}.signature-pad{display:block;width:100%;height:190px;touch-action:none}.signature-hint{position:absolute;left:0;right:0;bottom:10px;text-align:center;font-size:11px;color:#9aaca9;pointer-events:none}.signature-doc{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:20px;margin-top:40px;align-items:end}.sig-image img{display:block;max-width:100%;max-height:110px;margin-top:7px}.document-meta{font-size:12px;color:#566f6b}.document-meta code{word-break:break-all}.ev.appointment{background:#eaf2ff;color:#31577d}.ev.pending{background:#fff4e5;color:#98631c}.quick-links{display:grid;gap:8px}.quick-links .btn{width:100%;justify-content:flex-start}.wa-btn{background:#e7f8ed!important;color:#17653a!important;border-color:#bde8ca!important}
@media(max-width:900px){.booking-layout{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(4,1fr)}.signature-doc{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.slot-grid{grid-template-columns:repeat(3,1fr)}.poa-paper{padding:20px}.signature-pad{height:170px}.signature-doc{grid-template-columns:1fr}.choice span{padding:14px}.booking-success{padding:25px}}

/* ===== Energie-Helfer 1.4 · Smart Workflow + Versorgerdatenbank ===== */
.workflow-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f5fbfa 0%,#ffffff 56%,#fff8e8 100%);border:1px solid #dcebe8}
.workflow-hero:after{content:'✨';position:absolute;right:20px;bottom:-26px;font-size:108px;opacity:.06;pointer-events:none}
.workflow-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.workflow-mini{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;color:inherit}
.workflow-mini b{display:block;font-size:14px}.workflow-mini small{display:block;color:var(--muted);margin-top:2px}.workflow-dot{width:9px;height:9px;border-radius:50%;background:#8aa29d}.workflow-mini.urgent .workflow-dot,.workflow-card.urgent{--wf:#c83c3c}.workflow-mini.high .workflow-dot,.workflow-card.high{--wf:#df8b1f}.workflow-mini.normal .workflow-dot,.workflow-card.normal{--wf:#158f78}.workflow-mini.low .workflow-dot,.workflow-card.low{--wf:#80918d}.workflow-mini.urgent .workflow-dot,.workflow-mini.high .workflow-dot,.workflow-mini.normal .workflow-dot,.workflow-mini.low .workflow-dot{background:var(--wf)}
.workflow-layout{grid-template-columns:minmax(0,1.55fr) minmax(300px,.7fr)}
.workflow-list{display:grid;gap:12px}.workflow-card{border:1px solid var(--line);border-left:5px solid var(--wf,#158f78);border-radius:18px;padding:16px;background:#fff}.workflow-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.workflow-card h3{margin:7px 0 2px;font-size:19px}.workflow-card p{margin:12px 0 14px;line-height:1.5;color:#465853}.priority-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:900;letter-spacing:.08em;padding:5px 8px;border-radius:999px;background:#edf3f2;color:#536661}.priority-badge.urgent{background:#fff0f0;color:#b62929}.priority-badge.high{background:#fff5e8;color:#a45e0b}.priority-badge.normal{background:#eaf8f4;color:#087962}.priority-badge.low{background:#f0f3f2;color:#66736f}.workflow-channel{white-space:nowrap;font-size:11px;font-weight:800;background:#f4f7f6;border:1px solid var(--line);padding:7px 9px;border-radius:999px}.workflow-card .toolbar{align-items:center}.btn.whatsapp{background:#edf9f0;border:1px solid #cae9d1;color:#166b2f}.btn.whatsapp:hover{background:#e2f5e7}.smart-toggle{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fafcfc}.smart-toggle input{margin-top:3px}.smart-toggle span{display:grid;gap:2px}.smart-toggle small{color:var(--muted);line-height:1.35}.smart-toggle.warning{background:#fffaf0}.input-suffix{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.input-suffix input{border:0!important;border-radius:0!important}.input-suffix span{padding:0 10px;color:var(--muted);font-size:12px}.checklist.compact{display:grid;gap:8px}.checklist.compact span{display:block;padding:7px 0;border-bottom:1px solid #edf2f0}.workflow-customer{background:linear-gradient(135deg,#f8fcfb,#fffaf0)}.workflow-focus{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:5px solid var(--wf,#158f78);padding-left:15px}.workflow-focus.urgent{--wf:#c83c3c}.workflow-focus.high{--wf:#df8b1f}.workflow-focus.normal{--wf:#158f78}.workflow-focus.low{--wf:#80918d}.workflow-focus h3{margin:7px 0 4px}.workflow-focus p{margin:0;color:#52625e;line-height:1.45}.stats.compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}
@media(max-width:980px){.workflow-mini-grid{grid-template-columns:1fr}.workflow-layout{grid-template-columns:1fr}.workflow-focus{align-items:flex-start;flex-direction:column}.stats.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.workflow-card-top{flex-direction:column}.workflow-channel{align-self:flex-start}.workflow-card .toolbar{display:grid;grid-template-columns:1fr 1fr}.workflow-card .toolbar>*{width:100%}.workflow-card .toolbar .btn{width:100%;justify-content:center}.workflow-focus .btn{width:100%;justify-content:center}}

/* 2.1 – geschütztes Kundenportal & Angebotsmappe */
.secure-gate-body{min-height:100vh;background:radial-gradient(circle at top,#edf8f5 0,#f7faf9 42%,#eef3f1 100%)}
.secure-gate{padding:34px;text-align:center;box-shadow:0 24px 70px rgba(16,57,50,.12)}
.secure-gate .field{text-align:left}.secure-shield{width:72px;height:72px;border-radius:24px;display:grid;place-items:center;margin:0 auto 16px;background:#e8f7f2;font-size:34px;border:1px solid #cfe9e1}
.offer-portal-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:22px;padding:30px;border-radius:26px;background:linear-gradient(135deg,#123f3a,#216c60);color:white;box-shadow:0 20px 60px rgba(18,63,58,.18)}
.offer-portal-head h1{font-size:clamp(34px,5vw,58px);line-height:1.02;margin:8px 0 12px}.offer-portal-head p{max-width:760px;margin:0;color:rgba(255,255,255,.86)}.offer-portal-head .eyebrow{color:#9ce2cf}.offer-head-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-end}.offer-valid{font-size:12px;font-weight:800;background:rgba(255,255,255,.12);padding:7px 10px;border-radius:999px}
.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.offer-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 16px 45px rgba(16,57,50,.07);position:relative}.offer-card.featured{border-color:#8ed0bc}.offer-card-top{display:flex;justify-content:space-between;gap:16px}.offer-card h2{font-size:28px;margin:5px 0}.offer-tariff{margin:0;color:var(--muted);font-weight:700}.offer-badge{font-size:11px;font-weight:900;padding:7px 9px;border-radius:999px;background:#eaf7f3;color:#176552;height:max-content}.offer-price{padding:18px 0;border-bottom:1px solid var(--line)}.offer-price strong{font-size:38px;display:block;letter-spacing:-1.4px}.offer-price span{color:var(--muted);font-size:13px}.offer-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:15px 0}.offer-kpis>div{padding:12px;border-radius:14px;background:#f6f9f8}.offer-kpis .accent{background:#eaf7f3}.offer-kpis span,.offer-details-list span{display:block;color:var(--muted);font-size:11px;font-weight:700}.offer-kpis b{font-size:17px}.offer-details-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:12px 0}.offer-details-list>div{border-bottom:1px dashed #dbe4e1;padding:8px 0}.offer-explain{margin:14px 0;padding:14px;border-radius:15px;background:#fbfcfc;line-height:1.55}.offer-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.offer-help{display:grid;grid-template-columns:.7fr 1.5fr;gap:28px;align-items:start}.offer-help-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.offer-help-grid div{padding:14px;border-radius:14px;background:#f7faf9}.offer-help-grid b{display:block;margin-bottom:5px}.offer-help-grid span{font-size:13px;color:var(--muted);line-height:1.45}.offer-feedback-grid{grid-template-columns:repeat(3,1fr)}.offer-feedback-row{padding:11px 0;border-bottom:1px solid var(--line)}.offer-feedback-row small{display:block;color:var(--muted);margin-top:4px}.offer-legal{font-size:11px;line-height:1.5;margin-top:14px}
.offer-admin-list{display:grid;gap:10px}.offer-admin-card{display:flex;justify-content:space-between;gap:15px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:16px}.offer-admin-card h3{margin:4px 0 8px}.offer-admin-kpis{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.offer-admin-kpis span{padding:6px 8px;border-radius:10px;background:#f4f8f7;font-size:12px}.smart-brief-panel{background:linear-gradient(135deg,#f8fcfb,#fff)}.smart-score{font-size:24px;color:#176552}
@media(max-width:820px){.offer-portal-head{align-items:flex-start;flex-direction:column}.offer-head-actions{align-items:flex-start}.offer-grid{grid-template-columns:1fr}.offer-help{grid-template-columns:1fr}.offer-help-grid{grid-template-columns:1fr}.offer-feedback-grid{grid-template-columns:1fr}.offer-admin-card{align-items:flex-start;flex-direction:column}.offer-kpis,.offer-details-list{grid-template-columns:1fr 1fr}}
@media print{.no-print,.topbar,.nav,.offer-head-actions{display:none!important}.offer-portal-head{background:white!important;color:#111!important;box-shadow:none;padding:0;border-radius:0}.offer-portal-head p{color:#444}.offer-grid{display:block}.offer-card{box-shadow:none;break-inside:avoid;margin:0 0 14px}.offer-help{break-inside:avoid}}

/* Branding 2.2 */
.brand-logo-link{min-width:0}.brand-image{display:block;max-height:58px;width:auto;max-width:330px;object-fit:contain}.nav .brand-image{max-height:60px}.sidebar-logo-wrap{background:#fff;border-radius:16px;padding:8px!important;margin:2px 7px 25px!important;justify-content:center}.sidebar-brand-image{display:block;width:100%;height:auto;max-height:74px;object-fit:contain}.login-brand-image{display:block;max-width:320px;max-height:92px;object-fit:contain}.footer-brand{display:inline-flex;background:#fff;border-radius:14px;padding:8px 12px}.footer-brand .brand-image{max-height:54px}.branding-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.branding-preview{border:1px solid var(--line);border-radius:18px;padding:16px;background:#fbfefd}.branding-preview.compact{display:grid;grid-template-columns:auto 110px 1fr auto;gap:12px;align-items:center}.brand-preview-box{min-height:130px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px dashed #cfe0dc;border-radius:14px;padding:14px;margin:10px 0}.brand-preview-box.contact{min-height:190px}.brand-preview-box.icon{min-height:90px;margin:0}.brand-preview-image{max-height:120px;max-width:100%;object-fit:contain}.brand-preview-image.contact{max-height:180px}.brand-preview-icon{width:74px;height:74px;object-fit:contain}.document-brand-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}.document-main-logo{max-height:74px;max-width:360px;object-fit:contain}.document-contact-logo{display:block;max-width:600px;width:100%;height:auto;margin:22px auto 0}.print-contact-footer{margin-top:26px;padding-top:16px;border-top:1px solid #dfe9e7}.email-note{font-size:12px;color:var(--muted);background:#f8fbfa;border-radius:12px;padding:10px 12px}
@media(max-width:900px){.brand-image{max-height:48px;max-width:235px}.branding-grid{grid-template-columns:1fr}.branding-preview.compact{grid-template-columns:1fr}.brand-preview-box.icon{width:110px}.sidebar-brand-image{max-width:210px}.nav .wrap{height:70px}}
@media(max-width:520px){.brand-image{max-height:42px;max-width:200px}.branding-preview{padding:12px}.brand-preview-box.contact{min-height:140px}}

/* Energie-Helfer 2.3 – eingebauter Outlook-artiger E-Mail-Client */
.mail-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:5px 0 20px}
.mail-topline .toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.mail-shell{display:grid;grid-template-columns:minmax(170px,216px) minmax(270px,340px) minmax(350px,1fr);min-height:620px;border:1px solid var(--line);border-radius:20px;background:white;box-shadow:0 12px 40px rgba(10,45,50,.04);overflow:hidden}
.mail-folders{padding:16px 10px;border-right:1px solid var(--line);background:#f7faf9;max-height:75vh;overflow-y:auto}
.mail-section-heading{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#68817d;padding:12px 12px 10px}
.mail-folder{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 12px;border-radius:10px;text-decoration:none;color:#274f4a;font-size:13px;font-weight:700;transition:background .18s}
.mail-folder span{overflow-wrap:anywhere}.mail-folder:hover,.mail-folder.on{background:#e1f5ee;color:#126f66}
.mail-folder small{padding:3px 6px;border-radius:8px;background:rgba(22,133,119,.08);font-weight:700;color:inherit}
.mail-list{border-right:1px solid var(--line);background:#fff;max-height:75vh;overflow-y:auto}
.mail-search{display:flex;padding:14px 12px 8px;gap:6px;align-items:center}.mail-search input{width:100%;min-width:0}
.mail-message{display:block;text-decoration:none;color:inherit;padding:15px 16px;border-top:1px solid #eef2f1;transition:background .2s;border-left:3px solid transparent}
.mail-message:hover,.mail-message.current{background:#effaf6;border-left-color:#1ca28e}
.mail-message.unread{background:#f6fcfb}
.mail-message b{display:block;margin:5px 0 5px;color:#1f3c39;font-size:13px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.mail-message.unread b{font-weight:900}.mail-message span{display:block;color:#78908b;font-size:12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.mail-from{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:12px;font-weight:700;color:#34665e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-from small{white-space:nowrap;font-size:10px;color:#92a4a0;font-weight:500}
.mail-reader{padding:22px 24px;min-height:560px;max-height:75vh;overflow:auto}.mail-reader-head{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.mail-reader-head h2{font-size:23px;overflow-wrap:anywhere;line-height:1.3}.mail-reader-head p{color:#607873;line-height:1.7;overflow-wrap:anywhere;font-size:13px}
.mail-reader-head .toolbar{display:flex;gap:8px;flex-wrap:wrap}.mail-body{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;color:#29433d;line-height:1.75}.mail-files{border-top:1px solid var(--line);margin-top:20px;padding-top:14px;display:grid;gap:7px}.mail-files a{display:block;color:#168878}.mail-compose .field{margin-bottom:14px}.mail-compose textarea{resize:vertical}.mail-compose .toolbar{display:flex;gap:8px;flex-wrap:wrap}
.mail-placeholder{display:grid;place-content:center;text-align:center;height:100%;min-height:400px;max-width:410px;margin:auto;padding:18px}.mail-placeholder h2{font-size:22px}.mail-placeholder p{font-size:13px;color:#68807a;line-height:1.65}.mail-placeholder-icon{font-size:55px}.mail-placeholder .btn{justify-self:center}
@media(max-width:1250px){.mail-shell{grid-template-columns:180px minmax(260px,340px) minmax(275px,1fr)}.mail-reader{padding:18px}}
@media(max-width:1010px){.mail-shell{grid-template-columns:190px 1fr;min-height:610px}.mail-reader{grid-column:1/-1;max-height:none;min-height:300px;border-top:1px solid var(--line)}.mail-list,.mail-folders{max-height:430px}}
@media(max-width:600px){.mail-shell{grid-template-columns:1fr;display:block}.mail-folders{border-right:0;max-height:160px;display:flex;gap:4px;overflow-x:auto;padding:8px}.mail-folder{min-width:130px;max-width:220px;flex:0 0 auto}.mail-section-heading{display:none}.mail-folders p{display:none}.mail-list{max-height:300px;border-right:0}.mail-reader{padding:15px;min-height:300px}.mail-reader-head h2{font-size:20px}.mail-topline .toolbar{width:100%}.mail-topline .toolbar>.btn{flex:1}}

/* 2.4: protected HTML mail renderer */
.mail-html-frame{display:block;width:100%;min-height:480px;height:56vh;max-height:780px;border:1px solid #dce9e7;border-radius:14px;background:white;margin:14px 0}.mail-html-switch{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;margin-top:14px}

/* 2.4 Zähler-/Verbrauchsverwaltung */
.meter-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:16px}.meter-head h2{margin:3px 0 6px}.meter-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:16px}.meter-panel{margin-bottom:16px}.meter-stat-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px;margin:18px 0}.meter-stat{background:#eef8f5;border:1px solid #dceee8;border-radius:14px;padding:15px}.meter-stat span,.meter-stat small{display:block;color:#52716a;font-size:12px}.meter-stat strong{display:block;color:#08796a;font-size:29px;margin:5px 0}.meter-annual{font-size:12px;margin-top:8px;font-weight:750;color:#207e73}.meter-panel details{border-top:1px solid #e3eeeb;padding-top:15px;margin-top:14px}.meter-panel details summary{cursor:pointer;color:#107b70}.meter-table{max-height:330px;overflow:auto;margin-top:15px}.meter-share-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e5efeb;font-size:12px;padding:9px 0;gap:8px}


/* Energie-Helfer 2.4 – gut lesbarer Dunkelmodus; PDFs/Druck bleiben weiß. */
.theme-selector{display:inline-flex;gap:8px;align-items:center;white-space:nowrap;border:1px solid var(--line);padding:5px 8px;border-radius:12px;background:var(--surface);color:var(--ink);box-shadow:0 3px 12px rgba(0,0,0,.04);font-size:12px;z-index:2}
.theme-selector label{font-weight:800}.theme-selector select{background:var(--surface2);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:6px 8px;cursor:pointer;max-width:170px;font-size:12px}
.theme-floating{position:fixed;bottom:18px;right:18px;z-index:100}.admin-head .theme-selector{margin-right:6px}.nav .wrap>.theme-selector{flex:0 0 auto}
html[data-theme-effective="dark"]{
 --bg:#0e191b;--surface:#18282b;--surface2:#1c3234;--ink:#ecf7f4;--muted:#a0bcb7;--line:#334c4b;--mint:#49d3b1;--mint2:#64cdb5;--deep:#79e1c8;--navy:#d5f2ec;--shadow:0 15px 45px rgba(0,0,0,.20);
}
html[data-theme-effective="dark"] body,html[data-theme-effective="dark"] .admin-body{background:var(--bg);color:var(--ink)}
html[data-theme-effective="dark"] .nav{background:rgba(22,39,41,.94);border-color:var(--line)}
html[data-theme-effective="dark"] .menu a,html[data-theme-effective="dark"] .brand{color:var(--ink)}
html[data-theme-effective="dark"] .section.white,html[data-theme-effective="dark"] .card,html[data-theme-effective="dark"] .panel,html[data-theme-effective="dark"] .stat,html[data-theme-effective="dark"] .step,html[data-theme-effective="dark"] .form-card,html[data-theme-effective="dark"] .hero-card,html[data-theme-effective="dark"] .compare .portal,html[data-theme-effective="dark"] .offer-card,html[data-theme-effective="dark"] .login-card,html[data-theme-effective="dark"] .notice:not(.error),html[data-theme-effective="dark"] .mini,html[data-theme-effective="dark"] .offer-admin-card,html[data-theme-effective="dark"] .smart-brief-panel{background:var(--surface);border-color:var(--line);color:var(--ink)}
html[data-theme-effective="dark"] .field input,html[data-theme-effective="dark"] .field select,html[data-theme-effective="dark"] .field textarea,html[data-theme-effective="dark"] .toolbar input,html[data-theme-effective="dark"] .toolbar select,html[data-theme-effective="dark"] input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),html[data-theme-effective="dark"] textarea,html[data-theme-effective="dark"] select:not(.theme-selector select){background:#112123;color:var(--ink);border-color:var(--line)}
html[data-theme-effective="dark"] input::placeholder,html[data-theme-effective="dark"] textarea::placeholder{color:#8aa7a1}
html[data-theme-effective="dark"] .field label,html[data-theme-effective="dark"] .hero p,html[data-theme-effective="dark"] .trust,html[data-theme-effective="dark"] .mail-reader-head p,html[data-theme-effective="dark"] .offer-tariff{color:var(--muted)}
html[data-theme-effective="dark"] .btn.ghost,html[data-theme-effective="dark"] .btn.secondary{background:#25413d;color:#e4f9f2;border:1px solid var(--line)}
html[data-theme-effective="dark"] .btn.primary{color:#05281f}
html[data-theme-effective="dark"] .notice{color:#baf8e4}html[data-theme-effective="dark"] .notice.error,html[data-theme-effective="dark"] .btn.danger{background:#4d2530;color:#ffdce4}
html[data-theme-effective="dark"] .eyebrow,html[data-theme-effective="dark"] .pill{background:#24463d;color:#a8f0da}
html[data-theme-effective="dark"] .pill.gray{background:#344647;color:#d1dedd}
html[data-theme-effective="dark"] .pill.orange{background:#594424;color:#f7d8a9}
html[data-theme-effective="dark"] .pill.red{background:#592c35;color:#ffcad1}
html[data-theme-effective="dark"] .table th{color:#a8bcb9;border-color:var(--line)}
html[data-theme-effective="dark"] .table td,html[data-theme-effective="dark"] .mail-message,html[data-theme-effective="dark"] .meter-share-row{border-color:var(--line)}
html[data-theme-effective="dark"] .table tr:hover td{background:#203a3a}
html[data-theme-effective="dark"] .secure-gate-body{background:radial-gradient(circle at top,#1b3934,#101d1f 55%,#0e191b)}
html[data-theme-effective="dark"] .offer-kpis>div,html[data-theme-effective="dark"] .offer-help-grid div,html[data-theme-effective="dark"] .offer-explain,html[data-theme-effective="dark"] .offer-admin-kpis span,html[data-theme-effective="dark"] .email-note,html[data-theme-effective="dark"] .mini i,html[data-theme-effective="dark"] .secure-shield{background:#203a38;color:var(--ink)}
html[data-theme-effective="dark"] .offer-kpis .accent{background:#285047}
html[data-theme-effective="dark"] .branding-preview,html[data-theme-effective="dark"] .mail-shell,html[data-theme-effective="dark"] .mail-list,html[data-theme-effective="dark"] .mail-reader,html[data-theme-effective="dark"] .mail-folders{background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-theme-effective="dark"] .mail-folder{color:#d0e9e1}
html[data-theme-effective="dark"] .mail-folder.on,html[data-theme-effective="dark"] .mail-folder:hover,html[data-theme-effective="dark"] .mail-message:hover,html[data-theme-effective="dark"] .mail-message.current{background:#285149;color:#e7fff6}
html[data-theme-effective="dark"] .mail-message.unread{background:#1c3633}
html[data-theme-effective="dark"] .mail-message b,html[data-theme-effective="dark"] .mail-body,html[data-theme-effective="dark"] .mail-from{color:var(--ink)}
html[data-theme-effective="dark"] .mail-message span,html[data-theme-effective="dark"] .mail-from small,html[data-theme-effective="dark"] .mail-section-heading{color:var(--muted)}
html[data-theme-effective="dark"] .meter-stat{background:#204038;border-color:#38564e}html[data-theme-effective="dark"] .meter-stat strong,html[data-theme-effective="dark"] .meter-annual,html[data-theme-effective="dark"] .meter-panel details summary{color:#77ebc9}
html[data-theme-effective="dark"] .meter-stat span,html[data-theme-effective="dark"] .meter-stat small{color:#b0ccc0}
html[data-theme-effective="dark"] .topbar,html[data-theme-effective="dark"] .sidebar{background:#0b2425}
html[data-theme-effective="dark"] .footer{background:#092122}
html[data-theme-effective="dark"] .mail-html-frame{background:white} /* Fremde HTML-Mails im isolierten hellen Dokument */
html[data-theme-effective="dark"] .brand-preview-box,html[data-theme-effective="dark"] .sidebar-logo-wrap,html[data-theme-effective="dark"] .footer-brand{background:#fff;color:#111} /* Logos lesbar */
html[data-theme-effective="dark"] .nav .brand small{color:var(--muted)}
@media(max-width:970px){.nav .wrap>.theme-selector{position:fixed;right:14px;bottom:14px;box-shadow:0 8px 28px rgba(0,0,0,.18);z-index:99}.admin-head .theme-selector{max-width:170px}.admin-head .theme-selector label{display:none}}
@media print{
 .theme-selector{display:none!important}
 html[data-theme-effective="dark"]{--bg:#fff;--surface:#fff;--surface2:#f7faf8;--ink:#152d29;--muted:#62766f;--line:#dcebe8;color-scheme:light}
 html[data-theme-effective="dark"] body,html[data-theme-effective="dark"] .panel,html[data-theme-effective="dark"] .offer-card,html[data-theme-effective="dark"] .offer-portal-head,html[data-theme-effective="dark"] .meter-stat{background:#fff!important;color:#152d29!important;border-color:#dcebe8!important;box-shadow:none!important}
 html[data-theme-effective="dark"] .meter-stat strong,html[data-theme-effective="dark"] .offer-card h2{color:#152d29!important}
}

/* 2.4 — customer self-service meter readings */
.meter-old{padding:12px;border:1px dashed var(--line);border-radius:12px;margin:6px 0 10px;background:var(--surface-alt,#f1f7f5)}.meter-entry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px;margin:14px 0}.meter-entry-grid>div{min-width:0}.meter-entry-subtitle{color:var(--muted);font-size:13px}.meter-entry-card{padding:24px;margin:18px 0}.meter-entry-card input{width:100%}@media(max-width:550px){.meter-entry-card{padding:17px}}
