/* Team detail specific styles */
.team-card { 
  border-radius: 10px;
  transition: box-shadow .3s ease;
}

.team-header .team-logo { 
  height:120px; 
  width:120px; 
  object-fit:cover; 
  transition: box-shadow .2s ease; 
}

.team-header .team-logo:hover { 
  box-shadow: 0 0 0 3px rgba(30,90,154,0.5); 
}

.team-header .team-logo.placeholder { 
  font-size:.7rem; 
  letter-spacing:.05em; 
}

.team-name { 
  font-weight:700; 
  letter-spacing:.05em; 
}

.team-owner { 
  opacity:.8; 
}

.team-actions form input[type="text"],
.team-actions form input[type="file"] { 
  background:#1f1f1f; 
  border:1px solid #444; 
  color:#fff; 
}

.team-actions form input[type="text"]:focus,
.team-actions form input[type="file"]:focus { 
  border-color:#1E5A9A; 
  box-shadow: 0 0 0 0.2rem rgba(30,90,154,0.25); 
}

.team-actions .btn-primary { 
  background:#1E5A9A; 
  border-color:#1E5A9A; 
}

.team-actions .btn-primary:hover { 
  background:#165080; 
  border-color:#165080;
}

.team-actions .btn-outline-info { 
  border-color:#1E5A9A; 
  color:#1E5A9A; 
}

.team-actions .btn-outline-info:hover { 
  background:#1E5A9A; 
  color:#fff; 
}

.list-group-item { 
  border-color:#2b2b2b; 
}

.list-group-item + .list-group-item { 
  border-top:1px solid #2b2b2b; 
}

.badge.bg-warning { 
  background:#ffc107 !important; 
}

/* Larger styling for total points badge */
.team-points-badge {
  font-size:1rem;
  padding:0.55rem 0.9rem;
  border-radius:0.6rem;
  display:inline-flex;
  align-items:center;
  gap:0.35rem;
  box-shadow:0 2px 6px rgba(0,0,0,0.35);
  letter-spacing:.04em;
  font-weight:600;
}

@media (max-width: 768px) {
  .team-points-badge { 
    align-self:stretch; 
    width:100%; 
    justify-content:center; 
    margin-top:.5rem; 
  }
}

@media (max-width: 768px) {
  .team-header { 
    flex-direction:column; 
    align-items:flex-start; 
  }
  .team-header .team-logo { 
    margin-bottom:1rem; 
  }
}

/* Member avatar small circular */
.member-avatar {
  width: 40px;
  height: 40px;
  object-fit:cover;
  box-shadow:0 0 0 2px rgba(0,0,0,0.4);
  background:#222;
  transition: box-shadow .2s ease;
}

.member-avatar:hover { 
  box-shadow:0 0 0 2px #1E5A9A; 
}

.member-name { 
  font-weight:600; 
  letter-spacing:.03em; 
}

.member-name .member-activision { 
  display:block; 
  font-size:.65rem; 
  font-weight:500; 
  margin-top:2px; 
  opacity:.75; 
}

.member-name .member-activision i { 
  opacity:.85; 
}

/* Input validation styles for modals */
.modal input.is-valid {
  border-color: #28a745 !important;
}

.modal input.is-invalid {
  border-color: #dc3545 !important;
}
