/* ═══════════════════════════════════════════════════════════════
   Master Rehber — turk_islam_master_rehber görsel sistemi
   Playfair + Plus Jakarta · kartlar · ÖSYM kutuları · sekmeler
   ═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;0,800;1,400&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap');

:root {
  --mr-bg: #f0ebe3;
  --mr-paper: #faf6f0;
  --mr-sidebar: #1e293b;
  --mr-gold: #c2410c;
  --mr-gold-light: #fef3c7;
  --mr-blue: #1d4ed8;
  --mr-red: #b91c1c;
  --mr-green: #047857;
  --mr-purple: #6d28d9;
  --mr-card: #faf6f0;
  --mr-text: #1e293b;
  --mr-muted: #475569;
  --mr-border: #d6d3d1;
  --mr-border-soft: #e7e5e4;
  --mr-peach: #fff7ed;
  --mr-mint: #ecfdf5;
  --mr-sky: #e0f2fe;
  --mr-rose: #ffe4e6;
  --mr-lavender: #ede9fe;
}

.mr-root {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  background: var(--mr-bg);
  color: var(--mr-text);
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}

.mr-root.bg-pattern {
  background-image:
    linear-gradient(135deg, rgba(251, 191, 36, 0.04) 0%, transparent 50%),
    radial-gradient(rgba(37, 99, 235, 0.04) 1px, transparent 1px);
  background-size: 100% 100%, 22px 22px;
  background-color: var(--mr-bg);
}

.mr-serif { font-family: 'Playfair Display', Georgia, serif; }

.mr-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: #a8a29e var(--mr-bg);
}
.mr-scroll::-webkit-scrollbar { width: 8px; }
.mr-scroll::-webkit-scrollbar-thumb {
  background: #a8a29e;
  border-radius: 4px;
}
.mr-scroll::-webkit-scrollbar-thumb:hover { background: #64637a; }

.mr-inner { padding: 1.25rem 1.5rem 3rem; }

/* ── Üst başlık ── */
.mr-hero {
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--mr-border-soft);
}
.mr-hero-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.75rem;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.2;
  margin: 0 0 0.5rem;
}
.mr-hero-sub {
  font-size: 0.875rem;
  color: var(--mr-muted);
  margin: 0 0 0.75rem;
  line-height: 1.6;
}
.mr-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.mr-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 700;
  border: 1px solid;
}
.mr-badge-banko { background: #fef3c7; color: #b45309; border-color: #fcd34d; }
.mr-badge-q { background: var(--mr-sky); color: #1d4ed8; border-color: #bfdbfe; }

/* ── Sekme navigasyonu ── */
.mr-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 1.25rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #e2e8f0;
}
.mr-nav-item {
  padding: 8px 14px;
  border-radius: 10px;
  cursor: pointer;
  font-weight: 600;
  font-size: 0.85rem;
  color: #334155;
  background: var(--mr-paper);
  border: 1px solid var(--mr-border);
  transition: all 0.2s;
  white-space: nowrap;
}
.mr-nav-item:hover {
  color: var(--mr-blue);
  border-color: #bfdbfe;
  background: var(--mr-sky);
  transform: translateY(-1px);
}
.mr-nav-item.active {
  background: var(--mr-gold);
  color: #fff;
  border-color: var(--mr-gold);
  box-shadow: 0 4px 6px -1px rgba(217, 119, 6, 0.35);
}
.mr-nav-item.mr-nav-osym {
  color: #dc2626;
  border-color: #fecaca;
}
.mr-nav-item.mr-nav-osym.active {
  background: #dc2626;
  border-color: #dc2626;
  color: #fff;
}

/* ── Sekme içerikleri ── */
.mr-tab-panel { display: none; }
.mr-tab-panel.active {
  display: block;
  animation: mrFadeIn 0.4s ease-out forwards;
}
@keyframes mrFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

.mr-section-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.65rem;
  font-weight: 800;
  color: #0f172a;
  margin: 0 0 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid var(--mr-border-soft);
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.mr-intro {
  font-size: 0.95rem;
  color: #475569;
  line-height: 1.7;
  margin-bottom: 1rem;
}

/* ── Data kartları ── */
.mr-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1rem;
  margin-bottom: 1.25rem;
}
.mr-grid-2 { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.mr-grid-wide { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }

.mr-data-card {
  background: var(--mr-card);
  border-radius: 16px;
  padding: 1.25rem;
  box-shadow: 0 4px 20px rgba(0,0,0,0.03);
  border: 1px solid var(--mr-border-soft);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.mr-data-card:hover {
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
  transform: translateY(-2px);
  border-color: #cbd5e1;
}
.mr-data-card.accent-blue { border-top: 4px solid var(--mr-blue); }
.mr-data-card.accent-red { border-top: 4px solid var(--mr-red); }
.mr-data-card.accent-green { border-top: 4px solid var(--mr-green); }
.mr-data-card.accent-gold { border-top: 4px solid var(--mr-gold); }
.mr-data-card.accent-purple { border-left: 8px solid #7c3aed; }
.mr-data-card.accent-slate {
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
  color: #e2e8f0;
  border: none;
}
.mr-data-card.accent-slate .mr-card-title { color: #fbbf24; }
.mr-data-card.accent-slate .mr-card-body { color: #cbd5e1; }

.mr-card-badge {
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 12px;
  border-bottom-left-radius: 12px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.mr-card-title {
  font-weight: 700;
  font-size: 1.05rem;
  color: #0f172a;
  margin: 0 0 0.5rem;
}
.mr-card-title.mr-serif-lg {
  font-family: 'Playfair Display', serif;
  font-size: 1.35rem;
}
.mr-card-body {
  font-size: 0.9375rem;
  color: #1e293b;
  line-height: 1.75;
}
.mr-card-body p { margin: 0 0 0.5rem; }
.mr-card-body ul {
  margin: 0.5rem 0 0;
  padding-left: 1.1rem;
  list-style: disc;
}
.mr-card-body li { margin-bottom: 0.35rem; }

/* ── ÖSYM kutusu ── */
.mr-osym-box {
  background: linear-gradient(to right, #fff1f2, #ffe4e6);
  border-left: 5px solid var(--mr-red);
  padding: 1rem 1.25rem;
  border-radius: 0 12px 12px 0;
  box-shadow: 0 2px 8px rgba(220, 38, 38, 0.08);
  margin-bottom: 1rem;
  font-size: 0.88rem;
  line-height: 1.65;
  color: #7f1d1d;
}
.mr-osym-box strong { color: #991b1b; }
.mr-osym-box::before {
  content: "⚠️ ÖSYM TUZAĞI";
  display: block;
  font-size: 0.65rem;
  font-weight: 800;
  color: var(--mr-red);
  margin-bottom: 0.4rem;
  letter-spacing: 1px;
}

/* ── Altın not ── */
.mr-study-note {
  background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
  border-left: 5px solid #f59e0b;
  padding: 1rem 1.2rem;
  border-radius: 4px 16px 16px 4px;
  box-shadow: 0 4px 12px rgba(245, 158, 11, 0.12);
  margin-bottom: 1rem;
  font-size: 0.88rem;
  line-height: 1.6;
  color: #78350f;
}
.mr-study-note::before {
  content: "⭐ Altın Not";
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 800;
  color: #b45309;
  margin-bottom: 0.4rem;
  background: #fde68a;
  padding: 2px 10px;
  border-radius: 6px;
}

/* ── Hafıza şifreleri ── */
.mr-sifre-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}
.mr-sifre {
  background: var(--mr-paper);
  border: 1px solid var(--mr-border);
  border-radius: 14px;
  padding: 0.85rem;
  text-align: center;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}
.mr-sifre-title {
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
  color: var(--mr-gold);
  margin-bottom: 4px;
}
.mr-sifre-text {
  font-weight: 700;
  font-size: 0.9rem;
  color: #0f172a;
}
.mr-sifre-note {
  font-size: 0.7rem;
  color: var(--mr-muted);
  margin-top: 4px;
}

/* ── Tag sistemi ── */
.mr-tag {
  display: inline-flex;
  align-items: center;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 600;
  margin: 2px;
}
.mr-tag-blue { background: #dbeafe; color: #1e40af; }
.mr-tag-gold { background: #fef3c7; color: #92400e; }
.mr-tag-green { background: #d1fae5; color: #065f46; }
.mr-tag-gray { background: #f1f5f9; color: #475569; }
.mr-tag-green { background: rgba(16, 185, 129, 0.18); color: #6ee7b7; }
.mr-tag-gray { background: rgba(31, 31, 39, 0.9); color: #c7c4d7; }

/* ── Vurgu (referans highlight) ── */
.mr-highlight {
  background: linear-gradient(104deg, transparent 0%, transparent 5%, rgba(251, 191, 36, 0.35) 6%, rgba(251, 191, 36, 0.35) 94%, transparent 95%, transparent 100%);
  padding: 0 4px;
  border-radius: 3px;
  font-weight: 700;
  color: #fde68a;
}

/* ── Harita alt konuları ── */
.mr-subtopic {
  background: var(--mr-card);
  border: 1px solid var(--mr-border-soft);
  border-radius: 14px;
  padding: 1rem 1.15rem;
  margin-bottom: 1rem;
}
.mr-subtopic-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--mr-sidebar);
  margin-bottom: 0.5rem;
}
.mr-map-btns { display: flex; flex-wrap: wrap; gap: 8px; margin: 0.5rem 0; }
.mr-map-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 8px;
  font-size: 0.75rem;
  font-weight: 700;
  border: none;
  cursor: pointer;
  color: #fff;
  transition: transform 0.15s, opacity 0.15s;
}
.mr-map-btn:hover { transform: scale(1.03); opacity: 0.92; }
.mr-map-btn-red { background: #dc2626; }
.mr-map-btn-orange { background: #ea580c; }
.mr-map-btn-green { background: #059669; }
.mr-map-btn-blue { background: #2563eb; }
.mr-map-btn-cyan { background: #0891b2; }
.mr-map-btn-amber { background: #d97706; }
.mr-map-btn-purple { background: #7c3aed; }
.mr-map-btn-teal { background: #0d9488; }

/* ── PDF özet ── */
.mr-pdf-block {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 1.25rem;
  font-size: 0.88rem;
  line-height: 1.75;
  white-space: pre-line;
  color: #334155;
}

/* ── Uyarı kutuları ── */
.mr-alert {
  padding: 0.85rem 1rem;
  border-radius: 10px;
  border-left: 4px solid;
  margin-bottom: 0.75rem;
  font-size: 0.85rem;
  line-height: 1.6;
}
.mr-alert-uyari { background: #fff7ed; border-color: #ea580c; }
.mr-alert-dikkat { background: #fef2f2; border-color: #dc2626; }
.mr-alert-not { background: #eff6ff; border-color: #2563eb; }
.mr-alert-title {
  font-size: 0.65rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 4px;
  color: #57534e;
}

/* ── Hocadan anlatım ── */
.mr-teacher {
  background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
  border: 1px solid #fcd34d;
  border-left: 5px solid var(--mr-gold);
  border-radius: 12px;
  padding: 1rem 1.2rem;
  margin-bottom: 1rem;
}
.mr-teacher-label {
  font-size: 0.65rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #92400e;
  margin-bottom: 0.5rem;
}
.mr-teacher-text { font-size: 0.9rem; line-height: 1.7; color: #3f3830; }

/* ── Tamamlama checkbox ── */
.mr-check-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 1rem;
  padding: 0.5rem 0;
}
.mr-check {
  appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #cbd5e1;
  border-radius: 6px;
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
}
.mr-check:checked {
  background: var(--mr-green);
  border-color: var(--mr-green);
}
.mr-check:checked::after {
  content: '✓';
  position: absolute;
  color: #fff;
  font-size: 14px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-weight: bold;
}
.mr-check-label {
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--mr-muted);
  cursor: pointer;
}

/* ── Boş / yükleme ── */
.mr-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 240px;
  color: var(--mr-muted);
  text-align: center;
  padding: 2rem;
}
.mr-loading { padding: 2rem; text-align: center; color: var(--mr-muted); }

/* ── Embed (tam rehber HTML) ── */
.mr-embed .tab-content { display: none; }
.mr-embed .tab-content.active { display: block; animation: mrFadeIn 0.4s ease-out; }
.mr-embed .hide { display: none !important; }

/* Ultra embed (Tarih / Coğrafya derin notlar) */
.mr-embed .data-card {
  background: #fff;
  border-radius: 16px;
  padding: 1.25rem;
  box-shadow: 0 4px 20px rgba(0,0,0,0.04);
  border: 1px solid #e2e8f0;
  margin-bottom: 1rem;
}
.mr-embed .section-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.5rem;
  font-weight: 800;
  color: #0f172a;
  margin: 0 0 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #e2e8f0;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.mr-embed .osym-box {
  background: linear-gradient(to right, #fff1f2, #ffe4e6);
  border-left: 5px solid #dc2626;
  padding: 1rem 1.25rem;
  border-radius: 0 12px 12px 0;
  margin-bottom: 1rem;
  font-size: 0.85rem;
  line-height: 1.6;
  color: #44403c;
}
.mr-embed .study-note-card {
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 12px;
  padding: 0.75rem 1rem;
  font-size: 0.8rem;
  line-height: 1.55;
}

/* ═══════════════════════════════════════════════════════════════
   Notes v2 — iç açıcı soft defter · renkli emoji kartlar
   ═══════════════════════════════════════════════════════════════ */

.mr-v2-root { background: #f5f0e8 !important; }
.nv2-inner { padding: 1rem 1.25rem 2.5rem; }

.nv2-hero {
  position: relative;
  margin-bottom: 1rem;
  padding: 1.25rem 1.15rem;
  border-radius: 20px;
  background: linear-gradient(135deg, #fffef9 0%, #fef3c7 45%, #eff6ff 100%);
  border: 1px solid #e7e0d4;
  box-shadow: 0 8px 24px rgba(42, 38, 34, 0.06);
  overflow: hidden;
}
.nv2-hero-glow {
  position: absolute;
  top: -40px; right: -40px;
  width: 140px; height: 140px;
  background: radial-gradient(circle, rgba(251,191,36,0.25), transparent 70%);
  pointer-events: none;
}
.nv2-hero-subject {
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #78716c;
  margin: 0 0 0.35rem;
}
.nv2-hero-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.55rem;
  font-weight: 800;
  color: #1c1917;
  line-height: 1.2;
  margin: 0 0 0.65rem;
}
.nv2-badges { gap: 6px; }

.nv2-kanka-row {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 4px 2px 12px;
  margin-bottom: 0.75rem;
  scrollbar-width: thin;
}
.nv2-kanka {
  flex: 0 0 auto;
  max-width: 220px;
  display: flex;
  gap: 8px;
  align-items: flex-start;
  padding: 0.55rem 0.7rem;
  border-radius: 14px;
  font-size: 0.72rem;
  line-height: 1.45;
  border: 1px solid;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.nv2-kanka-emoji { font-size: 1rem; flex-shrink: 0; }
.nv2-kanka-text { color: #44403c; }
.nv2-kanka--gold { background: #fffbeb; border-color: #fde68a; }
.nv2-kanka--blue { background: #eff6ff; border-color: #bfdbfe; }
.nv2-kanka--green { background: #f0fdf4; border-color: #bbf7d0; }
.nv2-kanka--rose { background: #fff1f2; border-color: #fecdd3; }
.nv2-kanka--purple { background: #f5f3ff; border-color: #ddd6fe; }

.nv2-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 1rem;
  padding: 0.5rem;
  background: rgba(255,255,255,0.6);
  border-radius: 16px;
  border: 1px solid #e7e0d4;
}
.nv2-nav-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  border-radius: 12px;
  border: 1px solid #e7e0d4;
  background: #fffef9;
  font-size: 0.72rem;
  font-weight: 700;
  color: #57534e;
  cursor: pointer;
  transition: all 0.18s ease;
}
.nv2-nav-item:hover { transform: translateY(-1px); box-shadow: 0 4px 10px rgba(0,0,0,0.06); }
.nv2-nav-emoji { font-size: 1rem; line-height: 1; }
.nv2-nav--blue.active { background: #3b82f6; border-color: #2563eb; color: #fff; }
.nv2-nav--green.active { background: #22c55e; border-color: #16a34a; color: #fff; }
.nv2-nav--amber.active { background: #f59e0b; border-color: #d97706; color: #fff; }
.nv2-nav--purple.active { background: #8b5cf6; border-color: #7c3aed; color: #fff; }
.nv2-nav--red.active { background: #ef4444; border-color: #dc2626; color: #fff; }
.nv2-nav--slate.active { background: #64748b; border-color: #475569; color: #fff; }
.nv2-nav--teal.active { background: #14b8a6; border-color: #0d9488; color: #fff; }
.nv2-nav--pdf { border-style: dashed; }

.nv2-tab-intro {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 0.75rem 1rem;
  border-radius: 14px;
  font-size: 0.82rem;
  line-height: 1.6;
  margin-bottom: 1rem;
  border: 1px solid;
}
.nv2-tab-intro--blue { background: #eff6ff; border-color: #bfdbfe; color: #1e40af; }
.nv2-tab-intro--green { background: #f0fdf4; border-color: #bbf7d0; color: #166534; }
.nv2-tab-intro--amber { background: #fffbeb; border-color: #fde68a; color: #92400e; }
.nv2-tab-intro--purple { background: #f5f3ff; border-color: #ddd6fe; color: #5b21b6; }
.nv2-tab-intro--red { background: #fef2f2; border-color: #fecaca; color: #991b1b; }
.nv2-tab-intro--slate { background: #f8fafc; border-color: #e2e8f0; color: #475569; }

.nv2-teacher {
  display: flex;
  gap: 12px;
  padding: 1rem;
  margin-bottom: 1rem;
  border-radius: 16px;
  background: linear-gradient(135deg, #fff7ed, #fffbeb);
  border: 1px solid #fed7aa;
}
.nv2-teacher-icon { font-size: 1.5rem; }
.nv2-teacher-label { font-size: 0.68rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.06em; color: #c2410c; margin-bottom: 4px; }
.nv2-teacher p { margin: 0; font-size: 0.84rem; line-height: 1.65; color: #44403c; }

.nv2-alerts { display: flex; flex-direction: column; gap: 8px; margin-bottom: 1rem; }
.nv2-alert {
  display: flex;
  gap: 10px;
  padding: 0.75rem 0.9rem;
  border-radius: 14px;
  font-size: 0.8rem;
  line-height: 1.55;
  border: 1px solid;
}
.nv2-alert-icon { font-size: 1.15rem; flex-shrink: 0; }
.nv2-alert--danger { background: #fef2f2; border-color: #fecaca; color: #7f1d1d; }
.nv2-alert--warn { background: #fff7ed; border-color: #fed7aa; color: #7c2d12; }
.nv2-alert--info { background: #eff6ff; border-color: #bfdbfe; color: #1e3a8a; }
.nv2-alert-title { font-weight: 800; margin-bottom: 2px; }

.nv2-block { margin-bottom: 1rem; }
.nv2-block-title { font-size: 0.85rem; font-weight: 800; margin: 0 0 0.5rem; color: #44403c; }
.nv2-sifre-row { display: flex; flex-wrap: wrap; gap: 6px; }
.nv2-sifre {
  display: flex; flex-direction: column; align-items: center;
  min-width: 72px; padding: 0.45rem 0.55rem;
  background: #fff; border: 1px solid #e7e0d4; border-radius: 12px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.04);
}
.nv2-sifre-code { font-size: 0.72rem; font-weight: 800; color: #b45309; }
.nv2-sifre-val { font-size: 0.68rem; font-weight: 700; color: #1c1917; }
.nv2-sifre-note { font-size: 0.58rem; color: #78716c; }

.nv2-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 0.85rem;
  margin-bottom: 0.5rem;
}

.nv2-card {
  background: #fffef9;
  border-radius: 18px;
  border: 1px solid #e7e0d4;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(0,0,0,0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.nv2-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.08); }
.nv2-card-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0.85rem 1rem;
  border-bottom: 1px solid rgba(0,0,0,0.05);
}
.nv2-card-emoji { font-size: 1.35rem; }
.nv2-card-title {
  font-family: 'Playfair Display', serif;
  font-size: 0.95rem;
  font-weight: 700;
  margin: 0;
  color: #1c1917;
  line-height: 1.3;
}
.nv2-card-body {
  padding: 0.85rem 1rem 1rem;
  font-size: 0.8rem;
  line-height: 1.65;
  color: #44403c;
}
.nv2-card-body p { margin: 0 0 0.5rem; }
.nv2-card-body p:last-child { margin-bottom: 0; }
.nv2-list { margin: 0.35rem 0; padding-left: 1.1rem; }
.nv2-list li { margin-bottom: 0.35rem; }
.nv2-strong { color: #1c1917; font-weight: 700; }
.nv2-code {
  background: #1e293b;
  color: #e2e8f0;
  padding: 0.75rem;
  border-radius: 10px;
  font-size: 0.7rem;
  line-height: 1.5;
  overflow-x: auto;
  white-space: pre-wrap;
}

.nv2-card--blue .nv2-card-head { background: linear-gradient(135deg, #eff6ff, #dbeafe); }
.nv2-card--amber .nv2-card-head { background: linear-gradient(135deg, #fffbeb, #fef3c7); }
.nv2-card--green .nv2-card-head { background: linear-gradient(135deg, #f0fdf4, #dcfce7); }
.nv2-card--purple .nv2-card-head { background: linear-gradient(135deg, #f5f3ff, #ede9fe); }
.nv2-card--rose .nv2-card-head { background: linear-gradient(135deg, #fff1f2, #ffe4e6); }
.nv2-card--teal .nv2-card-head { background: linear-gradient(135deg, #f0fdfa, #ccfbf1); }

.nv2-block--trap { padding: 0.85rem; background: #fef2f2; border-radius: 14px; border: 1px dashed #fecaca; }
.nv2-trap-list { display: flex; flex-direction: column; gap: 4px; }
.nv2-trap-item { font-size: 0.76rem; padding: 0.4rem 0.55rem; background: #fff; border-radius: 8px; color: #57534e; }

.nv2-pdf-wrap { margin-top: 0.5rem; }
.nv2-panel--pdf { padding-top: 0; }
.nv2-check-row { margin-top: 1rem; padding-top: 0.75rem; border-top: 1px dashed #e7e0d4; }

@media (max-width: 640px) {
  .nv2-grid { grid-template-columns: 1fr; }
  .nv2-nav { gap: 4px; }
  .nv2-nav-label { display: none; }
  .nv2-nav-item { padding: 8px 10px; }
}

/* ── İstasyon panel entegrasyonu ── */
#ms-study-notes.ms-notes-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.ms-notes-body .mr-root {
  flex: 1 1 auto;
  min-height: 0;
  height: auto;
}
.ms-notes-panel.ms-notes-main {
  min-height: 0;
}
.ms-notes-panel.ms-notes-fullscreen .ms-notes-body,
.ms-notes-panel.ms-notes-center .ms-notes-body {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}
.ms-notes-panel:has(.mr-root),
.ms-notes-panel:has(.serene-notes),
.ms-notes-panel:has(.tc-card) {
  background: #f7f9fe !important;
  border-color: #ebeef3 !important;
}
.ms-notes-panel:has(.mr-root) .ms-notes-toolbar,
.ms-notes-panel:has(.serene-notes) .ms-notes-toolbar,
.ms-notes-panel:has(.tc-card) .ms-notes-toolbar {
  background: #fff;
  border-bottom: 1px solid #ebeef3;
}
.ms-notes-panel:has(.mr-root) .ms-notes-toolbar-label,
.ms-notes-panel:has(.serene-notes) .ms-notes-toolbar-label { color: #404945; }
.ms-notes-panel:has(.mr-root) .ms-notes-tb-btn:hover,
.ms-notes-panel:has(.serene-notes) .ms-notes-tb-btn:hover {
  border-color: #a7d7c5;
  color: #3a6758;
  background: rgba(167, 215, 197, 0.35);
}
.ms-notes-panel:has(.mr-root) .ms-notes-tb-btn.active,
.ms-notes-panel:has(.serene-notes) .ms-notes-tb-btn.active {
  border-color: #3a6758;
  color: #3a6758;
  background: rgba(58, 103, 88, 0.12);
}

@media print {
  .ms-notes-toolbar, .ms-ws-topbar, .ms-sidebar, .ms-engine-panel, #site-nav, #site-footer { display: none !important; }
  .ms-notes-panel { position: static !important; width: 100% !important; max-width: none !important; }
  .mr-tab-panel { display: block !important; page-break-after: always; }
  .mr-data-card, .data-card { break-inside: avoid; box-shadow: none; border: 1px solid #ccc; }
  .mr-root { background: #fff; }
}

/* ── Referans HTML sınıf uyumluluğu (embed) ── */
.mr-embed .data-card,
.data-card {
  background: var(--mr-card);
  border-radius: 16px;
  padding: 1.5rem;
  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);
  border: 1px solid var(--mr-border);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  margin-bottom: 1rem;
  color: var(--mr-text);
}
.mr-embed .data-card:hover,
.data-card:hover {
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
  transform: translateY(-2px);
}
.mr-embed .section-title,
.section-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.65rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid var(--mr-border-soft);
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.mr-embed .osym-box,
.osym-box {
  background: linear-gradient(to right, #fff1f2, #ffe4e6);
  border-left: 5px solid var(--mr-red);
  padding: 1rem 1.25rem;
  border-radius: 0 12px 12px 0;
  margin-bottom: 1rem;
  font-size: 0.88rem;
  line-height: 1.65;
  color: #7f1d1d;
}
.mr-embed .osym-box::before,
.osym-box::before {
  content: "⚠️ ÖSYM TUZAĞI";
  display: block;
  font-size: 0.65rem;
  font-weight: 800;
  color: var(--mr-red);
  margin-bottom: 0.4rem;
  letter-spacing: 1px;
}
.mr-embed .study-note-card,
.study-note-card {
  background: linear-gradient(135deg, #fffbeb, #fef3c7);
  border-left: 5px solid #f59e0b;
  padding: 1.2rem;
  border-radius: 4px 16px 16px 4px;
  box-shadow: 0 4px 12px rgba(245, 158, 11, 0.1);
  margin: 1rem 0;
  color: #78350f;
}
.mr-embed .highlight,
.highlight {
  background: linear-gradient(104deg, transparent 0%, transparent 5%, #fef3c7 6%, #fef3c7 94%, transparent 95%, transparent 100%);
  padding: 0 4px;
  border-radius: 3px;
  font-weight: 700;
  color: #b45309;
}
.mr-embed .tag { display: inline-flex; padding: 2px 10px; border-radius: 999px; font-size: 0.72rem; font-weight: 600; margin: 2px; }
.mr-embed .tag-blue, .tag-blue { background: #dbeafe; color: #1d4ed8; }
.mr-embed .tag-gold, .tag-gold { background: #fef3c7; color: #b45309; }
.mr-embed .tag-green, .tag-green { background: #d1fae5; color: #047857; }
.mr-embed .tag-gray, .tag-gray { background: #f1f5f9; color: #475569; }
.mr-embed .card-header-badge,
.card-header-badge {
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 12px;
  border-bottom-left-radius: 12px;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
}
.mr-embed .check-item,
.check-item {
  appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #cbd5e1;
  border-radius: 6px;
  cursor: pointer;
  position: relative;
  vertical-align: middle;
  margin-right: 6px;
}
.mr-embed .check-item:checked,
.check-item:checked {
  background: var(--mr-green);
  border-color: var(--mr-green);
}
.mr-embed .check-item:checked::after,
.check-item:checked::after {
  content: '✓';
  position: absolute;
  color: #fff;
  font-size: 14px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-weight: bold;
}
.mr-embed .grid-scholars { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.25rem; }
.mr-embed .grid-terms { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 0.75rem; }
.mr-embed .font-serif { font-family: 'Playfair Display', serif; }
.mr-embed .animate-fade { animation: mrFadeIn 0.4s ease-out forwards; }

/* ═══════════════════════════════════════════════════════════════
   OKUNABİLİRLİK — Embed HTML (Tailwind sınıfları inject’te çalışmaz)
   ═══════════════════════════════════════════════════════════════ */
.mr-root,
.mr-embed,
.ms-notes-body .mr-root {
  color: #1e293b;
  -webkit-font-smoothing: antialiased;
}

.mr-root .data-card,
.mr-embed .data-card,
.ms-notes-body .data-card {
  background: #faf6f0;
  color: #1e293b;
  border-color: #e7e5e4;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
}

.mr-root .data-card p,
.mr-embed .data-card p,
.mr-root .data-card li,
.mr-embed .data-card li,
.mr-root .data-card pre,
.mr-embed .data-card pre,
.data-card p,
.data-card li,
.data-card pre,
.mr-root .text-sm,
.mr-embed .text-sm,
.text-gray-600,
.text-gray-700 {
  color: #1e293b !important;
  font-size: 0.9375rem !important;
  line-height: 1.75 !important;
}

.mr-root .text-xs,
.mr-embed .text-xs,
.text-gray-500 {
  color: #64748b !important;
  font-size: 0.8125rem !important;
  line-height: 1.5 !important;
}

.mr-root .data-card h3,
.mr-embed .data-card h3,
.data-card h3 {
  color: #0f172a !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.mr-root .font-bold,
.mr-embed .font-bold {
  color: #0f172a;
}

.mr-root .text-amber-700,
.mr-embed .text-amber-700 {
  color: #b45309 !important;
}

.mr-root .text-red-800,
.mr-embed .text-red-800 {
  color: #991b1b !important;
}

.mr-root .highlight,
.mr-embed .highlight,
.highlight {
  background: #fef3c7 !important;
  color: #92400e !important;
  font-weight: 700;
  padding: 1px 5px;
  border-radius: 4px;
}

.mr-root .study-note-card p,
.mr-embed .study-note-card p {
  color: #78350f !important;
}

.mr-root pre,
.mr-embed pre {
  background: #f5f0e8;
  border: 1px solid #e7e5e4;
  border-radius: 12px;
  padding: 1rem;
  color: #1e293b !important;
}

.mr-root .bg-red-50,
.mr-embed .bg-red-50 {
  background: #fff1f2 !important;
  border-color: #fecaca !important;
}

.mr-root .border-red-400,
.mr-embed .border-red-400 {
  border-color: #f87171 !important;
}

.mr-root .border-amber-500,
.mr-embed .border-amber-500 {
  border-color: #f59e0b !important;
}

.mr-root .bg-amber-100,
.mr-embed .bg-amber-100 {
  background: #fef3c7 !important;
  color: #92400e !important;
}

.mr-root .bg-blue-100,
.mr-embed .bg-blue-100 {
  background: #dbeafe !important;
  color: #1e40af !important;
}

.mr-root .bg-green-100,
.mr-embed .bg-green-100 {
  background: #d1fae5 !important;
  color: #065f46 !important;
}

.mr-root .bg-red-100,
.mr-embed .bg-red-100 {
  background: #ffe4e6 !important;
  color: #991b1b !important;
}

.mr-pending-card {
  background: #faf6f0;
  color: #475569;
}

/* ── Okunabilirlik kilidi (main.css koyu tema override'larını ezer) ── */
.mr-root .text-gray-300,
.mr-root .text-gray-400,
.mr-root .text-gray-500,
.mr-root .text-gray-600,
.mr-root .text-gray-700,
.mr-root .text-gray-800,
.mr-embed .text-gray-300,
.mr-embed .text-gray-400,
.mr-embed .text-gray-500,
.mr-embed .text-gray-600,
.mr-embed .text-gray-700,
.mr-embed .text-gray-800 {
  color: #334155 !important;
}

.mr-root .section-title,
.mr-embed .section-title {
  color: #0f172a !important;
}

.ms-notes-body .mr-root {
  min-height: 280px;
}

.mr-tab-panel.active {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* ═══════════════════════════════════════════════════════════════
   PDF Sheet v2 — soft defter kağıdı · öğrenci tekrar kartı
   ═══════════════════════════════════════════════════════════════ */

.pdf-sheet-v2 {
  --pdf-cream: #faf6ee;
  --pdf-paper: #fffef8;
  --pdf-line: rgba(196, 176, 148, 0.32);
  --pdf-margin: #e8a0a0;
  --pdf-ink: #2a2622;
  --pdf-muted: #6b6560;
  --pdf-soft-shadow: 0 12px 40px rgba(42, 38, 34, 0.1), 0 4px 12px rgba(42, 38, 34, 0.05);
  margin: 0 auto 1.5rem;
  max-width: 860px;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
}

.pdf-sheet-paper {
  position: relative;
  background-color: var(--pdf-paper);
  background-image:
    repeating-linear-gradient(
      transparent,
      transparent 27px,
      var(--pdf-line) 27px,
      var(--pdf-line) 28px
    ),
    url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");
  border-radius: 6px 20px 20px 6px;
  box-shadow: var(--pdf-soft-shadow);
  border: 1px solid #e5ddd0;
  padding: 2rem 2rem 1.5rem 3.5rem;
  overflow: hidden;
}

.pdf-sheet-paper::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 15% 5%, rgba(251, 191, 36, 0.07) 0%, transparent 45%),
    radial-gradient(ellipse at 85% 95%, rgba(147, 197, 253, 0.06) 0%, transparent 40%);
  pointer-events: none;
}

.pdf-spiral {
  position: absolute;
  left: 0.55rem;
  top: 2.5rem;
  bottom: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  z-index: 2;
}

.pdf-spiral-hole {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #fff 0%, #e8e4dc 40%, #c9c4ba 100%);
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.15), 0 1px 0 rgba(255,255,255,0.8);
  border: 1px solid #d4cfc5;
}

.pdf-sheet-margin-line--left {
  position: absolute;
  left: 2.65rem;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom, transparent, var(--pdf-margin) 6%, var(--pdf-margin) 94%, transparent);
  opacity: 0.65;
}

.pdf-sheet-margin-line--top {
  position: absolute;
  left: 0;
  right: 0;
  top: 1.75rem;
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(232, 160, 160, 0.45) 12%, rgba(232, 160, 160, 0.45) 88%, transparent);
}

.pdf-tape {
  position: absolute;
  width: 72px;
  height: 22px;
  opacity: 0.55;
  z-index: 3;
  background: linear-gradient(135deg, rgba(253, 230, 138, 0.9), rgba(251, 191, 36, 0.75));
  box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}
.pdf-tape--tl { top: 0.5rem; left: 3.5rem; transform: rotate(-8deg); }
.pdf-tape--tr { top: 0.5rem; right: 1.5rem; transform: rotate(6deg); background: linear-gradient(135deg, rgba(191, 219, 254, 0.9), rgba(147, 197, 253, 0.75)); }

.pdf-sheet-header {
  position: relative;
  margin-bottom: 1.25rem;
  padding-bottom: 1rem;
  border-bottom: 2px dashed #e5ddd0;
}

.pdf-header-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.85rem;
}

.pdf-sheet-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}

.pdf-brand-name {
  display: block;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--pdf-ink);
}

.pdf-brand-tag {
  display: block;
  font-size: 0.62rem;
  font-weight: 600;
  color: var(--pdf-muted);
  letter-spacing: 0.04em;
}

.pdf-sheet-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.pdf-sheet-badge {
  display: inline-flex;
  align-items: center;
  padding: 5px 11px;
  border-radius: 999px;
  font-size: 0.66rem;
  font-weight: 700;
  background: rgba(255,255,255,0.9);
  color: #57534e;
  border: 1px solid #e7e5e4;
  box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}

.pdf-sheet-badge--banko {
  background: linear-gradient(135deg, #fef9c3, #fde68a);
  color: #92400e;
  border-color: #fcd34d;
}

.pdf-sheet-badge--exam {
  background: linear-gradient(135deg, #eff6ff, #dbeafe);
  color: #1d4ed8;
  border-color: #bfdbfe;
}

.pdf-sheet-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--pdf-ink);
  line-height: 1.2;
  margin: 0 0 0.4rem;
  letter-spacing: -0.02em;
}

.pdf-sheet-sub {
  font-size: 0.8rem;
  color: var(--pdf-muted);
  margin: 0 0 0.75rem;
  line-height: 1.5;
}

.pdf-goal-strip {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0.55rem 0.85rem;
  background: linear-gradient(90deg, rgba(240, 253, 244, 0.95), rgba(239, 246, 255, 0.95));
  border: 1px solid #bbf7d0;
  border-radius: 12px;
  font-size: 0.78rem;
  color: #44403c;
}

.pdf-goal-icon { font-size: 1rem; }
.pdf-goal-check {
  margin-left: auto;
  font-size: 0.72rem;
  font-weight: 600;
  color: #166534;
  display: flex;
  align-items: center;
  gap: 4px;
}

.pdf-sheet-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.65rem;
  margin-bottom: 1.25rem;
}

.pdf-stat {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid #e5ddd0;
  border-radius: 16px;
  padding: 0.75rem 0.5rem;
  text-align: center;
  box-shadow: 0 3px 10px rgba(0,0,0,0.04);
}

.pdf-stat-ring {
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--pdf-ink);
  line-height: 1.2;
  margin-bottom: 2px;
}

.pdf-stat--gold .pdf-stat-ring { color: #b45309; }
.pdf-stat--blue .pdf-stat-ring { color: #1d4ed8; }
.pdf-stat--green .pdf-stat-ring { color: #166534; }
.pdf-stat--purple .pdf-stat-ring { color: #6b21a8; }

.pdf-stat-lbl {
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--pdf-muted);
}

.pdf-sticky-note {
  position: relative;
  background: linear-gradient(145deg, #fffbeb 0%, #fef3c7 100%);
  border: none;
  border-radius: 2px 14px 14px 14px;
  padding: 1rem 1.1rem 0.9rem 2.25rem;
  font-size: 0.84rem;
  line-height: 1.7;
  color: #44403c;
  margin-bottom: 1.35rem;
  box-shadow: 2px 4px 12px rgba(180, 140, 60, 0.15), inset 0 -2px 0 rgba(0,0,0,0.03);
  transform: rotate(-0.3deg);
}

.pdf-sticky-pin {
  position: absolute;
  top: -6px;
  left: 10px;
  font-size: 1.1rem;
  filter: drop-shadow(0 2px 2px rgba(0,0,0,0.15));
}

.pdf-sticky-note p { margin: 0; }

.pdf-sheet-section {
  position: relative;
  margin-bottom: 1.35rem;
}

.pdf-section-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: 'Playfair Display', serif;
  font-size: 1.08rem;
  font-weight: 700;
  color: var(--pdf-ink);
  margin: 0 0 0.5rem;
}

.pdf-section-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  padding: 0 6px;
  border-radius: 8px;
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 0.68rem;
  font-weight: 800;
  background: linear-gradient(135deg, #fef3c7, #fde68a);
  color: #92400e;
  box-shadow: 0 2px 6px rgba(245, 158, 11, 0.2);
}

.pdf-section-num--red {
  background: linear-gradient(135deg, #fee2e2, #fecaca);
  color: #b91c1c;
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.15);
}

.pdf-section-lead {
  font-size: 0.78rem;
  color: var(--pdf-muted);
  margin: 0 0 0.85rem;
  line-height: 1.55;
}

.pdf-kya-visual {
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid #e5ddd0;
  border-radius: 18px;
  padding: 0.75rem;
  margin-bottom: 0.75rem;
  overflow-x: auto;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}

.pdf-kya-svg { width: 100%; min-width: 520px; height: auto; display: block; }

.pdf-kya-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.65rem;
}

.pdf-kya-card {
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #e5ddd0;
  border-radius: 14px;
  padding: 0.75rem 0.65rem;
  text-align: center;
  box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}

.pdf-kya-card--konu { border-bottom: 3px solid #3b82f6; }
.pdf-kya-card--ana { border-bottom: 3px solid #f59e0b; }
.pdf-kya-card--baslik { border-bottom: 3px solid #22c55e; }

.pdf-kya-badge {
  display: inline-flex;
  width: 26px;
  height: 26px;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  font-size: 0.75rem;
  font-weight: 800;
  margin-bottom: 4px;
  background: #f5f5f4;
  color: var(--pdf-ink);
}

.pdf-kya-card h3 {
  font-size: 0.82rem;
  font-weight: 800;
  margin: 0 0 0.2rem;
  color: var(--pdf-ink);
}

.pdf-kya-card p {
  font-size: 0.68rem;
  color: var(--pdf-muted);
  margin: 0;
  line-height: 1.35;
}

.pdf-gys-wrap {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #e5ddd0;
  border-radius: 18px;
  padding: 1rem;
  overflow-x: auto;
  box-shadow: 0 4px 14px rgba(0,0,0,0.04);
}

.pdf-gys-svg { width: 100%; min-width: 480px; height: auto; display: block; margin: 0 auto 0.75rem; }

.pdf-mini-para {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 0.65rem;
  background: #fafaf9;
  border-radius: 12px;
  border: 1px dashed #d6d3d1;
}

.pdf-mini-line {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 0.74rem;
  line-height: 1.5;
  padding: 6px 8px;
  border-radius: 8px;
  color: #44403c;
}

.pdf-mini-line--g { background: rgba(239, 246, 255, 0.9); border-left: 3px solid #3b82f6; }
.pdf-mini-line--y { background: rgba(240, 253, 244, 0.9); border-left: 3px solid #22c55e; }
.pdf-mini-line--s { background: rgba(255, 251, 235, 0.9); border-left: 3px solid #f59e0b; }

.pdf-mini-tag {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.62rem;
  font-weight: 800;
  background: #fff;
  border: 1px solid #e7e5e4;
  color: var(--pdf-muted);
}

.pdf-sheet-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.pdf-position-chart {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid #e5ddd0;
  border-radius: 16px;
  padding: 0.85rem;
}

.pdf-position-svg { width: 100%; height: auto; display: block; margin-bottom: 0.65rem; }

.pdf-4k-flow {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  justify-content: center;
}

.pdf-4k-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-width: 52px;
  padding: 4px 6px;
  background: #fafaf9;
  border-radius: 10px;
  border: 1px solid #e7e5e4;
}

.pdf-4k-step span {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: linear-gradient(135deg, #fef3c7, #fde68a);
  font-size: 0.62rem;
  font-weight: 800;
  color: #92400e;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2px;
}

.pdf-4k-step strong { font-size: 0.68rem; color: var(--pdf-ink); }
.pdf-4k-step em { font-size: 0.58rem; color: var(--pdf-muted); font-style: normal; }
.pdf-4k-arrow { font-size: 0.75rem; color: #a8a29e; font-weight: 700; }

.pdf-dge-visual { text-align: center; margin-bottom: 0.5rem; }

.pdf-dge-list { display: flex; flex-direction: column; gap: 0.45rem; }

.pdf-dge-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0.6rem 0.8rem;
  border-radius: 12px;
  font-size: 0.78rem;
  line-height: 1.4;
  border: 1px solid #e5ddd0;
  background: rgba(255, 255, 255, 0.95);
}

.pdf-dge-item--ele { border-left: 4px solid #ef4444; }
.pdf-dge-item--tut {
  border-left: 4px solid #22c55e;
  background: linear-gradient(to right, rgba(240, 253, 244, 0.85), rgba(255,255,255,0.95));
}

.pdf-dge-letter {
  width: 30px;
  height: 30px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 0.9rem;
  background: #f5f5f4;
  color: var(--pdf-ink);
  flex-shrink: 0;
}

.pdf-dge-verdict {
  display: inline-block;
  margin-left: 4px;
  padding: 1px 6px;
  border-radius: 6px;
  font-size: 0.62rem;
  font-weight: 800;
  background: #fee2e2;
  color: #b91c1c;
}

.pdf-dge-verdict--ok {
  background: #dcfce7;
  color: #166534;
}

.pdf-puf-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.55rem;
}

.pdf-puf-card {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 0.65rem 0.75rem;
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #e5ddd0;
  border-radius: 12px;
  font-size: 0.76rem;
  line-height: 1.55;
  color: #44403c;
}

.pdf-puf-n {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 0.68rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pdf-puf-card p { margin: 0; }

.pdf-sifre-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.pdf-sifre-chip {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 82px;
  padding: 0.55rem 0.6rem;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid #e5ddd0;
  border-radius: 14px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  transition: transform 0.15s ease;
}

.pdf-sifre-chip:hover { transform: translateY(-1px); }

.pdf-sifre-code {
  font-size: 0.8rem;
  font-weight: 800;
  color: #b45309;
  letter-spacing: 0.06em;
}

.pdf-sifre-text {
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--pdf-ink);
  margin-top: 2px;
}

.pdf-sifre-mean {
  font-size: 0.62rem;
  color: var(--pdf-muted);
  text-align: center;
  margin-top: 3px;
  line-height: 1.25;
}

.pdf-trap-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.45rem;
}

.pdf-trap-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 0.76rem;
  color: #57534e;
  padding: 0.5rem 0.65rem;
  background: rgba(254, 242, 242, 0.55);
  border: 1px dashed #fecaca;
  border-radius: 10px;
  cursor: default;
  line-height: 1.45;
}

.pdf-trap-item input { accent-color: #ef4444; margin-top: 2px; flex-shrink: 0; }

.pdf-sheet-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 1.25rem;
  padding-top: 0.85rem;
  border-top: 2px dashed #e5ddd0;
  font-size: 0.66rem;
  font-weight: 600;
  color: var(--pdf-muted);
  letter-spacing: 0.03em;
}

.pdf-footer-mid { font-style: italic; opacity: 0.85; }

.pdf-kanka-pdf-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.5rem;
}
.pdf-kanka-pdf-chip {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  padding: 0.55rem 0.65rem;
  border-radius: 12px;
  font-size: 0.74rem;
  line-height: 1.45;
  border: 1px solid #e5ddd0;
}
.pdf-kanka-pdf-chip span { font-size: 1rem; flex-shrink: 0; }
.pdf-kanka-pdf-chip p { margin: 0; color: #44403c; }
.pdf-kanka-pdf-chip--0 { background: #fffbeb; border-color: #fde68a; }
.pdf-kanka-pdf-chip--1 { background: #eff6ff; border-color: #bfdbfe; }
.pdf-kanka-pdf-chip--2 { background: #f0fdf4; border-color: #bbf7d0; }
.pdf-kanka-pdf-chip--3 { background: #fff1f2; border-color: #fecdd3; }
.pdf-kanka-pdf-chip--4 { background: #f5f3ff; border-color: #ddd6fe; }

.pdf-key-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.55rem;
}
.pdf-key-card {
  background: rgba(255,255,255,0.95);
  border: 1px solid #e5ddd0;
  border-radius: 14px;
  padding: 0.65rem 0.75rem;
  font-size: 0.74rem;
  line-height: 1.5;
}
.pdf-key-head { display: flex; align-items: center; gap: 6px; margin-bottom: 4px; }
.pdf-key-head strong { font-size: 0.78rem; color: #1c1917; }
.pdf-key-card p { margin: 0; color: #57534e; }
.pdf-key-card--0 { border-top: 3px solid #3b82f6; }
.pdf-key-card--1 { border-top: 3px solid #f59e0b; }
.pdf-key-card--2 { border-top: 3px solid #22c55e; }
.pdf-key-card--3 { border-top: 3px solid #8b5cf6; }

.pdf-sheet--turkce .pdf-tape--tl { background: linear-gradient(135deg, #fde68a, #fbbf24); }
.pdf-sheet--matematik .pdf-tape--tr { background: linear-gradient(135deg, #bfdbfe, #93c5fd); }
.pdf-sheet--tarih .pdf-tape--tl { background: linear-gradient(135deg, #fecaca, #fca5a5); }
.pdf-sheet--cografya .pdf-tape--tr { background: linear-gradient(135deg, #bbf7d0, #86efac); }
.pdf-sheet--vatandaslik .pdf-tape--tl { background: linear-gradient(135deg, #ddd6fe, #c4b5fd); }
.pdf-sheet--guncel .pdf-tape--tr { background: linear-gradient(135deg, #fed7aa, #fdba74); }

@media (max-width: 640px) {
  .pdf-kanka-pdf-row, .pdf-key-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .pdf-sheet-paper { padding: 1.25rem 1rem 1rem 2.25rem; }
  .pdf-spiral { left: 0.35rem; }
  .pdf-sheet-stats { grid-template-columns: repeat(2, 1fr); }
  .pdf-kya-grid { grid-template-columns: 1fr; }
  .pdf-sheet-two-col { grid-template-columns: 1fr; }
  .pdf-puf-grid { grid-template-columns: 1fr; }
  .pdf-trap-grid { grid-template-columns: 1fr; }
  .pdf-goal-check { margin-left: 0; width: 100%; }
}

@media print {
  .pdf-sheet-v2 { max-width: none; margin: 0; }
  .pdf-sheet-paper {
    box-shadow: none;
    border: none;
    background: #fffef8;
    padding: 0.4rem 0.4rem 0.4rem 1.75rem;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
  .pdf-sifre-chip:hover { transform: none; }
  .pdf-sticky-note { transform: none; }
  .pdf-trap-item input { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .mr-tab-panel:not(.active) { display: none !important; }
  .pdf-sheet-badge--banko,
  .pdf-kya-card,
  .pdf-stat,
  .pdf-dge-item--tut,
  .pdf-mini-line--g,
  .pdf-mini-line--y,
  .pdf-mini-line--s,
  .pdf-sticky-note,
  .pdf-section-num {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}

