﻿/**
* Template Name: NiceAdmin - v2.5.0
* Template URL: https://bootstrapmade.com/nice-admin-bootstrap-admin-html-template/
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
*/

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/

@font-face {
  font-family: 'Unbounded'; /* Name of the custom font */
  src: url("fonts/Unbounded/Unbounded-VariableFont_wght.ttf") format('truetype'); /* Path to the .ttf file */
}

@font-face {
  font-family: 'Hedvig_Letters_Sans'; /* Name of the custom font */
  src: url("fonts/Hedvig_Letters_Sans/HedvigLettersSans-Regular.ttf") format('truetype'); /* Path to the .ttf file */
}

@font-face {
  font-family: 'Hind_Siliguri'; /* Name of the custom font */
  src: url("fonts/Hind_Siliguri/HindSiliguri-Regular.ttf") format('truetype'); /* Path to the .ttf file */
}

:root {
  scroll-behavior: smooth;

  /* Variables Globales: Colores */
  --main-color-zion-red: #EA371C;
  --main-color-zion-orange: #ff8e31;
  --main-color-zion-background-top: #080808;
  --main-color-zion-background-bottom: #621700e0;
  /* Variables Globales: Colores */
  --main-title-font: 'Segoe UI';
  --main-base-font: 'Segoe UI';

}

body {

  /* Reset margin and padding to ensure consistency across browsers */
  margin: 0;
  padding: 0;

  /*font-family: "Open Sans", sans-serif;*/
  font-family: var(--main-base-font), system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  font-weight: 500;
  color: #444444;
  background-color: #5e5e5ea8;
  min-height: 100vh;
  display: flex;
  flex-direction: column;

  /* Set the background image container */
  position: relative;
  overflow: auto; /* Ensure the background doesn't overflow */

  /* Web app uses ALL the width of the screen. */
  top: 0;
  left: 0;
  right: 0;
}

p.white {
  color: white !important;
}

.background-container {
  /* Set the background image */
  background-color: black;

  /* Set the background properties */
  background-size: cover; /* cover the entire element */
  background-position: 50% 50%; /* Center the bg image */
  background-repeat: no-repeat; /* no-repeat */

  /* Make the background container fixed */
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1; /* Send it to the back, behind other elements */
}

/*.background-container.login {*/
  /* Set the background image */
  /*background-image: url("../img/wallpapers/wallpaper zion football-futsal-hockey.png");*/
/*}*/

.background-container.login video {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100vw;
  min-height: 100vh;
  z-index:-100;
}

.background-container.futbol {
  /* Set the background image */
  background-image: url("../img/stadium-1813336-1280p.jpg");
}

.background-container.futsal {
  /* Set the background image */
  background-image: url("../img/futsal-court-3.jpg");
}

.background-container.hockey {
  /* Set the background image */
  background-image: url("../img/hockey-wallpaper-1.jpg");
}

.background-container.cockpit {
  /* Set the background color for cockpit */
  background-color: #0e0e0e;
}

.background-container.site {
  /* Set the background color for cockpit */
  /*background-color: #131315;*/
  background: radial-gradient(125% 125% at 50% 10%, var(--main-color-zion-background-top) 50%, var(--main-color-zion-background-bottom) 100%);
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(rgb(0 0 0 / 95%), rgba(120, 64, 18, 0.94)); /* Adjust the RGBA values to change the color and opacity of the overlay */
  z-index: 1; /* Ensure the overlay is above the background image */
}

a {
  color: #a9511b;
  text-decoration: none;
}

a:hover {
  color: #f16611;
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--main-title-font), system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.text-color-zion-red {
  color: var(--main-color-zion-red);
}

.text-color-zion-orange {
  color: var(--main-color-zion-orange);
}

.text-color-zion-white {
  color: white;
}

.text-color-zion-gray {
  color: #808080;
}

.background-color-zion-red {
  /*background-color: var(--main-color-zion-red);*/
  background-image: linear-gradient(to right, #c44206, #d37e1c);
}

.dashboard h1,
.dashboard h2,
.dashboard h3,
.dashboard h4,
.dashboard h5,
.dashboard h6 {
  font-family: var(--main-title-font), system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  color: #ffffff;
}

.dashboard h3.report-section-title {
  text-transform: uppercase;
  color: white;
  font-size: 20px;
  font-weight: 700;
  border: none;
  border-bottom: 3px solid var(--main-color-zion-orange);
  padding-top: 10px;
  padding-bottom: 5px;
  box-shadow: 0 0 1rem 0 rgba(0, 0, 0, .3);
  border-radius: 5px;
  background-color: rgb(0 0 0 / 54%);
  backdrop-filter: blur(5px);
}

.dashboard h1.card-title,
.dashboard h2.card-title,
.dashboard h3.card-title,
.dashboard h4.card-title,
.dashboard h5.card-title,
.dashboard h6.card-title {
  font-family: var(--main-title-font), system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  color: var(--main-color-zion-orange);
  font-weight: 700;
}

.alert-warning h4.alert-heading {
  color:#111010;
}

.modal-header h5.modal-title {
  font-family: var(--main-title-font), "Nunito", sans-serif;
  color: #111010;
}

.modal-footer label,
.modal-body label {
  color: #111010;
}

.btn {
  color: white;
  background-color: var(--main-color-zion-red);
  border-color: transparent;
}

.btn:hover {
  color: white;
  background-color: #f16611;
  border-color: transparent;
}

.btn.btn-dark {
  color: white;
  background-color: #212529;
  border-color: transparent;
}

.btn.btn-dark:hover {
  color: white;
  background-color: #424649;
  border-color: transparent;
}

.btn.btn-outline-info.btn-sm, .btn.btn-outline-danger.btn-sm {
  background-color: transparent;
  color: white;
}

.btn.btn-outline-info.btn-sm {
  border-color: #31d2f2;
}

.btn.btn-outline-info.btn-sm:hover {
  background-color: #31d2f2;
}

.btn.btn-outline-danger.btn-sm {
  border-color: var(--main-color-zion-red);
}

.btn.btn-outline-danger.btn-sm:hover {
  background-color: var(--main-color-zion-red);
}

label.btn.btn-primary.btn-sm {
  color: white;
  background-color: var(--main-color-zion-red);
  border-color: transparent;
}

label.btn.btn-primary.btn-sm:hover {
  color: white;
  background-color: #f16611;
  border-color: transparent;
}

a.back-to-top {
  background-color: transparent;
  border-color: transparent;
}

a.back-to-top:hover {
  background-color: transparent;
  border-color: transparent;
}

a.back-to-top i.bi.bi-arrow-up-short {
  color: white;
  background-color: var(--main-color-zion-red);
  border-color: transparent;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  padding-right: 10px;
  border-radius: 10%;
}

a.back-to-top i.bi.bi-arrow-up-short:hover {
  color: white;
  background-color: #f16611;
  border-color: transparent;
}

a.btn.btn-danger.btn-sm {
  color: white;
  background-color: var(--main-color-zion-red);
  border-color: transparent;
}

a.btn.btn-danger.btn-sm:hover {
  color: white;
  background-color: #f16611;
  border-color: transparent;
}

a i.bi.bi-trash {
  color: grey;
}

section.section.py-4 {
    padding-top: 1rem!important;
    padding-bottom: 0rem!important;
}

/*--------------------------------------------------------------
# Main
--------------------------------------------------------------*/
#main {
  margin-top: 60px;
  padding: 0px 25px;
  transition: all 0.3s;
}

@media (max-width: 1199px) {
  #main {
    padding: 20px;
  }
}

.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
  margin-left: 10px;
  margin-right: 10px;
  /*min-width: fit-content;*/ /*DO NOT REACTIVATE!!!*/
  /*max-width: 1675px;*/
  max-width: 100%;
}

/*--------------------------------------------------------------
# Page Title
--------------------------------------------------------------*/
.pagetitle {
  margin-bottom: 10px;
}

.pagetitle h1 {
  font-size: 24px;
  margin-bottom: 0;
  font-weight: 600;
  color: #ebebeb;
}

.pagetitle h1.h1-bigger {
  font-size: 36px;
}

.main .container .pagetitle h1 {
  padding-top: 15px;
}

/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  right: 15px;
  bottom: 15px;
  z-index: 99999;
  background: #a9511b;
  width: 40px;
  height: 40px;
  border-radius: 4px;
  transition: all 0.4s;
}

.btn-sm {
  --bs-btn-padding-y: 0.1rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 0.875rem;
  --bs-btn-border-radius: 0.25rem;
  --bs-btn-color: #fff;
  --bs-btn-bg: #6e7785;
  --bs-btn-border-color: #6e7785;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #4d5055;
  --bs-btn-hover-border-color: #4d5055;
  --bs-btn-focus-shadow-rgb: 49,132,253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #6e7785;
  --bs-btn-active-border-color: #6e7785;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #6e7785;
  --bs-btn-disabled-border-color: #6e7785;
  margin: 0px;
}

.back-to-top i {
  font-size: 24px;
  color: #fff;
  line-height: 0;
}

.back-to-top:hover {
  background: #f16611;
  color: #fff;
}

.back-to-top.active {
  visibility: visible;
  opacity: 1;
}

/*--------------------------------------------------------------
# Override some default Bootstrap stylings
--------------------------------------------------------------*/
/* Dropdown menus */
.dropdown-menu {
  border-radius: 4px;
  padding: 10px 0;
  animation: none !important;
  transition: none !important;
  border: 0;
  box-shadow: 0 5px 30px 0 rgba(82, 63, 105, 0.2);
  z-index: 1050 !important; /* Higher than card-hoverable hover z-index */
}

.dropdown-menu .dropdown-header,
.dropdown-menu .dropdown-footer {
  text-align: center;
  font-size: 15px;
  padding: 10px 25px;
}

.dropdown-menu .dropdown-footer a {
  color: #444444;
  text-decoration: underline;
}

.dropdown-menu .dropdown-footer a:hover {
  text-decoration: none;
}

.dropdown-menu .dropdown-divider {
  color: #a5c5fe;
  margin: 0;
}

.dropdown-menu .dropdown-item {
  font-size: 14px;
  padding: 10px 15px;
  transition: 0.3s;
}

.dropdown-menu .dropdown-item i {
  margin-right: 10px;
  font-size: 18px;
  line-height: 0;
}

.dropdown-menu .dropdown-item:hover {
  background-color: #f6f9ff;
}

.card.login .card-body div {
  color: #ffffffed;
}

.card.login .card-body div p{
  color: #ffffffed;
}

.card .card-body div {
  color: #ffffffa6;
}

.card .card-body div p{
  color: #ffffffa6;
}

.card .card-body div p.title {
  font-size: 18px !important;
}

.card .card-body div p.white {
  color: white;
}

.card.proximos-partidos {
  max-width: 450px;
  padding: 0px;
  margin-bottom: 0px;
  border: none;
  box-shadow: none;
  backdrop-filter: none;
}

.card.weather {
  /*background: url("../img/stadium-weather-1.webp") no-repeat center/cover;*/
  width: 95%;
  max-width: 480px;
  margin-top: 0px;
}

.card-body.weather div {
  color: #ffffffed;
}

.carousel-indicators {
  margin-bottom: 0px;
}

.carousel-item {
  padding-left: 50px;
  padding-right: 50px;
  padding-bottom: 15px;
}

.carousel-item .card {
  background-color: transparent;
  color: white;
  /*box-shadow: 3px 2px 7px 0px rgba(40,40,40,0.75);*/
  /* Glassy Effect */
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74); 
  border-radius: 10px;
  background-color: rgb(28 28 28 / 30%);
  backdrop-filter: blur(5px); /* ojo que afecta a .modal-backdrop */
}

.carousel-item .card.futbol {
  background: url("../img/soccer-field-stadium.jpg") no-repeat center/cover;
}

.carousel-item .card.futsal {
  background: url("../img/futsal-court-2.jpg") no-repeat center/cover;
}

.carousel-item .card.hockey {
  background: url("../img/hockey-stick-1.jpg") no-repeat center/cover;
}

.carousel-item .card.basketball {
  background: url("../img/basketball-court-card-1.jpg") no-repeat center/cover;
}

.carousel-item .card.handball {
  background: url("../img/handball-court-card-1.jpg") no-repeat center/cover;
}

.carousel-item .card.rugby {
  background: url("../img/rugby-court-card-1.jpg") no-repeat center/cover;
}

.carousel-item .card.rugby {
  background: url("../img/volleyball-court-card-1.jpg") no-repeat center/cover;
}

.carousel-item .card .card-body a i {
  color: #00000099;
}

.carousel-item .card .card-body div h5{
  color: white;
  font-size: 20px;
}

.carousel-item .card .card-body div label{
  color: #ffffffb5;
}

.carousel-item .card .card-body .modal-footer {
  padding-top: 15px;
}

.carousel-item .card .card-body .modal-footer i {
  color: white;
}

@media (min-width: 768px) {
  .dropdown-menu-arrow::before {
    content: "";
    width: 13px;
    height: 13px;
    background: #fff;
    position: absolute;
    top: -7px;
    right: 20px;
    transform: rotate(45deg);
    border-top: 1px solid #eaedf1;
    border-left: 1px solid #eaedf1;
  }
}

@-webkit-keyframes dropdown-animate {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }

  0% {
    opacity: 0;
  }
}

@keyframes dropdown-animate {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }

  0% {
    opacity: 0;
  }
}

.bg-zion-win {
  /*background-color: var(--main-color-zion-red) !important;*/
  background-image: linear-gradient(to right, #c44206, #d37e1c);
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74);
}

.bg-zion-loss {
  background-color: #18181a !important;
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74);
}

.bg-dark {
  background-color: #ea6f1cb0 !important;
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74);
}

.bg-dark-gradient {
  background: linear-gradient(to right, #c44206, #d37e1c);
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74);
}

.bg-secondary-dark {
  background: linear-gradient(to right, #18181a, #2d2d2d);
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74);
}

/* Light Backgrounds */
.bg-primary-light {
  background-color: #cfe2ff;
  border-color: #cfe2ff;
}

.bg-secondary-light {
  background-color: #e2e3e5;
  border-color: #e2e3e5;
}

.bg-success-light {
  background-color: #d1e7dd;
  border-color: #d1e7dd;
}

.bg-danger-light {
  background-color: #f8d7da;
  border-color: #f8d7da;
}

.bg-warning-light {
  background-color: #fff3cd;
  border-color: #fff3cd;
}

.bg-info-light {
  background-color: #cff4fc;
  border-color: #cff4fc;
}

.bg-dark-light {
  background-color: #d3d3d4;
  border-color: #d3d3d4;
}

/* Card */
.card {
  margin-bottom: 30px;
  border: solid .0625rem #2c2c30;
  /* Glassy Effect */
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74); 
  border-radius: 10px;
  background-color: #1d1c2196;
  backdrop-filter: blur(5px); /* ojo que afecta a .modal-backdrop */
  scrollbar-color: #2e2e2e transparent;
}

/* Ribbon styles */
.card.ribbon-card {
  position: relative;
  overflow: hidden;
}

.card.ribbon-card::before {
  content: "Jugador Destacado";
  position: absolute;
  top: 15px;
  right: -55px; /* â† shift it into view */
  background: linear-gradient(to right, #c44206, #d37e1c);
  color: white;
  padding: 5px 60px;
  transform: rotate(45deg);
  font-size: 12px;
  font-weight: bold;
  z-index: 1;
  box-shadow: 0 2px 4px rgba(0,0,0,0.2);
  text-align: center;
  width: 200px;
}

.card-hoverable {
  transition: transform 0.2s ease, border 0.2s ease; /* Add transition for smooth effect */
}

.card-hoverable:hover {
  border: solid .12rem var(--main-color-zion-red);
  box-shadow: 0px 0px 7px rgb(207 108 97 / 73%);
  /*transform: scale(1.05); /* Scale the element to 105% of its original size */
  z-index: 900;
}

.glowing-card {
  position: relative;
  z-index: 1;
  /*background-color: rgba(255, 255, 255, 0); /* Adjust to your background */
  border-radius: 12px;
  /*padding: 4px; /* Thickness of the gradient border */
  background-clip: padding-box;
  box-shadow: 0 0 15px rgba(36, 23, 14, 1); /* ðŸŒŸ Shadow Splash Effect */
  transition: box-shadow 0.5s ease; /* Smooth effect */
}

.glowing-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  /*margin: -4px; /* Same as padding */
  border-radius: 10px;
  /*background: linear-gradient(to right, #18d26e, #0b8457);*/
  z-index: -1;
  box-shadow: 0 0 20px rgba(237, 71, 30, 0.24); /* Optional: Splash behind border too */
  transition: box-shadow 0.5s ease;
}

.glowing-card:hover {
  box-shadow: 0 0 20px rgba(255, 130, 14, 0.747);
}





.card.no-backdrop-filter {
  backdrop-filter: none; /* usar esta clase para tarjetas donde hay elementos que abren algun .modal */
}

.card.login {
  margin-bottom: 30px;
  border: none;
  border-radius: 10px;
  background-color: #131313d2;
  /*box-shadow: 100px 100px 100px rgba(5, 5, 5, 0.1);*/
  box-shadow: 10px 10px 35px rgba(5, 5, 5, 0.7);
  color: white;
}

.pl-2 {
  padding-left: 20px;
}

.pr-2 {
  padding-right: 20px;
}

#login-logo-link #login-logo {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  margin-top: var(--bs-gutter-y);
}

.card.login.mainlogo {
  padding-top: 40px;
  padding-left: 20px;
  align-items: left;
}

div.matchreport-card-header {
  margin-bottom: 0;
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

div.matchreport-card-header:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

div.matchreport-card-header .card-body {
  padding: 1.5rem;
}

div.matchreport-card-header .card-title.matchreport {
  font-size: 1.25rem;
  font-weight: 600;
  color: #ffffff;
  margin-bottom: 0.25rem;
}

div.matchreport-card-header span.matchreport {
  color: var(--main-color-zion-orange);
  font-size: 0.875rem;
  font-weight: 500;
  opacity: 0.9;
}

div.matchreport-card-header .card-title-matchreport-result {
  font-size: 2.5rem;
  font-weight: 700;
  color: #ffffff;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

div.matchreport-card-header .card-subtitle-matchreport-result {
  color: var(--main-color-zion-orange);
  font-size: 1rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

div.matchreport-card-header img.img-fluid.rounded-circle {
  border: 3px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
}

div.matchreport-card-header img.img-fluid.rounded-circle:hover {
  transform: scale(1.05);
  border-color: var(--main-color-zion-orange);
}

div.stats-card-header {
  margin-bottom: 0;
  min-height: 200px !important;
  height: auto;
}

div.div-tarjeta-jugador-destacado {
  max-width: 300px;
}

.card-header,
.card-footer {
  border: none;
  border-color: #fdfdfdd2;
  background-color: transparent;
  color: #798eb3;
  padding: 15px;
}

.card-title {
  padding: 20px 0 15px 0;
  font-size: 18px;
  font-weight: 500;
  color: var(--main-color-zion-orange);
  font-family: var(--main-title-font), "Poppins", sans-serif;
}

.info-card.match-report-card .card-title {
  padding: 0px 0 10px 0;
}

.card-title span {
  color: #b1b1b1;
  font-size: 15px;
  font-weight: 400;
}

.card-title span.badge {
  color: #ffffff;
  font-size: 12px;
  font-weight: 400;
}

.card-body {
  padding: 10px 10px 10px 10px;
}

.card-body.login {
  padding: 0px 0px 0px 0px;
}

.card-img-overlay {
  background-color: rgba(255, 255, 255, 0.6);
}

/* Alerts */
.alert-heading {
  font-weight: 500;
  font-family: var(--main-base-font), "Poppins", sans-serif;
  font-size: 20px;
}

/* Close Button */
.btn-close {
  background-size: 25%;
}

.btn-close:focus {
  outline: 0;
  box-shadow: none;
}

.btn:disabled {
  background-color: #2e2e2e;
  border-color: var(--main-color-zion-red);
}

/* Accordion */
.accordion {
  background-color: transparent;
}

.accordion-item {
  border: 1px solid #ebeef4;
  background-color: transparent;
}

.accordion-button {
  color: #898989d1;
}

.accordion-button::after {
  border-radius: 10px;
  background-color: transparent; /*var(--main-color-zion-orange);*/
}

button.accordion-button {
  color: #d5d5d5d1;
}

.accordion-button:focus {
  outline: 0;
  box-shadow: none;
}

.accordion-button:not(.collapsed) {
  color: #ffffff;
  background-color: transparent;
}

button.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-icon);
  filter: invert(1) sepia(1) saturate(5) hue-rotate(180deg); /* Adjust the filter values to achieve the desired color */
}

.accordion-flush .accordion-button {
  padding: 15px 0;
  background: none;
  border: 0;
}

.accordion-flush .accordion-button:not(.collapsed) {
  box-shadow: none;
  color: #898989d1;
}

.accordion-flush .accordion-body {
  padding: 0 0 15px 0;
  color: #3e4f6f;
  font-size: 15px;
}

/* Breadcrumbs */
.breadcrumb {
  font-size: 14px;
  font-family: var(--main-base-font), system-ui, -apple-system;
  color: #dddddd;
  font-weight: 600;
}

.breadcrumb a {
  color: #e4e4e4;
  transition: 0.3s;
}

.breadcrumb a:hover {
  color: #e4e4e4;
}

.breadcrumb .breadcrumb-item::before {
  color: #e4e4e4;
}

.breadcrumb .active {
  color: var(--main-color-zion-red);
  font-weight: 600;
}

/* Bordered Tabs */
.nav-tabs-bordered {
  margin-top: 15px;
  margin-bottom: -5px;
  font-weight: 600;
}

.nav-tabs-bordered .nav-link {
  margin-bottom: -3px;
  border: none;
  background-color: #bbbbbb00;
  color: #fffcf8;
  border-bottom: 3px solid #525252;
}

.nav-tabs-bordered .nav-link:hover,
.nav-tabs-bordered .nav-link:focus {
  color: #ffb273;
  border-bottom: 3px solid var(--main-color-zion-orange);
}

.nav-tabs-bordered .nav-link.active {
  margin-bottom: -5px;
  border: none;
  background-color: #3a3a3ac2;
  color: var(--main-color-zion-orange);
  border-bottom: 3px solid var(--main-color-zion-orange);
}

/* Bordered Content */
.tab-content {
  color: #fffcf8;
  padding-left: 10px;
  padding-right: 10px;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.logo {
  line-height: 1;
}

@media (min-width: 1200px) {
  .logo {
    /*width: 280px;*/
    width: 245px;
  }
}

.logo img {
  max-height: 26px;
  margin-right: 6px;
}

.logo span {
  font-size: 12px;
  font-weight: 500;
  color: #c3c3c3;
  font-family: var(--main-base-font), "Nunito", sans-serif;
  text-align: right;
  align-items: right;
  padding-left: 10px;
}

.header {
  transition: all 0.5s;
  z-index: 997;
  height: 60px;
  /*box-shadow: 30px 50px 40px rgba(1, 41, 112, 0.1);*/
  background-color: #040404;
  padding-left: 20px;
  /* Toggle Sidebar Button */
  /* Search Bar */
}

.header .toggle-sidebar-btn {
  font-size: 32px;
  padding-left: 10px;
  cursor: pointer;
  color: #e6e6e6;
}

.header .search-bar {
  min-width: 360px;
  padding: 0 20px;
}

@media (max-width: 1199px) {
  .header .search-bar {
    position: fixed;
    top: 50px;
    left: 0;
    right: 0;
    padding: 20px;
    box-shadow: 0px 0px 15px 0px rgba(1, 41, 112, 0.1);
    background: white;
    z-index: 9999;
    transition: 0.3s;
    visibility: hidden;
    opacity: 0;
  }

  .header .search-bar-show {
    top: 60px;
    visibility: visible;
    opacity: 1;
  }
}

.header .search-form {
  width: 100%;
}

.header .search-form input {
  border: 0;
  font-size: 14px;
  color: #012970;
  border: 1px solid rgba(1, 41, 112, 0.2);
  padding: 7px 38px 7px 8px;
  border-radius: 3px;
  transition: 0.3s;
  width: 100%;
}

.header .search-form input:focus,
.header .search-form input:hover {
  outline: none;
  box-shadow: 0 0 10px 0 rgba(1, 41, 112, 0.15);
  border: 1px solid rgba(1, 41, 112, 0.3);
}

.header .search-form button {
  border: 0;
  padding: 0;
  margin-left: -30px;
  background: none;
}

.header .search-form button i {
  color: #012970;
}

/*--------------------------------------------------------------
# Header Nav
--------------------------------------------------------------*/
.header-nav ul {
  list-style: none;
}

.header-nav>ul {
  margin: 0;
  padding: 0;
}

.header-nav .nav-icon {
  font-size: 22px;
  color: #012970;
  margin-right: 25px;
  position: relative;
}

.header-nav .version-badge {
  margin-right: 20px;
}

.header-nav .notification-dropdown {
  margin-right: -15px;
}

.header-nav .notification-dropdown .notification-icon,
.header-nav .language-dropdown .language-icon {
  transition: 0.3;
  background: transparent;
  color: #cbcbcb;
  font-size: 20px;
  padding: 0px;
  min-width: 35px;
  min-height: 35px;
  align-items: center;
  text-align: center;
  border-radius: 25px;
  border: 0px solid transparent;
}

.header-nav .notification-dropdown .notification-icon:hover,
.header-nav .language-dropdown .language-icon:hover {
  transition: 0.3;
  background: #313131;
  color: #ffffff;
}

.header-nav .notification-dropdown .notification-icon.show,
.header-nav .language-dropdown .language-icon.show {
  transition: 0.3;
  background: var(--main-color-zion-red);
  color: #ffffff;
}

.header-nav .notification-dropdown .notification-icon .notification-counter {
  background-color: var(--main-color-zion-red) !important;
}

.header-nav .nav-profile {
  color: #e6e6e6;
}

.header-nav .nav-profile img {
  max-height: 36px;
  box-shadow: 10px 10px 35px rgba(5, 5, 5, 0.616);
}

.header-nav .nav-profile img.rounded-circle,
.match-report-card .card-icon.rounded-circle img.rounded-circle,
img.rounded-circle {
  border: 2px solid var(--main-color-zion-red);
  object-fit: cover;
  object-position: center;
  border: 2px solid var(--main-color-zion-red);
  aspect-ratio: 1/1;
}

img.rounded-circle.gradient-border {
  position: relative;
  z-index: 1;
  /*background-color: rgba(255, 255, 255, 0); /* Adjust to your background */
  /*border-radius: 50%;*/
  /*padding: 4px; /* Thickness of the gradient border */
  background-clip: padding-box;
  box-shadow: 0 0 15px rgba(219, 91, 6, 0.5); /* ðŸŒŸ Shadow Splash Effect */
  transition: box-shadow 0.5s ease; /* Smooth effect */
}

img.rounded-circle.gradient-border::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  /*margin: -4px; /* Same as padding */
  /*border-radius: 50%;*/
  /*background: linear-gradient(to right, #18d26e, #0b8457);*/
  z-index: -1;
  box-shadow: 0 0 20px rgba(237, 70, 30, 0.5); /* Optional: Splash behind border too */
  transition: box-shadow 0.5s ease;
}

img.rounded-circle.gradient-border:hover {
  box-shadow: 0 0 25px rgb(255, 130, 14);
}

.header-nav .nav-profile span {
  font-size: 14px;
  font-weight: 600;
}

.header-nav .badge-number {
  position: absolute;
  inset: -2px -5px auto auto;
  font-weight: normal;
  font-size: 12px;
  padding: 3px 6px;
}

.header-nav .notifications {
  inset: 8px -15px auto auto !important;
  width: 380px !important;
}

.header-nav .notifications .notification-item {
  display: flex;
  align-items: flex-start;
  padding: 15px 10px;
  transition: 0.3s;
}

.header-nav .notifications .notification-item i {
  margin: 0 20px 0 10px;
  font-size: 24px;
}

.header-nav .notifications .notification-item h4 {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 5px;
}

.header-nav .notifications .notification-item p {
  font-size: 13px;
  margin-bottom: 3px;
  color: #919191;
}

.header-nav .notifications .notification-item:hover {
  background-color: #f6f9ff;
}

.header-nav .messages {
  inset: 8px -15px auto auto !important;
}

.header-nav .messages .message-item {
  padding: 15px 10px;
  transition: 0.3s;
}

.header-nav .messages .message-item a {
  display: flex;
}

.header-nav .messages .message-item img {
  margin: 0 20px 0 10px;
  max-height: 40px;
}

.header-nav .messages .message-item h4 {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 5px;
  color: #444444;
}

.header-nav .messages .message-item p {
  font-size: 13px;
  margin-bottom: 3px;
  color: #919191;
}

.header-nav .messages .message-item:hover {
  background-color: #f6f9ff;
}

.header-nav .profile {
  min-width: 240px;
  padding-bottom: 0;
  top: 8px !important;
}

.header-nav .profile .dropdown-header h6 {
  font-size: 18px;
  margin-bottom: 0;
  font-weight: 600;
  color: #444444;
}

.header-nav .profile .dropdown-header span {
  font-size: 14px;
}

.header-nav .profile .dropdown-item {
  font-size: 14px;
  padding: 10px 15px;
  transition: 0.3s;
}

.header-nav .profile .dropdown-item i {
  margin-right: 10px;
  font-size: 18px;
  line-height: 0;
}

.header-nav .profile .dropdown-item:hover {
  background-color: #f6f9ff;
}

/*--------------------------------------------------------------
# Sidebar
--------------------------------------------------------------*/
.sidebar {
  position: fixed;
  top: 60px;
  left: 0;
  bottom: 0;
  /*height: auto;*/
  /*max-height: 90vh;*/
  width: 300px;
  z-index: 996;
  /*margin-left: 10px;*/
  transition: all 0.3s;
  padding: 20px;
  overflow-y: auto;
  scrollbar-width: auto;
  scrollbar-color: #2e2e2e transparent;
  /*box-shadow: 30px 50px 40px rgba(1, 41, 112, 0.1);*/
  /*background-color: #121212;*/
  /* Glassy Effect */
  box-shadow: 9px 1px 1rem 5px rgba(0, 0, 0, .3);
  border-radius: 0px;
  background-color: #1c1c1c;
  backdrop-filter: blur(5px);
}

@media (max-width: 1199px) {
  .sidebar {
    left: -300px;
  }
}

.sidebar::-webkit-scrollbar {
  width: 15px;
}

.sidebar::-webkit-scrollbar-track {
  background: #ffffff00; /* Set the color of the track (the area behind the thumb) */
  border-radius: 10px;
}

.sidebar::-webkit-scrollbar-thumb {
  background: #90997a5d; /* Set the color of the thumb */
  border-radius: 10px; /* Set the border radius of the thumb */
  border: 5px solid #ffffff00;
}

.sidebar::-webkit-scrollbar-thumb:hover {
  background: #cf4a21d9; /* Set the color of the thumb on hover */
}

@media (min-width: 1200px) {

  #main,
  #footer {
    margin-left: 300px;
  }
  #footer.login {
    margin-left: 0px;
  }
}

@media (max-width: 1199px) {
  .toggle-sidebar .sidebar {
    left: 0;
  }
}

@media (min-width: 1200px) {

  .toggle-sidebar #main,
  .toggle-sidebar #footer {
    margin-left: 0;
  }

  .toggle-sidebar .sidebar {
    left: -300px;
  }
}

.sidebar-nav {
  padding: 0;
  margin: 0;
  list-style: none;
}

.sidebar-nav li {
  padding: 0;
  margin: 2px 0px 3px 0px;
  list-style: none;
}

.sidebar-nav .nav-item {
  margin-bottom: 5px;
}

.sidebar-nav .nav-item:has(.nav-content.show) {
  border-radius: 4px;
  background-color: #1a1a1a;
  padding-bottom: 10px;

}

.sidebar-nav .nav-heading {
  font-size: 11px;
  text-transform: uppercase;
  color: #b1b1b1;
  font-weight: 600;
  margin: 10px 0 5px 15px;
  border-bottom: 1px solid;
  border-color: #202020;
}

.sidebar-nav .nav-link {
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 600;
  color: #f8f8f8;
  transition: 0.3;
  background: linear-gradient(to right, #c44206, #d37e1c);
  padding: 5px 15px 10px 15px;
  margin-bottom: 7px;
  border-radius: 8px;
  /*border-bottom: 2px solid;*/
  /*border-image: linear-gradient(to right, #c44206, #d37e1c) 1;*/
}

.sidebar-nav .nav-link.active {
  color: #ffffff;
}

.sidebar-nav .nav-link .bi.active {
  color: #ffffff;
}

.sidebar-nav .nav-link i {
  font-size: 16px;
  margin-right: 10px;
  color: #ffffff;
}

.sidebar-nav .nav-link.collapsed {
  color: #ffffff;
  background: transparent;
  border-bottom: 0px transparent;
  border-image: none;
}

.sidebar-nav .nav-link.collapsed i {
  color: #ffffff;
}

.sidebar-nav .nav-link:hover {
  color: #ffffff;
  background-color: var(--main-color-zion-background-top);
}

.sidebar-nav .nav-link:hover i {
  color: #ff8400;
}

.sidebar-nav .nav-link .bi-chevron-down {
  margin-right: 0;
  transition: transform 0.2s ease-in-out;
}

.sidebar-nav .nav-link:not(.collapsed) .bi-chevron-down {
  transform: rotate(180deg);
}

.sidebar-nav .nav-content {
  padding: 0 0 0 0;
  margin: 0;
  list-style: none;
}

.sidebar-nav .nav-content a {
  display: flex;
  align-items: center;
  font-size: 14px;
  font-weight: 400;
  color: #ffffff;
  transition: 0.3;
  padding: 5px 1px 5px 30px;
  transition: 0.3s;
  margin-right: 8px;
}

.sidebar-nav .nav-content a i {
  font-size: 6px;
  margin-right: 8px;
  line-height: 0;
  border-radius: 50%;
}

.sidebar-nav .nav-content a.active {
  color: #ffffff;
  background-color: #3f3f3f;
  border-radius: 10px;
  padding-left: 5px;
  margin-left: 25px;
}

.sidebar-nav .nav-content a:hover {
  color: #ffffff;
  background-color: #cf490a;
  border-radius: 10px;
  padding-left: 5px;
  margin-left: 25px;
}

.sidebar-nav .nav-content a.active i {
  /*background-color: #4154f1;*/
  font-size: 10px;
}

/*--------------------------------------------------------------
# Dashboard
--------------------------------------------------------------*/
#main.no-navbar,
#footer.no-navbar {
  margin-left: 0;
}

/* Banner Img */
.banner {
  width: 100%; /* You can adjust this to your desired width */
  margin: 0 auto; /* Center the container */
  padding-bottom: 15px;
}

/* Make the image take up the full width of the container */
.banner img {
  width: 100%;
  height: auto; /* This ensures the image maintains its aspect ratio */

  /* Add the shadow effect */
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  /* Add rounded corners */
  border-radius: 8px; /* Adjust the value to change the level of rounding */
}

.dashboard label.col-form-label {
  color: var(--main-color-zion-orange);
  font-size: 16px;
}

.dashboard label.col-form-label.highlighted-background {
  box-shadow: 0 0 1rem 0 rgba(0, 0, 0, .3); 
  border-radius: 10px;
  background-color: rgb(0 0 0 / 54%);
  backdrop-filter: blur(5px); /* ojo que afecta a .modal-backdrop */
}

/* Filter dropdown */
.dashboard .filter {
  position: absolute;
  right: 0px;
  top: 15px;
}

.dashboard .filter .icon {
  color: #aab7cf;
  padding-right: 20px;
  padding-bottom: 5px;
  transition: 0.3s;
  font-size: 16px;
}

.dashboard .filter .icon:hover,
.dashboard .filter .icon:focus {
  color: var(--main-color-zion-red) transparent;
}

.dashboard .filter .dropdown-header {
  padding: 8px 15px;
}

.dashboard .filter .dropdown-header h6 {
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  color: #aab7cf;
  margin-bottom: 0;
  padding: 0;
}

.dashboard .filter .dropdown-item {
  padding: 8px 15px;
}

/* Info Cards */
.dashboard .info-card {
  padding-bottom: 10px;
}

.dashboard .info-card.match-report-card {
  min-height: 125px;
  height: 125px;
  max-height: 125px;
}

.info-card h6,
.dashboard .info-card h6 {
  font-size: 28px;
  color: #fdfdfdd2;
  font-weight: 700;
  margin: 0;
  padding: 0;
}

.dashboard .info-card h6.card-title-matchreport-result{
  font-size: 40px;
  font-weight: 700;
}

.dashboard .info-card h6.card-title-matchreport-player-nombre{
  font-size: 22px;
  font-weight: 500;
}

.dashboard .info-card h6.card-title-matchreport-player-apellido{
  font-size: 28px;
  font-weight: 700;
}

.dashboard .info-card h6.metrica-total{
  font-size: 18px;
  font-weight: 600;
}

.dashboard .info-card span.card-subtitle-matchreport-result{
  color: var(--main-color-zion-orange);
}

.dashboard .info-card h5.matchreport {
  font-size: 20px;
  font-weight: 500;
  color: #fdfdfdd2;
  padding-bottom: 0;
  margin-bottom: 0;
}

.dashboard .info-card h5.statsreport {
  font-size: 22px;
  font-weight: 500;
  color: white;
  font-weight: 700;
  padding-top: 5px;
  padding-bottom: 0;
  margin-bottom: 0;
}

.dashboard .info-card .card-body .row span.matchreport, 
.dashboard .info-card .card-body .col span.matchreport{
  color: var(--main-color-zion-orange);
  padding-top: 0;
}

.dashboard .info-card .card-body .row span.statsreport, 
.dashboard .info-card .card-body .col span.statsreport {
  color: var(--main-color-zion-orange);
  border-top: 1px solid rgb(87, 87, 87);
  padding: 0 0 0 0;
  font-size: 12px;
  font-weight: 400;
}

.dashboard .card-icon,
.card-icon {
  font-size: 32px;
  line-height: 0;
  width: 64px;
  height: 64px;
  flex-shrink: 0;
  flex-grow: 0;
}

.dashboard .sales-card .card-icon,
.card-icon {
  color: #ffffff;
  background: #0a080800;
  background-image: linear-gradient(to right, #c44206, #d37e1c);
  border: solid 1px;
  border-color: #5c5c5c;
}

.dashboard .revenue-card .card-icon {
  color: #2eca6a;
  background: #e0f8e9;
}

.dashboard .customers-card .card-icon {
  color: #ff771d;
  background: #ffecdf;
}

/* Activity */
.dashboard .activity {
  font-size: 14px;
}

.dashboard .activity-item {
  padding: 0;
}

.dashboard .activity .activity-item .activity-label {
  color: #838383;
  position: relative;
  flex-shrink: 0;
  flex-grow: 0;
  min-width: 120px;
  font-weight: 300;
}

.dashboard .activity .activity-item .activity-label::before {
  content: "";
  position: absolute;
  right: -11px;
  width: 4px;
  top: 0;
  bottom: 0;
  background-color: #eceefe;
}

.dashboard .activity .activity-item .activity-badge {
  margin-top: 3px;
  z-index: 1;
  font-size: 11px;
  line-height: 0;
  border-radius: 50%;
  flex-shrink: 0;
  border: 4px solid #ffffff00;
  flex-grow: 0;
}

.dashboard .activity .activity-item .activity-content {
  padding-left: 10px;
  padding-bottom: 20px;
  font-weight: 300;
}

.dashboard .activity .activity-item:first-child .activity-label::before {
  top: 5px;
}

.dashboard .activity .activity-item:last-child .activity-content {
  padding-bottom: 0;
}

/* Custom */
.card .card-logo {
  display: flex;
  align-items: center;
}

form label {
  color: #ffffffa6;
  font-size: inherit;
  line-height: 1.5;
  font-family: var(--main-base-font), "Open Sans", sans-serif;
}

.form-control, .form-select {
  border: none;
  border-bottom: 1px solid #ced4da;
  border-radius: 0%;
}

.form-control:focus, .form-select:focus {
  border: none;
  border-bottom: 3px solid #ced4da;
  border-radius: 0%;
  border-color: var(--main-color-zion-red);
  box-shadow: none;
}

textarea.form-control,
textarea.form-control:focus {
  height: 400px;
  background-color: #d949140f;
  border-image: linear-gradient(to right, #c44206, #d37e1c) 1;
  border-radius: 10px;
  color: #000000;
}

textarea.form-control:disabled {
  background-color: #e9ecef;
  opacity: 1;
  color: #717171;
  font-size: small;
}

div.quill-editor-default.ql-container.ql-snow,
div.quill-editor-default.ql-container.ql-snow:focus {
  height: 360px;
  background-color: #000000a3;
  /*border-image: linear-gradient(to right, #c44206, #d37e1c) 1;*/
  /*border-radius: 25px;*/
  border: none;
  color: white;
}

div.ql-toolbar.ql-snow,
div.ql-toolbar-ql-snow:focus {
  background-color: #000000a3;
  /*border-image: linear-gradient(to right, #c44206, #d37e1c) 1;*/
  /*border-radius: 25px;*/
  border: none;
  color: white;
}

div.ql-editor {
  font-size: larger;
}

/* News & Updates */
.dashboard .news .post-item.post-item {
  margin-top: 15px;
}

.dashboard .news img {
  width: 80px;
  float: left;
  border-radius: 5px;
}

.dashboard .news h4 {
  font-size: 15px;
  margin-left: 95px;
  font-weight: bold;
  margin-bottom: 5px;
}

.dashboard .news-no-photo h4 {
  font-size: 15px;
  /* margin-left: 95px; */
  font-weight: bold;
  margin-bottom: 5px;
}

.dashboard .news h4 a {
  color: #ffffffa6;
  transition: 0.3s;
}

.dashboard .news-no-photo h4 a,
.news-no-photo h4 a {
  color: #ffffffa6;
  transition: 0.3s;
}

.dashboard .news h4 a:hover {
  color: #da8f2d;
}

.dashboard .news-no-photo h4 a:hover {
  color: #da8f2d;
}

.dashboard .news p {
  font-size: 14px;
  color: #777777;
  margin-left: 95px;
}

.dashboard .news-no-photo p {
  font-size: 14px;
  color: #777777;
  margin-bottom: 0px;
  /* margin-left: 95px; */
}

.dashboard .news .post-item p {
  font-size: 14px;
  color: #ffffffa6;
  margin-left: 95px;
}

.dashboard .news-no-photo .sub {
  font-size: 10px;
  color: #777777;
  margin-bottom: 0px;
  /* margin-left: 95px; */
}

/* Recent Sales */
.dashboard .recent-sales {
  font-size: 14px;
}

label.form-label.white-label {
  color: white;
}

.gradient-border-bottom {
  border-bottom: 2px solid;
  border-image: linear-gradient(to right, #c44206, #d37e1c) 1;
}

tbody, td, tfoot, th, thead, tr {
  color: white;
}

thead tr {
  background-color: #000000;
}

tbody, tr, th, td {
  border: none;
}

tbody tr td {
  padding: 3px 5px;
}

table.table tbody tr:hover th:first-child,
table.table tbody tr:hover td:first-child {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  border-color: #6b1e00 !important;
  background-color: #6b1e00 !important;
}

table.table tbody tr:hover th:last-child,
table.table tbody tr:hover td:last-child {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  border-color: #6b1e00 !important;
  background-color: #6b1e00 !important;
}

table.table tbody tr:hover th,
table.table tbody tr:hover td {
  background-color: #6b1e00 !important;
  border-color: #6b1e00 !important;
  color: #fff;
  /*transition: background-color 0.5s ease;*/
}

.table-dark {
  background-color: transparent !important;
  color: transparent !important;
  --bs-table-bg: transparent !important;
}

.dataTable-table tbody tr td {
  padding: 3px 5px;
}

.dashboard .recent-sales .table thead,
.table thead {
  background: #f6f6fe;
}

.dashboard .recent-sales .table thead th,
.table thead th {
  border: 0;
}

.dashboard .recent-sales .table.top-5-table thead th,
.dashboard .recent-sales .table.top-5-table tbody td {
  padding: 2px 8px;
}

.dashboard .recent-sales .dataTable-top,
.dataTable-top {
  padding: 0 0 10px 0;
}

.dashboard .recent-sales .dataTable-bottom,
.dataTable-bottom {
  padding: 10px 0 0 0;
}

.dashboard .recent-sales .dataTable-bottom .dataTable-pagination .dataTable-pagination-list li a,
.dataTable-bottom .dataTable-pagination .dataTable-pagination-list li a {
  color: white;
  background-color: transparent;
  border-color: transparent;
  border-radius: 50%;
}

.dashboard .recent-sales .dataTable-bottom .dataTable-pagination .dataTable-pagination-list li a:hover,
.dataTable-bottom .dataTable-pagination .dataTable-pagination-list li a:hover {
  color: white;
  background-color: #f16711b6;
  border-color: transparent;
  border-radius: 50%;
}

.dashboard .recent-sales .dataTable-bottom .dataTable-pagination .dataTable-pagination-list li.active a,
.dataTable-bottom .dataTable-pagination .dataTable-pagination-list li.active a {
  color: white;
  background-color: var(--main-color-zion-red);
  border-color: transparent;
  border-radius: 50%;
}

/* Top Selling */
.dashboard .top-selling {
  font-size: 14px;
}

.dashboard .top-selling .table thead {
  background: #f6f6fe;
}

.dashboard .top-selling .table thead th {
  border: 0;
}

.dashboard .top-selling .table tbody td {
  vertical-align: middle;
}

.dashboard .top-selling img {
  border-radius: 5px;
  max-width: 60px;
}

/*--------------------------------------------------------------
# Icons list page
--------------------------------------------------------------*/
.iconslist {
  display: grid;
  max-width: 100%;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1.25rem;
  padding-top: 15px;
}

.iconslist .icon {
  background-color: #fff;
  border-radius: 0.25rem;
  text-align: center;
  color: #012970;
  padding: 15px 0;
}

.iconslist i {
  margin: 0.25rem;
  font-size: 2.5rem;
}

.iconslist .label {
  font-family: var(--bs-font-monospace);
  display: inline-block;
  width: 100%;
  overflow: hidden;
  padding: 0.25rem;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #666;
}

/*--------------------------------------------------------------
# Profie Page
--------------------------------------------------------------*/
.loading {
  pointer-events: none;
  opacity: 0.6;
  position: relative;
}

.spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  border-top-color: #fff;
  animation: spin 1s ease-in-out infinite;
  visibility: visible;
  position: relative;
  top: 50%;
  left: 50%;
}

@keyframes spin {
  to {
      transform: rotate(360deg);
  }
}

.spinner-border {
  display: none;
}

.loading .spinner {
  visibility: visible;
}

.btn.loading {
  background-color: #2e2e2e;
}

button.btn.btn-top-menu.loading:hover {
  background-color: #2e2e2e;
}

.loading .spinner-border {
  display: inline-block;
}

/*--------------------------------------------------------------
# Profie Page
--------------------------------------------------------------*/
.profile .profile-card img {
  max-width: 120px;
  border: 2px solid var(--main-color-zion-red);
}

.profile .profile-card h2 {
  font-size: 24px;
  font-weight: 700;
  color: var(--main-color-zion-orange);
  margin: 10px 0 0 0;
}

.profile .profile-card h3 {
  font-size: 18px;
  color: #ffffffa6;
}

.profile .profile-card .social-links a {
  font-size: 20px;
  display: inline-block;
  color: rgba(165, 165, 165, 0.548);
  line-height: 0;
  margin-right: 10px;
  transition: 0.3s;
}

.profile .profile-card .social-links a.twitter.populated,
.profile .profile-card .social-links a.facebook.populated,
.profile .profile-card .social-links a.instagram.populated,
.profile .profile-card .social-links a.linkedin.populated {
  color: white;
}

.profile .profile-card .social-links a:hover {
  color: var(--main-color-zion-orange);
}

.profile .profile-card .social-links a.twitter.populated:hover,
.profile .profile-card .social-links a.facebook.populated:hover,
.profile .profile-card .social-links a.instagram.populated:hover,
.profile .profile-card .social-links a.linkedin.populated:hover {
  color: var(--main-color-zion-orange);
}

.profile .profile-overview .row {
  margin-bottom: 20px;
  font-size: 15px;
}

.profile .profile-overview .row .form-label.label,
.profile .profile-edit .row .form-label.label {
  margin-top: 5px;
  margin-bottom: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  font-size: 13px;
  color: #4e4e4e;
}

.profile .profile-overview .row .bio {
  margin-bottom: 0px;
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  font-size: 20px;
  color: white;
}

.profile .profile-overview .card-title {
  color: var(--main-color-zion-orange);
}

.profile .profile-overview .label {
  font-weight: 600;
  color: #838383;
}

.profile .profile-edit label {
  font-weight: 600;
  color: #838383;
}

.profile .profile-edit img {
  max-width: 120px;
}

/*--------------------------------------------------------------
# F.A.Q Page
--------------------------------------------------------------*/
.faq .basic h6 {
  font-size: 18px;
  font-weight: 600;
  color: #4154f1;
}

.faq .basic p {
  color: #6980aa;
}

/*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.contact .info-box {
  padding: 28px 30px;
}

.contact .info-box i {
  font-size: 38px;
  line-height: 0;
  color: #4154f1;
}

.contact .info-box h3 {
  font-size: 20px;
  color: #012970;
  font-weight: 700;
  margin: 20px 0 10px 0;
}

.contact .info-box p {
  padding: 0;
  line-height: 24px;
  font-size: 14px;
  margin-bottom: 0;
}

.contact .php-email-form .error-message {
  display: none;
  color: #fff;
  background: #ed3c0d;
  text-align: left;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: 600;
}

.contact .php-email-form .sent-message {
  display: none;
  color: #fff;
  background: #18d26e;
  text-align: center;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: 600;
}

.contact .php-email-form .loading {
  display: none;
  background: #fff;
  text-align: center;
  padding: 15px;
  margin-bottom: 24px;
}

.contact .php-email-form .loading:before {
  content: "";
  display: inline-block;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  margin: 0 10px -6px 0;
  border: 3px solid #18d26e;
  border-top-color: #eee;
  -webkit-animation: animate-loading 1s linear infinite;
  animation: animate-loading 1s linear infinite;
}

.contact .php-email-form input,
.contact .php-email-form textarea {
  border-radius: 0;
  box-shadow: none;
  font-size: 14px;
  border-radius: 0;
}

.contact .php-email-form input:focus,
.contact .php-email-form textarea:focus {
  border-color: #4154f1;
}

.contact .php-email-form input {
  padding: 10px 15px;
}

.contact .php-email-form textarea {
  padding: 12px 15px;
}

.contact .php-email-form button[type=submit] {
  background: #4154f1;
  border: 0;
  padding: 10px 30px;
  color: #fff;
  transition: 0.4s;
  border-radius: 4px;
}

.contact .php-email-form button[type=submit]:hover {
  background: #5969f3;
}

@-webkit-keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*--------------------------------------------------------------
# Error 404
--------------------------------------------------------------*/
.error-404 {
  padding: 30px;
}

.error-404 h1 {
  font-size: 180px;
  font-weight: 700;
  color: #001368;
  margin-bottom: 0;
  line-height: 150px;
}

.error-404 h2 {
  font-size: 24px;
  font-weight: 700;
  color: #f8f8f8d2;
  margin-bottom: 30px;
}

.error-404 .btn {
  background: var(--main-color-zion-red);
  color: #fff;
  padding: 8px 30px;
}

.error-404 .btn:hover {
  background: #f5a614;
}

@media (min-width: 992px) {
  .error-404 img {
    max-width: 50%;
  }
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer {
  margin-top: auto;
  position: relative;
}

.footer {
  padding: 20px 0;
  font-size: 14px;
  transition: all 0.3s;
  background-color: rgba(255, 255, 255, 0);
  /*border-top: 1px solid #cddfff;*/
}

.footer .copyright {
  text-align: center;
  color: #e2e2e2;
}

.footer .credits {
  padding-top: 5px;
  text-align: center;
  font-size: 13px;
  color: #e2e2e2;
}

.spacerH {
  width: 5px;
  margin: 0 0px;
}

/*--------------------------------------------------------------
# Reporting
--------------------------------------------------------------*/

.js-plotly-plot .plotly .modebar {
  position: absolute;
  top: 2px;
  right: 2px;
  display: none;
}

.js-plotly-plot .plotly .infolayer .legend .legendtext {
  fill: white !important;
}

/* Match Banner Styles */
.match-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2rem;
  position: relative;
  min-height: 200px;
}

.match-info-left,
.match-info-right {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  flex: 1;
}

.match-info-left {
  align-items: flex-start;
}

.match-info-right {
  align-items: flex-end;
}

.match-center {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.match-banner-center-right {
  flex: 1.5;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
  padding: 0 1rem;
}

.match-banner-score {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.score-value {
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 8px rgba(0,0,0,0.18);
  transition: color 0.2s, text-shadow 0.2s;
}

.score-value-opponent {
  font-size: 2.5rem;
  font-weight: 700;
  color: white;
  text-shadow: 0 2px 8px rgba(0,0,0,0.18);
  transition: color 0.2s, text-shadow 0.2s;
}

.score-separator {
  font-size: 2rem;
  font-weight: 700;
  color: #bfc9d1;
  margin: 0 0.5rem;
}

.match-banner-opponent {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-left: 2rem;
  gap: 0.5rem;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.opponent-label {
  font-size: 1.5rem;
  font-weight: 200;
  color: #bfc9d1;
  line-height: 1;
  display: flex;
  align-items: center;
}

.opponent-name {
  font-size: 1.5rem;
  font-weight: 600;
  color: #fff;
  text-shadow: 0 2px 8px rgba(0,0,0,0.18);
  transition: color 0.2s, text-shadow 0.2s;
  line-height: 1;
}

.opponent-name:hover {
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 12px rgba(255,142,49,0.18);
}

.team-logo {
  width: 150px;
  height: 150px;
  position: relative;
  z-index: 2;
}

.team-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 4px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s ease;
}

.team-logo img:hover {
  transform: scale(1.05);
  border-color: var(--main-color-zion-orange);
}

.match-score {
  text-align: center;
  margin-top: 1rem;
}

.info-item {
  text-align: center;
  padding: 0.5rem 1rem;
  background: rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  backdrop-filter: blur(4px);
  transition: all 0.3s ease;
}

.info-item:hover {
  background: rgba(0, 0, 0, 0.3);
  transform: translateY(-2px);
}

.info-item .card-title.matchreport {
  margin-bottom: 0.25rem;
  font-size: 1.25rem;
}

/*.info-item span.matchreport {
  /* existing styles if any */
/*}*/

.matchreport-card-header {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  overflow: hidden;
}

.matchreport-card-header::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(circle at center, rgba(255, 142, 49, 0.1) 0%, transparent 70%);
  pointer-events: none;
}

.matchreport-card-header:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* Modern Match Banner Card Styles */
.match-banner-card {
  background: #16202a;
  border: solid 2px;
  border-color: #2c2b30;
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  min-height: 110px; /* Reduced height */
  position: relative;
  margin-bottom: 2rem;
  padding: 0;
  overflow: hidden; /* Changed from visible to hidden to contain watermark */
  z-index: var(--card-base-z, 1);
  transition: box-shadow 0.3s, transform 0.3s, z-index 0s;
}
.match-banner-card:hover {
  box-shadow: 0 8px 32px rgba(255,142,49,0.18), 0 2px 16px rgba(0,0,0,0.22);
  transform: translateY(-2px) scale(1.01);
  border-color: var(--main-color-zion-orange);
  z-index: var(--hover-card-z, 9000);
}

.match-banner-watermark {
  position: absolute;
  left: 0; top: 0; right: 0; bottom: 0;
  z-index: 1;
  opacity: 0.10;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  overflow: hidden;
  border-radius: 16px; /* Match the card's border radius */
}
.match-banner-watermark img {
  width: 100%; /* Changed from 70% to 100% */
  max-width: none; /* Removed max-width constraint */
  min-width: auto; /* Removed min-width constraint */
  height: 100%; /* Added to ensure image fills container */
  object-fit: cover; /* Added to maintain aspect ratio while filling space */
  filter: blur(0.5px) grayscale(0.2);
  transition: filter 0.3s, opacity 0.3s;
  border-radius: 16px; /* Match the card's border radius */
}
.match-banner-card:hover .match-banner-watermark img {
  filter: blur(0.5px) grayscale(0.1) brightness(1.1);
  opacity: 0.13;
}

/* Favorite Button Styling */
.match-banner-card .favorite-btn {
  position: absolute !important;
  top: -30px !important; /* Slightly outside top boundary */
  right: -30px !important; /* Slightly outside right boundary */
  z-index: 15 !important; /* Above watermark but below any modal overlays */
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(255, 255, 255, 0.2) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.1rem !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  backdrop-filter: blur(8px) !important;
  background: rgba(22, 32, 42, 0.85) !important; /* Match card background with transparency */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

/* Favorite button states */
.match-banner-card .favorite-btn.btn-outline-warning {
  color: #ffc107 !important;
  border-color: rgba(255, 193, 7, 0.4) !important;
}

.match-banner-card .favorite-btn.btn-outline-warning:hover {
  background: rgba(255, 193, 7, 0.1) !important;
  border-color: #ffc107 !important;
  transform: scale(1.1) !important;
  box-shadow: 0 6px 20px rgba(255, 193, 7, 0.3) !important;
}

.match-banner-card .favorite-btn.btn-warning {
  background: linear-gradient(135deg, #ffc107, #ff8c00) !important;
  border-color: #ffc107 !important;
  color: #000 !important;
  box-shadow: 0 4px 16px rgba(255, 193, 7, 0.4) !important;
}

.match-banner-card .favorite-btn.btn-warning:hover {
  background: linear-gradient(135deg, #ff8c00, #ff6b00) !important;
  transform: scale(1.15) !important;
  box-shadow: 0 8px 24px rgba(255, 193, 7, 0.5) !important;
}

/* Favorite button icon animations */
.match-banner-card .favorite-btn i {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.match-banner-card .favorite-btn:hover i {
  transform: scale(1.2) !important;
}

.match-banner-card .favorite-btn.btn-warning i {
  color: #000 !important;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) !important;
}

.match-banner-card .favorite-btn.btn-outline-warning i {
  color: #ffc107 !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5) !important;
}

/* Card hover effects on favorite button */
.match-banner-card:hover .favorite-btn {
  transform: translateY(-2px) !important;
}

.match-banner-card:hover .favorite-btn.btn-outline-warning {
  border-color: rgba(255, 193, 7, 0.6) !important;
  box-shadow: 0 6px 16px rgba(255, 193, 7, 0.2) !important;
}

.match-banner-card:hover .favorite-btn.btn-warning {
  box-shadow: 0 6px 20px rgba(255, 193, 7, 0.6) !important;
}

/* Disabled state */

/* Playlist Banner Styles */
.playlist-banner-card {
  background: #16202a;
  border: solid 2px;
  border-color: #2c2b30;
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  min-height: 140px;
  padding: 0;
  overflow: hidden;
  z-index: 1;
  transition: box-shadow 0.3s, transform 0.3s, z-index 0s;
}

.playlist-banner-card:hover {
  box-shadow: 0 8px 32px rgba(255,142,49,0.18), 0 2px 16px rgba(0,0,0,0.22);
  transform: translateY(-2px) scale(1.005);
  border-color: var(--main-color-zion-orange);
  z-index: 9000;
}

.playlist-banner-watermark {
  position: absolute;
  left: 0; top: 0; right: 0; bottom: 0;
  z-index: 1;
  opacity: 0.08;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  overflow: hidden;
  border-radius: 16px;
}

.playlist-banner-watermark i {
  font-size: 8rem;
  color: rgba(255, 255, 255, 0.1);
  filter: blur(0.5px);
}

.playlist-banner-card:hover .playlist-banner-watermark i {
  opacity: 0.12;
  filter: blur(0.5px) brightness(1.1);
}

.playlist-banner-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 1.5rem 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.playlist-banner-left {
  flex: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.playlist-banner-name {
  color: var(--main-color-zion-orange);
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-shadow: 0 2px 8px rgba(0,0,0,0.18);
  transition: color 0.2s, text-shadow 0.2s;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.playlist-banner-subtitle {
  color: #bfc9d1;
  font-size: 1rem;
  font-weight: 500;
  margin-top: 0.25rem;
  letter-spacing: 0.01em;
  transition: color 0.2s;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.playlist-banner-name:hover,
.playlist-banner-subtitle:hover {
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 12px rgba(255,142,49,0.18);
}

.playlist-banner-center {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.playlist-banner-main-icon {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  position: relative;
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1), rgba(211, 126, 28, 0.1));
  border: 3px solid rgba(255, 142, 49, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow:
    0 8px 32px rgba(0,0,0,0.12),
    inset 0 0 15px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
}

.playlist-banner-main-icon i {
  font-size: 3rem;
  color: var(--main-color-zion-orange);
  transition: transform 0.3s ease;
}

.playlist-banner-main-icon:hover {
  transform: scale(1.1) rotate(5deg);
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.2), rgba(211, 126, 28, 0.2));
  border-color: rgba(255, 142, 49, 0.4);
  box-shadow:
    0 12px 40px rgba(255,142,49,0.15),
    inset 0 0 20px rgba(0,0,0,0.3);
}

.playlist-banner-main-icon:hover i {
  transform: scale(1.1);
}

.playlist-banner-center-right {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 1rem;
}

.playlist-banner-stats {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.playlist-banner-stats .stat-value {
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  line-height: 1;
}

.playlist-banner-stats .stat-label {
  font-size: 0.85rem;
  color: #bfc9d1;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-top: 0.25rem;
  transition: color 0.2s;
}

.playlist-banner-stats:hover .stat-label {
  color: var(--main-color-zion-orange);
}

.playlist-banner-right {
  flex: 1.5;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.playlist-banner-date {
  font-size: 0.8rem;
  color: #bfc9d1;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-bottom: 0.75rem;
  text-align: right;
  transition: color 0.2s;
}

.playlist-banner-date:hover {
  color: var(--main-color-zion-orange);
}

.playlist-banner-date .stat-value {
  font-size: 0.9rem;
  color: #fff;
  font-weight: 700;
  display: block;
  line-height: 1.2;
}

.playlist-banner-date .stat-label {
  font-size: 0.7rem;
  color: #bfc9d1;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.playlist-banner-actions {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.playlist-banner-actions .btn {
  font-size: 0.75rem;
  padding: 0.375rem 0.75rem;
  border-radius: 6px;
  font-weight: 600;
  transition: all 0.2s ease;
}

.playlist-banner-actions .btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* Responsive adjustments for playlist banners */
@media (max-width: 900px) {
  .playlist-banner-content {
    flex-direction: column;
    align-items: stretch;
    padding: 1rem;
    gap: 1rem;
  }

  .playlist-banner-left,
  .playlist-banner-right {
    align-items: center !important;
    text-align: center !important;
    justify-content: center;
  }

  .playlist-banner-main-icon {
    width: 100px;
    height: 100px;
  }

  .playlist-banner-main-icon i {
    font-size: 2.5rem;
  }

  .playlist-banner-name {
    font-size: 1.5rem;
  }

  .playlist-banner-subtitle {
    font-size: 0.9rem;
  }

  .playlist-banner-stats .stat-value {
    font-size: 1.5rem;
  }
}

@media (max-width: 576px) {
  .playlist-banner-card {
    min-height: 120px;
  }

  .playlist-banner-content {
    padding: 0.75rem;
  }

  .playlist-banner-main-icon {
    width: 80px;
    height: 80px;
  }

  .playlist-banner-main-icon i {
    font-size: 2rem;
  }

  .playlist-banner-name {
    font-size: 1.25rem;
  }

  .playlist-banner-stats .stat-value {
    font-size: 1.25rem;
  }

  .playlist-banner-actions {
    flex-direction: row;
    justify-content: center;
    gap: 0.25rem;
  }

  .playlist-banner-actions .btn {
    font-size: 0.7rem;
    padding: 0.25rem 0.5rem;
  }
}

/* Disabled state */
.match-banner-card .favorite-btn:disabled {
  opacity: 0.6 !important;
  cursor: not-allowed !important;
  transform: none !important;
}

.match-banner-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 1.2rem 2.5rem 1.2rem 2.5rem; /* Reduced vertical padding */
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.match-banner-left {
  flex: 1.5;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.match-banner-team-name {
  color: var(--main-color-zion-orange);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-shadow: 0 2px 8px rgba(0,0,0,0.18);
  transition: color 0.2s, text-shadow 0.2s, background 0.2s;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.match-banner-subtitle {
  color: #bfc9d1;
  font-size: 1.25rem;
  font-weight: 500;
  margin-left: 1rem;
  letter-spacing: 0.01em;
  transition: color 0.2s, text-shadow 0.2s;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.match-banner-subtitle:hover {
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 12px rgba(255,142,49,0.18);
}

.match-banner-team-name:hover {
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 12px rgba(255,142,49,0.18);
}

.match-banner-center {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.match-banner-main-logo {
  width: 170px;
  height: 170px;
  border-radius: 50%;
  position: relative;
  background: #fff;
  object-fit: contain;
  position: absolute;
  top: -55px;
  left: 50%;
  transform: translateX(-50%) scale(1);
  z-index: var(--logo-base-z, 9500);
  transition: transform 0.25s cubic-bezier(.4,2,.6,1), box-shadow 0.25s, z-index 0s;
  padding: 6px; /* Space for the border */
  background: linear-gradient(to right, #c44206, #d37e1c);
  box-shadow: 
    0 8px 30px 0 rgba(255,142,49,0.25), /*0 16px 48px 0*/
    0 2px 16px rgba(0,0,0,0.22),  /*0 2px 16px*/
    inset 0 0 15px rgba(0,0,0,0.3), /*inset 0 0 30px*/
    0 0 0 0px rgba(255,255,255,0.15); /*0 0 0 1px*/
}

.match-banner-main-logo::before {
  content: '';
  position: absolute;
  top: 6px;
  left: 6px;
  right: 6px;
  bottom: 6px;
  background: #fff;
  border-radius: 50%;
  /*z-index: 9000;*/
}

.match-banner-main-logo:hover {
  transform: translateX(-50%) scale(1.12) rotate(-3deg);
  background: linear-gradient(to right, #c44206, #d37e1c);
  box-shadow: 
    0 16px 48px 0 rgba(255,142,49,0.25),
    0 2px 16px rgba(0,0,0,0.22),
    inset 0 0 30px rgba(0,0,0,0.3),
    0 0 0 1px rgba(255,255,255,0.15);;
  z-index: var(--hover-logo-z, 10000);
}

.match-banner-right {
  flex: 1.8;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}
.match-banner-season {
  font-size: 0.75rem;
  color: #bfc9d1;
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 0.5rem;
  margin-top: -0.5rem;
  transition: color 0.2s, text-shadow 0.2s, background 0.2s;
}
.match-banner-season:hover {
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 12px rgba(255,142,49,0.18);
}
.match-banner-stats {
  display: flex;
  flex-direction: row;
  gap: 2.5rem;
}
.match-banner-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 70px;
  transition: transform 0.2s, box-shadow 0.2s;
}
.stat-value {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.1rem;
  transition: color 0.2s, text-shadow 0.2s, background 0.2s;
}
.stat-value:hover {
  color: #fff;
  background: var(--main-color-zion-background-bottom);
  border-radius: 8px;
  padding: 0 0.5rem;
  box-shadow: 0 2px 8px rgba(255,142,49,0.12);
  transform: translateY(-3px) scale(1.07);
}
.stat-label {
  font-size: 0.8rem;
  color: #bfc9d1;
  font-weight: 400;
  text-align: center;
  transition: color 0.2s, text-shadow 0.2s, background 0.2s;
}
.stat-label:hover {
  color: var(--main-color-zion-orange);
}

@media (max-width: 900px) {
  .match-banner-content {
    flex-direction: column;
    align-items: stretch;
    padding: 1.2rem 0.7rem 1.2rem 0.7rem;
    gap: 1.2rem;
  }
  .match-banner-left, .match-banner-right {
    align-items: center !important;
    text-align: center !important;
    justify-content: center;
  }
  .match-banner-main-logo {
    position: static;
    left: auto;
    top: auto;
    transform: none;
    margin: 0 auto -40px auto;
    display: block;
  }
  .match-banner-stats {
    gap: 1.2rem;
  }
}

/* Utility: allow visible overflow for banner row/col */
.row.match-banner-row {
  overflow: visible !important;
  position: relative;
  z-index: var(--card-base-z, 2);
  transition: z-index 0s;
}

.row.match-banner-row:hover {
  z-index: var(--hover-card-z, 9000);
}

.col-12.match-banner-col {
  overflow: visible !important;
  position: relative;
}

.match-banner-card {
  background: linear-gradient(to right, #000000, #6c3a00);
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  min-height: 110px;
  position: relative;
  margin-bottom: 2rem;
  padding: 0;
  overflow: visible !important; /* Ensure logo can overflow */
  z-index: 3;
  transition: box-shadow 0.3s, transform 0.3s;
}

/*--------------------------------------------------------------
# Profile Banner Styles (adapted from Match Banner)
--------------------------------------------------------------*/

/* Profile Banner Card Styles */
.profile-banner-card {
  background: linear-gradient(to right, #000000, #6c3a00);
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  min-height: 110px;
  position: relative;
  margin-bottom: 2rem;
  padding: 0;
  overflow: visible !important; /* Ensure image can overflow */
  z-index: 3;
  transition: box-shadow 0.3s, transform 0.3s;
}

.profile-banner-card:hover {
  box-shadow: 0 8px 32px rgba(255,142,49,0.18), 0 2px 16px rgba(0,0,0,0.22);
  transform: translateY(-2px) scale(1.01);
  border-color: var(--main-color-zion-orange);
}

.profile-banner-watermark {
  position: absolute;
  left: 0; top: 0; right: 0; bottom: 0;
  z-index: 1;
  opacity: 0.10;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  overflow: hidden;
  border-radius: 16px;
}

.profile-banner-watermark img {
  width: 100%;
  max-width: none;
  min-width: auto;
  height: 100%;
  object-fit: cover;
  filter: blur(0.5px) grayscale(0.2);
  transition: filter 0.3s, opacity 0.3s;
  border-radius: 16px;
}

.profile-banner-card:hover .profile-banner-watermark img {
  filter: blur(0.5px) grayscale(0.1) brightness(1.1);
  opacity: 0.13;
}

.profile-banner-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 1.2rem 2.5rem 1.2rem 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.profile-banner-left {
  flex: 1.5;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.profile-banner-user-name {
  color: var(--main-color-zion-orange);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-shadow: 0 2px 8px rgba(0,0,0,0.18);
  transition: color 0.2s, text-shadow 0.2s, background 0.2s;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.profile-banner-subtitle {
  color: #bfc9d1;
  font-size: 1.25rem;
  font-weight: 500;
  margin-left: 1rem;
  letter-spacing: 0.01em;
  transition: color 0.2s, text-shadow 0.2s;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.profile-banner-subtitle:hover {
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 12px rgba(255,142,49,0.18);
}

.profile-banner-user-name:hover {
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 12px rgba(255,142,49,0.18);
}

.profile-banner-social-links {
  display: flex;
  gap: 0.5rem;
  margin-top: 0.5rem;
}

.profile-banner-social-links a {
  font-size: 1.2rem;
  display: inline-block;
  color: rgba(165, 165, 165, 0.548);
  line-height: 0;
  transition: 0.3s;
  padding: 0.5rem;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(4px);
}

.profile-banner-social-links a.twitter.populated,
.profile-banner-social-links a.facebook.populated,
.profile-banner-social-links a.instagram.populated,
.profile-banner-social-links a.linkedin.populated {
  color: white;
  background: rgba(255, 142, 49, 0.2);
}

.profile-banner-social-links a:hover {
  color: var(--main-color-zion-orange);
  background: rgba(255, 142, 49, 0.3);
  transform: translateY(-2px);
}

.profile-banner-center {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.profile-banner-main-image {
  width: 170px;
  height: 170px;
  border-radius: 50%;
  position: relative;
  background: #fff;
  object-fit: cover;
  position: absolute;
  top: -55px;
  left: 50%;
  transform: translateX(-50%) scale(1);
  z-index: 3;
  transition: transform 0.25s cubic-bezier(.4,2,.6,1), box-shadow 0.25s;
  padding: 6px;
  background: linear-gradient(to right, #c44206, #d37e1c);
  box-shadow: 
    0 8px 30px 0 rgba(255,142,49,0.25),
    0 2px 16px rgba(0,0,0,0.22),
    inset 0 0 15px rgba(0,0,0,0.3),
    0 0 0 0px rgba(255,255,255,0.15);
}

.profile-banner-main-image::before {
  content: '';
  position: absolute;
  top: 6px;
  left: 6px;
  right: 6px;
  bottom: 6px;
  background: #fff;
  border-radius: 50%;
  z-index: -1;
}

.profile-banner-main-image:hover {
  transform: translateX(-50%) scale(1.12) rotate(-3deg);
  background: linear-gradient(to right, #c44206, #d37e1c);
  box-shadow: 
    0 16px 48px 0 rgba(255,142,49,0.25),
    0 2px 16px rgba(0,0,0,0.22),
    inset 0 0 30px rgba(0,0,0,0.3),
    0 0 0 1px rgba(255,255,255,0.15);
}

.profile-banner-middle-right {
  flex: 0.8;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.profile-banner-right {
  flex: 1.8;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.profile-banner-plan {
  font-size: 0.75rem;
  color: #bfc9d1;
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 0.5rem;
  margin-top: -0.5rem;
  transition: color 0.2s, text-shadow 0.2s, background 0.2s;
}

.profile-banner-plan:hover {
  color: var(--main-color-zion-orange);
  text-shadow: 0 2px 12px rgba(255,142,49,0.18);
}

.profile-banner-stats {
  display: flex;
  flex-direction: row;
  gap: 2.5rem;
}

.profile-banner-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 70px;
  transition: transform 0.2s, box-shadow 0.2s;
}

.profile-banner-stat .stat-value {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.1rem;
  transition: color 0.2s, text-shadow 0.2s, background 0.2s;
}

.profile-banner-stat .stat-value:hover {
  color: #fff;
  background: var(--main-color-zion-background-bottom);
  border-radius: 8px;
  padding: 0 0.5rem;
  box-shadow: 0 2px 8px rgba(255,142,49,0.12);
  transform: translateY(-3px) scale(1.07);
}

.profile-banner-stat .stat-label {
  font-size: 0.8rem;
  color: #bfc9d1;
  font-weight: 400;
  text-align: center;
  transition: color 0.2s, text-shadow 0.2s, background 0.2s;
}

.profile-banner-stat .stat-label:hover {
  color: #d37e1c;
}

@media (max-width: 900px) {
  .profile-banner-content {
    flex-direction: column;
    align-items: stretch;
    padding: 1.2rem 0.7rem 1.2rem 0.7rem;
    gap: 1.2rem;
  }
  .profile-banner-left, .profile-banner-right {
    align-items: center !important;
    text-align: center !important;
    justify-content: center;
  }
  .profile-banner-main-image {
    position: static;
    left: auto;
    top: auto;
    transform: none;
    margin: 0 auto -40px auto;
    display: block;
  }
  .profile-banner-stats {
    flex-direction: column;
    gap: 8px;
  }
}

@media (max-width: 900px) {
  .profile-banner-content {
    flex-direction: column;
    text-align: center;
    gap: 20px;
  }

  .profile-banner-left, .profile-banner-right {
    width: 100%;
  }

  .profile-banner-main-image {
    width: 120px;
    height: 120px;
  }

  .profile-banner-stats {
    flex-direction: column;
    gap: 8px;
  }
  
  /* Profile completion section responsive */
  .profile-completion-section {
    margin: 10px 0;
    text-align: center;
  }
  
  .completion-info {
    justify-content: center;
    gap: 10px;
  }
}

/* Utility: allow visible overflow for profile banner row/col */
.row.profile-banner-row, .col-12.profile-banner-col {
  overflow: visible !important;
  position: relative;
  z-index: 2;
}

/*--------------------------------------------------------------
# Profile Statistics Cards
--------------------------------------------------------------*/

.profile-stats-card {
  min-height: 100px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  border: solid .0625rem #2c2c30;
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74);
  border-radius: 10px;
  background-color: #1d1c2196;
  backdrop-filter: blur(5px);
}

.profile-stats-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 25px rgba(255,142,49,0.15), 0 2px 16px rgba(0,0,0,0.22);
  border-color: var(--main-color-zion-orange);
}

.profile-stats-card .card-icon {
  font-size: 32px;
  line-height: 0;
  width: 64px;
  height: 64px;
  flex-shrink: 0;
  flex-grow: 0;
  color: #ffffff;
  background: linear-gradient(to right, #c44206, #d37e1c);
  border: solid 1px;
  border-color: #5c5c5c;
  transition: all 0.3s ease;
}

.profile-stats-card:hover .card-icon {
  background: linear-gradient(to right, #d37e1c, #ff8e31);
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(255,142,49,0.3);
}

.profile-stats-card .profile-stat-value {
  font-size: 28px;
  color: #fdfdfdd2;
  font-weight: 700;
  margin: 0;
  padding: 0;
  transition: color 0.3s ease;
}

.profile-stats-card:hover .profile-stat-value {
  color: var(--main-color-zion-orange);
}

.profile-stats-card .profile-stat-label {
  color: #b1b1b1;
  font-size: 14px;
  font-weight: 500;
  transition: color 0.3s ease;
}

.profile-stats-card:hover .profile-stat-label {
  color: #ffffff;
}

/*--------------------------------------------------------------
# Profile Completion Indicator
--------------------------------------------------------------*/

.profile-completion-card {
  border: solid .0625rem #2c2c30;
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74);
  border-radius: 10px;
  background-color: #1d1c2196;
  backdrop-filter: blur(5px);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.profile-completion-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(255,142,49,0.15), 0 2px 16px rgba(0,0,0,0.22);
  border-color: var(--main-color-zion-orange);
}

.profile-completion-card .card-title {
  color: var(--main-color-zion-orange);
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 0;
}

.profile-completion-card .completion-percentage {
  font-size: 24px;
  font-weight: 700;
  color: var(--main-color-zion-orange);
  background: rgba(255, 142, 49, 0.1);
  padding: 8px 16px;
  border-radius: 20px;
  border: 1px solid rgba(255, 142, 49, 0.3);
}

/* Progress Bar Styling */
.profile-completion-card .progress {
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
}

.profile-completion-card .progress-bar {
  border-radius: 10px;
  transition: width 0.6s ease;
  box-shadow: 0 2px 4px rgba(255, 142, 49, 0.3);
}

/* Missing Fields Section */
.missing-fields-section {
  background: rgba(255, 193, 7, 0.1);
  border: 1px solid rgba(255, 193, 7, 0.3);
  border-radius: 8px;
  padding: 15px;
  margin-top: 15px;
}

.missing-fields-title {
  color: #ffc107;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 10px;
}

.missing-fields-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
}

.missing-field-badge {
  background: rgba(255, 193, 7, 0.2);
  color: #ffc107;
  padding: 4px 12px;
  border-radius: 15px;
  font-size: 12px;
  font-weight: 500;
  border: 1px solid rgba(255, 193, 7, 0.4);
  transition: all 0.3s ease;
}

.missing-field-badge:hover {
  background: rgba(255, 193, 7, 0.3);
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(255, 193, 7, 0.2);
}

.missing-fields-action .btn-outline-primary {
  color: var(--main-color-zion-orange);
  border-color: var(--main-color-zion-orange);
  background: transparent;
  transition: all 0.3s ease;
}

.missing-fields-action .btn-outline-primary:hover {
  color: white;
  background: var(--main-color-zion-orange);
  border-color: var(--main-color-zion-orange);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(255, 142, 49, 0.3);
}

/* Profile Complete Section */
.profile-complete-section {
  background: rgba(40, 167, 69, 0.1);
  border: 1px solid rgba(40, 167, 69, 0.3);
  border-radius: 8px;
  padding: 20px;
  margin-top: 15px;
}

.profile-complete-section .text-success {
  color: #28a745 !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .profile-completion-card .completion-percentage {
    font-size: 20px;
    padding: 6px 12px;
  }
  
  .missing-fields-list {
    gap: 6px;
  }
  
  .missing-field-badge {
    font-size: 11px;
    padding: 3px 10px;
  }
}

/*--------------------------------------------------------------
# Activity Timeline
--------------------------------------------------------------*/

.activity-timeline-card {
  border: solid .0625rem #2c2c30;
  box-shadow: 1px 2px 1rem 0px rgba(0, 0, 0, .74);
  border-radius: 10px;
  background-color: #1d1c2196;
  backdrop-filter: blur(5px);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.activity-timeline-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(255,142,49,0.15), 0 2px 16px rgba(0,0,0,0.22);
  border-color: var(--main-color-zion-orange);
}

.activity-timeline-card .card-title {
  color: var(--main-color-zion-orange);
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 20px;
  border-bottom: 1px solid rgba(255, 142, 49, 0.2);
  padding-bottom: 10px;
}

/* Activity Timeline */
.activity-timeline {
  position: relative;
  padding-left: 30px;
}

.activity-timeline::before {
  content: '';
  position: absolute;
  left: 15px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom, var(--main-color-zion-orange), rgba(255, 142, 49, 0.3));
  border-radius: 1px;
}

.activity-item {
  position: relative;
  margin-bottom: 25px;
  padding-left: 20px;
}

.activity-item:last-child {
  margin-bottom: 0;
}

.activity-marker {
  position: absolute;
  left: -22px;
  top: 5px;
  width: 12px;
  height: 12px;
  background: var(--main-color-zion-orange);
  border-radius: 50%;
  border: 3px solid #1d1c21;
  box-shadow: 0 0 0 2px rgba(255, 142, 49, 0.3);
  z-index: 2;
}

.activity-marker.event-marker {
  background: #28a745;
  box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.3);
}

.activity-content {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
  padding: 15px;
  border-left: 3px solid var(--main-color-zion-orange);
  transition: all 0.3s ease;
}

.activity-content:hover {
  background: rgba(255, 255, 255, 0.08);
  transform: translateX(5px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.activity-text {
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 8px;
  line-height: 1.4;
}

.activity-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  color: #b1b1b1;
}

.activity-department {
  background: rgba(255, 142, 49, 0.2);
  color: var(--main-color-zion-orange);
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 500;
}

.activity-date {
  color: #808080;
}

.activity-status {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 500;
  margin-left: 8px;
}

.status-activo {
  background: rgba(40, 167, 69, 0.2);
  color: #28a745;
}

.status-finalizado {
  background: rgba(108, 117, 125, 0.2);
  color: #6c757d;
}

.status-en_curso {
  background: rgba(255, 193, 7, 0.2);
  color: #ffc107;
}

.status-no_empezado {
  background: rgba(13, 202, 240, 0.2);
  color: #0dcaf0;
}

.activity-jornada {
  background: rgba(255, 142, 49, 0.1);
  color: var(--main-color-zion-orange);
  padding: 2px 6px;
  border-radius: 8px;
  font-size: 10px;
}

/* Team Cards */
.team-card {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 10px;
  padding: 15px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease;
  height: 100%;
}

.team-card:hover {
  background: rgba(255, 255, 255, 0.08);
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(255, 142, 49, 0.15);
  border-color: var(--main-color-zion-orange);
}

.team-logo {
  text-align: center;
  margin-bottom: 15px;
}

.team-logo-img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--main-color-zion-orange);
  box-shadow: 0 4px 12px rgba(255, 142, 49, 0.2);
}

.team-logo-placeholder {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: linear-gradient(to right, #c44206, #d37e1c);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  color: white;
  font-size: 24px;
  border: 2px solid rgba(255, 255, 255, 0.2);
}

.team-info {
  text-align: center;
}

.team-name {
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 8px;
}

.team-details {
  color: #b1b1b1;
  font-size: 12px;
  margin-bottom: 8px;
  line-height: 1.4;
}

.team-date {
  color: #808080;
  font-size: 11px;
}

/* Compact Team Items */
.teams-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.team-item {
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease;
}

.team-item:hover {
  background: rgba(255, 255, 255, 0.08);
  transform: translateX(3px);
  box-shadow: 0 4px 12px rgba(255, 142, 49, 0.15);
  border-color: var(--main-color-zion-orange);
}

.team-item-logo {
  flex-shrink: 0;
  margin-right: 12px;
}

.team-item-logo-img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--main-color-zion-orange);
  box-shadow: 0 2px 8px rgba(255, 142, 49, 0.2);
}

.team-item-logo-placeholder {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(to right, #c44206, #d37e1c);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 16px;
  border: 2px solid rgba(255, 255, 255, 0.2);
}

.team-item-info {
  flex: 1;
  min-width: 0;
}

.team-item-name {
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.team-item-details {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: 4px;
}

.team-item-captain,
.team-item-coach {
  color: #b1b1b1;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.team-item-date {
  color: #808080;
  font-size: 10px;
}

/* Empty state styling */
.text-muted {
  color: #6c757d !important;
}

.text-muted i {
  color: #6c757d;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .activity-timeline {
    padding-left: 20px;
  }
  
  .activity-marker {
    left: -15px;
    width: 10px;
    height: 10px;
  }
  
  .activity-content {
    padding: 12px;
  }
  
  .activity-meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }
  
  .team-card {
    margin-bottom: 15px;
  }
  
  .team-item {
    padding: 10px;
  }
  
  .team-item-logo-img,
  .team-item-logo-placeholder {
    width: 35px;
    height: 35px;
  }
  
  .team-item-name {
    font-size: 13px;
  }
  
  .team-item-captain,
  .team-item-coach {
    font-size: 10px;
  }
}

@media (max-width: 992px) {
  .col-lg-4 {
    margin-bottom: 20px;
  }
}

/* Profile Completion Section in Banner */
.profile-completion-section {
  margin: 15px 0;
  text-align: right;
}

.completion-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.completion-label {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.8);
  font-weight: 500;
}

.completion-percentage {
  font-size: 0.9rem;
  font-weight: 600;
  color: #d37e1c;
  background: rgba(211, 126, 28, 0.1);
  padding: 2px 8px;
  border-radius: 12px;
  border: 1px solid rgba(211, 126, 28, 0.3);
}

.profile-progress {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 3px;
  overflow: hidden;
}

.profile-progress .progress-bar {
  border-radius: 3px;
  transition: width 0.6s ease;
}

/* Compact Missing Fields Section */
.missing-fields-compact {
  background: rgba(220, 53, 69, 0.05);
  border: 1px solid rgba(220, 53, 69, 0.2);
  border-radius: 8px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.missing-fields-header {
  display: flex;
  align-items: center;
  color: #dc3545;
  font-weight: 500;
  font-size: 0.9rem;
  white-space: nowrap;
}

.missing-fields-header i {
  font-size: 1rem;
}

.missing-fields-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.missing-field-badge {
  background: linear-gradient(135deg, #dc3545, #c82333);
  color: white;
  padding: 4px 10px;
  border-radius: 15px;
  font-size: 0.75rem;
  font-weight: 500;
  border: 1px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
  cursor: pointer;
}

.missing-field-badge:hover {
  background: linear-gradient(135deg, #c82333, #bd2130);
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(220, 53, 69, 0.3);
}

@media (max-width: 900px) {
  .missing-fields-compact {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .missing-fields-header {
    justify-content: center;
  }
  .missing-fields-badges {
    justify-content: center;
    margin-top: 10px;
  }
}

/* Enhanced Form Validation Styles */
.profile-image-container {
  position: relative;
  display: inline-block;
  cursor: pointer;
  transition: all 0.3s ease;
}

.profile-image-container:hover .profile-image-overlay {
  opacity: 1;
}

.profile-preview-img {
  width: 120px;
  height: 120px;
  object-fit: cover;
  border: 3px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
}

.profile-image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.profile-image-overlay i {
  color: white;
  font-size: 1.5rem;
}

.image-upload-info {
  text-align: center;
  max-width: 200px;
}

/* Password Strength Indicator */
.password-strength {
  margin-top: 10px;
}

.strength-bar {
  width: 100%;
  height: 6px;
  background: #e9ecef;
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 5px;
}

.strength-fill {
  height: 100%;
  width: 0%;
  transition: all 0.3s ease;
  border-radius: 3px;
}

.strength-fill.weak {
  background: #dc3545;
  width: 25%;
}

.strength-fill.fair {
  background: #ffc107;
  width: 50%;
}

.strength-fill.good {
  background: #fd7e14;
  width: 75%;
}

.strength-fill.strong {
  background: #28a745;
  width: 100%;
}

.strength-text {
  font-size: 0.8rem;
  color: #6c757d;
  font-weight: 500;
}

.strength-text.weak {
  color: #dc3545;
}

.strength-text.fair {
  color: #ffc107;
}

.strength-text.good {
  color: #fd7e14;
}

.strength-text.strong {
  color: #28a745;
}

/* Password Requirements */
.password-requirements {
  margin-top: 15px;
}

.requirements-list {
  list-style: none;
  padding: 0;
  margin: 8px 0 0 0;
}

.requirement-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.8rem;
  color: #6c757d;
  margin-bottom: 4px;
  transition: color 0.3s ease;
}

.requirement-item i {
  font-size: 0.7rem;
  transition: all 0.3s ease;
}

.requirement-item.valid {
  color: #28a745;
}

.requirement-item.valid i {
  color: #28a745;
}

.requirement-item.valid i.bi-circle {
  display: none;
}

.requirement-item.valid i.bi-check-circle-fill {
  display: inline !important;
}

/* Password Match Indicator */
.password-match {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.8rem;
  transition: all 0.3s ease;
}

.password-match.matching {
  color: #28a745;
}

.password-match.not-matching {
  color: #dc3545;
}

/* Form Validation Styles */
.form-control.is-valid {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.form-control.is-invalid {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.invalid-feedback {
  display: block;
  font-size: 0.8rem;
  margin-top: 4px;
}

/* Loading Button States */
.btn-loading {
  display: none;
}

.btn:disabled .btn-text {
  display: none;
}

.btn:disabled .btn-loading {
  display: inline;
}

/* Character Counter */
.form-text {
  font-size: 0.8rem;
  color: #6c757d;
  text-align: right;
}

/* Social Media Input Groups */
.input-group-text {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.7);
}

.input-group-text i {
  font-size: 0.9rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .profile-preview-img {
    width: 100px;
    height: 100px;
  }
  
  .password-requirements {
    margin-top: 10px;
  }
  
  .requirements-list {
    font-size: 0.75rem;
  }
}

@media (max-width: 900px) {
  .missing-fields-compact {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .missing-fields-header {
    justify-content: center;
  }
  .missing-fields-badges {
    justify-content: center;
    margin-top: 10px;
  }
}

/* Profile Dropdown Menu Styles */
.profile-dropdown {
  min-width: 320px;
  padding: 0;
  border: none;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  overflow: hidden;
}

.profile-dropdown::before {
  content: '';
  position: absolute;
  top: -8px;
  right: 20px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid #1a1a1a;
}

/* Profile Dropdown Header */
.profile-dropdown .dropdown-header {
  padding: 20px;
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  margin: 0;
}

.profile-dropdown-user-info {
  display: flex;
  align-items: center;
  gap: 15px;
}

.profile-dropdown-avatar {
  flex-shrink: 0;
}

.profile-dropdown-avatar img {
  width: 50px;
  height: 50px;
  object-fit: cover;
  border: 3px solid rgba(211, 126, 28, 0.3);
  transition: all 0.3s ease;
}

.profile-dropdown-avatar img:hover {
  border-color: rgba(211, 126, 28, 0.6);
  transform: scale(1.05);
}

.profile-dropdown-details {
  flex: 1;
  min-width: 0;
}

.profile-dropdown-name {
  font-size: 1rem;
  font-weight: 600;
  color: #ffffff;
  margin: 0 0 4px 0;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  line-height: 1.2;
}

.profile-dropdown-email {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.7);
  display: block;
  margin-bottom: 8px;
  font-weight: 400;
}

.profile-dropdown-plan {
  display: flex;
  align-items: center;
}

.plan-badge {
  font-size: 0.85rem;
  font-weight: 700;
  padding: 5px 16px;
  border-radius: 999px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(255,142,49,0.13);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: background 0.2s, color 0.2s, box-shadow 0.2s;
}

.plan-badge.plan-prueba-gratis {
  background: linear-gradient(90deg, #ffc107 0%, #ff8e31 100%);
  color: #222;
  box-shadow: 0 2px 8px rgba(255,193,7,0.13);
}

.plan-badge.plan-lite {
  background: linear-gradient(90deg, #17a2b8 0%, #20c997 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(23,162,184,0.13);
}

.plan-badge.plan-pro {
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(255,142,49,0.13);
}

.plan-badge.plan-custom {
  background: linear-gradient(90deg, #6f42c1 0%, #e83e8c 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(232,62,140,0.13);
}

/* Add a subtle hover effect for badges */
.plan-badge:hover {
  filter: brightness(1.08) saturate(1.2);
  box-shadow: 0 4px 16px rgba(255,142,49,0.18);
}

/* Ensure icons inside badges are centered and sized */
.plan-badge i {
  font-size: 1rem;
  vertical-align: middle;
  margin-right: 4px;
  margin-left: 0;
  color: inherit;
}

/* Profile Dropdown Items */
.profile-dropdown-item {
  display: flex;
  align-items: center;
  padding: 16px 20px;
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  transition: all 0.3s ease;
  border: none;
  background: transparent;
  position: relative;
  overflow: hidden;
}

.profile-dropdown-item:hover {
  color: #ffffff;
  background: linear-gradient(to right, #c44206, #d37e1c);
  transform: translateX(5px);
}

.profile-dropdown-item:focus {
  outline: 2px solid rgba(211, 126, 28, 0.5);
  outline-offset: -2px;
  background: transparent;
  color: rgba(255, 255, 255, 0.8);
}

.profile-dropdown-item:focus:hover {
  background: linear-gradient(to right, #c44206, #d37e1c);
  color: #ffffff;
  outline: none;
}

.profile-dropdown-item:hover .dropdown-item-icon i {
  color: #ffffff;
  transform: scale(1.1);
}

.profile-dropdown-item:hover .dropdown-item-icon {
  background: rgba(255, 255, 255, 0.2);
}

.dropdown-item-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.05);
  margin-right: 15px;
  transition: all 0.3s ease;
  flex-shrink: 0;
  padding: 0 !important;
}

.dropdown-item-icon i {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
  height: 100%;
  font-size: 1.2rem;
  color: rgba(255, 255, 255, 0.7);
  transition: all 0.3s ease;
}

.dropdown-item-content {
  flex: 1;
  min-width: 0;
}

.dropdown-item-title {
  display: block;
  font-size: 0.95rem;
  font-weight: 600;
  color: inherit;
  margin-bottom: 2px;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.dropdown-item-subtitle {
  display: block;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.5);
  font-weight: 400;
  white-space: normal;
  word-break: break-word;
}

/* Logout Item Special Styling */
.profile-dropdown-logout {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 8px;
}

.profile-dropdown-logout:hover {
  background: linear-gradient(135deg, rgba(220, 53, 69, 0.1) 0%, rgba(255, 107, 129, 0.1) 100%);
}

.profile-dropdown-logout:hover .dropdown-item-icon {
  background: rgba(220, 53, 69, 0.2);
}

.profile-dropdown-logout:hover .dropdown-item-icon i {
  color: #dc3545;
}

/* Dropdown Dividers */
.profile-dropdown .dropdown-divider {
  margin: 0;
  border-color: rgba(255, 255, 255, 0.1);
  border-width: 1px;
}

/* Responsive Design */
@media (max-width: 768px) {
  .profile-dropdown {
    min-width: 280px;
    right: 10px;
  }
  
  .profile-dropdown-user-info {
    gap: 12px;
  }
  
  .profile-dropdown-avatar img {
    width: 45px;
    height: 45px;
  }
  
  .profile-dropdown-name {
    font-size: 0.9rem;
  }
  
  .profile-dropdown-email {
    font-size: 0.8rem;
  }
  
  .profile-dropdown-item {
    padding: 14px 16px;
  }
  
  .dropdown-item-icon {
    width: 35px;
    height: 35px;
    margin-right: 12px;
  }
  
  .dropdown-item-icon i {
    font-size: 1.1rem;
  }
}

/* Animation for dropdown appearance */
.profile-dropdown {
  animation: dropdownSlideIn 0.3s ease-out;
}

@keyframes dropdownSlideIn {
  from {
    opacity: 0;
    transform: translateY(-10px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* Hover effects for the profile trigger */
.header-nav .nav-profile:hover {
  transform: translateY(-2px);
  transition: transform 0.3s ease;
}

.header-nav .nav-profile:hover img {
  box-shadow: 0 4px 15px rgba(211, 126, 28, 0.3);
  transition: box-shadow 0.3s ease;
}

/* Focus states for accessibility */
.profile-dropdown-item:focus {
  outline: 2px solid rgba(211, 126, 28, 0.5);
  outline-offset: -2px;
}

/* Dark mode compatibility */
@media (prefers-color-scheme: dark) {
  .profile-dropdown {
    background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
  }
}

.profile-dropdown-item,
.profile-dropdown-item:hover,
.profile-dropdown-item:focus,
.profile-dropdown-item:active,
.profile-dropdown-item.show {
  background: transparent !important;
  background-color: transparent !important;
  color: rgba(255,255,255,0.8) !important;
  transition: background 0.2s, color 0.2s, transform 0.2s;
}

.profile-dropdown-item:hover,
.profile-dropdown-item:focus,
.profile-dropdown-item:active,
.profile-dropdown-item.show {
  background: linear-gradient(to right, #c44206, #d37e1c) !important;
  color: #fff !important;
}

/*--------------------------------------------------------------
# Temporada Cards Styles
--------------------------------------------------------------*/

.section-title {
  color: var(--main-color-zion-orange);
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  border-bottom: 2px solid rgba(255, 142, 49, 0.2);
  padding-bottom: 0.5rem;
}

.temporada-card {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  overflow: visible;
  transition: all 0.3s ease;
  position: relative;
  min-height: 200px;
}

.temporada-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 32px rgba(255,142,49,0.18), 0 2px 16px rgba(0,0,0,0.22);
  border-color: var(--main-color-zion-orange);
}

.temporada-card.temporada-completed {
  background: linear-gradient(135deg, #1a1a1a 0%, #1f1f1f 100%);
  opacity: 0.8;
}

.temporada-card.temporada-completed:hover {
  opacity: 1;
  transform: translateY(-3px);
}

/* Temporada Card Header */
.temporada-card-header {
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 15px 20px;
}

.temporada-status-section {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}

.temporada-name {
  color: #ffffff;
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif !important;
  line-height: 1.3;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.temporada-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8rem;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 20px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
  transition: all 0.3s ease;
}

.temporada-status-badge i {
  font-size: 0.9rem;
}

.status-not-started {
  background: linear-gradient(90deg, #17a2b8 0%, #20c997 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(23,162,184,0.2);
}

.status-in-progress {
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(255,142,49,0.2);
}

.status-processing {
  background: linear-gradient(90deg, #ffc107 0%, #fd7e14 100%);
  color: #222;
  box-shadow: 0 2px 8px rgba(255,193,7,0.2);
}

.status-completed {
  background: linear-gradient(90deg, #6c757d 0%, #495057 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(108,117,125,0.2);
}

.temporada-actions {
  display: flex;
  gap: 8px;
}

.temporada-action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: all 0.3s ease;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.temporada-action-btn:hover {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
  transform: scale(1.1);
}

.temporada-action-btn.delete-btn:hover {
  background: rgba(220, 53, 69, 0.2);
  color: #dc3545;
  border-color: rgba(220, 53, 69, 0.3);
}

/* Temporada Card Body */
.temporada-card-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: calc(100% - 120px);
}

.temporada-info {
  flex: 1;
}

.temporada-dates {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.date-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease;
}

.date-item:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 142, 49, 0.3);
}

.date-item i {
  color: var(--main-color-zion-orange);
  font-size: 0.9rem;
  flex-shrink: 0;
}

.date-label {
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.85rem;
  font-weight: 500;
  min-width: 50px;
}

.date-value {
  color: #ffffff;
  font-size: 0.9rem;
  font-weight: 600;
  margin-left: auto;
}

/* Temporada Card Footer */
.temporada-card-footer {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.temporada-edit-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%);
  color: #fff;
  text-decoration: none;
  border-radius: 25px;
  font-size: 0.9rem;
  font-weight: 600;
  transition: all 0.3s ease;
  border: none;
  box-shadow: 0 2px 8px rgba(255,142,49,0.2);
}

.temporada-edit-btn:hover {
  background: linear-gradient(90deg, #d37e1c 0%, #ff8e31 100%);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(255,142,49,0.3);
}

.temporada-edit-btn i {
  font-size: 0.9rem;
}

@media (max-width: 768px) {
  .temporada-card {
    min-height: 180px;
  }
  
  .temporada-card-body {
    padding: 15px;
  }
  
  .temporada-name {
    font-size: 1.1rem;
  }
  
  .date-item {
    padding: 6px 10px;
  }
  
  .date-label {
    font-size: 0.8rem;
    min-width: 40px;
  }
  
  .date-value {
    font-size: 0.85rem;
  }
  
  .temporada-edit-btn {
    padding: 8px 16px;
    font-size: 0.85rem;
  }
}

@media (max-width: 576px) {
  .temporada-status-section {
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
  }
  
  .temporada-actions {
    align-self: flex-end;
  }
  
  .temporada-dates {
    gap: 8px;
  }
  
  .date-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
  
  .date-value {
    margin-left: 0;
  }
}

/*--------------------------------------------------------------
# Team Logo Section for Equipos Cards
--------------------------------------------------------------*/

.team-logo-section {
  position: absolute;
  top: -110px;
  right: -10px;
  z-index: 10;
}

.team-logo-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.team-logo-img {
  width: 115px;
  height: 115px;
  object-fit: cover;
  border-radius: 50%;
  border: 3px solid rgba(255, 142, 49, 0.4);
  box-shadow: 0 4px 12px rgba(255, 142, 49, 0.3);
  transition: all 0.3s ease;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(4px);
}

.team-logo-img:hover {
  transform: scale(1.05);
  border-color: var(--main-color-zion-orange);
  box-shadow: 0 6px 16px rgba(255, 142, 49, 0.4);
}

/* Responsive adjustments for team logos */
@media (max-width: 768px) {
  .team-logo-section {
    top: -50px;
    right: -20px;
  }

  .team-logo-img {
    width: 120px;
    height: 120px;
  }
}

@media (max-width: 576px) {
  .team-logo-section {
    top: -40px;
    right: -15px;
  }

  .team-logo-img {
    width: 90px;
    height: 90px;
  }
}

/* Extra small devices (phones < 480px) */
@media (max-width: 480px) {
  .team-logo-section {
    top: -35px;
    right: -10px;
  }

  .team-logo-img {
    width: 75px;
    height: 75px;
  }
}

/* Event-specific button styles */
.btn-start-event {
  background: linear-gradient(90deg, #28a745 0%, #20c997 100%) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(40,167,69,0.2) !important;
}

.btn-start-event:hover {
  background: linear-gradient(90deg, #20c997 0%, #17a2b8 100%) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 16px rgba(40,167,69,0.3) !important;
}

.btn-continue-event {
  background: linear-gradient(90deg, #ffc107 0%, #fd7e14 100%) !important;
  color: #222 !important;
  box-shadow: 0 2px 8px rgba(255,193,7,0.2) !important;
}

.btn-continue-event:hover {
  background: linear-gradient(90deg, #fd7e14 0%, #e83e8c 100%) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 16px rgba(255,193,7,0.3) !important;
}

/* Button layout in footer */
.temporada-card-footer .d-flex.gap-2 {
  gap: 0.5rem !important;
}

.temporada-card-footer .d-flex.gap-2 .temporada-edit-btn {
  flex: 1;
  text-align: center;
  min-width: 0;
}

/* Responsive adjustments for event cards */
@media (max-width: 768px) {
  .temporada-card-footer .d-flex.gap-2 {
    flex-direction: column;
    gap: 0.75rem !important;
  }
  
  .temporada-card-footer .d-flex.gap-2 .temporada-edit-btn {
    width: 100%;
  }
}

/* Compact Team Logo Section for Event Cards */
.team-logo-section-compact {
  position: absolute;
  top: -120px;
  right: -25px;
  z-index: 10;
}

.team-logo-container-compact {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.team-logo-img-compact {
  width: 110px;
  height: 110px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 50%;
  border: 2px solid rgba(255, 142, 49, 0.3);
  box-shadow: 0 3px 8px rgba(255, 142, 49, 0.2);
  transition: all 0.3s ease;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(4px);
}

.team-logo-img-compact:hover {
  transform: scale(1.1);
  border-color: var(--main-color-zion-orange);
  box-shadow: 0 4px 12px rgba(255, 142, 49, 0.3);
}

/* Event Card Watermark Background */
.temporada-card.event-card {
  position: relative;
  overflow: hidden;
}

.temporada-card.event-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: 60% auto;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.15;
  pointer-events: none;
  z-index: 1;
  transition: opacity 0.3s ease;
}

.temporada-card.event-card:hover::before {
  opacity: 0.20;
}

/* Ensure content stays above watermark */
.temporada-card.event-card .temporada-card-header,
.temporada-card.event-card .temporada-card-body,
.temporada-card.event-card .temporada-card-footer {
  position: relative;
  z-index: 2;
}

/* Compact Date Items for Event Cards */
.temporada-card .temporada-dates .date-item {
  padding: 6px 10px;
  margin-bottom: 6px;
  font-size: 0.85rem;
}

.temporada-card .temporada-dates .date-item:last-child {
  margin-bottom: 0;
}

.temporada-card .temporada-dates .date-label {
  font-size: 0.8rem;
  min-width: 45px;
}

.temporada-card .temporada-dates .date-value {
  font-size: 0.85rem;
}

/* Reduce card body padding for events */
.temporada-card .temporada-card-body {
  padding: 15px 20px;
}

/* Responsive adjustments for compact layout */
@media (max-width: 768px) {
  
  .temporada-card .temporada-dates .date-item {
    padding: 5px 8px;
    margin-bottom: 4px;
    font-size: 0.8rem;
  }
  
  .temporada-card .temporada-dates .date-label {
    font-size: 0.75rem;
    min-width: 40px;
  }
  
  .temporada-card .temporada-dates .date-value {
    font-size: 0.8rem;
  }
}

/*--------------------------------------------------------------
# Mis Eventos Card Styles
--------------------------------------------------------------*/

.mis-eventos-card {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  overflow: visible;
  transition: all 0.3s ease;
  position: relative;
  min-height: 200px;
}

.mis-eventos-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 32px rgba(255,142,49,0.18), 0 2px 16px rgba(0,0,0,0.22);
  border-color: var(--main-color-zion-orange);
}

/* Mis Eventos Card Watermark */
.mis-eventos-card-watermark {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: 60% auto;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.015;
  pointer-events: none;
  z-index: 1;
  transition: opacity 0.3s ease;
  border-radius: 16px;
}

.mis-eventos-card:hover .mis-eventos-card-watermark {
  opacity: 0.025;
}

/* Ensure content stays above watermark */
.mis-eventos-card .temporada-card-header,
.mis-eventos-card .temporada-card-body,
.mis-eventos-card .temporada-card-footer {
  position: relative;
  z-index: 2;
}

@media (max-width: 768px) {
  .team-logo-section-compact {
    top: -50px;
    right: -20px;
  }

  .team-logo-section-compact {
    margin-bottom: 0.75rem;
  }
  
  .temporada-card .temporada-dates .date-item {
    padding: 5px 8px;
    margin-bottom: 4px;
    font-size: 0.8rem;
  }
  
  .temporada-card .temporada-dates .date-label {
    font-size: 0.75rem;
    min-width: 40px;
  }
  
  .temporada-card .temporada-dates .date-value {
    font-size: 0.8rem;
  }
}

@media (max-width: 576px) {
  .team-logo-img-compact {
    width: 90px;
    height: 90px;
  }
}

/*--------------------------------------------------------------
# Mis Jugadores Card Styles
--------------------------------------------------------------*/

.mis-jugadores-card {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  overflow: visible;
  transition: all 0.3s ease;
  position: relative;
  min-height: 280px;
}

.mis-jugadores-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 32px rgba(255,142,49,0.18), 0 2px 16px rgba(0,0,0,0.22);
  border-color: var(--main-color-zion-orange);
}

.mis-jugadores-card.jugador-inactive {
  background: linear-gradient(135deg, #1a1a1a 0%, #1f1f1f 100%);
  opacity: 0.7;
}

.mis-jugadores-card.jugador-inactive:hover {
  opacity: 0.9;
  transform: translateY(-3px);
}

/* Mis Jugadores Card Watermark */
.mis-jugadores-card-watermark {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.03;
  pointer-events: none;
  z-index: 1;
  transition: opacity 0.3s ease;
  border-radius: 16px;
}

.mis-jugadores-card:hover .mis-jugadores-card-watermark {
  opacity: 0.05;
}

/* Temporada Card Watermark */
.temporada-card-watermark {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.03;
  pointer-events: none;
  z-index: 1;
  transition: opacity 0.3s ease;
  border-radius: 16px;
}

.temporada-card:hover .temporada-card-watermark {
  opacity: 0.05;
}

/* Ensure content stays above watermark */
.temporada-card .temporada-card-header,
.temporada-card .temporada-card-body,
.temporada-card .temporada-card-footer {
  position: relative;
  z-index: 2;
}

/* Jugadores Card Header */
.jugadores-card-header {
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 18px 20px 5px 15px;
  min-height: 90px;
}

.jugadores-status-section {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.jugadores-name {
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 600;
  margin: 0;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif !important;
  line-height: 1.3;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  flex: 1;
}

.jugadores-apodo {
  color: rgba(255, 255, 255, 0.7);
  font-weight: 400;
  margin: 4px 0 0 0;
  font-style: italic;
}

.jugadores-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.75rem;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 20px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
}

.jugadores-status-badge i {
  font-size: 0.85rem;
}

.status-activo {
  background: linear-gradient(90deg, #28a745 0%, #20c997 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(40,167,69,0.2);
}

.status-inactivo {
  background: linear-gradient(90deg, #6c757d 0%, #495057 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(108,117,125,0.2);
}

.jugadores-actions {
  display: flex;
  gap: 8px;
}

.jugadores-action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: all 0.3s ease;
}

.jugadores-action-btn:hover {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
  transform: scale(1.1);
}

.jugadores-action-btn.delete-btn:hover {
  background: rgba(220, 53, 69, 0.2);
  color: #dc3545;
  border-color: rgba(220, 53, 69, 0.3);
}

/* Jugadores Card Body */
.jugadores-card-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 180px;
}

.jugadores-info {
  flex: 1;
  position: relative;
}

.jugadores-details {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.jugador-detail-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.3s ease;
}

.jugador-detail-item:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 142, 49, 0.3);
}

.jugador-detail-item i {
  color: var(--main-color-zion-orange);
  font-size: 0.9rem;
  min-width: 16px;
}

.jugador-detail-label {
  font-size: 0.8rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.6);
  min-width: 60px;
}

.jugador-detail-value {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.9);
  font-weight: 500;
}

.jugador-detail-value a {
  display: inline-block;
  text-decoration: none;
  margin-left: 4px;
  transition: transform 0.2s ease;
  vertical-align: middle;
}

.jugador-detail-value a:hover {
  transform: scale(1.1);
}

.jugador-detail-value a:first-of-type {
  margin-left: 0;
}

/* Player Photo Section */
.jugador-photo-section {
  position: absolute;
  top: -115px;
  right: -25px;
  z-index: 10;
}

.jugador-photo-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.jugador-photo-img {
  width: 110px;
  height: 110px;
  object-fit: cover;
  border-radius: 50%;
  border: 3px solid rgba(255, 142, 49, 0.4);
  box-shadow: 0 4px 12px rgba(255, 142, 49, 0.3);
  transition: all 0.3s ease;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(4px);
}

.jugador-photo-img:hover {
  transform: scale(1.05);
  border-color: var(--main-color-zion-orange);
  box-shadow: 0 6px 16px rgba(255, 142, 49, 0.4);
}

.jugador-jersey-number {
  position: absolute;
  bottom: -5px;
  right: -5px;
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, #c44206 0%, #d37e1c 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.1rem;
  color: #fff;
  border: 3px solid #1a1a1a;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.4);
}

/* Jugadores Card Footer */
.jugadores-card-footer {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.jugadores-edit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 20px;
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%);
  color: #fff;
  text-decoration: none;
  border-radius: 25px;
  font-size: 0.9rem;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 3px 12px rgba(196, 66, 6, 0.3);
  flex: 1;
  text-align: center;
}

.jugadores-edit-btn:hover {
  background: linear-gradient(90deg, #d37e1c 0%, #ff8e31 100%);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(255,142,49,0.3);
}

.jugadores-edit-btn i {
  font-size: 0.9rem;
}

.jugadores-edit-btn.delete-btn {
  background: transparent;
  box-shadow: none;
  flex: 0 0 auto;
  border-radius: 10px;
  padding: 10px;
  width: auto;
  min-width: auto;
  aspect-ratio: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  /*background: rgba(255, 255, 255, 0.1);*/
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: all 0.3s ease;
  /*border: 1px solid rgba(255, 255, 255, 0.1);*/
}

.jugadores-edit-btn.delete-btn:hover {
  background: rgba(220, 53, 69, 0.2);
  color: #dc3545;
  border-color: rgba(220, 53, 69, 0.3);
}

.jugadores-edit-btn.delete-btn i {
  color: #fff;
  margin: 0;
}

.jugadores-card-footer .d-flex.gap-2 {
  gap: 0.5rem !important;
}

.jugadores-card-footer .d-flex.gap-2 .jugadores-edit-btn {
  min-width: 0;
}

/* Ensure content stays above watermark */
.mis-jugadores-card .jugadores-card-header,
.mis-jugadores-card .jugadores-card-body,
.mis-jugadores-card .jugadores-card-footer {
  position: relative;
  z-index: 2;
}

/* Collapsible Section for Inactive Players */
a[data-bs-toggle="collapse"] i.bi-chevron-right {
  transition: transform 0.3s ease;
  display: inline-block;
}

a[data-bs-toggle="collapse"]:not(.collapsed) i.bi-chevron-right {
  transform: rotate(90deg);
}

a[data-bs-toggle="collapse"] {
  color: rgba(255, 255, 255, 0.8);
  transition: color 0.3s ease;
}

a[data-bs-toggle="collapse"]:hover {
  color: var(--main-color-zion-orange);
}

/* Responsive adjustments for player cards */
@media (max-width: 768px) {
  .mis-jugadores-card {
    min-height: 260px;
  }
  
  .jugadores-card-body {
    padding: 15px;
  }
  
  .jugadores-details {
    padding-right: 110px;
  }
  
  .jugador-photo-section {
    top: -50px;
    right: -20px;
  }
  
  .jugador-photo-img {
    width: 120px;
    height: 120px;
  }
  
  .jugador-jersey-number {
    width: 35px;
    height: 35px;
    font-size: 1rem;
  }
  
  .jugador-detail-item {
    padding: 5px 8px;
    margin-bottom: 4px;
    font-size: 0.8rem;
  }
  
  .jugador-detail-label {
    font-size: 0.75rem;
    min-width: 50px;
  }
  
  .jugador-detail-value {
    font-size: 0.8rem;
  }

  .jugadores-card-footer .d-flex.gap-2 {
    flex-direction: column;
    gap: 0.75rem !important;
  }
}

@media (max-width: 576px) {
  .jugadores-details {
    padding-right: 90px;
  }

  .jugador-photo-section {
    top: -40px;
    right: -15px;
  }

  .jugador-photo-img {
    width: 90px;
    height: 90px;
  }

  .jugador-jersey-number {
    width: 32px;
    height: 32px;
    font-size: 1rem;
  }
}

/* Extra small devices (phones < 480px) */
@media (max-width: 480px) {
  .jugadores-details {
    padding-right: 70px;
  }

  .jugador-photo-section {
    top: -35px;
    right: -10px;
  }

  .jugador-photo-img {
    width: 75px;
    height: 75px;
  }

  .jugador-jersey-number {
    width: 28px;
    height: 28px;
    font-size: 0.9rem;
  }
}

/*--------------------------------------------------------------
# Zion Standard Card Styles
--------------------------------------------------------------*/

.zion-standard-card {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  overflow: visible;
  transition: all 0.3s ease;
  position: relative;
  min-height: 280px;
}

.zion-standard-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 32px rgba(255,142,49,0.18), 0 2px 16px rgba(0,0,0,0.22);
  border-color: var(--main-color-zion-orange);
}

.zion-standard-card.clicked {
  animation: cardClickPulse 0.3s ease-out;
}

@keyframes cardClickPulse {
  0% {
    transform: scale(1);
    box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  }
  50% {
    transform: scale(0.98);
    box-shadow: 0 2px 16px rgba(0,0,0,0.15);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  }
}

.zion-standard-card.zion-inactive {
  background: linear-gradient(135deg, #1a1a1a 0%, #1f1f1f 100%);
  opacity: 0.7;
}

.zion-standard-card.zion-inactive:hover {
  opacity: 0.9;
  transform: translateY(-3px);
}

/* Zion Standard Card Watermark */
.zion-standard-card-watermark {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.03;
  pointer-events: none;
  z-index: 1;
  transition: opacity 0.3s ease;
  border-radius: 16px;
}

.zion-standard-card-watermark img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.zion-standard-card:hover .zion-standard-card-watermark {
  opacity: 0.05;
}

/* Zion Card Header */
.zion-card-header {
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 18px 10px 5px 15px;
  min-height: 90px;
}

.zion-status-section {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.zion-card-title {
  color: #ffffff;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  font-size: 1.1rem;
  font-weight: 600;
  margin: 0;
  line-height: 1.3;
  flex: 1;
}

.zion-card-subtitle {
  color: rgba(255, 255, 255, 0.7);
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  font-size: 0.9rem;
  font-weight: 400;
  margin: 4px 0 0 0;
  /*font-style: italic;*/
}

.zion-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 0px 5px 10px;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
}

.zion-status-badge i {
  font-size: 0.85rem;
}

.zion-status-activo {
  /*background: linear-gradient(90deg, #28a745 0%, #20c997 100%);*/
  color: #fff;
  box-shadow: 0 2px 8px rgba(40,167,69,0.2);
}

.zion-status-inactivo {
  background: linear-gradient(90deg, #6c757d 0%, #495057 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(108,117,125,0.2);
}

/* Zion Card Body */
.zion-card-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  /*min-height: 180px;*/
}

.zion-info {
  flex: 1;
  position: relative;
}

.zion-details {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.zion-detail-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.3s ease;
}

.zion-detail-item:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 142, 49, 0.3);
}

.zion-detail-item i {
  color: var(--main-color-zion-orange);
  font-size: 0.9rem;
  min-width: 16px;
}

.zion-detail-label {
  font-size: 0.8rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.6);
  min-width: 60px;
}

.zion-detail-value {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.9);
  font-weight: 500;
}

.zion-detail-value a {
  display: inline-block;
  text-decoration: none;
  margin-left: 4px;
  color: rgba(255, 255, 255, 0.9);
  transition: all 0.3s ease;
  vertical-align: middle;
}

.zion-detail-value a:hover {
  transform: scale(1.1);
}

.zion-detail-value a:first-of-type {
  margin-left: 0;
}

/* Zion Photo Section */
.zion-photo-section {
  position: absolute;
  top: -50px;
  right: 70px;
  z-index: 10;
}

/* Zion Thumbnail Section */
.zion-thumbnail-section {
  position: absolute;
  top: -120px;
  right: -30px;
  z-index: 10;
}

.zion-favorite-section {
  position: absolute;
  top: -10px;
  right: -10px;
  z-index: 15;
}

.zion-photo-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.zion-photo-img {
  width: 60px;
  height: 60px;
  object-fit: cover;
  border-radius: 50%;
  border: 3px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 4px 16px rgba(0,0,0,0.3);
  transition: all 0.3s ease;
  backdrop-filter: blur(4px);
}

.zion-photo-img:hover {
  transform: scale(1.05);
  border-color: var(--main-color-zion-orange);
  box-shadow: 0 6px 16px rgba(255, 142, 49, 0.4);
}

.zion-jersey-number {
  position: absolute;
  bottom: -5px;
  right: -5px;
  background: linear-gradient(135deg, var(--main-color-zion-red) 0%, var(--main-color-zion-orange) 100%);
  color: white;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 1.1rem;
  border: 2px solid rgba(255, 255, 255, 0.9);
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

.zion-playlist-icon {
  width: 60px;
  height: 60px;
  background: linear-gradient(135deg, rgb(135 69 39) 0%, rgb(50 31 8) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
  transform: scale(1);
}

.zion-playlist-icon:hover {
    transform: translateY(-5px) scale(1.1);
    box-shadow: 0 8px 32px rgba(255,142,49,0.18), 0 2px 16px rgba(0,0,0,0.22);
    border-color: var(--main-color-zion-orange);
}

.zion-playlist-icon i {
  font-size: 1.8rem;
  color: var(--main-color-zion-orange);
}

/* Zion Playlist View Card Styles */
.zion-playlist-view-card {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  overflow: visible;
  transition: all 0.3s ease;
  position: relative;
  min-height: 400px;
  max-height: calc(100vh - 250px); /* Fill available viewport height minus header space */
}

.zion-playlist-view-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 28px rgba(255,142,49,0.15), 0 2px 12px rgba(0,0,0,0.20);
  border-color: var(--main-color-zion-orange);
}

.zion-playlist-header {
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 18px 20px 15px 15px;
  min-height: 120px;
}

.zion-playlist-title-section {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 12px;
}

.zion-playlist-title {
  color: #ffffff;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  font-size: 1.2rem;
  font-weight: 600;
  margin: 0;
  line-height: 1.3;
  flex: 1;
}

.zion-playlist-actions {
  display: flex;
  gap: 8px;
}

.zion-playlist-description {
  color: rgba(255, 255, 255, 0.7);
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  font-size: 0.9rem;
  margin-bottom: 10px;
}

.zion-playlist-stats {
  color: rgba(255, 255, 255, 0.6);
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  font-size: 0.7rem;
}

.zion-playlist-stats i {
  color: var(--main-color-zion-orange);
  margin-right: 4px;
}

.zion-playlist-body {
  padding: 0;
  display: flex;
  flex-direction: column;
  min-height: 280px;
}

.zion-playlist-events-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.zion-playlist-event-item {
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 12px 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.3s ease;
  cursor: pointer;
  position: relative;
}

.zion-playlist-event-item:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 142, 49, 0.3);
  transform: translateX(2px);
}

.zion-playlist-event-item:last-child {
  border-bottom: none;
}

.zion-playlist-event-number {
  flex-shrink: 0;
}

.zion-playlist-event-number .badge {
  /*background: linear-gradient(90deg, #28a745 0%, #20c997 100%);*/
  color: #fff;
  /*box-shadow: 0 2px 8px rgba(40,167,69,0.2);*/
  border: none;
  min-width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.zion-playlist-event-avatar {
  flex-shrink: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
  transform: scale(1);
}

.zion-playlist-event-avatar:hover {
  transform: scale(1.15);
  border-color: var(--main-color-zion-orange);
  box-shadow: 0 4px 16px rgba(255,142,49,0.3);
}

.zion-playlist-event-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.zion-playlist-event-avatar.placeholder {
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.zion-playlist-event-avatar.placeholder i {
  color: var(--main-color-zion-orange);
  font-size: 1.2rem;
}

.zion-playlist-event-content {
  flex: 1;
  min-width: 0;
}

.zion-playlist-event-title {
  color: #ffffff;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  font-size: 0.90rem;
  font-weight: 600;
  margin-bottom: 4px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.zion-playlist-event-title .badge {
  background: linear-gradient(90deg, rgba(196, 66, 6, 0.2) 0%, rgba(211, 126, 28, 0.2) 100%);
  color: var(--main-color-zion-orange);
  font-size: 0.75rem;
  padding: 2px 6px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.zion-playlist-event-meta {
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.8rem;
  display: flex;
  align-items: center;
  gap: 12px;
}

.zion-playlist-event-meta i {
  color: var(--main-color-zion-orange);
  font-size: 0.75rem;
  margin-right: 3px;
}

.zion-playlist-event-actions {
  flex-shrink: 0;
}

.zion-playlist-event-actions .btn {
  padding: 6px 8px;
  border-radius: 6px;
  transition: all 0.3s ease;
}

.zion-playlist-event-actions .btn:hover {
  transform: scale(1.1);
}

.zion-playlist-remove-btn {
  background: rgb(108 117 125 / 0%) !important;
  border: none !important;
  color: rgba(108, 117, 125, 0.8) !important;
  transition: all 0.3s ease;
}

.zion-playlist-remove-btn:hover {
  background: rgba(108, 117, 125, 0.5) !important;
  color: #6c757d !important;
  transform: scale(1.1);
}

.zion-playlist-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
  text-align: center;
  color: rgba(255, 255, 255, 0.6);
}

.zion-playlist-empty i {
  font-size: 3rem;
  color: rgba(255, 255, 255, 0.3);
  margin-bottom: 16px;
}

.zion-playlist-empty h6 {
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 8px;
}

.zion-playlist-empty p {
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.9rem;
  margin: 0;
}

/* Video Analysis Event Styling */
.clickable-event:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 142, 49, 0.4);
  transform: translateX(1px);
}

.zion-playlist-event-item .badge.bg-zion-win {
  background: linear-gradient(90deg, #28a745 0%, #20c997 100%) !important;
  box-shadow: 0 2px 8px rgba(40,167,69,0.2);
}

/* Event type color indicators */
.zion-playlist-event-avatar .placeholder[style*="28a745"] {
  background: linear-gradient(135deg, #28a745, #20c997) !important;
}

.zion-playlist-event-avatar .placeholder[style*="ffc107"] {
  background: linear-gradient(135deg, #ffc107, #fd7e14) !important;
}

.zion-playlist-event-avatar .placeholder[style*="dc3545"] {
  background: linear-gradient(135deg, #dc3545, #fd7e14) !important;
}

/* Playlist Video Section - Full Height */
#playlist-video-section {
  height: calc(100vh - 250px); /* Match the card height */
}

#playlist-video-section .card {
  height: 100%;
}

#playlist-video-section .card-body {
  height: 100%;
  display: flex;
  flex-direction: column;
}

#playlist-video-container {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#playlist-video-container video {
  max-height: calc(100vh - 300px); /* Leave space for info and controls */
}

/* Playlist Events Section - Match Video Section Height */
#playlist-events-section {
  max-height: calc(100vh - 250px); /* Match video section height */
}

#playlist-events-section .zion-playlist-view-card {
  max-height: 100%;
}

.zion-playlist-body {
  max-height: calc(100vh - 350px); /* Leave space for header */
  overflow-y: auto; /* Add scrollbar when content exceeds height */
  overflow-x: hidden;
}

/* Zion Playlist Body Scrollbar - Match Sidebar Styling */
.zion-playlist-body::-webkit-scrollbar {
  width: 15px;
}

.zion-playlist-body::-webkit-scrollbar-track {
  background: #ffffff00; /* Set the color of the track (the area behind the thumb) */
  border-radius: 10px;
}

.zion-playlist-body::-webkit-scrollbar-thumb {
  background: #90997a5d; /* Set the color of the thumb */
  border-radius: 10px; /* Set the border radius of the thumb */
  border: 5px solid #ffffff00;
}

.zion-playlist-body::-webkit-scrollbar-thumb:hover {
  background: #cf4a21d9; /* Set the color of the thumb on hover */
}

/* Responsive adjustments for playlist view card */
@media (max-width: 768px) {
  .zion-playlist-view-card {
    min-height: 350px;
    height: calc(100vh - 250px);
  }

  #playlist-video-section {
    height: calc(100vh - 250px);
  }

  #playlist-video-container video {
    max-height: calc(100vh - 350px);
  }

  #playlist-events-section {
    height: calc(100vh - 250px);
  }

  .zion-playlist-body {
    max-height: calc(100vh - 350px);
  }

  .zion-playlist-body::-webkit-scrollbar {
    width: 12px;
  }

  .zion-playlist-body::-webkit-scrollbar-thumb {
    border: 4px solid #ffffff00;
  }

  .zion-playlist-header {
    padding: 15px;
  }

  .zion-playlist-title-section {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .zion-playlist-actions {
    align-self: flex-end;
  }

  .zion-playlist-event-item {
    padding: 12px 15px;
    gap: 10px;
  }

  .zion-playlist-event-avatar {
    width: 35px;
    height: 35px;
  }

  .zion-playlist-event-title {
    font-size: 0.9rem;
  }

  .zion-playlist-event-meta {
    font-size: 0.75rem;
    gap: 8px;
  }
}

@media (max-width: 576px) {
  .zion-playlist-view-card {
    min-height: 300px;
    height: calc(100vh - 300px);
  }

  #playlist-video-section {
    height: calc(100vh - 300px);
  }

  #playlist-video-container video {
    max-height: calc(100vh - 400px);
  }

  #playlist-events-section {
    height: calc(100vh - 300px);
  }

  .zion-playlist-body {
    max-height: calc(100vh - 400px);
  }

  .zion-playlist-body::-webkit-scrollbar {
    width: 10px;
  }

  .zion-playlist-body::-webkit-scrollbar-thumb {
    border: 3px solid #ffffff00;
  }

  .zion-playlist-header {
    padding: 12px;
    min-height: 100px;
  }

  .zion-playlist-title {
    font-size: 1.1rem;
  }

  .zion-playlist-event-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .zion-playlist-event-content {
    width: 100%;
  }

  .zion-playlist-event-actions {
    align-self: flex-end;
    margin-top: 8px;
  }
}

/* Zion Card Footer */
.zion-card-footer {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.zion-edit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 16px;
  background: linear-gradient(90deg, rgba(196, 66, 6, 0.2) 0%, rgba(211, 126, 28, 0.2) 100%);
  color: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  font-size: 0.85rem;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
  text-align: center;
}

.zion-edit-btn.favorite-btn {
  background: linear-gradient(90deg, #604024 0%, #563c26 100%);
  color: #222;
  box-shadow: 0 2px 8px rgba(255,193,7,0.2);
}

.zion-edit-btn.favorite-btn.btn-warning {
  background: linear-gradient(90deg, #cb782f 0%, #ff8117 100%);
  color: #ffffff;
  box-shadow: 0 2px 8px rgba(255,193,7,0.2);
}

.zion-edit-btn.favorite-btn:hover {
  background: linear-gradient(90deg, #d37e1c 0%, #ff8e31 100%);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(255,142,49,0.3);
}

.zion-edit-btn:hover {
  background: linear-gradient(90deg, #d37e1c 0%, #ff8e31 100%);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(255,142,49,0.3);
}

.zion-edit-btn i {
  font-size: 0.9rem;
}

.zion-edit-btn.delete-btn {
  background: transparent;
  box-shadow: none;
  flex: 0 0 auto;
  padding: 8px;
  border: 1px solid rgba(220, 53, 69, 0.3);
  color: #dc3545;
  /*border: 1px solid rgba(255, 255, 255, 0.1);*/
}

.zion-edit-btn.delete-btn:hover {
  background: rgba(220, 53, 69, 0.2);
  color: #dc3545;
  border-color: rgba(220, 53, 69, 0.3);
}

.zion-edit-btn.delete-btn i {
  color: #fff;
  margin: 0;
}

.zion-card-footer .d-flex.gap-2 {
  gap: 0.5rem !important;
}

.zion-card-footer .d-flex.gap-2 .zion-edit-btn {
  min-width: 0;
}

/* Ensure content stays above watermark */
.zion-standard-card .zion-card-header,
.zion-standard-card .zion-card-body,
.zion-standard-card .zion-card-footer {
  position: relative;
  z-index: 2;
}

/* Responsive adjustments for zion standard cards */
@media (max-width: 768px) {
  .zion-standard-card {
    min-height: 260px;
  }

  .zion-card-body {
    padding: 15px;
  }

  .zion-details {
    padding-right: 110px;
  }

  .zion-photo-section {
    top: -50px;
    right: -20px;
  }

  .zion-thumbnail-section {
    top: -70px;
    right: -10px;
  }

  .zion-photo-img {
    width: 120px;
    height: 120px;
  }

  .zion-favorite-section {
    top: -5px;
    right: -5px;
  }

  .zion-jersey-number {
    width: 35px;
    height: 35px;
    font-size: 1rem;
  }

  .zion-detail-item {
    padding: 5px 8px;
    margin-bottom: 4px;
    font-size: 0.8rem;
  }

  .zion-detail-label {
    font-size: 0.75rem;
    min-width: 50px;
  }

  .zion-detail-value {
    font-size: 0.8rem;
  }

  .zion-card-footer .d-flex.gap-2 {
    flex-direction: column;
    gap: 0.75rem !important;
  }
}

@media (max-width: 576px) {
  .zion-details {
    padding-right: 90px;
  }

  .zion-photo-section {
    top: -40px;
    right: -15px;
  }

  .zion-thumbnail-section {
    top: -60px;
    right: -5px;
  }

  .zion-photo-img {
    width: 90px;
    height: 90px;
  }

  .zion-favorite-section {
    top: 0px;
    right: 0px;
  }

  .zion-jersey-number {
    width: 32px;
    height: 32px;
    font-size: 1rem;
  }
}

/* Extra small devices (phones < 480px) */
@media (max-width: 480px) {
  .zion-details {
    padding-right: 70px;
  }

  .zion-photo-section {
    top: -35px;
    right: -10px;
  }

  .zion-thumbnail-section {
    top: -50px;
    right: 0px;
  }

  .zion-photo-img {
    width: 75px;
    height: 75px;
  }

  .zion-favorite-section {
    top: 5px;
    right: 5px;
  }

  .zion-jersey-number {
    width: 28px;
    height: 28px;
    font-size: 0.9rem;
  }
}

/*--------------------------------------------------------------
# Custom Tab Styles for Zion Branding
--------------------------------------------------------------*/

/* Eventos Tabs Styling */
.nav-tabs {
  display: flex;
  justify-content: center;
  width: fit-content;
  border: none;
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  border-radius: 12px;
  padding: 8px;
  margin: 0 auto 2rem auto;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.nav-tabs .nav-item {
  margin: 0;
}

.nav-tabs .nav-link {
  border: none;
  background: transparent;
  color: rgba(255, 255, 255, 0.7);
  font-weight: 600;
  font-size: 0.95rem;
  padding: 12px 24px;
  border-radius: 8px;
  margin: 0 4px;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.nav-tabs .nav-link::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
  border-radius: 8px;
}

.nav-tabs .nav-link:hover {
  color: #ffffff;
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.2) 0%, rgba(211, 126, 28, 0.2) 100%);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(255, 142, 49, 0.2);
}

.nav-tabs .nav-link:hover::before {
  opacity: 1;
}

.nav-tabs .nav-link.active {
  background: linear-gradient(135deg, #c44206 0%, #d37e1c 100%);
  color: #ffffff;
  box-shadow: 0 4px 16px rgba(255, 142, 49, 0.3);
  transform: translateY(-2px);
}

.nav-tabs .nav-link.active::before {
  opacity: 0;
}

.nav-tabs .nav-link i {
  margin-right: 8px;
  font-size: 1rem;
  transition: all 0.3s ease;
}

.nav-tabs .nav-link:hover i {
  transform: scale(1.1);
}

.nav-tabs .nav-link.active i {
  transform: scale(1.1);
  color: #ffffff;
}

/* Tab Content Styling */
.tab-content {
  background: transparent;
  border: none;
  padding: 0;
}

.tab-pane {
  animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Responsive adjustments for tabs */
@media (max-width: 768px) {
  .nav-tabs {
    padding: 6px;
    margin-bottom: 1.5rem;
  }
  
  .nav-tabs .nav-link {
    padding: 10px 16px;
    font-size: 0.9rem;
    margin: 0 2px;
  }
  
  .nav-tabs .nav-link i {
    font-size: 0.9rem;
    margin-right: 6px;
  }
}

@media (max-width: 576px) {
  .nav-tabs {
    flex-direction: column;
    gap: 8px;
  }
  
  .nav-tabs .nav-item {
    width: 100%;
  }
  
  .nav-tabs .nav-link {
    width: 100%;
    text-align: center;
    margin: 0;
  }
}

/*--------------------------------------------------------------
# Notification Dropdown Styles
--------------------------------------------------------------*/

/* Notification Dropdown Container */
.notification-dropdown-menu {
  width: 40vw;
  min-width: 280px;
  max-width: 480px;
  padding: 0;
  border: none;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  overflow: hidden;
  max-height: 70vh;
  overflow-y: auto;
}

.notification-dropdown-menu::before {
  content: '';
  position: absolute;
  top: -8px;
  right: 20px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid #1a1a1a;
}

/* Notification Dropdown Header */
.notification-dropdown-menu .dropdown-header {
  padding: 20px;
  background: linear-gradient(135deg, rgba(196, 66, 6, 0.1) 0%, rgba(211, 126, 28, 0.1) 100%);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  margin: 0;
}

.notification-dropdown-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.notification-dropdown-title {
  display: flex;
  align-items: center;
  color: #ffffff;
  font-weight: 600;
  font-size: 1rem;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.notification-dropdown-title i {
  color: var(--main-color-zion-orange);
  font-size: 1.1rem;
}

.notification-dropdown-counter {
  display: flex;
  align-items: center;
}

.notification-count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 8px;
  border-radius: 12px;
  font-size: 0.8rem;
  font-weight: 700;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
}

.notification-count-badge.has-notifications {
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%);
  color: #ffffff;
  border-color: rgba(255, 142, 49, 0.3);
  box-shadow: 0 2px 8px rgba(255,142,49,0.2);
}

/* Notification Dropdown Items */
.notification-dropdown-item {
  display: flex;
  align-items: flex-start;
  padding: 16px 20px;
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  transition: all 0.3s ease;
  border: none;
  background: transparent;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

.notification-dropdown-item:hover {
  color: #ffffff;
  background: linear-gradient(to right, rgba(196, 66, 6, 0.1), rgba(211, 126, 28, 0.1));
  transform: translateX(5px);
}

.notification-dropdown-item.unread {
  background: linear-gradient(to right, rgba(196, 66, 6, 0.05), rgba(211, 126, 28, 0.05));
  border-left: 3px solid var(--main-color-zion-orange);
}

.notification-dropdown-item.unread:hover {
  background: linear-gradient(to right, rgba(196, 66, 6, 0.15), rgba(211, 126, 28, 0.15));
}

.notification-dropdown-item.empty-state {
  opacity: 0.7;
  cursor: default;
}

.notification-dropdown-item.empty-state:hover {
  transform: none;
  background: transparent;
}

/* Notification Item Icon */
.notification-dropdown-item .dropdown-item-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.05);
  margin-right: 15px;
  transition: all 0.3s ease;
  flex-shrink: 0;
  padding: 0 !important;
}

.notification-dropdown-item.unread .dropdown-item-icon {
  background: rgba(255, 142, 49, 0.1);
  border: 1px solid rgba(255, 142, 49, 0.2);
}

.notification-dropdown-item .dropdown-item-icon i {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
  height: 100%;
  font-size: 1.2rem;
  color: rgba(255, 255, 255, 0.7);
  transition: all 0.3s ease;
}

.notification-dropdown-item.unread .dropdown-item-icon i {
  color: var(--main-color-zion-orange);
}

.notification-dropdown-item:hover .dropdown-item-icon {
  background: rgba(255, 255, 255, 0.1);
}

.notification-dropdown-item:hover .dropdown-item-icon i {
  color: #ffffff;
  transform: scale(1.1);
}

/* Notification Item Content */
.notification-dropdown-item .dropdown-item-content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.notification-dropdown-item .dropdown-item-title {
  display: block;
  font-size: 0.95rem;
  font-weight: 600;
  color: inherit;
  margin-bottom: 2px;
  font-family: 'Unbounded', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  line-height: 1.3;
}

.notification-dropdown-item .dropdown-item-title.unread {
  color: #ffffff;
  font-weight: 700;
}

.notification-dropdown-item .dropdown-item-subtitle {
  display: block;
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.6);
  font-weight: 400;
  line-height: 1.4;
  margin-bottom: 4px;
}

.notification-dropdown-item .dropdown-item-meta {
  display: flex;
  align-items: center;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.4);
  font-weight: 400;
}

.notification-dropdown-item .dropdown-item-meta i {
  font-size: 0.7rem;
  margin-right: 4px;
}

/* Unread Indicator */
.notification-unread-indicator {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  background: var(--main-color-zion-orange);
  border-radius: 50%;
  box-shadow: 0 0 8px rgba(255, 142, 49, 0.5);
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 8px rgba(255, 142, 49, 0.5);
  }
  50% {
    box-shadow: 0 0 12px rgba(255, 142, 49, 0.8);
  }
  100% {
    box-shadow: 0 0 8px rgba(255, 142, 49, 0.5);
  }
}

/* Notification Dropdown Footer */
.notification-dropdown-footer {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
  text-align: center;
}

.footer-text {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.5);
  font-weight: 400;
}

.mark-all-read-btn {
  background: transparent !important;
  color: var(--main-color-zion-orange) !important;
  border-color: var(--main-color-zion-orange) !important;
  font-size: 0.8rem !important;
  padding: 6px 12px !important;
  border-radius: 20px !important;
  transition: all 0.3s ease !important;
  font-weight: 500 !important;
}

.mark-all-read-btn:hover {
  background: var(--main-color-zion-orange) !important;
  color: #ffffff !important;
  border-color: var(--main-color-zion-orange) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(255, 142, 49, 0.3) !important;
}

/* Dropdown Dividers */
.notification-dropdown-menu .dropdown-divider {
  margin: 0;
  border-color: rgba(255, 255, 255, 0.1);
  border-width: 1px;
}

/* Notification Icon in Header */
.notification-icon {
  position: relative;
  transition: all 0.3s ease;
}

.notification-icon:hover {
  transform: translateY(-2px);
}

.notification-counter {
  position: absolute;
  top: -5px;
  right: -5px;
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%) !important;
  border: 2px solid #1a1a1a;
  font-size: 0.7rem;
  font-weight: 700;
  min-width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(255,142,49,0.3);
  animation: bounce 2s infinite;
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-3px);
  }
  60% {
    transform: translateY(-1px);
  }
}

/* Responsive Design */
@media (max-width: 768px) {
  .notification-dropdown-menu {
    min-width: 320px;
    right: 10px;
  }
  
  .notification-dropdown-header {
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
  }
  
  .notification-dropdown-item {
    padding: 14px 16px;
  }
  
  .dropdown-item-icon {
    width: 35px;
    height: 35px;
    margin-right: 12px;
  }
  
  .dropdown-item-icon i {
    font-size: 1.1rem;
  }
  
  .notification-dropdown-item .dropdown-item-title {
    font-size: 0.9rem;
  }
  
  .notification-dropdown-item .dropdown-item-subtitle {
    font-size: 0.8rem;
  }
  
  .notification-dropdown-item .dropdown-item-meta {
    font-size: 0.7rem;
  }
}

/* Animation for dropdown appearance */
.notification-dropdown-menu {
  animation: dropdownSlideIn 0.3s ease-out;
}

/* Hover effects for the notification trigger */
.header-nav .notification-dropdown:hover {
  transform: translateY(-2px);
  transition: transform 0.3s ease;
}

/* Focus states for accessibility */
.notification-dropdown-item:focus {
  outline: 2px solid rgba(211, 126, 28, 0.5);
  outline-offset: -2px;
}

/* Dark mode compatibility */
@media (prefers-color-scheme: dark) {
  .notification-dropdown-menu {
    background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
  }
}

/* Ensure proper styling for notification items */
.notification-dropdown-item,
.notification-dropdown-item:hover,
.notification-dropdown-item:focus,
.notification-dropdown-item:active,
.notification-dropdown-item.show {
  background: transparent !important;
  background-color: transparent !important;
  color: rgba(255,255,255,0.8) !important;
  transition: background 0.2s, color 0.2s, transform 0.2s;
}

.notification-dropdown-item:hover,
.notification-dropdown-item:focus,
.notification-dropdown-item:active,
.notification-dropdown-item.show {
  background: linear-gradient(to right, rgba(196, 66, 6, 0.1), rgba(211, 126, 28, 0.1)) !important;
  color: #fff !important;
}

@media (max-width: 600px) {
  .notification-dropdown-menu {
    width: 95vw;
    min-width: unset;
    max-width: 98vw;
  }
}

/* Language Switcher Button */
.language-dropdown .language-icon {
  background: transparent;
  color: #ff8e31;
  font-size: 1.25rem;
  border-radius: 50%;
  padding: 8px;
  transition: background 0.3s, color 0.3s, box-shadow 0.3s;
  box-shadow: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.language-dropdown .language-icon:hover,
.language-dropdown .language-icon:focus {
  background: rgba(255, 142, 49, 0.15);
  color: #fff;
  box-shadow: 0 0 8px 2px rgba(255, 142, 49, 0.18);
  outline: none;
}

.language-dropdown .language-icon i {
  font-size: 1.3rem;
  transition: color 0.3s, text-shadow 0.3s;
}

.language-dropdown .language-icon:hover i,
.language-dropdown .language-icon:focus i {
  color: #fff;
  text-shadow: 0 0 8px #ff8e31;
}

/* Language Dropdown Menu */
.language-dropdown-menu {
  min-width: 180px;
  border-radius: 12px;
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  box-shadow: 0 10px 40px rgba(0,0,0,0.15);
  border: 1px solid rgba(255,255,255,0.1);
  padding: 8px 0;
  backdrop-filter: blur(10px);
  animation: dropdownSlideIn 0.3s ease-out;
}

.language-dropdown-menu .dropdown-item {
  color: #fff;
  font-weight: 500;
  padding: 12px 24px;
  border-radius: 8px;
  transition: background 0.2s, color 0.2s;
}

.language-dropdown-menu .dropdown-item:hover,
.language-dropdown-menu .dropdown-item:focus {
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%);
  color: #fff;
  outline: none;
}

.language-dropdown-menu .dropdown-item.active,
.language-dropdown-menu .dropdown-item[aria-current='true'] {
  background: linear-gradient(90deg, #c44206 0%, #d37e1c 100%);
  color: #fff;
  font-weight: 700;
}

/*--------------------------------------------------------------
# Eventing Data Table Styles
--------------------------------------------------------------*/

/* Table row click styles for eventing data maintenance */
#datatable-df-data tbody tr {
  cursor: pointer;
  transition: background-color 0.2s;
}

#datatable-df-data tbody tr td:last-child {
  cursor: default;
}

#datatable-df-data tbody tr td:last-child:hover {
  background-color: transparent;
}

#bordered-justified-metricas-activas,
#bordered-justified-metricas-inactivas {
  font-size: 0.8rem;
  font-weight: 300;
}

/*--------------------------------------------------------------
# Report Canvas Styles
--------------------------------------------------------------*/

.report-canvas {
  min-height: 500px;
  background: linear-gradient(135deg, rgba(20, 20, 30, 0.9), rgba(30, 30, 40, 0.85)) !important;
  backdrop-filter: blur(15px) !important;
  -webkit-backdrop-filter: blur(15px) !important;
  border: 2px dashed rgba(255, 255, 255, 0.15) !important;
  border-radius: 16px !important;
  position: relative;
  overflow: hidden;
  box-shadow: 
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    0 8px 32px rgba(0, 0, 0, 0.3),
    0 4px 16px rgba(0, 0, 0, 0.2) !important;
}

.report-canvas::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: 
    radial-gradient(circle at 20% 20%, rgba(13, 110, 253, 0.1) 0%, transparent 50%),
    radial-gradient(circle at 80% 80%, rgba(25, 135, 84, 0.1) 0%, transparent 50%),
    radial-gradient(circle at 40% 60%, rgba(220, 53, 69, 0.05) 0%, transparent 50%);
  pointer-events: none;
  opacity: 0.7;
}

.report-canvas .text-center.text-muted {
  color: rgba(255, 255, 255, 0.7) !important;
  z-index: 1;
  position: relative;
}

.report-canvas .text-center.text-muted i {
  color: rgba(255, 255, 255, 0.4) !important;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
}

.report-canvas .text-center.text-muted h5 {
  color: rgba(255, 255, 255, 0.9) !important;
  font-weight: 600;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

.report-canvas .text-center.text-muted p {
  color: rgba(255, 255, 255, 0.6) !important;
  font-weight: 400;
}

.report-element {
  border-radius: 12px;
  resize: both;
  overflow: auto;
  background: rgba(40, 40, 50, 0.9) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  box-shadow: 
    0 8px 32px rgba(0, 0, 0, 0.2),
    0 4px 16px rgba(0, 0, 0, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.report-element:hover {
  border-color: rgba(13, 110, 253, 0.8) !important;
  transform: translateY(-2px);
  box-shadow: 
    0 12px 40px rgba(0, 0, 0, 0.3),
    0 6px 20px rgba(0, 0, 0, 0.15),
    0 0 0 1px rgba(13, 110, 253, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
}

.report-element .btn {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(5px);
  transition: all 0.2s ease;
}

.report-element .btn:hover {
  background: rgba(255, 255, 255, 0.2) !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
  color: #ffffff !important;
  transform: scale(1.05);
}

.report-element .btn-outline-danger:hover {
  background: rgba(220, 53, 69, 0.8) !important;
  border-color: rgba(220, 53, 69, 1) !important;
}

.report-element .btn-outline-primary:hover {
  background: rgba(13, 110, 253, 0.8) !important;
  border-color: rgba(13, 110, 253, 1) !important;
}

/* Glass-morphism style for list group items */
.list-group-item {
  background: rgba(30, 30, 30, 0.85) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 12px !important;
  color: #ffffff !important;
  margin-bottom: 8px !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-shadow: 
    0 4px 6px rgba(0, 0, 0, 0.1),
    0 1px 3px rgba(0, 0, 0, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
  position: relative;
  overflow: hidden;
}

.list-group-item::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.list-group-item:hover {
  background: rgba(40, 40, 40, 0.9) !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
  transform: translateY(-2px);
  box-shadow: 
    0 8px 25px rgba(0, 0, 0, 0.15),
    0 4px 10px rgba(0, 0, 0, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
}

.list-group-item:hover::before {
  opacity: 1;
}

.list-group-item[draggable="true"] {
  cursor: grab;
}

.list-group-item[draggable="true"]:active {
  cursor: grabbing;
  transform: translateY(0) scale(0.98);
  background: rgba(50, 50, 50, 0.95) !important;
}

.list-group-item i {
  color: rgba(255, 255, 255, 0.8) !important;
  transition: color 0.3s ease;
}

.list-group-item:hover i {
  color: rgba(255, 255, 255, 1) !important;
}

/* Special styling for different sections */
#data-sources .list-group-item {
  background: rgba(13, 110, 253, 0.15) !important;
  border-color: rgba(13, 110, 253, 0.3) !important;
}

#data-sources .list-group-item:hover {
  background: rgba(13, 110, 253, 0.25) !important;
  border-color: rgba(13, 110, 253, 0.5) !important;
}

#chart-types .list-group-item {
  background: rgba(25, 135, 84, 0.15) !important;
  border-color: rgba(25, 135, 84, 0.3) !important;
}

#chart-types .list-group-item:hover {
  background: rgba(25, 135, 84, 0.25) !important;
  border-color: rgba(25, 135, 84, 0.5) !important;
}

#text-elements .list-group-item {
  background: rgba(220, 53, 69, 0.15) !important;
  border-color: rgba(220, 53, 69, 0.3) !important;
}

#text-elements .list-group-item:hover {
  background: rgba(220, 53, 69, 0.25) !important;
  border-color: rgba(220, 53, 69, 0.5) !important;
}

/* Report canvas drag-over effect */
#report-canvas.bg-light {
  background: linear-gradient(135deg, rgba(13, 110, 253, 0.15), rgba(25, 135, 84, 0.1)) !important;
  border: 2px dashed rgba(13, 110, 253, 0.6) !important;
  box-shadow: 
    inset 0 0 50px rgba(13, 110, 253, 0.1),
    0 8px 32px rgba(0, 0, 0, 0.4),
    0 4px 16px rgba(0, 0, 0, 0.2) !important;
}

#report-canvas.bg-light::before {
  background: 
    radial-gradient(circle at 20% 20%, rgba(13, 110, 253, 0.2) 0%, transparent 50%),
    radial-gradient(circle at 80% 80%, rgba(25, 135, 84, 0.2) 0%, transparent 50%),
    radial-gradient(circle at 40% 60%, rgba(220, 53, 69, 0.1) 0%, transparent 50%) !important;
  opacity: 1;
}

/* Card styling improvements for the constructor */
.constructor-reportes .card {
  background: rgba(255, 255, 255, 0.05) !important;
  backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important;
}

.constructor-reportes .card-title {
  color: #ffffff !important;
  font-weight: 600;
}

.constructor-reportes .card-body h6 {
  color: rgba(255, 255, 255, 0.9) !important;
  font-weight: 500;
  margin-bottom: 15px;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* PygWalker Specific Styles */
.pygwalker-canvas {
  min-height: 700px;
  background: linear-gradient(135deg, rgba(20, 20, 30, 0.95), rgba(30, 30, 40, 0.9)) !important;
  backdrop-filter: blur(15px) !important;
  -webkit-backdrop-filter: blur(15px) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 16px !important;
  position: relative;
  overflow: hidden;
  box-shadow: 
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    0 8px 32px rgba(0, 0, 0, 0.3),
    0 4px 16px rgba(0, 0, 0, 0.2) !important;
}

/* Row-based layout optimizations */
.constructor-reportes .section {
  padding-bottom: 2rem;
}

/* Data selection panel styling */
.constructor-reportes .card:first-child {
  margin-bottom: 1.5rem;
}

/* Horizontal form layout improvements */
.constructor-reportes .row .col-lg-3 .form-label {
  font-size: 0.9rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

/* Action buttons styling */
.constructor-reportes .btn-group .btn-sm {
  padding: 0.4rem 0.8rem;
  font-size: 0.85rem;
  border-radius: 6px !important;
}

/* Enhanced spacing for row layout */
.constructor-reportes hr {
  border-color: rgba(255, 255, 255, 0.2) !important;
  opacity: 0.8;
}

/* Info button styling */
.constructor-reportes .btn-outline-info.rounded-circle {
  width: 32px;
  height: 32px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgb(255 84 0 / 10%) !important;
  border-color: rgb(255 147 64 / 40%) !important;
  color: rgb(182 108 29 / 90%) !important;
  transition: all 0.3s ease !important;
}

.constructor-reportes .btn-outline-info.rounded-circle:hover {
  background: rgb(255 84 0 / 10%) !important;
  border-color: rgb(255 147 64 / 40%) !important;
  color: rgb(182 108 29 / 90%) !important;
  transform: scale(1.1);
  box-shadow: 0 4px 15px rgb(255 136 55 / 30%) !important;
}

.constructor-reportes .btn-outline-info.rounded-circle i {
  font-size: 0.875rem;
}

/* Modal enhancements for PygWalker info - Dark Glassy with Zion Orange Theme */
#pygwalkerInfoModal .modal-content {
  background: linear-gradient(135deg, rgba(20, 20, 30, 0.95), rgba(30, 25, 20, 0.9)) !important;
  backdrop-filter: blur(25px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(25px) saturate(1.2) !important;
  border: 1px solid rgba(255, 147, 64, 0.2) !important;
  border-radius: 20px !important;
  box-shadow: 
    0 25px 50px rgba(0, 0, 0, 0.5),
    0 15px 35px rgba(175, 56, 0, 0.1),
    inset 0 1px 0 rgba(255, 147, 64, 0.1) !important;
  position: relative;
  overflow: hidden;
}

#pygwalkerInfoModal .modal-content::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 147, 64, 0.6), transparent);
  z-index: 1;
}

#pygwalkerInfoModal .modal-header {
  border-bottom: 1px solid rgba(255, 147, 64, 0.15) !important;
  background: linear-gradient(135deg, rgba(175, 56, 0, 0.15), rgba(215, 118, 11, 0.1)) !important;
  backdrop-filter: blur(10px) !important;
  border-radius: 20px 20px 0 0 !important;
  position: relative;
  z-index: 2;
}

#pygwalkerInfoModal .modal-header::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(255, 84, 0, 0.1), rgba(255, 147, 64, 0.05));
  border-radius: 20px 20px 0 0;
  z-index: -1;
}

#pygwalkerInfoModal .modal-title {
  color: #ffffff !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  font-weight: 600;
  background: linear-gradient(135deg, #ffffff, rgba(255, 147, 64, 0.9));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

#pygwalkerInfoModal .modal-body {
  color: #ffffff !important;
  background: rgba(20, 20, 30, 0.3) !important;
  backdrop-filter: blur(5px) !important;
  position: relative;
}

#pygwalkerInfoModal .text-primary {
  color: rgba(255, 147, 64, 0.9) !important;
  font-weight: 600;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

#pygwalkerInfoModal .bg-light {
  background: linear-gradient(135deg, rgba(40, 35, 30, 0.6), rgba(50, 40, 30, 0.4)) !important;
  backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 147, 64, 0.15) !important;
  border-radius: 12px !important;
  transition: all 0.3s ease !important;
  position: relative;
  overflow: hidden;
}

#pygwalkerInfoModal .bg-light::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 147, 64, 0.1), transparent);
  transition: left 0.6s ease;
}

#pygwalkerInfoModal .bg-light:hover::before {
  left: 100%;
}

#pygwalkerInfoModal .bg-light:hover {
  border-color: rgba(255, 147, 64, 0.3) !important;
  box-shadow: 0 4px 20px rgba(175, 56, 0, 0.2) !important;
  transform: translateY(-2px);
}

#pygwalkerInfoModal .text-muted {
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: 0.875rem;
}

#pygwalkerInfoModal .alert-info {
  background: linear-gradient(135deg, rgba(255, 84, 0, 0.15), rgba(175, 56, 0, 0.1)) !important;
  border: 1px solid rgba(255, 147, 64, 0.3) !important;
  border-radius: 12px !important;
  color: #ffffff !important;
  backdrop-filter: blur(10px) !important;
  box-shadow: 
    0 4px 15px rgba(175, 56, 0, 0.2),
    inset 0 1px 0 rgba(255, 147, 64, 0.1) !important;
}

#pygwalkerInfoModal .btn-secondary {
  background: linear-gradient(135deg, rgba(60, 60, 70, 0.8), rgba(50, 50, 60, 0.6)) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(10px) !important;
  transition: all 0.3s ease !important;
}

#pygwalkerInfoModal .btn-secondary:hover {
  background: linear-gradient(135deg, rgba(70, 70, 80, 0.9), rgba(60, 60, 70, 0.7)) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
}

#pygwalkerInfoModal .btn-primary {
  background: linear-gradient(135deg, #af3800, #d7760b, #ff8337) !important;
  border: none !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  box-shadow: 
    0 4px 15px rgba(175, 56, 0, 0.4),
    inset 0 1px 0 rgba(255, 147, 64, 0.2) !important;
  transition: all 0.3s ease !important;
}

#pygwalkerInfoModal .btn-primary:hover {
  background: linear-gradient(135deg, #c44100, #e8850c, #ff9149) !important;
  transform: translateY(-2px);
  box-shadow: 
    0 6px 20px rgba(175, 56, 0, 0.5),
    inset 0 1px 0 rgba(255, 147, 64, 0.3) !important;
}

#pygwalkerInfoModal .modal-footer {
  border-top: 1px solid rgba(255, 147, 64, 0.15) !important;
  background: linear-gradient(135deg, rgba(30, 25, 20, 0.8), rgba(20, 20, 30, 0.6)) !important;
  backdrop-filter: blur(10px) !important;
  border-radius: 0 0 20px 20px !important;
}

#pygwalkerInfoModal .list-unstyled li {
  transition: all 0.3s ease;
  padding: 4px 0;
  border-radius: 6px;
}

#pygwalkerInfoModal .list-unstyled li:hover {
  background: rgba(255, 147, 64, 0.05) !important;
  padding-left: 8px;
}

#pygwalkerInfoModal .bi-check-circle-fill {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.3));
}

/* Enhanced modal backdrop */
#pygwalkerInfoModal.modal {
  backdrop-filter: blur(8px) !important;
}

#pygwalkerInfoModal .modal-backdrop {
  background: linear-gradient(135deg, rgba(0, 0, 0, 0.6), rgba(20, 10, 5, 0.4)) !important;
}

.pygwalker-canvas iframe {
  background: transparent !important;
  border-radius: 12px !important;
}

/* Feature items styling */
.feature-item i {
  margin-bottom: 10px;
  opacity: 0.8;
  transition: all 0.3s ease;
}

.feature-item:hover i {
  opacity: 1;
  transform: scale(1.1);
}

.feature-item h6 {
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: 0.9rem;
  margin-bottom: 5px;
}

.feature-item small {
  color: rgba(255, 255, 255, 0.6) !important;
  font-size: 0.75rem;
}

/* Alert styling for PygWalker status */
.constructor-reportes .alert {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 12px !important;
  color: #ffffff !important;
  backdrop-filter: blur(10px) !important;
}

.constructor-reportes .alert-success {
  background: rgba(25, 135, 84, 0.2) !important;
  border-color: rgba(25, 135, 84, 0.4) !important;
}

.constructor-reportes .alert-warning {
  background: rgba(255, 193, 7, 0.2) !important;
  border-color: rgba(255, 193, 7, 0.4) !important;
}

.constructor-reportes .alert-info {
  background: rgba(13, 110, 253, 0.2) !important;
  border-color: rgba(13, 110, 253, 0.4) !important;
}

/* Form controls in PygWalker section */
.constructor-reportes .form-select,
.constructor-reportes .form-control {
  background: rgba(40, 40, 50, 0.8) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: #ffffff !important;
  backdrop-filter: blur(5px) !important;
}

.constructor-reportes .form-select:focus,
.constructor-reportes .form-control:focus {
  background: rgba(50, 50, 60, 0.9) !important;
  border-color: rgba(13, 110, 253, 0.6) !important;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25) !important;
}

.constructor-reportes .form-select option {
  background: rgba(40, 40, 50, 0.95) !important;
  color: #ffffff !important;
}

/* Button enhancements */
.constructor-reportes .btn-primary {
  background: linear-gradient(45deg, #af3800, #d7760b) !important;
  border: none !important;
  box-shadow: 0 4px 15px rgb(171 100 51 / 30%) !important;
  transition: all 0.3s ease !important;
}

.constructor-reportes .btn-primary:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgb(253 122 13 / 40%) !important;
}

.constructor-reportes .btn-primary:disabled {
  background: rgba(108, 117, 125, 0.5) !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Loading spinner customization */
.spinner-border {
  border-color: rgba(13, 110, 253, 0.3) !important;
  border-right-color: #0d6efd !important;
}

/* Data info panel */
#data-info-panel .alert {
  margin-bottom: 0 !important;
  font-size: 0.9rem;
}

/* Fullscreen styles */
.pygwalker-canvas:fullscreen {
  background: #1a1a2e !important;
  padding: 20px;
}

.pygwalker-canvas:fullscreen iframe {
  height: calc(100vh - 40px) !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .pygwalker-canvas {
    min-height: 400px;
  }
  
  .feature-item {
    margin-bottom: 20px;
  }
  
  .feature-item i {
    font-size: 1.5rem !important;
  }
}

/* Video overlay styling */
.video-logo-overlay {
  bottom: 15px;
  left: 15px;
  z-index: 10;
  pointer-events: none; /* Allows video controls to work underneath */
}

.video-watermark-logo {
  height: 40px;
  width: auto;
  opacity: 0.75;
  transition: opacity 0.3s ease;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
}

/* Slightly more transparent when video is paused */
.video-container:hover .video-watermark-logo {
  opacity: 0.6;
}

/* Ensure video container has proper positioning */
.video-container {
  position: relative;
  background: #000;
  border-radius: 8px;
  overflow: hidden;
}

/* Additional video styling for professional look */
#match-video {
  border-radius: 8px;
}

/*--------------------------------------------------------------
# Custom Notifications
--------------------------------------------------------------*/
.custom-notification {
  position: fixed;
  top: 80px;
  right: 20px;
  z-index: 9999;
  min-width: 300px;
  max-width: 400px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  border-radius: 8px;
  animation: slideInRight 0.3s ease-out;
}

@keyframes slideInRight {
  from { 
    transform: translateX(100%); 
    opacity: 0; 
  }
  to { 
    transform: translateX(0); 
    opacity: 1; 
  }
}

@keyframes slideOutRight {
  from { 
    transform: translateX(0); 
    opacity: 1; 
  }
  to { 
    transform: translateX(100%); 
    opacity: 0; 
  }
}

/* Responsive adjustments for notifications */
@media (max-width: 768px) {
  .custom-notification {
    top: 60px;
    right: 10px;
    left: 10px;
    min-width: auto;
    max-width: none;
  }
}

/* Enhanced notification styles */
.custom-notification {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  font-weight: 500;
  letter-spacing: 0.3px;
}

.custom-notification.alert-success {
  background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
  border: none;
  color: white;
}

.custom-notification.alert-danger {
  background: linear-gradient(135deg, #dc3545 0%, #e74c3c 100%);
  border: none;
  color: white;
}

.custom-notification.alert-warning {
  background: linear-gradient(135deg, #ffc107 0%, #fd7e14 100%);
  border: none;
  color: #212529;
}

.custom-notification.alert-info {
  background: linear-gradient(135deg, #17a2b8 0%, #6f42c1 100%);
  border: none;
  color: white;
}

/*--------------------------------------------------------------
# Eventos Configuration - Dual Table Layout
--------------------------------------------------------------*/
.eventos-table {
  margin-bottom: 0;
}


.eventos-table tbody tr {
  transition: background-color 0.2s ease;
}

.eventos-table tbody tr:hover {
  background-color: rgba(255, 255, 255, 0.05);
}

/* Add subtle border between left and right tables */
#eventosTableLeft {
  border-right: 2px solid rgba(255, 132, 0, 0.3);
  padding-right: 15px;
}

#eventosTableRight {
  padding-left: 15px;
}

.eventos-table td {
  padding: 10px 8px;
  vertical-align: middle;
}

/* Make badges more compact */
.eventos-table .badge {
  font-size: 0.75rem;
  padding: 4px 8px;
}

/* Search input styling */
#searchEventos {
  border-top-right-radius: 0.375rem !important;
  border-bottom-right-radius: 0.375rem !important;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* Clear search button styling */
#clearSearch {
  border-left: none;
}

#clearSearch:hover {
  background-color: rgba(220, 53, 69, 0.1);
  color: #dc3545;
}

/* Square Checkboxes - Orange gradient styling */
.form-check-input {
  width: 1.25rem;
  height: 1.25rem;
  cursor: pointer;
  border: 2px solid rgba(255, 132, 0, 0.3);
  background-color: #1a1a1a;
  background-image: none;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  transition: background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.form-check-input:focus {
  border-color: rgba(255, 132, 0, 0.5);
  box-shadow: 0 0 0 0.25rem rgba(255, 132, 0, 0.25);
  outline: none;
}

.form-check-input:checked {
  background-color: #d2691e;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8l2 2 6-6'/%3e%3c/svg%3e");
  border-color: #ff8400;
  box-shadow: 0 2px 8px rgba(255, 132, 0, 0.4);
}

.form-check-input:checked:focus {
  border-color: #ff8400;
  box-shadow: 0 0 0 0.25rem rgba(255, 132, 0, 0.35);
}

.form-check-input:hover:not(:disabled) {
  border-color: rgba(255, 132, 0, 0.6);
}

.form-check-input:checked:hover:not(:disabled) {
  background-color: #ffa500;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8l2 2 6-6'/%3e%3c/svg%3e");
  box-shadow: 0 2px 10px rgba(255, 132, 0, 0.5);
}

/* Event toggle switches - Orange gradient styling */
.form-check-input.evento-toggle {
  width: 3rem;
  height: 1.5rem;
  cursor: pointer;
  border: 2px solid rgba(255, 132, 0, 0.3);
  background-color: #1a1a1a;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
  background-position: left center;
  background-size: contain;
  background-repeat: no-repeat;
  transition: background-position 0.15s ease-in-out, background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.form-check-input.evento-toggle:focus {
  border-color: rgba(255, 132, 0, 0.5);
  box-shadow: 0 0 0 0.25rem rgba(255, 132, 0, 0.25);
  outline: none;
}

.form-check-input.evento-toggle:checked {
  background-color: #d2691e;
  background-position: right center;
  border-color: #ff8400;
  box-shadow: 0 2px 8px rgba(255, 132, 0, 0.4);
}

.form-check-input.evento-toggle:checked:focus {
  border-color: #ff8400;
  box-shadow: 0 0 0 0.25rem rgba(255, 132, 0, 0.35);
}

.form-check-input.evento-toggle:hover:not(:disabled) {
  border-color: rgba(255, 132, 0, 0.6);
}

.form-check-input.evento-toggle:checked:hover:not(:disabled) {
  background-color: #ffa500;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
  box-shadow: 0 2px 10px rgba(255, 132, 0, 0.5);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  #eventosTableLeft {
    border-right: none;
    border-bottom: 2px solid rgba(255, 132, 0, 0.3);
    margin-bottom: 20px;
    padding-right: 0;
  }
  
  #eventosTableRight {
    padding-left: 0;
  }
}

/*--------------------------------------------------------------
# Video Analysis - Drawing Tools
--------------------------------------------------------------*/
/* Dark Semi-Transparent Drawing Tools */
.drawing-tools-dark {
  background: rgba(20, 20, 30, 0.92);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  padding: 1.25rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}

/* Consistent height for all button groups */
.drawing-tools-dark .btn-group {
  height: 38px;
}

/* Consistent height for all buttons in drawing tools */
.drawing-tools-dark .btn {
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
}

/* Tool Buttons */
.btn-tool {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #e0e0e0;
  transition: all 0.2s ease;
  font-size: 1rem;
}

.btn-tool:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.3);
  color: #ffffff;
  transform: translateY(-1px);
}

.btn-tool.active {
  background: linear-gradient(135deg, #c44206 0%, #d37e1c 100%);
  color: #ffffff;
  box-shadow: 0 4px 16px rgba(255, 142, 49, 0.3);
  transform: translateY(-2px);
}

/* Color Buttons */
.btn-color {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #e0e0e0;
  transition: all 0.2s ease;
  font-size: 1rem;
}

.btn-color:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.3);
  color: #ffffff;
  transform: translateY(-1px);
}

.btn-color.active {
  background: linear-gradient(135deg, #c44206 0%, #d37e1c 100%);
  color: #ffffff;
  box-shadow: 0 4px 16px rgba(255, 142, 49, 0.3);
  transform: translateY(-2px);
}

.btn-color i {
  /*color: #ffffff;*/
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));
}

/* Width Buttons */
.btn-width {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #e0e0e0;
  transition: all 0.2s ease;
  font-size: 1.2rem;
}

.btn-width:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.3);
  color: #ffffff;
  transform: translateY(-1px);
}

.btn-width.active {
  background: linear-gradient(135deg, #c44206 0%, #d37e1c 100%);
  color: #ffffff;
  box-shadow: 0 4px 16px rgba(255, 142, 49, 0.3);
  transform: translateY(-2px);
}

/* Action Buttons */
.btn-action {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #e0e0e0;
  font-size: 1rem;
  transition: all 0.2s ease;
}

.btn-action:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.3);
  color: #ffffff;
  transform: translateY(-1px);
}

.btn-action:active {
  transform: translateY(0);
}

/* Disabled button styles */
.btn-tool:disabled,
.btn-color:disabled,
.btn-width:disabled,
.btn-action:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

/* ============================================
   RESIZABLE PANELS STYLES
   ============================================ */

.resizable-panels-container {
    display: flex;
    width: 100%;
    position: relative;
    flex: 1;
    min-height: 0; /* allow children to control overflow */
    overflow: hidden;
}

.resizable-panel {
    flex: 1;
    overflow: hidden;
    min-width: 300px;
    max-width: calc(100% - 300px);
}

.video-panel {
    flex: 1.75; /* 7/4 ratio to match original col-lg-7 */
}

.event-panel {
    flex: 1.25; /* 5/4 ratio to match original col-lg-5 */
}

/* Hub Eventing v2 specific panel ratios */
#left-panel-section {
    flex: 1; /* Start with equal flex, will be adjusted by JS */
    min-width: 300px;
    max-width: calc(100% - 300px);
}

#right-panel-section {
    flex: 1; /* Start with 1:1 ratio to match Bootstrap col-md-8:col-md-4 */
    min-width: 300px;
    max-width: calc(100% - 300px);
}

.panel-resizer {
    width: 4px;
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 5vh;
    background: linear-gradient(90deg,
        rgba(255, 255, 255, 0.1) 0%,
        rgba(255, 132, 0, 0.15) 50%,
        rgba(255, 255, 255, 0.1) 100%);
    cursor: col-resize;
    position: relative;
    flex-shrink: 0;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    /*border-left: 1px solid rgba(255, 132, 0, 0.2);*/
    /*border-right: 1px solid rgba(255, 132, 0, 0.2);*/
    box-shadow:
        inset 0 0 10px rgba(255, 132, 0, 0.1),
        0 2px 8px rgba(0, 0, 0, 0.1);
}

.panel-resizer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(255, 132, 0, 0.3) 50%,
        transparent 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.panel-resizer:hover {
    /*width: 6px;*/
    background: linear-gradient(90deg,
        rgba(255, 255, 255, 0.2) 0%,
        rgba(255, 132, 0, 0.4) 50%,
        rgba(255, 255, 255, 0.2) 100%);
    border-color: rgba(255, 132, 0, 0.4);
    box-shadow:
        inset 0 0 15px rgba(255, 132, 0, 0.2),
        0 4px 12px rgba(0, 0, 0, 0.15),
        0 0 20px rgba(255, 132, 0, 0.1);
}

.panel-resizer:hover::before {
    opacity: 1;
}

.panel-resizer:active {
    /*width: 8px;*/
    background: linear-gradient(90deg,
        rgba(255, 255, 255, 0.3) 0%,
        var(--main-color-zion-orange) 50%,
        rgba(255, 255, 255, 0.3) 100%);
    border-color: var(--main-color-zion-orange);
    box-shadow:
        inset 0 0 20px rgba(255, 132, 0, 0.3),
        0 6px 16px rgba(0, 0, 0, 0.2),
        0 0 30px rgba(255, 132, 0, 0.2);
}

.resizer-handle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1px;
    height: 30px;
    background: linear-gradient(180deg,
        rgba(255, 132, 0, 0.6) 0%,
        rgba(255, 132, 0, 0.9) 50%,
        rgba(255, 132, 0, 0.6) 100%);
    border-radius: 0.5px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow:
        0 0 6px rgba(255, 132, 0, 0.4),
        inset 0 0 2px rgba(255, 255, 255, 0.3);
}

.panel-resizer:hover .resizer-handle {
    height: 40px;
    background: linear-gradient(180deg,
        rgba(255, 132, 0, 0.8) 0%,
        var(--main-color-zion-orange) 50%,
        rgba(255, 132, 0, 0.8) 100%);
    box-shadow:
        0 0 10px rgba(255, 132, 0, 0.6),
        0 0 20px rgba(255, 132, 0, 0.3),
        inset 0 0 3px rgba(255, 255, 255, 0.4);
}

/* Ensure proper layout on smaller screens */
@media (max-width: 991.98px) {
    .resizable-panels-container {
        flex-direction: column;
    }

    .panel-resizer {
        width: 100%;
        height: 4px;
        cursor: row-resize;
        border-left: none;
        border-right: none;
        border-top: 1px solid rgba(255, 132, 0, 0.2);
        border-bottom: 1px solid rgba(255, 132, 0, 0.2);
        background: linear-gradient(180deg,
            rgba(255, 255, 255, 0.1) 0%,
            rgba(255, 132, 0, 0.15) 50%,
            rgba(255, 255, 255, 0.1) 100%);
        box-shadow:
            inset 0 0 10px rgba(255, 132, 0, 0.1),
            0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .panel-resizer::before {
        background: linear-gradient(180deg,
            transparent 0%,
            rgba(255, 132, 0, 0.3) 50%,
            transparent 100%);
    }

    .panel-resizer:hover {
        height: 6px;
        background: linear-gradient(180deg,
            rgba(255, 255, 255, 0.2) 0%,
            rgba(255, 132, 0, 0.4) 50%,
            rgba(255, 255, 255, 0.2) 100%);
        border-color: rgba(255, 132, 0, 0.4);
    }

    .panel-resizer:active {
        height: 8px;
        background: linear-gradient(180deg,
            rgba(255, 255, 255, 0.3) 0%,
            var(--main-color-zion-orange) 50%,
            rgba(255, 255, 255, 0.3) 100%);
        border-color: var(--main-color-zion-orange);
    }

    .resizer-handle {
        width: 30px;
        height: 1px;
        background: linear-gradient(90deg,
            rgba(255, 132, 0, 0.6) 0%,
            rgba(255, 132, 0, 0.9) 50%,
            rgba(255, 132, 0, 0.6) 100%);
        box-shadow:
            0 0 6px rgba(255, 132, 0, 0.4),
            inset 0 0 2px rgba(255, 255, 255, 0.3);
    }

    .panel-resizer:hover .resizer-handle {
        width: 40px;
        background: linear-gradient(90deg,
            rgba(255, 132, 0, 0.8) 0%,
            var(--main-color-zion-orange) 50%,
            rgba(255, 132, 0, 0.8) 100%);
    }

    .resizable-panel {
        min-width: auto;
        max-width: none;
        min-height: 300px;
    }
}

/* ============================================
   PLAYLIST STYLES
   ============================================ */

.playlist-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%);
}

.playlist-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    border-color: rgba(255, 132, 0, 0.3);
}

.playlist-header h6 {
    color: #ffffff;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.playlist-stats small {
    color: rgba(255, 255, 255, 0.7);
}

.playlist-actions {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 1rem;
}

.playlist-event-item {
    transition: background-color 0.2s ease;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.playlist-event-item:hover {
    background-color: rgba(255, 132, 0, 0.1);
}

.playlist-event-item.active {
    background-color: rgba(255, 132, 0, 0.15);
    border-left: 3px solid var(--main-color-zion-orange);
}

.playlist-event-playing {
    background: linear-gradient(135deg, rgba(255, 132, 0, 0.15) 0%, rgba(255, 142, 49, 0.1) 100%);
    border-left: 4px solid var(--main-color-zion-orange);
    box-shadow: 0 2px 8px rgba(255, 132, 0, 0.3);
    position: relative;
    animation: playlist-playing-pulse 2s ease-in-out infinite;
}

.playlist-event-playing::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, transparent 30%, rgba(255, 142, 49, 0.05) 50%, transparent 70%);
    /*animation: playlist-playing-shimmer 3s ease-in-out infinite;*/
    pointer-events: none;
}

.playlist-event-playing .playlist-event-number .badge {
    background: linear-gradient(135deg, #28a745, #20c997) !important;
    box-shadow: 0 0 8px rgba(40, 167, 69, 0.5);
    /*animation: playlist-playing-badge-pulse 1.5s ease-in-out infinite;*/
}

.playlist-event-playing .playlist-event-number .badge::before {
    content: 'â–¶';
    margin-right: 4px;
    font-size: 0.7em;
    /*animation: playlist-playing-icon-bounce 1s ease-in-out infinite;*/
}

@keyframes playlist-playing-pulse {
    0%, 100% {
        box-shadow: 0 2px 8px rgba(255, 132, 0, 0.3);
    }
    50% {
        box-shadow: 0 2px 12px rgba(255, 132, 0, 0.5);
    }
}

@keyframes playlist-playing-shimmer {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(100%);
    }
}

@keyframes playlist-playing-badge-pulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 8px rgba(40, 167, 69, 0.5);
    }
    50% {
        transform: scale(1.1);
        box-shadow: 0 0 12px rgba(40, 167, 69, 0.7);
    }
}

@keyframes playlist-playing-icon-bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-2px);
    }
    60% {
        transform: translateY(-1px);
    }
}

.playlist-event-number .badge {
    background-color: var(--main-color-zion-orange) !important;
    color: #ffffff;
}

.playlist-event-actions .btn-outline-danger:hover {
    background-color: rgba(220, 53, 69, 0.1);
    border-color: #dc3545;
}

/* Add to Playlist Modal - Modern Glassy Design */
#addToPlaylistModal .modal-content {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 16px;
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.1),
        0 1px 0 rgba(255, 255, 255, 0.3) inset,
        0 -1px 0 rgba(0, 0, 0, 0.1) inset;
}

#addToPlaylistModal .modal-header {
    background: rgba(255, 255, 255, 0.8);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 16px 16px 0 0;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

#addToPlaylistModal .modal-body {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}

.existing-playlists-list {
    max-height: 200px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 132, 0, 0.3) rgba(255, 255, 255, 0.1);
}

.existing-playlists-list::-webkit-scrollbar {
    width: 6px;
}

.existing-playlists-list::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 3px;
}

.existing-playlists-list::-webkit-scrollbar-thumb {
    background: rgba(255, 132, 0, 0.3);
    border-radius: 3px;
    transition: background-color 0.2s ease;
}

.existing-playlists-list::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 132, 0, 0.5);
}

.existing-playlists-list .btn {
    margin-bottom: 0.25rem;
    border: 1px solid rgba(0, 0, 0, 0.1);
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    color: #333;
    border-radius: 8px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    text-align: left;
    font-weight: 500;
}

.existing-playlists-list .btn:hover {
    background: rgba(255, 132, 0, 0.1);
    border-color: rgba(255, 132, 0, 0.3);
    color: #333;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(255, 132, 0, 0.15);
}

.existing-playlists-list .btn i {
    color: rgba(255, 132, 0, 0.8);
    transition: color 0.2s ease;
}

.existing-playlists-list .btn:hover i {
    color: #ff8400;
}

.existing-playlists-list .btn small.text-muted {
    color: rgba(0, 0, 0, 0.6) !important;
    font-weight: 400;
}

/* Modal backdrop with blur effect */
#addToPlaylistModal.modal {
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

#addToPlaylistModal .modal-backdrop {
    background: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

/* Quick Create Playlist Modal - Modern Glassy Design */
#quickCreatePlaylistModal .modal-content {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 16px;
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.1),
        0 1px 0 rgba(255, 255, 255, 0.3) inset,
        0 -1px 0 rgba(0, 0, 0, 0.1) inset;
}

#quickCreatePlaylistModal .modal-header {
    background: rgba(255, 255, 255, 0.8);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 16px 16px 0 0;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

#quickCreatePlaylistModal .modal-body {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}

#quickCreatePlaylistModal.modal {
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

#quickCreatePlaylistModal .modal-backdrop {
    background: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

/* ====================================================================
   Consolidated Player Stats Table (Match Report)
   ==================================================================== */

/* Base table styling */
#consolidated-player-stats-table {
  font-size: 0.85rem;
  border-collapse: separate;
  border-spacing: 0;
}

/* Group header styling with Unbounded font */
#consolidated-player-stats-table .table-group-header th {
  padding: 12px 8px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 0.75rem;
  font-family: 'Unbounded', sans-serif;
}

/* Column headers */
#consolidated-player-stats-table thead tr:last-child th {
  padding: 10px 8px;
  font-size: 0.75rem;
  /*white-space: nowrap;*/
  vertical-align: bottom;
  text-align: center; /* Center all headers by default */
  border-bottom: 1px solid #495057; /* Add border to separate headers from data */
}

/* Left-align player name header specifically */
#consolidated-player-stats-table thead tr:last-child th:nth-child(2) {
  text-align: left;
}

/* Table body cells */
#consolidated-player-stats-table tbody td {
  /*padding: 8px 6px;*/
  vertical-align: middle;
  text-align: center; /* Center all cells by default */
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

/* Left-align player name cells specifically */
#consolidated-player-stats-table tbody td:nth-child(2) {
  text-align: left;
}

/* Totals footer row styling */
#consolidated-player-stats-table tfoot {
  position: sticky;
  bottom: 0;
  z-index: 15;
}

#consolidated-player-stats-table tfoot tr.totals-row {
  background: linear-gradient(135deg, #1a1a1a 0%, #2a2a2a 100%);
  font-weight: 600;
  font-family: 'Unbounded', sans-serif;
  border-top: 2px solid var(--main-color-zion-orange);
  box-shadow: -2px 3px 3px 1px rgba(255, 142, 49, 0.3);
}

#consolidated-player-stats-table tfoot tr.totals-row td {
  padding: 12px 8px;
  vertical-align: middle;
  text-align: center;
  font-weight: 700;
  color: #ffffff;
  background-color: transparent;
}

#consolidated-player-stats-table tfoot tr.totals-row td:nth-child(2) {
  text-align: left;
  color: var(--main-color-zion-orange);
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

#consolidated-player-stats-table tfoot tr.totals-row .text-warning {
  color: var(--main-color-zion-orange) !important;
  font-size: 1.1rem;
}

/* Smooth hover effect on rows - subtle highlight */
#consolidated-player-stats-table tbody tr {
  cursor: pointer;
  transition: all 0.2s ease;
}

#consolidated-player-stats-table tbody tr:hover td {
  background-color: rgba(255, 255, 255, 0.05) !important;
  border-color: rgb(73, 80, 87) !important;
}

/* Group header sticky placeholders (align with sticky columns) */
.table-group-header th.group-header-sticky {
  position: sticky;
  top: 0;
  z-index: 40;
  background: var(--bs-info, #0dcaf0) !important;
  color: #fff;
}

.table-group-header th.group-header-sticky-1 { left: 0; }
.table-group-header th.group-header-sticky-2 { left: 43px; }
.table-group-header th.group-header-sticky-3 { left: 86px; }
.table-group-header th.group-header-sticky-4 { left: 129px; }

.table-group-header th.group-header-sticky-last {
  border-right: 2px solid #495057;
}

/* Horizontal scrollbar styling aligned with sidebar look */
.table-scrollbar-sidebar {
  scrollbar-width: thin;
  scrollbar-color: #974f0082 transparent;
}

.table-scrollbar-sidebar::-webkit-scrollbar {
  height: 15px;
}

.table-scrollbar-sidebar::-webkit-scrollbar-track {
  background: #ffffff00;
  border-radius: 10px;
}

.table-scrollbar-sidebar::-webkit-scrollbar-thumb {
  background: #90997a5d;
  border-radius: 10px;
}

.table-scrollbar-sidebar::-webkit-scrollbar-thumb:hover {
  background: #cf4a21d9;
}

/* Clicked/Active row highlight - Zion brand gradient at ROW level */
#consolidated-player-stats-table tbody tr.row-highlighted {
  position: relative;
}

/* Gradient overlay spanning the entire row using box-shadow (no layout shift) */
#consolidated-player-stats-table tbody tr.row-highlighted::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, 
    rgba(236, 53, 29, 0.25) 0%, 
    rgba(255, 142, 49, 0.25) 50%, 
    rgba(236, 53, 29, 0.25) 100%);
  pointer-events: none;
  z-index: 0;
  /* Use box-shadow instead of borders to avoid layout shift */
  box-shadow: 
    inset 0 1px 0 0 rgba(255, 142, 49, 0.3),
    inset 0 -1px 0 0 rgba(255, 142, 49, 0.3),
    inset 0 0 20px rgba(236, 53, 29, 0.15);
}

/* Hover effect on already highlighted rows - intensified gradient */
#consolidated-player-stats-table tbody tr.row-highlighted:hover::after {
  background: linear-gradient(90deg, 
    rgba(236, 53, 29, 0.35) 0%, 
    rgba(255, 142, 49, 0.35) 50%, 
    rgba(236, 53, 29, 0.35) 100%);
  box-shadow: 
    inset 0 1px 0 0 rgba(255, 142, 49, 0.4),
    inset 0 -1px 0 0 rgba(255, 142, 49, 0.4),
    inset 0 0 25px rgba(236, 53, 29, 0.2);
}

/* Muted color for zero or empty values */
#consolidated-player-stats-table tbody td .text-muted-value {
  color: #6c757d !important;
  opacity: 0.6;
}

/* Zion Impact Badge Tiers */
/* Tier 1: Negative or Zero (Red) */
#consolidated-player-stats-table .badge.zion-impact-tier-negative {
  background-color: #dc3545 !important;
  color: #ffffff !important;
}

/* Tier 2: Low Positive (Dark Grey) */
#consolidated-player-stats-table .badge.zion-impact-tier-low {
  background: linear-gradient(135deg, #4a4a4a 0%, #5a5a5a 100%) !important;
  color: #e0e0e0 !important;
}

/* Tier 3: Medium Positive (Light Grey) */
#consolidated-player-stats-table .badge.zion-impact-tier-medium {
  background: linear-gradient(135deg, #7a7a7a 0%, #9a9a9a 100%) !important;
  color: #ffffff !important;
}

/* Tier 4: High Positive (Zion Red Gradient) */
#consolidated-player-stats-table .badge.zion-impact-tier-high {
  background: linear-gradient(135deg, #ec351d 0%, #ff8e31 100%) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 8px rgba(236, 53, 29, 0.3) !important;
}

/* InformaciÃ³n General header - Black background */
#consolidated-player-stats-table .bg-info {
  background-color: #000000 !important;
  color: #ffffff !important;
}

/* Eventos Defensivos header - Yellow-ish (brand color) */
#consolidated-player-stats-table .bg-primary {
  background-color: #ffb800 !important;
  color: #000000 !important;
}

/* Eventos Ofensivos header - Dark Orange (brand color) */
#consolidated-player-stats-table .bg-success {
  background-color: #ff8e31 !important;
  color: #000000 !important;
}

/* Defensive events subtle background */
#consolidated-player-stats-table .bg-primary-subtle {
  background-color: rgba(255, 184, 0, 0.15) !important;
}

/* Offensive events subtle background */
#consolidated-player-stats-table .bg-success-subtle {
  background-color: rgba(255, 142, 49, 0.15) !important;
}

/* Make table horizontally scrollable on small screens */
.table-responsive {
  overflow-x: auto;
  padding-left: 0px;
  -webkit-overflow-scrolling: touch;
}

/* Sticky columns for better UX on larger screens */
@media (min-width: 992px) {
  /* Freeze first 4 columns (Foto, Jugador, Num., Edad) */
  #consolidated-player-stats-table thead th:nth-child(1),
  #consolidated-player-stats-table thead th:nth-child(2),
  #consolidated-player-stats-table thead th:nth-child(3),
  #consolidated-player-stats-table thead th:nth-child(4),
  #consolidated-player-stats-table tbody td:nth-child(1),
  #consolidated-player-stats-table tbody td:nth-child(2),
  #consolidated-player-stats-table tbody td:nth-child(3),
  #consolidated-player-stats-table tbody td:nth-child(4) {
    position: sticky;
    background-color: #000000;
    z-index: 10;
  }
  
  /* Column 1: Foto */
  #consolidated-player-stats-table thead th:nth-child(1),
  #consolidated-player-stats-table tbody td:nth-child(1) {
    position: sticky;
    left: 0;
    z-index: 500;
  }

  /* Column 2: Nombre */
  #consolidated-player-stats-table thead th:nth-child(2),
  #consolidated-player-stats-table tbody td:nth-child(2) {
    position: sticky;
    left: 43px;
    z-index: 500;
  }

  /* Totals Row: Column 1 */
  #consolidated-player-stats-table tfoot td:nth-child(1) {
    position: sticky;
    left: 0;
    z-index: 500;
    background-color: #000000 !important;
  }

  /* Totals Row: Column 2 */
  #consolidated-player-stats-table tfoot td:nth-child(2) {
    position: sticky;
    left: 43px;
    z-index: 500;
    background-color: #000000 !important;
  }

  #consolidated-player-stats-table tfoot td:nth-child(3), 
  #consolidated-player-stats-table tfoot td:nth-child(4) {
    background-color: #000000 !important;
  }
  
  /* Override black background for sticky columns when row is highlighted */
  #consolidated-player-stats-table tbody tr.row-highlighted td:nth-child(1),
  #consolidated-player-stats-table tbody tr.row-highlighted td:nth-child(2),
  #consolidated-player-stats-table tbody tr.row-highlighted td:nth-child(3),
  #consolidated-player-stats-table tbody tr.row-highlighted td:nth-child(4) {
    background: linear-gradient(360deg, #c44206 0%, #d37e1c 100%);
  }

  /* Preserve gradient on sticky columns when highlighted row is hovered */
  #consolidated-player-stats-table tbody tr.row-highlighted:hover td:nth-child(1),
  #consolidated-player-stats-table tbody tr.row-highlighted:hover td:nth-child(2),
  #consolidated-player-stats-table tbody tr.row-highlighted:hover td:nth-child(3),
  #consolidated-player-stats-table tbody tr.row-highlighted:hover td:nth-child(4) {
    --bs-table-accent-bg: linear-gradient(360deg, #c44206 0%, #d37e1c 100%) !important;
  }

  #consolidated-player-stats-table tbody tr:hover td:first-child {
    border-radius: 0px 0px 0px 0px;
  }

  /* Player name link styling */
  #consolidated-player-stats-table .player-name-link {
    color: #ffffff;
    text-decoration: none;
    transition: all 0.2s ease;
    position: relative;
    display: inline-block;
  }

  #consolidated-player-stats-table .player-name-link:hover {
    color: var(--main-color-zion-orange);
    text-decoration: none;
  }

  #consolidated-player-stats-table .player-name-link:hover::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, var(--main-color-zion-orange) 0%, var(--main-color-zion-red) 100%);
  }
}

/* ===== Anti-Spam Honeypot Fields ===== */
.honeypot-field {
  position: absolute !important;
  left: -9999px !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  display: none !important;
}
