/* V6 — corrections structurelles et visuelles mobile */
:root{--lsg-tabbar-h:72px}
html,body{max-width:100%;overflow-x:hidden}
body.lsg-app{display:flex;min-height:100dvh;flex-direction:column;background:#fff}
body.lsg-app>main{position:relative;z-index:1;flex:1 0 auto;width:100%;clear:both}
body.lsg-app>.lsg-footer{position:static!important;inset:auto!important;z-index:0!important;flex:0 0 auto;clear:both;width:100%;margin:0!important;transform:none!important}

/* Les popups passent toujours devant la barre et le pied de page. */
#reglement-modal,#cguModal,#mentionsLegalesModal,#privacyModal,#plansComparisonModal,#cookieSettingsModal,.cookie-modal{
  z-index:2147483600!important;
}
#lsgMoreSheet{z-index:2147483500!important}
body:has(#reglement-modal:not(.hidden)[aria-hidden="false"]) .lsg-mobile-tabbar,
body:has(#cguModal:not(.hidden)[aria-hidden="false"]) .lsg-mobile-tabbar,
body:has(#mentionsLegalesModal:not(.hidden)[aria-hidden="false"]) .lsg-mobile-tabbar,
body:has(#privacyModal:not(.hidden)[aria-hidden="false"]) .lsg-mobile-tabbar,
body:has(#plansComparisonModal:not(.hidden)[aria-hidden="false"]) .lsg-mobile-tabbar,
body:has(#lsgMoreSheet:not([hidden])[aria-hidden="false"]) .lsg-mobile-tabbar{visibility:hidden!important;pointer-events:none!important}

/* Compte connecté dans le header : pseudo complet + badge. */
.lsg-user-pill{max-width:260px;min-width:0}
.lsg-user-name{display:block;min-width:0;overflow:visible;text-overflow:clip;white-space:nowrap;font-size:12px}
.lsg-mobile-user-pill{min-width:0;max-width:220px;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid #dbe3ed;border-radius:14px;background:#fff;color:#27324a!important;box-shadow:0 7px 18px rgba(30,41,59,.08);text-decoration:none!important}
.lsg-mobile-user-name{min-width:0;white-space:nowrap;font-size:12px;font-weight:850;letter-spacing:-.02em}
.lsg-mobile-user-badge{display:inline-flex;flex:0 0 auto}
.lsg-mobile-user-badge svg{width:19px!important;height:19px!important}

/* Accueil : palette historique LSG violet / or, sans bleu dominant. */
body.lsg-page-home .lsg-home-minimal{background:linear-gradient(180deg,#f6f0ff 0%,#fff 50%,#fff8dc 100%)!important}
body.lsg-page-home .lsg-home-hero{border-color:rgba(109,40,217,.24)!important;background:radial-gradient(circle at 50% 0%,rgba(255,213,67,.25),transparent 40%),linear-gradient(145deg,#160a2f 0%,#3b116f 54%,#6d28d9 100%)!important;box-shadow:0 20px 48px rgba(76,29,149,.22)!important}
body.lsg-page-home .lsg-home-primary,
body.lsg-page-home .lsg-plan-button.is-starter,
body.lsg-page-home .lsg-plan-button.is-plus,
body.lsg-page-home .lsg-plan-popular{background:#ffd43b!important;color:#251039!important}
body.lsg-page-home .lsg-home-kicker,
body.lsg-page-home .lsg-compare-link,
body.lsg-page-home .lsg-alert-label{color:#7628d6!important}
body.lsg-page-home .lsg-plan-card.is-plus{background:linear-gradient(145deg,#1d0b38,#4b167f)!important;border-color:#ffd43b!important}
body.lsg-page-home .lsg-home-plans{border-color:#e9d8ff!important;box-shadow:0 16px 42px rgba(76,29,149,.10)!important}

@media(max-width:767px){
  body.lsg-app{padding-bottom:calc(var(--lsg-tabbar-h) + env(safe-area-inset-bottom,0px))!important}
  body.lsg-app>main{padding-bottom:18px!important}
  body.lsg-app>.lsg-footer{margin:0!important;padding-bottom:12px!important}
  .lsg-mobile-tabbar{height:calc(var(--lsg-tabbar-h) + env(safe-area-inset-bottom,0px))!important;z-index:2147482000!important}
  .lsg-topbar-inner{gap:8px!important}
  .lsg-mobile-actions{min-width:0;gap:7px!important}
  .lsg-mobile-user-pill{max-width:min(210px,47vw)}
  .lsg-mobile-user-name{font-size:clamp(9.5px,2.7vw,12px)}
  .lsg-brand{min-width:0;flex:1 1 auto}
  .lsg-brand-copy{min-width:0}
  .lsg-brand-copy strong{white-space:nowrap;font-size:clamp(12px,3.5vw,15px)!important}
  .lsg-brand-copy small{white-space:nowrap}

  /* Footer mobile compact et toujours après le contenu. */
  .lsg-footer-inner{padding:20px 16px 14px!important}
  .lsg-footer-brand{display:none!important}
  .lsg-footer-columns{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;margin-top:0!important}
  .lsg-footer-columns>div{gap:5px!important}
  .lsg-footer-columns>div:last-child{grid-column:1/-1!important;padding-top:10px;border-top:1px solid #e2e8f0}
  .lsg-footer-columns a,.lsg-footer-columns span{font-size:10px!important;line-height:1.45}
  .lsg-footer-bottom{margin-top:14px!important;padding-top:12px!important;font-size:9px!important}

  /* Page Tirages : cartes centrées, compactes, sans cases vides énormes. */
  body.lsg-page-draws main>.max-w-6xl{width:100%!important;padding:0 12px!important}
  body.lsg-page-draws main section.text-center{margin:14px auto 12px!important;padding:18px 14px!important;border-radius:20px!important}
  body.lsg-page-draws main section.text-center h1{font-size:25px!important;line-height:1.1!important}
  body.lsg-page-draws .draws-filter{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:13px!important;text-align:left!important}
  body.lsg-page-draws .draws-filter label{font-size:10px!important}
  body.lsg-page-draws .draws-filter select{height:44px!important;font-size:13px!important;text-align:center!important}
  body.lsg-page-draws .draws-filter-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}
  body.lsg-page-draws .draws-filter-actions button,
  body.lsg-page-draws .draws-filter-actions a{min-height:46px!important;padding:0 10px!important;font-size:13px!important;border-radius:14px!important}
  body.lsg-page-draws .draws-table tbody{display:grid!important;gap:12px!important}
  body.lsg-page-draws .draws-table tr{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(118px,auto)!important;grid-template-areas:"date draw" "jackpot jackpot" "reward reward"!important;gap:10px 12px!important;width:100%!important;padding:15px!important;border-radius:20px!important;text-align:center!important}
  body.lsg-page-draws .draws-table td{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;min-width:0!important;padding:0!important;border:0!important;text-align:center!important;font-size:14px!important;line-height:1.35!important}
  body.lsg-page-draws .draws-table td:before{margin-bottom:6px!important;font-size:9.5px!important;text-align:center!important}
  body.lsg-page-draws .draws-table td[data-label="Jour & date"]{grid-area:date!important;font-size:14px!important;font-weight:650!important}
  body.lsg-page-draws .draws-table td[data-label="Tirage"]{grid-area:draw!important;text-align:center!important}
  body.lsg-page-draws .draws-table td[data-label="Tirage"]:before{text-align:center!important}
  body.lsg-page-draws .draw-num{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding:0 13px!important;border-radius:14px!important;background:#eef2ff!important;color:#3730a3!important;font-size:23px!important;line-height:1!important;letter-spacing:.12em!important;font-weight:900!important;white-space:nowrap!important}
  body.lsg-page-draws .draws-table td[data-label="Jackpot"]{grid-area:jackpot!important;flex-direction:row!important;flex-wrap:wrap!important;gap:8px!important;padding-top:11px!important;border-top:1px solid #e8edf4!important;font-size:17px!important;font-weight:900!important}
  body.lsg-page-draws .draws-table td[data-label="Jackpot"]:before{flex-basis:100%!important}
  body.lsg-page-draws .draws-table td[data-label="Récompenses"]{grid-area:reward!important;min-height:0!important;margin:0!important;padding:10px 12px!important;border-radius:14px!important;background:#f8fafc!important;font-size:13px!important}
  body.lsg-page-draws .draws-table td[data-label="Récompenses"]:has(.text-slate-400){display:none!important}

  /* Compte : informations essentielles d'abord, textes juridiques repliés. */
  body.lsg-page-account .account-wrap{padding:0 12px 18px!important}
  body.lsg-page-account .account-grid{gap:12px!important}
  body.lsg-page-account .card{padding:16px!important;border-radius:20px!important}
  body.lsg-page-account .card h2{margin-bottom:10px!important;font-size:19px!important}
  body.lsg-page-account .soft{font-size:12.5px!important;line-height:1.4!important}
  body.lsg-page-account .kpi{margin-top:4px!important}
  body.lsg-page-account .hr{margin:12px 0!important}
  body.lsg-page-account .badge{font-size:13px!important}
  body.lsg-page-account .account-legal-details{margin-top:9px}
  body.lsg-page-account .account-legal-details summary{cursor:pointer;color:#5b21b6;font-size:11px;font-weight:800}
  body.lsg-page-account .account-legal-details p{margin:7px 0 0;color:#64748b;font-size:11px;line-height:1.45}
  body.lsg-page-account .account-secondary-note{font-size:11px!important;color:#64748b!important}
  body.lsg-page-account .confirm-pack{font-size:11px!important;line-height:1.4!important;padding:11px!important}
}
