/* ============================================================================
   uc-buttons.css — sistema ÚNICO de botones (.ucbtn; el prefijo .uc-btn ya lo usa la tarjeta de producto) de uniclimasolutions.com (06/09/2026)
   Fuente de valores: tokens.css (--ucn-*) y el uso mayoritario real medido en la
   auditoría (radio 12 px, DM Sans 15/700, altura 48, hover = --ucn-brand-600).
   NO toca: skin de la home v7 (#main-content.uc-home-v7), checkout (#place_order,
   .ucn-step__next), drawer de carrito, botones circulares, tabs/segmentados.
   Rollback: quitar el enqueue 'ucn-buttons' en inc/enqueue-frontend.php.
   ============================================================================ */
:root{
  --uc-btn-radius:12px; --uc-btn-radius-pill:999px;
  --uc-btn-h-sm:40px; --uc-btn-h-md:48px; --uc-btn-h-lg:54px; --uc-btn-pad-x:20px;
  --uc-btn-font:var(--ucn-font-sans); --uc-btn-size:15px; --uc-btn-weight:700; --uc-btn-ls:.01em;
  --uc-btn-ring:0 0 0 3px rgba(200,16,46,.30);
  --uc-btn-primary-bg:var(--ucn-brand-500); --uc-btn-primary-bg-h:var(--ucn-brand-600);
  --uc-btn-primary-shadow:0 8px 18px rgba(200,16,46,.26);
  --uc-btn-buy-bg:#0F172A; --uc-btn-buy-bg-h:#1E293B;      /* rol transaccional "Añadir/Finalizar": distinto del rojo a propósito */
  --uc-btn-wa-bg:#16A34A; --uc-btn-wa-bg-h:#15803D;
  --uc-btn-line:var(--ucn-gray-200); --uc-btn-ink:var(--ucn-neutral-900);
}

/* ---- Base + variantes (para markup nuevo y migraciones futuras) ---- */
.ucbtn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--uc-btn-h-md);padding:0 var(--uc-btn-pad-x);border:1.5px solid transparent;border-radius:var(--uc-btn-radius);font-family:var(--uc-btn-font);font-size:var(--uc-btn-size);font-weight:var(--uc-btn-weight);line-height:1;letter-spacing:var(--uc-btn-ls);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}
.ucbtn:focus-visible{outline:0;box-shadow:var(--uc-btn-ring)}
.ucbtn[disabled],.ucbtn--disabled{background:var(--ucn-neutral-200);color:var(--ucn-neutral-500);border-color:transparent;box-shadow:none;cursor:not-allowed;pointer-events:none}
.ucbtn svg{width:18px;height:18px;flex:0 0 auto}
.ucbtn--primary{background:var(--uc-btn-primary-bg);color:#fff;box-shadow:var(--uc-btn-primary-shadow)}
.ucbtn--primary:hover{background:var(--uc-btn-primary-bg-h);color:#fff}
.ucbtn--buy{background:var(--uc-btn-buy-bg);color:#fff;font-weight:800}
.ucbtn--buy:hover{background:var(--uc-btn-buy-bg-h);color:#fff}
.ucbtn--secondary{background:#fff;color:var(--uc-btn-ink);border-color:var(--uc-btn-line)}
.ucbtn--secondary:hover{border-color:var(--uc-btn-primary-bg);color:var(--uc-btn-primary-bg)}
.ucbtn--ghost{background:transparent;color:var(--uc-btn-ink);border-color:transparent;padding:0 12px}
.ucbtn--ghost:hover{background:var(--ucn-gray-100)}
.ucbtn--pill{border-radius:var(--uc-btn-radius-pill);min-height:44px;padding:0 16px;background:#fff;color:var(--uc-btn-ink);border-color:var(--uc-btn-line);font-size:14px}
.ucbtn--pill:hover{border-color:var(--uc-btn-primary-bg);color:var(--uc-btn-primary-bg)}
.ucbtn--pill.is-on{background:var(--uc-btn-primary-bg);border-color:var(--uc-btn-primary-bg);color:#fff}
.ucbtn--wa{background:var(--uc-btn-wa-bg);color:#fff}
.ucbtn--wa:hover{background:var(--uc-btn-wa-bg-h);color:#fff}
.ucbtn--icon{width:44px;height:44px;min-height:44px;padding:0;background:#fff;color:var(--uc-btn-ink);border-color:var(--uc-btn-line)}
.ucbtn--icon:hover{border-color:var(--uc-btn-ink)}
.ucbtn--sm{min-height:var(--uc-btn-h-sm);padding:0 14px;font-size:13.5px}
.ucbtn--lg{min-height:var(--uc-btn-h-lg);padding:0 24px;font-size:16px;font-weight:800}
.ucbtn--block{display:flex;width:100%}

/* ---- FASE A: alias sobre botones existentes que SÍ son la misma familia ----
   Solo se igualan radio (12), hover (--ucn-brand-600) y rojo de marca. El prefijo
   `body` gana los empates de especificidad con las hojas de página que cargan después. */
/* F1 · CTA primario rojo */
body .ucn-search-pill__btn:hover{background:var(--ucn-brand-600);border-color:var(--ucn-brand-600)}
body .ucn-cc__btn{border-radius:var(--uc-btn-radius)}
body .ucn-cc__btn--primary:hover{background:var(--ucn-brand-600);border-color:var(--ucn-brand-600)}
body .ucn-cc__btn--ghost:hover{background:#fff;border-color:var(--ucn-brand-500);color:var(--ucn-brand-500)}
body .ucn-c-submit:hover{background:var(--ucn-brand-600)}
body .ucn-c-upbtn{border-radius:var(--uc-btn-radius)}
body .woocommerce a.button.alt,body .woocommerce button.button.alt,body .woocommerce input.button.alt,body .woocommerce-form-login__submit{border-radius:var(--uc-btn-radius)}
body .woocommerce a.button.alt:hover,body .woocommerce button.button.alt:hover,body .woocommerce input.button.alt:hover,body .woocommerce-form-login__submit:hover{background:var(--ucn-brand-600)}
body .ups-see-all{background:var(--ucn-brand-500)}
body .ups-see-all:hover{background:var(--ucn-brand-600)}
body .ups-facet__chip.is-on{background:var(--ucn-brand-500);border-color:var(--ucn-brand-500)}
body .uc-stub-btn--primary{background:var(--ucn-brand-500);border-radius:var(--uc-btn-radius)}
body .uc-stub-btn--primary:hover{background:var(--ucn-brand-600)}
/* F2 · Navy transaccional: mismo color, misma forma (radio 12, hover #1E293B) */
body .ux2 .add,body .uc-ficha-v3 .bb-add,body .ux2 .rc-add,body .ux2 .ico,body .uc-ficha-v3 .bb-sh,body .ux2 .rc-sh{border-radius:var(--uc-btn-radius)}
body .ux2 .add{box-shadow:0 8px 18px rgba(15,23,42,.26)}
body .uc-ficha-v3 .bb-add:hover{background:var(--uc-btn-buy-bg-h);filter:none}
body .ux2 .rc-add:hover{background:var(--uc-btn-buy-bg-h)}
/* F3 · Secundario borde claro: hover uniforme (borde+texto de marca) */
body .ux2 .ico:hover,body .uc-ficha-v3 .bb-sh:hover,body .ux2 .rc-sh:hover{border-color:var(--ucn-brand-500);color:var(--ucn-brand-500)}
/* F6 · WhatsApp: un solo verde */
body .ucn-cta--wa{background:var(--uc-btn-wa-bg)}
body .ucn-cta--wa:hover{background:var(--uc-btn-wa-bg-h)}
