/* MLD Kundenbereich – ergänzt ../css/style.css (Farben/Schriften kommen von dort) */

.kb-main{background:var(--soft);min-height:60vh;padding:48px 0 72px;}
.kb-wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
.kb-narrow{max-width:560px;margin:0 auto;}
.kb-mid{max-width:860px;margin:0 auto;}

.kb-main h1{font-size:clamp(30px,4vw,44px);line-height:1.1;color:var(--ink);margin-bottom:12px;letter-spacing:-.01em;}
.kb-main h2{font-size:22px;color:var(--ink);margin:0 0 12px;}
.kb-lead{color:var(--text);font-size:18px;line-height:1.55;margin-bottom:28px;}
.kb-muted{color:var(--muted);font-size:14px;}

.kb-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px;margin-bottom:24px;box-shadow:0 1px 0 rgba(20,24,28,.03);}
.kb-card.accent{border-top:6px solid var(--blau);}

/* Formulare */
.kb-form{display:grid;gap:18px;}
.kb-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.kb-row.three{grid-template-columns:1fr 1fr 1fr;}
.kb-field{display:grid;gap:6px;}
.kb-field label,.kb-field .lbl{font-weight:700;font-size:14px;color:var(--ink);}
.kb-field input[type=text],.kb-field input[type=email],.kb-field input[type=tel],.kb-field input[type=number],
.kb-field select,.kb-field textarea{
  width:100%;font:inherit;font-size:16px;color:var(--ink);background:#fff;border:2px solid var(--line);
  border-radius:12px;padding:13px 14px;min-height:50px;}
.kb-field textarea{min-height:130px;resize:vertical;}
.kb-field input:focus,.kb-field select:focus,.kb-field textarea:focus{outline:none;border-color:var(--blau);box-shadow:0 0 0 3px rgba(10,116,178,.18);}
.kb-code{font-family:var(--display);font-size:34px!important;letter-spacing:.35em;text-align:center;font-weight:700;}
.kb-check{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--text);line-height:1.45;}
.kb-check input{margin-top:4px;width:20px;height:20px;flex:0 0 20px;accent-color:var(--blau);}
.kb-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;}
.kb-interests{display:flex;flex-wrap:wrap;gap:10px 22px;}

.kb-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 30px;border:0;border-radius:999px;
  font:inherit;font-weight:700;font-size:16px;cursor:pointer;background:var(--blau);color:#fff;text-align:center;}
.kb-btn:hover{background:var(--blau-dunkel);color:#fff;}
.kb-btn.ghost{background:#fff;color:var(--ink);border:2px solid var(--ink);}
.kb-btn.ghost:hover{background:var(--ink);color:#fff;}
.kb-btn.danger{background:var(--rot);}
.kb-btn.danger:hover{background:#a82a33;}
.kb-btn.small{min-height:40px;padding:0 18px;font-size:14px;}
.kb-btn[disabled]{opacity:.55;cursor:wait;}
.kb-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.kb-or{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:14px;margin:6px 0;}
.kb-or::before,.kb-or::after{content:"";flex:1;height:1px;background:var(--line);}

/* Meldungen */
.kb-flash{border-radius:12px;padding:14px 18px;margin-bottom:20px;font-weight:600;font-size:15px;line-height:1.45;}
.kb-flash.err{background:#fdecee;color:#8f1f28;border:1px solid #f3c1c6;}
.kb-flash.ok{background:#eef7d6;color:#3d5410;border:1px solid #cfe493;}
.kb-flash.info{background:#e6f2fa;color:#074a73;border:1px solid #b4d8ee;}

/* Tabellen / Preisliste */
.kb-table-wrap{overflow-x:auto;}
.kb-table{width:100%;border-collapse:collapse;font-size:15px;}
.kb-table th{text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 12px;border-bottom:2px solid var(--line);white-space:nowrap;}
.kb-table td{padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top;}
.kb-table tr:last-child td{border-bottom:0;}
.kb-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;}
.kb-price{font-family:var(--display);font-weight:800;font-size:20px;color:var(--ink);}
.kb-sub{display:block;color:var(--muted);font-size:13px;margin-top:2px;}
.kb-group-title{display:flex;align-items:center;gap:12px;margin:0 0 6px;}
.kb-group-title::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--gruen);flex:0 0 12px;}

.kb-pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--soft);color:var(--text);border:1px solid var(--line);}
.kb-pill.active,.kb-pill.erledigt{background:#eef7d6;color:#3d5410;border-color:#cfe493;}
.kb-pill.pending,.kb-pill.in_arbeit{background:#fff4d6;color:#7a5a00;border-color:#f0dc9a;}
.kb-pill.blocked,.kb-pill.neu{background:#fdecee;color:#8f1f28;border-color:#f3c1c6;}
.kb-pill.anfrage{background:#e6f2fa;color:#074a73;border-color:#b4d8ee;}

/* Admin */
.kb-subnav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px;}
.kb-subnav a{padding:9px 18px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink);font-weight:700;font-size:14px;}
.kb-subnav a.on,.kb-subnav a:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
.kb-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:26px;}
.kb-stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;}
.kb-stat b{display:block;font-family:var(--display);font-size:34px;line-height:1;color:var(--blau);}
.kb-stat span{font-size:13px;color:var(--muted);font-weight:600;}
.kb-inline{display:inline;margin:0;}
.kb-filter{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px;align-items:center;}
.kb-filter input,.kb-filter select{font:inherit;padding:10px 14px;border:2px solid var(--line);border-radius:999px;background:#fff;min-height:44px;}
.kb-msgbox{white-space:pre-wrap;background:var(--soft);border-radius:12px;padding:12px 14px;font-size:14px;margin-top:6px;}

@media (max-width:700px){
  .kb-main{padding:28px 0 56px;}
  .kb-wrap{padding:0 18px;}
  .kb-card{padding:22px;border-radius:16px;}
  .kb-row,.kb-row.three{grid-template-columns:1fr;}
  .kb-code{font-size:28px!important;}
}
