
:root{
  --blue:#003366;
  --orange:#ff6600;
  --accent:#ffb84d;
  --bg-grad:linear-gradient(135deg,var(--blue),var(--orange));
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:"Segoe UI",Arial,sans-serif;color:#fff;background:var(--bg-grad);min-height:100%}
.container{max-width:1200px;margin:0 auto;padding:24px}
header.site{
  position:sticky;top:0;z-index:1000;
  background:rgba(0,0,0,.55);backdrop-filter: blur(4px);
  display:flex;align-items:center;gap:16px;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.15)
}
header.site img{height:52px}
header.site h1{margin:0;font-size:1.4rem;color:var(--accent);text-shadow:1px 1px 4px #000}
nav.main{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap}
nav.main a{color:#fff;text-decoration:none;font-weight:600}
nav.main a:hover{color:var(--accent)}
.hero{padding:56px 0;text-align:center}
.hero h2{font-size:2rem;color:var(--accent);margin:0 0 8px}
.hero p{margin:0 auto;max-width:900px;line-height:1.6}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:18px}
.card{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:18px;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.card h3{margin-top:0;color:var(--accent)}
iframe.embed{width:100%;height:600px;border:none;border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.25)}
table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.08);border-radius:12px;overflow:hidden}
th,td{padding:12px;border-bottom:1px solid rgba(255,255,255,.15);text-align:left}
th{background:rgba(0,0,0,.35);color:var(--accent)}
footer.site{background:rgba(0,0,0,.5);padding:18px;text-align:center;color:#ddd;margin-top:40px}
.btn{display:inline-block;background:var(--orange);color:#fff;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:700;border:0;cursor:pointer}
.btn.secondary{background:#0b5aa0}
form label{display:block;margin-top:10px;font-weight:600}
form input,form select,form textarea{width:100%;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.25);color:#fff}
.notice{padding:10px 12px;border-left:4px solid var(--accent);background:rgba(0,0,0,.35);border-radius:8px;margin:10px 0}
.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:rgba(255,184,77,.2);border:1px solid rgba(255,184,77,.5);color:#fff;font-size:.85rem}
.gallery{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.gallery img{width:220px;height:150px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.2)}
.logout{margin-left:auto}
@media(max-width:640px){header.site{flex-wrap:wrap}nav.main{width:100%;justify-content:center}}
/* === Formular- und Tabellen-Design für Mitgliederbereich === */
input[type="text"],
input[type="password"],
select {
  background: rgba(0, 0, 0, 0.4);
  color: #ffe6b3;
  border: 1px solid rgba(255, 150, 0, 0.7);
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 14px;
  outline: none;
  transition: all 0.3s ease;
}

input[type="text"]:focus,
input[type="password"]:focus,
select:focus {
  background: rgba(255, 140, 0, 0.2);
  border-color: #ff9933;
  box-shadow: 0 0 8px rgba(255, 153, 51, 0.6);
}

/* Buttons */
button,
input[type="submit"],
.btn {
  background: linear-gradient(90deg, #ff6600, #ff9933);
  color: #fff;
  font-weight: 600;
  border: none;
  border-radius: 6px;
  padding: 6px 14px;
  cursor: pointer;
  transition: all 0.25s ease;
}
button:hover,
input[type="submit"]:hover,
.btn:hover {
  background: linear-gradient(90deg, #ff9933, #ffaa33);
  box-shadow: 0 0 10px rgba(255, 150, 0, 0.7);
}

/* Tabellen */
table {
  border-collapse: collapse;
  width: 100%;
  background: rgba(0, 0, 0, 0.35);
  color: #fff3d1;
  border-radius: 10px;
  overflow: hidden;
}
th {
  background: rgba(0, 0, 0, 0.5);
  color: #ffcc80;
  border-bottom: 2px solid rgba(255, 150, 0, 0.5);
}
td {
  border-bottom: 1px solid rgba(255, 150, 0, 0.2);
  padding: 8px;
}
tr:hover {
  background: rgba(255, 153, 51, 0.15);
  transition: 0.3s ease;
}

/* Rollen farblich */
.role-admin {
  color: #ff6600;
  font-weight: bold;
}
.role-member {
  color: #ffe6b3;
}
.role-captain {
  color: #33ccff;
  font-weight: bold;
}

/* Responsive Tabelle */
@media only screen and (max-width: 768px) {
  table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
}
