/*
Theme Name: MMA 2026
Description: Market Minds Academy custom theme.
Version: 2.0.0
Requires PHP: 7.4
Text Domain: mma-theme
*/

/* ── Global layout guards ─────────────────────────────────────────────── */
html{overflow-x:hidden;overscroll-behavior-x:none;}
body{overflow-x:hidden;max-width:100vw;overscroll-behavior-x:none;}
*,*::before,*::after{box-sizing:border-box;min-width:0;}
img{max-width:100%;height:auto;display:block;}
/* Stop any animation from pushing layout wider than viewport */
[class*="ticker"],[class*="track"],[class*="st-track"],[class*="pb-track"],[class*="cpt-track"]{contain:layout style;}
/* iOS momentum scroll fix — keep within bounds */
.mobile-drawer,#mobile-drawer{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}

/* ── Neon hamburger ───────────────────────────────────────────────────── */
@keyframes mmaHamNeon{
  from{box-shadow:0 0 4px #7B2FBE,0 0 8px #7B2FBE,0 0 16px #7B2FBE;}
  to{box-shadow:0 0 8px #00C6FF,0 0 20px #00C6FF,0 0 40px #00C6FF;}
}
#hamburger{touch-action:manipulation !important;pointer-events:all !important;z-index:99999 !important;cursor:pointer !important;-webkit-tap-highlight-color:transparent !important;background:none !important;border:none !important;}
#hamburger span{display:block !important;width:24px !important;height:3px !important;border-radius:2px !important;background:linear-gradient(90deg,#7B2FBE,#00C6FF) !important;animation:mmaHamNeon 1.5s ease-in-out infinite alternate !important;transition:transform .3s,opacity .3s !important;}
#hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg) !important;}
#hamburger.open span:nth-child(2){opacity:0 !important;}
#hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg) !important;}

/* ── Navbar — dark glass ──────────────────────────────────────────────── */
#navbar{background:rgba(10,4,25,0.72) !important;backdrop-filter:blur(20px) !important;-webkit-backdrop-filter:blur(20px) !important;border-bottom:1px solid rgba(79,214,214,0.12) !important;}
#navbar.scrolled{background:rgba(10,4,25,0.92) !important;backdrop-filter:blur(24px) !important;-webkit-backdrop-filter:blur(24px) !important;box-shadow:0 4px 24px rgba(79,214,214,.1) !important;border-bottom:1px solid rgba(79,214,214,0.2) !important;}
.nav-twt-link{color:#4fd6d6 !important;font-weight:600 !important;}
.nav-twt-link:hover{color:#fff !important;text-shadow:0 0 12px rgba(79,214,214,.6) !important;}
#navbar .nav-links a,#navbar .nav-links a:visited{color:rgba(255,255,255,0.85) !important;}
#navbar .nav-links a:hover{color:#4fd6d6 !important;}
#navbar .mob-link,#navbar .mob-link:visited{color:rgba(255,255,255,0.85) !important;}
#navbar .mob-link:hover{color:#4fd6d6 !important;}

/* ── WooCommerce: neon buttons ────────────────────────────────────────── */
:root{--mma-purple:#b44fd6;--mma-cyan:#4fd6d6;--mma-grad:linear-gradient(135deg,#b44fd6,#4fd6d6);}
@keyframes mmaBasketGlow{0%,100%{box-shadow:0 0 12px rgba(180,79,214,.5),0 4px 20px rgba(180,79,214,.3);}50%{box-shadow:0 0 28px rgba(180,79,214,.9),0 4px 32px rgba(79,214,214,.5);}}

/* Hide third-party floating/side carts — MMA has its own (#mma-cart-panel).
   Note: WooCommerce notices and the cart-page table are deliberately NOT hidden. */
#xoo-wsc-cart,#xoo-wsc-modal,.xoo-wsc-basket,.xoo-wsc-main,.xoo-wsc-trigger,
[class*="xoo-wsc"],[id*="xoo-wsc"],
.cart-btn,.wc-cart-btn,.floating-cart,.cart-float,.fc-trigger,
.woo-cart-btn,.wcsg-cart,.wcbt-btn,.cart-popup-btn,.pf-cart-btn,
.widget_shopping_cart,.cart-contents,.header-cart,.site-header-cart,.nav-cart,
.wc-block-cart-button,.woocommerce-offcanvas-cart,.wc-side-cart,.CartSidebar,.cart-sidebar
{display:none !important;opacity:0 !important;pointer-events:none !important;}

/* WooCommerce notices: leave room for WooCommerce's icon, which sits at the left
   edge. The page templates set a tight padding that put the icon over the text. */
.woocommerce-error,.woocommerce-message,.woocommerce-info{position:relative;padding-left:3em !important;}
.woocommerce-error::before,.woocommerce-message::before,.woocommerce-info::before{left:1em !important;}

/* Account: we have our own Sign Out button */
.woocommerce-MyAccount-navigation-link--customer-logout{display:none !important;}
.woocommerce-MyAccount-content a[href*="logout"],
.woocommerce-MyAccount-content .woocommerce-logout{display:none !important;}
.woocommerce-account .woocommerce-MyAccount-content > p:first-child{display:none !important;}

.single_add_to_cart_button,.woocommerce .single_add_to_cart_button{background:var(--mma-grad) !important;color:#fff !important;border:none !important;border-radius:50px !important;padding:16px 36px !important;font-family:"Space Grotesk",sans-serif !important;font-size:16px !important;font-weight:700 !important;cursor:pointer !important;animation:mmaBasketGlow 2.5s ease-in-out infinite !important;transition:transform .2s !important;}
.single_add_to_cart_button:hover{transform:translateY(-2px) !important;}
.add_to_cart_button{background:var(--mma-grad) !important;color:#fff !important;border:none !important;border-radius:50px !important;padding:11px 22px !important;font-family:"Space Grotesk",sans-serif !important;font-weight:700 !important;cursor:pointer !important;animation:mmaBasketGlow 2.5s ease-in-out infinite !important;}
.woocommerce button[type="submit"],.woocommerce input[type="submit"]{background:var(--mma-grad) !important;color:#fff !important;border:none !important;border-radius:50px !important;font-family:"Space Grotesk",sans-serif !important;font-weight:700 !important;}
#place_order{background:var(--mma-grad) !important;color:#fff !important;border:none !important;border-radius:50px !important;font-family:"Space Grotesk",sans-serif !important;font-weight:800 !important;font-size:16px !important;width:100% !important;padding:17px !important;cursor:pointer !important;animation:mmaBasketGlow 2.5s ease-in-out infinite !important;}

/* ── MMA floating cart ────────────────────────────────────────────────── */
:root{--mp:#b44fd6;--mc:#4fd6d6;--mg:linear-gradient(135deg,var(--mp),var(--mc));}
@keyframes mmaGlow{0%,100%{box-shadow:0 0 12px rgba(180,79,214,.5),0 4px 20px rgba(180,79,214,.3);}50%{box-shadow:0 0 28px rgba(180,79,214,.9),0 4px 32px rgba(79,214,214,.5);}}
#mma-cart-btn{position:fixed;bottom:28px;right:28px;width:60px;height:60px;border-radius:50%;background:var(--mg);border:none;cursor:pointer;z-index:9000;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 24px rgba(180,79,214,.5);animation:mmaGlow 2.5s ease-in-out infinite;}
/* Product page has its own sticky enroll bar: sit above it */
body:has(#sp-sticky-cart.show) #mma-cart-btn{bottom:96px;}
#mma-cart-count{position:absolute;top:-4px;right:-4px;background:#ff4757;color:#fff;font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #fff;}
#mma-cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:9001;opacity:0;pointer-events:none;transition:opacity .3s;}
#mma-cart-overlay.active{opacity:1;pointer-events:all;}
#mma-cart-panel{position:fixed;top:0;right:0;width:min(400px,95vw);height:100%;background:#fff;z-index:9002;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:-8px 0 40px rgba(0,0,0,.15);}
#mma-cart-panel.open{transform:translateX(0);}
#mma-cart-head{padding:20px 24px;border-bottom:1px solid rgba(180,79,214,.12);display:flex;align-items:center;justify-content:space-between;background:var(--mg);}
#mma-cart-head-title{font-family:'Space Grotesk',sans-serif;font-size:18px;font-weight:700;color:#fff;}
#mma-cart-close{background:rgba(255,255,255,.2);border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s;}
#mma-cart-close:hover{background:rgba(255,255,255,.35);}
#mma-cart-body{flex:1;overflow-y:auto;padding:20px 24px;}
.mma-ci{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid rgba(180,79,214,.08);}
.mma-ci-img{width:60px;height:60px;object-fit:cover;border-radius:10px;flex-shrink:0;}
.mma-ci-info{flex:1;min-width:0;}
.mma-ci-name{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:600;color:#0d0a1e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px;}
.mma-ci-meta{font-size:12px;color:#9a93b0;}
.mma-ci-rm{color:#ccc;text-decoration:none;font-size:16px;flex-shrink:0;transition:color .2s;}
.mma-ci-rm:hover{color:#e55;}
#mma-cart-total{display:flex;justify-content:space-between;align-items:center;padding:16px 0;font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:700;color:#0d0a1e;border-top:2px solid rgba(180,79,214,.12);margin-top:8px;}
#mma-cart-total strong{background:var(--mg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
#mma-cart-empty{text-align:center;padding:48px 20px;color:#9a93b0;font-family:'Space Grotesk',sans-serif;}
#mma-cart-empty p{margin-top:12px;font-size:15px;}
#mma-cart-foot{padding:20px 24px;border-top:1px solid rgba(180,79,214,.08);display:flex;flex-direction:column;gap:10px;}
#mma-btn-checkout{display:block;text-align:center;background:var(--mg);color:#fff;padding:15px;border-radius:50px;font-family:'Space Grotesk',sans-serif;font-size:15px;font-weight:700;text-decoration:none;transition:transform .2s;box-shadow:0 4px 18px rgba(180,79,214,.4);}
#mma-btn-checkout:hover{transform:translateY(-1px);}
#mma-btn-cart{display:block;text-align:center;background:transparent;color:var(--mp);border:1px solid rgba(180,79,214,.3);padding:12px;border-radius:50px;font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s;}
#mma-btn-cart:hover{background:rgba(180,79,214,.06);}

/* ── "Students online" pill (product pages) ───────────────────────────── */
@keyframes mopDot{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(.75);}}
@keyframes mopSlideIn{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
@keyframes mopPop{0%{transform:scale(1);}40%{transform:scale(1.18);}100%{transform:scale(1);}}
#mma-online-pill{position:fixed;bottom:28px;left:24px;z-index:8998;display:inline-flex;align-items:center;gap:7px;background:rgba(10,6,28,.82);border:1px solid rgba(37,211,102,.35);border-radius:50px;padding:8px 16px 8px 12px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 0 18px rgba(37,211,102,.18),0 4px 24px rgba(0,0,0,.4);cursor:default;animation:mopSlideIn .6s cubic-bezier(.4,0,.2,1) both;animation-delay:.8s;opacity:0;}
.mop-dot{width:8px;height:8px;border-radius:50%;background:#25d366;flex-shrink:0;box-shadow:0 0 6px #25d366,0 0 12px rgba(37,211,102,.6);animation:mopDot 1.6s ease-in-out infinite;}
.mop-icon{color:rgba(255,255,255,.5);display:flex;align-items:center;flex-shrink:0;}
.mop-count{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:800;color:#fff;letter-spacing:-.3px;min-width:20px;text-align:center;}
.mop-count.pop{animation:mopPop .35s cubic-bezier(.4,0,.2,1);}
.mop-text{font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:600;color:rgba(255,255,255,.5);white-space:nowrap;letter-spacing:.2px;}
@media(max-width:480px){
  #mma-online-pill{bottom:90px;left:16px;padding:7px 13px 7px 10px;}
  .mop-text{display:none;}
}

/* ── Course videos (legacy Divi [et_pb_video]) ────────────────────────── */
.mma-video-player{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;margin:0 0 32px;border-radius:12px;background:#000;box-shadow:0 8px 40px rgba(0,0,0,.5);}
.mma-video-player video,.mma-video-player iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;border-radius:12px;}
.mma-lesson-text{margin:24px 0;line-height:1.7;}
.mma-lesson-img{max-width:100%;height:auto;border-radius:8px;margin:12px 0;}
.mma-lesson-btn{display:inline-block;margin:16px 0;padding:12px 28px;background:linear-gradient(135deg,#b44fd6,#4fd6d6);color:#fff!important;text-decoration:none;border-radius:24px;font-weight:700;font-size:15px;}