/* ==========================================================
   DRE FINAL OVERRIDES — SAFE LAST LAYER
   Only use for very small corrections.
   No layout / width / transform hacks here.
========================================================== */





/* 1) Example override: prevent Astra applying yellow focus */
button:focus,
input:focus {
    box-shadow: none !important;
}

/* 2) Example override: slightly smaller mobile H2 headings */
@media (max-width: 600px) {
    h2 {
        font-size: 1.4rem;
    }
}

/* NOTE:
   Intentionally NO rules here that touch:
   - width / max-width
   - margin-left / margin-right
   - transform
   - .wp-block-group or .dre-* containers

   All of the “full-width” experiments and container hacks
   we tried earlier should now be removed.
*/
/* DRE HUB: space before footer (global, reliable) */
body .entry-content > :last-child{
  margin-bottom:48px !important;
}

/* ============================================================
   DRE UNIVERSAL SLOT CONTRACT (ENGINE-AGNOSTIC)
   Goal: Any engine/video dropped into a slot fills it cleanly.
============================================================ */

/* The slot is the layout contract: predictable width + spacing */
.dre-engine-slot{
  width:100%;
  max-width:none;
  margin:0;                /* template controls spacing */
}

/* Force first child "engine root" to behave */
.dre-engine-slot > *{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;     /* stop legacy auto-centering */
}

/* If engines use internal wrappers, also normalise common cases */
.dre-engine-slot > * > *{
  max-width:100%;
}

/* Prevent surprises from old box models */
.dre-engine-slot,
.dre-engine-slot *{
  box-sizing:border-box;
}

/* Media should never overflow the box */
.dre-engine-slot iframe,
.dre-engine-slot video,
.dre-engine-slot img{
  display:block;
  max-width:100%;
}

/* ============================================================
   DRE HUB — MOBILE FULL-BLEED + NO HORIZONTAL DRIFT (ASTRA FIX)
   Scope: lesson shell only (safe)
============================================================ */
@media (max-width: 900px){

  #dre-lesson-shell-01{
    width:100vw;
    max-width:100vw;
    position:relative;
    left:50%;
    right:50%;
    margin-left:-50vw;
    margin-right:-50vw;
    padding:0 12px;
    overflow-x:hidden;
  }

  #dre-lesson-shell-01 .dre-lesson-grid,
  #dre-lesson-shell-01 .dre-lesson-nav,
  #dre-lesson-shell-01 .dre-lesson-content,
  #dre-lesson-shell-01 .dre-panel,
  #dre-lesson-shell-01 .dre-engine-card,
  #dre-lesson-shell-01 .dre-engine-slot{
    width:100%;
    max-width:100%;
    min-width:0;
  }

  #dre-lesson-shell-01 .dre-lesson-nav-card{
    position:static;
    width:100%;
  }
}
