.site-title {font-weight:normal;}

/* ===== ชื่อคอร์สและราคา เป็นสีขาว ===== */
.text-center h1,
.fct-price-range,
.fct-product-prices,
.fct-price-range * {
  color: #ffffff !important;
}

/* ===== ซ่อนรูปซ้อนบนสุด (WordPress Featured Image) ===== */
.post-thumbnail,
.entry-header .wp-post-image,
article .wp-post-image {
  display: none !important;
}

/* ===== ปุ่ม Buy Now — Modern Style ===== */
.fluent-cart-direct-checkout-button {
  background: linear-gradient(135deg, #ff4444 0%, #cc0000 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 14px 32px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  box-shadow: 0 4px 15px rgba(255, 68, 68, 0.4) !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

.fluent-cart-direct-checkout-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(255, 68, 68, 0.5) !important;
}

/* ===== ปุ่ม Add to Cart — Modern Outline Style ===== */
.fluent-cart-add-to-cart-button {
  background: transparent !important;
  color: #ffffff !important;
  border: 2px solid #ffffff !important;
  border-radius: 50px !important;
  padding: 14px 32px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

.fluent-cart-add-to-cart-button:hover {
  background: #ffffff !important;
  color: #cc0000 !important;
  transform: translateY(-2px) !important;
}

/* Google Login Button - Fluent Community */
a[href*="loginSocial=google"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 0 16px 0 !important;
  padding: 11px 16px !important;
  background: #fff !important;
  color: #3c4043 !important;
  border: 1px solid #dadce0 !important;
  border-radius: 4px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.08) !important;
  transition: box-shadow .2s !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}
a[href*="loginSocial=google"]:hover {
  box-shadow: 0 2px 6px rgba(0,0,0,.15) !important;
  background: #f8f9fa !important;
  color: #3c4043 !important;
}
a[href*="loginSocial=google"] img {
  width: 20px !important;
  height: 20px !important;
  flex-shrink: 0 !important;
}

/* ============================================================
   FC Auth Page – Professional Design (Login & Sign Up)
   Scoped to body.fc-auth-page (set by PHP + JS in functions.php)
   ============================================================ */

/* Page background */
body.fc-auth-page .fhr_content,
body.fc-auth-page .fhr_wrap {
  background: #f5f7fa !important;
}

body.fc-auth-page .fcom_top_menu {
  display: none !important;
}

/* Center the auth card */
body.fc-auth-page .fhr_content {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 100vh !important;
  padding: 32px 16px !important;
}

/* Auth card – catches the inner content div Vue renders */
body.fc-auth-page .fhr_content > div,
body.fc-auth-page .fhr_content .fcom_single_layout,
body.fc-auth-page .fhr_content .fhr_home,
body.fc-auth-page .fhr_content .fcom_route {
  background: #ffffff !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.08) !important;
  padding: 40px 36px !important;
  width: 100% !important;
  max-width: 460px !important;
  margin: 0 auto !important;
}

/* Auth headings */
body.fc-auth-page h1,
body.fc-auth-page h2,
body.fc-auth-page .fcom_auth_title {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  margin-bottom: 6px !important;
  text-align: center !important;
}
body.fc-auth-page .fcom_auth_subtitle,
body.fc-auth-page p.subtitle,
body.fc-auth-page .auth_subtitle {
  color: #6b7280 !important;
  font-size: 15px !important;
  text-align: center !important;
  margin-bottom: 28px !important;
}

/* Form labels */
body.fc-auth-page .el-form-item__label,
body.fc-auth-page label {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #374151 !important;
  margin-bottom: 6px !important;
}

/* Input fields */
body.fc-auth-page .el-input__wrapper {
  border-radius: 12px !important;
  border: 1.5px solid #e5e7eb !important;
  box-shadow: none !important;
  padding: 0 14px !important;
  height: 48px !important;
  background: #fff !important;
}
body.fc-auth-page .el-input__wrapper:hover {
  border-color: #9ca3af !important;
  box-shadow: none !important;
}
body.fc-auth-page .el-input__wrapper.is-focus {
  border-color: #111827 !important;
  box-shadow: none !important;
}
body.fc-auth-page .el-input__inner {
  font-size: 15px !important;
  color: #111827 !important;
  height: 100% !important;
}
body.fc-auth-page .el-input__inner::placeholder {
  color: #9ca3af !important;
}
body.fc-auth-page .el-form-item {
  margin-bottom: 18px !important;
}

/* Forgot password link */
body.fc-auth-page .fcom_forgot_link,
body.fc-auth-page a[href*="forgot"],
body.fc-auth-page .forgot-password {
  font-size: 13px !important;
  color: #6b7280 !important;
  text-decoration: none !important;
  float: right !important;
  margin-top: -12px !important;
  margin-bottom: 20px !important;
}

/* Primary submit button */
body.fc-auth-page .el-button--primary,
body.fc-auth-page button[type="submit"],
body.fc-auth-page .fcom_btn.fcom_btn_primary,
body.fc-auth-page .fc-submit-btn {
  background: #111827 !important;
  border-color: #111827 !important;
  border-radius: 12px !important;
  height: 48px !important;
  width: 100% !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #fff !important;
  letter-spacing: 0.01em !important;
  margin-top: 4px !important;
}
body.fc-auth-page .el-button--primary:hover,
body.fc-auth-page button[type="submit"]:hover {
  background: #1f2937 !important;
  border-color: #1f2937 !important;
}

/* Loading state button */
body.fc-auth-page .el-button.is-loading,
body.fc-auth-page button[disabled] {
  background: #6b7280 !important;
  border-color: #6b7280 !important;
  opacity: 1 !important;
}

/* OR Separator (NSL) */
body.fc-auth-page .nsl-separator {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 24px 0 !important;
  color: #9ca3af !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}
body.fc-auth-page .nsl-separator::before,
body.fc-auth-page .nsl-separator::after {
  content: '' !important;
  flex: 1 !important;
  height: 1px !important;
  background: #e5e7eb !important;
}
body.fc-auth-page .nsl-separator span {
  padding: 0 4px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

/* Google Continue button (NSL) */
body.fc-auth-page .nsl-container {
  margin-top: 0 !important;
}
body.fc-auth-page .nsl-button-google {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 48px !important;
  border-radius: 12px !important;
  border: 1.5px solid #e5e7eb !important;
  background: #ffffff !important;
  color: #374151 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  gap: 10px !important;
  box-shadow: none !important;
  transition: background 0.15s, border-color 0.15s !important;
}
body.fc-auth-page .nsl-button-google:hover {
  background: #f9fafb !important;
  border-color: #d1d5db !important;
}
body.fc-auth-page .nsl-button-icon {
  width: 20px !important;
  height: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}
body.fc-auth-page .nsl-button-label {
  font-size: 15px !important;
  font-weight: 500 !important;
}

/* Switch login/register link */
body.fc-auth-page .fcom_switch_auth,
body.fc-auth-page .auth_switch_link {
  text-align: center !important;
  margin-top: 24px !important;
  font-size: 14px !important;
  color: #6b7280 !important;
}
body.fc-auth-page .fcom_switch_auth a,
body.fc-auth-page .auth_switch_link a {
  color: #111827 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* Cloudflare Turnstile – center it */
body.fc-auth-page .cf-turnstile,
body.fc-auth-page iframe[src*="challenges.cloudflare"] {
  margin: 16px auto !important;
}

/* ===== Responsive Logo Sizing ===== */
.custom-logo {
  height: 40px !important;
  max-height: 40px !important;
  width: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.site-branding img {
  max-width: 100% !important;
}

@media (min-width: 768px) {
  .custom-logo {
    height: 55px !important;
    max-height: 55px !important;
  }
}

@media (min-width: 1025px) {
  .custom-logo {
    height: 65px !important;
    max-height: 65px !important;
  }
}