/**
 * FIS Product Manager - Frontend Styles
 * Charte FIS : #003DA5 (bleu), #002366 (bleu foncé), #E5850F (orange), Mulish
 */

/* ── Price on demand ── */
.fis-price-on-demand {
    font-family: 'Mulish', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #003DA5;
}

.fis-price-from {
    font-family: 'Mulish', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #003DA5;
}

/* ── Devis button ── */
.fis-btn-devis-main:hover,
.fis-btn-pdf:hover {
    background-color: #002366 !important;
}

.fis-btn-devis-loop:hover {
    background-color: #002366 !important;
}

/* ── Devis form ── */
#fis-devis-form input:focus,
#fis-devis-form textarea:focus,
#fis-devis-form select:focus {
    border-color: #003DA5 !important;
    outline: none;
    box-shadow: 0 0 0 2px rgba(0, 61, 165, 0.15);
}

#fis-devis-form button[type="submit"]:hover {
    background-color: #002366 !important;
}

/* ── Product table (Cenpac style) ── */
.fis-product-table {
    width: 100%;
    border-collapse: collapse;
    font-family: 'Mulish', sans-serif;
    font-size: 14px;
    margin: 20px 0;
}

.fis-product-table thead th {
    background: #003DA5;
    color: #fff;
    padding: 10px 12px;
    text-align: left;
    font-weight: 600;
    font-size: 13px;
    white-space: nowrap;
}

.fis-product-table tbody td {
    padding: 8px 12px;
    border-bottom: 1px solid #eee;
    vertical-align: middle;
}

.fis-product-table tbody tr:nth-child(even) {
    background: #f9f9fa;
}

.fis-product-table tbody tr:hover {
    background: #f0f4ff;
}

.fis-product-table .fis-qty-input {
    width: 70px;
    padding: 6px 8px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-align: center;
    font-family: 'Mulish', sans-serif;
}

.fis-product-table .fis-add-to-cart-btn {
    background: #003DA5;
    color: #fff;
    border: none;
    padding: 6px 14px;
    border-radius: 4px;
    cursor: pointer;
    font-family: 'Mulish', sans-serif;
    font-weight: 600;
    font-size: 12px;
    transition: background 0.2s;
}

.fis-product-table .fis-add-to-cart-btn:hover {
    background: #002366;
}

.fis-product-table .fis-add-to-cart-btn.loading {
    opacity: 0.6;
    pointer-events: none;
}

.fis-product-table .fis-add-to-cart-btn.added {
    background: #2E7D32;
}

/* ── Pricing tier table ── */
.fis-pricing-tiers {
    width: 100%;
    border-collapse: collapse;
    font-family: 'Mulish', sans-serif;
    font-size: 13px;
    margin: 10px 0;
}

.fis-pricing-tiers th {
    background: #f5f5f5;
    padding: 8px 10px;
    text-align: left;
    font-weight: 600;
    color: #002366;
    border-bottom: 2px solid #003DA5;
}

.fis-pricing-tiers td {
    padding: 6px 10px;
    border-bottom: 1px solid #eee;
}

.fis-pricing-tiers tr.active {
    background: #FFF3E0;
    font-weight: 600;
}

.fis-pricing-tiers .fis-discount-badge {
    background: #E5850F;
    color: #fff;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 11px;
    font-weight: 600;
}

/* ── Conditioning badge ── */
.fis-conditioning-badge {
    display: inline-block;
    background: #f0f4ff;
    border: 1px solid #003DA5;
    color: #003DA5;
    padding: 3px 10px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    font-family: 'Mulish', sans-serif;
}

/* ── Response messages ── */
.fis-success {
    background: #E8F5E9;
    color: #2E7D32;
    padding: 10px 15px;
    border-radius: 4px;
    font-family: 'Mulish', sans-serif;
}

.fis-error {
    background: #FFEBEE;
    color: #B71C1C;
    padding: 10px 15px;
    border-radius: 4px;
    font-family: 'Mulish', sans-serif;
}

/* ── Responsive ── */
@media (max-width: 767px) {
    .fis-devis-actions {
        flex-direction: column !important;
    }

    .fis-devis-actions a,
    .fis-devis-actions button {
        width: 100%;
        text-align: center;
        justify-content: center;
    }

    #fis-devis-form-wrapper {
        max-width: 100% !important;
    }

    .fis-product-table {
        font-size: 12px;
    }

    .fis-product-table thead th,
    .fis-product-table tbody td {
        padding: 6px 8px;
    }
}
