/**
 * CloudShop — Stiluri Coș + Checkout
 *
 * Ultima modificare: 2026-02-05 16:00
 * Modificari:
 *   2026-02-05 16:00 — Voucher input, discount line, checkout improvements
 *   2026-02-04 15:00 — Creare inițială: coș, checkout, sumar
 */

/* Cart item hover */
.cs-cart-item {
    transition: background var(--cs-transition);
}

.cs-cart-item:hover {
    background: var(--cs-color-bg-light);
}

/* Checkout radio cards */
.form-check:has(input[type="radio"]:checked) {
    background: color-mix(in srgb, var(--cs-color-primary), transparent 92%) !important;
    border: 1px solid color-mix(in srgb, var(--cs-color-primary), transparent 60%);
}

/* ══════════════════════════════════════════════════════
   VOUCHER / CUPON
   ══════════════════════════════════════════════════════ */

.cs-voucher-section {
    border: 1px dashed var(--cs-color-border);
    border-radius: var(--cs-radius-md);
    padding: var(--cs-space-md);
    margin-bottom: var(--cs-space-md);
    transition: border-color 0.2s;
}

.cs-voucher-section:focus-within {
    border-color: var(--cs-color-primary);
}

.cs-voucher-input-group {
    display: flex;
    gap: var(--cs-space-sm);
}

.cs-voucher-input-group input {
    flex: 1;
    padding: 8px 14px;
    border: 1px solid var(--cs-color-border);
    border-radius: var(--cs-radius-sm);
    font-size: var(--cs-font-sm);
    font-family: var(--cs-font-body);
    outline: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: border-color 0.2s;
}

.cs-voucher-input-group input:focus {
    border-color: var(--cs-color-primary);
}

.cs-voucher-input-group input::placeholder {
    text-transform: none;
    letter-spacing: 0;
}

.cs-voucher-applied {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--cs-space-sm) var(--cs-space-md);
    background: color-mix(in srgb, var(--cs-color-success), transparent 90%);
    border: 1px solid color-mix(in srgb, var(--cs-color-success), transparent 70%);
    border-radius: var(--cs-radius-sm);
    font-size: var(--cs-font-sm);
    color: var(--cs-color-success);
}

.cs-voucher-applied .cs-voucher-code {
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.cs-voucher-remove {
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.2s;
    background: none;
    border: none;
    color: var(--cs-color-error);
    padding: 2px 6px;
    border-radius: var(--cs-radius-sm);
}

.cs-voucher-remove:hover {
    opacity: 1;
    background: color-mix(in srgb, var(--cs-color-error), transparent 90%);
}

.cs-voucher-error {
    font-size: var(--cs-font-xs);
    color: var(--cs-color-error);
    margin-top: var(--cs-space-xs);
}

/* Discount line in sumar */
.cs-discount-line {
    color: var(--cs-color-success);
    font-weight: 500;
}

/* Checkout sumar sticky */
.cs-checkout-summary {
    position: sticky;
    top: calc(var(--cs-navbar-height) + var(--cs-space-lg));
}
