/* ===== Genel ===== */
body { min-height: 100vh; }
.card { border: none; border-radius: 1rem; box-shadow: 0 2px 10px rgba(0,0,0,.06); }
.card-header { border-radius: 1rem 1rem 0 0 !important; font-weight: 600; }
.btn { border-radius: .6rem; }
.table { border-radius: .5rem; overflow: hidden; }
.progress { height: 1.4rem; border-radius: 1rem; font-weight: 600; }

/* ===== Veli teması: sade / profesyonel ===== */
.theme-veli { background: #f4f6f9; }
.theme-veli .app-navbar { background: #1e3a5f; }
.theme-veli .app-navbar .nav-link, .theme-veli .app-navbar .navbar-brand,
.theme-veli .app-navbar .navbar-text { color: #dbe4ee; }
.theme-veli .app-navbar .nav-link.active { color: #fff; background: rgba(255,255,255,.15); border-radius: .5rem; }
.theme-veli .app-navbar .nav-link:hover { color: #fff; }

/* ===== Öğrenci teması: renkli / çocuk dostu ===== */
.theme-ogrenci { background: linear-gradient(160deg, #fdf2ff 0%, #eef6ff 50%, #f0fff4 100%); }
.theme-ogrenci .app-navbar { background: linear-gradient(90deg, #7c3aed, #db2777, #f59e0b); }
.theme-ogrenci .app-navbar .nav-link, .theme-ogrenci .app-navbar .navbar-brand,
.theme-ogrenci .app-navbar .navbar-text { color: #fff; }
.theme-ogrenci .app-navbar .nav-link.active { background: rgba(255,255,255,.25); border-radius: 2rem; }
.theme-ogrenci .card { border-radius: 1.3rem; box-shadow: 0 4px 14px rgba(124,58,237,.10); }
.theme-ogrenci h4, .theme-ogrenci h5 { color: #5b21b6; }

/* Program tablosu */
.schedule-cell { min-height: 90px; vertical-align: top; }
.schedule-item { border-radius: .6rem; padding: .3rem .5rem; margin-bottom: .3rem; font-size: .85rem; }

/* Giriş sayfası */
.login-bg { min-height: 100vh; display: flex; align-items: center;
  background: linear-gradient(135deg, #7c3aed 0%, #2563eb 60%, #06b6d4 100%); }
.login-card { max-width: 420px; width: 100%; border-radius: 1.5rem; }

/* PDF görüntüleyici */
#pdfWrap { position: relative; margin: 0 auto; touch-action: none; }
#pdfWrap canvas { position: absolute; top: 0; left: 0; }
#pdfCanvas { position: relative !important; }
#drawCanvas { touch-action: none; cursor: crosshair; }
.tool-btn.active { background: #7c3aed !important; color: #fff !important; }

/* Oyunlar */
.memory-card { width: 70px; height: 70px; font-size: 2rem; display: flex; align-items: center;
  justify-content: center; border-radius: .8rem; cursor: pointer; user-select: none;
  background: #7c3aed; color: transparent; transition: transform .2s; }
.memory-card.open { background: #fff; color: inherit; border: 2px solid #7c3aed; }
.memory-card.matched { background: #d1fae5; color: inherit; border: 2px solid #10b981; cursor: default; }
.schulte-cell { width: 60px; height: 60px; font-size: 1.4rem; font-weight: 700; display: flex;
  align-items: center; justify-content: center; border: 2px solid #cbd5e1; border-radius: .6rem;
  cursor: pointer; user-select: none; background: #fff; }
.schulte-cell.done { background: #d1fae5; border-color: #10b981; cursor: default; }
.big-emoji { font-size: 3rem; }
@media (max-width: 576px) {
  .memory-card { width: 56px; height: 56px; font-size: 1.5rem; }
  .schulte-cell { width: 48px; height: 48px; font-size: 1.1rem; }
}
