.appHeader {height: 56px;position: fixed;top: 0;left: 0;right: 0;z-index: 999;background: #0288d1;display: flex;align-items: center;justify-content: space-between;padding: 0 16px;padding-top: env(safe-area-inset-top);box-shadow: 0 2px 4px rgba(0,0,0,0.1);}
.appHeader .left, .appHeader .right {display: flex;align-items: center; min-width: 40px;}
.appHeader .left {justify-content: flex-start;}
.appHeader .right {justify-content: flex-end;}
.appHeader .headerButton {color: #ffffff; text-decoration: none; display: inline-flex; align-items: center; justify-content: center;}
.appHeader .pageTitle { font-size: 17px; font-weight: 600; color: #ffffff; text-align: center;}

.windowsphone-detection,.ios-detection,.android-detection,.non-mobile-detection {display:none;}
.windowsphone-detection.is-active,.ios-detection.is-active,.android-detection.is-active,.non-mobile-detection.is-active {display: block;}

/* Sidebar */
#mobileMenu.offcanvas-start .offcanvas-header {height:56px;min-height:56px;padding:0 16px;padding-top:env(safe-area-inset-top);display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;}
#mobileMenu.offcanvas-start .offcanvas-header .logo {max-height:26px;width:auto;}

/* Contenitore principale della barra */
.appBottomMenu {min-height: 56px;position: fixed;z-index: 999;bottom: 0;left: 0;right: 0;background: #0288d1;display: flex;align-items: center;justify-content: center;padding-left: 4px;padding-right: 4px;padding-bottom: env(safe-area-inset-bottom);}
.appBottomMenu .item {font-size: 9px;text-align: center;width: 100%;height: 56px;display: flex;align-items: center;justify-content: center;text-decoration: none;color: rgba(255, 255, 255, 0.7);transition: opacity 0.2s ease;
}
.appBottomMenu .item .col {flex: 1;width: 100%;padding: 0 4px;text-align: center;}
.appBottomMenu .item i.bi {display: block;font-size: 24px;line-height: 1em;margin: 1px auto 3px auto;color: #ffffff;}
.appBottomMenu .item strong {margin-top: 2px;display: block;color: #ffffff;font-weight: 400;font-size: 11px; line-height: 1.2em;}
.appBottomMenu .item:active, .appBottomMenu .item.active {opacity: 1;}
.appBottomMenu .item.active strong {font-weight: 700;}

/* Colore testo di default per i bottoni delle tabs in Home su mobile e quando attiva*/
#homeTabs .nav-link {color: #212529 !important;}
#homeTabs .nav-link.active {color: #0288d1 !important; background-color: var(--bs-light, #f8f9fa);}

/* Override del css splide*/
.splide__pagination__page.is-active {background: #0288d1 !important; transform: scale(1.2) !important;}

.mobile-accordion {background: transparent;}
.mobile-accordion .accordion-item {border: 1px solid #dee2e6; border-radius: 0.375rem !important; margin-bottom: 10px; overflow: hidden; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);}
.mobile-accordion .accordion-item:last-child {margin-bottom: 0;}
.mobile-accordion .accordion-button {border-radius: 6px !important;background-color: #f8f9fa;font-size: 0.95rem;padding: 0.85rem 1rem;}
.mobile-accordion .accordion-button:not(.collapsed) {border-bottom-left-radius: 0 !important;border-bottom-right-radius: 0 !important;background-color: #f8f9fa;color: #0d6efd;}
.mobile-accordion .accordion-button:focus {box-shadow: none; border-color: rgba(0, 0, 0, 0.125);}
.mobile-accordion .card-body {padding: 0.5rem !important;}
.mobile-accordion .accordion-button:not(.collapsed) {color: var(--bs-body-color, #212529) !important;}

/* Forza l'intero slider e le relative slide a non superare mai il 100% del contenitore accordion */
.mobile-accordion .splide, .mobile-accordion .splide__track, .mobile-accordion .splide__list, .mobile-accordion .splide__slide {max-width: 100% !important; width: 100% !important; box-sizing: border-box !important;} 
/* Assicura che la card interna e l'immagine si adattino alla larghezza del viewport mobile */
.mobile-accordion .card {width: 100% !important; max-width: 100% !important;}
.mobile-accordion .splide__slide img {width: 100% !important; max-width: 100% !important; height: auto !important; display: block;}

.offcanvas.action-sheet .offcanvas-header {padding: 2px 20px;display: block;min-height: auto;box-shadow: none;border-bottom: 1px solid #E1E1E1;}
.offcanvas.action-sheet .offcanvas-header .offcanvas-title {padding: 0; margin: 0; text-align: center; display: block; font-size: 13px; padding: 6px 0; color: #141515; font-weight: 500;}
.offcanvas.action-sheet {border: 0; height: auto !important; z-index: 9999;}
.offcanvas-top, .offcanvas-bottom {width: 100%;}
.offcanvas-bottom {padding-bottom: env(safe-area-inset-bottom);}
.offcanvas.action-sheet .offcanvas-body {padding: 0;}
.offcanvas.action-sheet .offcanvas-body .action-sheet-content {padding: 20px 14px 18px 14px; overflow: auto;}
.offcanvas.action-sheet.inset {left: 12px; right: 12px; width: auto; bottom: 0; padding-bottom: 0; border-top-right-radius: 0.375rem; border-top-left-radius: 0.375rem; margin-bottom: env(safe-area-inset-bottom);}
.offcanvas.action-sheet .list-group-item.active {background-color: #6c757d; border-color: #6c757d; color: #ffffff; opacity: 0.65;}

.style-no-scrollbar { -ms-overflow-style: none;  /* IE/Edge */  scrollbar-width: none;  /* Firefox */ }
.style-no-scrollbar::-webkit-scrollbar { display: none; /* Chrome/Safari/Opera */ }

@media (max-width: 767.98px) {
  #appCapsule {padding-top: 56px;}

  .fs-095 {font-size: 0.95rem !important;}
  .fs-08 {font-size: 0.8rem !important;}
  .fs-075 {font-size: 0.75rem !important;}

  .card-campionato .card-body {padding: 0.75rem;}
  .card-campionato .card-title {font-size: 0.97rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
  .card-campionato .mb-1 { margin-bottom: .1rem !important;}
  .card-campionato .gare-svolte {width: 48px; height: 48px;}
  .card-campionato .gare-svolte > div:first-child {font-size: 0.7rem;} 

  .skeleton-card .skeleton-title.mb-2 {height: 20px !important; margin-top: 0.45rem !important; margin-bottom: 15px !important;}  
  .skeleton-card .mb-2 {margin-bottom: 0.25rem !important;} 
  .skeleton-card .skeleton-text {height: 17px !important;} 
  .skeleton-card .skeleton-line {margin-bottom: 0.35rem !important;}
  .skeleton-card .gare-svolte {margin-top: -12px !important;}
  .skeleton-card .gare-svolte > div:first-child {margin-top: 7px !important; margin-bottom: 9px !important;}

  .row.legenda-calendario.mb-4 {margin-bottom: 2.4rem !important;}
  .header-ranking-wrapper::before {content: none !important;}
  .header-ranking-wrapper {margin-bottom: 1.0rem;}

  .card-club h5 {font-size: 1.1rem !important;}
  .card-club .card-body {padding: 0.75rem !important;}
  .card-club .card-club-sinistra::after {display: none;}
  .card-club .card-club-sinistra {min-width: 16px;}  
  .card-club .card-club-centrale {min-height: 0 !important;}

  .cerca-filtra {padding: 20px 5px 25px 5px; margin-bottom: 1rem;}
  .cerca-filtra > div:first-child {margin-top: -0.5rem;}
  .cerca-filtra > div:last-child {margin-bottom: -0.7rem;}

  .fc-header-toolbar { flex-wrap: wrap; text-align: center; }
  .fc-header-toolbar .fc-toolbar-chunk:nth-child(2) { order: 1; flex: 1 0 100%; display: flex; justify-content: center; margin-bottom: 0.5rem; }
  .fc-header-toolbar .fc-toolbar-chunk:nth-child(1), .fc-header-toolbar .fc-toolbar-chunk:nth-child(3) { order: 2; display: inline-flex; justify-content: center; margin: 0 0.25rem; }
  .fc-header-toolbar .fc-toolbar-chunk:nth-child(1), .fc-header-toolbar .fc-toolbar-chunk:nth-child(3) { flex: 0 0 auto; }
  .fc-header-toolbar .fc-today-button { order: 2; margin: 0 auto; }
  .fc-header-toolbar .fc-toolbar-title { display:none; } 
  .fc .fc-toolbar.fc-header-toolbar {padding: 0.0625rem 0.3rem 0.5rem 0.3rem;}
  .fc-list-table { border-radius: 0.375rem; overflow: hidden;}
  .fc-theme-standard .fc-list {border-radius: 0.375rem;}
  
  .fc-header-toolbar {position: relative;}
  .fc-header-toolbar .fc-today-button {position: absolute;left: 47%;transform: translateX(-47%);}
}
