/* fiksmall mağaza teması */
:root {
    --fm-ana: #f27a1a;
    --fm-ana-koyu: #d9690f;
    --fm-ana-acik: #fff3e8;
    --fm-yesil: #0a9a4a;
    --fm-kirmizi: #e3262b;
    --fm-zemin: #f5f5f7;
    --fm-cizgi: #e6e6e9;
    --fm-yazi: #1f1f24;
    --fm-soluk: #6b6b75;
}

body { background: var(--fm-zemin); color: var(--fm-yazi); font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; }
a { color: inherit; }
.text-fm { color: var(--fm-ana) !important; }
.bg-fm { background: var(--fm-ana) !important; }
.btn-fm { background: var(--fm-ana); color: #fff; border: 0; }
.btn-fm:hover, .btn-fm:focus { background: var(--fm-ana-koyu); color: #fff; }
.btn-outline-fm { border: 1px solid var(--fm-ana); color: var(--fm-ana); background: #fff; }
.btn-outline-fm:hover { background: var(--fm-ana); color: #fff; }
.page-link { color: var(--fm-ana); }
.active > .page-link { background: var(--fm-ana); border-color: var(--fm-ana); }

/* --- Üst şerit ve başlık --- */
.fm-topbar { background: #fff; border-bottom: 1px solid var(--fm-cizgi); font-size: .78rem; color: var(--fm-soluk); }
.fm-topbar a { text-decoration: none; }
.fm-topbar a:hover { color: var(--fm-ana); }
.fm-header { background: #fff; }
.fm-logo { font-weight: 800; font-size: 1.9rem; letter-spacing: -.04em; color: var(--fm-ana); text-decoration: none; line-height: 1; }
.fm-logo span { color: var(--fm-yazi); }
.fm-search { position: relative; }
.fm-search input { border: 2px solid var(--fm-ana); border-radius: 999px; padding: .65rem 3.2rem .65rem 1.2rem; background: #fff; }
.fm-search input:focus { box-shadow: 0 0 0 .2rem rgba(242,122,26,.15); border-color: var(--fm-ana); }
.fm-search button { position: absolute; right: 4px; top: 4px; bottom: 4px; border-radius: 999px; width: 44px; }
.fm-action { display: flex; align-items: center; gap: .5rem; padding: .45rem .9rem; border-radius: 999px; text-decoration: none; color: var(--fm-yazi); border: 1px solid var(--fm-cizgi); background: #fff; white-space: nowrap; font-size: .9rem; }
.fm-action:hover { border-color: var(--fm-ana); color: var(--fm-ana); }
.fm-action.fm-cart { background: var(--fm-ana); color: #fff; border-color: var(--fm-ana); }
.fm-action.fm-cart:hover { background: var(--fm-ana-koyu); color: #fff; }
.fm-cart-badge { background: #fff; color: var(--fm-ana); border-radius: 999px; font-size: .72rem; font-weight: 700; padding: 0 .45rem; }

/* --- Kategori menüsü --- */
.fm-nav { background: #fff; border-top: 1px solid var(--fm-cizgi); border-bottom: 1px solid var(--fm-cizgi); }
.fm-nav .fm-nav-links { overflow-x: auto; scrollbar-width: none; }
.fm-nav .fm-nav-links::-webkit-scrollbar { display: none; }
.fm-nav a.fm-nav-link { display: inline-block; padding: .7rem .8rem; font-size: .85rem; font-weight: 600; text-decoration: none; white-space: nowrap; border-bottom: 2px solid transparent; }
.fm-nav a.fm-nav-link:hover, .fm-nav a.fm-nav-link.active { color: var(--fm-ana); border-bottom-color: var(--fm-ana); }
.fm-allcats { font-weight: 700; font-size: .85rem; padding: .7rem .9rem; border: 0; background: transparent; white-space: nowrap; }
.fm-allcats:hover { color: var(--fm-ana); }
.fm-mega { width: min(900px, 95vw); padding: 1rem 1.2rem; border: 0; box-shadow: 0 1rem 2.5rem rgba(0,0,0,.12); border-radius: .75rem; }
.fm-mega .fm-mega-title { font-weight: 700; font-size: .85rem; text-decoration: none; display: block; margin-bottom: .3rem; }
.fm-mega .fm-mega-title:hover { color: var(--fm-ana); }
.fm-mega .fm-mega-sub { display: block; font-size: .8rem; color: var(--fm-soluk); text-decoration: none; padding: .1rem 0; }
.fm-mega .fm-mega-sub:hover { color: var(--fm-ana); }
.fm-deal-link { color: var(--fm-kirmizi) !important; }

/* --- Kampanya bannerları --- */
.campaign-banner { box-shadow: 0 2px 10px rgba(0,0,0,.05); }
.campaign-banner .campaign-deco { position: absolute; inset: 0; background:
    radial-gradient(circle at 85% 30%, rgba(255,255,255,.22) 0 18%, transparent 18.5%),
    radial-gradient(circle at 95% 85%, rgba(255,255,255,.14) 0 26%, transparent 26.5%),
    radial-gradient(circle at 70% 110%, rgba(255,255,255,.10) 0 22%, transparent 22.5%); }
.campaign-banner:hover { filter: brightness(1.03); }
.fm-hero .carousel-indicators [data-bs-target] { width: 9px; height: 9px; border-radius: 50%; }
.fm-hero .carousel-control-prev, .fm-hero .carousel-control-next { width: 7%; }

/* --- Bölümler --- */
.fm-section { background: #fff; border-radius: .9rem; padding: 1.1rem 1.1rem 1.2rem; margin-bottom: 1.25rem; box-shadow: 0 1px 3px rgba(0,0,0,.03); }
.fm-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: .9rem; gap: .5rem; }
.fm-section-head h2 { font-size: 1.15rem; font-weight: 800; margin: 0; }
.fm-section-head a { font-size: .85rem; font-weight: 600; color: var(--fm-ana); text-decoration: none; white-space: nowrap; }
.fm-section.fm-deals { background: linear-gradient(180deg, var(--fm-ana-acik), #fff 140px); }

/* Yatay kaydırmalı ürün şeridi */
.fm-rail { position: relative; }
.fm-rail-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 4 * .75rem) / 5); gap: .75rem; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; padding-bottom: 2px; }
.fm-rail-track::-webkit-scrollbar { display: none; }
.fm-rail-track > * { scroll-snap-align: start; min-width: 0; }
.fm-rail-btn { position: absolute; top: 38%; z-index: 2; width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--fm-cizgi); background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,.12); display: flex; align-items: center; justify-content: center; }
.fm-rail-btn:hover { color: var(--fm-ana); }
.fm-rail-btn.prev { left: -12px; } .fm-rail-btn.next { right: -12px; }
@media (max-width: 1199.98px) { .fm-rail-track { grid-auto-columns: calc((100% - 3 * .75rem) / 4); } }
@media (max-width: 991.98px)  { .fm-rail-track { grid-auto-columns: calc((100% - 2 * .75rem) / 3); } .fm-rail-btn { display: none; } }
@media (max-width: 575.98px)  { .fm-rail-track { grid-auto-columns: 46%; } }

/* --- Ürün kartı --- */
.fm-card { background: #fff; border: 1px solid var(--fm-cizgi); border-radius: .75rem; overflow: hidden; height: 100%; display: flex; flex-direction: column; transition: box-shadow .15s, border-color .15s; }
.fm-card:hover { box-shadow: 0 .5rem 1.4rem rgba(0,0,0,.10); border-color: transparent; }
.fm-card a.fm-card-link { text-decoration: none; color: inherit; display: flex; flex-direction: column; flex-grow: 1; }
.fm-card-img { position: relative; aspect-ratio: 1 / 1; background: #fff; display: flex; align-items: center; justify-content: center; }
.fm-card-img img { width: 100%; height: 100%; object-fit: contain; padding: .4rem; }
.fm-card-img .fm-noimg { font-size: 2.5rem; color: #c6c6cc; }
.fm-badge { position: absolute; font-size: .68rem; font-weight: 700; padding: .2rem .5rem; border-radius: 999px; line-height: 1.3; }
.fm-badge-discount { top: .5rem; left: .5rem; background: var(--fm-kirmizi); color: #fff; }
.fm-badge-ship { bottom: .5rem; left: .5rem; background: #e7f6ee; color: var(--fm-yesil); }
.fm-badge-low { top: .5rem; right: .5rem; background: #fff4d6; color: #9a6a00; }
.fm-badge-out { top: .5rem; right: .5rem; background: #2b2b30; color: #fff; }
.fm-card-body { padding: .6rem .75rem .4rem; display: flex; flex-direction: column; flex-grow: 1; }
.fm-card-name { font-size: .84rem; line-height: 1.3; height: 2.6em; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; margin-bottom: .45rem; }
.fm-card-name b { font-weight: 700; }
.fm-old { font-size: .78rem; color: var(--fm-soluk); text-decoration: line-through; }
.fm-price { font-size: 1.08rem; font-weight: 800; color: var(--fm-yazi); }
.fm-card:hover .fm-price { color: var(--fm-ana); }
.fm-card-foot { padding: 0 .75rem .75rem; }
.fm-card-foot .btn { font-size: .8rem; font-weight: 600; border-radius: 999px; }

/* --- Kategori vitrini --- */
.fm-catgrid { display: grid; grid-template-columns: repeat(6, 1fr); gap: .75rem; }
@media (max-width: 991.98px) { .fm-catgrid { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 575.98px) { .fm-catgrid { grid-template-columns: repeat(3, 1fr); } }
.fm-cat { text-decoration: none; text-align: center; display: block; }
.fm-cat-img { aspect-ratio: 1/1; border-radius: 50%; background: var(--fm-zemin); border: 2px solid transparent; overflow: hidden; display: flex; align-items: center; justify-content: center; transition: border-color .15s; margin: 0 auto .4rem; max-width: 120px; }
.fm-cat-img img { width: 82%; height: 82%; object-fit: contain; }
.fm-cat:hover .fm-cat-img { border-color: var(--fm-ana); }
.fm-cat-name { font-size: .78rem; font-weight: 600; line-height: 1.25; }

/* --- Sepet kampanyası kutusu --- */
.fm-promo { background: #fff; border-radius: .9rem; padding: 1rem; height: 100%; box-shadow: 0 1px 3px rgba(0,0,0,.03); }
.fm-promo-item { display: flex; gap: .6rem; align-items: center; padding: .55rem 0; border-bottom: 1px dashed var(--fm-cizgi); font-size: .84rem; }
.fm-promo-item:last-child { border-bottom: 0; }
.fm-promo-icon { width: 36px; height: 36px; border-radius: 50%; background: var(--fm-ana-acik); color: var(--fm-ana); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.fm-progress { height: 8px; border-radius: 999px; background: #eee; overflow: hidden; }
.fm-progress > div { height: 100%; background: linear-gradient(90deg, var(--fm-ana), #ffb26b); }

/* --- Güven şeridi ve alt bilgi --- */
.fm-trust { background: #fff; border-top: 1px solid var(--fm-cizgi); }
.fm-trust-item { display: flex; align-items: center; gap: .7rem; font-size: .85rem; }
.fm-trust-item i { font-size: 1.6rem; color: var(--fm-ana); }
.fm-footer { background: #1f1f24; color: #b9b9c2; font-size: .85rem; }
.fm-footer h6 { color: #fff; font-weight: 700; margin-bottom: .8rem; }
.fm-footer a { color: #b9b9c2; text-decoration: none; display: block; padding: .15rem 0; }
.fm-footer a:hover { color: #fff; }
.fm-footer .fm-copy { border-top: 1px solid #34343b; color: #8a8a94; font-size: .78rem; }

/* Ürün sayfası */
.fm-pd-campaign { background: var(--fm-ana-acik); border-radius: .6rem; padding: .7rem .9rem; font-size: .85rem; }
.breadcrumb a { text-decoration: none; }

/* Mobil düzenlemeler */
@media (max-width: 575.98px) {
    .fm-hero .campaign-banner { height: 210px !important; }
    .campaign-banner .display-6 { font-size: 1.45rem; }
    .campaign-banner .fs-5 { font-size: .95rem !important; }
    .fm-logo { font-size: 1.6rem; }
}
.fm-rail.no-scroll .fm-rail-btn { display: none; }

/* --- Yıldızlar ve değerlendirme --- */
.fm-stars { color: #f5a623; letter-spacing: 1px; white-space: nowrap; }
.fm-star-color { color: #f5a623; }
.fm-star-bg { background: #f5a623; }
.fm-rate { display: inline-flex; flex-direction: row-reverse; gap: 4px; }
.fm-rate input { position: absolute; opacity: 0; pointer-events: none; }
.fm-rate label { font-size: 1.75rem; color: #d6d6dc; cursor: pointer; line-height: 1; transition: color .1s; }
.fm-rate label:hover, .fm-rate label:hover ~ label,
.fm-rate input:checked ~ label { color: #f5a623; }
.fm-rate input:focus-visible + label { outline: 2px solid var(--fm-ana); border-radius: 4px; }
.fm-card-rating { font-size: .75rem; color: var(--fm-soluk); display: flex; align-items: center; gap: 4px; margin-top: 2px; }

/* WhatsApp iletişim */
.fm-btn-wa { background: #25d366; color: #fff; border: 0; font-weight: 600; }
.fm-btn-wa:hover, .fm-btn-wa:focus { background: #1ebe5b; color: #fff; }
/* Sağ alttaki sabit WhatsApp düğmesi: sayfa kaydırılınca ürünlerin / "Tümünü gör" bağlantılarının üstüne binmesin diye
   küçük yuvarlak; "Bize yazın" yazısı yalnızca fareyle üzerine gelince açılır. Sayfa sonunda altbilgi düğmenin altında kalmaz. */
.fm-wa-float { position: fixed; right: 14px; bottom: 14px; z-index: 1040; display: inline-flex; align-items: center; gap: .45rem; background: #25d366; color: #fff; border-radius: 999px; padding: .6rem; font-weight: 700; text-decoration: none; box-shadow: 0 4px 12px rgba(0,0,0,.18); opacity: .92; transition: opacity .15s, transform .15s; }
.fm-wa-float i { font-size: 1.5rem; line-height: 1; }
.fm-wa-float span { display: none !important; }
.fm-wa-float:hover, .fm-wa-float:focus-visible { background: #1ebe5b; color: #fff; opacity: 1; transform: translateY(-1px); }
@media (hover: hover) and (min-width: 768px) {
    .fm-wa-float:hover, .fm-wa-float:focus-visible { padding: .6rem .95rem; }
    .fm-wa-float:hover span, .fm-wa-float:focus-visible span { display: inline !important; }
}
body:has(.fm-wa-float) .fm-copy { padding-bottom: 64px; }

/* Ürün sayfası: montaj önerisi (montaj bölgesindeki müşterilere) */
.fm-montaj { background: var(--fm-ana-acik, #fff1e3); border: 1px solid var(--fm-cizgi, #ffe3cc); max-width: 460px; }
@media print { .fm-wa-float { display: none; } }

/* =====================================================================
   PARLAK TEMA — daha canlı renkler, parlak düğmeler, belirgin gölgeler.
   Eski (mat) görünüme dönmek için bu bölümün tamamını silmek yeterli.
   ===================================================================== */
:root {
    --fm-ana: #ff7a00;
    --fm-ana-koyu: #f05a00;
    --fm-ana-acik: #fff1e3;
    --fm-yesil: #00a650;
    --fm-kirmizi: #ff2d3d;
    --fm-zemin: #fff8f2;
    --fm-cizgi: #ffe3cc;
    --fm-parlak: linear-gradient(135deg, #ff9a1f 0%, #ff6a00 100%);
    --fm-golge: 0 4px 16px rgba(255, 106, 0, .14);
}
body { background: linear-gradient(180deg, #fff3e8 0, #fffaf6 420px, #fffaf6 100%); }

/* Üst şerit: turuncu degrade, beyaz yazı */
.fm-topbar { background: var(--fm-parlak); color: #fff; border-bottom: 0; }
.fm-topbar .text-fm, .fm-topbar a, .fm-topbar a.text-fm { color: #fff !important; }
.fm-topbar a:hover { color: #fff3c4 !important; }
.fm-header { box-shadow: 0 2px 12px rgba(255, 106, 0, .08); position: relative; z-index: 3; }
.fm-logo { background: var(--fm-parlak); -webkit-background-clip: text; background-clip: text; color: transparent; }
.fm-logo span { color: var(--fm-yazi); -webkit-text-fill-color: var(--fm-yazi); }

/* Düğmeler: parlak degrade + hafif yükselme */
.btn-fm, .fm-action.fm-cart { background: var(--fm-parlak); box-shadow: 0 4px 12px rgba(255, 106, 0, .30); transition: transform .12s, box-shadow .12s, filter .12s; }
.btn-fm:hover, .btn-fm:focus, .fm-action.fm-cart:hover { background: var(--fm-parlak); filter: brightness(1.07); box-shadow: 0 6px 18px rgba(255, 106, 0, .40); transform: translateY(-1px); color: #fff; }
.btn-outline-fm { border-width: 2px; font-weight: 600; }
.fm-search input { border-color: #ff8a1f; box-shadow: 0 3px 14px rgba(255, 106, 0, .10); }
.fm-action { box-shadow: 0 2px 6px rgba(0, 0, 0, .04); }

/* Menü: aktif bağlantı turuncu zeminli */
.fm-nav { border-top: 0; border-bottom: 0; box-shadow: 0 3px 10px rgba(255, 106, 0, .06); }
.fm-nav a.fm-nav-link:hover, .fm-nav a.fm-nav-link.active { background: var(--fm-ana-acik); border-bottom: 3px solid var(--fm-ana); }

/* Bölümler ve başlıklar */
.fm-section, .fm-promo { box-shadow: var(--fm-golge); border: 1px solid #ffeadb; }
.fm-section-head h2 { display: flex; align-items: center; gap: .5rem; }
.fm-section-head h2::before { content: ""; width: 5px; height: 1.15em; border-radius: 3px; background: var(--fm-parlak); flex-shrink: 0; }
.fm-section.fm-deals { background: linear-gradient(180deg, #ffe2c7, #fff 160px); }

/* Ürün kartı: canlı fotoğraf, parlak fiyat, yükselen kart */
.fm-card { border-color: #ffeadb; box-shadow: 0 2px 8px rgba(0, 0, 0, .04); transition: box-shadow .15s, transform .15s, border-color .15s; }
.fm-card:hover { transform: translateY(-3px); box-shadow: 0 .8rem 1.8rem rgba(255, 106, 0, .18); border-color: #ffc89a; }
.fm-card-img img, .fm-cat-img img { filter: saturate(1.12) contrast(1.04); }
.fm-price { color: var(--fm-ana-koyu); }
.fm-badge-discount { background: linear-gradient(135deg, #ff4d4d, #ff1f5a); box-shadow: 0 2px 6px rgba(255, 31, 90, .35); }
.fm-badge-ship { background: #d9f8e6; color: #008a42; }
.fm-cat-img { background: #fff; box-shadow: 0 3px 10px rgba(255, 106, 0, .12); }

/* Kampanya bannerları daha canlı */
.campaign-banner { box-shadow: 0 6px 20px rgba(0, 0, 0, .10); filter: saturate(1.12); }
.campaign-banner:hover { filter: saturate(1.15) brightness(1.04); }

/* Güven şeridi ve ilerleme çubuğu */
.fm-trust { background: #fff; border-top: 0; box-shadow: 0 -3px 12px rgba(255, 106, 0, .06); }
.fm-trust-item i { background: var(--fm-parlak); -webkit-background-clip: text; background-clip: text; color: transparent; }
.fm-progress > div { background: linear-gradient(90deg, #ff6a00, #ffc04d); }
.fm-pd-campaign { border: 1px solid #ffd2ad; }

/* Slogan (logonun altında) */
.fm-brand { line-height: 1; }
.fm-brand .fm-logo { display: block; }
.fm-slogan { display: block; margin-top: .3rem; font-size: .72rem; font-weight: 700; letter-spacing: .04em; color: var(--fm-ana-koyu); white-space: nowrap; }
@media (max-width: 575.98px) { .fm-slogan { font-size: .64rem; } }

/* Kampanya kutularında yazı taşmasın */
.campaign-clamp-1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.campaign-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Markalar sayfası ve marka süzgeci */
.fm-brand-tile { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .2rem; height: 92px; padding: .75rem; background: #fff; border: 1px solid #eee; border-radius: 12px; text-align: center; text-decoration: none; color: inherit; transition: border-color .15s, box-shadow .15s, transform .15s; }
.fm-brand-tile:hover { border-color: var(--fm-ana); box-shadow: 0 6px 16px rgba(240, 90, 0, .12); transform: translateY(-2px); }
.fm-brand-tile-name { font-weight: 800; font-size: 1rem; line-height: 1.15; }
.fm-brand-tile-count { font-size: .75rem; color: #6c757d; }
.fm-brand-tile-logo { max-width: 100%; height: 40px; object-fit: contain; margin: 6px 0 2px; }
.fm-brand-tile--logo { height: 124px; }
.fm-product-brand-logo { display: block; height: 36px; max-width: 130px; object-fit: contain; margin-top: 4px; }
.fm-brand-head-logo { height: 56px; max-width: 160px; object-fit: contain; background: #fff; border: 1px solid #eee; border-radius: 10px; padding: 6px 10px; }
.fm-brand-hit { background: var(--fm-ana-acik); border: 1px solid #ffd7bd; border-radius: 12px; padding: .75rem 1rem; color: inherit; }
.fm-brand-hit:hover { border-color: var(--fm-ana); }
.fm-brand-hit .bi-patch-check-fill { color: var(--fm-ana); }
.fm-brand-filter { overflow-x: auto; }
