/*
Theme Name: MiniBuilder
Theme URI: https://solode.click/
Author: Kodelr
Author URI: https://kodelr.com/
Description: Tema WordPress basado en la salida visual del Minimal Builder.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: minibuilder
Tags: minimal, clean, static-site, custom-menu
*/

/*
  Los estilos visuales reales viven en assets/css/minibuilder.css.
  Este archivo se mantiene para la cabecera requerida por WordPress.
*/

.minibuilder-entry {
  display: contents;
}

.site-nav,
.site-footer-inner {
  list-style: none;
}

.site-nav li,
.site-footer-inner li {
  display: contents;
}

.site-content .wp-block-image,
.site-content .wp-caption {
  margin: 1.4em 0;
}

.site-content .wp-block-image img,
.site-content .wp-caption img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
}

.site-content .wp-caption-text {
  margin-top: 8px;
  color: var(--site-muted);
  font-size: .88em;
}

.site-header-menu-hidden .site-header-inner {
  position: relative;
  justify-content: center;
}

.site-header-menu-hidden .site-brand {
  margin: 0 auto;
}

.site-header-menu-hidden .site-theme-toggle {
  position: absolute;
  right: 20px;
}

@media (max-width: 720px) {
  .site-header-menu-hidden .site-header-inner {
    justify-content: flex-end;
  }

  .site-header-menu-hidden .site-brand {
    position: absolute;
    left: 50%;
    max-width: calc(100% - 120px);
    margin: 0;
    transform: translateX(-50%);
    overflow: hidden;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .site-header-menu-hidden .site-theme-toggle {
    position: static;
  }
}

.woocommerce {
  color: var(--site-text);
}

.site-content .woocommerce {
  width: 100%;
}

.woocommerce :where(h2, h3, legend) {
  color: var(--site-heading);
}

.woocommerce :where(a) {
  color: var(--site-heading);
}

.woocommerce :where(a:hover) {
  color: var(--site-text);
}

.woocommerce :where(form.login, form.register, form.checkout_coupon, form.woocommerce-EditAccountForm, .woocommerce-cart-form, .cart_totals, .woocommerce-checkout #payment, .woocommerce-billing-fields, .woocommerce-shipping-fields, .woocommerce-additional-fields, .woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content, .woocommerce-Address, .woocommerce-customer-details, .woocommerce-order-details, .woocommerce-order-downloads, .woocommerce-order) {
  border: 1px solid var(--site-border);
  border-radius: 8px;
  background: var(--site-button-bg);
  color: var(--site-text);
}

.woocommerce :where(form.login, form.register, form.checkout_coupon, form.woocommerce-EditAccountForm, .woocommerce-billing-fields, .woocommerce-shipping-fields, .woocommerce-additional-fields, .woocommerce-MyAccount-content, .woocommerce-Address, .woocommerce-customer-details, .woocommerce-order-details, .woocommerce-order-downloads, .woocommerce-order) {
  padding: 18px;
}

.woocommerce :where(.woocommerce-cart-form, .cart_totals, .woocommerce-checkout #payment, .woocommerce-MyAccount-navigation) {
  padding: 0;
  overflow: hidden;
}

.woocommerce :where(.form-row) {
  margin: 0 0 14px;
}

.woocommerce :where(label) {
  display: inline-block;
  margin-bottom: 6px;
  color: var(--site-muted);
  font-size: 0.9em;
  font-weight: 700;
}

.woocommerce input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]):not([type="reset"]),
.woocommerce textarea,
.woocommerce select,
.woocommerce .select2-container--default .select2-selection--single,
.woocommerce .select2-container--default .select2-selection--multiple {
  min-height: 42px;
  border: 1px solid var(--site-border) !important;
  border-radius: 5px;
  background: var(--site-bg) !important;
  color: var(--site-text) !important;
  box-shadow: none;
  font: inherit;
  line-height: 1.4;
}

.woocommerce input::placeholder,
.woocommerce textarea::placeholder {
  color: var(--site-muted) !important;
  opacity: 1;
}

.woocommerce textarea {
  min-height: 110px;
  resize: vertical;
}

.woocommerce input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]):not([type="reset"]):focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.woocommerce .select2-container--open .select2-selection--single,
.woocommerce .select2-container--open .select2-selection--multiple {
  border-color: var(--primary-color) !important;
  outline: 0;
  box-shadow: 0 0 0 2px rgba(var(--primary-color-rgb), 0.18);
}

.woocommerce input:-webkit-autofill,
.woocommerce input:-webkit-autofill:hover,
.woocommerce input:-webkit-autofill:focus,
.woocommerce textarea:-webkit-autofill,
.woocommerce select:-webkit-autofill {
  -webkit-text-fill-color: var(--site-text);
  box-shadow: 0 0 0 1000px var(--site-bg) inset !important;
  transition: background-color 9999s ease-out;
}

.woocommerce select option {
  background: var(--site-bg);
  color: var(--site-text);
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered,
.woocommerce .select2-container--default .select2-selection--multiple .select2-selection__rendered,
.woocommerce .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: var(--site-text) !important;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-top-color: var(--site-text);
}

.woocommerce input:disabled,
.woocommerce textarea:disabled,
.woocommerce select:disabled {
  background: color-mix(in srgb, var(--site-button-bg) 82%, var(--site-border)) !important;
  color: var(--site-muted) !important;
  cursor: not-allowed;
  opacity: 1;
}

.woocommerce form .form-row.woocommerce-invalid input,
.woocommerce form .form-row.woocommerce-invalid textarea,
.woocommerce form .form-row.woocommerce-invalid select {
  border-color: #dc3545 !important;
  background: var(--site-bg) !important;
  color: var(--site-text) !important;
}

.woocommerce form .form-row.woocommerce-validated input,
.woocommerce form .form-row.woocommerce-validated textarea,
.woocommerce form .form-row.woocommerce-validated select {
  border-color: var(--site-border) !important;
  background: var(--site-bg) !important;
  color: var(--site-text) !important;
}

.woocommerce form .form-row.woocommerce-invalid label {
  color: #ff4d4d;
}

.woocommerce :where(input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--primary-color);
}

.woocommerce :where(.required) {
  color: var(--primary-color);
}

.woocommerce :where(.button, button.button, a.button, input.button, #respond input#submit) {
  border: 1px solid var(--primary-color);
  border-radius: 5px;
  background: var(--primary-color);
  color: var(--site-accent-text);
  padding: 10px 16px;
  font: inherit;
  font-weight: 800;
  line-height: 1.2;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce :where(.button:hover, button.button:hover, a.button:hover, input.button:hover, #respond input#submit:hover) {
  border-color: var(--primary-hover);
  background: var(--primary-hover);
  color: var(--site-accent-text);
}

.woocommerce :where(.button:focus-visible, button.button:focus-visible, a.button:focus-visible, input.button:focus-visible, #respond input#submit:focus-visible) {
  outline: 0;
  box-shadow: 0 0 0 3px rgba(var(--primary-color-rgb), 0.22);
}

.woocommerce :where(.button.alt, button.button.alt, a.button.alt, input.button.alt) {
  border-color: var(--primary-color);
  background: var(--primary-color);
  color: var(--site-accent-text);
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .woocommerce-button,
.woocommerce .woocommerce-Button,
.woocommerce .wc-forward.button,
.woocommerce .wc-backward.button,
.site-content .wc-block-components-button:not(.is-link),
.site-content .wc-block-cart__submit-button,
.site-content .wc-block-components-checkout-place-order-button,
.site-content .wp-block-button__link {
  border-color: var(--primary-color) !important;
  background: var(--primary-color) !important;
  color: var(--site-accent-text) !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .woocommerce-button:hover,
.woocommerce .woocommerce-Button:hover,
.woocommerce .wc-forward.button:hover,
.woocommerce .wc-backward.button:hover,
.site-content .wc-block-components-button:not(.is-link):hover,
.site-content .wc-block-cart__submit-button:hover,
.site-content .wc-block-components-checkout-place-order-button:hover,
.site-content .wp-block-button__link:hover {
  border-color: var(--primary-hover) !important;
  background: var(--primary-hover) !important;
  color: var(--site-accent-text) !important;
}

.woocommerce a.button:focus-visible,
.woocommerce button.button:focus-visible,
.woocommerce input.button:focus-visible,
.woocommerce #respond input#submit:focus-visible,
.woocommerce .woocommerce-button:focus-visible,
.woocommerce .woocommerce-Button:focus-visible,
.site-content .wc-block-components-button:not(.is-link):focus-visible,
.site-content .wc-block-cart__submit-button:focus-visible,
.site-content .wc-block-components-checkout-place-order-button:focus-visible,
.site-content .wp-block-button__link:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 3px rgba(var(--primary-color-rgb), 0.22) !important;
}

.site-content .wc-block-components-button:not(.is-link) .wc-block-components-button__text {
  color: inherit;
}

.woocommerce-cart .woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .woocommerce #place_order,
.woocommerce .woocommerce-form-login__submit,
.woocommerce .woocommerce-form-register__submit {
  border-color: var(--primary-color) !important;
  background: var(--primary-color) !important;
  color: var(--site-accent-text) !important;
}

.woocommerce-cart .woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout .woocommerce #place_order:hover,
.woocommerce .woocommerce-form-login__submit:hover,
.woocommerce .woocommerce-form-register__submit:hover {
  border-color: var(--primary-hover) !important;
  background: var(--primary-hover) !important;
  color: var(--site-accent-text) !important;
}

.woocommerce :where(.button.disabled, .button:disabled, .button:disabled[disabled], button.button.disabled, button.button:disabled, button.button:disabled[disabled]) {
  border-color: var(--site-border);
  background: color-mix(in srgb, var(--site-button-bg) 80%, var(--site-border));
  color: var(--site-muted);
  cursor: not-allowed;
  opacity: 1;
}

.woocommerce :where(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
  border: 1px solid var(--site-border);
  border-left: 4px solid var(--primary-color);
  border-radius: 8px;
  background: color-mix(in srgb, var(--site-button-bg) 88%, var(--site-border));
  color: var(--site-text);
}

.woocommerce :where(.woocommerce-message)::before,
.woocommerce :where(.woocommerce-info)::before,
.woocommerce :where(.woocommerce-error)::before {
  color: var(--primary-color);
}

.woocommerce :where(.woocommerce-error) {
  border-left-color: #dc3545;
}

.woocommerce :where(table.shop_table) {
  width: 100%;
  border: 1px solid var(--site-border);
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 8px;
  background: var(--site-button-bg);
  color: var(--site-text);
  overflow: hidden;
}

.woocommerce :where(table.shop_table th, table.shop_table td) {
  border: 0;
  border-bottom: 1px solid var(--site-border);
  padding: 12px;
  color: var(--site-text);
}

.woocommerce :where(table.shop_table th) {
  background: color-mix(in srgb, var(--site-button-bg) 88%, var(--site-border));
  color: var(--site-heading);
  font-weight: 800;
}

.woocommerce :where(table.shop_table tr:last-child th, table.shop_table tr:last-child td) {
  border-bottom: 0;
}

.woocommerce :where(table.shop_table .product-name a) {
  color: var(--site-heading);
  font-weight: 800;
}

.woocommerce :where(.quantity .qty) {
  width: 72px;
  min-height: 38px;
  text-align: center;
}

.woocommerce-checkout :where(#order_review_heading) {
  margin-top: 24px;
}

.woocommerce-checkout :where(#payment ul.payment_methods) {
  border-bottom: 1px solid var(--site-border);
  padding: 16px;
}

.woocommerce-checkout :where(#payment div.payment_box) {
  border: 1px solid var(--site-border);
  border-radius: 6px;
  background: var(--site-bg);
  color: var(--site-text);
}

.woocommerce-checkout :where(#payment div.payment_box)::before {
  border-bottom-color: var(--site-border);
}

.woocommerce-checkout :where(#payment .place-order) {
  padding: 16px;
}

.woocommerce-MyAccount-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.woocommerce-MyAccount-navigation li {
  margin: 0;
  border-bottom: 1px solid var(--site-border);
}

.woocommerce-MyAccount-navigation li:last-child {
  border-bottom: 0;
}

.woocommerce-MyAccount-navigation a {
  display: block;
  padding: 12px 14px;
  color: var(--site-button-text);
  font-weight: 800;
  text-decoration: none;
}

.woocommerce-MyAccount-navigation :where(.is-active a, a:hover) {
  background: color-mix(in srgb, var(--site-button-bg) 86%, var(--primary-color));
  color: var(--site-button-text);
}

.woocommerce :where(.woocommerce-order-overview) {
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}

.woocommerce :where(.woocommerce-order-overview li) {
  border: 1px solid var(--site-border);
  border-radius: 6px;
  background: var(--site-button-bg);
  padding: 12px;
}

.woocommerce .woocommerce-products-header {
  margin-bottom: 20px;
}

.woocommerce .woocommerce-products-header__title {
  margin-bottom: 8px;
  color: var(--site-heading);
}

.woocommerce .term-description {
  color: var(--site-muted);
}

.woocommerce .woocommerce-result-count {
  margin: 0 0 14px;
  color: var(--site-muted);
  font-size: 0.92em;
}

.woocommerce .woocommerce-ordering {
  margin: 0 0 18px;
}

.woocommerce .woocommerce-ordering select.orderby {
  width: auto;
  min-width: 220px;
}

.woocommerce ul.products {
  margin: 0 0 26px;
  padding: 0;
}

.woocommerce ul.products li.product {
  border: 1px solid var(--site-border);
  border-radius: 8px;
  background: var(--site-button-bg);
  color: var(--site-text);
  padding: 12px;
  text-align: left;
}

.woocommerce ul.products li.product a {
  color: var(--site-heading);
  text-decoration: none;
}

.woocommerce ul.products li.product a:hover {
  color: var(--site-text);
}

.woocommerce ul.products li.product img {
  width: 100%;
  margin: 0 0 12px;
  border-radius: 6px;
  background: var(--site-bg);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  margin: 0 0 8px;
  padding: 0;
  color: var(--site-heading);
  font-size: 1em;
  line-height: 1.25;
}

.woocommerce ul.products li.product .price {
  display: block;
  margin: 0 0 12px;
  color: var(--site-heading);
  font-weight: 800;
}

.woocommerce ul.products li.product .price del {
  color: var(--site-muted);
  opacity: 1;
}

.woocommerce ul.products li.product .price ins {
  color: var(--site-heading);
  text-decoration: none;
}

.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
  top: 10px;
  right: 10px;
  left: auto;
  min-width: 0;
  min-height: 0;
  border-radius: 999px;
  background: var(--primary-color);
  color: var(--site-accent-text);
  padding: 4px 10px;
  font-size: 0.78em;
  font-weight: 800;
  line-height: 1.2;
}

.woocommerce .star-rating,
.woocommerce .star-rating::before {
  color: var(--site-muted);
}

.woocommerce .star-rating span,
.woocommerce .star-rating span::before {
  color: var(--primary-color);
}

.woocommerce nav.woocommerce-pagination {
  margin-top: 24px;
}

.woocommerce nav.woocommerce-pagination ul {
  margin: 0;
  border: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  min-width: 38px;
  border: 1px solid var(--site-border);
  border-radius: 5px;
  background: var(--site-button-bg);
  color: var(--site-button-text);
  padding: 9px 11px;
  font-weight: 800;
  line-height: 1;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  border-color: var(--primary-color);
  background: var(--primary-color);
  color: var(--site-accent-text);
}

body.woocommerce-page .select2-dropdown {
  border-color: var(--site-border);
  background: var(--site-bg);
  color: var(--site-text);
}

body.woocommerce-page .select2-container--default .select2-results__option--highlighted[aria-selected],
body.woocommerce-page .select2-container--default .select2-results__option--highlighted[data-selected] {
  background: var(--primary-color);
  color: var(--site-accent-text);
}

@media (max-width: 779px) {
  .woocommerce :where(table.shop_table_responsive tr) {
    border-bottom: 1px solid var(--site-border);
  }

  .woocommerce :where(table.shop_table_responsive tr:last-child) {
    border-bottom: 0;
  }

  .woocommerce :where(table.shop_table_responsive tr td::before) {
    color: var(--site-heading);
  }

  .woocommerce :where(.button, button.button, a.button, input.button) {
    width: -webkit-fill-available;
    text-align: center;
  }

  .woocommerce .woocommerce-ordering,
  .woocommerce .woocommerce-ordering select.orderby {
    width: 100%;
  }
}

.woocommerce-account .woocommerce-MyAccount-content {
    float: right;
    width: 60%;
}

.woocommerce .woocommerce-error .button, .woocommerce .woocommerce-info .button, .woocommerce .woocommerce-message .button, .woocommerce-page .woocommerce-error .button, .woocommerce-page .woocommerce-info .button, .woocommerce-page .woocommerce-message .button {
    float: left;
    width: 100%;
    text-align: center;
}

a {
    color: var(--site-button-text);
    text-decoration: underline;
    text-underline-offset: 4px;
}