
body {
  background:#f4f7fb;
  color:#27272a;
  font-family:sans-serif;
  margin:0;
  padding:0;
}

.main-wrap, .confwrap, .cleanupdata {
  max-width:970px;
  margin:18px auto;
  padding:24px 20px 28px 20px;
  background:#fff;
  border-radius:12px;
  box-shadow:0 8px 36px #0001;
}

h2, .config-h2 {
  margin-top:3px;
  color:#1976D2;
  font-size:2em;
  font-weight:600;
  letter-spacing:.05em;
}
h2 i, .configbtn i, .btn-icon i, label i {
  margin-right:8px;
  font-size:1.07em;
  vertical-align:middle;
}

.configbtnbar { margin-bottom:23px; }
.configbtn, .btn-icon, .configbtn-reset {
  background:#1976D2;
  color:#fff;
  border:none;
  border-radius:8px;
  padding:.55em 1.44em;
  margin-right:7px;
  font-size:1em;
  font-weight:500;
  cursor:pointer;
  text-decoration:none;
  box-shadow:0 1px 8px #0002;
  transition:.13s;
  background-position:left bottom;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.configbtn:hover, .btn-icon:hover { background:#1451a1; }
.configbtn-reset { background:#bbb;color:#333;margin-left:8px; }
.configbtn-reset:hover { background:#999; }
.cancel {background:#bbb;color:#333;margin-left:8px;}
.btn-icon.edit:hover { color:#17a; background: none; }
.btn-icon.delete:hover { color:#c00; background: none; }

.configform, .login-frame, .editform {
  display: flex;
  flex-direction: column;
  gap: 1.15em;
}

label {
  font-weight: 500;
  color: #183177;
  display: flex;
  align-items: center;
  gap: 11px;
}

input[type="text"],input[type="password"],input[type="date"],select {
  background: #f8fafd;
  border-radius:5px;
  border:1px solid #cfd6ed;
  padding:5px 8px;
  font-size:1em;
  width:100%;
  margin-top:4px;
}
input[type="text"]:focus,select:focus,input[type="date"]:focus,
input[type="password"]:focus {
  border-color:#1976D2;
  outline:1.3px solid #1976D2;
}

button[type="submit"],button[type="button"] {margin-left:3px;}
.editform {margin-bottom:18px;flex-wrap:wrap;gap:12px;align-items:baseline;}
.editform label {min-width:180px;}

@media (max-width:900px) {
  .main-wrap, .confwrap, .cleanupdata {padding:12px;}
  .editform label {min-width:120px;}
}

.tablefilter {
  margin-bottom:13px;
  display:flex;
  flex-wrap:wrap;
  gap:15px;
  align-items:flex-end;
}
.tablefilter label {font-size:.96em;}
.table-wrap {overflow-x:auto;}
table {width:100%;border-collapse:collapse;margin:0;}
th,td {padding:7px 10px;border-bottom:1px solid #e8eaf0;font-size:1em;}
th {background:#f3f5fa;font-weight:500;}
tr:hover td {background:#f5faff;}
tr:nth-child(even) td {background:#fbfcff;}
th a {color:#1976D2;text-decoration:none;}

.table-toolbar {
  margin:2em 0 .5em 0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
}
.table-pagesel {
  display:flex;
  justify-content:center;
  gap:16px;
  margin:1em 0 1.2em 0;
}
.table-btn-disabled {
  opacity: .4;
  pointer-events: none;
}
.table-btn-active {
  background: #1976D2 !important;
  color: #fff !important;
}
.table-pageinfo {
  font-weight: 500;
  font-size: 1.08em;
  margin: 0 10px;
}

.cleanup-info {
  font-size:1.17em;
  margin-bottom:1.2em;
}
.cleanup-intro {
  font-size:1.1em;
  margin-bottom:2em;
}
.cleanupform {
  text-align:center;
}
.fehler {
  background: #ffe6e6;
  color: #c00;
  padding: 0.6em 1em;
  border-radius: 7px;
  margin-bottom: 1em;
  font-weight: 500;
}

a { color: #1976D2; cursor: pointer; text-decoration: none; }
a:hover { color: #1451a1; text-decoration: underline; }
