/**
 * Dashboard styles for sports management system
 */

 :root {
    --primary-color: #e63946; /* Primary red color */
    --secondary-color: #ffb703; /* Secondary yellow/orange color */
    --light-color: #fff9f0; /* Light background color */
    --dark-color: #1d3557; /* Dark blue color for text/elements */
    --blue-team: #1e88e5; /* Blue team color */
    --pink-team: #ec407a; /* Pink team color */
    --green-team: #43a047; /* Green team color */
    --orange-team: #fb8c00; /* Orange team color */
    --sky-team: #039be5; /* Sky blue team color */
    --border-radius: 8px; /* Standard border-radius for elements */
    --box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Standard box shadow */
  }
  
  /* Body styling */
  body {
    font-family: 'Prompt', sans-serif; /* Custom font for better readability */
    background-color: #f8f9fa; /* Light grey background */
    color: var(--dark-color); /* Dark text color */
    padding-top: 20px;
    padding-bottom: 40px;
  }
  
  /* Welcome Header styling */
  .welcome-header {
    /* Updated: Add background image with gradient overlay */
    background: linear-gradient(135deg, rgba(230, 57, 70, 0.7), rgba(255, 183, 3, 0.7)), /* Semi-transparent gradient overlay */
                url('https://sport.krujeen.com/2025/images/header.jpg'); /* Image background */
    background-size: cover; /* Ensure image covers the entire area */
    background-position: center; /* Center the image */
    background-repeat: no-repeat; /* Prevent image repetition */
    color: white;
    padding: 2.5rem 0;
    margin-bottom: 2rem;
    border-radius: var(--border-radius);
    position: relative;
    overflow: hidden;
    box-shadow: var(--box-shadow);
  }
  
  /* Removed ::before pseudo-element as image is now directly in background */
  /* .welcome-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="none"><path fill="rgba(255,255,255,0.08)" d="M0,0 L100,0 L100,100 Z"></path></svg>');
    background-size: cover;
  } */
  
  .welcome-title {
    font-weight: 700;
    position: relative;
    z-index: 1; /* Ensure text is above the overlay */
  }
  
  .welcome-text {
    opacity: 0.9;
    font-weight: 300;
    position: relative;
    z-index: 1; /* Ensure text is above the overlay */
  }
  
  /* Stats Cards styling */
  .stats-card {
    background-color: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    padding: 1.5rem;
    height: 100%; /* Ensure cards in a row have equal height */
    transition: all 0.3s ease; /* Smooth transition for hover effect */
    border-top: 4px solid var(--secondary-color); /* Accent border on top */
  }
  
  .stats-card:hover {
    transform: translateY(-5px); /* Lift effect on hover */
  }
  
  .stats-icon {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    color: var(--primary-color); /* Icon color */
  }
  
  .stats-number {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: var(--dark-color);
  }
  
  .stats-label {
    color: #6c757d;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
  }
  
  /* Quick Access Menu styling */
  .quick-access-card {
    background-color: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    margin-bottom: 2rem;
    overflow: hidden; /* Ensures content respects border-radius */
  }
  
  .quick-access-header {
    background: linear-gradient(to right, var(--primary-color), #ed5565);
    color: white;
    padding: 1rem 1.5rem;
    font-weight: 600;
  }
  
  .quick-access-body {
    padding: 1.5rem;
  }
  
  .menu-item {
    display: block;
    padding: 1rem;
    border-radius: var(--border-radius);
    margin-bottom: 0.75rem;
    transition: all 0.3s ease;
    color: var(--dark-color);
    text-decoration: none;
    border-left: 4px solid transparent; /* For hover effect */
  }
  
  .menu-item:hover {
    background-color: var(--light-color);
    border-left-color: var(--secondary-color); /* Highlight on hover */
    transform: translateX(5px); /* Slide effect on hover */
  }
  
  .menu-item i {
    width: 2rem;
    text-align: center;
    color: var(--primary-color);
    margin-right: 0.5rem;
  }
  
  /* Upcoming Events styling */
  .upcoming-events-card {
    background-color: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    margin-bottom: 2rem;
    overflow: hidden;
  }
  
  .upcoming-events-header {
    background: linear-gradient(to right, var(--primary-color), #ed5565);
    color: white;
    padding: 1rem 1.5rem;
    font-weight: 600;
  }
  
  .upcoming-events-body {
    padding: 1.5rem;
  }
  
  .event-item {
    display: flex;
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #eee; /* Separator between events */
  }
  
  .event-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none; /* No separator for the last item */
  }
  
  .event-date {
    background-color: var(--secondary-color);
    color: var(--dark-color);
    width: 60px;
    height: 60px;
    border-radius: var(--border-radius);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    margin-right: 1rem;
    flex-shrink: 0; /* Prevent date box from shrinking */
  }
  
  .event-day {
    font-size: 1.5rem;
    line-height: 1;
  }
  
  .event-month {
    font-size: 0.8rem;
    text-transform: uppercase;
  }
  
  .event-details {
    flex-grow: 1; /* Allow details to take available space */
  }
  
  .event-title {
    font-weight: 600;
    margin-bottom: 0.25rem;
    color: var(--dark-color);
  }
  
  .event-info {
    color: #6c757d;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
  }
  
  .event-info i {
    margin-right: 0.5rem;
    width: 16px; /* Fixed width for consistent icon alignment */
    color: var(--primary-color);
  }
  
  /* Team Standings styling */
  .team-standings-card {
    background-color: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    margin-bottom: 2rem;
    overflow: hidden;
  }
  
  .team-standings-header {
    background: linear-gradient(to right, var(--primary-color), #ed5565);
    color: white;
    padding: 1rem 1.5rem;
    font-weight: 600;
  }
  
  .team-standings-body {
    padding: 1.5rem;
  }
  
  .standings-table {
    width: 100%;
  }
  
  .standings-table th {
    color: var(--dark-color);
    font-weight: 600;
    padding: 0.75rem 0;
    border-bottom: 2px solid var(--primary-color);
    text-transform: uppercase;
    font-size: 0.85rem;
  }
  
  .standings-table td {
    padding: 1rem 0;
    border-bottom: 1px solid #eee;
  }
  
  .standings-table tr:last-child td {
    border-bottom: none;
  }
  
  /* Team Badge Styles */
  .team-badge {
    display: inline-block;
    padding: 0.35rem 0.65rem;
    border-radius: 50px;
    font-weight: 500;
    font-size: 0.85rem;
  }
  
  .badge-blue {
    background-color: rgba(30, 136, 229, 0.15);
    color: var(--blue-team);
  }
  
  .badge-pink {
    background-color: rgba(236, 64, 122, 0.15);
    color: var(--pink-team);
  }
  
  .badge-green {
    background-color: rgba(67, 160, 71, 0.15);
    color: var(--green-team);
  }
  
  .badge-orange {
    background-color: rgba(251, 140, 0, 0.15);
    color: var(--orange-team);
  }
  
  .badge-sky {
    background-color: rgba(3, 155, 229, 0.15);
    color: var(--sky-team);
  }
  
  /* Medal Styles */
  .medal-count {
    font-weight: 700;
    display: inline-block;
    width: 2rem;
    height: 2rem;
    line-height: 2rem;
    text-align: center;
    border-radius: 50%;
    margin-right: 0.25rem;
  }
  
  .gold-medal {
    background-color: var(--secondary-color);
    color: var(--dark-color);
  }
  
  .silver-medal {
    background-color: #adb5bd;
    color: white;
  }
  
  .bronze-medal {
    background-color: #cd7f32;
    color: white;
  }
  
  /* Recent Results styling */
  .recent-results-card {
    background-color: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    margin-bottom: 2rem;
    overflow: hidden;
  }
  
  .recent-results-header {
    background: linear-gradient(to right, var(--primary-color), #ed5565);
    color: white;
    padding: 1rem 1.5rem;
    font-weight: 600;
  }
  
  .recent-results-body {
    padding: 1.5rem;
  }
  
  .result-item {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #eee;
  }
  
  .result-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  
  .result-sport {
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--dark-color);
  }
  
  .result-details {
    font-size: 0.9rem;
    color: #6c757d;
    margin-bottom: 0.75rem;
  }
  
  .result-teams {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
  }
  
  .versus {
    font-weight: 600;
    color: #6c757d;
  }
  
  .result-score {
    text-align: center;
    font-weight: 700;
    font-size: 1.25rem;
    padding: 0.5rem 1.5rem;
    background-color: rgba(230, 57, 70, 0.1);
    border-radius: var(--border-radius);
    color: var(--primary-color);
  }
  
  .winner-badge {
    display: inline-block;
    padding: 0.35rem 0.65rem;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.85rem;
    margin-top: 0.5rem;
  }
  
  /* Footer styling */
  .footer {
    background-color: var(--dark-color);
    color: white;
    padding: 1.5rem 0;
    text-align: center;
    margin-top: 2rem;
    border-radius: var(--border-radius);
  }
  
  .footer p {
    margin-bottom: 0;
  }
  
  /* Fade-in animation */
  @keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
  }
  
  .fade-in {
    animation: fadeIn 0.5s ease-out forwards;
  }
  
  /* Back Button styling */
  .back-btn {
    background-color: var(--dark-color);
    color: white;
    border: none;
    border-radius: var(--border-radius);
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
    margin-bottom: 1rem;
    display: inline-flex;
    align-items: center;
    transition: all 0.3s ease;
    text-decoration: none;
  }
  
  .back-btn i {
    margin-right: 0.5rem;
  }
  
  .back-btn:hover {
    background-color: rgba(29, 53, 87, 0.9);
    color: white;
    transform: translateY(-2px);
  }
  
  /* Breadcrumb styling */
  .breadcrumb {
    background-color: transparent;
    padding: 0;
    margin-bottom: 1rem;
  }
  
  .breadcrumb-item a {
    color: var(--primary-color);
    text-decoration: none;
  }
  
  .breadcrumb-item.active {
    color: #6c757d;
  }
  
  /* Responsive adjustments */
  @media (max-width: 992px) {
    .stats-card {
      margin-bottom: 1.5rem;
    }
  }
  
  /* Empty State Styles */
  .empty-state {
    text-align: center;
    padding: 3rem 1rem;
  }
  
  .empty-state i {
    font-size: 3rem;
    color: #dee2e6;
    margin-bottom: 1rem;
  }
  
  .empty-state p {
    color: #6c757d;
  }
