/* ---------- Responsive — Tüm Ekran Boyutları ----------
   iOS telefon çerçevesi tamamen kaldırıldı. Mobile/tablet'te doğal tam ekran
   uygulama görünümü. Desktop'ta DesktopShell kullanılıyor. */

/* Mobile (< 600px) — sıkışık ekran ayarları */
@media (max-width: 599px) {
  .home-screen {
    padding: 20px 16px 80px;
  }

  .home-title {
    font-size: 28px;
  }

  .game-screen {
    padding: 12px 16px 60px;
  }

  .topbar {
    padding: 8px 0;
  }

  .topbar-title {
    font-size: 20px;
  }

  .meta-row {
    gap: 8px;
  }

  .timer { font-size: 16px; }

  .difficulty {
    margin: 0;
    font-size: 11px;
    padding: 4px 10px;
  }

  /* Settings sheet mobile için tam ekran */
  .settings-sheet {
    max-height: 100vh;
    height: 100vh;
    border-radius: 0;
  }

  .settings-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px 6px;
    padding: 12px 10px 80px;
  }

  .theme-preview-card {
    gap: 4px;
    border-radius: 10px;
  }

  .theme-preview-frame {
    border-radius: 8px;
    padding: 3px;
    border-width: 1px;
  }

  .theme-preview-surface {
    padding: 9%;
  }

  .theme-preview-accent-dot {
    right: 3px;
    bottom: 3px;
    width: 5px;
    height: 5px;
  }

  .theme-preview-meta {
    min-height: 24px;
    padding: 0;
  }

  .theme-preview-name {
    font-size: 8px;
    line-height: 1.05;
  }

  .theme-preview-check {
    font-size: 8px;
  }

  /* Hata toast'ı mobile için üstte */
  .error-toast {
    top: 80px;
    left: 16px;
    right: 16px;
    transform: none;
    max-width: none;
  }
}

/* Çok küçük mobil ekranlar */
@media (max-width: 340px) {
  .home-card {
    grid-template-columns: 80px 1fr;
    gap: 12px;
    padding: 14px;
  }

  .home-card-preview {
    width: 80px;
    height: 80px;
  }

  .home-card-name {
    font-size: 18px;
  }

  .settings-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 6px 4px;
    padding-left: 8px;
    padding-right: 8px;
  }
}

/* Tablet (600px - 1023px) — fullscreen ama içerik max-width ile sınırlı */
@media (min-width: 600px) and (max-width: 1023px) {
  .home-screen {
    padding: 32px 32px 80px;
  }

  .home-title {
    font-size: 36px;
  }

  .game-screen {
    padding: 24px 32px 80px;
  }

  /* Settings tabletlerde 4 sütun */
  .settings-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Touch cihazlarda hover efektlerini kaldır */
@media (hover: none) {
  .home-card:hover { transform: none; }
  .home-game-card:hover { transform: none; }
  .puzzle-tile:hover { transform: none; }
  .ctrl-btn:hover:not(:disabled) { transform: none; }
  .theme-preview-card:hover { transform: none; }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
