/* LuckHaus v47.0.4 · F47-Hotfix4 · auditoría visual final y navegación */

/* Every internal page must remain inside the application viewport. */
body.f45-redesign .page-wrap > *,
body.f45-redesign .page-hero > *,
body.f45-redesign .hero-actions > *,
body.f45-redesign .event-kpi-grid > *,
body.f45-redesign .event-filters > *,
body.f45-redesign .event-stage-tabs > *,
body.f45-redesign .event-card-grid > *,
body.f45-redesign .event-card > *,
body.f45-redesign .dossier-kpis > *,
body.f45-redesign .dossier-grid > *,
body.f45-redesign .preflight-layout > *,
body.f45-redesign .cash-kpis > *,
body.f45-redesign .cash-layout > *,
body.f45-redesign .security-grid > *,
body.f45-redesign .f16-team-intro > *,
body.f45-redesign .f16-user-stats > *{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

/* Page heroes had visual styling but no final structural spacing rule. */
body.f45-redesign .page-hero{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:24px!important;
  width:100%!important;
  padding:22px 24px!important;
  margin:0 0 24px!important;
  overflow:hidden!important;
}
body.f45-redesign .page-hero.compact{align-items:center!important}
body.f45-redesign .page-hero>div:first-child{flex:1 1 auto;min-width:0}
body.f45-redesign .page-hero h1{
  margin:4px 0 7px!important;
  color:var(--f45-text-strong)!important;
  font-size:clamp(21px,2vw,28px)!important;
  line-height:1.17!important;
  overflow-wrap:anywhere;
}
body.f45-redesign .page-hero p{
  max-width:900px;
  margin:0!important;
  color:var(--f45-muted)!important;
  line-height:1.55!important;
  overflow-wrap:anywhere;
}
body.f45-redesign .page-hero .back-link{display:inline-flex;margin-bottom:9px;max-width:100%;overflow-wrap:anywhere}
body.f45-redesign .hero-actions{
  display:flex!important;
  flex:0 1 auto;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:10px!important;
  min-width:0;
}
body.f45-redesign .hero-actions .btn{flex:0 1 auto;white-space:normal;text-align:center}

/* Shared actions: never let buttons push their card/page outside the container. */
body.f45-redesign .page-heading-actions,
body.f45-redesign .reports-heading-actions,
body.f45-redesign .customer-profile-actions,
body.f45-redesign .pending-actions,
body.f45-redesign .success-actions,
body.f45-redesign .success-actions-v29,
body.f45-redesign .bingo-form-actions,
body.f45-redesign .social-tool-actions,
body.f45-redesign .template-editor-actions,
body.f45-redesign .event-card-actions{
  min-width:0;
  max-width:100%;
  flex-wrap:wrap!important;
}

/* Centro de eventos: desktop wraps cleanly instead of showing a native scrollbar. */
body.f45-redesign .event-kpi-grid{
  gap:18px!important;
  margin-bottom:22px!important;
}
body.f45-redesign .event-kpi-grid article{
  min-height:142px;
  padding:22px!important;
  border-radius:18px!important;
}
body.f45-redesign .event-kpi-grid strong{line-height:1.12;overflow-wrap:anywhere}
body.f45-redesign .event-filters{
  display:grid!important;
  grid-template-columns:minmax(190px,230px) minmax(0,1fr)!important;
  align-items:end!important;
  gap:18px!important;
  width:100%;
  padding:18px 20px!important;
  margin-bottom:22px!important;
  overflow:hidden!important;
}
body.f45-redesign .event-filters label{min-width:0!important;width:100%}
body.f45-redesign .event-filters select{width:100%;margin-top:7px!important}
body.f45-redesign .event-stage-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  width:100%;
  min-width:0;
  padding:0!important;
  overflow:visible!important;
  scrollbar-width:none;
}
body.f45-redesign .event-stage-tabs::-webkit-scrollbar{display:none}
body.f45-redesign .event-stage-tabs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:40px;
  max-width:100%;
  padding:8px 13px!important;
  white-space:normal!important;
  text-align:center;
  line-height:1.2;
}
body.f45-redesign .event-stage-tabs b{flex:0 0 auto;margin-left:0!important}

body.f45-redesign .event-card-grid{
  gap:20px!important;
  align-items:start;
  width:100%;
}
body.f45-redesign .event-card-grid:has(> .event-card:only-child){
  grid-template-columns:minmax(0,760px)!important;
  justify-content:start;
}
body.f45-redesign .event-card{
  width:100%;
  min-width:0;
  padding:22px!important;
  border-radius:20px!important;
}
body.f45-redesign .event-card header{min-width:0;flex-wrap:wrap!important;row-gap:9px!important}
body.f45-redesign .event-card header>div{min-width:150px}
body.f45-redesign .event-card h2{max-width:100%;white-space:normal!important;overflow-wrap:anywhere}
body.f45-redesign .event-card header em{flex:0 0 auto;white-space:nowrap}
body.f45-redesign .event-progress-line{gap:9px!important;margin:18px 0 14px!important}
body.f45-redesign .event-progress-line span{min-width:0;overflow-wrap:anywhere}
body.f45-redesign .event-money{gap:12px!important}
body.f45-redesign .event-money span{min-width:0;padding:15px 16px!important}
body.f45-redesign .event-money strong{overflow-wrap:anywhere}
body.f45-redesign .event-card-actions{display:flex!important;gap:10px!important;margin-top:18px!important}
body.f45-redesign .event-card-actions .btn{flex:1 1 150px!important;min-width:0!important}

/* Operational layouts audited across the remaining internal templates. */
body.f45-redesign .dossier-kpis,
body.f45-redesign .dossier-grid,
body.f45-redesign .preflight-layout,
body.f45-redesign .cash-layout,
body.f45-redesign .simulator-layout{gap:20px!important}
body.f45-redesign .dossier-table>div,
body.f45-redesign .dossier-winners>div,
body.f45-redesign .preflight-items>div,
body.f45-redesign .cash-list>div{min-width:0;max-width:100%}
body.f45-redesign .dossier-table strong,
body.f45-redesign .dossier-table small,
body.f45-redesign .dossier-winners strong,
body.f45-redesign .dossier-winners small,
body.f45-redesign .preflight-items strong,
body.f45-redesign .preflight-items small{overflow-wrap:anywhere}

/* Tabs and tables may scroll only inside their own component, never the page. */
body.f45-redesign .responsive-table,
body.f45-redesign .table-wrap,
body.f45-redesign .report-table,
body.f45-redesign .f46-events-table,
body.f45-redesign .audit-table-card{
  max-width:100%!important;
  overflow-x:auto!important;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
}
body.f45-redesign .table-card{min-width:0!important;max-width:100%!important}
body.f45-redesign .workspace-tabs,
body.f45-redesign .module-subnav,
body.f45-redesign .settings-tabs{max-width:100%;scrollbar-width:none}
body.f45-redesign .workspace-tabs::-webkit-scrollbar,
body.f45-redesign .module-subnav::-webkit-scrollbar,
body.f45-redesign .settings-tabs::-webkit-scrollbar{display:none}

/* Long content in cards should wrap rather than enlarge the page. */
body.f45-redesign .page-wrap .card h1,
body.f45-redesign .page-wrap .card h2,
body.f45-redesign .page-wrap .card h3,
body.f45-redesign .page-wrap .card p,
body.f45-redesign .page-wrap .card strong,
body.f45-redesign .page-wrap .card small{overflow-wrap:anywhere}

@media(max-width:1100px){
  body.f45-redesign .event-filters{grid-template-columns:1fr!important;align-items:stretch!important}
  body.f45-redesign .event-filters label{max-width:340px}
  body.f45-redesign .dossier-grid,
  body.f45-redesign .preflight-layout{grid-template-columns:1fr!important}
  body.f45-redesign .preflight-actions{position:static!important}
  body.f45-redesign .dossier-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:760px){
  body.f45-redesign .page-hero,
  body.f45-redesign .page-hero.compact{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:16px!important;
    padding:18px!important;
    margin-bottom:20px!important;
  }
  body.f45-redesign .hero-actions{width:100%;justify-content:flex-start!important}
  body.f45-redesign .hero-actions .btn{flex:1 1 160px}
  body.f45-redesign .event-kpi-grid{grid-template-columns:1fr!important;gap:12px!important}
  body.f45-redesign .event-kpi-grid article{min-height:0;padding:17px!important}
  body.f45-redesign .event-filters{padding:16px!important;gap:14px!important}
  body.f45-redesign .event-stage-tabs{
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    overflow-x:auto!important;
    padding:1px 0 5px!important;
    scroll-snap-type:x proximity;
  }
  body.f45-redesign .event-stage-tabs a{flex:0 0 auto;white-space:nowrap!important;scroll-snap-align:start}
  body.f45-redesign .event-card-grid,
  body.f45-redesign .event-card-grid:has(> .event-card:only-child){grid-template-columns:1fr!important}
  body.f45-redesign .event-card{padding:18px!important}
  body.f45-redesign .event-card-actions .btn{flex:1 1 100%!important}
  body.f45-redesign .dossier-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:480px){
  body.f45-redesign .page-hero{padding:16px 14px!important;border-radius:16px!important}
  body.f45-redesign .hero-actions{display:grid!important;grid-template-columns:1fr!important}
  body.f45-redesign .hero-actions .btn{width:100%!important}
  body.f45-redesign .event-money{grid-template-columns:1fr!important}
  body.f45-redesign .event-card header em{width:100%;text-align:center}
  body.f45-redesign .dossier-kpis{grid-template-columns:1fr!important}
  body.f45-redesign .f16-user-stats{grid-template-columns:1fr!important}
}
