/* =========================================================
   PRONOSTICS CDM26 - CSS MANIFEST V147 REWARDS ADD BOTTOM
   Le style n'est plus regroupé dans un seul grand fichier.
   Chaque partie est séparée pour faciliter la maintenance.
========================================================= */

@import url("./00-tokens-body.css?v=v147-rewards-add-bottom"); /* Variables globales, reset, body de base */
@import url("./01-main-layout.css?v=v147-rewards-add-bottom"); /* Wrapper principal */
@import url("./02-header.css?v=v147-rewards-add-bottom"); /* Header desktop, navigation, logo */
@import url("./03-login-auth.css?v=v147-rewards-add-bottom"); /* Pages login / inscription de base */
@import url("./04-alerts-components.css?v=v147-rewards-add-bottom"); /* Alertes et petits composants communs */
@import url("./05-pronostics-cards.css?v=v147-rewards-add-bottom"); /* Layout pronostics, filtres, cartes matchs, lots */
@import url("./06-pages-ranking-rules-lots.css?v=v147-rewards-add-bottom"); /* Classement, règles, lots, admin de base */
@import url("./07-responsive-base.css?v=v147-rewards-add-bottom"); /* Responsive général desktop/tablette/mobile */
@import url("./08-auth-register-overrides.css?v=v147-rewards-add-bottom"); /* Overrides login/register, avatar, backgrounds, mot de passe */
@import url("./09-brand-results-worldcup.css?v=v147-rewards-add-bottom"); /* Couleurs, logo World Cup, résultats et countdown */
@import url("./10-admin-matches-results.css?v=v147-rewards-add-bottom"); /* Administration matchs et résultats */
@import url("./11-admin-users-modals.css?v=v147-rewards-add-bottom"); /* Administration joueurs/utilisateurs et popups */
@import url("./12-admin-rules-lots-final.css?v=v147-rewards-add-bottom"); /* Phases finales, règles du jeu, lots et actions admin */
@import url("./13-mobile-header-drawer.css?v=v147-rewards-add-bottom"); /* Header mobile, drawer latéral et corrections mobile */


/* =========================================================
   DESIGN V112 - HARD hide CGU preview under editor on mobile/tablet
   Directly in manifest + imported file to avoid cache issues
========================================================= */
@media (max-width:1200px){
  body #page-admin .admin-terms-panel .admin-terms-preview-card,
  body #page-admin .admin-terms-panel .admin-terms-preview-card *,
  body #page-admin .admin-terms-panel .admin-terms-preview,
  body #page-admin .admin-terms-panel .admin-terms-preview *{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    height:0 !important;
    max-height:0 !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    overflow:hidden !important;
    pointer-events:none !important;
  }
}


/* =========================================================
   DESIGN V119 - Admin sidebar without internal scroll + Maintenance label
========================================================= */
#page-admin .admin-sidebar{
  max-height:none !important;
  overflow:visible !important;
}

#page-admin .admin-menu{
  overflow:visible !important;
}

@media (max-width:900px){
  #page-admin .admin-sidebar{
    position:relative !important;
    top:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }
}


/* =========================================================
   DESIGN V120 - Sidebar height auto and scroll with page
========================================================= */
#page-admin .admin-layout{
  align-items:flex-start !important;
}

#page-admin .admin-sidebar{
  position:relative !important;
  top:auto !important;
  align-self:flex-start !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  padding-bottom:22px !important;
}

#page-admin .admin-menu{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
}


/* =========================================================
   DESIGN V121 - Import/Export before Maintenance + sidebar follows page
========================================================= */
#page-admin .admin-layout{
  align-items:flex-start !important;
}

#page-admin .admin-sidebar{
  position:relative !important;
  top:auto !important;
  bottom:auto !important;
  align-self:flex-start !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  transform:none !important;
}

#page-admin .admin-menu{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
}

@media (min-width:901px){
  #page-admin .admin-sidebar{
    position:relative !important;
    align-self:flex-start !important;
  }
}


/* =========================================================
   DESIGN V122 - Card Réglages sticky, auto height, no internal scroll
========================================================= */
@media (min-width:901px){
  #page-admin .admin-layout{
    align-items:flex-start !important;
  }

  #page-admin .admin-sidebar{
    position:sticky !important;
    top:104px !important;
    align-self:flex-start !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    padding-bottom:22px !important;
    transform:none !important;
  }

  #page-admin .admin-menu{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
}

@media (max-width:900px){
  #page-admin .admin-sidebar{
    position:relative !important;
    top:auto !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
}


/* =========================================================
   DESIGN V123 - Réglages sticky + scroll only if needed
========================================================= */
@media (min-width:901px){
  #page-admin .admin-layout{
    align-items:flex-start !important;
  }

  #page-admin .admin-sidebar{
    position:sticky !important;
    top:104px !important;
    align-self:flex-start !important;
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100vh - 128px) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding-bottom:22px !important;
    transform:none !important;
    scrollbar-width:thin;
    scrollbar-color:rgba(36,34,106,.22) transparent;
  }

  #page-admin .admin-sidebar::-webkit-scrollbar{
    width:6px;
  }

  #page-admin .admin-sidebar::-webkit-scrollbar-track{
    background:transparent;
  }

  #page-admin .admin-sidebar::-webkit-scrollbar-thumb{
    background:rgba(36,34,106,.22);
    border-radius:999px;
  }

  #page-admin .admin-menu{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
}

@media (max-width:900px){
  #page-admin .admin-sidebar{
    position:relative !important;
    top:auto !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
}


/* =========================================================
   DESIGN V127 - Compact Réglages menu spacing
========================================================= */
@media (min-width:901px){
  #page-admin .admin-sidebar{
    padding:18px 18px 16px !important;
    border-radius:24px !important;
    max-height:calc(100vh - 116px) !important;
  }

  #page-admin .admin-section-title{
    margin-bottom:12px !important;
    font-size:12px !important;
    line-height:1.15 !important;
  }

  #page-admin .admin-menu{
    gap:4px !important;
  }

  #page-admin .admin-menu a{
    min-height:38px !important;
    padding:0 10px !important;
    border-radius:12px !important;
    font-size:13px !important;
    line-height:1.12 !important;
    gap:8px !important;
  }
}

@media (max-width:900px){
  #page-admin .admin-sidebar{
    padding:18px 16px !important;
  }

  #page-admin .admin-section-title{
    margin-bottom:12px !important;
  }

  #page-admin .admin-menu{
    gap:5px !important;
  }

  #page-admin .admin-menu a{
    min-height:40px !important;
    padding:0 10px !important;
    font-size:13px !important;
  }
}


/* =========================================================
   DESIGN V128 - Maintenance popup fixed and above page
========================================================= */
#maintenanceConfirmModal.maintenance-modal-backdrop.hidden{
  display:none !important;
}

#maintenanceConfirmModal.maintenance-modal-backdrop{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483000 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:22px !important;
  background:rgba(17,19,63,.42) !important;
  backdrop-filter:blur(8px) !important;
}

#maintenanceConfirmModal .maintenance-confirm-modal{
  position:relative !important;
  width:min(100%,520px) !important;
  max-height:calc(100vh - 44px) !important;
  overflow:auto !important;
  margin:0 !important;
  background:#fff !important;
  border-radius:30px !important;
  box-shadow:0 30px 90px rgba(17,19,63,.28) !important;
}

body.maintenance-modal-open{
  overflow:hidden !important;
}

@media (max-width:560px){
  #maintenanceConfirmModal.maintenance-modal-backdrop{
    align-items:center !important;
    padding:14px !important;
  }
}


/* =========================================================
   DESIGN V129 - Smaller Import card titles
========================================================= */
#page-admin .admin-import-panel .import-card h2,
#page-admin .admin-import-panel .export-card h2{
  font-size:26px !important;
  line-height:1.12 !important;
  letter-spacing:-.7px !important;
  margin:0 0 12px !important;
  max-width:100% !important;
}

#page-admin .admin-import-panel .import-card p{
  font-size:15px !important;
  line-height:1.45 !important;
  margin-bottom:16px !important;
}

@media (max-width:1200px){
  #page-admin .admin-import-panel .import-card h2,
  #page-admin .admin-import-panel .export-card h2{
    font-size:23px !important;
    line-height:1.12 !important;
  }
}

@media (max-width:700px){
  #page-admin .admin-import-panel .import-card h2,
  #page-admin .admin-import-panel .export-card h2{
    font-size:20px !important;
    line-height:1.15 !important;
  }
}


/* =========================================================
   DESIGN V130 - Hide CGU preview admin completely
========================================================= */
#page-admin .admin-terms-preview-card,
#page-admin .admin-terms-preview{
  display:none !important;
}


/* =========================================================
   DESIGN V133 - Import page clean Excel model layout
========================================================= */
#page-admin .import-main-info{
  font-size:16px !important;
  line-height:1.55 !important;
}

#page-admin .import-help-strip{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:0 0 22px !important;
}

#page-admin .import-help-strip > div{
  background:#f6f8ff !important;
  border:1px solid #e2e8f5 !important;
  border-radius:18px !important;
  padding:14px 16px !important;
  color:#63677a !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:850 !important;
}

#page-admin .import-help-strip strong{
  color:#24226a !important;
}

#page-admin .import-help-strip code{
  background:#fff !important;
  border:1px solid #e2e8f5 !important;
  border-radius:8px !important;
  padding:2px 6px !important;
  color:#24226a !important;
  font-weight:950 !important;
}

#page-admin .import-grid-clean{
  align-items:stretch !important;
}

#page-admin .import-card-clean{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  padding:28px !important;
}

#page-admin .admin-import-panel .import-card-clean h2{
  font-size:24px !important;
  line-height:1.08 !important;
  margin:0 0 10px !important;
  letter-spacing:-.55px !important;
}

#page-admin .admin-import-panel .import-card-clean p{
  min-height:44px !important;
  margin:0 0 16px !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

#page-admin .import-columns-box{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  margin:0 0 18px !important;
  padding:12px !important;
  background:#fbfcff !important;
  border:1px solid #e5ebf7 !important;
  border-radius:18px !important;
}

#page-admin .import-columns-box span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:28px !important;
  padding:0 9px !important;
  border-radius:999px !important;
  background:#eef3ff !important;
  color:#24226a !important;
  font-size:12px !important;
  font-weight:950 !important;
  white-space:nowrap !important;
}

#page-admin .import-columns-results span:nth-last-child(-n+2){
  background:#fff0ed !important;
  color:#ef4d43 !important;
}

#page-admin .import-file-field{
  margin:2px 0 14px !important;
}

#page-admin .admin-import-form{
  margin-top:auto !important;
}

@media (max-width:1100px){
  #page-admin .import-help-strip{
    grid-template-columns:1fr !important;
  }
}

@media (max-width:680px){
  #page-admin .import-card-clean{
    padding:22px !important;
  }
  #page-admin .admin-import-panel .import-card-clean h2{
    font-size:21px !important;
  }
}


/* =========================================================
   DESIGN V143 - Import final match editable columns
========================================================= */
#page-admin .import-columns-final span.is-editable-col,
#page-admin .import-columns-final span:nth-last-child(-n+2){
  background:#fff0ed !important;
  color:#ef4d43 !important;
}

/* Fermeture inscription + connexion par identifiant - V144 */
#registerForm{
  padding-top: 2px !important;
}

.registration-closed-box{
  margin: 8px 0 4px !important;
  padding: 22px 18px !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, rgba(36,34,106,.10), rgba(239,77,67,.10)) !important;
  border: 1px solid rgba(36,34,106,.14) !important;
  box-shadow: 0 14px 34px rgba(36,34,106,.10) !important;
  text-align: center !important;
}

.registration-closed-box::before{
  content: "🔒";
  width: 48px !important;
  height: 48px !important;
  margin: 0 auto 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 24px rgba(36,34,106,.12) !important;
  font-size: 22px !important;
}

.registration-closed-box h3{
  margin: 0 0 10px !important;
  color: var(--primary, #24226a) !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: -.02em !important;
}

.registration-closed-box p{
  max-width: 300px !important;
  margin: 0 auto !important;
  color: #3f4266 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  font-weight: 600 !important;
}

@media (max-width: 520px){
  .registration-closed-box{
    padding: 20px 15px !important;
    border-radius: 18px !important;
  }
  .registration-closed-box h3{
    font-size: 18px !important;
  }
  .registration-closed-box p{
    font-size: 13px !important;
  }
}


/* =========================================================
   FIX V4 - Password popup above header/user menu
========================================================= */
#passwordModal.modal-backdrop{
  z-index:999999 !important;
  position:fixed !important;
  inset:0 !important;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(17,19,63,.48) !important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
#passwordModal.modal-backdrop.hidden{
  display:none !important;
}
#passwordModal .password-modal{
  position:relative !important;
  z-index:1000000 !important;
  width:min(100%, 520px) !important;
  max-height:calc(100vh - 40px);
  overflow:auto;
}
body:has(#passwordModal:not(.hidden)) .user-menu{
  z-index:1 !important;
}
body:has(#passwordModal:not(.hidden)) .user-dropdown{
  display:none !important;
}
@media (max-width:700px){
  #passwordModal.modal-backdrop{
    align-items:flex-start;
    padding-top:90px;
  }
  #passwordModal .password-modal{
    width:100% !important;
    border-radius:22px !important;
  }
}
