/* Windows 7 Aero Theme */

body {
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  background: linear-gradient(to bottom, #f0f0f0 0%, #e5e5e5 50%, #d8d8d8 100%);
  color: #333;
  margin: 0;
  padding: 20px;
  min-height: 100vh;
}

h1 {
  text-align: center;
  color: #003366;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
  font-size: 2.5em;
  margin: 20px 0 30px;
  font-weight: 400;
}

table {
  width: 80%;
  margin: 20px auto;
  border-collapse: separate;
  border-spacing: 0;
  background-color: #f0f0f0;
  border: 1px solid #999;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.6);
  overflow: hidden;
}

th,
td {
  border: 1px solid #d4d4d4;
  border-top: 1px solid #fff;
  padding: 10px 14px;
  text-align: center;
}

th {
  background: linear-gradient(to bottom, #f5f5f5 0%, #e0e0e0 50%, #d0d0d0 100%);
  color: #333;
  font-weight: 600;
  border-bottom: 2px solid #999;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}

tr.highlight {
  background: linear-gradient(to bottom, #fff8dc 0%, #ffeaa7 50%, #ffdf80 100%);
  box-shadow: inset 0 0 8px rgba(255, 215, 0, 0.5);
}

tr.highlight td {
  border-color: #f0c040;
}

td:empty {
  background: linear-gradient(to bottom, #e8e8e8 0%, #d4d4d4 100%);
  position: relative;
}

/* Farbzuweisungen pro Person */
.lukas {
  background: linear-gradient(to bottom, #d9ecff 0%, #b3d9ff 50%, #99ccff 100%);
  color: #003366;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
}

.pascal {
  background: linear-gradient(to bottom, #e0f5e0 0%, #c8e6c8 50%, #b0d9b0 100%);
  color: #1a4d1a;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
}

.felix {
  background: linear-gradient(to bottom, #fff0d9 0%, #ffe0b3 50%, #ffd699 100%);
  color: #663300;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
}

caption {
  caption-side: bottom;
  text-align: center;
  font-style: italic;
  margin-top: 10px;
  color: #666;
}

/* Abschnitt Wichtige Links */
#links {
  width: 80%;
  margin: 30px auto 40px;
  background: rgba(255, 255, 255, 0.85);
  padding: 20px 24px;
  border: 1px solid #999;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

#links h2 {
  margin-top: 0;
  text-align: center;
  color: #333;
  font-weight: 400;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}

#links ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: stretch;
}

#links li {
  flex: 1 1 220px;
  display: flex;
}

#links a {
  color: #003366;
  text-decoration: none;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 10px 16px;
  border: 1px solid #7da3c4;
  background: linear-gradient(to bottom, #ffffff 0%, #e8f0f8 50%, #d0e4f5 100%);
  border-radius: 5px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.9);
  transition: all .15s ease;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
}

#links a:hover {
  text-decoration: none;
  background: linear-gradient(to bottom, #ffffff 0%, #f0f8ff 50%, #dce8f5 100%);
  border-color: #5c8ab8;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 1);
}

#links a:active {
  background: linear-gradient(to bottom, #c8dff0 0%, #b8d4ea 50%, #a8c8e0 100%);
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
}
