/**
 * English Secrets UI V23
 * Final premium motion, responsive dashboard/AI, checkout and quiz repair.
 */

:root {
  --es23-ink: #071a39;
  --es23-muted: #52647f;
  --es23-sapphire: #315bf5;
  --es23-violet: #7c3aed;
  --es23-gold: #c89545;
  --es23-ivory: #fffdf8;
  --es23-lavender: #f5f2ff;
  --es23-line: rgba(49, 91, 245, .14);
  --es23-shadow: 0 28px 80px -46px rgba(17, 32, 73, .55);
}

/* Hostinger's generic assistant is not the gated English Secrets AI Examiner. */
.float-btn__wrapper.chatbot-overwrite,
.kodee-fab,
.kodee-fab__open,
#chatbot-float-box {
  display: none !important;
}

/* Logged-in account state in the bespoke Home header. */
body.es-home-v181 .es15-account-pill {
  display: grid !important;
  max-width: 230px !important;
  min-height: 44px !important;
  padding: 7px 13px !important;
  border: 1px solid rgba(255, 255, 255, .14) !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: rgba(255, 255, 255, .075) !important;
  text-decoration: none !important;
  line-height: 1.15 !important;
}
body.es-home-v181 .es15-account-pill span {
  color: #aebbd1 !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
}
body.es-home-v181 .es15-account-pill strong {
  display: block !important;
  overflow: hidden !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
body.es-home-v181 .es15-mobile-account {
  display: block !important;
  min-width: 0 !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 12px !important;
  color: #aebbd1 !important;
  background: rgba(255,255,255,.045) !important;
  font-size: 11px !important;
}
body.es-home-v181 .es15-mobile-account strong {
  display: block !important;
  overflow: hidden !important;
  color: #fff !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

/* Premium, brighter Home — dark product header plus luminous content. */
body.es-home-v181,
body.es-home-v181 .es8 {
  color: var(--es23-ink) !important;
  background: var(--es23-ivory) !important;
}
body.es-home-v181 .es8-hero {
  position: relative !important;
  isolation: isolate !important;
  min-height: 710px !important;
  color: var(--es23-ink) !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(124,58,237,.17), transparent 31%),
    radial-gradient(circle at 88% 13%, rgba(49,91,245,.17), transparent 29%),
    radial-gradient(circle at 78% 92%, rgba(200,149,69,.15), transparent 24%),
    linear-gradient(135deg, #fffdf8 0%, #f5f2ff 47%, #eef4ff 100%) !important;
}
body.es-home-v181 .es8-hero::before,
body.es-home-v181 .es8-hero::after {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  width: 260px !important;
  height: 260px !important;
  border: 1px solid rgba(49,91,245,.16) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  animation: es23-orbit 14s ease-in-out infinite alternate !important;
}
body.es-home-v181 .es8-hero::before { left: -105px !important; top: 94px !important; }
body.es-home-v181 .es8-hero::after { right: -72px !important; bottom: 52px !important; width: 190px !important; height: 190px !important; animation-delay: -5s !important; }
body.es-home-v181 .es8-hero h1 {
  color: var(--es23-ink) !important;
  text-shadow: none !important;
}
body.es-home-v181 .es8-hero h1 span {
  background: linear-gradient(100deg, #315bf5 0%, #7c3aed 56%, #c89545 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  filter: none !important;
}
body.es-home-v181 .es8-hero-copy > p,
body.es-home-v181 .es8-trust span {
  color: var(--es23-muted) !important;
}
body.es-home-v181 .es8-eyebrow {
  border-color: rgba(49,91,245,.2) !important;
  color: #315bf5 !important;
  background: rgba(255,255,255,.66) !important;
  box-shadow: 0 16px 38px -28px rgba(49,91,245,.62) !important;
}
body.es-home-v181 .es8-btn-primary {
  border: 0 !important;
  color: #fff !important;
  background: linear-gradient(115deg, #315bf5, #6d45ee 63%, #8b43e8) !important;
  box-shadow: 0 18px 38px -20px rgba(76,70,232,.8) !important;
}
body.es-home-v181 .es8-btn-ghost {
  border-color: rgba(7,26,57,.14) !important;
  color: var(--es23-ink) !important;
  background: rgba(255,255,255,.75) !important;
  box-shadow: 0 16px 38px -32px rgba(7,26,57,.58) !important;
}
body.es-home-v181 .es8-btn:is(:hover,:focus-visible) {
  transform: translateY(-3px) !important;
}
body.es-home-v181 .es8-dashboard-wrap {
  animation: es23-float 6.5s ease-in-out infinite !important;
  filter: drop-shadow(0 34px 42px rgba(37,50,97,.18)) !important;
}
body.es-home-v181 .es8-float {
  animation: es23-float-chip 5s ease-in-out infinite !important;
}
body.es-home-v181 .es8-float-two { animation-delay: -2.4s !important; }
body.es-home-v181 .es8-card,
body.es-home-v181 .es8-course,
body.es-home-v181 .es8-step {
  border-color: var(--es23-line) !important;
  box-shadow: var(--es23-shadow) !important;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease !important;
}
body.es-home-v181 :is(.es8-card,.es8-course,.es8-step):is(:hover,:focus-within) {
  transform: translateY(-7px) !important;
  border-color: rgba(124,58,237,.25) !important;
  box-shadow: 0 36px 90px -48px rgba(49,44,114,.62) !important;
}
body.es-home-v181 .es8-light-section {
  color: var(--es23-ink) !important;
  background: linear-gradient(180deg, #fff 0%, #faf9ff 100%) !important;
}
body.es-home-v181 .es8-support-contact strong { color: #fff !important; }
body.es-home-v181 .es8-support-contact a { color: #dbe6ff !important; }

@keyframes es23-orbit {
  from { transform: translate3d(0,0,0) rotate(0deg); }
  to { transform: translate3d(28px,-20px,0) rotate(18deg); }
}
@keyframes es23-float {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-12px); }
}
@keyframes es23-float-chip {
  0%,100% { translate: 0 0; }
  50% { translate: 0 -9px; }
}

/* Checkout: stable two-column desktop and one-column touch layout. */
body.es-modern-general-checkout1 .es-general-content-card { overflow: visible !important; }
body.es-modern-general-checkout1 form.woocommerce-checkout {
  display: grid !important;
  grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr) !important;
  align-items: start !important;
  gap: 28px !important;
  width: 100% !important;
}
body.es-modern-general-checkout1 form.woocommerce-checkout #customer_details {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  float: none !important;
  width: 100% !important;
}
body.es-modern-general-checkout1 form.woocommerce-checkout #order_review_heading,
body.es-modern-general-checkout1 form.woocommerce-checkout #order_review {
  grid-column: 2 !important;
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}
body.es-modern-general-checkout1 form.woocommerce-checkout #order_review_heading { grid-row: 1 !important; }
body.es-modern-general-checkout1 form.woocommerce-checkout #order_review { grid-row: 2 !important; }
body.es-modern-general-checkout1 .woocommerce :is(.form-row-first,.form-row-last) {
  width: calc(50% - 8px) !important;
}
body.es-modern-general-checkout1 #order_review :is(table,.woocommerce-checkout-payment) {
  width: 100% !important;
  min-width: 0 !important;
}

/* Protected course access form belongs to the premium course surface. */
body.es-modern-single-course .es-learnpress-content .post-password-form {
  display: grid !important;
  gap: 18px !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  padding: clamp(24px,5vw,48px) !important;
  border: 1px solid var(--es23-line) !important;
  border-radius: 24px !important;
  color: var(--es23-muted) !important;
  background: linear-gradient(145deg,#fff,#f7f5ff) !important;
  box-shadow: var(--es23-shadow) !important;
  text-align: center !important;
  font-family: Inter,"Segoe UI",sans-serif !important;
  font-size: clamp(16px,2vw,20px) !important;
  line-height: 1.65 !important;
}
body.es-modern-single-course .post-password-form label {
  display: grid !important;
  gap: 10px !important;
  color: var(--es23-ink) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}
body.es-modern-single-course .post-password-form input[type="password"] {
  width: 100% !important;
  min-height: 52px !important;
  border: 1px solid #dce3f2 !important;
  border-radius: 13px !important;
  background: #fff !important;
}
body.es-modern-single-course .post-password-form input[type="submit"] {
  min-height: 52px !important;
  padding: 0 28px !important;
  border: 0 !important;
  border-radius: 13px !important;
  color: #fff !important;
  background: linear-gradient(115deg,#315bf5,#7c3aed) !important;
  box-shadow: 0 15px 30px -20px rgba(72,61,226,.8) !important;
  font-weight: 850 !important;
}

/* LearnPress quiz: readable status, answers and controls on every width. */
body.course-item-lp_quiz #learn-press-quiz-app {
  width: 100% !important;
  max-width: 980px !important;
  min-width: 0 !important;
  margin-inline: auto !important;
  color: var(--es23-ink) !important;
}
body.course-item-lp_quiz :is(.quiz-status,.quiz-intro,.questions-index) {
  border: 1px solid var(--es23-line) !important;
  border-radius: 18px !important;
  color: var(--es23-ink) !important;
  background: linear-gradient(145deg,#fff,#f5f3ff) !important;
  box-shadow: 0 20px 55px -42px rgba(24,37,82,.65) !important;
}
body.course-item-lp_quiz .quiz-status {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 18px !important;
}
body.course-item-lp_quiz :is(.quiz-buttons,.quiz-status .quiz-buttons) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px !important;
  width: auto !important;
}
body.course-item-lp_quiz :is(.finish-quiz,.quiz-buttons button,.quiz-buttons .lp-button) {
  min-height: 46px !important;
  max-width: 100% !important;
  padding: 10px 20px !important;
  border: 0 !important;
  border-radius: 12px !important;
  color: #fff !important;
  background: linear-gradient(115deg,#315bf5,#7c3aed) !important;
  white-space: normal !important;
}
body.course-item-lp_quiz .question {
  overflow: hidden !important;
  width: 100% !important;
  margin: 0 0 28px !important;
  padding: clamp(18px,4vw,30px) !important;
  border: 1px solid var(--es23-line) !important;
  border-radius: 20px !important;
  background: #fff !important;
}
body.course-item-lp_quiz .question-title {
  color: var(--es23-ink) !important;
  font-family: Inter,"Segoe UI",sans-serif !important;
  font-size: clamp(20px,3vw,28px) !important;
  line-height: 1.35 !important;
  text-transform: none !important;
}
body.course-item-lp_quiz :is(.answer-options,.answer-options li,.answer-option) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
body.course-item-lp_quiz .answer-option {
  min-height: 56px !important;
  margin: 10px 0 !important;
  padding: 14px 16px !important;
  border: 1px solid #dfe5f1 !important;
  border-radius: 14px !important;
  background: #fbfcff !important;
}
body.course-item-lp_quiz :is(.quiz-pagination,.quiz-pagination .nav-links) {
  position: static !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  padding: 16px 0 !important;
  background: transparent !important;
}

/* Avoid WhatsApp covering primary mobile actions. */
@media (max-width: 680px) {
  body.es-home-v181 .es8-hero {
    min-height: auto !important;
  }
  body.es-home-v181 .es8-hero-grid {
    min-height: 0 !important;
    padding-top: 58px !important;
    padding-bottom: 64px !important;
  }
  body.es-home-v181 .es8-hero h1 {
    font-size: clamp(42px,12vw,58px) !important;
    line-height: 1.02 !important;
    letter-spacing: -2px !important;
  }
  body.es-home-v181 .es8-dashboard-wrap {
    display: none !important;
    animation: none !important;
  }
  body.es-home-v181 .es8-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }
  body.es-home-v181 .es8-actions .es8-btn {
    width: 100% !important;
  }
  .joinchat {
    right: 12px !important;
    bottom: 12px !important;
    transform: scale(.82) !important;
    transform-origin: right bottom !important;
  }
  body.es-home-v181 .es8-cta,
  body.es-home-v181 .es8-footer { padding-bottom: 86px !important; }

  body.es-modern-general-checkout1 form.woocommerce-checkout {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 18px !important;
  }
  body.es-modern-general-checkout1 form.woocommerce-checkout :is(#customer_details,#order_review_heading,#order_review) {
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100% !important;
  }
  body.es-modern-general-checkout1 .woocommerce :is(.form-row-first,.form-row-last,.form-row-wide) {
    float: none !important;
    width: 100% !important;
    margin-inline: 0 !important;
  }
  body.es-modern-general-checkout1 .es-general-content-card {
    padding: 14px !important;
  }
  body.es-modern-general-checkout1 #order_review { overflow-x: auto !important; }

  body.course-item-lp_quiz .quiz-status {
    grid-template-columns: minmax(0,1fr) !important;
    padding: 14px !important;
  }
  body.course-item-lp_quiz :is(.quiz-buttons,.quiz-status .quiz-buttons,.quiz-buttons button,.finish-quiz) {
    width: 100% !important;
  }
  body.course-item-lp_quiz .question { padding: 16px !important; }
  body.course-item-lp_quiz .quiz-intro {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 16px !important;
  }
}

@media (max-width: 920px) {
  body.es-home-v181 .es15-header-actions .es15-account-pill,
  body.es-home-v181 .es15-header-actions .es15-logout { display: none !important; }
}

/* LearnPress lessons and quizzes use the course-item popup route instead of
   the regular page templates. Remove the retired Astra/Elementor shell here
   as well so the old header and footer cannot reappear below course content. */
body.course-item-popup :is(
  .site-header,
  .site-footer,
  #masthead,
  #colophon,
  .elementor-location-header,
  .elementor-location-footer,
  .ast-above-header-wrap,
  .ast-below-header-wrap,
  .site-primary-footer-wrap,
  .site-below-footer-wrap,
  .ast-footer-overlay
) {
  display: none !important;
}

body.course-item-popup {
  background: #f4f6fb !important;
}

/* The fixed support bubble can sit over mandatory checkout fields on narrow
   screens. Checkout already contains its own help context, so keep the form
   completely unobstructed on every device. */
body.woocommerce-checkout .joinchat {
  display: none !important;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
