  .btn{font-family:'Inter',sans-serif;font-size:13.5px;font-weight:600;padding:9px 15px;border-radius:7px;border:1px solid transparent;cursor:pointer;}
  .btn.primary{background:var(--red);color:#fff;}
  .btn.primary:hover{background:var(--red-deep);}
  .btn.sec{background:var(--paper-2);color:var(--ink);border-color:var(--border);}
  .btn.sec:hover{background:#e0e6ec;}
  .btn.ghost{background:transparent;color:var(--ink);border-color:var(--border);}
  .btn.ghost:hover{background:var(--paper-2);}
  .money{font-family:'IBM Plex Mono',monospace;font-weight:600;}
  .mono{font-family:'IBM Plex Mono',monospace;}
  .badge{display:inline-block;font-size:11px;font-weight:600;padding:2px 9px;border-radius:99px;}
  .badge.gruen{background:var(--green-dim);color:var(--green);}
  .badge.amber{background:var(--amber-dim);color:var(--amber);}
  .badge.rot{background:var(--red-dim);color:var(--red-deep);}
  .badge.navy{background:#dce7ef;color:var(--navy);}
  table{width:100%;border-collapse:collapse;font-size:13px;}
  th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;color:var(--ink-soft);border-bottom:1px solid var(--border);padding:7px 8px;font-weight:600;}
  td{padding:8px;border-bottom:1px solid var(--border);vertical-align:top;}
  .kpi{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;}
  .kpi .lab{font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--ink-soft);font-weight:600;}
  .kpi .val{font-family:'Space Grotesk',sans-serif;font-size:24px;font-weight:700;margin-top:4px;}
  .kpi .val.g{color:var(--green);}
  .ghost-on .blurme{filter:blur(6px);transition:filter .1s;}
  .ghost-on .blurme:focus, .ghost-on .blurme:hover{filter:none;}
  .toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px;}
  .toolbar .spacer{margin-left:auto;}
  .zeile{display:grid;grid-template-columns:1.4fr 1fr .9fr .8fr .8fr .8fr .5fr auto;gap:6px;align-items:center;margin-bottom:6px;}
  .zeile input{margin-bottom:0;}
  .zeile .del{background:none;border:none;color:var(--red);cursor:pointer;font-size:16px;}
  .zhead{font-size:10.5px;text-transform:uppercase;color:var(--ink-soft);font-weight:600;letter-spacing:.3px;}
  .summary{display:flex;gap:22px;flex-wrap:wrap;background:var(--paper-2);border-radius:8px;padding:12px 16px;margin-top:12px;}
  .summary div span{display:block;font-size:11px;text-transform:uppercase;color:var(--ink-soft);font-weight:600;}
  .summary div b{font-family:'Space Grotesk',sans-serif;font-size:19px;}
  .empty{text-align:center;color:var(--ink-soft);padding:40px 10px;font-size:14px;}
  .empty .big{display:block;font-size:34px;margin-bottom:8px;}
  /* Login */
  #login{position:fixed;inset:0;background:linear-gradient(160deg,rgba(8,45,68,.82),rgba(9,72,116,.88)),url('/login-bg.jpg') center/cover;display:flex;align-items:center;justify-content:center;padding:20px;}
  #login .box{background:#fff;border-radius:14px;padding:30px 28px;width:100%;max-width:360px;box-shadow:0 20px 60px rgba(0,0,0,.4);text-align:center;}
  #login img{height:54px;margin-bottom:6px;}
  #login h1{font-family:'Space Grotesk',sans-serif;font-size:20px;margin:6px 0 2px;}
  #login .tag{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--ink-soft);margin-bottom:18px;}
  #login input{text-align:left;}
  .fehlerkasten{background:var(--red-dim);color:var(--red-deep);border-radius:7px;padding:9px 11px;font-size:13px;margin-bottom:10px;text-align:left;}
  .setup-hinweis{background:var(--green-dim);color:var(--green);border-radius:7px;padding:9px 11px;font-size:13px;margin-bottom:12px;text-align:left;}
  #toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 18px;border-radius:10px;font-size:14px;opacity:0;transition:opacity .25s;pointer-events:none;z-index:50;}
  #toast.show{opacity:1;}
  /* Tabellen-Aktionen / Listen */
  .btn.small{font-size:12px;padding:5px 10px;}
  .btn.danger{background:var(--red);color:#fff;border-color:var(--red);}
  .btn.danger:hover{background:var(--red-deep);}
  .row-actions{display:flex;gap:5px;flex-wrap:wrap;}
  .kgroup{margin-top:16px;}
  .kgroup .cname{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--paper-2);border-radius:7px 7px 0 0;padding:8px 12px;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:14px;color:var(--navy);}
  .kgroup table{border:1px solid var(--border);border-top:none;border-radius:0 0 7px 7px;}
  .kgroup td{vertical-align:middle;}
  .cb{width:16px;height:16px;cursor:pointer;margin:0;}
  .notiz{margin:0;padding:5px 7px;font-size:12.5px;}
  .kunden-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px;border-bottom:1px solid var(--border);}
  .kunden-row .kname{font-weight:600;font-size:14px;}
  .kunden-row select{width:auto;margin:0;}
  .iconbtn{background:none;border:none;color:var(--red);cursor:pointer;font-size:15px;padding:2px 6px;border-radius:5px;}
  .iconbtn:hover{background:var(--red-dim);}
  .totals-bar{display:flex;justify-content:space-between;align-items:center;background:var(--paper-2);border-radius:8px;padding:12px 16px;margin-top:12px;font-weight:600;font-size:13.5px;}
  .totals-bar .sum{font-family:'Space Grotesk',sans-serif;font-size:19px;font-weight:700;color:var(--red);}
  .subtabs{display:flex;gap:2px;margin-bottom:16px;border-bottom:1.5px solid var(--border);}
  .subtabs button{flex:1;background:transparent;border:none;padding:9px 4px 11px 4px;font-family:'Inter',sans-serif;font-size:13.5px;font-weight:600;cursor:pointer;color:var(--ink-soft);border-bottom:2.5px solid transparent;}
  .subtabs button.active{color:var(--navy);border-bottom-color:var(--red);}
  .hint{font-size:12.5px;color:var(--ink-soft);margin:0 0 14px 0;}
  .divider{height:1px;background:var(--border);margin:14px 0;}
  .staffelzeile{display:grid;grid-template-columns:.7fr .7fr .6fr .6fr .6fr .6fr auto;gap:8px;align-items:center;margin-bottom:6px;}
  .staffelzeile input{margin-bottom:0;}
  .zielart{display:flex;gap:8px;margin:12px 0 14px;}
  .angebotsziel{padding:14px 14px 4px;background:var(--paper-2);border-radius:8px;}
  .schnellaktionen{display:flex;gap:12px;flex-wrap:wrap;margin:10px 0 4px;}
  .schnellaktionen details{flex:1;min-width:260px;border:1px solid var(--border);border-radius:8px;background:#fff;}
  .schnellaktionen summary{padding:9px 12px;cursor:pointer;font-size:12.5px;font-weight:600;color:var(--navy);}
  .schnellaktionen details.disabled{opacity:.5;pointer-events:none;}
  .kompakt-form{padding:0 10px 4px;align-items:center;}
  .kompakt-form input,.kompakt-form button{margin-bottom:8px;}
  button:disabled{opacity:.45;cursor:not-allowed;}
