/*
Theme Name: Simple WooCommerce Theme
Theme URI: https://example.com/nurses-weekend-woocommerce-template
Author: Moodbit Team
Author URI: https://mymoodbit.com
Description: A minimal, clean, WooCommerce-ready theme with basic product grid, single product, cart and checkout support via WooCommerce core templates. Simple but functional. Created by the Moodbit team.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nurses-weekend-woocommerce-template
Tags: e-commerce, wooCommerce, minimal, responsive
*/

/* Basic reset & layout */
* { box-sizing: border-box; }
html, body { margin:0; padding:0; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  line-height: 1.6;
  color: #111;
  background: #fff;
}
a { color: #0a7; text-decoration: none; }
a:hover { text-decoration: underline; }
.container { max-width: 1100px; margin: 0 auto; padding: 0 16px; }

/* Header */
.site-header {
  border-bottom: 1px solid #eee;
  background: #fafafa;
}
.site-header .inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
}
.site-title a { font-size: 20px; font-weight: 700; color: #111; }
.primary-nav { display:flex; gap: 14px; flex-wrap: wrap; }
.nav a { padding: 6px 8px; border-radius: 8px; }
.cart-link {
  font-weight: 600;
  padding: 6px 10px;
  border: 1px solid #0a7;
  border-radius: 999px;
}

/* Footer */
.site-footer {
  margin-top: 40px;
  padding: 18px 0;
  border-top: 1px solid #eee;
  color: #666;
  background: #fafafa;
  font-size: 14px;
}

/* Content */
main.site-main { padding: 24px 0; }
h1, h2, h3 { line-height: 1.3; }
button, .button, .wp-element-button {
  cursor: pointer;
  border: 1px solid #111;
  background: #111;
  color: #fff;
  padding: 10px 14px;
  border-radius: 10px;
}
button:hover, .button:hover, .wp-element-button:hover {
  opacity: .9;
}

/* WooCommerce friendly defaults */
.woocommerce .products {
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(220px,1fr));
  gap: 18px;
}
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
  list-style: none;
  border: 1px solid #eee;
  padding: 12px;
  border-radius: 14px;
  background: #fff;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: 16px;
}
.woocommerce span.onsale {
  background: #0a7;
  color: #fff;
  border-radius: 999px;
}
.woocommerce div.product .product_title { font-size: 24px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: #0a7; font-weight: 700; }
.woocommerce .quantity input.qty { width: 80px; }

/* Forms */
input, select, textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #ddd;
  border-radius: 10px;
}
label { display:block; margin: 8px 0 4px; }

/* Tables */
table { width: 100%; border-collapse: collapse; }
th, td { padding: 10px; border-bottom: 1px solid #eee; text-align: left; }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
  padding: 12px 14px;
  border-radius: 10px;
  margin: 10px 0 18px;
}
.woocommerce-message { background: #e8fff6; border: 1px solid #bff2df; }
.woocommerce-info { background: #f0f7ff; border: 1px solid #cfe4ff; }
.woocommerce-error { background: #fff0f0; border: 1px solid #ffd1d1; }

/* Responsive tweaks */
@media (max-width: 640px) {
  .site-header .inner { flex-wrap: wrap; }
  .primary-nav { width: 100%; }
}


button, .button, .wp-element-button {
  background: #ff6600;
  border-color: #ff6600;
}

/* Contact Form 7 Styles - Overriding Tailwind */
.wpcf7-form {
  cursor: auto !important;
}

.wpcf7-form-control-wrap {
  display: block !important;
  margin-bottom: 0.25rem !important; /* Further reduced space */
}

.wpcf7-form-control {
  width: 100% !important;
  padding: 10px 12px !important;
  border: 1px solid #ddd !important;
  border-radius: 10px !important;
  background-color: #fff !important;
  color: #333 !important;
}

/* Set specific cursors for form elements */
.wpcf7-text, .wpcf7-textarea, .wpcf7-email, .wpcf7-url, .wpcf7-tel, .wpcf7-number, .wpcf7-date, .wpcf7-quiz {
    cursor: text !important;
}

.wpcf7-select, .wpcf7-checkbox, .wpcf7-radio {
    cursor: pointer !important;
}

.wpcf7-acceptance .wpcf7-list-item {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
}

.wpcf7-acceptance .wpcf7-list-item input[type="checkbox"] {
  margin-right: 0.5rem !important;
  cursor: pointer !important;
  /* To ensure the checkbox itself is not full-width */
  width: auto !important; 
}


.wpcf7-form-control:focus {
  outline: none !important;
  border-color: #0a7 !important;
  box-shadow: 0 0 0 2px rgba(10, 167, 119, 0.2) !important;
}

.wpcf7-submit {
  cursor: pointer !important;
  border: 1px solid #0a7 !important; /* Changed to green */
  background: #0a7 !important; /* Changed to green */
  color: #fff !important;
  padding: 10px 14px !important;
  border-radius: 10px !important;
  width: 100% !important;
  font-weight: 600 !important;
  transition: opacity 0.3s !important;
  margin-top: 1rem !important; /* Add some space above the button */
}

.wpcf7-submit:hover {
  opacity: 0.9 !important;
}

/* Remove the spinning loader icon that can cause cursor issues */
.wpcf7-spinner {
  display: none !important;
}

/* Expired Event Chip */
.swt-expired-badge {
  display: inline-block;
  margin: 0 0 8px 0;
  padding: 4px 8px;
  border-radius: 999px;
  background: #dc2626; /* red-600 */
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .2px;
  vertical-align: middle;
}