:root{--bg:#f5f7fb;--card:#fff;--text:#152033;--muted:#647084;--line:#dfe5ef;--primary:#1f6feb;--soft:#eef5ff;--ok:#16794c;--warn:#b54708;--open:#7a5af8}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:28px 36px;background:#101828;color:white}.topbar h1{margin:0 0 6px;font-size:28px}.topbar p{margin:0;color:#c9d4e6}main{padding:28px 36px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;margin-bottom:20px;box-shadow:0 8px 28px rgba(16,24,40,.06)}.tools{display:grid;grid-template-columns:1fr;gap:14px}.search,.add-column{display:flex;gap:10px;flex-wrap:wrap}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;font:inherit;background:#fff}textarea{min-height:90px}button,.button{border:0;border-radius:12px;padding:11px 15px;background:var(--primary);color:white;text-decoration:none;font-weight:700;cursor:pointer}button.secondary,.button.secondary{background:#edf2f7;color:#27364a}.muted{color:var(--muted);align-self:center}.search input{flex:1 1 360px}.add-column input{flex:1 1 220px}.add-column select{max-width:160px}.notice{background:#ecfdf3;border:1px solid #b7e4c7;color:#11613c;padding:12px 15px;border-radius:12px;margin-bottom:16px}.customer-form{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px}.customer-form label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#344054}.customer-form .wide{grid-column:span 4}.actions{grid-column:span 4;display:flex;gap:10px}.table-head{display:flex;justify-content:space-between}.table-wrap{overflow:auto}table{width:100%;border-collapse:separate;border-spacing:0;min-width:1200px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px;vertical-align:top}th{position:sticky;top:0;background:#f8fafc;z-index:1}th a{color:#1d2939;text-decoration:none}td small{display:block;color:var(--muted);margin-top:4px}.pill,.badge{display:inline-block;border-radius:999px;padding:4px 9px;background:var(--soft);font-size:12px;font-weight:700}.badge.ok{background:#dcfae6;color:var(--ok)}.badge.warn{background:#fff4e5;color:var(--warn)}.badge.open{background:#f0eaff;color:var(--open)}.badge.status{background:#eef2f6;color:#344054}.row-actions{white-space:nowrap}.row-actions a{display:inline-block;margin-bottom:6px}.row-actions form{display:inline}.row-actions button,.inline-delete button{background:#fee4e2;color:#b42318;padding:7px 10px}.inline-delete{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:10px 0}.small-card{max-width:700px}@media(max-width:900px){.topbar,main{padding:20px}.customer-form{grid-template-columns:1fr}.customer-form .wide,.actions{grid-column:span 1}}

/* Login / Schutz */
.login-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    background: #f2f5f9;
}
.login-card {
    width: min(420px, calc(100vw - 32px));
    background: #fff;
    border-radius: 18px;
    padding: 32px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .12);
    border: 1px solid #e5eaf1;
}
.login-card h1 { margin: 0 0 8px; }
.login-card p { margin: 0 0 22px; color: #64748b; }
.login-card label { display: block; margin: 14px 0; font-weight: 700; color: #162033; }
.login-card input[type="text"],
.login-card input[type="password"],
.login-card input:not([type]) {
    width: 100%;
    margin-top: 6px;
    padding: 12px 14px;
    border: 1px solid #d8e0ea;
    border-radius: 10px;
    font: inherit;
}
.checkline { display: flex !important; gap: 8px; align-items: center; font-weight: 500 !important; }
.full { width: 100%; justify-content: center; margin-top: 8px; }
.primary { background: #16a34a; color: #fff; border-color: #16a34a; }
.notice.error { background: #fee2e2; color: #991b1b; border-color: #fecaca; }
.top-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.user-chip { color: #dbeafe; font-size: 14px; }
