/* ═══════════════════════════════════════════════════════
   Enow_Compras — Minicart Service Block
   Compact service display for the QuickCart sidebar (450px)
   ═══════════════════════════════════════════════════════ */

.enow-mc-service {
    margin: 8px 0 4px;
    padding: 8px 10px;
    background: #fafafa;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1.4;
    position: relative;
    transition: border-color 0.2s, background-color 0.2s;
}

.enow-mc-service--active {
    border-color: #FAC870;
    background: #fef9ee;
}

/* Loading overlay */
.enow-mc-service--loading {
    pointer-events: none;
    opacity: 0.5;
}
.enow-mc-service--loading::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 14px;
    height: 14px;
    margin-top: -7px;
    border: 2px solid #ccc;
    border-top-color: #FAC870;
    border-radius: 50%;
    animation: enow-mc-spin 0.6s linear infinite;
}
@keyframes enow-mc-spin {
    to { transform: rotate(360deg); }
}

/* ── Row layout ── */
.enow-mc-service__row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}

/* ── Icon ── */
.enow-mc-service__icon {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.enow-mc-service__icon--ok::before {
    content: '✓';
    color: #4caf50;
    font-weight: 700;
    font-size: 13px;
}

/* ── Text ── */
.enow-mc-service__text {
    flex: 1;
    color: #333;
}
.enow-mc-service__text strong {
    font-weight: 600;
}

/* ── Price ── */
.enow-mc-service__price {
    flex-shrink: 0;
    font-weight: 600;
    color: #333;
    white-space: nowrap;
}
.enow-mc-service__price--free {
    color: #4caf50;
    font-weight: 700;
}

/* ── Toggle checkbox (standard service) ── */
.enow-mc-service__row--toggle {
    cursor: pointer;
}
.enow-mc-service__row--toggle:hover {
    opacity: 0.85;
}
.enow-mc-service__check-visual {
    flex-shrink: 0;
    width: 15px;
    height: 15px;
    border: 2px solid #bbb;
    border-radius: 3px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.15s, background 0.15s;
}
.enow-mc-service__check-visual.checked {
    background: #FAC870;
    border-color: #FAC870;
}
.enow-mc-service__check-visual.checked::after {
    content: '✓';
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

/* ── Hint text ── */
.enow-mc-service__hint {
    font-size: 11px;
    color: #888;
    margin-top: 2px;
    padding-left: 21px; /* align with text after checkbox */
}

/* ═══════════════════════════════════════════════════════
   Responsive — small screens
   ═══════════════════════════════════════════════════════ */
@media (max-width: 480px) {
    .enow-mc-service {
        padding: 6px 8px;
        font-size: 11px;
    }
    .enow-mc-service__hint {
        font-size: 10px;
    }
}

/* ═══════════════════════════════════════════════════════
   QuickCart Qty +/- button icon fix (use enowicon font)
   Must override .mpquickcart .button-action:before from minicart.css
   ═══════════════════════════════════════════════════════ */
.mpquickcart .minicart-items .button-action::before {
    font-family: 'enowicon' !important;
    font-size: 16px !important;
    font-weight: normal !important;
    color: #757575 !important;
    line-height: 20px !important;
}
.mpquickcart .minicart-items .button-action.minus::before {
    content: '\e937' !important;
}
.mpquickcart .minicart-items .button-action.plus::before {
    content: '\e936' !important;
}

/* ═══════════════════════════════════════════════════════
   Service block positioning — clear after floating actions
   ═══════════════════════════════════════════════════════ */
.mpquickcart .enow-mc-service {
    clear: both;
}

/* ═══════════════════════════════════════════════════════
   Base price display (when service is active)
   ═══════════════════════════════════════════════════════ */
.enow-mc-baseprice .price {
    font-weight: 700;
    font-size: 14px;
    color: #333;
}

/* ═══════════════════════════════════════════════════════
   Services total line in QuickCart totals
   ═══════════════════════════════════════════════════════ */
.mpquickcart .cart-totals [data-th="Servicios"] {
    color: #666;
    font-size: 13px;
}
