/*
Theme Name: LottoHub
Template: generatepress
Version: 1.0
Description: LottoHub Neon Theme - GeneratePress Child with Tailwind CSS
*/

/* GLOBAL ALIGNMENT MASTER — v1.0 | 2026-03-31 */
/* ============================================================
   GLOBAL ALIGNMENT MASTER — Centered Layout v1.0
   Injected by designer-ui | 2026-03-31
   ============================================================ */

/* ── ROOT: ทุก wrapper จัดกึ่งกลาง ── */
html, body {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  overflow-x: hidden !important;
}

/* ── MASTER CONTAINER CENTERING ── */
.container,
.wp-container,
.site-content,
.entry-content,
.page-content,
.main-content,
[class*="container"],
[class*="wrapper"],
[class*="inner"],
[class*="layout"],
.content-area,
#content,
#main,
#primary,
#secondary,
.row,
.columns,
.col {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1440px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── FLEX CENTERING: CORE SECTIONS ── */
.site-header,
.site-footer,
header,
footer,
nav,
.navigation,
.menu-wrapper,
.header-inner,
.footer-inner,
.footer-container,
.footer-widgets,
.site-branding {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  max-width: 1440px !important;
  box-sizing: border-box !important;
}

/* ── PAGE / POST BODY CENTERING ── */
.site-main,
.main-page-content,
.page-header,
.entry-header,
.post-header,
.archive-header,
section,
article,
.section,
.block,
.wp-block-group,
.wp-block-columns,
.alignfull,
.alignwide {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1440px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── TEXT ALIGNMENT ── */
.entry-title,
.page-title,
.site-title,
.tagline,
h1, h2, h3, h4, h5, h6,
.wp-block-heading {
  text-align: center !important;
}

/* ── LOTTERY TABLE CENTERING ── */
table,
.lottery-table,
.lotto-table,
.result-table,
.results-table,
[class*="lottery"],
[class*="lotto"],
[class*="result"],
[id*="lottery"],
[id*="lotto"] {
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  max-width: 900px !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

table td,
table th {
  text-align: center !important;
  vertical-align: middle !important;
}

/* ── BUTTONS & CTA CENTERING ── */
.wp-block-buttons,
.button-group,
.btn-group,
.cta-section,
.cta-wrapper,
[class*="button-wrap"],
[class*="btn-wrap"],
[class*="cta"] {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
}

/* ── IMAGES CENTERING ── */
img,
figure,
.wp-block-image,
.featured-image,
.post-thumbnail,
.site-logo,
[class*="image-wrap"],
[class*="img-wrap"] {
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 100% !important;
  height: auto !important;
}

/* ── HERO / BANNER CENTERING ── */
.hero,
.hero-section,
.banner,
.banner-section,
.home-hero,
.page-hero,
[class*="hero"],
[class*="banner"],
[class*="slider"],
.wp-block-cover,
.wp-block-cover__inner-container {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ── CARDS & GRID CENTERING ── */
.cards,
.card-grid,
.post-grid,
.articles-grid,
[class*="card-wrap"],
[class*="grid"],
[class*="cards"],
.wp-block-query,
.wp-block-post-template {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 20px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1440px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── FOOTER FULL CENTERING ── */
.site-footer > *,
footer > * {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1440px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

/* ── CONTACT / FORM CENTERING ── */
form,
.wpcf7,
.contact-form,
.contact-wrapper,
[class*="contact"],
[class*="form-wrap"] {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 760px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── NAVIGATION MENU CENTERING ── */
.nav-menu,
.main-navigation ul,
.primary-menu,
#site-navigation ul,
.menu-primary-container ul {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  list-style: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  width: 100% !important;
}

/* ── WIDGET AREAS CENTERING ── */
.widget,
.widget-area,
.sidebar,
aside,
[class*="widget"] {
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

/* ── RESPONSIVE: ไม่แตกบนมือถือ ── */
@media (max-width: 768px) {
  .container,
  [class*="container"],
  [class*="wrapper"],
  section,
  article,
  .hero,
  .banner,
  table {
    padding-left: 16px !important;
    padding-right: 16px !important;
    max-width: 100% !important;
  }

  .cards,
  .card-grid,
  [class*="grid"],
  [class*="cards"],
  .wp-block-post-template {
    flex-direction: column !important;
    align-items: center !important;
  }

  h1, h2, h3 {
    text-align: center !important;
  }
}

/* ── OVERRIDE ALL FLOATS ── */
[class*="float-left"],
[class*="float-right"],
[class*="pull-left"],
[class*="pull-right"],
.alignleft,
.alignright {
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: block !important;
}
/* END GLOBAL ALIGNMENT MASTER */
