/**
 * Product Types CSS
 * Styles for multi-product type support: Oil, Filters, Jantes, Parts
 *
 * @package 24hpneus
 * @since 2.1.0
 */

/* ===========================================
   PRODUCT FINDERS - Common Styles
   =========================================== */

.pneus-finder-section {
    padding: 30px 0;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}

.product-finder {
    background: #fff;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.finder-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}

.finder-icon {
    width: 60px;
    height: 60px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.finder-icon svg {
    width: 32px;
    height: 32px;
}

/* Oil finder icon */
.finder-icon--oil {
    background: linear-gradient(135deg, #e9c46a 0%, #f4a261 100%);
    color: #fff;
}

/* Filter finder icon */
.finder-icon--filtres {
    background: linear-gradient(135deg, #e76f51 0%, #e63946 100%);
    color: #fff;
}

/* Jantes finder icon */
.finder-icon--jantes {
    background: linear-gradient(135deg, #2a9d8f 0%, #264653 100%);
    color: #fff;
}

/* Parts finder icon */
.finder-icon--autres {
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
    color: #fff;
}

.finder-title-wrap {
    flex: 1;
}

.finder-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1d1d1d;
    margin: 0 0 4px 0;
}

.finder-subtitle {
    font-size: 0.9rem;
    color: #666;
    margin: 0;
}

/* ===========================================
   FINDER FORM
   =========================================== */

.finder-form {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: flex-end;
}

.finder-fields {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    flex: 1;
}

.finder-field {
    flex: 1;
    min-width: 150px;
}

.finder-field--wide {
    min-width: 300px;
    flex: 2;
}

.finder-field label {
    display: block;
    margin-bottom: 6px;
}

.finder-field .field-label {
    font-size: 0.85rem;
    font-weight: 600;
    color: #333;
}

.finder-select,
.finder-input {
    width: 100%;
    padding: 12px 16px;
    border: 2px solid #e5e5e5;
    border-radius: 8px;
    font-size: 0.95rem;
    transition: all 0.2s ease;
    background: #fff;
}

.finder-select:focus,
.finder-input:focus {
    border-color: var(--primary-color, #e63946);
    outline: none;
    box-shadow: 0 0 0 3px rgba(230, 57, 70, 0.1);
}

.finder-submit {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: var(--primary-color, #e63946);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.finder-submit:hover {
    background: var(--primary-hover, #d62839);
    transform: translateY(-1px);
}

.finder-submit svg {
    flex-shrink: 0;
}

/* ===========================================
   FINDER TABS
   =========================================== */

.finder-tabs {
    display: flex;
    gap: 8px;
    margin-bottom: 20px;
    border-bottom: 2px solid #e5e5e5;
    padding-bottom: 12px;
}

.finder-tab {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
    color: #666;
    cursor: pointer;
    transition: all 0.2s ease;
}

.finder-tab:hover {
    background: #f5f5f5;
    color: #333;
}

.finder-tab.active {
    background: var(--primary-color, #e63946);
    color: #fff;
    border-color: var(--primary-color, #e63946);
}

.finder-tab svg {
    width: 16px;
    height: 16px;
}

/* ===========================================
   FINDER TIP
   =========================================== */

.finder-tip {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
    padding: 12px 16px;
    background: #f8f9fa;
    border-radius: 8px;
    font-size: 0.85rem;
    color: #666;
}

.finder-tip svg {
    flex-shrink: 0;
    color: var(--primary-color, #e63946);
}

/* ===========================================
   PRODUCT CARD - Type Specific Styles
   =========================================== */

/* Spec line colors by type */
.pneus-card-size--pneus {
    color: #1d3557;
}

.pneus-card-size--huile {
    color: #e9c46a;
}

.pneus-card-size--filtres {
    color: #e76f51;
}

.pneus-card-size--jantes {
    color: #2a9d8f;
}

.pneus-card-size--autres {
    color: #6c757d;
}

/* Product type badges */
.pneus-badge--synthetic {
    background: linear-gradient(135deg, #e9c46a 0%, #f4a261 100%);
    color: #fff;
}

.pneus-badge--charbon {
    background: linear-gradient(135deg, #2a9d8f 0%, #264653 100%);
    color: #fff;
}

/* ===========================================
   RESPONSIVE
   =========================================== */

@media (max-width: 768px) {
    .product-finder {
        padding: 20px;
    }

    .finder-header {
        flex-direction: column;
        text-align: center;
    }

    .finder-form {
        flex-direction: column;
    }

    .finder-fields {
        flex-direction: column;
    }

    .finder-field,
    .finder-field--wide {
        min-width: 100%;
    }

    .finder-submit {
        width: 100%;
        justify-content: center;
    }

    .finder-tabs {
        flex-wrap: wrap;
    }

    .finder-tab {
        flex: 1;
        justify-content: center;
        min-width: 120px;
    }
}

/* ===========================================
   ACTIVE FILTERS - Product Type
   =========================================== */

.pneus-filter-tag[data-type="huile"] {
    background: rgba(233, 196, 106, 0.15);
    border-color: #e9c46a;
}

.pneus-filter-tag[data-type="filtres"] {
    background: rgba(231, 111, 81, 0.15);
    border-color: #e76f51;
}

.pneus-filter-tag[data-type="jantes"] {
    background: rgba(42, 157, 143, 0.15);
    border-color: #2a9d8f;
}

.pneus-filter-tag[data-type="autres"] {
    background: rgba(108, 117, 125, 0.15);
    border-color: #6c757d;
}

/* ===========================================
   SINGLE PRODUCT - Type Specific Styles
   =========================================== */

/* Synthetic Oil Badge */
.badge--synthetic {
    background: linear-gradient(135deg, #e9c46a 0%, #f4a261 100%);
    color: #fff;
}

/* Product type indicator on single product */
.tf-product-info[data-product-type="huile"] .tf-product-specs {
    border-left-color: #e9c46a;
}

.tf-product-info[data-product-type="filtres"] .tf-product-specs {
    border-left-color: #e76f51;
}

.tf-product-info[data-product-type="jantes"] .tf-product-specs {
    border-left-color: #2a9d8f;
}

.tf-product-info[data-product-type="autres"] .tf-product-specs {
    border-left-color: #6c757d;
}

/* Spec item icons for different product types */
.tf-spec-item .icon-speedometer,
.tf-spec-item .icon-oil-drop {
    color: #e9c46a;
}

.tf-spec-item .icon-filter {
    color: #e76f51;
}

.tf-spec-item .icon-settings,
.tf-spec-item .icon-layers {
    color: #2a9d8f;
}

.tf-spec-item .icon-tool,
.tf-spec-item .icon-check-circle {
    color: #6c757d;
}
