#envio-mapa,
.epk-checkout-box,
.epk-whatsapp-pay {
    margin: 22px 0;
    padding: 22px;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 18px;
    background: linear-gradient(135deg, #ffffff 0%, #f7f3eb 100%);
    box-shadow: 0 12px 35px rgba(0,0,0,.06);
}

.epk-head h3,
.epk-checkout-box h3,
.epk-whatsapp-pay h3 {
    margin: 4px 0 8px;
    font-size: 22px;
    line-height: 1.2;
}

.epk-head p,
.epk-checkout-box p,
.epk-whatsapp-pay p {
    margin: 0 0 14px;
    color: #555;
}

.epk-kicker {
    display: inline-block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 700;
    color: #1f8f4a;
}

.epk-options {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 16px 0;
}

.epk-option {
    cursor: pointer;
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 14px;
    border-radius: 14px;
    border: 1px solid rgba(0,0,0,.10);
    background: rgba(255,255,255,.78);
    transition: .2s ease;
}

.epk-option:hover,
.epk-option.epk-active {
    border-color: #22a35a;
    box-shadow: 0 10px 24px rgba(34,163,90,.12);
    transform: translateY(-1px);
}

.epk-option input { margin-top: 4px; }
.epk-option strong { display: block; color: #151515; }
.epk-option small { display: block; color: #666; margin-top: 3px; line-height: 1.35; }

.epk-panel {
    margin-top: 14px;
    padding: 16px;
    border-radius: 14px;
    background: rgba(255,255,255,.76);
    border: 1px solid rgba(0,0,0,.06);
}

.epk-hidden { display: none; }
.epk-row { display: flex; gap: 10px; margin-top: 8px; }
.epk-row input { flex: 1; min-height: 44px; border-radius: 10px; border: 1px solid #ddd; padding: 0 12px; }
.epk-row button,
.epk-whatsapp-btn {
    min-height: 44px;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0 18px !important;
    background: #25D366 !important;
    color: #fff !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    box-shadow: 0 12px 28px rgba(37,211,102,.25);
}

#mapa { height: 280px; width: 100%; margin-top: 14px; border-radius: 16px; overflow: hidden; }
.epk-result { margin-top: 12px; padding: 12px 14px; border-radius: 12px; background: #f1f8f3; color: #1d4329; }
.epk-whatsapp-pay small { display: block; margin-top: 10px; color: #666; }
.woocommerce-checkout .epk-checkout-box .form-row { margin-bottom: 14px; }

@media(max-width:768px){
    #envio-mapa,
    .epk-checkout-box,
    .epk-whatsapp-pay { padding: 16px; border-radius: 16px; }
    .epk-options { grid-template-columns: 1fr; }
    .epk-row { flex-direction: column; }
    #mapa { height: 220px; }
    .epk-row button,
    .epk-whatsapp-btn { width: 100%; text-align: center; }
}



/* Checkout premium visual - Almacén de Mascotas */
body.woocommerce-checkout .woocommerce{position:relative;isolation:isolate}
body.woocommerce-checkout .woocommerce:before{content:"";position:absolute;top:-34px;right:5%;width:min(440px,42vw);aspect-ratio:1/1;background:url('../img/perro-checkout.svg') center/contain no-repeat;opacity:.30;pointer-events:none;z-index:-1}
body.woocommerce-checkout .woocommerce:after{content:"";position:absolute;inset:-22px -18px auto auto;width:78%;height:560px;background:radial-gradient(circle at 82% 16%,rgba(201,111,78,.14),transparent 28%),radial-gradient(circle at 28% 18%,rgba(84,163,78,.13),transparent 32%),linear-gradient(135deg,rgba(255,255,255,.72),rgba(248,241,229,.78));border-radius:32px;pointer-events:none;z-index:-2}
body.woocommerce-checkout .woocommerce-billing-fields,body.woocommerce-checkout .epk-checkout-box,body.woocommerce-checkout .epk-whatsapp-pay,body.woocommerce-checkout #order_review,body.woocommerce-checkout .woocommerce-checkout-review-order{border-radius:22px}
body.woocommerce-checkout .woocommerce-billing-fields{position:relative;padding:26px 26px 18px!important;background:rgba(255,255,255,.84);border:1px solid rgba(84,163,78,.18);box-shadow:0 18px 48px rgba(46,38,22,.08);backdrop-filter:blur(8px);overflow:hidden}
body.woocommerce-checkout .woocommerce-billing-fields:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 94% 12%,rgba(84,163,78,.10),transparent 22%),radial-gradient(circle at 8% 96%,rgba(201,111,78,.09),transparent 22%);pointer-events:none}
body.woocommerce-checkout .woocommerce-billing-fields>*{position:relative;z-index:1}
body.woocommerce-checkout .woocommerce-billing-fields h3,body.woocommerce-checkout #order_review_heading,body.woocommerce-checkout .epk-checkout-box h3,body.woocommerce-checkout .epk-whatsapp-pay h3{display:flex;align-items:center;gap:10px;margin-bottom:16px!important;color:#1f241d;letter-spacing:.01em;line-height:1.25}
body.woocommerce-checkout .woocommerce-billing-fields h3:before{content:"🐾";font-size:22px}body.woocommerce-checkout #order_review_heading:before{content:"🛍️";font-size:22px}body.woocommerce-checkout .epk-checkout-box h3:before{content:"🚚";font-size:22px}body.woocommerce-checkout .epk-whatsapp-pay h3:before{content:"💬";font-size:22px}
body.woocommerce-checkout .form-row{margin-bottom:17px!important}body.woocommerce-checkout .form-row label{font-size:13px;font-weight:800;color:#4d4a43;margin-bottom:7px;letter-spacing:.01em;line-height:1.25}body.woocommerce-checkout .woocommerce-input-wrapper{display:block;width:100%}
body.woocommerce-checkout input.input-text,body.woocommerce-checkout textarea.input-text,body.woocommerce-checkout select,body.woocommerce-checkout .select2-container--default .select2-selection--single{min-height:48px!important;width:100%!important;border-radius:13px!important;border:1px solid rgba(84,163,78,.34)!important;background:rgba(255,255,255,.96)!important;color:#232923!important;box-shadow:0 8px 22px rgba(27,55,32,.045)!important;padding:12px 14px!important;font-size:15px!important;line-height:1.35!important}
body.woocommerce-checkout textarea.input-text{min-height:92px!important;resize:vertical}body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:24px!important;padding-left:0!important;color:#232923!important}body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:48px!important;right:10px!important}
body.woocommerce-checkout input.input-text:focus,body.woocommerce-checkout textarea.input-text:focus,body.woocommerce-checkout select:focus,body.woocommerce-checkout .select2-container--open .select2-selection--single{border-color:#54a34e!important;box-shadow:0 0 0 4px rgba(84,163,78,.13),0 10px 28px rgba(27,55,32,.08)!important;outline:none!important}
body.woocommerce-checkout .form-row-first,body.woocommerce-checkout .form-row-last{width:calc(50% - 8px)!important}
body.woocommerce-checkout #billing_address_1_field,body.woocommerce-checkout #billing_phone_field,body.woocommerce-checkout #billing_email_field,body.woocommerce-checkout #billing_country_field{width:100%!important;float:none!important;clear:both!important}
body.woocommerce-checkout #billing_city_field,body.woocommerce-checkout #billing_state_field,body.woocommerce-checkout #billing_postcode_field{width:32%!important;margin-right:2%!important;float:left!important;clear:none!important}body.woocommerce-checkout #billing_postcode_field{margin-right:0!important}
body.woocommerce-checkout .woocommerce-error,body.woocommerce-checkout .woocommerce-info,body.woocommerce-checkout .woocommerce-message{border-radius:16px;border-top-color:#54a34e;background:rgba(255,255,255,.92);box-shadow:0 14px 34px rgba(0,0,0,.06);line-height:1.45}
body.woocommerce-checkout .epk-checkout-box{position:relative;margin-top:22px!important;padding:26px!important;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(250,242,229,.94))!important;border:1px solid rgba(201,111,78,.20)!important;box-shadow:0 18px 48px rgba(46,38,22,.08)!important;overflow:hidden}
body.woocommerce-checkout .epk-checkout-box:after{content:"";position:absolute;right:20px;top:18px;width:58px;height:58px;border-radius:18px;background:rgba(84,163,78,.10)}
body.woocommerce-checkout .epk-checkout-box p,body.woocommerce-checkout .epk-whatsapp-pay p{max-width:760px;color:#5d5b54!important;line-height:1.55}
body.woocommerce-checkout .epk-whatsapp-pay{position:relative;padding:24px 26px!important;background:linear-gradient(135deg,#fffaf1 0%,#ffffff 50%,#eef8ef 100%)!important;border:1px solid rgba(84,163,78,.20)!important;box-shadow:0 18px 48px rgba(46,38,22,.08)!important}
body.woocommerce-checkout .epk-whatsapp-btn,body.woocommerce-checkout #place_order{width:100%;min-height:54px!important;border-radius:16px!important;background:linear-gradient(135deg,#54a34e 0%,#24933f 100%)!important;color:#fff!important;font-weight:900!important;letter-spacing:.02em;text-transform:uppercase;box-shadow:0 16px 32px rgba(37,147,63,.26)!important;white-space:normal!important;text-align:center!important}
body.woocommerce-checkout .epk-whatsapp-btn:hover,body.woocommerce-checkout #place_order:hover{transform:translateY(-1px);filter:brightness(1.04)}
body.woocommerce-checkout #order_review,body.woocommerce-checkout .woocommerce-checkout-review-order{background:rgba(255,255,255,.88);border:1px solid rgba(201,111,78,.20);box-shadow:0 18px 48px rgba(46,38,22,.09);padding:24px!important;overflow:hidden}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{border:0!important;margin-bottom:16px!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,body.woocommerce-checkout .woocommerce-checkout-review-order-table td{border-color:rgba(94,76,52,.14)!important;padding:15px 10px!important;vertical-align:middle;line-height:1.45;word-break:normal;overflow-wrap:anywhere}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{min-width:0;max-width:270px;white-space:normal!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{color:#2d7f35;font-size:20px;font-weight:900}
body.woocommerce-checkout .woocommerce-privacy-policy-text,body.woocommerce-checkout .payment_box,body.woocommerce-checkout .wc_payment_methods{font-size:14px;line-height:1.5}
@media(max-width:921px){body.woocommerce-checkout .woocommerce:before{width:320px;right:-30px;top:20px;opacity:.18}body.woocommerce-checkout .woocommerce:after{width:100%;height:620px;right:0}body.woocommerce-checkout #billing_city_field,body.woocommerce-checkout #billing_state_field,body.woocommerce-checkout #billing_postcode_field,body.woocommerce-checkout .form-row-first,body.woocommerce-checkout .form-row-last{width:100%!important;margin-right:0!important;float:none!important}body.woocommerce-checkout .woocommerce-billing-fields,body.woocommerce-checkout #order_review,body.woocommerce-checkout .woocommerce-checkout-review-order,body.woocommerce-checkout .epk-checkout-box,body.woocommerce-checkout .epk-whatsapp-pay{padding:18px!important;border-radius:18px!important}}

/* Método de pago interactivo */
body.woocommerce-checkout .epk-payment-method-box{
    margin:18px 0 20px;
    padding:18px;
    border-radius:18px;
    background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(239,248,239,.78));
    border:1px solid rgba(84,163,78,.20);
    box-shadow:0 12px 30px rgba(46,38,22,.055);
}
body.woocommerce-checkout .epk-payment-method-box h4{
    margin:0 0 6px;
    font-size:18px;
    color:#253322;
    line-height:1.25;
}
body.woocommerce-checkout .epk-payment-method-box .epk-mini-help{
    margin:0 0 14px!important;
    font-size:14px;
    color:#666057!important;
    line-height:1.45;
}
body.woocommerce-checkout .epk-payment-radio-field > label{
    display:block!important;
    margin-bottom:8px!important;
}
body.woocommerce-checkout .epk-payment-radio-field .woocommerce-input-wrapper{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
body.woocommerce-checkout .epk-payment-radio-field .woocommerce-input-wrapper label.radio{
    position:relative;
    display:flex!important;
    align-items:flex-start;
    gap:10px;
    min-height:74px;
    margin:0!important;
    padding:15px 15px 15px 46px;
    border-radius:16px;
    border:1px solid rgba(84,163,78,.26);
    background:#fff;
    cursor:pointer;
    color:#293328;
    font-weight:800;
    line-height:1.28;
    box-shadow:0 10px 24px rgba(27,55,32,.05);
    transition:.2s ease;
}
body.woocommerce-checkout .epk-payment-radio-field .woocommerce-input-wrapper label.radio:hover{
    transform:translateY(-1px);
    border-color:#54a34e;
    box-shadow:0 14px 30px rgba(84,163,78,.13);
}
body.woocommerce-checkout .epk-payment-radio-field input[type="radio"]{
    position:absolute;
    left:16px;
    top:18px;
    width:18px;
    height:18px;
    accent-color:#54a34e;
}
body.woocommerce-checkout .epk-payment-info{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-top:12px;
    padding:14px 16px;
    border-radius:15px;
    background:rgba(84,163,78,.10);
    border:1px dashed rgba(84,163,78,.36);
    color:#244021;
    line-height:1.45;
}
body.woocommerce-checkout .epk-payment-info strong{
    font-size:15px;
    color:#21632d;
}
body.woocommerce-checkout .epk-payment-info span{
    font-size:14px;
    color:#4f5b4b;
}
@media(max-width:768px){
    body.woocommerce-checkout .epk-payment-radio-field .woocommerce-input-wrapper{grid-template-columns:1fr;}
    body.woocommerce-checkout .epk-payment-method-box{padding:15px;border-radius:16px;}
}
