* {
  box-sizing: border-box;
  font-family: Tahoma, Arial, sans-serif;
}

body {
  margin: 0;
  min-height: 100vh;

  background: linear-gradient(135deg, #667eea, #764ba2);

  display: flex;
  justify-content: center;
  align-items: center;
}

.container {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 20px;
}

.auth-box,
.dashboard,
.class-box,
.admin-box {
  width: 100%;
  max-width: 500px;

  background: white;

  padding: 35px;

  border-radius: 20px;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);

  text-align: center;
}

h1 {
  color: #333;
}

h2 {
  color: #555;
}

input {
  width: 100%;

  padding: 14px;

  margin: 10px 0;

  border: 1px solid #ddd;

  border-radius: 10px;

  font-size: 16px;
}

input:focus {
  outline: none;

  border-color: #667eea;
}

button {
  border: none;

  cursor: pointer;

  font-size: 16px;

  border-radius: 10px;

  padding: 12px 20px;

  transition: 0.3s;
}

.tabs button {
  background: #eee;

  margin: 5px;
}

.tabs button:hover {
  background: #ddd;
}

.main-btn {
  width: 100%;

  margin-top: 10px;

  background: #667eea;

  color: white;
}

.main-btn:hover {
  background: #4e5fd1;

  transform: translateY(-2px);
}

.logout-btn {
  margin-top: 20px;

  background: #e74c3c;

  color: white;
}

.logout-btn:hover {
  background: #c0392b;
}

.hidden {
  display: none !important;
}

.class-box p {
  text-align: right;

  line-height: 2;

  background: #f5f5f5;

  padding: 10px;

  border-radius: 8px;
}

.user-card {
  background: #f3f3f3;

  padding: 15px;

  margin: 10px 0;

  border-radius: 10px;

  text-align: right;

  border-right: 5px solid #667eea;
}

#loginMessage,
#registerMessage {
  color: #e74c3c;
}
