/*
Theme Name: Shoptimizer Child
Template: shoptimizer
Version: 1.1.9
*/

/* ============================================
   1. PRODUCT META INFO
   ============================================ */
.product-meta-info {
    font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem);
    color: #555;
    margin-bottom: 1rem;
    line-height: 1.8;
}
.meta-row-first,
.meta-row-second {
    margin-bottom: 4px;
}
.meta-item {
    color: #444;
}
.separator {
    margin: 0 8px;
    color: #999;
}
.oem-link {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s;
}
.oem-link:hover {
    color: #111;
    text-decoration: underline;
}
.oem-show-all {
    color: #0f834d;
    text-decoration: none;
    font-weight: 500;
    cursor: pointer;
    transition: color 0.2s;
}
.oem-show-all:hover {
    color: #0a5c36;
    text-decoration: underline;
}

/* ============================================
   2. PRODUCT FEATURES
   ============================================ */
.product-features {
    background: #f5f5f5;
    padding: 1rem;
    border-radius: 4px;
    margin: 1rem 0;
}
.features-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.features-list li {
    padding: 0.5rem 0 0.5rem 22px;
    position: relative;
    color: #333;
    font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem);
    line-height: 1.5;
    border-bottom: 1px solid #e2e2e2;
}
.features-list li:last-child {
    border-bottom: none;
}
.features-list .icon {
    position: absolute;
    left: 0;
    color: #0f834d;
    font-weight: bold;
    font-size: 1em;
}
.features-list strong {
    color: #111;
}
@media (max-width: 992px) {
    .product-features {
        padding: 0.75rem;
    }
    .features-list li {
        padding: 0.4rem 0 0.4rem 22px;
    }
}

/* ============================================
   3. TRUST BADGES
   ============================================ */
.trust-badges {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 1rem 0;
}
.trust-badges .badge {
    background: #f5f5f5;
    padding: 1rem 0.75rem;
    border-radius: 4px;
    text-align: center;
    border: 1px solid #e2e2e2;
    transition: all 0.2s ease;
}
.trust-badges .badge:hover {
    background: #fff;
    border-color: #ccc;
}
.badge-icon {
    font-size: 1.75em;
    display: block;
    margin-bottom: 6px;
    line-height: 1;
}
/* Güven rozeti ikonları inline SVG (emoji yerine — her cihazda aynı, marka rengi) */
.badge-icon svg {
    width: 32px;
    height: 32px;
    display: inline-block;
    vertical-align: middle;
}
.trust-badges strong {
    display: block;
    font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem);
    color: #111;
    margin-bottom: 2px;
    font-weight: 600;
}
.trust-badges small {
    display: block;
    font-size: clamp(0.75rem, 0.686rem + 0.2033vw, 0.8125rem);
    color: #555;
    line-height: 1.3;
}
@media (max-width: 768px) {
    .trust-badges {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .trust-badges .badge {
        padding: 12px 15px;
    }
    .badge-icon {
        font-size: 1.8em;
    }
}

/* ============================================
   3B. ORDER CARDS (Telefon & WhatsApp sipariş kartları)
   Tema fontu miras alınır (font-family verilmez); renkler tema paleti.
   ============================================ */
.order-buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 1rem 0;
}
.order-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 13px 16px;
    border: 1px solid #e5e7eb;
    border-left: 5px solid; /* renk aşağıda sınıfa göre */
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
    text-decoration: none;
    transition: box-shadow 0.2s ease, transform 0.15s ease;
}
.order-card:hover { box-shadow: 0 6px 18px rgba(0, 0, 0, 0.10); }
.order-card:active { transform: scale(0.99); }
.order-card-phone { border-left-color: #dc9814; }
.order-card-whatsapp { border-left-color: #25D366; }
.order-card-icon {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.order-card-phone .order-card-icon { background: #fdf1dd; color: #dc9814; }
.order-card-whatsapp .order-card-icon { background: #e7f9ee; color: #1faa52; }
.order-card-icon svg { width: 26px; height: 26px; fill: currentColor; }
.order-card-body {
    display: flex;
    flex-direction: column;
    min-width: 0;
    line-height: 1.25;
}
.order-card-label {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #666;
}
.order-card-number {
    font-size: 1.35rem;
    font-weight: 700;
    color: #1a1a1a;
    white-space: nowrap; /* telefon numarası tek satırda kalsın */
}
.order-card-sub {
    font-size: 0.78rem;
    color: #999;
}
/* Çok dar ekranlarda (≤360px) numara taşmasın */
@media (max-width: 360px) {
    .order-card { gap: 11px; padding: 12px 13px; }
    .order-card-icon { width: 44px; height: 44px; }
    .order-card-icon svg { width: 23px; height: 23px; }
    .order-card-number { font-size: 1.2rem; }
}

/* ============================================
   3D. MOBILE STICKY BUTTONS
   ============================================ */
.mobile-sticky-buttons {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: #fff;
    box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
    padding: 8px;
    gap: 8px;
}
.mobile-sticky-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 8px;
    text-decoration: none;
    color: #fff;
    transition: all 0.2s ease;
}
.mobile-sticky-call {
    background: #dc9814;
}
.mobile-sticky-call:hover,
.mobile-sticky-call:active {
    background: #c58812;
    color: #fff;
}
.mobile-sticky-whatsapp {
    background: #25D366;
}
.mobile-sticky-whatsapp:hover,
.mobile-sticky-whatsapp:active {
    background: #1da851;
    color: #fff;
}
.mobile-sticky-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}
.mobile-sticky-text {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}
.mobile-sticky-title {
    font-weight: 600;
    font-size: 0.9rem;
}
.mobile-sticky-subtitle {
    font-size: 0.75rem;
    opacity: 0.9;
}
@media (max-width: 768px) {
    .mobile-sticky-buttons {
        display: flex;
        transform: translateY(110%); /* başta ekranın altında gizli */
        transition: transform 0.3s ease;
    }
    .mobile-sticky-buttons.visible {
        transform: translateY(0); /* inline sipariş butonları ekrandan çıkınca kayarak gelir */
    }
    body.single-product {
        padding-bottom: 80px;
    }
}

/* ============================================
   4. TECH SPECS TABLE
   ============================================ */
.tech-table {
    width: 100%;
    border-collapse: collapse;
    font-size: clamp(0.875rem, 0.8115rem + 0.2033vw, 0.9375rem);
    margin: 0 auto;
}
.tech-table th,
.tech-table td {
    border-bottom: 1px solid #eee;
    padding: 0.75rem 0;
    text-align: left;
}
.tech-table tr:first-child th,
.tech-table tr:first-child td {
    padding-top: 0;
}
.tech-table tr:last-child th,
.tech-table tr:last-child td {
    border-bottom: none;
}
.tech-table th {
    color: #111;
    min-width: 150px;
    font-weight: 600;
}
.tech-table td {
    text-align: right;
    color: #444;
}
.tech-table .oem-link {
    color: #444;
    text-decoration: none;
    transition: color 0.2s;
}
.tech-table .oem-link:hover {
    color: #111;
    text-decoration: underline;
}
.tech-table .vehicle-link {
    color: #444;
    text-decoration: none;
    transition: color 0.2s;
}
.tech-table .vehicle-link:hover {
    color: #0f834d;
    text-decoration: underline;
}

/* ============================================
   6. CROSS SELL NOTE
   ============================================ */
.cross-sell-note {
    margin: 1rem 0;
    padding: 1rem;
    border: 1px dashed #0f834d;
    background: #f0faf5;
    border-radius: 4px;
    font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem);
    color: #333;
}
.cross-sell-note a {
    color: #0f834d;
    text-decoration: underline;
    text-underline-offset: 2px;
    font-weight: 600;
}
.cross-sell-note a:hover {
    color: #111;
}

/* ============================================
   8. STOCK & PRICE STYLES
   ============================================ */
.product p.stock.in-stock {
    color: #0f834d;
    font-weight: 600;
    font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem);
}
.single-product .summary .price {
    font-size: clamp(1.75rem, 1.4rem + 1.2vw, 2.5rem);
    font-weight: 700;
    color: #9b1c31;
    margin: 0.75rem 0;
}
.single-product .summary .price del {
    font-size: 0.7em;
    color: #999;
    font-weight: 400;
    text-decoration: line-through;
}
.single-product .summary .price ins {
    text-decoration: none;
    color: #9b1c31;
    background: none;
}
.single-product .summary .price .kdv-note {
    font-size: 0.45em;
    font-weight: 400;
    color: #666;
    margin-left: 0.5em;
    vertical-align: middle;
}
/* İlgili ürünlerde KDV notunu gizle */
.related.products .kdv-note,
.up-sells .kdv-note,
.cross-sells .kdv-note {
    display: none;
}
/* Yapışkan sepete-ekle çubuğunda KDV notunu gizle
   (dar çubukta "TLKDV Dahil" bitişik görünüyordu; ana fiyatta zaten var) */
.shoptimizer-sticky-add-to-cart .kdv-note {
    display: none;
}

/* ============================================
   19. VIN BOX
   ============================================ */
.of-vin-box {
    margin: 20px 0;
}
.of-vin-card {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 20px;
}
.of-vin-head {
    font-size: 1rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 5px;
}
.of-vin-sub {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 15px;
}
.of-vin-inputs {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.of-vin-input {
    width: 100%;
    padding: 12px 15px;
    font-size: 1rem;
    font-family: monospace;
    text-transform: uppercase;
    border: 2px solid #ddd;
    border-radius: 6px;
    transition: border-color 0.2s;
}
.of-vin-input:focus {
    outline: none;
    border-color: #25D366;
}
.of-vin-btn-wa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #25D366 !important;
    color: #fff !important;
    padding: 12px 20px !important;
    border-radius: 6px !important;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s;
}
.of-vin-btn-wa:hover {
    background: #1da851 !important;
    color: #fff !important;
}
.of-vin-info {
    margin-top: 12px;
    font-size: 0.8rem;
    color: #888;
    text-align: center;
}

/* ============================================
   21. VPF - VEHICLE PARTS FINDER
   Parça Bulucu Arama Formu (Tema Uyumlu)
   ============================================ */

/* Ana Wrapper - Arka plan */
.woo_vpf_filter_wrapper,
.widget-woo-vpf-filter,
form.woo-vpf-filter-horizontal,
form.woo-vpf-filter-vertical {
    background-color: #f5f5f5 !important;
    padding: 1.25rem !important;
    border-radius: 6px !important;
    margin: 1rem 0 !important;
    border: 1px solid #e2e2e2 !important;
}

/* Başlık - Tema tipografisi */
.woo_vpf_filter_title,
h2.woo_vpf_filter_title {
    font-size: clamp(1rem, 0.9rem + 0.3vw, 1.125rem) !important;
    font-weight: 600 !important;
    margin: 0 0 1rem 0 !important;
    color: #111 !important;
}

/* Select kutuları - Tema form stilleri */
.widget-woo-vpf-filter select,
.woo-vpf-field select {
    padding: 0 40px 0 0.7em !important;
    border: 1px solid #d2d6dc !important;
    border-radius: 0.3rem !important;
    background-color: #fff !important;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,0.05) !important;
    transition: all 0.2s ease !important;
    height: 40px !important;
    font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem) !important;
    color: #333 !important;
    cursor: pointer !important;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23888' d='m1408,704q0,26 -19,45l-448,448q-19,19 -45,19t-45,-19l-448,-448q-19,-19 -19,-45t19,-45t45,-19l896,0q26,0 45,19t19,45z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: calc(100% - 12px) 12px !important;
    background-size: 15px 15px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.widget-woo-vpf-filter select:hover,
.woo-vpf-field select:hover {
    border-color: #999 !important;
}

.widget-woo-vpf-filter select:focus,
.woo-vpf-field select:focus {
    border-color: #999 !important;
    outline: none !important;
    box-shadow: none !important;
}

.widget-woo-vpf-filter select:disabled,
.woo-vpf-field select:disabled {
    background-color: #f5f5f5 !important;
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}

/* Ara butonu - Tema buton stilleri */
.widget-woo-vpf-filter input[type="submit"],
.woo-vpf-field-submit input[type="submit"] {
    background-color: #0f834d !important;
    color: #fff !important;
    border: none !important;
    padding: 0 1.5em !important;
    border-radius: 0.3rem !important;
    font-weight: 600 !important;
    font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    height: 40px !important;
    line-height: 40px !important;
    text-transform: none !important;
}

.widget-woo-vpf-filter input[type="submit"]:hover,
.woo-vpf-field-submit input[type="submit"]:hover {
    background-color: #0a6b3f !important;
}

.widget-woo-vpf-filter input[type="submit"]:active,
.woo-vpf-field-submit input[type="submit"]:active {
    background-color: #085530 !important;
}

/* Mobil Uyumluluk */
@media (max-width: 768px) {
    .woo-vpf-field {
        width: 100% !important;
        margin-bottom: 0.75rem !important;
    }

    .widget-woo-vpf-filter input[type="submit"],
    .woo-vpf-field-submit input[type="submit"] {
        width: 100% !important;
    }
}

/* ============================================
   22. SHIPPING INFO BOX
   Kargo sınıfına göre dinamik teslimat bilgisi
   ============================================ */
.shipping-info-box {
    display: flex;
    align-items: flex-start; /* çok satırlı metinde ikon ilk satıra hizalı */
    gap: 10px;
    width: fit-content;  /* kutu metin kadar genişlesin, sağda boşluk kalmasın */
    max-width: 100%;     /* ama kapsayıcıyı asla aşmasın */
    box-sizing: border-box;
    padding: 12px 16px;
    border-radius: 6px;
    margin: 1rem 0;
    font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem);
    font-weight: 600;
    line-height: 1.5;
}
.shipping-info-icon {
    font-size: 1.25em;
    line-height: 1.4; /* metinle aynı hizada dursun */
    flex-shrink: 0;
}
.shipping-info-text {
    color: #333;
    min-width: 0;            /* flex taşmasını engelle */
    overflow-wrap: anywhere; /* uzun içerik kutudan taşmasın */
}
.shipping-info-text strong {
    font-weight: 700;
}
/* Kargo ücreti — teslimat metninin altında ayrı satır */
.shipping-info-cost {
    display: block;
    margin-top: 6px;
    padding-top: 6px;
    border-top: 1px dashed rgba(0, 0, 0, 0.12);
    color: #333;
}
.shipping-info-cost strong {
    font-weight: 700;
}

/* Kendi Stok — Yeşil */
.shipping-box--kendi-stok {
    background-color: #f0faf5;
    border: 1px solid #b7eb8f;
}
.shipping-box--kendi-stok .shipping-info-text strong {
    color: #0f834d;
}

/* Bursa Depo — Turuncu */
.shipping-box--bursa-depo {
    background-color: #fff7e6;
    border: 1px solid #ffd591;
}
.shipping-box--bursa-depo .shipping-info-text strong {
    color: #d46b08;
}

/* Uzak Tedarik — Mavi */
.shipping-box--uzak-tedarik {
    background-color: #e6f7ff;
    border: 1px solid #91d5ff;
}
.shipping-box--uzak-tedarik .shipping-info-text strong {
    color: #0050b3;
}

@media (max-width: 768px) {
    .shipping-info-box {
        padding: 10px 14px;
    }
}

/* Sepet sayfasındaki Gönderim Hedefi yazısını gizle */
.woocommerce-shipping-destination,
.shipping-destination,
.wc-block-components-shipping-address {
    display: none !important;
}

/* Footer iletişim/telefon/çalışma saatleri yazı rengi */
.footer-contact-info,
.footer-contact-phones,
.footer-hours {
    color: #999999 !important;
}
