/**
 * Consolidated WooCommerce Styling with Parchment Theme
 *
 * This file contains all WooCommerce styling for:
 * - Login/Register pages
 * - My Account pages
 * - Influencer application form
 * - General forms and elements
 */

/* === COMMON PARCHMENT THEME COLORS === */
:root {
  --parchment-bg: #f5efe4;
  --parchment-bg-darker: #e8ddc4;
  --parchment-border: #8b7355;
  --parchment-border-light: #c4b59d;
  --parchment-text: #5c4c3a;
  --parchment-link: #8b7355;
  --parchment-btn-bg: #000000;
  --parchment-btn-hover: #5c4c3a;
  --parchment-btn-text: #f5efe4;
  --parchment-error-bg: #f8e8e8;
  --parchment-error-border: #8b2e2e;
  --parchment-error-text: #8b2e2e;
  --parchment-success-bg: #e8f8e8;
  --parchment-success-border: #2e8b57;
  --parchment-success-text: #2e8b57;
  --parchment-shadow: rgba(0, 0, 0, 0.1);
}

/* === BACKGROUND STYLING FOR ALL ACCOUNT PAGES === */

/* Style the entire account page container */
#customer_login,
.woocommerce-page.woocommerce-account .site-content,
.woocommerce-account .woocommerce,
.woocommerce .woocommerce-account,
.woocommerce-auth {
  padding: 20px !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* === LOGIN/REGISTER FORM STYLING === */
/* Stronger selectors to override theme styles */
body
  .woocommerce
  #customer_login
  .col-1
  .woocommerce-form.woocommerce-form-login.login,
body
  .woocommerce
  #customer_login
  .col-2
  .woocommerce-form.woocommerce-form-register.register,
body.woocommerce-account
  .woocommerce
  .woocommerce-form.woocommerce-form-login.login,
body.woocommerce-account
  .woocommerce
  .woocommerce-form.woocommerce-form-register.register,
html
  body.woocommerce-page
  #customer_login
  .woocommerce-form.woocommerce-form-login.login,
html
  body.woocommerce-page
  #customer_login
  .woocommerce-form.woocommerce-form-register.register,
.woocommerce form.woocommerce-form-login.login,
.woocommerce form.woocommerce-form-register.register {
  background-color: var(--parchment-bg) !important;
  border: 2px solid var(--parchment-border) !important;
  padding: 25px !important;
  margin-bottom: 30px !important;
  box-shadow: 0 4px 8px var(--parchment-shadow) !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  border-radius: 4px;
}

/* Stronger selectors for login form fields */
body .woocommerce #customer_login .woocommerce-form-row label,
body.woocommerce-account .woocommerce .woocommerce-form-row label,
.woocommerce-page #customer_login .woocommerce-form-row label,
.woocommerce form.login .woocommerce-form-row label,
.woocommerce form.register .woocommerce-form-row label {
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  font-weight: bold !important;
}

/* Stronger selectors for input fields */
body .woocommerce #customer_login input[type="text"],
body .woocommerce #customer_login input[type="email"],
body .woocommerce #customer_login input[type="password"],
body.woocommerce-account .woocommerce input[type="text"],
body.woocommerce-account .woocommerce input[type="email"],
body.woocommerce-account .woocommerce input[type="password"],
.woocommerce-page #customer_login input[type="text"],
.woocommerce-page #customer_login input[type="email"],
.woocommerce-page #customer_login input[type="password"] {
  background-color: var(--parchment-bg) !important;
  border: 1px solid var(--parchment-border) !important;
  color: var(--parchment-text) !important;
  padding: 10px 15px !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Strengthen login button styles */
body
  .woocommerce
  #customer_login
  .woocommerce-button.button.woocommerce-form-login__submit,
body
  .woocommerce
  #customer_login
  .woocommerce-Button.woocommerce-button.button.woocommerce-form-register__submit,
body.woocommerce-account
  .woocommerce
  .woocommerce-button.button.woocommerce-form-login__submit,
body.woocommerce-account
  .woocommerce
  .woocommerce-Button.woocommerce-button.button.woocommerce-form-register__submit,
.woocommerce-page
  #customer_login
  .woocommerce-button.button.woocommerce-form-login__submit,
.woocommerce-page
  #customer_login
  .woocommerce-Button.woocommerce-button.button.woocommerce-form-register__submit {
  background-color: var(--parchment-btn-bg) !important;
  color: var(--parchment-btn-text) !important;
  border: 2px solid var(--parchment-btn-hover) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  text-transform: uppercase !important;
  font-weight: bold !important;
  padding: 12px 25px !important;
}

/* Extra specificity for remember me checkbox and text */
body .woocommerce-form-login__rememberme,
body .woocommerce-privacy-policy-text,
.woocommerce-form-login__rememberme,
.woocommerce-privacy-policy-text {
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Lost password link with extra specificity */
body .woocommerce-LostPassword.lost_password a,
.woocommerce-LostPassword.lost_password a {
  color: var(--parchment-link) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  text-decoration: underline !important;
}

/* The following selectors remain in place */
html body .woocommerce-form.woocommerce-form-login,
html body .woocommerce form.login,
html body .woocommerce form.register,
body .woocommerce-form.woocommerce-form-login,
body .woocommerce form.login,
body .woocommerce form.register,
.woocommerce-account .woocommerce-form.woocommerce-form-login,
.woocommerce-account .woocommerce form.login,
.woocommerce-account .woocommerce form.register,
#page .woocommerce-form.woocommerce-form-login,
#page .woocommerce form.login,
#page .woocommerce form.register {
  background-color: var(--parchment-bg) !important;
  border: 2px solid var(--parchment-border) !important;
  padding: 25px !important;
  margin-bottom: 30px !important;
  box-shadow: 0 4px 8px var(--parchment-shadow) !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  border-radius: 4px;
}

/* Style login page checkbox */
html body .woocommerce form.login .woocommerce-form-login__rememberme,
body .woocommerce form.login .woocommerce-form-login__rememberme {
  font-family: "Crimson Text", Georgia, serif !important;
  color: var(--parchment-text) !important;
}

/* Style login page lost password link */
html body .woocommerce form.login .lost_password a,
body .woocommerce form.login .lost_password a {
  color: var(--parchment-link) !important;
  text-decoration: underline !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

html body .woocommerce form.login .lost_password a:hover,
body .woocommerce form.login .lost_password a:hover {
  color: var(--parchment-text) !important;
}

/* === MY ACCOUNT NAVIGATION STYLING === */
html body.woocommerce-account .woocommerce-MyAccount-navigation ul,
body.woocommerce-account .woocommerce-MyAccount-navigation ul,
html body .woocommerce-MyAccount-navigation ul,
body .woocommerce-MyAccount-navigation ul {
  list-style-type: none !important;
  padding: 0 !important;
  margin: 0 0 25px 0 !important;
  border: 2px solid var(--parchment-border) !important;
  overflow: hidden !important;
  background-color: var(--parchment-bg) !important;
}

html body.woocommerce-account .woocommerce-MyAccount-navigation ul li,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li,
html body .woocommerce-MyAccount-navigation ul li,
body.woocommerce-MyAccount-navigation ul li {
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--parchment-border-light) !important;
}

html
  body.woocommerce-account
  .woocommerce-MyAccount-navigation
  ul
  li:last-child,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child,
html body .woocommerce-MyAccount-navigation ul li:last-child,
body .woocommerce-MyAccount-navigation ul li:last-child {
  border-bottom: none !important;
}

html body.woocommerce-account .woocommerce-MyAccount-navigation ul li a,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a,
html body .woocommerce-MyAccount-navigation ul li a,
body.woocommerce-MyAccount-navigation ul li a {
  display: block !important;
  padding: 12px 15px !important;
  color: var(--parchment-text) !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  border-left: 5px solid transparent !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

html body.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
html body .woocommerce-MyAccount-navigation ul li a:hover,
body.woocommerce-MyAccount-navigation ul li a:hover {
  background-color: var(--parchment-bg-darker) !important;
  border-left: 5px solid var(--parchment-border) !important;
}

html
  body.woocommerce-account
  .woocommerce-MyAccount-navigation
  ul
  li.is-active
  a,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
html body .woocommerce-MyAccount-navigation ul li.is-active a,
body.woocommerce-MyAccount-navigation ul li.is-active a {
  background-color: var(--parchment-bg-darker) !important;
  border-left: 5px solid var(--parchment-border) !important;
  font-weight: bold !important;
}

/* === MY ACCOUNT CONTENT STYLING === */
html body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-content,
html body .woocommerce-MyAccount-content,
body.woocommerce-MyAccount-content,
body .entry-content .woocommerce-MyAccount-content,
html body .entry-content .woocommerce-MyAccount-content {
  background-color: var(--parchment-bg) !important;
  color: var(--parchment-text) !important;
  padding: 25px !important;
  border: 2px solid var(--parchment-border) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  line-height: 1.6 !important;
}

/* Force all text elements inside account content to use proper color */
html body.woocommerce-account .woocommerce-MyAccount-content *,
body.woocommerce-account .woocommerce-MyAccount-content *,
html body .woocommerce-MyAccount-content *,
body.woocommerce-MyAccount-content * {
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Exception for buttons and links */
html body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-MyAccount-content .button,
html body .woocommerce-MyAccount-content .button,
body.woocommerce-MyAccount-content .button {
  color: var(--parchment-btn-text) !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content a:not(.button),
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button),
html body .woocommerce-MyAccount-content a:not(.button),
body .woocommerce-MyAccount-content a:not(.button) {
  color: var(--parchment-link) !important;
  text-decoration: underline !important;
}

html
  body.woocommerce-account
  .woocommerce-MyAccount-content
  a:not(.button):hover,
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):hover,
html body .woocommerce-MyAccount-content a:not(.button):hover,
body .woocommerce-MyAccount-content a:not(.button):hover {
  color: var(--parchment-text) !important;
}

/* Specific styles for headings inside account content */
html body.woocommerce-account .woocommerce-MyAccount-content h1,
html body.woocommerce-account .woocommerce-MyAccount-content h2,
html body.woocommerce-account .woocommerce-MyAccount-content h3,
html body.woocommerce-account .woocommerce-MyAccount-content h4,
html body.woocommerce-account .woocommerce-MyAccount-content h5,
html body.woocommerce-account .woocommerce-MyAccount-content h6,
body.woocommerce-account .woocommerce-MyAccount-content h1,
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3,
body.woocommerce-account .woocommerce-MyAccount-content h4,
body.woocommerce-account .woocommerce-MyAccount-content h5,
body.woocommerce-account .woocommerce-MyAccount-content h6,
html body .woocommerce h2,
html body .woocommerce-account h2,
html body .woocommerce-account .woocommerce h2,
body .woocommerce h2,
body .woocommerce-account h2,
body .woocommerce-account .woocommerce h2 {
  color: var(--parchment-text) !important;
  border-bottom: 2px solid var(--parchment-border) !important;
  padding-bottom: 10px !important;
  margin-bottom: 20px !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* === GLOBAL FORM STYLING === */
/* Form labels */
html body .woocommerce form .form-row label,
html body .woocommerce-page form .form-row label,
html body .woocommerce form .form-row .woocommerce-Input,
html body .woocommerce-page form .form-row .woocommerce-Input,
body .woocommerce form .form-row label,
body .woocommerce-page form .form-row label,
body .woocommerce form .form-row .woocommerce-Input,
body .woocommerce-page form .form-row .woocommerce-Input {
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  font-weight: bold !important;
  margin-bottom: 5px !important;
}

/* Form inputs */
html body .woocommerce form .form-row input.input-text,
html body .woocommerce form .form-row textarea,
html body .woocommerce form .form-row select,
body .woocommerce form .form-row input.input-text,
body .woocommerce form .form-row textarea,
body .woocommerce form .form-row select,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="tel"],
.woocommerce-account input[type="number"],
.woocommerce-account input[type="url"],
.woocommerce-account textarea,
.woocommerce-account select,
html body.woocommerce-account .woocommerce-MyAccount-content input:not(.button),
html body.woocommerce-account .woocommerce-MyAccount-content select,
html body.woocommerce-account .woocommerce-MyAccount-content textarea,
body.woocommerce-account .woocommerce-MyAccount-content input:not(.button),
body.woocommerce-account .woocommerce-MyAccount-content select,
body.woocommerce-account .woocommerce-MyAccount-content textarea {
  background-color: var(--parchment-bg) !important;
  border: 1px solid var(--parchment-border) !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  padding: 10px 15px !important;
  border-radius: 0 !important;
  margin-bottom: 15px !important;
}

/* Focus state for inputs */
html body .woocommerce form .form-row input.input-text:focus,
html body .woocommerce form .form-row textarea:focus,
html body .woocommerce form .form-row select:focus,
body .woocommerce form .form-row input.input-text:focus,
body .woocommerce form .form-row textarea:focus,
body .woocommerce form .form-row select:focus,
.woocommerce-account input[type="text"]:focus,
.woocommerce-account input[type="email"]:focus,
.woocommerce-account input[type="password"]:focus,
.woocommerce-account input[type="tel"]:focus,
.woocommerce-account input[type="number"]:focus,
.woocommerce-account input[type="url"]:focus,
.woocommerce-account textarea:focus,
.woocommerce-account select:focus {
  border: 1px solid var(--parchment-text) !important;
  box-shadow: 0 0 5px rgba(139, 115, 85, 0.5) !important;
  outline: none !important;
}

/* === BUTTON STYLING === */
html body .woocommerce form.login .button,
html body .woocommerce form.register .button,
html body .woocommerce-form-login__submit,
body .woocommerce form.login .button,
body .woocommerce form.register .button,
body .woocommerce-form-login__submit,
html body .woocommerce .button,
body .woocommerce .button,
html body .woocommerce-MyAccount-content .button,
body .woocommerce-MyAccount-content .button,
html body .woocommerce #respond input#submit,
html body .woocommerce a.button,
html body .woocommerce button.button,
html body .woocommerce input.button,
body .woocommerce #respond input#submit,
body .woocommerce a.button,
body .woocommerce button.button,
body .woocommerce input.button {
  display: inline-block !important;
  padding: 12px 25px !important;
  background-color: var(--parchment-btn-bg) !important;
  color: var(--parchment-btn-text) !important;
  text-align: center !important;
  text-decoration: none !important;
  border: 2px solid var(--parchment-btn-hover) !important;
  cursor: pointer !important;
  font-family: "Crimson Text", Georgia, serif !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  transition: all 0.3s ease !important;
  font-weight: bold !important;
  margin: 5px 0 !important;
  box-shadow: 0 2px 4px var(--parchment-shadow) !important;
  width: auto !important;
}

/* Button hover state */
html body .woocommerce form.login .button:hover,
html body .woocommerce form.register .button:hover,
html body .woocommerce-form-login__submit:hover,
body .woocommerce form.login .button:hover,
body .woocommerce form.register .button:hover,
body .woocommerce-form-login__submit:hover,
html body .woocommerce .button:hover,
body .woocommerce .button:hover,
html body .woocommerce-MyAccount-content .button:hover,
body .woocommerce-MyAccount-content .button:hover,
html body .woocommerce #respond input#submit:hover,
html body .woocommerce a.button:hover,
html body .woocommerce button.button:hover,
html body .woocommerce input.button:hover,
body .woocommerce #respond input#submit:hover,
body .woocommerce a.button:hover,
body .woocommerce button.button:hover,
body .woocommerce input.button:hover {
  background-color: var(--parchment-btn-hover) !important;
  border-color: var(--parchment-btn-bg) !important;
}

/* === MESSAGES AND NOTIFICATIONS === */
/* WooCommerce messages and info with proper text color */
html body.woocommerce-account .woocommerce-Message,
html body.woocommerce-account .woocommerce-message,
html body.woocommerce-account .woocommerce-info,
html body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-Message,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error,
html body .woocommerce-Message,
html body .woocommerce-message,
html body .woocommerce-info,
html body .woocommerce-error,
body.woocommerce-Message,
body.woocommerce-message,
body.woocommerce-info,
body.woocommerce-error {
  background-color: var(--parchment-bg-darker) !important;
  color: var(--parchment-text) !important;
  border: 1px solid var(--parchment-border) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  padding: 15px 15px 15px 45px !important;
  position: relative !important;
}

/* Form error message */
.error-message,
.woocommerce-error {
  color: var(--parchment-error-text) !important;
  background-color: var(--parchment-error-bg) !important;
  border: 1px solid var(--parchment-error-border) !important;
  padding: 10px !important;
  margin-bottom: 15px !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Form success message */
.success-message,
.woocommerce-message {
  color: var(--parchment-success-text) !important;
  background-color: var(--parchment-success-bg) !important;
  border: 1px solid var(--parchment-success-border) !important;
  padding: 10px !important;
  margin-bottom: 15px !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* === TABLE STYLING === */
/* Tables in WooCommerce account */
html body.woocommerce-account table,
body.woocommerce-account table,
html body .woocommerce table,
body .woocommerce table {
  background-color: var(--parchment-bg) !important;
  border: 2px solid var(--parchment-border) !important;
}

html body.woocommerce-account table th,
body.woocommerce-account table th,
html body .woocommerce table th,
body .woocommerce table th {
  background-color: var(--parchment-bg-darker) !important;
  color: var(--parchment-text) !important;
  border: 1px solid var(--parchment-border-light) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

html body.woocommerce-account table td,
body.woocommerce-account table td,
html body .woocommerce table td,
body .woocommerce table td {
  border: 1px solid var(--parchment-border-light) !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* === INFLUENCER APPLICATION FORM SPECIFIC STYLING === */
/* Form Section Styles */
html body .mf-influencer-application-form .form-section,
body .mf-influencer-application-form .form-section {
  margin-bottom: 25px !important;
  padding: 15px !important;
  background-color: var(--parchment-bg-darker) !important;
  border: 1px solid var(--parchment-border-light) !important;
}

/* Form Help Text */
html body .mf-influencer-application-form .help-text,
body .mf-influencer-application-form .help-text,
.help-text {
  font-style: italic !important;
  color: var(--parchment-link) !important;
  margin-top: -10px !important;
  margin-bottom: 15px !important;
  font-size: 14px !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Required Field Indicator */
html body .mf-influencer-application-form .required,
body .mf-influencer-application-form .required,
.required {
  color: var(--parchment-error-text) !important;
}

/* Form Fieldset */
html body .mf-influencer-application-form fieldset,
body .mf-influencer-application-form fieldset,
fieldset {
  border: 1px solid var(--parchment-border-light) !important;
  padding: 15px !important;
  margin-bottom: 20px !important;
  background-color: var(--parchment-bg) !important;
}

/* Form Legend */
html body .mf-influencer-application-form legend,
body .mf-influencer-application-form legend,
legend {
  color: var(--parchment-text) !important;
  font-weight: bold !important;
  padding: 0 10px !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* === MISC STYLING === */
/* Style the page titles and all text */
.woocommerce-account .entry-title,
.woocommerce-account .page-title,
.woocommerce-account .entry-content p,
.woocommerce-account .entry-content div,
.woocommerce-account .entry-content span,
.woocommerce-account .entry-content label,
.woocommerce-auth .entry-content p,
.woocommerce-auth .entry-content div,
.woocommerce-auth .entry-content span,
.woocommerce-auth .entry-content label,
html body.woocommerce-account span,
html body.woocommerce-account div,
html body.woocommerce-account p,
html body.woocommerce-account address,
html body.woocommerce-account label,
html body.woocommerce-account strong,
html body.woocommerce-account em,
html body.woocommerce-account li,
body.woocommerce-account span,
body.woocommerce-account div,
body.woocommerce-account p,
body.woocommerce-account address,
body.woocommerce-account label,
body.woocommerce-account strong,
body.woocommerce-account em,
body.woocommerce-account li {
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Additional rules for payment methods and forms */
html body.woocommerce-account .payment_methods *,
body.woocommerce-account .payment_methods *,
html body.woocommerce-account form *,
body.woocommerce-account form *,
html body.woocommerce-account fieldset *,
body.woocommerce-account fieldset * {
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Fix navbar font to use the font you prefer */
.main-header-menu li a,
.ast-main-header-bar-alignment a,
.ast-header-navigation a,
.ast-masthead-custom-menu-items a,
.site-header a,
.new-wrapper-class a,
.ast-desktop .main-header-menu a,
.main-navigation a {
  font-family: "Crimson Text", Georgia, serif !important;
}

/* === FONT AWESOME ICON FIXES === */
/* Preserve Font Awesome icons in navbar */
.fa,
.fas,
.far,
.fal,
.fab,
.dashicons,
i[class^="fa-"],
i[class*=" fa-"],
span[class^="fa-"],
span[class*=" fa-"],
.main-header-menu li a i,
.ast-main-header-bar-alignment a i,
.ast-header-navigation a i,
.site-header a i,
.main-navigation a i,
.menu-item i,
.menu-icon i {
  font-family: "Font Awesome 5 Free", "FontAwesome", "fa", sans-serif !important;
  font-style: normal !important;
  font-weight: 900 !important; /* Font Awesome solid style */
  font-display: block !important;
  display: inline-block !important;
  visibility: visible !important; /* Ensure icons are visible */
  opacity: 1 !important; /* Ensure full opacity */
}

/* === CRITICAL FIX FOR FONT AWESOME PSEUDO-ELEMENTS === */
/* This is what actually renders the icon */
.fa:before,
.fas:before,
.far:before,
.fal:before,
.fab:before,
i[class^="fa-"]:before,
i[class*=" fa-"]:before,
span[class^="fa-"]:before,
span[class*=" fa-"]:before,
.menu-item i:before,
.menu-icon i:before,
.fa-cart-shopping:before,
.fa-shopping-cart:before,
i.fa-cart-shopping:before,
i.fa-shopping-cart:before,
[class*="fa-cart"]:before,
[class*="fa-shopping"]:before {
  font-family: "Font Awesome 5 Free", "FontAwesome", "fa", sans-serif !important;
  font-weight: 900 !important;
  visibility: visible !important;
  opacity: 1 !important;
  display: inline-block !important;
}

/* Specific fix for brand icons */
.fab,
i.fab,
span.fab,
.menu-item i.fab,
.menu-icon i.fab {
  font-family: "Font Awesome 5 Brands", "FontAwesome", "fa", sans-serif !important;
  font-weight: 400 !important; /* Brand icons use 400 weight */
}

.fab:before,
i.fab:before,
span.fab:before,
.menu-item i.fab:before,
.menu-icon i.fab:before {
  font-family: "Font Awesome 5 Brands", "FontAwesome", "fa", sans-serif !important;
  font-weight: 400 !important;
  visibility: visible !important;
  opacity: 1 !important;
  display: inline-block !important;
}

/* Specific fix for regular icons */
.far,
i.far,
span.far,
.menu-item i.far,
.menu-icon i.far {
  font-family: "Font Awesome 5 Free", "FontAwesome", "fa", sans-serif !important;
  font-weight: 400 !important; /* Regular icons use 400 weight */
}

.far:before,
i.far:before,
span.far:before,
.menu-item i.far:before,
.menu-icon i.far:before {
  font-family: "Font Awesome 5 Free", "FontAwesome", "fa", sans-serif !important;
  font-weight: 400 !important;
  visibility: visible !important;
  opacity: 1 !important;
  display: inline-block !important;
}

/* EXTREMELY SPECIFIC SHOPPING CART FIX */
.fa-cart-shopping:before,
.fa-shopping-cart:before,
i.fa-cart-shopping:before,
i.fa-shopping-cart:before,
span.fa-cart-shopping:before,
span.fa-shopping-cart:before,
.fa-solid.fa-cart-shopping:before,
i.fa-solid.fa-cart-shopping:before,
.menu-item i.fa-cart-shopping:before,
.ast-menu-cart-icon i.fa-cart-shopping:before,
.ast-cart-menu-wrap i.fa-cart-shopping:before {
  content: "\f07a" !important; /* Font Awesome cart icon unicode */
  visibility: visible !important;
  opacity: 1 !important;
  display: inline-block !important;
  font-family: "Font Awesome 5 Free", "FontAwesome", "fa", sans-serif !important;
  font-weight: 900 !important;
  color: inherit !important;
}

/* Fix for icon sizing and spacing in menu items */
.menu-item i._before,
.menu-item i._after,
.menu-icon i._before,
.menu-icon i._after {
  margin-right: 5px !important;
  vertical-align: middle !important;
  text-align: center !important;
  width: 1.25em !important;
}

.menu-item i._after,
.menu-icon i._after {
  margin-left: 5px !important;
  margin-right: 0 !important;
}

/* Make sure Aerohate font is preserved in other places where it's needed/intended */
.aerohate-text,
.aerohate-font,
.custom-aerohate,
.entry-title {
  font-family: "Aerohate", sans-serif !important;
}

/* Preserve white text for entry titles */
.entry-title,
h1.entry-title,
.page h1.entry-title,
.woocommerce-account h1.entry-title,
.post h1.entry-title,
body h1.entry-title,
html body h1.entry-title {
  color: #ffffff !important;
  font-family: "Aerohate", sans-serif !important;
}

/* === ADMIN BAR FIXES === */
/* Ensure admin bar maintains proper styling */
#wpadminbar,
#wpadminbar *,
html body #wpadminbar,
html body #wpadminbar *,
body #wpadminbar,
body #wpadminbar * {
  color: #f0f0f1 !important; /* Default WordPress admin bar text color */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !important; /* WP default font */
}

/* Fix admin bar links and hover states */
#wpadminbar a,
#wpadminbar a:hover,
#wpadminbar a:focus,
#wpadminbar a:active,
html body #wpadminbar a,
html body #wpadminbar a:hover,
html body #wpadminbar a:focus,
html body #wpadminbar a:active,
body #wpadminbar a,
body #wpadminbar a:hover,
body #wpadminbar a:focus,
body #wpadminbar a:active {
  color: #f0f0f1 !important;
  background-color: transparent !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !important;
}

/* Fix admin bar icons */
#wpadminbar .ab-icon:before,
#wpadminbar .ab-item:before,
#wpadminbar .ab-submenu .ab-item:before,
#wpadminbar #adminbarsearch:before {
  color: #f0f0f1 !important;
  font-family: dashicons !important;
}

/* Fix admin bar hover states */
#wpadminbar .ab-top-menu > li.hover > .ab-item,
#wpadminbar .ab-top-menu > li:hover > .ab-item,
#wpadminbar .ab-top-menu > li > .ab-item:focus,
#wpadminbar .ab-submenu li:hover > .ab-item {
  background-color: #2c3338 !important;
  color: #72aee6 !important;
}

#wpadminbar .ab-top-menu > li.hover > .ab-item span,
#wpadminbar .ab-top-menu > li:hover > .ab-item span,
#wpadminbar .ab-submenu li:hover > .ab-item span {
  color: #72aee6 !important;
}

/* === PASSWORD VISIBILITY TOGGLE BUTTON FIX === */
/* Fix the show/hide password button styling */
.show-password-input,
button.show-password-input,
html body .show-password-input,
html body button.show-password-input,
body .show-password-input,
body button.show-password-input,
.woocommerce .show-password-input,
.woocommerce button.show-password-input,
.woocommerce-page .show-password-input,
.woocommerce-page button.show-password-input {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  color: var(--parchment-text) !important;
  position: absolute !important;
  right: 10px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: auto !important;
  min-width: auto !important;
}

/* Hover effect for password toggle */
.show-password-input:hover,
button.show-password-input:hover,
html body .show-password-input:hover,
html body button.show-password-input:hover,
body .show-password-input:hover,
body button.show-password-input:hover {
  background-color: rgba(0, 0, 0, 0.05) !important;
  border-radius: 50% !important;
  cursor: pointer !important;
}

/* Ensure the password input has proper padding to accommodate the icon */
.password-input,
.woocommerce .password-input,
html body .password-input,
body .password-input {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.password-input input[type="password"],
.woocommerce .password-input input[type="password"],
html body .password-input input[type="password"],
body .password-input input[type="password"] {
  padding-right: 40px !important; /* Make room for the toggle button */
}

/* === CHECKOUT FORM STYLING === */
/* Checkout container styling */
html body .woocommerce .col2-set#customer_details,
body .woocommerce .col2-set#customer_details,
#customer_details {
  background-color: var(--parchment-bg) !important;
  border: 2px solid var(--parchment-border) !important;
  padding: 25px !important;
  margin-bottom: 30px !important;
  box-shadow: 0 4px 8px var(--parchment-shadow) !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  border-radius: 4px;
}

/* Checkout column styling */
html body .woocommerce .col2-set .col-1,
html body .woocommerce .col2-set .col-2,
body .woocommerce .col2-set .col-1,
body .woocommerce .col2-set .col-2,
#customer_details .col-1,
#customer_details .col-2 {
  background-color: var(--parchment-bg) !important;
  padding: 15px !important;
  border-radius: 4px !important;
}

/* Checkout heading styling */
html body .woocommerce .col2-set h3,
body .woocommerce .col2-set h3,
#customer_details h3,
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3,
#order_review_heading,
#payment_heading,
#referral_code_field h3 {
  color: var(--parchment-text) !important;
  border-bottom: 2px solid var(--parchment-border) !important;
  padding-bottom: 10px !important;
  margin-bottom: 20px !important;
  font-family: "Crimson Text", Georgia, serif !important;
  font-weight: bold !important;
}

/* Checkout fields styling */
html body .woocommerce-billing-fields__field-wrapper .form-row label,
html body .woocommerce-shipping-fields__field-wrapper .form-row label,
html body .woocommerce-additional-fields__field-wrapper .form-row label,
body .woocommerce-billing-fields__field-wrapper .form-row label,
body .woocommerce-shipping-fields__field-wrapper .form-row label,
body .woocommerce-additional-fields__field-wrapper .form-row label,
#referral_code_field label,
.woocommerce-checkout .form-row label {
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  font-weight: bold !important;
}

/* Checkout input fields styling */
html body .woocommerce-billing-fields__field-wrapper input,
html body .woocommerce-shipping-fields__field-wrapper input,
html body .woocommerce-additional-fields__field-wrapper input,
html body .woocommerce-additional-fields__field-wrapper textarea,
body .woocommerce-billing-fields__field-wrapper input,
body .woocommerce-shipping-fields__field-wrapper input,
body .woocommerce-additional-fields__field-wrapper input,
body .woocommerce-additional-fields__field-wrapper textarea,
#referral_code_field input,
.woocommerce-checkout .input-text,
.woocommerce-checkout select {
  background-color: var(--parchment-bg) !important;
  border: 1px solid var(--parchment-border) !important;
  color: var(--parchment-text) !important;
  padding: 10px 15px !important;
  font-family: "Crimson Text", Georgia, serif !important;
  border-radius: 0 !important;
}

/* Checkout select fields and Select2 styling */
.select2-container--default .select2-selection--single,
html body .select2-container--default .select2-selection--single,
body .select2-container--default .select2-selection--single {
  background-color: var(--parchment-bg) !important;
  border: 1px solid var(--parchment-border) !important;
  color: var(--parchment-text) !important;
  height: auto !important;
  padding: 5px !important;
  border-radius: 0 !important;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__rendered,
html
  body
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered,
body
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  line-height: 28px !important;
}

.select2-container--default .select2-results__option,
html body .select2-container--default .select2-results__option,
body .select2-container--default .select2-results__option {
  font-family: "Crimson Text", Georgia, serif !important;
}

.select2-container--default
  .select2-results__option--highlighted[data-selected],
.select2-container--default
  .select2-results__option--highlighted[aria-selected],
html
  body
  .select2-container--default
  .select2-results__option--highlighted[data-selected],
html
  body
  .select2-container--default
  .select2-results__option--highlighted[aria-selected],
body
  .select2-container--default
  .select2-results__option--highlighted[data-selected],
body
  .select2-container--default
  .select2-results__option--highlighted[aria-selected] {
  background-color: var(--parchment-border) !important;
  color: var(--parchment-bg) !important;
}

/* Referral code section styling */
#referral_code_field {
  margin-top: 20px !important;
  padding-top: 10px !important;
}

.referral-code-validation {
  margin-top: 10px !important;
  margin-bottom: 20px !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}

#validate-referral-code {
  background-color: var(--parchment-btn-bg) !important;
  color: var(--parchment-btn-text) !important;
  border: 2px solid var(--parchment-btn-hover) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  text-transform: uppercase !important;
  font-weight: bold !important;
  padding: 8px 15px !important;
  margin-right: 10px !important;
}

#validate-referral-code:hover {
  background-color: var(--parchment-btn-hover) !important;
  border-color: var(--parchment-btn-bg) !important;
}

#referral-code-message {
  margin-top: 10px !important;
  flex-basis: 100% !important;
}

/* Focus state for checkout fields */
html body .woocommerce-billing-fields__field-wrapper input:focus,
html body .woocommerce-shipping-fields__field-wrapper input:focus,
html body .woocommerce-additional-fields__field-wrapper input:focus,
html body .woocommerce-additional-fields__field-wrapper textarea:focus,
body .woocommerce-billing-fields__field-wrapper input:focus,
body .woocommerce-shipping-fields__field-wrapper input:focus,
body .woocommerce-additional-fields__field-wrapper input:focus,
body .woocommerce-additional-fields__field-wrapper textarea:focus,
#referral_code_field input:focus {
  border: 1px solid var(--parchment-text) !important;
  box-shadow: 0 0 5px rgba(139, 115, 85, 0.5) !important;
  outline: none !important;
}

/* Required field asterisk */
.required,
.required_field .required {
  color: var(--parchment-error-text) !important;
}

/* Responsive adjustments for checkout */
@media screen and (max-width: 768px) {
  html body .woocommerce .col2-set,
  body .woocommerce .col2-set,
  #customer_details {
    padding: 15px !important;
  }

  .referral-code-validation {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  #validate-referral-code {
    margin-bottom: 10px !important;
    width: 100% !important;
  }
}

/* === ORDER REVIEW TABLE STYLING === */
#order_review,
.woocommerce-checkout-review-order,
html body #order_review,
body #order_review {
  background-color: var(--parchment-bg) !important;
  border: 2px solid var(--parchment-border) !important;
  padding: 25px !important;
  margin-bottom: 30px !important;
  box-shadow: 0 4px 8px var(--parchment-shadow) !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  border-radius: 4px;
}

/* Order review table styling */
#order_review table.shop_table,
.woocommerce-checkout-review-order-table,
html body #order_review table.shop_table,
body #order_review table.shop_table {
  border: 1px solid var(--parchment-border) !important;
  border-collapse: separate !important;
  border-radius: 4px !important;
  margin-bottom: 25px !important;
  width: 100% !important;
  background-color: var(--parchment-bg) !important;
  table-layout: fixed !important;
}

/* Remove any flexbox styling from table cells */
#order_review table.shop_table td,
#order_review table.shop_table th,
.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table th,
html body #order_review table.shop_table td,
html body #order_review table.shop_table th,
body #order_review table.shop_table td,
body #order_review table.shop_table th {
  display: table-cell !important;
  flex: none !important;
  flex-direction: initial !important;
  flex-wrap: initial !important;
  justify-content: initial !important;
  align-content: initial !important;
  align-items: initial !important;
  padding: 12px !important;
  text-align: left !important;
  vertical-align: top !important;
  border-bottom: 1px solid var(--parchment-border-light) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  color: var(--parchment-text) !important;
  word-wrap: break-word !important;
}

/* Table headers */
#order_review table.shop_table thead th,
.woocommerce-checkout-review-order-table thead th,
html body #order_review table.shop_table thead th,
body #order_review table.shop_table thead th {
  background-color: var(--parchment-bg-darker) !important;
  color: var(--parchment-text) !important;
  padding: 12px !important;
  font-weight: bold !important;
  text-align: left !important;
  border-bottom: 2px solid var(--parchment-border) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Product name column */
#order_review table.shop_table .product-name,
.woocommerce-checkout-review-order-table .product-name,
html body #order_review table.shop_table .product-name,
body #order_review table/shop_table .product-name {
  width: 60% !important;
  display: table-cell !important;
  padding: 12px !important;
  position: relative !important;
  text-align: left !important;
  vertical-align: top !important;
}

/* Fix product name text styling */
#order_review table.shop_table .product-name > span,
#order_review table.shop_table .product-name > strong,
.woocommerce-checkout-review-order-table .product-name > span,
.woocommerce-checkout-review-order-table .product-name > strong,
html body #order_review table.shop_table .product-name > span,
html body #order_review table.shop_table .product-name > strong,
body #order_review table.shop_table .product-name > span,
body #order_review table/shop_table .product-name > strong {
  display: inline !important;
  text-align: left !important;
}

/* Product name label */
#order_review table.shop_table .product-name > :first-child:not(dl),
.woocommerce-checkout-review-order-table .product-name > :first-child:not(dl),
html body #order_review table/shop_table .product-name > :first-child:not(dl),
body #order_review table/shop_table .product-name > :first-child:not(dl) {
  font-weight: bold !important;
  margin-bottom: 8px !important;
  display: block !important;
  text-align: left !important;
}

/* Product quantity */
#order_review table.shop_table .product-name .product-quantity,
.woocommerce-checkout-review-order-table .product-name .product-quantity,
html body #order_review table/shop_table .product-name .product-quantity,
body #order_review table/shop_table .product-name .product-quantity {
  display: inline-block !important;
  font-weight: normal !important;
  margin-left: 5px !important;
  vertical-align: baseline !important;
}

/* Product total column */
#order_review table.shop_table .product-total,
.woocommerce-checkout-review-order-table .product-total,
html body #order_review table/shop_table .product-total,
body #order_review table/shop_table .product-total {
  text-align: right !important;
  width: 40% !important;
  vertical-align: top !important;
}

/* Variation list styling - simple and readable */
#order_review table.shop_table dl.variation,
.woocommerce-checkout-review-order-table dl.variation,
html body #order_review table/shop_table dl.variation,
body #order_review table/shop_table dl.variation {
  margin: 8px 0 0 0 !important;
  padding: 0 !important;
  font-size: 0.95em !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
  clear: both !important;
  border-radius: 4px !important;
  border: 1px solid var(--parchment-border-light) !important;
  background-color: var(--parchment-bg) !important;
  display: block !important;
  flex: none !important;
  flex-direction: initial !important;
  flex-wrap: initial !important;
  justify-content: initial !important;
  align-content: initial !important;
  align-items: initial !important;
  text-align: left !important;
}

/* Variation title header */
#order_review table.shop_table dl.variation:before,
.woocommerce-checkout-review-order-table dl.variation:before,
html body #order_review table/shop_table dl.variation:before,
body #order_review table/shop_table dl.variation:before {
  content: "Ticket Details" !important;
  display: block !important;
  background-color: var(--parchment-bg-darker) !important;
  padding: 8px 12px !important;
  font-weight: bold !important;
  border-bottom: 1px solid var(--parchment-border-light) !important;
  color: var(--parchment-text) !important;
  text-align: center !important;
}

/* UPDATED: Terms and Descriptions in a row instead of columns */
/* Terms */
#order_review table.shop_table dl.variation dt,
.woocommerce-checkout-review-order-table dl.variation dt,
html body #order_review table/shop_table dl.variation dt,
body #order_review table/shop_table dl.variation dt {
  float: none !important;
  clear: none !important;
  width: auto !important;
  padding: 5px 0 5px 10px !important;
  margin: 0 !important;
  border-bottom: 1px dotted var(--parchment-border-light) !important;
  font-weight: bold !important;
  color: var(--parchment-text) !important;
  display: inline-block !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

/* Description - now on same line as term */
#order_review table.shop_table dl.variation dd,
.woocommerce-checkout-review-order-table dl.variation dd,
html body #order_review table/shop_table dl.variation dd,
body #order_review table/shop_table dl.variation dd {
  float: none !important;
  width: auto !important;
  padding: 5px 10px 5px 5px !important;
  margin: 0 !important;
  border-bottom: 1px dotted var(--parchment-border-light) !important;
  text-align: left !important;
  display: inline-block !important;
  box-sizing: border-box !important;
}

#order_review table.shop_table dl.variation dd p,
.woocommerce-checkout-review-order-table dl.variation dd p,
html body #order_review table/shop_table dl.variation dd p,
body #order_review table/shop_table dl.variation dd p {
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

/* Create row breaks between variations */
#order_review table.shop_table dl.variation dt:after,
.woocommerce-checkout-review-order-table dl.variation dt:after,
html body #order_review table/shop_table dl.variation dt:after,
body #order_review table/shop_table dl.variation dt:after {
  content: ": " !important;
}

/* Add line breaks after each variation pair */
#order_review table.shop_table dl.variation dd:after,
.woocommerce-checkout-review-order-table dl.variation dd:after,
html body #order_review table/shop_table dl.variation dd:after,
body #order_review table/shop_table dl.variation dd:after {
  content: "" !important;
  display: block !important;
  width: 100% !important;
  clear: both !important;
}

/* Last items in the list shouldn't have a bottom border */
#order_review table.shop_table dl.variation dt:nth-last-of-type(1),
#order_review table.shop_table dl.variation dd:last-child,
.woocommerce-checkout-review-order-table dl.variation dt:nth-last-of-type(1),
.woocommerce-checkout-review-order-table dl.variation dd:last-child,
html body #order_review table/shop_table dl.variation dt:nth-last-of-type(1),
html body #order_review table/shop_table dl.variation dd:last-child,
body #order_review table/shop_table dl.variation dt:nth-last-of-type(1),
body #order_review table/shop_table dl.variation dd:last-child {
  border-bottom: none !important;
}

/* Fix for mobile display */
@media screen and (max-width: 768px) {
  #order_review table.shop_table dl.variation dt,
  #order_review table.shop_table dl.variation dd,
  .woocommerce-checkout-review-order-table dl.variation dt,
  .woocommerce-checkout-review-order-table dl.variation dd,
  html body #order_review table/shop_table dl.variation dt,
  html body #order_review table/shop_table dl.variation dd,
  body #order_review table/shop_table dl.variation dt,
  body #order_review table/shop_table dl.variation dd {
    float: none !important;
    width: 100% !important;
    text-align: left !important;
  }

  #order_review table.shop_table dl.variation dt,
  .woocommerce-checkout-review-order-table dl.variation dt,
  html body #order_review table/shop_table dl.variation dt,
  body #order_review table/shop_table dl.variation dt {
    padding: 5px 10px 0px 10px !important;
    border-bottom: none !important;
  }

  #order_review table.shop_table dl.variation dd,
  .woocommerce-checkout-review-order-table dl.variation dd,
  html body #order_review table/shop_table dl.variation dd,
  body #order_review table/shop_table dl.variation dd {
    padding: 0px 10px 5px 20px !important;
  }

  #order_review table.shop_table dl.variation dt:after,
  .woocommerce-checkout-review-order-table dl.variation dt:after,
  html body #order_review table/shop_table dl.variation dt:after,
  body #order_review table/shop_table dl.variation dt:after {
    content: "" !important;
  }
}

/* === PAYMENT METHODS STYLING === */
#payment,
.woocommerce-checkout-payment,
html body #payment,
body #payment {
  background-color: var(--parchment-bg) !important;
  border: 1px solid var(--parchment-border) !important;
  border-radius: 4px !important;
  padding: 15px !important;
  margin-top: 20px !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Payment method list */
#payment ul.payment_methods,
.woocommerce-checkout-payment ul.payment_methods,
html body #payment ul.payment_methods,
body #payment ul.payment_methods {
  padding: 0 !important;
  margin: 0 0 20px 0 !important;
  list-style: none !important;
  border-bottom: 1px solid var(--parchment-border-light) !important;
}

#payment ul.payment_methods li,
.woocommerce-checkout-payment ul.payment_methods li,
html body #payment ul.payment_methods li,
body #payment ul.payment_methods li {
  padding: 10px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--parchment-border-light) !important;
}

#payment ul.payment_methods li:last-child,
.woocommerce-checkout-payment ul.payment_methods li:last-child,
html body #payment ul.payment_methods li:last-child,
body #payment ul.payment_methods li:last-child {
  border-bottom: none !important;
}

/* Payment method labels */
#payment ul.payment_methods li label,
.woocommerce-checkout-payment ul.payment_methods li label,
html body #payment ul.payment_methods li label,
body #payment ul.payment_methods li label {
  display: inline-block !important;
  margin-left: 5px !important;
  color: var(--parchment-text) !important;
  font-weight: bold !important;
  cursor: pointer !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Payment method icons */
#payment ul.payment_methods li img,
.woocommerce-checkout-payment ul.payment_methods li img,
html body #payment ul.payment_methods li img,
body #payment ul.payment_methods li img {
  vertical-align: middle !important;
  margin-left: 10px !important;
  max-height: 25px !important;
}

/* Payment box */
#payment .payment_box,
.woocommerce-checkout-payment .payment_box,
html body #payment .payment_box,
body #payment .payment_box {
  padding: 15px !important;
  margin: 10px 0 !important;
  background-color: var(--parchment-bg-darker) !important;
  border-radius: 4px !important;
  position: relative !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

#payment .payment_box:before,
.woocommerce-checkout-payment .payment_box:before,
html body #payment .payment_box:before,
body #payment .payment_box:before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: -10px !important;
  left: 15px !important;
  border: 5px solid var(--parchment-bg-darker) !important;
  border-right-color: transparent !important;
  border-left-color: transparent !important;
  border-top-color: transparent !important;
}

/* Stripe UPE Element */
.wc-stripe-upe-form,
.wc-stripe-upe-element,
html body .wc-stripe-upe-form,
html body .wc-stripe-upe-element,
body .wc-stripe-upe-form,
body .wc-stripe-upe-element {
  background-color: transparent !important;
  padding: 10px 0 !important;
}

/* Terms and conditions */
.woocommerce-terms-and-conditions-wrapper,
html body .woocommerce-terms-and-conditions-wrapper,
body .woocommerce-terms-and-conditions-wrapper {
  margin-bottom: 20px !important;
  padding: 15px !important;
  background-color: var(--parchment-bg-darker) !important;
  border: 1px solid var(--parchment-border-light) !important;
  border-radius: 4px !important;
}

.woocommerce-privacy-policy-text,
html body .woocommerce-privacy-policy-text,
body .woocommerce-privacy-policy-text {
  margin-bottom: 15px !important;
  font-size: 0.9em !important;
  color: var(--parchment-text) !important;
  font-family: "Crimson Text", Georgia, serif !important;
}

/* Checkbox label */
.woocommerce-form__label-for-checkbox,
html body .woocommerce-form__label-for-checkbox,
body .woocommerce-form__label-for-checkbox,
.woocommerce-terms-and-conditions-checkbox-text,
html body .woocommerce-terms-and-conditions-checkbox-text,
body .woocommerce-terms-and-conditions-checkbox-text {
  display: inline-block !important;
  color: var(--parchment-text) !important;
  cursor: pointer !important;
  font-family: "Crimson Text", Georgia, serif !important;
  line-height: 1.5 !important;
  font-weight: normal !important;
}

/* Add visual marker for required checkboxes */
.validate-required label .required,
html body .validate-required label .required,
body .validate-required label .required,
.woocommerce-terms-and-conditions-wrapper .required {
  color: var(--parchment-error-text) !important;
  font-weight: bold !important;
  margin-left: 3px !important;
}

/* Individual checkbox styling and spacing */
.woocommerce-terms-and-conditions-wrapper
  .woocommerce-form__label-for-checkbox {
  display: block !important;
  margin: 8px 0 !important;
  padding: 5px 0 !important;
  border-top: 1px dotted var(--parchment-border-light) !important;
}

.woocommerce-terms-and-conditions-wrapper
  .woocommerce-form__label-for-checkbox:first-of-type {
  border-top: none !important;
}

/* Required notice text */
.required-checkbox-notice {
  color: var(--parchment-error-text) !important;
  font-size: 0.9em !important;
  margin: 10px 0 !important;
  font-style: italic !important;
  font-family: "Crimson Text", Georgia, serif !important;
  display: block !important;
  text-align: center !important;
  font-weight: bold !important;
}

/* Checkbox input itself */
.woocommerce-terms-and-conditions-wrapper input[type="checkbox"],
html body .woocommerce-terms-and-conditions-wrapper input[type="checkbox"],
body .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
  margin-right: 8px !important;
  transform: scale(1.2) !important;
}

/* === ELEGANT ICONS FIX === */
/* This fixes arrow_carrot-down and other Elegant Icons from EazyDocs plugin */
.arrow_carrot-down:before,
i.arrow_carrot-down:before,
span.arrow_carrot-down:before,
[class^="arrow_"]:before,
[class*=" arrow_"]:before,
.eleganticons,
.et-icon,
.elegant-icon {
  font-family: "ElegantIcons" !important;
  font-weight: normal !important;
  font-style: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  visibility: visible !important;
  display: inline-block !important;
  opacity: 1 !important;
}

/* Make sure icon content renders properly */
.arrow_carrot-down:before {
  content: "\33" !important; /* Unicode for down arrow in Elegant Icons */
  visibility: visible !important;
  display: inline-block !important;
  opacity: 1 !important;
}

/* Reference the actual icon font from the EazyDocs plugin */
@font-face {
  font-family: "ElegantIcons";
  src: url("/wp-content/plugins/eazydocs/assets/vendors/elegant-icon/fonts/ElegantIcons.eot");
  src: url("/wp-content/plugins/eazydocs/assets/vendors/elegant-icon/fonts/ElegantIcons.eot?#iefix")
      format("embedded-opentype"),
    url("/wp-content/plugins/eazydocs/assets/vendors/elegant-icon/fonts/ElegantIcons.woff")
      format("woff"),
    url("/wp-content/plugins/eazydocs/assets/vendors/elegant-icon/fonts/ElegantIcons.ttf")
      format("truetype"),
    url("/wp-content/plugins/eazydocs/assets/vendors/elegant-icon/fonts/ElegantIcons.svg#ElegantIcons")
      format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* Ensure EazyDocs arrow icon is correctly displayed */
.doc_menu .arrow_carrot-down:before,
.doc_right_mobile_menu .arrow_carrot-down:before,
.doc_documentation_area .arrow_carrot-down:before,
.arrow_carrot-down:before {
  font-family: "ElegantIcons" !important;
  content: "\33" !important;
  visibility: visible !important;
  display: inline-block !important;
  opacity: 1 !important;
  font-size: 16px !important;
  color: inherit !important;
  vertical-align: middle !important;
}

/* === END ELEGANT ICONS FIX === */

/* === MF Shop Marketing Alerts === */
.mf-shop-marketing-alerts {
  background: var(--parchment-bg, #f5efe4);
  border: 2px solid var(--parchment-border, #8b7355);
  border-radius: 6px;
  margin-bottom: 2em;
  padding: 1.2em 1.5em 1em 1.5em;
  box-shadow: 0 2px 8px var(--parchment-shadow, rgba(0, 0, 0, 0.08));
  font-family: "Crimson Text", Georgia, serif;
}
.mf-shop-marketing-alerts .mf-shop-alert {
  margin-bottom: 0.5em;
  font-size: 1.08em;
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.mf-shop-marketing-alerts .mf-badge-icon {
  font-size: 1.5em;
  margin-right: 0.3em;
  vertical-align: middle;
}
.mf-shop-marketing-alerts .mf-shop-alert-early-bird {
  color: #1a7f37;
}
.mf-shop-marketing-alerts .mf-shop-alert-prize-draw {
  color: #b06ab3;
}
.mf-shop-marketing-alerts .mf-shop-alert-multi-event {
  color: #2d5c88;
}

/* === Unified Prize Draw Alert Styling (Product, Basket, Checkout) === */
.mf-marketing-prize-draw-notification,
.prize-draw-product-notice,
.woocommerce-info.prize-draw-cart-notice,
.woocommerce-checkout .mf-marketing-prize-draw-notification,
.woocommerce-cart .mf-marketing-prize-draw-notification,
.woocommerce .mf-marketing-prize-draw-notification {
  background: var(--parchment-bg, #f5efe4);
  color: var(--parchment-text, #5c4c3a);
  border: 2px solid var(--parchment-border, #8b7355);
  border-radius: 8px;
  box-shadow: 0 2px 8px var(--parchment-shadow, rgba(0,0,0,0.08));
  font-family: 'Crimson Text', Georgia, serif;
  font-size: 1.08em;
  padding: 1.1em 1.3em 1em 1.3em;
  margin-bottom: 1.5em;
  position: relative;
  overflow: visible;
}
.mf-marketing-prize-draw-notification h3,
.prize-draw-product-notice h3,
.woocommerce-info.prize-draw-cart-notice h3 {
  color: var(--parchment-text, #5c4c3a);
  font-family: 'Crimson Text', Georgia, serif;
  font-weight: bold;
  margin-top: 0;
  margin-bottom: 0.6em;
  font-size: 1.18em;
  letter-spacing: 0.01em;
}
.mf-marketing-prize-draw-notification strong,
.prize-draw-product-notice strong,
.woocommerce-info.prize-draw-cart-notice strong {
  color: var(--parchment-link, #8b7355);
}
.mf-marketing-prize-draw-notification ul,
.prize-draw-product-notice ul,
.woocommerce-info.prize-draw-cart-notice ul {
  margin-left: 1.2em;
  margin-bottom: 0.7em;
  padding-left: 0;
  font-family: 'Crimson Text', Georgia, serif;
  font-size: 1em;
}
.mf-marketing-prize-draw-notification ul li,
.prize-draw-product-notice ul li,
.woocommerce-info.prize-draw-cart-notice ul li {
  margin-bottom: 4px;
  font-size: 1em;
  list-style-type: disc;
  color: var(--parchment-text, #5c4c3a);
  padding-left: 2px;
}
.mf-marketing-prize-draw-notification .completion-message,
.prize-draw-product-notice .completion-message,
.woocommerce-info.prize-draw-cart-notice .completion-message {
  font-style: italic;
  margin-top: 10px;
  color: var(--parchment-text, #5c4c3a);
  font-size: 0.98em;
}
/* Remove large emoji overlay for basket/checkout, but keep subtle icon for product page only */
.mf-marketing-prize-draw-notification::before,
.prize-draw-product-notice::before {
  content: none !important;
}
.woocommerce-product-page .mf-marketing-prize-draw-notification::before,
.woocommerce-product-page .prize-draw-product-notice::before {
  content: "🎁";
  position: absolute;
  top: 18px;
  right: 0px;
  font-size: 65px;
  opacity: 0.15;
  line-height: 1;
  z-index: 0;
  display: block !important;
  pointer-events: none;
}

/* === PRODUCT GRID BADGES (PARCHMENT THEME) === */
.woocommerce ul.products li.product .mf-badge,
.woocommerce-page ul.products li.product .mf-badge,
.woocommerce .products .product .mf-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 10;
  background: linear-gradient(135deg, var(--parchment-bg-darker) 80%, var(--parchment-bg) 100%);
  color: var(--parchment-text);
  border: 2px solid var(--parchment-border);
  border-radius: 8px;
  font-family: 'Crimson Text', Georgia, serif;
  font-size: 1.05em;
  font-weight: bold;
  padding: 6px 16px;
  box-shadow: 0 2px 8px var(--parchment-shadow);
  letter-spacing: 0.5px;
  text-shadow: 0 1px 0 #fff8, 0 0 2px #fff8;
  opacity: 0.97;
  pointer-events: none;
  transition: box-shadow 0.2s, background 0.2s;
}

.woocommerce ul.products li.product .mf-badge.early-bird,
.woocommerce-page ul.products li.product .mf-badge.early-bird {
  background: linear-gradient(135deg, #f9e7b3 80%, #f5efe4 100%);
  color: #7a5a00;
  border-color: #e2c97a;
}

.woocommerce ul.products li.product .mf-badge.prize-draw,
.woocommerce-page ul.products li.product .mf-badge.prize-draw {
  background: linear-gradient(135deg, #e8f8e8 80%, #f5efe4 100%);
  color: #2e8b57;
  border-color: #2e8b57;
}

.woocommerce ul.products li.product .mf-badge.multi-event,
.woocommerce-page ul.products li.product .mf-badge.multi-event {
  background: linear-gradient(135deg, #e8ddc4 80%, #f5efe4 100%);
  color: #5c4c3a;
  border-color: #8b7355;
}

/* Responsive badge sizing */
@media (max-width: 600px) {
  .woocommerce ul.products li.product .mf-badge,
  .woocommerce-page ul.products li.product .mf-badge {
    font-size: 0.95em;
    padding: 5px 10px;
    top: 8px;
    left: 8px;
  }
}

/* Ensure product badges use column flex direction and proper spacing */
.woocommerce ul.products li.product .mf-product-badges,
.woocommerce-page ul.products li.product .mf-product-badges,
.woocommerce .products .product .mf-product-badges {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5em;
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 10;
  pointer-events: none;
  width: max-content;
}
.woocommerce ul.products li.product .mf-badge,
.woocommerce-page ul.products li.product .mf-badge,
.woocommerce .products .product .mf-badge {
  position: static;
  margin: 0;
  width: auto;
  min-width: 0;
  display: flex;
  align-items: center;
}

@media (max-width: 600px) {
  .woocommerce ul.products li.product .mf-product-badges,
  .woocommerce-page ul.products li.product .mf-product-badges {
    top: 8px;
    left: 8px;
    gap: 0.3em;
  }
}
