/*
Theme Name:  Bal Kuyumculuk
Theme URI:   https://balkuyumculuktr.com
Description: Bal Kuyumculuk özel teması
Author:      Bal Kuyumculuk
Version:     2.7.0
Text Domain: bal-tema
*/

/* =============================================
   DEĞİŞKENLER & RESET
   ============================================= */
:root {
    --altin: #D4AF37;
    --koyu:  #0a0a0a;
    --gri:   #1a1a1a;
    --bal:   #FFB300;
}

*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    height: 100%;
}

body {
    background: var(--koyu);
    color: white;
    font-family: 'Georgia', serif;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* WordPress kendi wrapper div'lerini ekler — onları da flex column yapıyoruz */
body > div,
body > .wp-site-blocks,
body > .entry-content,
body > .wp-block-group {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
}

/* =============================================
   HEADER
   ============================================= */
header {
    background: #000;
    border-bottom: 1px solid #2a2a2a;
    padding: 0 30px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: sticky;
    top: 0;
    z-index: 99990;
    flex-shrink: 0;
}

body.admin-bar header { top: 32px; }

@media screen and (max-width: 782px) {
    body.admin-bar header { top: 46px; }
}

.header-logo {
    height: 52px !important;
    width: auto !important;
    max-width: 200px !important;
    cursor: pointer;
    display: block;
    object-fit: contain;
}

.lang-btns {
    display: flex;
    gap: 8px;
}

.lang-btn {
    background: none;
    border: 1px solid var(--altin);
    color: var(--altin);
    padding: 5px 14px;
    cursor: pointer;
    border-radius: 4px;
    font-weight: bold;
    font-size: 12px;
    transition: 0.3s;
}

.lang-btn:hover,
.lang-active {
    background: var(--altin);
    color: black;
}

/* =============================================
   NAV
   ============================================= */
nav {
    background: #000;
    padding: 12px 30px;
    border-bottom: 1px solid var(--altin);
    overflow-x: auto;
    white-space: nowrap;
    text-align: center;
    flex-shrink: 0;
}

nav a {
    color: var(--altin);
    text-decoration: none;
    margin: 0 14px;
    font-size: 13px;
    font-weight: bold;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: color 0.2s;
}

nav a:hover {
    color: white;
}

/* =============================================
   HERO — min-height JS tarafından hesaplanır
   ============================================= */
.hero {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid #1c1c1c;
    padding: 40px 30px;
    flex: 1 0 auto;
}

#slogan {
    color: var(--altin);
    font-style: italic;
    font-size: 24px;
    letter-spacing: 0.5px;
    transition: opacity 0.5s;
}

/* =============================================
   ADMIN PANEL
   ============================================= */
#admin-panel {
    background: var(--gri);
    border: 2px solid var(--altin);
    margin: 15px auto;
    padding: 25px;
    max-width: 400px;
    border-radius: 15px;
    display: none;
}

.admin-input {
    width: 100%;
    padding: 11px;
    margin: 7px 0;
    border-radius: 8px;
    border: 1px solid #444;
    background: #000;
    color: #fff;
    font-size: 15px;
}

.admin-btn {
    background: var(--altin);
    color: black;
    padding: 14px;
    border: none;
    width: 100%;
    font-weight: bold;
    cursor: pointer;
    border-radius: 8px;
    font-size: 15px;
    margin-top: 8px;
}

.admin-cikis-btn {
    background: transparent;
    color: #888;
    padding: 10px;
    border: 1px solid #444;
    width: 100%;
    font-weight: bold;
    cursor: pointer;
    border-radius: 8px;
    font-size: 13px;
    margin-top: 10px;
    letter-spacing: 1px;
    transition: all 0.2s;
}

.admin-cikis-btn:hover {
    background: #1a1a1a;
    color: #cc3333;
    border-color: #cc3333;
}

/* =============================================
   GALERİ
   ============================================= */
.galeri {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
    gap: 22px;
    padding: 30px;
    align-content: start;
    flex: 1 0 auto;
}

.urun-kart {
    background: #111;
    border: 1px solid #222;
    padding: 14px;
    border-radius: 14px;
    transition: 0.4s;
}

.urun-kart:hover {
    border-color: var(--altin);
    transform: translateY(-5px);
}

.img-zoom {
    width: 100%;
    height: 270px;
    overflow: hidden;
    border-radius: 9px;
    cursor: zoom-in;
}

.img-zoom img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.6s;
}

.img-zoom:hover img {
    transform: scale(1.5);
}

.delete-btn {
    background: #cc3333;
    color: white;
    border: none;
    padding: 9px;
    margin-top: 12px;
    cursor: pointer;
    width: 100%;
    border-radius: 7px;
    font-weight: bold;
    display: none;
}

/* =============================================
   FOOTER
   ============================================= */
footer {
    background: #050505;
    border-top: 2px solid var(--altin);
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0;
    flex-shrink: 0;
    margin-top: auto;
}

.footer-col {
    padding: 35px 30px;
    border-right: 1px solid #1a1a1a;
}

.footer-col:nth-child(3) {
    border-right: none;
}

.footer-col h4 {
    color: var(--altin);
    font-size: 13px;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #2a2a2a;
}

.addr-text {
    color: #bbb;
    font-size: 15px;
    line-height: 2.0;
}

.addr-text strong {
    color: white;
}

.social-links {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.social-link {
    display: flex;
    align-items: center;
    gap: 13px;
    text-decoration: none;
    color: #bbb;
    padding: 10px 14px;
    border-radius: 9px;
    border: 1px solid #1e1e1e;
    transition: 0.3s;
    font-size: 14px;
}

.social-link:hover {
    border-color: var(--altin);
    color: var(--altin);
    background: rgba(212, 175, 55, 0.05);
}

.social-icon {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
}

.map-btn {
    display: block;
    background: var(--altin);
    color: black;
    text-align: center;
    padding: 13px 20px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 8px;
    margin-top: 18px;
    font-size: 14px;
    letter-spacing: 0.5px;
    transition: 0.3s;
    width: 100%;
}

.map-btn:hover {
    background: var(--bal);
}

.footer-bottom {
    grid-column: 1 / -1;
    text-align: center;
    padding: 18px;
    border-top: 1px solid #1a1a1a;
    color: #555;
    font-size: 13px;
}


/* =============================================
   WORDPRESS WRAPPER DÜZELTME
   wp:html bloğu .wp-block-html div'ine sarılır —
   bunu da full-height flex column yapıyoruz
   ============================================= */
.wp-block-html,
.wp-block-group__inner-container,
.entry-content > div,
.post-content > div {
    display: flex;
    flex-direction: column;
    flex: 1 0 auto;
    min-height: 100vh;
}

/* Direk body çocuğu olan her div (WP tema wrapper) */
body > div:not(#wpadminbar):not(.wp-block-html) {
    display: flex;
    flex-direction: column;
    flex: 1 0 auto;
}

/* =============================================
   RESPONSIVE
   ============================================= */
@media (max-width: 900px) {
    footer {
        grid-template-columns: 1fr 1fr;
    }
    .footer-col:nth-child(2) {
        border-right: none;
    }
    .footer-col:nth-child(3) {
        border-top: 1px solid #1a1a1a;
        grid-column: 1 / -1;
    }
}

@media (max-width: 600px) {
    footer {
        grid-template-columns: 1fr;
    }
    .footer-col {
        border-right: none;
        border-bottom: 1px solid #1a1a1a;
    }
    .footer-col:nth-child(3) {
        grid-column: auto;
        border-top: none;
    }
    nav a {
        margin: 0 10px;
        font-size: 11px;
        letter-spacing: 1px;
    }
}
