/* ============================================================
   Enco Price Visibility — Frontend Styles
   Fuentes: Poppins (body), Raleway (headings)
   Paleta: tonos teal/navy médico-estético
   ============================================================ */

:root {
    --enco-pv-teal:        #2a7a8c;
    --enco-pv-teal-dark:   #1d5a69;
    --enco-pv-teal-light:  #e8f4f7;
    --enco-pv-gold:        #c4a47c;
    --enco-pv-slate:       #4a5568;
    --enco-pv-lock-bg:     #f0f7f9;
    --enco-pv-lock-border: #b2d8e2;
    --enco-pv-badge-bg:    #2a7a8c;
    --enco-pv-badge-txt:   #ffffff;
    --enco-pv-radius:      6px;
    --enco-pv-radius-lg:   12px;
    --enco-pv-font:        'Poppins', sans-serif;
}

/* ── Bloqueo profesional (precio oculto) ────────────────────── */

.enco-pv__pro-locked {
    display:        flex;
    flex-direction: column;
    align-items:    flex-start;
    gap:            8px;
    padding:        14px 16px;
    background:     var(--enco-pv-lock-bg);
    border:         1px solid var(--enco-pv-lock-border);
    border-radius:  var(--enco-pv-radius-lg);
    font-family:    var(--enco-pv-font);
    max-width:      320px;
}

.enco-pv__lock-icon {
    font-size: 1.1rem;
}

.enco-pv__lock-msg {
    font-size:   0.85rem;
    font-weight: 500;
    color:       var(--enco-pv-slate);
    line-height: 1.4;
}

.enco-pv__pro-btn {
    display:          inline-block;
    margin-top:       4px;
    padding:          8px 16px !important;
    background:       var(--enco-pv-teal) !important;
    color:            #fff !important;
    border:           none !important;
    border-radius:    var(--enco-pv-radius) !important;
    font-family:      var(--enco-pv-font) !important;
    font-size:        0.8rem !important;
    font-weight:      600 !important;
    letter-spacing:   0.03em !important;
    text-transform:   uppercase !important;
    text-decoration:  none !important;
    transition:       background 0.2s ease, transform 0.15s ease !important;
}

.enco-pv__pro-btn:hover {
    background:  var(--enco-pv-teal-dark) !important;
    transform:   translateY(-1px) !important;
    color:       #fff !important;
}

.enco-pv__login-hint {
    font-size:  0.75rem;
    color:      var(--enco-pv-slate);
    opacity:    0.8;
}

.enco-pv__login-hint a {
    color:      var(--enco-pv-teal);
    font-weight: 600;
    text-decoration: underline;
}

/* ── Precio con descuento (usuarios registrados / productos casa) ─ */

.enco-pv__discounted-price {
    display:     flex;
    align-items: center;
    gap:         8px;
    flex-wrap:   wrap;
    font-family: var(--enco-pv-font);
}

.enco-pv__regular-price {
    font-size:      0.9rem;
    color:          #999;
    text-decoration: line-through;
    font-style:     normal;
}

.enco-pv__sale-price {
    font-size:      1.3rem;
    font-weight:    700;
    color:          var(--enco-pv-teal-dark);
    text-decoration: none;
}

.enco-pv__discount-badge {
    display:       inline-flex;
    align-items:   center;
    padding:       3px 8px;
    background:    var(--enco-pv-badge-bg);
    color:         var(--enco-pv-badge-txt);
    border-radius: 20px;
    font-size:     0.72rem;
    font-weight:   700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    white-space:   nowrap;
}

/* ── CTA en página de producto individual ────────────────────── */

.enco-pv__pro-cta-single {
    padding:       20px 24px;
    background:    var(--enco-pv-lock-bg);
    border:        1px solid var(--enco-pv-lock-border);
    border-radius: var(--enco-pv-radius-lg);
    margin:        16px 0;
    font-family:   var(--enco-pv-font);
}

.enco-pv__lock-msg-single {
    font-size:   1rem;
    font-weight: 500;
    color:       var(--enco-pv-slate);
    margin:      0 0 14px;
}

.enco-pv__pro-btn-single {
    display:         inline-block;
    padding:         12px 24px !important;
    background:      var(--enco-pv-teal) !important;
    color:           #fff !important;
    border-radius:   var(--enco-pv-radius) !important;
    font-weight:     700 !important;
    font-size:       0.9rem !important;
    letter-spacing:  0.04em !important;
    text-transform:  uppercase !important;
    text-decoration: none !important;
    transition:      background 0.2s ease, box-shadow 0.2s ease !important;
    border:          none !important;
}

.enco-pv__pro-btn-single:hover {
    background:  var(--enco-pv-teal-dark) !important;
    box-shadow:  0 4px 16px rgba(42, 122, 140, 0.35) !important;
    color:       #fff !important;
}

.enco-pv__login-hint-single {
    margin:    12px 0 0;
    font-size: 0.82rem;
    color:     #777;
}

.enco-pv__login-hint-single a {
    color:       var(--enco-pv-teal);
    font-weight: 600;
}

/* ── Botón CTA en listado de productos ───────────────────────── */

.enco-pv__pro-btn-loop {
    display:         inline-block !important;
    padding:         10px 16px !important;
    background:      var(--enco-pv-teal) !important;
    color:           #fff !important;
    border-radius:   var(--enco-pv-radius) !important;
    font-size:       0.78rem !important;
    font-weight:     600 !important;
    letter-spacing:  0.04em !important;
    text-transform:  uppercase !important;
    text-decoration: none !important;
    border:          none !important;
    transition:      background 0.2s, transform 0.15s !important;
}

.enco-pv__pro-btn-loop:hover {
    background: var(--enco-pv-teal-dark) !important;
    transform:  translateY(-1px) !important;
    color:      #fff !important;
}
