/**
 * MSMC WooCommerce Pricing Styles
 *
 * Styles for dual pricing display
 */

/* ============================================
   PRICE WRAPPER
   ============================================ */

.msmc-price-wrapper {
    display: inline-block;
    line-height: 1.4;
}

.msmc-price-wrapper.msmc-format-stacked {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
}

/* ============================================
   PRIMARY PRICE (Converted)
   ============================================ */

.msmc-price-primary {
    display: inline;
}

.msmc-price-primary .woocommerce-Price-amount {
    font-weight: inherit;
}

/* ============================================
   SECONDARY PRICE (Original)
   ============================================ */

.msmc-price-secondary {
    display: inline;
    white-space: nowrap;
}

.msmc-price-secondary .woocommerce-Price-amount {
    font-weight: normal;
}

/* Strikethrough styling (applied via inline CSS when enabled) */
.msmc-price-secondary.strikethrough .woocommerce-Price-amount {
    text-decoration: line-through;
}

/* ============================================
   FORMAT: BRACKETS
   ============================================ */

.msmc-format-brackets .msmc-price-secondary {
    font-size: 0.9em;
}

.msmc-format-brackets .msmc-price-secondary::before {
    content: "(";
}

.msmc-format-brackets .msmc-price-secondary::after {
    content: ")";
}

/* Remove duplicate brackets since we add them in format */
.msmc-format-brackets .msmc-price-primary + .msmc-price-secondary::before,
.msmc-format-brackets .msmc-price-secondary + .msmc-price-primary ~ .msmc-price-secondary::before {
    content: "";
}

/* ============================================
   FORMAT: SLASH
   ============================================ */

.msmc-format-slash .msmc-price-secondary {
    font-size: 0.9em;
}

/* ============================================
   FORMAT: APPROXIMATE
   ============================================ */

.msmc-format-approximate .msmc-price-secondary {
    font-size: 0.85em;
}

/* ============================================
   FORMAT: STACKED
   ============================================ */

.msmc-format-stacked {
    display: inline-flex !important;
    flex-direction: column;
    gap: 2px;
}

.msmc-format-stacked .msmc-price-primary {
    display: block;
}

.msmc-format-stacked .msmc-price-secondary {
    display: block;
    font-size: 0.85em;
    line-height: 1.2;
}

/* ============================================
   TOOLTIP MODE
   ============================================ */

.msmc-tooltip {
    position: relative;
    cursor: help;
}

.msmc-tooltip-icon {
    display: inline-block;
    font-size: 0.8em;
    opacity: 0.7;
    margin-left: 3px;
    vertical-align: super;
}

.msmc-tooltip:hover .msmc-tooltip-icon {
    opacity: 1;
}

/* Tooltip popup */
.msmc-tooltip::after {
    content: attr(title);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    padding: 6px 10px;
    background: #333;
    color: #fff;
    font-size: 12px;
    font-weight: normal;
    font-style: normal;
    white-space: nowrap;
    border-radius: 4px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s, visibility 0.2s;
    z-index: 1000;
    pointer-events: none;
}

.msmc-tooltip::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-top-color: #333;
    margin-bottom: -6px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s, visibility 0.2s;
    z-index: 1000;
}

.msmc-tooltip:hover::after,
.msmc-tooltip:hover::before {
    opacity: 1;
    visibility: visible;
}

/* Exchange rate tooltip */
.msmc-price-wrapper[data-msmc-rate]:hover::after {
    content: attr(data-msmc-rate);
}

/* ============================================
   CART & CHECKOUT SPECIFIC
   ============================================ */

.woocommerce-cart-form .msmc-price-wrapper,
.cart_totals .msmc-price-wrapper {
    text-align: right;
}

.woocommerce-cart-form .msmc-format-stacked,
.cart_totals .msmc-format-stacked {
    align-items: flex-end;
}

/* ============================================
   MINI-CART
   ============================================ */

.widget_shopping_cart .msmc-price-wrapper {
    font-size: 0.95em;
}

.widget_shopping_cart .msmc-format-stacked {
    gap: 1px;
}

.widget_shopping_cart .msmc-price-secondary {
    font-size: 0.8em;
}

/* ============================================
   PRODUCT PAGE
   ============================================ */

.single-product .msmc-price-wrapper {
    display: block;
}

.single-product .msmc-format-stacked {
    display: flex;
}

.single-product .summary .msmc-price-primary {
    font-size: inherit;
}

/* ============================================
   SHOP/ARCHIVE
   ============================================ */

.woocommerce ul.products .msmc-price-wrapper {
    display: block;
    margin-top: 5px;
}

.woocommerce ul.products .msmc-price-secondary {
    display: block;
    margin-top: 2px;
}

/* ============================================
   VARIABLE PRODUCTS
   ============================================ */

.single_variation_wrap .msmc-price-wrapper {
    margin-bottom: 10px;
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 768px) {
    .msmc-price-wrapper {
        font-size: 0.95em;
    }
    
    .msmc-format-stacked {
        gap: 1px;
    }
    
    .msmc-price-secondary {
        font-size: 0.85em !important;
    }
    
    .msmc-tooltip::after {
        font-size: 11px;
        padding: 4px 8px;
    }
}

@media (max-width: 480px) {
    /* Convert inline formats to stacked on mobile for readability */
    .msmc-format-brackets,
    .msmc-format-slash,
    .msmc-format-approximate {
        display: inline-flex !important;
        flex-direction: column;
        gap: 2px;
    }
    
    .msmc-format-brackets .msmc-price-secondary::before,
    .msmc-format-brackets .msmc-price-secondary::after {
        content: "";
    }
}

/* ============================================
   DARK MODE SUPPORT
   ============================================ */

@media (prefers-color-scheme: dark) {
    .msmc-tooltip::after {
        background: #f5f5f5;
        color: #333;
    }
    
    .msmc-tooltip::before {
        border-top-color: #f5f5f5;
    }
}

/* ============================================
   PRINT STYLES
   ============================================ */

@media print {
    .msmc-tooltip-icon {
        display: none;
    }
    
    .msmc-tooltip::after,
    .msmc-tooltip::before {
        display: none;
    }
}
