/* Deyim Avı web sitesi. Renkler ve yazı tipleri uygulamayla aynı (src/tema.js). */
@font-face { font-family: 'Bricolage'; src: url('fonts/BricolageGrotesque_800ExtraBold.ttf') format('truetype'); font-weight: 800; font-display: swap; }
@font-face { font-family: 'Bricolage'; src: url('fonts/BricolageGrotesque_600SemiBold.ttf') format('truetype'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Figtree'; src: url('fonts/Figtree_400Regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Figtree'; src: url('fonts/Figtree_700Bold.ttf') format('truetype'); font-weight: 700; font-display: swap; }

:root {
  --zemin: #f5efe3; --kart: #fffdf8; --kart-kenar: #e9dfcb; --metin: #1b2a5c; --soluk: #6f6b7d;
  --vurgu: #203f96; --vurgu2: #132a6c; --turkuaz: #14998c; --turkuaz-alt: #0c6f66;
  --safran: #e0a02a; --safran-alt: #a8740f; --kul: #a6a6b6; --kul-alt: #83849a;
  --mercan: #d1472e; --mercan-alt: #a2321e; --altin: #e9b949; --cizgi: #e4d8c2;
  --golge: 0 10px 30px rgba(27, 42, 92, 0.12);
  --desen: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%231b2a5c' stroke-opacity='0.07' stroke-width='1.5'%3E%3Cpath d='M32 14 L36 28 L50 32 L36 36 L32 50 L28 36 L14 32 L28 28 Z'/%3E%3Ccircle cx='32' cy='32' r='4'/%3E%3C/g%3E%3C/svg%3E");
  --desen-acik: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.09' stroke-width='1.5'%3E%3Cpath d='M32 14 L36 28 L50 32 L36 36 L32 50 L28 36 L14 32 L28 28 Z'/%3E%3Ccircle cx='32' cy='32' r='4'/%3E%3C/g%3E%3C/svg%3E");
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root {
    --zemin: #0b1128; --kart: #141d3c; --kart-kenar: #243159; --metin: #eef1fb; --soluk: #9aa5c4;
    --vurgu: #2a4bb0; --vurgu2: #162b72; --cizgi: #26325e; --golge: 0 10px 30px rgba(0, 0, 0, 0.35);
    --desen: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.045' stroke-width='1.5'%3E%3Cpath d='M32 14 L36 28 L50 32 L36 36 L32 50 L28 36 L14 32 L28 28 Z'/%3E%3Ccircle cx='32' cy='32' r='4'/%3E%3C/g%3E%3C/svg%3E");
    color-scheme: dark;
  }
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0; background: var(--zemin) var(--desen); color: var(--metin);
  font: 17px/1.6 'Figtree', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--vurgu); }
@media (prefers-color-scheme: dark) { a { color: #8fb0ff; } }
h1, h2, h3 { font-family: 'Bricolage', 'Figtree', system-ui, sans-serif; line-height: 1.15; margin: 0 0 12px; letter-spacing: -0.01em; }
h1 { font-weight: 800; font-size: clamp(38px, 7vw, 64px); }
h2 { font-weight: 800; font-size: clamp(28px, 4.5vw, 40px); }
h3 { font-weight: 600; font-size: 21px; }
p { margin: 0 0 14px; }
.kap { width: 100%; max-width: 1100px; margin: 0 auto; padding: 0 16px; }
.gizli-baglanti { position: absolute; left: -9999px; }
.gizli-baglanti:focus { left: 16px; top: 12px; z-index: 10; background: var(--kart); padding: 8px 12px; border-radius: 10px; }

/* Ust cubuk */
.ust { position: sticky; top: 0; z-index: 5; background: color-mix(in srgb, var(--zemin) 88%, transparent); backdrop-filter: blur(8px); border-bottom: 1px solid var(--cizgi); }
.ust .kap { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; }
.logo { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--metin); font: 800 22px/1 'Bricolage', sans-serif; }
.logo img { width: 38px; height: 38px; border-radius: 10px; }
.logo span { color: var(--turkuaz); }
.ust nav { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.ust nav a { text-decoration: none; color: var(--metin); font-weight: 700; font-size: 15px; padding: 8px 12px; border-radius: 999px; }
.ust nav a:hover, .ust nav a[aria-current="page"] { background: var(--kart); box-shadow: inset 0 0 0 1px var(--kart-kenar); }
@media (max-width: 560px) { .ust nav a.mobilde-gizle { display: none; } }

/* Kahraman bolumu */
.kahraman { background: linear-gradient(135deg, #203f96, #132a6c) ; color: #fff; position: relative; overflow: hidden; }
.kahraman::before { content: ''; position: absolute; inset: 0; background: var(--desen-acik); pointer-events: none; }
.kahraman .kap { position: relative; display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 40px; align-items: center; padding-top: 56px; padding-bottom: 56px; }
.kahraman h1 span { color: var(--altin); display: block; }
.kahraman .alt { font-size: clamp(18px, 2.2vw, 21px); color: rgba(255, 255, 255, 0.88); max-width: 34em; }
/* Gorselin mavi zemini kahramanin zeminine yumusakca karissin diye kenarlar maskeyle soldurulur */
.kahraman .telefon {
  justify-self: center; width: min(340px, 100%);
  -webkit-mask-image: radial-gradient(ellipse 60% 68% at 50% 40%, #000 72%, transparent 100%);
          mask-image: radial-gradient(ellipse 60% 68% at 50% 40%, #000 72%, transparent 100%);
}
@media (max-width: 820px) { .kahraman .kap { grid-template-columns: 1fr; padding-top: 36px; padding-bottom: 40px; } .kahraman .telefon { width: min(280px, 80%); } }
.dugmeler { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.dugme { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; font: 700 17px/1 'Figtree', sans-serif; padding: 15px 22px; border-radius: 16px; border: 0; cursor: pointer; }
.dugme-ana { background: var(--mercan); color: #fff; box-shadow: 0 4px 0 var(--mercan-alt); }
.dugme-ana[aria-disabled="true"] { cursor: default; }
.dugme-ikinci { background: rgba(255, 255, 255, 0.12); color: #fff; box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, 0.45); }
.dugme small { display: block; font-weight: 400; font-size: 12px; opacity: 0.85; margin-bottom: 3px; }
.dugme svg { width: 22px; height: 22px; flex: none; }

/* Kelime cipleri (oyundaki renkler) */
.cipler { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 4px; }
.cip { font: 700 16px/1 'Figtree', sans-serif; color: #fff; padding: 10px 14px; border-radius: 12px; }
.cip-dogru { background: var(--turkuaz); box-shadow: 0 3px 0 var(--turkuaz-alt); }
.cip-yer { background: var(--safran); box-shadow: 0 3px 0 var(--safran-alt); }
.cip-yok { background: var(--kul); box-shadow: 0 3px 0 var(--kul-alt); }

/* Bolumler */
.bolum { padding: 64px 0; }
.bolum .giris { max-width: 40em; margin-bottom: 28px; color: var(--soluk); font-size: 18px; }
.adimlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; counter-reset: adim; }
.kart { background: var(--kart); border: 1px solid var(--kart-kenar); border-radius: 22px; padding: 24px; box-shadow: var(--golge); }
.adimlar .kart { position: relative; padding-top: 64px; }
.adimlar .kart::before { counter-increment: adim; content: counter(adim); position: absolute; top: 20px; left: 24px; width: 34px; height: 34px; border-radius: 50%; background: var(--vurgu); color: #fff; font: 800 18px/34px 'Bricolage', sans-serif; text-align: center; }
.ozellikler { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.ozellik { display: flex; gap: 14px; align-items: flex-start; }
.ozellik .simge { flex: none; width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; font-size: 24px; background: color-mix(in srgb, var(--vurgu) 12%, transparent); }
.ozellik h3 { font-size: 18px; margin-bottom: 4px; }
.ozellik p { margin: 0; color: var(--soluk); font-size: 16px; }
.galeri { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; max-width: 880px; margin: 0 auto; }
.galeri img { border-radius: 20px; box-shadow: var(--golge); }
@media (max-width: 820px) {
  .galeri { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 8px; }
  .galeri img { width: 62vw; max-width: 260px; flex: none; scroll-snap-align: center; }
}
.ogrenci { background: var(--kart); border-top: 1px solid var(--kart-kenar); border-bottom: 1px solid var(--kart-kenar); }
.ogrenci .kap { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: center; }
@media (max-width: 820px) { .ogrenci .kap { grid-template-columns: 1fr; } }
.liste { margin: 0; padding-left: 20px; }
.liste li { margin-bottom: 8px; }
.sosyal { display: flex; flex-wrap: wrap; gap: 10px; }
.sosyal a { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; font-weight: 700; color: var(--metin); background: var(--kart); border: 1px solid var(--kart-kenar); padding: 10px 16px; border-radius: 999px; }
.sosyal svg { width: 20px; height: 20px; }

/* Metin sayfalari (gizlilik, kosullar, destek) */
.makale { max-width: 760px; margin: 0 auto; padding: 44px 16px 64px; }
.makale .tarih { color: var(--soluk); font-size: 15px; margin-bottom: 26px; }
.makale h2 { font-size: 24px; margin-top: 34px; }
.makale .ozet { background: var(--kart); border: 1px solid var(--kart-kenar); border-left: 5px solid var(--turkuaz); border-radius: 16px; padding: 16px 18px; font-weight: 700; }
.makale details { background: var(--kart); border: 1px solid var(--kart-kenar); border-radius: 16px; padding: 14px 18px; margin-bottom: 12px; }
.makale summary { cursor: pointer; font-weight: 700; }
.makale details p { margin: 10px 0 0; }
.iletisim-kutu { margin-top: 30px; background: var(--kart); border: 1px solid var(--kart-kenar); border-radius: 20px; padding: 22px; box-shadow: var(--golge); }
.ingilizce { margin-top: 40px; padding-top: 20px; border-top: 1px dashed var(--cizgi); color: var(--soluk); font-size: 15px; }

/* Alt bilgi */
.alt-bilgi { border-top: 1px solid var(--cizgi); padding: 28px 0 40px; color: var(--soluk); font-size: 15px; }
.alt-bilgi .kap { display: flex; flex-wrap: wrap; gap: 14px 24px; justify-content: space-between; align-items: center; }
.alt-bilgi nav { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.alt-bilgi a { color: var(--soluk); }
