
body{font-family:Arial,sans-serif;background:#f6f8fb;margin:0}
.container{max-width:720px;margin:auto;padding:20px}
.card{background:#fff;border-radius:16px;padding:20px;border:1px solid #e6edf4}
.brand{text-align:center;margin-bottom:10px}
.brand img{max-width:200px}
.row{
  display:grid;
  gap:12px;
  margin-top:10px;
  margin-bottom:10px;
}

.row-2{
  grid-template-columns:1fr 1fr;
}
input{
  padding:10px;
  border-radius:10px;
  border:1px solid #ccc;
  width:100%;
  margin:0;
  box-sizing:border-box;
}
/* Checkbox + Text in einer Zeile */
.check {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
}

/* Checkbox selbst */
.check input[type="checkbox"] {
  width: auto;
  margin-top: 3px;
}

/* Label neben Checkbox */
.check label {
  display: inline;
  margin: 0;
  font-weight: normal;
  line-height: 1.4;
}
.btn-primary{background:#0ea5a4;color:#fff;border:none;padding:12px;border-radius:12px;width:100%;cursor:pointer}
.site-footer{text-align:center;font-size:13px;margin-top:20px;color:#666}
h1{font-size:20px;text-align:center}
/* Checkbox + Label-Text in einer Zeile (wenn Input im Label steckt) */
label:has(input[type="checkbox"]) {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 10px 0;
}

/* Checkbox nicht aufblasen und schön positionieren */
label:has(input[type="checkbox"]) input[type="checkbox"] {
  width: auto;
  margin: 3px 0 0 0;
}

/* Optional: Text sauber umbrechen */
label:has(input[type="checkbox"]) {
  line-height: 1.4;
}

.actions{
  margin-top:20px;
  display:flex;
  justify-content:center;
}

/* Admin UI */
.topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}

.topbar h1{
  margin:0;
  font-size:20px;
  text-align:left;
}

.nav-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.btn-secondary{
  display:inline-block;
  background:#ffffff;
  color:#0f172a;
  border:1px solid #dbe6f1;
  padding:10px 14px;
  border-radius:12px;
  text-decoration:none;
  cursor:pointer;
  font-weight:700;
}

.btn-secondary:hover{ filter:brightness(.99); }

.notice{
  background:#f1f5f9;
  border:1px solid #e2e8f0;
  padding:12px;
  border-radius:12px;
  color:#0f172a;
  margin: 12px 0;
}

.table-wrap{ overflow:auto; }

.table{
  width:100%;
  border-collapse:collapse;
  font-size:14px;
}

.table th, .table td{
  padding:10px 10px;
  border-bottom:1px solid #e6edf4;
  text-align:left;
  vertical-align:top;
  white-space:nowrap;
}

.table th{
  font-size:13px;
  color:rgba(15,23,42,.75);
  font-weight:800;
  background:#fbfdff;
}

.table td{ color:#0f172a; }

.badge{
  display:inline-block;
  padding:3px 8px;
  border-radius:999px;
  font-size:12px;
  border:1px solid rgba(15,23,42,.14);
  margin-right:6px;
}
.badge.ok{ background:rgba(14,165,164,.12); }
.badge.no{
  background:rgba(220,38,38,.12);
  border:1px solid rgba(220,38,38,.35);
  color:#b91c1c;
}