/**
 * Modern Login and Register Form Styles - ONLY for login/register forms
 */

/* ===== LOGIN/REGISTER FORM STYLES ONLY ===== */

/* Login Form Container - Fixed width ONLY for login/register pages */
body:not(.logged-in) .wcd-login-form-container,
.woocommerce-account .wcd-login-form-container {
  max-width: 320px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  position: relative !important;
}

/* Modern Login Form Styling - ONLY for login/register forms */
body:not(.logged-in) .woocommerce-form-login,
body:not(.logged-in) .wcd-register-form,
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .wcd-register-form {
  max-width: 320px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 24px !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
  background-color: #fff !important;
  box-sizing: border-box !important;
  border: 1px solid #eaeaea !important;
}

/* Form inputs styling - ONLY for login/register forms */
body:not(.logged-in) .woocommerce-form-login input[type="text"],
body:not(.logged-in) .woocommerce-form-login input[type="password"],
body:not(.logged-in) .woocommerce-form-login input[type="email"],
body:not(.logged-in) .wcd-register-form input[type="text"],
body:not(.logged-in) .wcd-register-form input[type="password"],
body:not(.logged-in) .wcd-register-form input[type="email"],
.woocommerce-account .woocommerce-form-login input[type="text"],
.woocommerce-account .woocommerce-form-login input[type="password"],
.woocommerce-account .woocommerce-form-login input[type="email"],
.woocommerce-account .wcd-register-form input[type="text"],
.woocommerce-account .wcd-register-form input[type="password"],
.woocommerce-account .wcd-register-form input[type="email"] {
  width: 100% !important;
  padding: 10px 12px !important;
  border-radius: 6px !important;
  border: 1px solid #ddd !important;
  margin-bottom: 16px !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  background-color: #f9f9f9 !important;
}

/* Input focus state - ONLY for login/register forms */
body:not(.logged-in) .woocommerce-form-login input:focus,
body:not(.logged-in) .wcd-register-form input:focus,
.woocommerce-account .woocommerce-form-login input:focus,
.woocommerce-account .wcd-register-form input:focus {
  border-color: #4a90e2 !important;
  box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.2) !important;
  outline: none !important;
  background-color: #fff !important;
}

/* Submit button styling - ONLY for login/register forms */
body:not(.logged-in) .woocommerce-form-login button[type="submit"],
body:not(.logged-in) .wcd-register-form button[type="submit"],
.woocommerce-account .woocommerce-form-login button[type="submit"],
.woocommerce-account .wcd-register-form button[type="submit"] {
  width: 100% !important;
  padding: 12px !important;
  border-radius: 6px !important;
  background-color: #4a90e2 !important;
  color: white !important;
  border: none !important;
  cursor: pointer !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
  transition: background-color 0.2s ease !important;
  margin-top: 8px !important;
}

/* Button hover state - ONLY for login/register forms */
body:not(.logged-in) .woocommerce-form-login button[type="submit"]:hover,
body:not(.logged-in) .wcd-register-form button[type="submit"]:hover,
.woocommerce-account .woocommerce-form-login button[type="submit"]:hover,
.woocommerce-account .wcd-register-form button[type="submit"]:hover {
  background-color: #3a7bc8 !important;
}

/* Form labels - ONLY for login/register forms */
body:not(.logged-in) .woocommerce-form-login .wcd-form-row label,
body:not(.logged-in) .wcd-register-form .wcd-form-row label,
.woocommerce-account .woocommerce-form-login .wcd-form-row label,
.woocommerce-account .wcd-register-form .wcd-form-row label {
  font-size: 14px !important;
  margin-bottom: 6px !important;
  display: block !important;
  color: #333 !important;
  font-weight: 500 !important;
}

/* Remember me checkbox - ONLY for login form */
body:not(.logged-in) .woocommerce-form-login .wcd-checkbox,
.woocommerce-account .woocommerce-form-login .wcd-checkbox {
  display: flex !important;
  align-items: center !important;
  font-size: 14px !important;
  color: #555 !important;
  margin-bottom: 16px !important;
}

body:not(.logged-in) .woocommerce-form-login .wcd-checkbox input[type="checkbox"],
.woocommerce-account .woocommerce-form-login .wcd-checkbox input[type="checkbox"] {
  margin-right: 8px !important;
}

/* Links styling - ONLY for login/register forms */
body:not(.logged-in) .wcd-lost-password,
body:not(.logged-in) .wcd-register-link,
body:not(.logged-in) .wcd-login-link,
.woocommerce-account .wcd-lost-password,
.woocommerce-account .wcd-register-link,
.woocommerce-account .wcd-login-link {
  text-align: center !important;
  margin-top: 16px !important;
  font-size: 14px !important;
  width: 100% !important;
  max-width: 320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body:not(.logged-in) .wcd-lost-password a,
body:not(.logged-in) .wcd-register-link a,
body:not(.logged-in) .wcd-login-link a,
.woocommerce-account .wcd-lost-password a,
.woocommerce-account .wcd-register-link a,
.woocommerce-account .wcd-login-link a {
  color: #4a90e2 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  transition: color 0.2s ease !important;
}

body:not(.logged-in) .wcd-lost-password a:hover,
body:not(.logged-in) .wcd-register-link a:hover,
body:not(.logged-in) .wcd-login-link a:hover,
.woocommerce-account .wcd-lost-password a:hover,
.woocommerce-account .wcd-register-link a:hover,
.woocommerce-account .wcd-login-link a:hover {
  color: #3a7bc8 !important;
  text-decoration: underline !important;
}

/* Privacy policy text - ONLY for register form */
body:not(.logged-in) .wcd-register-form .wcd-privacy-policy-text,
.woocommerce-account .wcd-register-form .wcd-privacy-policy-text {
  font-size: 12px !important;
  color: #666 !important;
  margin-bottom: 16px !important;
  line-height: 1.5 !important;
}

/* Section title styling - ONLY for login/register pages */
body:not(.logged-in) .wcd-dashboard-section-title,
.woocommerce-account .wcd-dashboard-section-title {
  text-align: center !important;
  margin-bottom: 24px !important;
  color: #333 !important;
}

/* Error message styling - ONLY for login/register forms */
body:not(.logged-in) .wcd-message,
.woocommerce-account .wcd-message {
  padding: 12px 16px !important;
  border-radius: 6px !important;
  margin-bottom: 20px !important;
  font-size: 14px !important;
  width: 100% !important;
  max-width: 320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body:not(.logged-in) .wcd-message-error,
.woocommerce-account .wcd-message-error {
  background-color: #fff5f5 !important;
  color: #e53e3e !important;
  border: 1px solid #fed7d7 !important;
}

body:not(.logged-in) .wcd-message-success,
.woocommerce-account .wcd-message-success {
  background-color: #f0fff4 !important;
  color: #38a169 !important;
  border: 1px solid #c6f6d5 !important;
}

/* Force container width for login and register forms - ONLY for login/register pages */
.woocommerce-account .woocommerce #customer_login .col-1,
.woocommerce-account .woocommerce #customer_login .col-2,
.woocommerce-account .woocommerce .woocommerce-form-login,
.woocommerce-account .woocommerce .woocommerce-form-register,
.woocommerce .woocommerce-form-login,
.woocommerce .woocommerce-form-register,
.woocommerce-page .woocommerce-form-login,
.woocommerce-page .woocommerce-form-register,
#customer_login .col-1,
#customer_login .col-2 {
  width: 320px !important;
  max-width: 320px !important;
  flex: 0 0 320px !important;
  float: none !important;
  margin: 0 auto !important;
}

/* ===== DASHBOARD ELEMENTS - ENSURE FULL WIDTH ===== */

/* Dashboard section - ensure full width for logged-in users */
.logged-in .wcd-dashboard-section {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 25px !important;
  margin: 0 !important;
}

/* Dashboard user info - ensure full width */
.logged-in .wcd-user-info {
  width: 100% !important;
  max-width: 100% !important;
  display: flex !important;
  flex-wrap: wrap !important;
}

/* Plan selector - ensure full width */
.logged-in .wcd-simple-plan-selector {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Plan selector form */
.logged-in .wcd-simple-plan-form {
  width: 100% !important;
  max-width: 100% !important;
}

/* Plan row */
.logged-in .wcd-plan-row {
  display: flex !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Selector columns */
.logged-in .wcd-selector-column {
  flex: 1 !important;
  min-width: 200px !important;
  width: 100% !important;
}

/* Selector inputs */
.logged-in .wcd-selector {
  width: 100% !important;
  max-width: 100% !important;
}

/* Payment options - ensure full width */
.logged-in .wcd-payment-options {
  display: flex !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Payment option items */
.logged-in .wcd-payment-option {
  flex: 1 !important;
  width: 100% !important;
}

/* Subscription credentials - ensure full width */
.logged-in .wcd-credentials-container,
.wcd-credentials-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.logged-in .wcd-credentials-card,
.wcd-credentials-card {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  display: block !important;
}

.logged-in .wcd-credentials-header,
.wcd-credentials-header {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}

.logged-in .wcd-credentials-body,
.wcd-credentials-body {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}

.logged-in .wcd-credential-item,
.wcd-credential-item {
  width: 100% !important;
  max-width: 100% !important;
  display: flex !important;
}

/* Support options - ensure full width */
.logged-in .wcd-support-options {
  display: flex !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Responsive styles */
@media (max-width: 768px) {
  /* Login/Register forms - maintain widget size */
  body:not(.logged-in) .wcd-login-form-container,
  body:not(.logged-in) .woocommerce-form-login,
  body:not(.logged-in) .wcd-register-form,
  body:not(.logged-in) .wcd-lost-password,
  body:not(.logged-in) .wcd-register-link,
  body:not(.logged-in) .wcd-login-link,
  body:not(.logged-in) .wcd-message,
  .woocommerce-account .wcd-login-form-container,
  .woocommerce-account .woocommerce-form-login,
  .woocommerce-account .wcd-register-form,
  .woocommerce-account .wcd-lost-password,
  .woocommerce-account .wcd-register-link,
  .woocommerce-account .wcd-login-link,
  .woocommerce-account .wcd-message {
    max-width: 320px !important;
    width: 100% !important;
  }
  
  /* Dashboard user info - full width on mobile */
  .logged-in .wcd-user-info {
    flex-direction: column !important;
    width: 100% !important;
  }
  
  .logged-in .wcd-user-info-item {
    width: 100% !important;
    margin-bottom: 10px !important;
  }
  
  /* Plan selection - full width on mobile */
  .logged-in .wcd-plan-row {
    flex-direction: column !important;
    gap: 15px !important;
    width: 100% !important;
  }
  
  .logged-in .wcd-selector-column,
  .logged-in .wcd-price-column,
  .logged-in .wcd-button-column {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
  }
  
  .logged-in .wcd-selector {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  
  /* Payment options - full width on mobile */
  .logged-in .wcd-payment-options {
    flex-direction: column !important;
    width: 100% !important;
  }
  
  .logged-in .wcd-payment-option {
    width: 100% !important;
    margin-bottom: 15px !important;
  }
  
  /* Subscription credentials - full width on mobile */
  .logged-in .wcd-credentials-container,
  .wcd-credentials-container,
  .logged-in .wcd-credentials-card,
  .wcd-credentials-card,
  .logged-in .wcd-credentials-body,
  .wcd-credentials-body,
  .logged-in .wcd-credential-item,
  .wcd-credential-item {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }
  
  /* Support options - full width on mobile */
  .logged-in .wcd-support-options {
    flex-direction: column !important;
    width: 100% !important;
  }
  
  .logged-in .wcd-support-option {
    width: 100% !important;
    margin-bottom: 10px !important;
  }
}

/* Remove any center alignment from dashboard sections */
.logged-in .wcd-dashboard-section {
  align-items: normal !important;
  justify-content: normal !important;
  text-align: left !important;
}

/* Override any flex display for credential items on mobile */
@media (max-width: 480px) {
  .wcd-credential-item {
    display: block !important;
    width: 100% !important;
  }
  
  .wcd-credential-label,
  .wcd-credential-value {
    width: 100% !important;
    display: block !important;
  }
}
