:root{--bg:#0b1320;--fg:#e8eef6;--muted:#9fb3c8;--card:#121b2e;--btn:#1f2a44;--accent:#6ea8fe;}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,Segoe UI,Roboto,Ubuntu,Helvetica,Arial}
a{color:var(--accent);text-decoration:none}
.nav{display:flex;gap:1rem;align-items:center;padding:12px 16px;border-bottom:1px solid #223252;background:#0e1728}
.container{max-width:1000px;margin:24px auto;padding:0 16px}
.card{background:var(--card);padding:16px;border-radius:14px;box-shadow:0 4px 16px rgba(0,0,0,.25);margin-bottom:16px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.flex{display:flex;gap:8px;align-items:center}
label{display:block;margin-top:8px;margin-bottom:4px;color:var(--muted)}
input,textarea,select{width:100%;padding:10px;border-radius:10px;border:1px solid #2a3a5a;background:#0f1a2f;color:var(--fg)}
textarea{min-height:90px}
.btn{background:var(--btn);color:var(--fg);border:0;padding:10px 14px;border-radius:10px;cursor:pointer}
.btn:hover{filter:brightness(1.1)}
.btn-link{background:transparent;color:var(--accent);padding:6px 8px}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:8px;border-bottom:1px solid #21324e}
.muted{color:var(--muted);margin-left:8px}
.mb{margin-bottom:10px}
.small{padding:6px 10px;font-size:.9rem}
.center{text-align:center}
.alert{background:#361e21;color:#ffb3b3;padding:8px;border-radius:8px;margin-bottom:10px}
ul#task-list{list-style:none;padding:0;margin:0}
ul#task-list li{display:flex;align-items:center;gap:10px;padding:8px;border-bottom:1px solid #21324e}
.btn + .btn { margin-left: .5rem; }
.row { display:flex; gap:16px; flex-wrap:wrap; }
.col { flex:1 1 320px; }
.mb-s { margin-bottom:.5rem; } .mb { margin-bottom:1rem; }
.mt { margin-top:1rem; }
.w-100 { width:100%; }
/* Buttons: konsistentes Padding (überschreibt dein .small-Utility nur für Buttons) */
.btn.small { padding: 6px 10px; font-size: .9rem; }

/* Zuverlässige Abstände bei Button-Gruppen, auch mit Wraps/Containern */
.actions { display: flex; gap: 8px; flex-wrap: wrap; }
.actions .btn { margin: 0; } /* neutralisiert .btn + .btn */

/* vertikaler Abstand unter Inputs */
input, textarea, select { margin-bottom: 8px; }

/* Abstand oberhalb der primären Button-Zeile in Formularen */
.card form > .btn, .card form > .actions { margin-top: 8px; }