/* ==========================================================
   IBUIN — COMPONENTES COMPARTIDOS
   Única fuente de verdad para botones, cards y utilidades.
   ========================================================== */

.pc-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--pc-accent)}
.pc-eyebrow::before{content:"";width:24px;height:2px;background:currentColor;border-radius:999px}
.pc-eyebrow--light{color:var(--pc-accent-light)}

.pc-btn{min-height:48px;padding:.75rem 1rem;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;font-weight:750;transition:transform var(--pc-transition),background var(--pc-transition),color var(--pc-transition),border-color var(--pc-transition);text-decoration:none}
@media(hover:hover){.pc-btn:hover{transform:translateY(-1px)}}
.pc-site .pc-btn--primary,.pc-site .pc-btn--primary:link,.pc-site .pc-btn--primary:visited,.pc-site .pc-btn--primary:hover,.pc-site .pc-btn--primary:focus,.pc-site .pc-btn--primary:active{background:var(--pc-accent);border-color:var(--pc-accent);color:var(--pc-white)!important;-webkit-text-fill-color:var(--pc-white)!important}
.pc-site .pc-btn--primary:hover{background:var(--pc-accent-hover);border-color:var(--pc-accent-hover)}
.pc-site .pc-btn--secondary,.pc-site .pc-btn--secondary:link,.pc-site .pc-btn--secondary:visited,.pc-site .pc-btn--secondary:hover,.pc-site .pc-btn--secondary:focus,.pc-site .pc-btn--secondary:active{background:var(--pc-secondary);border-color:var(--pc-secondary);color:var(--pc-white)!important;-webkit-text-fill-color:var(--pc-white)!important}
.pc-site .pc-btn--secondary:hover{background:var(--pc-secondary-hover);border-color:var(--pc-secondary-hover)}
.pc-btn--ghost{background:var(--pc-surface);border-color:var(--pc-border);color:var(--pc-dark)}
.pc-btn--ghost:hover{border-color:var(--pc-accent);color:var(--pc-dark)}
.pc-btn--light{background:var(--pc-surface);color:var(--pc-dark)}
.pc-site .pc-btn--whatsapp,.pc-site .pc-btn--whatsapp:link,.pc-site .pc-btn--whatsapp:visited,.pc-site .pc-btn--whatsapp:hover,.pc-site .pc-btn--whatsapp:focus,.pc-site .pc-btn--whatsapp:active{background:var(--pc-accent);border-color:var(--pc-accent);color:var(--pc-white)!important;-webkit-text-fill-color:var(--pc-white)!important}
.pc-site .pc-btn--whatsapp:hover{background:var(--pc-accent-hover);border-color:var(--pc-accent-hover)}
.pc-site :is(.pc-btn--primary,.pc-btn--secondary,.pc-btn--whatsapp)>*{color:inherit!important;-webkit-text-fill-color:currentColor!important}

.pc-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.3rem 0 1.2rem}
.pc-pill-row,.pc-product-tax-row,.pc-chip-row{display:flex;flex-wrap:wrap;gap:.55rem}
.pc-pill,.pc-chip{background:var(--pc-surface);border:1px solid var(--pc-border);padding:.52rem .72rem;border-radius:999px;font-size:.83rem;color:var(--pc-muted);font-weight:650}
.pc-chip:hover{border-color:var(--pc-accent);color:var(--pc-accent-hover)}

.pc-card{background:var(--pc-surface);border:1px solid var(--pc-border);border-radius:var(--pc-radius-md);transition:transform var(--pc-transition),border-color var(--pc-transition)}
@media(hover:hover){.pc-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--pc-accent) 35%,var(--pc-border))}}
.pc-icon{width:42px;height:42px;border-radius:14px;background:var(--pc-accent-soft);color:var(--pc-accent-hover);display:grid;place-items:center;font-size:1.15rem;flex:0 0 auto}
.pc-placeholder{display:grid;place-items:center;background:var(--pc-surface-soft);border:1px solid var(--pc-border);color:var(--pc-muted);font-weight:800;font-size:.82rem}

.pc-product-card{overflow:hidden}
.pc-product-card__image{aspect-ratio:4/3;background:var(--pc-surface-soft);display:grid;place-items:center;overflow:hidden}
.pc-product-card__image img{width:100%;height:100%;object-fit:contain;padding:.5rem}
.pc-product-card__body{padding:1rem}
.pc-product-card__meta{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--pc-accent)}
.pc-product-card__body p{font-size:.9rem;color:var(--pc-muted)}
.pc-product-card__actions{display:flex;justify-content:space-between;gap:.75rem;margin-top:1rem}
.pc-product-card__actions a{font-weight:750;color:var(--pc-accent-hover);font-size:.9rem}

@media(prefers-reduced-motion:reduce){.pc-btn,.pc-card{transition:none}}
