/* ===== CPE Tienda Pro ===== */
:root{--cpe-blue:#016CA4;--cpe-navy:#00476F;--cpe-green:#4FA80E;--cpe-red:#A80239;--cpe-soft:#EEF5FA;--cpe-border:#DCE5EC;--cpe-muted:#51606E;--cpe-wa:#1FAF55;--cpe-radius:16px;--cpe-shadow:0 1px 2px rgba(15,34,51,.06),0 8px 24px rgba(15,34,51,.06)}
body{-webkit-font-smoothing:antialiased}

/* Barra superior + header */
.cpe-topbar{font-size:.875rem}
.cpe-topbar a{color:inherit;text-decoration:none}
.cpe-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--cpe-border);box-shadow:0 2px 12px rgba(15,34,51,.04)}
.admin-bar .cpe-header{top:32px}
@media (max-width:782px){.admin-bar .cpe-header{top:0}}
.cpe-header .wp-block-site-logo img{height:auto}
.cpe-header .wp-block-navigation a{font-weight:600}
.cpe-header .wp-block-navigation a:hover{color:var(--cpe-blue)}
.cpe-header .wp-block-search__input{border-radius:12px 0 0 12px;border-color:var(--cpe-border);background:var(--cpe-soft);min-height:44px}
.cpe-header .wp-block-search__button{border-radius:0 12px 12px 0;margin-left:0}
.cpe-header .wc-block-mini-cart__badge{background:var(--cpe-red);color:#fff}
@media (max-width:781px){.cpe-header .cpe-header-search{display:none}}

/* Hero */
.cpe-hero{position:relative;overflow:hidden}
.cpe-hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:rgba(255,255,255,.06);pointer-events:none}
.cpe-hero .cpe-pill{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.35em .9em;font-size:.85rem;font-weight:600}
.cpe-hero .wp-block-image img{border-radius:24px;box-shadow:0 30px 60px rgba(0,0,0,.25)}
.cpe-hero .is-style-outline .wp-block-button__link{border:2px solid rgba(255,255,255,.7);color:#fff;background:transparent}
.cpe-hero .is-style-outline .wp-block-button__link:hover{background:#fff;color:var(--cpe-navy)}

/* Tarjetas genéricas */
.cpe-card{background:#fff;border:1px solid var(--cpe-border);border-radius:var(--cpe-radius);box-shadow:var(--cpe-shadow);transition:transform .2s ease,box-shadow .2s ease;height:100%}
.cpe-card:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(15,34,51,.06),0 16px 36px rgba(15,34,51,.10)}
.cpe-card a{text-decoration:none}
.cpe-card .wp-block-image img{border-radius:12px}
.cpe-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;background:var(--cpe-soft);color:var(--cpe-blue);font-size:1.5rem}
.cpe-muted{color:var(--cpe-muted)}
.cpe-kicker{text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.8rem;color:var(--cpe-blue)}

/* Grilla de productos (bloques) */
.wc-block-product-template .wc-block-product,
.wp-block-woocommerce-product-template .wc-block-product,
ul.products li.product{background:#fff;border:1px solid var(--cpe-border);border-radius:var(--cpe-radius);padding:14px 14px 18px!important;box-shadow:var(--cpe-shadow);transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column}
.wc-block-product-template .wc-block-product:hover,
ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(15,34,51,.06),0 16px 36px rgba(15,34,51,.10)}
.wc-block-components-product-image img,.wc-block-grid__product-image img{border-radius:12px;background:var(--cpe-soft)}
.wc-block-product .wp-block-post-title{font-family:var(--wp--preset--font-family--sora);font-weight:600;line-height:1.3}
.wc-block-product .wp-block-post-title a{color:var(--wp--preset--color--contrast);text-decoration:none}
.wc-block-product .wp-block-post-title a:hover{color:var(--cpe-blue)}
.wc-block-components-product-price,.wp-block-woocommerce-product-price{font-weight:700;color:var(--cpe-navy)}
.wc-block-components-product-price del{color:var(--cpe-muted);font-weight:400;opacity:.8}
.wc-block-components-product-price ins{text-decoration:none;color:var(--cpe-red)}
.wc-block-product .wp-block-button{margin-top:auto}
.wc-block-product .wp-block-button__link,.wc-block-components-product-button .wp-block-button__link{width:100%;border-radius:12px}
.wc-block-components-product-sale-badge,.onsale{background:var(--cpe-red)!important;color:#fff!important;border:0!important;border-radius:999px!important;font-weight:700;padding:.25em .7em!important;font-size:.8rem!important}

/* Ficha de producto */
.single-product .wp-block-post-title{font-size:clamp(1.6rem,2.6vw,2.2rem)}
.single-product .wc-block-components-product-price,.single-product .wp-block-woocommerce-product-price{font-size:1.9rem}
.single-product .woocommerce-product-gallery__image img,.single-product .wp-block-woocommerce-product-image-gallery img{border-radius:20px;background:var(--cpe-soft)}
.single-product form.cart .quantity input{border-radius:12px;min-height:48px;border:1px solid var(--cpe-border)}
.single-product form.cart .single_add_to_cart_button{min-height:48px;border-radius:12px!important;padding-left:2em!important;padding-right:2em!important}
.single-product .wp-block-woocommerce-product-details .wc-tabs{border-bottom:1px solid var(--cpe-border)}

/* WhatsApp */
.cpe-wa-btn{display:flex;align-items:center;justify-content:center;gap:.55em;width:100%;margin:12px 0 0;padding:.85em 1.2em;border-radius:12px;background:var(--cpe-wa);color:#fff!important;font-weight:700;text-decoration:none!important;line-height:1.2;transition:filter .2s ease,transform .2s ease;box-sizing:border-box}
.cpe-wa-btn:hover{filter:brightness(.93);transform:translateY(-1px)}
.cpe-wa-cart{margin-top:12px}
.cpe-wa-float{position:fixed;right:18px;bottom:18px;z-index:999;display:flex;align-items:center;gap:.5em;background:var(--cpe-wa);color:#fff!important;border-radius:999px;padding:.8em 1.1em;font-weight:700;text-decoration:none!important;box-shadow:0 10px 30px rgba(31,175,85,.35);transition:transform .2s ease}
.cpe-wa-float:hover{transform:translateY(-2px)}
.cpe-wa-float svg{width:24px;height:24px}
@media (max-width:600px){.cpe-wa-float span{display:none}.cpe-wa-float{padding:.9em}}
.cpe-trust{list-style:none;margin:16px 0 0;padding:14px 16px;border:1px dashed var(--cpe-border);border-radius:12px;background:var(--cpe-soft);font-size:.92rem}
.cpe-trust li{position:relative;padding-left:1.6em;margin:.25em 0}
.cpe-trust li::before{content:"";position:absolute;left:0;top:.35em;width:1em;height:1em;border-radius:50%;background:var(--cpe-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' stroke='white' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/80% no-repeat}

/* Yape */
.cpe-yape{margin:24px 0;padding:24px;border:1px solid var(--cpe-border);border-radius:var(--cpe-radius);background:linear-gradient(135deg,#f6f0ff,#eef5fa)}
.cpe-yape h2{margin-top:0}
.cpe-yape__grid{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.cpe-yape__qr img{width:220px;height:auto;border-radius:12px;background:#fff;padding:8px}
.cpe-yape__data p{margin:.3em 0}
.cpe-yape .cpe-wa-btn{width:auto;display:inline-flex}

/* Carrito / checkout */
.wc-block-cart .wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{border-radius:12px!important;min-height:52px;font-weight:700}
.wc-block-components-totals-wrapper,.wc-block-checkout__main .wc-block-components-checkout-step{border-color:var(--cpe-border)}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-blocks-components-select .wc-blocks-components-select__select{border-radius:10px!important}

/* Footer */
.cpe-footer a{color:inherit;text-decoration:none;opacity:.85}
.cpe-footer a:hover{opacity:1;text-decoration:underline}
.cpe-footer ul{list-style:none;padding:0;margin:0}
.cpe-footer li{margin:.45em 0}
.cpe-pay{display:flex;flex-wrap:wrap;gap:8px}
.cpe-pay span{display:inline-block;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:.3em .7em;font-size:.8rem;font-weight:700}
.cpe-libro img{background:#fff;border-radius:8px;padding:6px}

/* FAQ */
.cpe-faq details{border:1px solid var(--cpe-border);border-radius:12px;padding:16px 20px;background:#fff;margin-bottom:12px}
.cpe-faq summary{font-weight:700;cursor:pointer;font-family:var(--wp--preset--font-family--sora)}
.cpe-faq details[open] summary{color:var(--cpe-blue)}

/* Ajustes */
.wp-site-blocks > footer.wp-block-template-part,.wp-site-blocks > footer{margin-block-start:0!important}
.wp-site-blocks > main{margin-block-end:0!important}
.cpe-header .wp-block-search__inside-wrapper{border:0!important;padding:0!important;background:transparent}
.cpe-header .wp-block-search__button{background:var(--cpe-blue);color:#fff;border-radius:0 12px 12px 0!important}
.cpe-per{font-weight:500;color:var(--cpe-muted);font-size:.75em}
.wc-block-product .wp-block-woocommerce-product-button{width:100%}
.wc-block-product .wp-block-woocommerce-product-button .wp-block-button__link,.wc-block-product .wc-block-components-product-button__button{width:100%}

/* Móvil */
@media (max-width:781px){
	.cpe-topbar .wp-block-group{justify-content:center!important}
	.cpe-topbar p:last-child{display:none}
	.wp-block-columns:has(> .wp-block-column > .cpe-card){display:grid!important;grid-template-columns:1fr 1fr;gap:12px!important}
	.cpe-card{padding:10px 10px 14px!important}
	.cpe-card h3{font-size:1rem!important;margin-top:10px}
	.cpe-card .cpe-muted{display:none}
	.cpe-hero{padding-top:2.2rem!important;padding-bottom:2.4rem!important}
	.cpe-hero .wp-block-buttons{gap:10px}
	.cpe-hero .wp-block-button{flex:1 1 100%}
	.cpe-hero .wp-block-button__link{width:100%}
	.cpe-header{padding-top:10px!important;padding-bottom:10px!important}
	.cpe-header .wp-block-site-logo img{width:120px!important}
}

/* Registro / Mi cuenta */
.woocommerce-form-register select,.woocommerce-EditAccountForm select{width:100%;min-height:44px;border:1px solid var(--cpe-border);border-radius:10px;padding:0 12px;background:#fff}
.cpe-footer-logo img{background:#fff;border-radius:14px;padding:10px 14px;box-sizing:content-box}

/* Resultado consulta DNI/RUC */
.cpe-doc-result{display:block;margin:6px 0 4px;font-size:.9rem;line-height:1.4;border-radius:10px}
.cpe-doc-result:empty{display:none}
.cpe-doc-result.is-loading{color:var(--cpe-muted)}
.cpe-doc-result.is-ok{background:#EDF8E5;color:#2F6B08;padding:8px 12px;border:1px solid #CFEABB}
.cpe-doc-result.is-bad{background:#FCEBF0;color:var(--cpe-red);padding:8px 12px;border:1px solid #F2C6D4}
.cpe-doc-result.is-warn{background:#FFF7E6;color:#8A5A00;padding:8px 12px;border:1px solid #F5DFA8}
