  @font-face {
  font-family: 'dik-temel-harfler';
  src: url('dik-temel-harfler.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
html, body {
  font-family: 'dik-temel-harfler', sans-serif;
} 

.word, .word .ch {
  font-family: 'dik-temel-harfler', system-ui, -apple-system, sans-serif !important;
  font-weight: 400 !important; /* fontunuz bold içermezse 400 şart */
}

:root{
    --bg:#fff;
    --ink:#111827;
    --muted:#6b7280;
    --btn-bg:#111827; --btn-ink:#fff;
    --pad: clamp(12px, 3vmin, 32px);
    --reveal-ms: 80; /* harf gösterim aralığı */
  }
  html,body{height:100%;margin:0}
  body{
    background:var(--bg); color:var(--ink);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  }
  .wrap{
    min-height: 100svh; /* mobil güvenli */
    display: grid;
    grid-template-rows: 1fr auto;
  }
  /* Kelime alanı */
.stage{
  position: relative;
  padding: var(--pad);
  padding-left: 10px;
  padding-right: 10px;
  display: grid;
  place-items: center;
}

  .word{
    /* Tek satır ve taşmasın */
    white-space: nowrap;
    line-height: 1.05;
    letter-spacing: 0.02em;
    margin: 0;
    /* Otomatik ayarlanan font-size JS ile yazılacak */
  }
  /* Harfler tek tek görünsün */
  .ch{
    opacity: 0;
    transform: translateY(.25em);
    display: inline-block;
    transition: opacity .28s ease, transform .28s ease;
  }
  .ch.show{
    opacity: 1;
    transform: translateY(0);
  }

  /* Alt çubuk */
  .controls{
    padding: var(--pad);
    display:flex; justify-content:center; gap:12px;
  }
  .btn{
    appearance:none; border:0; border-radius:14px;
    padding: 12px 16px; font-weight:700; cursor:pointer;
    background: var(--btn-bg); color: var(--btn-ink);
    display:inline-flex; align-items:center; gap:.6em;
    box-shadow: 0 6px 18px rgba(0,0,0,.12);
  }
  .btn:active{ transform: translateY(1px); }
  .btn .emo{ font-size: 1.2em; line-height: 1; }

  /* Küçük ipucu/metin */
  .hint{ color:var(--muted); font-size:.9rem; text-align:center; margin-top:6px; }

  .stage{
  position: relative;
  z-index: 0;
  overflow: hidden;          /* önemli: sahnedeki içerik footer’ı kapatmasın */
}

/* Kontroller üste çıksın ve tıklamayı alsın */
footer.controls{
  position: sticky;          /* istersen fixed; bottom:0; da yapabilirsin */
  bottom: 0;
  z-index: 1000;             /* sahnenin üstünde */
  pointer-events: auto;
  isolation: isolate;        /* yeni stacking context */
}

/* Her ihtimale karşı: butonların tıklaması kapatılmasın */
footer.controls .btn{
  pointer-events: auto;
}