:root{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#27342c;background:#f5f6f1;font-size:16px;line-height:1.55;font-synthesis:none;--forest:#315c45;--dark:#1f392b;--sage:#e5eee6;--cream:#f9faf6;--line:#dce4dc;--text:#27342c;--muted:#67746c;--white:#fff;--red:#b45147;--shadow:0 8px 30px rgba(30,55,38,.06)}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.56;cursor:not-allowed}a{color:var(--forest)}input,select,textarea{border:1.5px solid #cdd8ce;background:#fff;border-radius:11px;padding:12px 13px;color:var(--text);width:100%;min-height:47px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #90b9a0;outline-offset:2px;border-color:#537e61}input[type=checkbox]{width:20px;min-height:20px;accent-color:var(--forest)}label{display:block;font-weight:650;font-size:14px;color:#34483b;margin-bottom:5px}h1,h2,h3,p{margin-top:0}h1{font-size:32px;line-height:1.2;letter-spacing:-.7px;margin-bottom:8px;font-weight:720}h2{font-size:22px;line-height:1.3;margin-bottom:10px}h3{font-size:17px;margin-bottom:8px}p{margin-bottom:12px}.muted{color:var(--muted)}.small{font-size:13px}.strong{font-weight:700}.shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#e7eee6;display:flex;flex-direction:column;padding:27px 17px;gap:16px;border-right:1px solid #d5e2d6}.brand{display:flex;align-items:center;gap:12px;padding:8px 8px 24px;border-bottom:1px solid #d2ded3}.brand-icon{width:48px;height:48px;border-radius:16px;background:#f8fbf7;display:grid;place-items:center;color:var(--forest);font-size:29px}.brand b{font-size:20px;letter-spacing:-.6px;display:block}.brand span{font-size:12px;color:#617565}.nav{display:grid;gap:7px}.nav-btn{display:flex;gap:11px;align-items:center;width:100%;padding:13px 12px;border:0;background:transparent;color:#38513d;text-align:left;font-weight:650;border-radius:12px;font-size:15px}.nav-btn:hover{background:#f4faf3}.nav-btn.active{background:#fff;color:var(--forest);box-shadow:0 1px 7px #345a4420}.nav-icon{font-size:20px;width:25px;text-align:center}.nav-footer{margin-top:auto;padding:14px 8px;color:var(--muted);font-size:12px}.nav-footer button{margin-top:12px;border:0;background:transparent;padding:0;color:#405d47;text-decoration:underline}.main{padding:42px clamp(18px,4vw,68px) 70px;max-width:1350px;width:100%;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px}.eyebrow{color:#678071;font-weight:750;letter-spacing:1.5px;text-transform:uppercase;font-size:11px;margin-bottom:8px}.lead{color:var(--muted);font-size:16px}.card{background:var(--white);border:1px solid #e1e8df;border-radius:20px;padding:28px;box-shadow:var(--shadow)}.card+.card{margin-top:18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--forest);color:#fff;border:1.5px solid var(--forest);border-radius:12px;padding:12px 19px;min-height:48px;font-weight:720;text-decoration:none;white-space:nowrap}.btn:hover:not(:disabled){background:#244a34}.btn.secondary{background:#fff;color:var(--forest);border-color:#c6d9c8}.btn.secondary:hover{background:#f2f7f1}.btn.ghost{background:transparent;color:#45604a;border-color:transparent}.btn.danger{background:#fff5f2;color:#a6463b;border-color:#e8c6c2}.btn.smallbtn{font-size:13px;min-height:38px;padding:7px 13px}.btn.wide{width:100%}.btn.large{min-height:57px;font-size:16px}.layout-2{display:grid;grid-template-columns:1.12fr .88fr;gap:19px;align-items:start}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field.full{grid-column:1/-1}.formfield{margin-bottom:15px}.field-help{font-size:12px;color:var(--muted);margin-top:4px}.button-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px}.row{display:flex;align-items:center;gap:10px}.row.between{justify-content:space-between}.spacer{flex:1}.wizard{display:flex;align-items:center;gap:8px;margin:0 0 26px}.w-step{display:flex;align-items:center;gap:8px;color:#7c8c7f;flex:1;min-width:0}.w-step:not(:last-child):after{content:'';height:1.5px;flex:1;background:#d7e0d7;margin:0 13px}.w-num{flex:none;width:31px;height:31px;border:1.5px solid #bfcfc1;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:740}.w-step.current{color:var(--forest);font-weight:750}.w-step.current .w-num{background:var(--forest);border-color:var(--forest);color:#fff}.w-step.done{color:var(--forest)}.w-step.done .w-num{background:#d2e4d2;border-color:#d2e4d2}.w-label{font-size:13px;white-space:nowrap}.section-title{margin-bottom:17px}.choice-list{display:grid;gap:10px;max-height:440px;overflow:auto;padding-right:4px}.choice{border:1.5px solid #dce6dc;background:#fff;border-radius:13px;padding:15px;text-align:left;width:100%;display:flex;gap:12px;align-items:center}.choice:hover{border-color:#91b49a;background:#f8fbf7}.choice.selected{border-color:#538b63;background:#f0f7f0;box-shadow:inset 0 0 0 1px #538b63}.avatar{width:39px;height:39px;background:#edf3ed;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#56765b;flex-shrink:0}.choice .detail{flex:1;min-width:0}.choice strong{display:block}.choice small{display:block;color:var(--muted);font-size:12px}.choice .check{font-size:21px;color:var(--forest)}.tag{border-radius:30px;padding:4px 9px;background:#e8f2e7;color:#376445;font-size:12px;font-weight:720;display:inline-flex;align-items:center;gap:5px}.tag.gray{background:#f0f1ee;color:#647068}.tag.blue{background:#e9f1f9;color:#416080}.tag.warn{background:#fff2e2;color:#9a5a28}.empty-state{text-align:center;padding:28px 14px;border:1.5px dashed #cbdbcb;border-radius:15px;background:#f9fcf8}.empty-state .bigicon{font-size:30px}.surface{padding:18px;border-radius:15px;background:#f5f8f3;border:1px solid #e1e9df}.check-row{display:flex;align-items:center;gap:10px;padding:10px 0}.check-row label{margin:0;font-size:15px}.separator{border:0;border-top:1px solid #e2e8e2;margin:23px 0}.invoice-lines{display:grid;gap:13px}.line-item{border:1.5px solid #e1e8e0;border-radius:15px;padding:18px}.line-item-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:10px}.line-item .formgrid{grid-template-columns:2fr 1fr 1fr}.price-preview{background:#edf4eb;border-radius:15px;padding:19px;position:sticky;top:20px}.price-preview .sum-row{display:flex;justify-content:space-between;gap:10px;margin-top:8px}.price-preview .total{font-size:26px;font-weight:800;color:var(--forest);border-top:1px solid #cbdac9;margin-top:17px;padding-top:15px}.invoice-preview{border:1px solid #e4e8e1;border-radius:12px;background:white;padding:28px}.invoice-preview .preview-top{display:flex;justify-content:space-between;gap:20px}.invoice-preview .preview-name{font-size:18px;color:var(--forest);font-weight:800}.invoice-preview table{border-collapse:collapse;width:100%;font-size:14px}.invoice-preview th{background:#eef5ee;text-align:left}.invoice-preview td,.invoice-preview th{padding:12px 9px;border-bottom:1px solid #e1e8df}.invoice-preview th:last-child,.invoice-preview td:last-child{text-align:right}.invoice-preview .preview-figures{margin-left:auto;max-width:300px;padding-top:12px}.invoice-preview .preview-figures div{display:flex;justify-content:space-between;gap:24px;padding:4px 0}.invoice-preview .preview-figures .big{border-top:2px solid #a4bda8;margin-top:9px;padding-top:12px;font-size:20px;font-weight:800}.notification{padding:13px 16px;border-radius:11px;background:#f1f7f1;border:1px solid #d2e5d5;color:#32513a;margin:12px 0}.notification.warning{background:#fff8ec;border-color:#efdcb9;color:#805624}.send-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.send-card{border:1.5px solid #dce6dc;border-radius:17px;padding:23px;text-align:left;background:#fff;cursor:pointer}.send-card:hover{border-color:#6b9775;background:#f7fbf6}.send-card .send-icon{font-size:29px;margin-bottom:14px}.send-card h3{font-size:18px}.send-card p{font-size:14px;color:var(--muted)}.success-icon{width:66px;height:66px;background:#e0f0e0;border-radius:50%;display:grid;place-items:center;font-size:32px;margin-bottom:18px}.table-wrap{overflow-x:auto}.list-table{width:100%;border-collapse:collapse;min-width:640px}.list-table td,.list-table th{padding:16px 14px;text-align:left;border-bottom:1px solid #e4ebe3;vertical-align:middle}.list-table th{font-size:12px;color:#718175;text-transform:uppercase;letter-spacing:.7px}.list-table tbody tr:hover{background:#f7faf6}.list-table .right{text-align:right}.list-table .actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.filters .search{max-width:420px;flex:1;min-width:230px}.pill{border:1px solid #d5e0d5;border-radius:30px;padding:7px 12px;background:white;color:#57715b;font-weight:700}.pill.selected{background:#d9e9da;border-color:#8caf8d;color:#315a3d}.welcome{max-width:520px;margin:9vh auto;background:#fff;padding:40px;border-radius:22px;border:1px solid #e1e9e0;box-shadow:var(--shadow)}.welcome .flower{font-size:36px}.welcome h1{margin:14px 0}.auth-bg{padding:20px;min-height:100vh;background:radial-gradient(circle at 10% 10%,#e2eee3,#f6f8f3 53%)}.loading-spinner{width:30px;height:30px;border:3px solid #d9e9d9;border-top-color:#396444;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-loading{display:flex;min-height:100vh;justify-content:center;align-items:center;flex-direction:column;gap:12px;color:var(--muted)}#overlay:empty{display:none}.overlay{position:fixed;inset:0;z-index:20;background:#15271eb0;display:flex;justify-content:center;align-items:center;padding:20px;overflow-y:auto}.modal{width:min(630px,100%);max-height:92vh;overflow-y:auto;background:#fff;border-radius:21px;padding:27px;box-shadow:0 20px 70px #0002}.modal-header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:20px}.icon-btn{min-width:38px;min-height:38px;display:grid;place-items:center;font-size:22px;border:0;border-radius:10px;background:#f4f7f4;color:#4b6450}.modal p{font-size:14px;color:var(--muted)}#toasts{position:fixed;z-index:40;right:20px;bottom:20px;display:grid;gap:10px}.toast{background:#294a36;color:#fff;padding:14px 18px;border-radius:12px;max-width:430px;box-shadow:0 7px 20px #233a2544}.toast.bad{background:#a5493e}.settings-group{border:1px solid #e0e9df;border-radius:15px;padding:22px;margin-bottom:18px}.settings-group h3{font-size:19px}.textlink{background:transparent;border:0;color:var(--forest);text-decoration:underline;padding:3px;font-weight:650}.center{text-align:center}.flex-wrap{flex-wrap:wrap}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.summary-stat{background:#fff;border:1px solid #e2e9e1;padding:18px;border-radius:15px}.summary-stat .number{font-size:22px;font-weight:800}.summary-stat .caption{font-size:13px;color:var(--muted)}.mobile-top{display:none}.service-list{display:grid;gap:10px}.service-item{border:1px solid #e1e8df;padding:17px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:15px}.service-item .muted{font-size:13px}::selection{background:#c7dec9}
@media(max-width:990px){.shell{grid-template-columns:1fr}.sidebar{display:none}.mobile-top{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#e7eee6;border-bottom:1px solid #d3e2d3;padding:13px 17px}.mobile-links{display:flex;gap:5px;overflow-x:auto;margin-top:9px}.mobile-top{display:block}.mobile-top .brand-compact{font-weight:820;font-size:19px}.mobile-top button{border:0;background:#ffffffb5;border-radius:8px;padding:8px 11px;white-space:nowrap;color:var(--forest);font-weight:650}.mobile-top button.active{background:var(--forest);color:white}.main{padding:26px 18px 70px}}
@media(max-width:720px){h1{font-size:27px}.card{padding:19px}.layout-2,.formgrid,.send-choices,.summary-grid{grid-template-columns:1fr}.line-item .formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.line-item .field.full{grid-column:1/-1}.w-label{font-size:11px}.w-step:not(:last-child):after{margin:0 3px}.wizard{gap:2px}.page-head{align-items:flex-start}.button-row .btn{flex:1}.invoice-preview{padding:14px}.invoice-preview .preview-top{flex-direction:column}.modal{padding:19px}.main{padding:19px 12px 70px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

/* Version 0.1.1: barrierearmer manueller Hell-/Dunkelmodus */
.admin-link{display:block;margin:12px 0;text-decoration:none!important;font-weight:750;color:var(--forest)!important;font-size:14px}
.nav-footer .theme-toggle{border:1px solid #bdcfbf;border-radius:10px;background:#fff;padding:9px 12px;margin:0 0 7px;color:var(--forest);font-weight:700;text-decoration:none}
.mobile-admin-link{font-size:13px;text-decoration:none;color:var(--forest);white-space:nowrap;border:1px solid #cddacf;border-radius:8px;padding:8px}
.brand b{font-size:18px;line-height:1.2}

/* v0.1.3 — WEERS-orientiertes, neutrales Anthrazit/Schiefer-Dark-Theme
   Akzent: zurückhaltendes Blau statt Grün. Heller Modus bleibt unangetastet. */
[data-theme="dark"]{
  color-scheme:dark;
  --forest:#8eb9ef;
  --dark:#ecf1f8;
  --sage:#293241;
  --cream:#202734;
  --line:#414d60;
  --text:#e8edf4;
  --muted:#aab7c8;
  --white:#262e3b;
  --red:#e08a86;
  --shadow:0 9px 32px rgba(0,0,0,.18);
  color:var(--text);background:#191f29;
}
[data-theme="dark"] body{background:#191f29;color:var(--text)}
[data-theme="dark"] .sidebar,[data-theme="dark"] .mobile-top{background:#202736;border-color:#3c4658}
[data-theme="dark"] .brand,[data-theme="dark"] .list-table th,[data-theme="dark"] .list-table td,[data-theme="dark"] .separator,[data-theme="dark"] .invoice-preview td,[data-theme="dark"] .invoice-preview th{border-color:#3c4759}
[data-theme="dark"] .brand span,[data-theme="dark"] .eyebrow,[data-theme="dark"] .lead,[data-theme="dark"] .muted,[data-theme="dark"] .w-step,[data-theme="dark"] .service-item .muted{color:#aab7c8}
[data-theme="dark"] .card,[data-theme="dark"] .settings-group,[data-theme="dark"] .choice,[data-theme="dark"] .line-item,[data-theme="dark"] .welcome,[data-theme="dark"] .modal,[data-theme="dark"] .summary-stat,[data-theme="dark"] .send-card,[data-theme="dark"] .invoice-preview,[data-theme="dark"] .service-item,[data-theme="dark"] .empty-state{background:#262e3b;color:#e8edf4;border-color:#3d485a}
[data-theme="dark"] input,[data-theme="dark"] textarea,[data-theme="dark"] select{background:#1c2430;color:#f4f7fa;border-color:#4d5a6d}
[data-theme="dark"] input::placeholder,[data-theme="dark"] textarea::placeholder{color:#95a4b8}
[data-theme="dark"] input:focus,[data-theme="dark"] select:focus,[data-theme="dark"] textarea:focus,[data-theme="dark"] button:focus-visible{outline-color:#6797d1;border-color:#6797d1}
[data-theme="dark"] label{color:#dbe4f0}
[data-theme="dark"] .surface,[data-theme="dark"] .price-preview,[data-theme="dark"] .tag,[data-theme="dark"] .nav-btn:hover,[data-theme="dark"] .nav-btn.active,[data-theme="dark"] .brand-icon,[data-theme="dark"] .avatar,[data-theme="dark"] .success-icon,[data-theme="dark"] .auth-bg{background:#303b4c;color:#e9f0fb;border-color:#48576b}
[data-theme="dark"] .auth-bg{background:linear-gradient(125deg,#202a39,#171d27 60%)}
[data-theme="dark"] .nav-btn,[data-theme="dark"] .nav-footer button,[data-theme="dark"] .mobile-admin-link,[data-theme="dark"] .admin-link{color:#d6e0ee!important}
[data-theme="dark"] .btn.secondary,[data-theme="dark"] .btn.ghost,[data-theme="dark"] .pill,[data-theme="dark"] .textlink,[data-theme="dark"] .nav-footer .theme-toggle,[data-theme="dark"] .icon-btn{background:#303b4c;color:#ecf3fd;border-color:#506078}
[data-theme="dark"] .btn:not(.secondary):not(.ghost):not(.danger){background:#517eaf;color:#fff;border-color:#6791c2}
[data-theme="dark"] .btn:not(.secondary):not(.ghost):not(.danger):hover:not(:disabled){background:#6596ce;border-color:#81aad9;color:#fff}
[data-theme="dark"] .btn.secondary:hover:not(:disabled),[data-theme="dark"] .btn.ghost:hover:not(:disabled){background:#3e4e64;color:#fff}
[data-theme="dark"] .btn.danger{background:#50313a;color:#ffdce0;border-color:#774954}
[data-theme="dark"] .btn.danger:hover:not(:disabled){background:#663c46}
[data-theme="dark"] .invoice-preview th,[data-theme="dark"] .price-preview .total,[data-theme="dark"] .invoice-preview .preview-figures .big{background:#323e4f;border-color:#53637a;color:#e8f1ff}
[data-theme="dark"] .invoice-preview .preview-name{color:#a9c8f2}
[data-theme="dark"] .notification{background:#27394d;border-color:#465c7b;color:#e1efff}
[data-theme="dark"] .notification.warning{background:#423725;border-color:#7b6542;color:#ffe0a8}
[data-theme="dark"] .pill.selected,[data-theme="dark"] .choice.selected{background:#304962;border-color:#6696ca;color:#e5f2ff}
[data-theme="dark"] .list-table tbody tr:hover{background:#303b4e}
[data-theme="dark"] .list-table th{color:#acbbce}
[data-theme="dark"] .mobile-top button{background:#303b4e;color:#e3eaf5}
[data-theme="dark"] .mobile-top button.active{background:#517eaf;color:#fff}
[data-theme="dark"] .nav-footer .theme-toggle{display:block}
[data-theme="dark"] .modal p{color:#b6c3d5}
[data-theme="dark"] .tag.warn{background:#483c2e;color:#f4d9a8}
[data-theme="dark"] .tag.blue{background:#2e4762;color:#c4defb}
[data-theme="dark"] .tag.gray{background:#343d4a;color:#cfd9e7}
[data-theme="dark"] .tag:not(.warn):not(.blue):not(.gray){background:#2f4962;color:#d5e9ff}
[data-theme="dark"] .w-num{border-color:#62718a;color:#d5e0ee}
[data-theme="dark"] .w-step.done .w-num{background:#3d5876;border-color:#577ca7;color:#eef6ff}
[data-theme="dark"] .w-step.current .w-num{background:#517eaf;border-color:#517eaf;color:#fff}
[data-theme="dark"] .w-step:not(:last-child):after{background:#44516a}
[data-theme="dark"] .send-card:hover,[data-theme="dark"] .choice:hover{background:#303d50;border-color:#759ac6}
[data-theme="dark"] .empty-state{background:#222b38;border-style:dashed}
[data-theme="dark"] .paper-option{border-color:#515f73}
[data-theme="dark"] .paper-mini{background:#fff;color:#293341;border-color:#7e8b9b}
[data-theme="dark"] .overlay{background:rgba(9,13,20,.74)}
[data-theme="dark"] .toast{background:#3d5d84;color:#fff}
[data-theme="dark"] .toast.bad{background:#873f4d}
[data-theme="dark"] ::selection{background:#41658d;color:#fff}

/* v0.1.5 – PDF check before issuing and sending */
.pdf-modal{width:min(1040px,96vw);max-height:94vh}
.pdf-review-area{background:var(--surface, #f5f6f7);border:1px solid var(--border, #d5d9dc);border-radius:12px;padding:12px;margin:12px 0}
.pdf-frame{display:block;width:100%;height:min(68vh,850px);min-height:360px;border:1px solid #d8dde0;border-radius:6px;background:white}
.pdf-review-prompt{margin-top:18px;padding:16px;border:1px solid #d3d9df;border-radius:12px}
.confirm-preview{display:flex;align-items:center;gap:10px;margin:12px 0;font-weight:650}
.confirm-preview input{width:20px;min-height:20px;flex:0 0 20px}
.pdf-review-area .row{margin-bottom:8px}
@media(max-width:650px){.pdf-frame{min-height:300px;height:55vh}.pdf-modal{padding:15px}.pdf-review-area{padding:7px}}
