/**
 * NECOX K1 — Footer Components
 *
 * Frontend CSS for the site footer (columns, widget areas, bottom bar,
 * copyright and social row).
 *
 * @file       footer.css
 * @component  K1
 * @since      v4.1.0
 */

/* ── Footer Genel ── */
.necox-footer { margin-top: 40px; }
.necox-footer a { color: inherit; text-decoration: none; }
.necox-footer a:hover { opacity: 0.8; }

/* ── Widget Alani ── */
.necox-footer__widgets { padding: 40px 0; }
.necox-footer__widgets-grid { display: grid; gap: 30px; }
.necox-footer__col .widget { background: transparent; padding: 0; margin-bottom: 20px; }
.necox-footer__col .widget-title { font-size: 15px; font-weight: 600; color: var(--necox-footer-text); border-bottom: 2px solid rgba(255,255,255,0.15); padding-bottom: 10px; margin-bottom: 14px; }

/* ── Alt Satir ── */
.necox-footer__bottom { padding: 16px 0; }
.necox-footer__bottom-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.necox-footer__bottom-left,
.necox-footer__bottom-center,
.necox-footer__bottom-right { display: flex; align-items: center; gap: 12px; }
.necox-footer__bottom-center { justify-content: center; flex: 1; }
.necox-footer__bottom-right { margin-left: auto; }

/* Footer Nav */
.necox-hf-footer-nav { list-style: none; display: flex; gap: 16px; margin: 0; padding: 0; }
.necox-hf-footer-nav a { font-size: 13px; color: inherit; }
.necox-hf-footer-nav a:hover { color: var(--necox-footer-link-hover, #ffffff); }

/* ── Footer Logo ── */
.necox-footer .necox-hf-logo__dark { display: none; }
html.dark-mode .necox-footer .necox-hf-logo__light { display: none; }
html.dark-mode .necox-footer .necox-hf-logo__dark { display: inline-block; }

/* Transparent + Glass footer — koyu arka plan, acik logo (dark) goster */
.necox-footer.is-transparent .necox-hf-logo__light,
.necox-footer.is-glass .necox-hf-logo__light { display: none; }
.necox-footer.is-transparent .necox-hf-logo__dark,
.necox-footer.is-glass .necox-hf-logo__dark { display: inline-block; }

/* Transparent/Glass + dark mode — ters cevir */
html.dark-mode .necox-footer.is-transparent .necox-hf-logo__light,
html.dark-mode .necox-footer.is-glass .necox-hf-logo__light { display: inline-block; }
html.dark-mode .necox-footer.is-transparent .necox-hf-logo__dark,
html.dark-mode .necox-footer.is-glass .necox-hf-logo__dark { display: none; }

/* Koyu arka planli footer — acik logo goster */
.necox-footer.is-dark-bg .necox-hf-logo__light { display: none; }
.necox-footer.is-dark-bg .necox-hf-logo__dark { display: inline-block; }
/* Koyu arka plan + dark mode — ters cevir */
html.dark-mode .necox-footer.is-dark-bg .necox-hf-logo__light { display: inline-block; }
html.dark-mode .necox-footer.is-dark-bg .necox-hf-logo__dark { display: none; }

/* Copyright */
.necox-hf-copyright {
    font-size: var(--necox-copyright-size, 13px);
    font-family: var(--necox-copyright-font, inherit);
    font-weight: var(--necox-copyright-weight, 400);
    color: var(--necox-copyright-color, inherit);
}
.necox-hf-copyright a { color: var(--necox-copyright-link, inherit); text-decoration: none; }
.necox-hf-copyright a:hover { color: var(--necox-copyright-link-hover, var(--necox-primary, #00a591)); }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   Sayfa Basi (Yukari Cik) Butonu — v7.7.2 tam tesekkullu
   Cascade: K2 override (--necox-to-top-*) > genel buton (--necox-btn-*) > fallback.
   Konum: 4 varyant class (pos-right-bottom, pos-left-bottom, pos-right-middle, pos-left-middle).
   Modifier'lar: --transparent, --transparent-hover, --has-gradient, --has-gradient-hover,
                 --glass, --glass-hover, --lift, --shadow-{none|sm|md|lg|xl}, --shadow-h-{...}.
   Renkler bos birakildiginda K2 buton variable'larina (--necox-btn-bg vb.) duser.
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.necox-to-top {
    position: fixed;
    width: var(--necox-to-top-size, 40px);
    height: var(--necox-to-top-size, 40px);
    /* v7.7.3 fix: --necox-btn-bg cascade'i ATLA — buton sisteminde transparent
       (glass efekti default acik) olabilir, Yukari Cik o zaman gorunmez kaliyor.
       Direkt --necox-primary'ye dus, K2 override (--necox-to-top-bg) yine onceliklidir. */
    background: var(--necox-to-top-bg, var(--necox-primary, #2A3254));
    color: var(--necox-to-top-color, var(--necox-primary-fg, #fff));
    border: var(--necox-to-top-border-width, 0) solid var(--necox-to-top-border-color, transparent);
    border-radius: var(--necox-to-top-radius, 50%);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, opacity 0.3s, visibility 0.3s;
    /* v7.13.4 — Z-index 99 -> 1100. Leaflet harita controls (z-index 1000) ustunde,
       canli aktivite bubble (9000) altinda. Onceden harita kismina gelince
       butonu Leaflet control panel'i eziyordu. */
    z-index: 1100;
    cursor: pointer;
    padding: 0;
}
.necox-to-top svg {
    width: 55%;
    height: 55%;
    stroke: currentColor;
    fill: none;
}
.necox-to-top.is-visible { opacity: 1; visibility: visible; }

/* ── Konumlar (4 varyant) ── */
.necox-to-top--pos-right-bottom { right: var(--necox-to-top-offset-s, 24px); bottom: var(--necox-to-top-offset-b, 48px); }
.necox-to-top--pos-left-bottom  { left:  var(--necox-to-top-offset-s, 24px); bottom: var(--necox-to-top-offset-b, 48px); }
.necox-to-top--pos-right-middle { right: var(--necox-to-top-offset-s, 24px); top: 50%; transform: translateY(-50%); }
.necox-to-top--pos-left-middle  { left:  var(--necox-to-top-offset-s, 24px); top: 50%; transform: translateY(-50%); }

/* ── Transparent ── */
.necox-to-top--transparent { background: transparent !important; }
.necox-to-top--transparent-hover:hover { background: transparent !important; }

/* ── Hover (renk) ── */
.necox-to-top:hover {
    /* v7.7.3 fix: --necox-btn-hover-bg cascade'i ATLA (transparent olabilir).
       K2 override > primary-hover > primary > fallback. */
    background: var(--necox-to-top-hover-bg, var(--necox-primary-hover, var(--necox-primary, #2A3254)));
    color: var(--necox-to-top-hover-color, var(--necox-primary-fg, #fff));
    border-color: var(--necox-to-top-hover-border-color, var(--necox-to-top-border-color, transparent));
}

/* ── Lift efekti (hover'da yukseltme) ── */
.necox-to-top--lift.necox-to-top--pos-right-bottom:hover,
.necox-to-top--lift.necox-to-top--pos-left-bottom:hover { transform: translateY(-3px); }
.necox-to-top--lift.necox-to-top--pos-right-middle:hover,
.necox-to-top--lift.necox-to-top--pos-left-middle:hover { transform: translate(-3px, -50%); }
.necox-to-top--lift.necox-to-top--pos-right-middle:hover { transform: translate(3px, -50%); } /* sag-orta saga gitsin */

/* ── Shadow varyantlari (normal) ── */
.necox-to-top--shadow-none { box-shadow: none; }
.necox-to-top--shadow-sm   { box-shadow: 0 1px 3px rgba(0,0,0,0.10); }
.necox-to-top--shadow-md   { box-shadow: 0 2px 8px rgba(0,0,0,0.15); }
.necox-to-top--shadow-lg   { box-shadow: 0 4px 16px rgba(0,0,0,0.20); }
.necox-to-top--shadow-xl   { box-shadow: 0 8px 24px rgba(0,0,0,0.25); }

/* ── Shadow varyantlari (hover) ── */
.necox-to-top--shadow-h-none:hover { box-shadow: none; }
.necox-to-top--shadow-h-sm:hover   { box-shadow: 0 1px 3px rgba(0,0,0,0.12); }
.necox-to-top--shadow-h-md:hover   { box-shadow: 0 2px 10px rgba(0,0,0,0.18); }
.necox-to-top--shadow-h-lg:hover   { box-shadow: 0 6px 20px rgba(0,0,0,0.24); }
.necox-to-top--shadow-h-xl:hover   { box-shadow: 0 12px 32px rgba(0,0,0,0.30); }

/* ── Responsive ── */
@media (max-width: 768px) {
    .necox-footer__widgets-grid { grid-template-columns: 1fr 1fr !important; }
    .necox-footer__bottom-inner { flex-direction: column; text-align: center; }
    .necox-footer__bottom-right { margin-left: 0; }
    .necox-hf-footer-nav { justify-content: center; flex-wrap: wrap; }
}

@media (max-width: 480px) {
    .necox-footer__widgets-grid { grid-template-columns: 1fr !important; }
}
