/* TOTAL CAR — FASE 12: capa visual global WooCommerce.
   No modifica templates ni la estructura funcional de WooCommerce. */
:root{
  --tc-wc-yellow:var(--tc-yellow,#FFC500);
  --tc-wc-yellow-hover:var(--tc-yellow-hover,#e5b100);
  --tc-wc-black:var(--tc-black,#000000);
  --tc-wc-text:var(--tc-body-text,#1e293b);
  --tc-wc-muted:#64748b;
  --tc-wc-bg:var(--tc-body-bg,#f8fafc);
  --tc-wc-surface:#ffffff;
  --tc-wc-border:#e2e8f0;
  --tc-wc-success:#15803d;
  --tc-wc-error:#b91c1c;
  --tc-wc-info:#0f4c81;
  --tc-wc-radius:6px;
  --tc-wc-shadow:0 10px 30px rgba(15,23,42,.08);
}
.woocommerce,.woocommerce-page,.wc-block-components-notice-banner,.wc-block-components-form{font-family:var(--tc-font,'Inter',sans-serif);color:var(--tc-wc-text)}
.woocommerce a,.woocommerce-page a{transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .1s ease}
.woocommerce a:not(.button):not(.added_to_cart),.woocommerce-page a:not(.button):not(.added_to_cart){color:var(--tc-wc-black)}
.woocommerce a:not(.button):not(.added_to_cart):hover,.woocommerce-page a:not(.button):not(.added_to_cart):hover{color:#8a6a00}

/* Botones clásicos y de bloques */
.woocommerce :where(a.button,button.button,input.button,#respond input#submit),
.woocommerce-page :where(a.button,button.button,input.button,#respond input#submit),
.wc-block-components-button:not(.is-link),
.wp-block-button.wc-block-components-product-button .wp-block-button__link{
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.75rem 1.5rem!important;
  border:1px solid var(--tc-wc-yellow)!important;border-radius:var(--tc-wc-radius)!important;
  background:var(--tc-wc-yellow)!important;color:var(--tc-wc-black)!important;
  font-family:inherit;font-size:14px!important;font-weight:800!important;line-height:1.2!important;text-decoration:none!important;
  box-shadow:none!important;text-transform:none;letter-spacing:0;cursor:pointer;
}
.woocommerce :where(a.button,button.button,input.button,#respond input#submit):hover,
.woocommerce-page :where(a.button,button.button,input.button,#respond input#submit):hover,
.wc-block-components-button:not(.is-link):hover,
.wp-block-button.wc-block-components-product-button .wp-block-button__link:hover{
  background:var(--tc-wc-yellow-hover)!important;border-color:var(--tc-wc-yellow-hover)!important;color:var(--tc-wc-black)!important;
}
.woocommerce :where(a.button,button.button,input.button,#respond input#submit):active,.wc-block-components-button:not(.is-link):active{transform:scale(.98)}
.woocommerce :where(a.button.alt,button.button.alt,input.button.alt,#respond input#submit.alt){background:var(--tc-wc-black)!important;border-color:var(--tc-wc-black)!important;color:var(--tc-wc-yellow)!important}
.woocommerce :where(a.button.alt,button.button.alt,input.button.alt,#respond input#submit.alt):hover{background:#171717!important;border-color:#171717!important;color:var(--tc-wc-yellow)!important}
.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled],.wc-block-components-button:disabled{opacity:.5!important;cursor:not-allowed;transform:none}

/* Formularios */
.woocommerce :where(input.input-text,textarea,select),
.woocommerce-page :where(input.input-text,textarea,select),
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-blocks-components-select .wc-blocks-components-select__select{
  width:100%;min-height:46px;padding:.72rem .9rem!important;border:1px solid #cbd5e1!important;border-radius:var(--tc-wc-radius)!important;
  background:#fff!important;color:var(--tc-wc-text)!important;font-family:inherit!important;font-size:14px!important;box-shadow:none!important;outline:none!important;
}
.woocommerce textarea,.woocommerce-page textarea{min-height:120px;resize:vertical}
.woocommerce :where(input.input-text,textarea,select):focus,
.woocommerce-page :where(input.input-text,textarea,select):focus,
.wc-block-components-text-input input:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-blocks-components-select .wc-blocks-components-select__select:focus{
  border-color:var(--tc-wc-yellow)!important;box-shadow:0 0 0 3px rgba(255,197,0,.22)!important;
}
.woocommerce form .form-row label,.wc-block-components-form label{font-size:13px;font-weight:700;color:#334155}
.woocommerce form .form-row .required{color:var(--tc-wc-error)}
.woocommerce .select2-container--default .select2-selection--single{height:46px;border:1px solid #cbd5e1;border-radius:var(--tc-wc-radius)}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px;padding-left:.9rem}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}

/* Avisos */
.woocommerce :where(.woocommerce-message,.woocommerce-info,.woocommerce-error),
.wc-block-components-notice-banner{
  margin:0 0 1.5rem!important;padding:1rem 1.25rem 1rem 3.25rem!important;border:1px solid var(--tc-wc-border)!important;border-top:0!important;border-left-width:5px!important;border-radius:var(--tc-wc-radius)!important;
  background:#fff!important;color:var(--tc-wc-text)!important;box-shadow:0 4px 16px rgba(15,23,42,.05)!important;list-style:none!important;
}
.woocommerce .woocommerce-message{border-left-color:var(--tc-wc-success)!important}
.woocommerce .woocommerce-info,.wc-block-components-notice-banner.is-info{border-left-color:var(--tc-wc-info)!important}
.woocommerce .woocommerce-error,.wc-block-components-notice-banner.is-error{border-left-color:var(--tc-wc-error)!important}
.woocommerce :where(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before{top:1rem;left:1.15rem;color:var(--tc-wc-yellow)}
.woocommerce .woocommerce-error::before{color:var(--tc-wc-error)}
.woocommerce .woocommerce-message::before{color:var(--tc-wc-success)}

/* Precio, stock, badges y metadatos */
.woocommerce :where(.price,.product-price),.wc-block-components-product-price,.wc-block-grid__product-price{color:var(--tc-wc-black)!important;font-weight:800!important}
.woocommerce .price del,.wc-block-components-product-price del{color:#94a3b8!important;opacity:1!important;font-weight:500}
.woocommerce .price ins,.wc-block-components-product-price ins{color:var(--tc-wc-black)!important;text-decoration:none!important}
.woocommerce span.onsale,.wc-block-grid__product-onsale,.wc-block-components-product-sale-badge{
  min-width:auto;min-height:auto;margin:0;padding:.42rem .65rem!important;border:0!important;border-radius:4px!important;
  background:var(--tc-wc-yellow)!important;color:var(--tc-wc-black)!important;font-size:11px!important;font-weight:900!important;line-height:1!important;text-transform:uppercase;letter-spacing:.04em;
}
.woocommerce :where(.stock,.in-stock){color:var(--tc-wc-success)!important;font-weight:700}
.woocommerce .out-of-stock{color:var(--tc-wc-error)!important;font-weight:700}
.woocommerce :where(.product_meta,.woocommerce-product-attributes-item__label){color:var(--tc-wc-muted);font-size:13px}

/* Breadcrumbs, ordenamiento y resultados */
.woocommerce .woocommerce-breadcrumb{margin:0 0 1.5rem;color:var(--tc-wc-muted);font-size:13px}
.woocommerce .woocommerce-breadcrumb a{color:#334155;text-decoration:none}
.woocommerce .woocommerce-result-count{color:var(--tc-wc-muted);font-size:13px}
.woocommerce .woocommerce-ordering select{min-width:220px}

/* Tablas */
.woocommerce table.shop_table,.woocommerce table.shop_attributes,
.wc-block-cart-items,.wc-block-components-totals-wrapper{
  border:1px solid var(--tc-wc-border)!important;border-collapse:separate!important;border-spacing:0!important;border-radius:var(--tc-wc-radius)!important;background:#fff;overflow:hidden;
}
.woocommerce table.shop_table th,.woocommerce table.shop_attributes th{background:#f8fafc;color:#0f172a;font-weight:800}
.woocommerce table.shop_table th,.woocommerce table.shop_table td,.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:1rem!important;border-color:var(--tc-wc-border)!important}
.woocommerce table.shop_table tr:last-child td{border-bottom:0}
.woocommerce table.shop_table tbody th,.woocommerce table.shop_table tfoot td,.woocommerce table.shop_table tfoot th{font-weight:800}

/* Cantidad */
.woocommerce .quantity .qty{width:76px;min-height:44px;text-align:center;border:1px solid #cbd5e1;border-radius:var(--tc-wc-radius)}

/* Paginación */
.woocommerce nav.woocommerce-pagination ul{display:flex;gap:7px;border:0;margin:2rem 0 0}
.woocommerce nav.woocommerce-pagination ul li{border:0;float:none}
.woocommerce nav.woocommerce-pagination ul li :where(a,span){display:flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 .75rem;border:1px solid var(--tc-wc-border);border-radius:4px;background:#fff;color:var(--tc-wc-black);font-weight:700}
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:var(--tc-wc-black);border-color:var(--tc-wc-black);color:var(--tc-wc-yellow)}

/* Paneles, tabs, cupones, login y totales sin cambiar su estructura */
.woocommerce :where(.cart_totals,.cross-sells,.woocommerce-form-login,.woocommerce-form-coupon,.woocommerce-address-fields,.woocommerce-MyAccount-content),
.wc-block-components-sidebar-layout .wc-block-components-sidebar{
  border-radius:var(--tc-wc-radius);color:var(--tc-wc-text)
}
.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{border:1px solid var(--tc-wc-border);border-radius:var(--tc-wc-radius);background:#fff;padding:1.5rem}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 1.5rem;border-bottom:1px solid var(--tc-wc-border)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0 4px -1px 0;padding:0;border:1px solid var(--tc-wc-border);border-radius:4px 4px 0 0;background:#f8fafc}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:.8rem 1rem;font-weight:800;color:#475569}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:#fff;border-bottom-color:#fff}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--tc-wc-black)}

/* Bloques WooCommerce */
.wc-block-components-checkbox .wc-block-components-checkbox__input:checked{background:var(--tc-wc-black);border-color:var(--tc-wc-black)}
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked{border-color:var(--tc-wc-yellow)}
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before{background:var(--tc-wc-black)}
.wc-block-components-totals-item__label,.wc-block-components-totals-item__value{font-weight:700}
.wc-block-components-order-summary-item__description .wc-block-components-product-name{font-weight:800;color:var(--tc-wc-black)}
.wc-block-components-chip{border-color:var(--tc-wc-border);background:#f8fafc}
.wc-block-components-validation-error{color:var(--tc-wc-error);font-size:12px;font-weight:600}

/* Loader y estados */
.woocommerce .blockUI.blockOverlay::before,.woocommerce .loader::before{border-color:var(--tc-wc-yellow) transparent var(--tc-wc-yellow) transparent}
.woocommerce-store-notice,p.demo_store{background:var(--tc-wc-black);color:#fff}
.woocommerce-store-notice a,p.demo_store a{color:var(--tc-wc-yellow);font-weight:800}

@media(max-width:767px){
  .woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{float:none;width:100%;margin-bottom:1rem}
  .woocommerce .woocommerce-ordering select{width:100%;min-width:0}
  .woocommerce :where(a.button,button.button,input.button,#respond input#submit),.wc-block-components-button:not(.is-link){width:100%}
  .woocommerce table.shop_table_responsive tr td,.woocommerce-page table.shop_table_responsive tr td{padding:.8rem!important}
  .woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;overflow-x:auto;white-space:nowrap}
}
