*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;color:#1d1d1f;background:#f5f6f8;font-size:14px}a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}.topbar{display:flex;align-items:center;justify-content:space-between;background:#111827;color:#fff;padding:10px 18px}.topbar .brand{font-weight:600;letter-spacing:.3px}.topbar a{color:#cbd5e1;margin-left:14px}.wrap{max-width:1280px;margin:0 auto;padding:18px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.toolbar input,.toolbar select{padding:7px 9px;font-size:14px}.btn,.toolbar input,.toolbar select{border:1px solid #d1d5db;border-radius:7px;background:#fff}.btn{padding:7px 12px;cursor:pointer}.btn.primary{background:#111827;color:#fff;border-color:#111827}table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.05)}td,th{text-align:left;padding:9px 12px;border-bottom:1px solid #eef0f3;font-size:13px;vertical-align:top}th{background:#fafbfc;color:#6b7280;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.4px}tr:hover td{background:#fafbff}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.s-neu{background:#dbeafe;color:#1e40af}.s-in_qualifizierung{background:#fef3c7;color:#92400e}.s-qualifiziert_eindrehbetrieb,.s-qualifiziert_hersteller{background:#e0e7ff;color:#3730a3}.s-verkauft{background:#d1fae5;color:#065f46}.s-verloren{background:#fee2e2;color:#991b1b}.s-storniert{background:#f3f4f6;color:#4b5563}.s-unvollstaendig{background:#fde2e4;color:#9d174d}.kanban{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px}.kcol{min-width:240px;background:#eef1f5;border-radius:10px;padding:8px}.kcol h3{margin:4px 6px 8px;font-size:12px;text-transform:uppercase;color:#6b7280}.kcard{background:#fff;border-radius:8px;padding:9px 10px;margin-bottom:8px;box-shadow:0 1px 2px rgba(0,0,0,.06)}.kcard .k-name{font-weight:600}.kcard .k-meta{color:#6b7280;font-size:12px;margin-top:2px}.cols{display:grid;grid-template-columns:380px 1fr;grid-gap:18px;gap:18px}.card{background:#fff;border-radius:10px;padding:16px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.card h2{margin:0 0 12px;font-size:15px}.kv{display:grid;grid-template-columns:130px 1fr;grid-gap:4px 10px;gap:4px 10px;font-size:13px}.kv dt{color:#6b7280}.kv dd,.tl{margin:0}.tl{list-style:none;padding:0}.tl li{padding:10px 0;border-bottom:1px solid #eef0f3}.tl .tl-head{display:flex;gap:8px;align-items:center;font-size:12px;color:#6b7280}.tl .tl-kind{font-weight:600;color:#111827;text-transform:uppercase;font-size:11px;letter-spacing:.3px}.tl .tl-src{padding:1px 6px;border-radius:6px;background:#eef2ff;color:#3730a3;font-size:10px}.tl .tl-src.audit{background:#f3f4f6;color:#4b5563}.tl .tl-body{margin-top:4px;white-space:pre-wrap;word-break:break-word;font-size:13px}.login-box{max-width:340px;margin:90px auto;background:#fff;padding:26px;border-radius:12px;box-shadow:0 2px 14px rgba(0,0,0,.08)}.login-box h1{font-size:18px;margin:0 0 16px}.login-box label{display:block;font-size:12px;color:#6b7280;margin:10px 0 4px}.login-box input{width:100%;padding:9px;border:1px solid #d1d5db;border-radius:8px}.login-box button{width:100%;margin-top:16px;padding:10px;background:#111827;color:#fff;border:0;border-radius:8px;cursor:pointer}.err{color:#b91c1c;font-size:13px;margin-top:10px}.muted{color:#6b7280}