/* tekinhoca.github.io — Ortak Stil (common.css) */
/* Bu dosyayı tüm sayfalar <link> ile çağırır */

:root {
  --ink:           #12100e;
  --cream:         #f7f2e8;
  --aged:          #ece4cc;
  --sepia:         #7a5c1e;
  --gold:          #c8960c;
  --rust:          #9b3510;
  --muted:         #5a4a30;
  --shadow:        rgba(18,16,14,0.18);
  --card-elevated: #12100e;   /* koyu kartlar — gündüzde --ink ile aynı */
  /* Sabit değerler — her iki modda da değişmez */
  --surface-dark:  #12100e;   /* header, footer, nav arka planı */
  --on-dark:       #f7f2e8;   /* koyu yüzey üzerindeki metin */
}

/* ── GECE MODU ── */
[data-theme="dark"] {
  --ink:           #e8d9b8;
  --cream:         #16130e;
  --aged:          #2a2210;
  --sepia:         #dcc070;
  --muted:         #c0a878;
  --shadow:        rgba(0,0,0,0.45);
  --card-elevated: #2e2412;
  /* --surface-dark ve --on-dark kasıtlı olarak değiştirilmiyor */
}

/* Gece modunda noise opacity biraz artar */
[data-theme="dark"] body {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.09'/%3E%3C/svg%3E");
}

/* Gece modunda footer logosu biraz daha belirgin */
[data-theme="dark"] .footer-logo { opacity: 0.88; }

/* Yumuşak geçiş — performansı zorlamadan sadece gerekli property'ler */
body,
.game-thumb,
.sertifika-kart,
.curiosity,
.page-link,
.accordion-header,
.activity-table tr { transition: background 0.3s, color 0.2s, border-color 0.3s; }

/* Header, footer, nav geçiş YAPMIYOR — her zaman koyu kalır */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }

body {
  background: var(--cream);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.055'/%3E%3C/svg%3E");
  color: var(--ink);
  font-family: 'Source Serif 4', Georgia, serif;
  min-height: 100vh;
}

/* ── HEADER — sabit koyu, moddan etkilenmez ── */
header {
  background: var(--surface-dark);
  position: relative; overflow: hidden;
}
header::after {
  content: ''; position: absolute; inset: 0;
  background: repeating-linear-gradient(-55deg, transparent, transparent 10px, rgba(200,150,12,0.04) 10px, rgba(200,150,12,0.04) 11px);
  pointer-events: none;
}
.header-inner {
  max-width: 960px; margin: 0 auto;
  padding: 52px 24px 44px;
  text-align: center; position: relative; z-index: 1;
}
.logo-band { display: flex; align-items: center; justify-content: center; gap: 16px; margin-bottom: 20px; }
.logo-line  { flex: 1; max-width: 140px; height: 1px; background: linear-gradient(90deg, transparent, var(--gold)); }
.logo-line.r{ background: linear-gradient(90deg, var(--gold), transparent); }
.logo-diamond { width: 9px; height: 9px; background: var(--gold); transform: rotate(45deg); flex-shrink: 0; }

/* Başlık — sabit açık renk, header her zaman koyu */
h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2rem, 5vw, 3.2rem);
  font-weight: 700; color: var(--on-dark);
  letter-spacing: 0.04em; line-height: 1.15;
}
h1 span { color: var(--gold); font-style: italic; }
.header-sub {
  margin-top: 12px; font-size: 0.82rem;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: rgba(247,242,232,0.5);
}

/* ── NAV — sabit koyu, moddan etkilenmez ── */
#site-nav {
  background: var(--rust);
  border-top: 2px solid var(--gold);
  border-bottom: 2px solid var(--gold);
  position: sticky; top: 0; z-index: 100;
  box-shadow: 0 3px 12px rgba(0,0,0,0.3);
}
.nav-inner {
  max-width: 960px; margin: 0 auto;
  display: flex; flex-wrap: wrap; justify-content: center;
}
#site-nav a {
  font-family: 'Source Serif 4', serif;
  font-size: 0.75rem; font-weight: 600;
  letter-spacing: 0.13em; text-transform: uppercase;
  color: var(--on-dark); text-decoration: none;
  padding: 13px 16px;
  transition: background 0.2s, color 0.2s;
  position: relative;
}
#site-nav a::after {
  content: ''; position: absolute;
  bottom: 0; left: 50%; right: 50%;
  height: 2px; background: var(--gold);
  transition: left 0.2s, right 0.2s;
}
#site-nav a:hover { background: rgba(200,150,12,0.2); color: var(--gold); }
#site-nav a:hover::after { left: 12%; right: 12%; }
#site-nav a.active { background: rgba(200,150,12,0.28); color: var(--gold); }

/* Hamburger (mobil) */
#burger {
  display: none;
  background: none; border: none; cursor: pointer;
  padding: 13px 16px; color: var(--on-dark);
  font-family: 'Source Serif 4', serif;
  font-size: 0.75rem; font-weight: 600;
  letter-spacing: 0.13em; text-transform: uppercase;
  line-height: 1;
}
@media (max-width: 640px) {
  #burger { display: block; margin-left: auto; }
  .nav-inner {
    display: none; flex-direction: column;
    width: 100%; background: var(--rust);
  }
  .nav-inner.open { display: flex; }
  #site-nav a { padding: 12px 20px; border-top: 1px solid rgba(200,150,12,0.15); }
}

/* ── MAIN ── */
main { margin: 0 auto; padding: 52px 20px 72px; }

/* ── ALINTI KUTUSU (koyu, index tarzı) — metin sabit açık ── */
.quote-box {
  background: linear-gradient(135deg, var(--card-elevated), #241a08);
  border: 1px solid var(--gold); border-radius: 4px;
  padding: 24px 32px; text-align: center; margin-bottom: 40px;
}
.quote-text {
  font-family: 'Playfair Display', serif;
  font-size: clamp(1rem, 2.5vw, 1.2rem);
  font-style: italic; color: var(--on-dark);
  line-height: 1.75; margin-bottom: 10px;
}
.quote-attr { font-size: 0.78rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--gold); }

/* ── SAYFA ALINTI KUTUSU (açık, iç sayfalar) ── */
.intro { text-align: center; margin-bottom: 48px; padding-bottom: 36px; border-bottom: 1px solid rgba(122,92,30,0.25); }
.intro-quote {
  font-family: 'Playfair Display', serif;
  font-size: clamp(1rem, 2.5vw, 1.2rem); font-style: italic;
  color: var(--sepia); line-height: 1.75; max-width: 580px; margin: 0 auto 10px;
}
.intro-attr { font-size: 0.8rem; color: var(--rust); letter-spacing: 0.1em; text-transform: uppercase; }

/* ── SECTION TITLE ── */
.sec-title { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.sec-title h2 { font-family: 'Playfair Display', serif; font-size: 1.25rem; font-weight: 700; color: var(--rust); white-space: nowrap; }
.sec-line { flex: 1; height: 1px; background: linear-gradient(90deg, var(--rust), transparent); }

/* ── FOOTER — sabit koyu, moddan etkilenmez ── */
footer { background: var(--surface-dark); border-top: 2px solid var(--gold); padding: 24px 20px; text-align: center; }
footer .footer-logo { height: 48px; opacity: 0.75; margin-bottom: 10px; display: block; margin-left: auto; margin-right: auto; }
footer p { font-size: 0.76rem; color: rgba(247,242,232,0.4); letter-spacing: 0.08em; line-height: 1.8; }
footer a { color: rgba(200,150,12,0.7); text-decoration: none; }
footer a:hover { color: var(--gold); }

/* ── BAŞA DÖN ── */
#back-to-top {
  position: fixed; bottom: 28px; right: 24px;
  width: 42px; height: 42px; background: var(--rust);
  border: 1px solid var(--gold); border-radius: 50%;
  color: var(--on-dark); font-size: 1.1rem; line-height: 42px;
  text-align: center; cursor: pointer;
  opacity: 0; pointer-events: none;
  transition: opacity 0.3s, transform 0.2s;
  z-index: 999; box-shadow: 0 3px 10px var(--shadow);
}
#back-to-top.visible { opacity: 1; pointer-events: auto; }
#back-to-top:hover { transform: translateY(-3px); background: #b8400f; }

/* ── TEMA TOGGLE ── */
#theme-toggle {
  position: fixed; bottom: 78px; right: 24px;
  width: 42px; height: 42px; background: var(--rust);
  border: 1px solid var(--gold); border-radius: 50%;
  color: var(--on-dark); font-size: 1rem; line-height: 42px;
  text-align: center; cursor: pointer;
  transition: background 0.2s, transform 0.2s, opacity 0.3s;
  z-index: 999; box-shadow: 0 3px 10px var(--shadow);
  opacity: 0.82;
}
#theme-toggle:hover { transform: translateY(-3px); background: #b8400f; opacity: 1; }

/* ── ANİMASYON ── */
@keyframes fadeUp { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
