/* ============================================
   7. QUOTE CART & CHECKOUT - DARK THEME
   Module: 06-quote-cart.css
   ============================================ */

/* Dark Background for Quote Pages */
body[class*="quote"],
body.woocommerce-cart,
body.woocommerce-checkout {
  background: var(--jrv-dark) !important;
}

body[class*="quote"] .site-content,
body[class*="quote"] .entry-content,
body[class*="quote"] .ast-container,
body.woocommerce-cart .site-content,
body.woocommerce-cart .entry-content {
  background: var(--jrv-dark) !important;
}

/* Quote Cart Wrapper */
.gpls-woo-rfq-checkout-wrapper,
.gpls-woo-rfq-quote-page {
  background: var(--jrv-dark) !important;
  padding: 60px 40px !important;
  min-height: 80vh;
}

/* Cart Table */
.gpls-woo-rfq-checkout-wrapper table,
.gpls-woo-rfq-checkout-wrapper .shop_table {
  background: var(--jrv-dark-card) !important;
  border: 1px solid var(--jrv-border) !important;
  border-radius: 16px !important;
  overflow: hidden;
}

.gpls-woo-rfq-checkout-wrapper th {
  background: rgba(255,255,255,0.05) !important;
  color: rgba(255,255,255,0.7) !important;
  font-weight: 600 !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid var(--jrv-border) !important;
}

.gpls-woo-rfq-checkout-wrapper td {
  background: transparent !important;
  color: #ffffff !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
}

.gpls-woo-rfq-checkout-wrapper .product-name a {
  color: #ffffff !important;
}

.gpls-woo-rfq-checkout-wrapper .product-name a:hover {
  color: var(--jrv-sky) !important;
}

.gpls-woo-rfq-checkout-wrapper .product-price,
.gpls-woo-rfq-checkout-wrapper .product-subtotal,
.gpls-woo-rfq-checkout-wrapper .cart-subtotal td,
.gpls-woo-rfq-checkout-wrapper .order-total td {
  color: var(--jrv-green) !important;
  font-weight: 700 !important;
}

/* Form Container */
.gpls-woo-rfq-checkout-wrapper .wpcf7-form,
.gpls-woo-rfq-checkout-wrapper form.checkout,
.gpls-woo-rfq-form-wrapper .wpcf7-form,
.wpcf7-form.joruva-form {
  background: var(--jrv-dark-card) !important;
  border: 1px solid var(--jrv-border) !important;
  border-radius: 16px !important;
  padding: 32px !important;
}

/* Section Headers */
.gpls-woo-rfq-checkout-wrapper h2,
.gpls-woo-rfq-checkout-wrapper h3,
.gpls-woo-rfq-form-wrapper h3,
.wpcf7-form h3 {
  color: #ffffff !important;
  border-bottom: 2px solid var(--jrv-blue) !important;
  padding-bottom: 8px !important;
  margin-top: 25px !important;
  margin-bottom: 15px !important;
  font-size: 18px !important;
  font-weight: 600 !important;
}

/* Labels */
.gpls-woo-rfq-checkout-wrapper label,
.gpls-woo-rfq-form-wrapper label,
.wpcf7-form label {
  color: #ffffff !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  display: block;
  margin-bottom: 5px;
  margin-top: 15px;
}

/* Required asterisk */
.gpls-woo-rfq-checkout-wrapper .required,
.gpls-woo-rfq-form-wrapper .required,
.wpcf7-form .required,
.gpls-woo-rfq-checkout-wrapper abbr[title="required"] {
  color: var(--jrv-error) !important;
  text-decoration: none !important;
}

/* Input Fields */
.gpls-woo-rfq-checkout-wrapper input[type="text"],
.gpls-woo-rfq-checkout-wrapper input[type="email"],
.gpls-woo-rfq-checkout-wrapper input[type="tel"],
.gpls-woo-rfq-checkout-wrapper input[type="number"],
.gpls-woo-rfq-checkout-wrapper select,
.gpls-woo-rfq-checkout-wrapper textarea,
.gpls-woo-rfq-form-wrapper input[type="text"],
.gpls-woo-rfq-form-wrapper input[type="email"],
.gpls-woo-rfq-form-wrapper input[type="tel"],
.gpls-woo-rfq-form-wrapper input[type="number"],
.gpls-woo-rfq-form-wrapper select,
.gpls-woo-rfq-form-wrapper textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],
.wpcf7-form select,
.wpcf7-form textarea,
.gpls-woo-rfq-checkout-wrapper .input-text {
  background: var(--jrv-dark-input) !important;
  border: 1px solid var(--jrv-border-light) !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  padding: 14px 16px !important;
  font-size: 15px !important;
  width: 100% !important;
  margin-top: 3px;
}

.gpls-woo-rfq-form-wrapper select,
.wpcf7-form select {
  max-width: 400px;
}

.gpls-woo-rfq-form-wrapper input[type="number"],
.wpcf7-form input[type="number"] {
  max-width: 150px;
}

/* Placeholder */
.gpls-woo-rfq-checkout-wrapper input::placeholder,
.gpls-woo-rfq-checkout-wrapper textarea::placeholder,
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
  color: var(--jrv-text-dim) !important;
}

/* Focus state */
.gpls-woo-rfq-checkout-wrapper input:focus,
.gpls-woo-rfq-checkout-wrapper select:focus,
.gpls-woo-rfq-checkout-wrapper textarea:focus,
.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus {
  border-color: var(--jrv-blue) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(1,78,252,0.2) !important;
}

/* Dropdown options */
.gpls-woo-rfq-checkout-wrapper select option,
.wpcf7-form select option {
  background: var(--jrv-dark-input) !important;
  color: #ffffff !important;
}

/* Checkboxes & Acceptance */
.gpls-woo-rfq-checkout-wrapper .wpcf7-acceptance,
.gpls-woo-rfq-checkout-wrapper .wpcf7-acceptance label,
.gpls-woo-rfq-checkout-wrapper .wpcf7-list-item-label,
.wpcf7-form .wpcf7-acceptance,
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label {
  color: #ffffff !important;
}

.gpls-woo-rfq-checkout-wrapper .wpcf7-acceptance,
.wpcf7-form .wpcf7-acceptance {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--jrv-border) !important;
  border-radius: 8px !important;
  padding: 12px 16px !important;
  margin: 8px 0 !important;
}

/* Consent boxes */
.gpls-woo-rfq-form-wrapper .consent-box,
.wpcf7-form .consent-box {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--jrv-border) !important;
  padding: 15px;
  margin: 10px 0;
  border-radius: 8px;
}

.gpls-woo-rfq-form-wrapper .consent-box label,
.wpcf7-form .consent-box label {
  font-weight: normal !important;
  margin: 0 !important;
  display: inline !important;
  color: #ffffff !important;
}

/* Submit Button */
.gpls-woo-rfq-checkout-wrapper input[type="submit"],
.gpls-woo-rfq-checkout-wrapper button[type="submit"],
.gpls-woo-rfq-checkout-wrapper .button,
.gpls-woo-rfq-checkout-wrapper #place_order,
.gpls-woo-rfq-form-wrapper input[type="submit"],
.wpcf7-form input[type="submit"] {
  background: var(--jrv-blue) !important;
  color: #ffffff !important;
  border: none !important;
  padding: 14px 40px !important;
  border-radius: 8px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
  margin-top: 20px;
}

.gpls-woo-rfq-checkout-wrapper input[type="submit"]:hover,
.gpls-woo-rfq-checkout-wrapper button[type="submit"]:hover,
.gpls-woo-rfq-checkout-wrapper .button:hover,
.gpls-woo-rfq-form-wrapper input[type="submit"]:hover,
.wpcf7-form input[type="submit"]:hover {
  background: var(--jrv-deep-blue) !important;
}

/* Quantity Input */
.gpls-woo-rfq-checkout-wrapper .quantity input {
  background: var(--jrv-dark-input) !important;
  border: 1px solid var(--jrv-border-light) !important;
  color: #ffffff !important;
  text-align: center !important;
  width: 60px !important;
  padding: 8px !important;
  border-radius: 6px !important;
}

/* Product Thumbnail */
.gpls-woo-rfq-checkout-wrapper .product-thumbnail img {
  border-radius: 8px !important;
  border: 1px solid var(--jrv-border) !important;
}

/* Remove Button */
.gpls-woo-rfq-checkout-wrapper .remove {
  color: var(--jrv-text-dim) !important;
}

.gpls-woo-rfq-checkout-wrapper .remove:hover {
  color: var(--jrv-error) !important;
  background: transparent !important;
}

/* Links */
.gpls-woo-rfq-checkout-wrapper a {
  color: var(--jrv-sky) !important;
}

.gpls-woo-rfq-checkout-wrapper a:hover {
  color: #ffffff !important;
}

/* WooCommerce Notices */
.gpls-woo-rfq-checkout-wrapper .woocommerce-info,
.gpls-woo-rfq-checkout-wrapper .woocommerce-message {
  background: rgba(1,78,252,0.1) !important;
  border-left: 4px solid var(--jrv-blue) !important;
  color: #ffffff !important;
}

.gpls-woo-rfq-checkout-wrapper .woocommerce-error {
  background: rgba(255,107,107,0.1) !important;
  border-left: 4px solid var(--jrv-error) !important;
  color: #ffffff !important;
}

/* Validation */
.wpcf7-form .wpcf7-not-valid {
  border-color: var(--jrv-error) !important;
}

.wpcf7-form .wpcf7-not-valid-tip {
  color: var(--jrv-error) !important;
  font-size: 13px !important;
  margin-top: 4px;
}

.wpcf7-form .wpcf7-response-output {
  background: rgba(1,78,252,0.1) !important;
  border: 1px solid rgba(1,78,252,0.3) !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  padding: 15px !important;
  margin-top: 20px;
}

.wpcf7-form.sent .wpcf7-response-output {
  background: rgba(126,197,95,0.15) !important;
  border-color: var(--jrv-green) !important;
  color: #ffffff !important;
}

/* Textarea */
.wpcf7-form textarea {
  min-height: 100px !important;
  resize: vertical !important;
}

/* Quote Cart Responsive */
@media (max-width: 768px) {
  .gpls-woo-rfq-checkout-wrapper {
    padding: 30px 20px !important;
  }
  
  .gpls-woo-rfq-checkout-wrapper .wpcf7-form,
  .gpls-woo-rfq-form-wrapper .wpcf7-form,
  .wpcf7-form {
    padding: 20px !important;
  }
  
  .gpls-woo-rfq-checkout-wrapper input[type="submit"],
  .wpcf7-form input[type="submit"] {
    width: 100% !important;
  }
}
