body {
  min-height: 100vh;
  margin: 0;
  font-family: 'Montserrat', Arial, sans-serif;
  background: linear-gradient(135deg, #5a1ca3 0%, #7e6de4 70%, #69b4f8 100%);
}

.sidebar {
  width: 220px;
  background: rgba(32, 22, 64, 0.88);
  padding-top: 30px;
  height: 100vh;
  position: fixed;
  top: 0; left: 0;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 10;
  box-shadow: 2px 0 24px rgba(40,0,60,0.13);
}
.sidebar h2 {
  color: #e3e8ff;
  font-size: 1.5em;
  margin-bottom: 28px;
  font-weight: 800;
  letter-spacing: 2px;
}
.sidebar ul {
  list-style: none;
  padding: 0;
  width: 100%;
}
.sidebar ul li {
  margin-bottom: 12px;
}
.sidebar ul li a {
  color: #fff;
  display: block;
  padding: 12px 30px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 500;
  font-size: 1em;
  letter-spacing: 1px;
  transition: background 0.18s, color 0.18s;
}
.sidebar ul li a.active,
.sidebar ul li a:hover {
  background: #564fc3;
  color: #e3e8ff;
}

.main {
  margin-left: 220px;
  padding: 32px 22px 22px 22px;
}

.glass-card {
  background: rgba(255,255,255,0.13);
  box-shadow: 0 8px 32px 0 rgba(31,38,135,0.18);
  border-radius: 16px;
  padding: 26px 22px;
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.11);
  color: #fff;
  margin-bottom: 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.glass-card h1 {
  font-size: 2.1em;
  font-weight: bold;
  margin-bottom: 0;
  color: #e3e8ff;
  letter-spacing: 1px;
}

.btn, .btn-green, .btn-blue, .btn-red {
  display: inline-block;
  padding: 10px 20px;
  border-radius: 10px;
  font-weight: bold;
  font-size: 1em;
  color: #fff;
  border: none;
  text-decoration: none;
  cursor: pointer;
  min-width: 120px;
  height: 40px;
  line-height: 20px;
  transition: background 0.18s;
  vertical-align: middle;
  text-align: center;
  box-sizing: border-box;
}
.btn-green {
  background: #27c27d;
}
.btn-green:hover {
  background: #1e9e61;
}
.btn-blue {
  background: #564fc3;
}
.btn-blue:hover {
  background: #4539a8;
}
.btn-red {
  background: #e04e4e;
}
.btn-red:hover {
  background: #b43a3a;
}
.action-buttons {
  display: flex;
  gap: 8px;
  align-items: center;
}
.action-buttons form { margin: 0; display: inline; }
.action-buttons button.btn, .action-buttons a.btn {
  padding: 10px 20px;
  height: 40px;
  min-width: 120px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

table {
  width: 100%;
  border-collapse: collapse;
  color: #fff;
  margin-top: 20px;
}
th, td {
  padding: 10px 13px;
  border-bottom: 1px solid rgba(255,255,255,0.17);
}
th {
  text-align: left;
  font-weight: 700;
  color: #e3e8ff;
  background: rgba(255,255,255,0.11);
  font-size: 1em;
}
td a, td form { display: inline-block; }

input[type="text"], input[type="date"], input[type="password"], input[type="email"], select {
  width: 260px;
  max-width: 100%;
  padding: 8px 10px;
  border-radius: 8px;
  border: none;
  font-size: 1em;
  margin-top: 3px;
  background: rgba(255,255,255,0.23);
  color: #222;
  box-sizing: border-box;
}
input[type="text"]:focus, input[type="date"]:focus, input[type="password"]:focus, input[type="email"]:focus, select:focus {
  outline: none;
  background: rgba(255,255,255,0.33);
}

label { font-size: 1em; margin-bottom: 11px; display: block; color: #e3e8ff; }
.form-actions { margin-top: 20px; }

@media (max-width: 900px) {
  .main { margin-left: 0; padding: 10px; }
  .sidebar { position: static; width: 100%; flex-direction: row; justify-content: space-between; padding: 10px 0;}
  .glass-card { flex-direction: column; align-items: flex-start; }
  .glass-card h1 { margin-bottom: 12px; }
}
