/* Kampüs - tüm kurallar .oonda ile başlar; sitenin diğer bölümlerini etkilemez */
.oonda {
	--oo-ana: #1d4ed8;
	--oo-ana-koyu: #1e3a8a;
	--oo-vurgu: #f59e0b;
	--oo-dogru: #15803d;
	--oo-dogru-bg: #dcfce7;
	--oo-yanlis: #b91c1c;
	--oo-yanlis-bg: #fee2e2;
	--oo-yazi: #0f172a;
	--oo-soluk: #475569;
	--oo-cizgi: #e2e8f0;
	--oo-bg: #f8fafc;
	--oo-kart: #ffffff;
	font-size: 17px;
	line-height: 1.55;
	color: var(--oo-yazi);
	background: var(--oo-bg);
	border: 1px solid var(--oo-cizgi);
	border-radius: 18px;
	padding: 1em;
	max-width: 960px;
	margin: 1em auto;
	box-sizing: border-box;
}
.oonda *, .oonda *::before, .oonda *::after { box-sizing: border-box; }
.oonda.oonda-tahta { font-size: 22px; max-width: 1200px; }

.oonda h2, .oonda h3, .oonda h4, .oonda p, .oonda ul, .oonda ol { margin: 0; }
.oonda h3 { font-size: 1.3em; margin: 0.4em 0 0.5em; color: var(--oo-ana-koyu); }
.oonda h4 { font-size: 1.05em; margin: 1em 0 0.3em; color: var(--oo-ana-koyu); }
.oonda p { margin: 0 0 0.6em; }
.oonda ul, .oonda ol { padding-left: 1.3em; margin: 0 0 0.6em; }
.oonda li { margin-bottom: 0.3em; }

.oonda button {
	font: inherit;
	cursor: pointer;
	color: inherit;
	line-height: 1.3;
}
.oonda button:focus-visible, .oonda textarea:focus-visible, .oonda summary:focus-visible {
	outline: 3px solid var(--oo-vurgu);
	outline-offset: 2px;
}
.oonda button:disabled { cursor: not-allowed; opacity: 0.6; }

/* ÜST */
.oonda-ust {
	background: linear-gradient(135deg, var(--oo-ana-koyu), var(--oo-ana));
	color: #fff;
	border-radius: 14px;
	padding: 1em 1.1em;
	display: flex;
	flex-wrap: wrap;
	gap: 0.8em;
	align-items: flex-start;
	justify-content: space-between;
}
.oonda-ust-sol { flex: 1 1 260px; min-width: 0; }
.oonda-rozet {
	display: inline-block;
	background: rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	padding: 0.15em 0.8em;
	font-size: 0.85em;
	font-weight: 600;
}
.oonda .oonda-baslik { color: #fff; font-size: 1.5em; line-height: 1.25; margin: 0.35em 0 0.5em; }
.oonda-ust .oonda-chip { background: rgba(255, 255, 255, 0.16); color: #fff; border-color: transparent; }

.oonda-chips { display: flex; flex-wrap: wrap; gap: 0.4em; }
.oonda-chip {
	display: inline-block;
	border: 1px solid var(--oo-cizgi);
	background: #fff;
	border-radius: 999px;
	padding: 0.1em 0.75em;
	font-size: 0.85em;
}

/* MENÜ */
.oonda-menu { display: flex; flex-wrap: wrap; gap: 0.5em; margin: 0.9em 0; }
.oonda .oonda-sekme {
	flex: 1 1 150px;
	min-height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.45em;
	background: var(--oo-kart);
	border: 2px solid var(--oo-cizgi);
	border-radius: 12px;
	padding: 0.5em 0.8em;
	font-weight: 600;
}
.oonda .oonda-sekme.oonda-aktif { background: var(--oo-ana); border-color: var(--oo-ana); color: #fff; }
.oonda-sekme-ikon { font-size: 1.2em; }

/* DÜĞMELER */
.oonda .oonda-btn {
	min-height: 46px;
	border-radius: 12px;
	border: 2px solid var(--oo-cizgi);
	background: #fff;
	padding: 0.5em 1.1em;
	font-weight: 600;
}
.oonda .oonda-btn-ana { background: var(--oo-ana); border-color: var(--oo-ana); color: #fff; }
.oonda .oonda-btn-ana:hover:not(:disabled) { background: var(--oo-ana-koyu); }
.oonda .oonda-btn-hafif:hover:not(:disabled) { border-color: var(--oo-ana); }
.oonda-ust .oonda-btn-hafif { background: rgba(255, 255, 255, 0.14); color: #fff; border-color: rgba(255, 255, 255, 0.5); align-self: flex-start; }

/* ANA SAYFA */
.oonda-giris { font-size: 1.1em; }
.oonda-kartlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 0.8em; margin: 0.8em 0 1em; }
.oonda .oonda-kart {
	text-align: left;
	background: var(--oo-kart);
	border: 2px solid var(--oo-cizgi);
	border-radius: 14px;
	padding: 1em;
	display: flex;
	flex-direction: column;
	gap: 0.25em;
	min-height: 120px;
}
.oonda .oonda-kart:hover { border-color: var(--oo-ana); box-shadow: 0 4px 14px rgba(29, 78, 216, 0.12); }
.oonda-kart-ikon { font-size: 2em; }
.oonda-kart-alt { color: var(--oo-soluk); font-size: 0.9em; }
.oonda-cikti { list-style: none; padding: 0; }
.oonda-cikti li { background: var(--oo-kart); border: 1px solid var(--oo-cizgi); border-radius: 10px; padding: 0.6em 0.8em; }
.oonda-kod {
	display: inline-block;
	background: #e0e7ff;
	color: var(--oo-ana-koyu);
	border-radius: 6px;
	padding: 0 0.5em;
	font-size: 0.8em;
	font-weight: 700;
}
.oonda-kaynak { color: var(--oo-soluk); font-size: 0.8em; margin-top: 1em; }

/* LİSTE (ders / soru) */
.oonda-liste { display: flex; flex-direction: column; gap: 0.7em; }
.oonda-ipucu { color: var(--oo-soluk); }
.oonda .oonda-ders {
	display: flex;
	align-items: center;
	gap: 0.9em;
	text-align: left;
	background: var(--oo-kart);
	border: 2px solid var(--oo-cizgi);
	border-radius: 14px;
	padding: 0.9em 1em;
	width: 100%;
}
.oonda .oonda-ders:hover { border-color: var(--oo-ana); }
.oonda .oonda-ders.oonda-tamam { border-color: var(--oo-dogru); background: #f0fdf4; }
.oonda-ders-ikon { font-size: 2em; min-width: 1.4em; text-align: center; font-weight: 700; color: var(--oo-ana-koyu); }
.oonda-ders-metin { flex: 1; display: flex; flex-direction: column; gap: 0.15em; min-width: 0; }
.oonda-ders-durum { font-weight: 700; color: var(--oo-ana); white-space: nowrap; }
.oonda-tamam .oonda-ders-durum { color: var(--oo-dogru); }

/* OYNATICI */
.oonda-oyn-ust { display: flex; flex-wrap: wrap; align-items: center; gap: 0.7em; margin-bottom: 0.7em; }
.oonda-oyn-baslik { font-weight: 700; font-size: 1.1em; }
.oonda-ilerleme { height: 10px; background: var(--oo-cizgi); border-radius: 999px; overflow: hidden; }
.oonda-ilerleme-dolu { height: 100%; background: var(--oo-vurgu); transition: width 0.3s; }
.oonda-adim-no { color: var(--oo-soluk); font-size: 0.85em; margin: 0.3em 0 0.6em; }
.oonda-bilgi, .oonda-etk, .oonda-masa, .oonda-detay {
	background: var(--oo-kart);
	border: 1px solid var(--oo-cizgi);
	border-radius: 14px;
	padding: 1em 1.1em;
}
.oonda-metin { font-size: 1.1em; }
.oonda-giris-metin { white-space: pre-line; }
.oonda-nav { display: flex; flex-wrap: wrap; gap: 0.6em; justify-content: space-between; margin-top: 1em; }
.oonda-nav .oonda-btn-ana { margin-left: auto; }

.oonda-orn { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 0.7em; margin: 0.8em 0; }
.oonda-orn-kart {
	display: flex;
	flex-direction: column;
	gap: 0.2em;
	align-items: flex-start;
	background: var(--oo-bg);
	border: 1px solid var(--oo-cizgi);
	border-radius: 12px;
	padding: 0.7em 0.8em;
}
.oonda-orn-emoji { font-size: 2.1em; line-height: 1.1; }
.oonda-orn-acik { color: var(--oo-soluk); font-size: 0.92em; }

.oonda-uyari {
	background: #fef3c7;
	border: 1px solid #fcd34d;
	border-radius: 10px;
	padding: 0.6em 0.8em;
	margin: 0.8em 0;
}
.oonda .oonda-ses { margin-top: 0.4em; }

/* SINIFLANDIRMA OYUNU */
.oonda-say { color: var(--oo-soluk); font-weight: 600; }
.oonda-oge { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 0.6em 0 0.9em; }
.oonda-oge-emoji { font-size: 4em; line-height: 1.1; }
.oonda-oge-ad { font-size: 1.4em; }
.oonda-kutular { display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 0.6em; }
.oonda .oonda-kutu-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.2em;
	min-height: 84px;
	background: #fff;
	border: 3px solid var(--oo-cizgi);
	border-radius: 14px;
	padding: 0.6em;
	font-weight: 700;
	font-size: 1.05em;
}
.oonda .oonda-kutu-btn:hover:not(:disabled) { border-color: var(--oo-ana); }
.oonda-kutu-emoji { font-size: 1.8em; }
.oonda-sonraki { margin-top: 0.6em; }
.oonda-sonuc { background: #eff6ff; border: 1px solid #bfdbfe; border-radius: 12px; padding: 0.8em 1em; margin: 0.8em 0; font-size: 1.1em; }

/* ÇOKTAN SEÇMELİ */
.oonda-soru-kutu { border-top: 1px dashed var(--oo-cizgi); padding-top: 0.8em; margin-top: 0.8em; }
.oonda-soru-kutu:first-of-type { border-top: 0; margin-top: 0; padding-top: 0; }
.oonda-soru { font-weight: 700; font-size: 1.1em; }
.oonda-sec { display: flex; flex-direction: column; gap: 0.5em; margin: 0.5em 0; }
.oonda .oonda-sec-btn {
	display: flex;
	align-items: center;
	gap: 0.7em;
	text-align: left;
	min-height: 52px;
	width: 100%;
	background: #fff;
	border: 2px solid var(--oo-cizgi);
	border-radius: 12px;
	padding: 0.5em 0.8em;
}
.oonda .oonda-sec-btn:hover:not(:disabled) { border-color: var(--oo-ana); }
.oonda-harf {
	flex: 0 0 auto;
	width: 1.9em;
	height: 1.9em;
	border-radius: 50%;
	background: #e0e7ff;
	color: var(--oo-ana-koyu);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
}
.oonda .oonda-dogru, .oonda .oonda-sec-btn.oonda-dogru, .oonda .oonda-kutu-btn.oonda-dogru { background: var(--oo-dogru-bg); border-color: var(--oo-dogru); opacity: 1; }
.oonda .oonda-yanlis, .oonda .oonda-sec-btn.oonda-yanlis, .oonda .oonda-kutu-btn.oonda-yanlis { background: var(--oo-yanlis-bg); border-color: var(--oo-yanlis); opacity: 1; }
.oonda-geri { margin: 0.4em 0; }
.oonda-geri:empty { display: none; }
.oonda-geri-dogru, .oonda-geri-yanlis { border-radius: 10px; padding: 0.6em 0.8em; }
.oonda-geri-dogru { background: var(--oo-dogru-bg); border: 1px solid var(--oo-dogru); }
.oonda-geri-yanlis { background: var(--oo-yanlis-bg); border: 1px solid var(--oo-yanlis); }
.oonda-aciklama { color: var(--oo-soluk); margin-top: 0.4em; }

/* EŞLEŞTİRME */
.oonda-esl-satir { border: 2px solid var(--oo-cizgi); border-radius: 12px; padding: 0.7em 0.8em; margin-bottom: 0.6em; }
.oonda-esl-sol { display: flex; align-items: center; gap: 0.6em; margin-bottom: 0.4em; }
.oonda-esl-sag, .oonda-yontemler, .oonda-altsekme { display: flex; flex-wrap: wrap; gap: 0.4em; }
.oonda .oonda-chipbtn {
	min-height: 44px;
	background: #fff;
	border: 2px solid var(--oo-cizgi);
	border-radius: 999px;
	padding: 0.35em 1em;
	font-weight: 600;
}
.oonda .oonda-chipbtn:hover { border-color: var(--oo-ana); }
.oonda .oonda-chipbtn.oonda-secili { background: var(--oo-ana); border-color: var(--oo-ana); color: #fff; }
.oonda .oonda-dogru-kutu { border-color: var(--oo-dogru); background: #f0fdf4; }
.oonda .oonda-yanlis-kutu { border-color: var(--oo-yanlis); background: #fef2f2; }

/* GÖREV LİSTESİ */
.oonda-kontrol-liste { list-style: none; padding: 0; }
.oonda-kontrol-liste li { display: flex; align-items: flex-start; gap: 0.6em; padding: 0.5em 0; border-bottom: 1px solid var(--oo-cizgi); }
.oonda-kontrol-liste input { width: 1.4em; height: 1.4em; margin-top: 0.15em; flex: 0 0 auto; }

/* ÇÖZÜM */
.oonda-cozum { margin-top: 0.8em; }
.oonda-cozum-liste { margin-top: 0.7em; padding-left: 1.5em; }
.oonda-cozum-liste li { background: #fffbeb; border-left: 4px solid var(--oo-vurgu); border-radius: 6px; padding: 0.5em 0.7em; margin-bottom: 0.5em; list-style-position: outside; }
.oonda-cevap { font-size: 1.1em; margin-top: 0.4em; }
.oonda-cevap:empty { display: none; }

/* TABLO */
.oonda-tablo-kap { overflow-x: auto; margin: 0.6em 0; }
.oonda-tablo { border-collapse: collapse; width: 100%; background: #fff; }
.oonda-tablo th, .oonda-tablo td { border: 1px solid var(--oo-cizgi); padding: 0.5em 0.7em; text-align: left; }
.oonda-tablo th { background: #e0e7ff; color: var(--oo-ana-koyu); }

/* DENEY */
.oonda-altsekme { margin-bottom: 0.8em; }
.oonda-karisim-liste { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 0.7em; margin: 0.6em 0 1em; }
.oonda .oonda-karisim {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.2em;
	text-align: left;
	background: #fff;
	border: 2px solid var(--oo-cizgi);
	border-radius: 14px;
	padding: 0.8em;
	min-height: 110px;
}
.oonda .oonda-karisim:hover { border-color: var(--oo-ana); }
.oonda .oonda-karisim.oonda-secili { border-color: var(--oo-ana); box-shadow: 0 0 0 3px rgba(29, 78, 216, 0.18); }
.oonda .oonda-karisim.oonda-tamam { background: #f0fdf4; }
.oonda-sahne { display: flex; align-items: center; justify-content: center; background: #eff6ff; border: 1px solid #bfdbfe; border-radius: 14px; min-height: 120px; margin: 0.6em 0; }
.oonda-sahne-emoji { font-size: 4em; display: inline-block; }
.oonda-calisiyor .oonda-sahne-emoji { animation: oonda-salla 0.5s ease-in-out infinite; }
@keyframes oonda-salla {
	0% { transform: rotate(-12deg); }
	50% { transform: rotate(12deg); }
	100% { transform: rotate(-12deg); }
}
.oonda-masa .oonda-btn-ana { margin: 0.6em 0; }

.oonda-gercek { display: flex; flex-direction: column; gap: 0.7em; }
.oonda-detay > summary { cursor: pointer; font-weight: 700; font-size: 1.1em; min-height: 44px; display: flex; align-items: center; }
.oonda-detay-ic { padding-top: 0.4em; }
.oonda .oonda-alan {
	width: 100%;
	font: inherit;
	border: 2px solid var(--oo-cizgi);
	border-radius: 12px;
	padding: 0.6em 0.8em;
	background: #fff;
	color: var(--oo-yazi);
	resize: vertical;
}

.oonda-yukleniyor, .oonda-kapali { text-align: center; color: var(--oo-soluk); padding: 1em; }

@media (max-width: 600px) {
	.oonda { padding: 0.7em; border-radius: 14px; }
	.oonda .oonda-baslik { font-size: 1.25em; }
	.oonda .oonda-ders { flex-wrap: wrap; }
	.oonda-ders-durum { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.oonda-calisiyor .oonda-sahne-emoji { animation: none; }
	.oonda-ilerleme-dolu { transition: none; }
}
@media print {
	.oonda-menu, .oonda .oonda-btn, .oonda .oonda-ses { display: none; }
}

/* =====================================================================
 * 0.2.0 - ÖDÜL, ANİMASYON, SÜRÜKLE-BIRAK, SINAV
 * ===================================================================== */

/* ÜST SAĞ: seviye / yıldız kutusu */
.oonda-ust-sag { display: flex; flex-direction: column; gap: 0.6em; align-items: stretch; min-width: 210px; }
.oonda-xpkutu { background: rgba(255, 255, 255, 0.16); border-radius: 12px; padding: 0.55em 0.8em; }
.oonda-xp-ust { display: flex; justify-content: space-between; gap: 0.6em; font-weight: 700; }
.oonda-xp-cubuk { height: 10px; background: rgba(255, 255, 255, 0.25); border-radius: 999px; overflow: hidden; margin: 0.4em 0 0.25em; }
.oonda-xp-dolu { height: 100%; background: var(--oo-vurgu, #f59e0b); border-radius: 999px; transition: width 0.5s; }
.oonda-xp-alt { font-size: 0.78em; opacity: 0.9; }
.oonda-ust-sag .oonda-btn-hafif { align-self: stretch; }

/* BAŞARILARIM */
.oonda-basari { background: var(--oo-kart); border: 1px solid var(--oo-cizgi); border-radius: 14px; padding: 1em 1.1em; margin-bottom: 1em; }
.oonda-rozetler { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.6em; margin: 0.6em 0 0.9em; }
.oonda-rozet-kart {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.15em;
	background: #f1f5f9;
	border: 2px dashed var(--oo-cizgi);
	border-radius: 12px;
	padding: 0.6em 0.7em;
	color: var(--oo-soluk);
}
.oonda-rozet-kart.oonda-kazanildi { background: #fffbeb; border: 2px solid var(--oo-vurgu); color: var(--oo-yazi); }
.oonda-rozet-emoji { font-size: 1.9em; line-height: 1.1; }

/* BİLDİRİMLER VE KUTLAMA (gövdeye eklenir; kendi stilleri vardır) */
.oonda-toastlar {
	position: fixed;
	left: 50%;
	bottom: 18px;
	transform: translateX(-50%);
	z-index: 100000;
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-items: center;
	pointer-events: none;
	font-family: inherit;
}
.oonda-toast {
	background: #1e3a8a;
	color: #fff;
	border-radius: 999px;
	padding: 8px 18px;
	font-size: 17px;
	font-weight: 700;
	box-shadow: 0 6px 20px rgba(15, 23, 42, 0.3);
	animation: oo-toast-gir 0.25s ease-out;
}
.oonda-toast-buyuk { background: #b45309; font-size: 20px; padding: 12px 26px; text-align: center; }
@keyframes oo-toast-gir { from { transform: translateY(14px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
.oonda-konfeti {
	position: fixed;
	z-index: 100001;
	font-size: 22px;
	line-height: 1;
	pointer-events: none;
	margin: -11px 0 0 -11px;
	animation: oo-konfeti 1.1s ease-out forwards;
}
@keyframes oo-konfeti {
	0% { transform: translate(0, 0) scale(0.5); opacity: 1; }
	80% { opacity: 1; }
	100% { transform: translate(var(--kx), var(--ky)) scale(1.15) rotate(25deg); opacity: 0; }
}

/* SÜRÜKLE-BIRAK */
.oonda .oonda-surukle { cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; border: 3px dashed var(--oo-cizgi); border-radius: 16px; background: #fff; }
.oonda .oonda-surukle:active { cursor: grabbing; }
.oonda .oonda-gizli { opacity: 0.25; }
.oonda .oonda-suruk {
	position: fixed;
	z-index: 100002;
	pointer-events: none;
	margin: 0;
	background: #fff;
	border: 3px solid var(--oo-ana);
	border-radius: 16px;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.3);
	transform: rotate(-3deg) scale(1.04);
	opacity: 0.96;
}
.oonda .oonda-kutu-btn.oonda-hedef { border-color: var(--oo-vurgu); background: #fffbeb; transform: scale(1.05); box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.3); }
.oonda .oonda-oge.oonda-oge-dogru { border-color: var(--oo-dogru); background: var(--oo-dogru-bg); }
.oonda .oonda-oge.oonda-oge-yanlis { border-color: var(--oo-yanlis); background: var(--oo-yanlis-bg); }
.oonda .oonda-oge { padding: 0.8em 0.6em; margin-bottom: 0.7em; }

/* SINAV */
.oonda .oonda-sec-btn.oonda-secili-sec { border-color: var(--oo-ana); background: #eff6ff; box-shadow: 0 0 0 3px rgba(29, 78, 216, 0.18); }
.oonda .oonda-sec-btn.oonda-secili-sec .oonda-harf { background: var(--oo-ana); color: #fff; }
.oonda-sonuc-buyuk { text-align: center; font-size: 1.15em; }
.oonda-sonuc-buyuk strong { display: block; font-size: 1.6em; color: var(--oo-ana-koyu); margin-bottom: 0.2em; }
.oonda-soru-alan > .oonda-altsekme { margin-bottom: 0.8em; }
.oonda-detay { margin-bottom: 0.6em; }

/* ANİMASYONLU SANAL DENEY (SVG) */
.oonda-sahne { overflow: hidden; }
.oonda-sc { width: 100%; max-width: 500px; height: auto; display: block; margin: 0 auto; }
.oonda-sc .p { will-change: transform; }

.oonda-sc .doldur, .oonda-sc .bosalt { transform-box: fill-box; transform-origin: 50% 100%; }
.oonda-sc .doldur { transform: scaleY(0); }
.oonda-sc .damla { opacity: 0; }
.oonda-sc .katman { opacity: 0; }
.oonda-sc .saat { transform-box: fill-box; transform-origin: center; }

.oonda-sc.oyna .sall { animation: oo-shake 0.16s linear 0s 12 both; }
.oonda-sc.oyna .dus { animation: oo-fall 0.8s cubic-bezier(0.4, 0, 1, 1) 0s 1 both; }
.oonda-sc.oyna .dus-yavas { animation: oo-fall 1.6s ease-in-out 0s 1 both; }
.oonda-sc.oyna .doldur { animation: oo-doldur 2.4s ease-out 0s 1 both; }
.oonda-sc.oyna .bosalt { animation: oo-bosalt 2.2s ease-in 0s 1 both; }
.oonda-sc.oyna .damla { animation: oo-damla 0.55s ease-in 0s 1 both; }
.oonda-sc.oyna .yuksel { animation: oo-yuksel 2s ease-out 0s 1 both; }
.oonda-sc.oyna .katman { animation: oo-katman 0.8s ease-out 0s 1 both; }
.oonda-sc.oyna .cek { animation: oo-cek 3.2s ease-in-out 0s 1 both; }
.oonda-sc.oyna .mik { animation: oo-mik 3.2s ease-in-out 0s 1 both; }
.oonda-sc.oyna .saat { animation: oo-saat 3.4s ease-in-out 0s 1 both; }

/* animasyon bittikten sonra sahne son hâliyle durur (yeniden çizimde tekrar oynamaz) */
.oonda-sc.bitti .p { animation-duration: 0.001s !important; animation-delay: 0s !important; animation-iteration-count: 1 !important; }
.oonda-sc.bitti .sall { animation: none !important; }

@keyframes oo-shake { 0% { transform: translateX(-4px); } 50% { transform: translateX(4px); } 100% { transform: translateX(-4px); } }
@keyframes oo-fall { from { transform: translate(0, 0); } to { transform: translate(var(--dx, 0px), var(--dy, 0px)); } }
@keyframes oo-doldur { from { transform: scaleY(0); } to { transform: scaleY(1); } }
@keyframes oo-bosalt { from { transform: scaleY(1); } to { transform: scaleY(0); } }
@keyframes oo-damla {
	0% { transform: translate(0, 0); opacity: 0; }
	12% { opacity: 1; }
	80% { transform: translate(var(--dx, 0px), var(--dy, 30px)); opacity: 1; }
	100% { transform: translate(var(--dx, 0px), var(--dy, 30px)); opacity: 0; }
}
@keyframes oo-yuksel {
	0% { transform: translate(0, 0); opacity: 1; }
	82% { transform: translate(var(--dx, 0px), var(--dy, 0px)); opacity: 1; }
	100% { transform: translate(var(--dx, 0px), var(--dy, 0px)); opacity: 0; }
}
@keyframes oo-katman { from { opacity: 0; } to { opacity: 0.9; } }
@keyframes oo-mik {
	0% { transform: translateY(0); }
	30% { transform: translateY(var(--D, 114px)); }
	65% { transform: translateY(var(--D, 114px)); }
	100% { transform: translateY(0); }
}
@keyframes oo-cek {
	0%, 32% { transform: translate(0, 0); }
	42% { transform: translate(var(--dx, 0px), var(--dy1, 0px)); }
	65% { transform: translate(var(--dx, 0px), var(--dy1, 0px)); }
	100% { transform: translate(var(--dx, 0px), var(--dy2, 0px)); }
}
@keyframes oo-saat { from { transform: rotate(0deg); } to { transform: rotate(180deg); } }

@media (max-width: 600px) {
	.oonda-ust-sag { min-width: 100%; flex-direction: row; flex-wrap: wrap; align-items: center; }
	.oonda-ust-sag .oonda-xpkutu { flex: 1 1 200px; }
	.oonda-ust-sag .oonda-btn-hafif { align-self: center; flex: 0 0 auto; min-height: 42px; padding: 0.4em 0.8em; }
	.oonda-karisim-liste { grid-template-columns: repeat(2, 1fr); }
	.oonda .oonda-karisim { min-height: 96px; }
}
@media (prefers-reduced-motion: reduce) {
	.oonda-sc.oyna .p { animation-duration: 0.001s !important; animation-delay: 0s !important; }
	.oonda-sc.oyna .sall { animation: none !important; }
	.oonda-toast { animation: none; }
	.oonda-xp-dolu { transition: none; }
}

.oonda .oonda-suruk .oonda-oge-emoji { font-size: 2.6em; }
.oonda .oonda-suruk .oonda-oge-ad { font-size: 1.05em; }
.oonda .oonda-suruk { padding: 0.4em; }

/* =====================================================================
 * 0.3.0 - ÖĞRETMEN ARAÇLARI: TAHTA SUNUMU, ÇALIŞMA YAPRAĞI, ÖDEV
 * ===================================================================== */

/* ders listesinde "Tahtada anlat" düğmesi */
.oonda-satir { display: flex; gap: 0.6em; align-items: stretch; flex-wrap: wrap; }
.oonda-satir .oonda-ders { flex: 1 1 320px; width: auto; }
.oonda .oonda-sunum-dugme { align-self: center; white-space: nowrap; }
.oonda-liste > .oonda-sunum-dugme { align-self: flex-start; }
.oonda a.oonda-btn-baglanti { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; color: inherit; }
.oonda a.oonda-btn-ana.oonda-btn-baglanti { color: #fff; }

/* GİRDİLER */
.oonda .oonda-girdi {
	width: 100%;
	font: inherit;
	border: 2px solid var(--oo-cizgi);
	border-radius: 10px;
	padding: 0.5em 0.7em;
	background: #fff;
	color: var(--oo-yazi);
	min-height: 44px;
}
.oonda .oonda-girdi:focus-visible { outline: 3px solid var(--oo-vurgu); outline-offset: 2px; }
.oonda .oonda-etiket { display: block; font-weight: 600; margin: 0.6em 0; }
.oonda .oonda-etiket .oonda-girdi { margin-top: 0.25em; font-weight: 400; }

/* ÖĞRETMEN KÖŞESİ */
.oonda-ogr-kutu { background: var(--oo-kart); border: 1px solid var(--oo-cizgi); border-radius: 14px; padding: 1em 1.1em; margin: 0.9em 0; }
.oonda-ogr-liste { max-height: 360px; overflow: auto; border: 1px solid var(--oo-cizgi); border-radius: 10px; background: #fff; }
.oonda .oonda-ogr-satir { display: flex; align-items: flex-start; gap: 0.6em; padding: 0.5em 0.7em; border-bottom: 1px solid var(--oo-cizgi); cursor: pointer; font-weight: 400; }
.oonda .oonda-ogr-satir:hover { background: #f1f5f9; }
.oonda .oonda-ogr-satir input { width: 1.3em; height: 1.3em; margin-top: 0.15em; flex: 0 0 auto; }
.oonda-ogr-soru { flex: 1; }
.oonda-odev-sonuc-kutu { margin-top: 0.8em; }

/* ÖĞRENCİ ÖDEV EKRANI */
.oonda-odev-ust { background: #fffbeb; border: 2px solid var(--oo-vurgu); border-radius: 14px; padding: 0.9em 1.1em; margin-bottom: 1em; }
.oonda-odev-b { font-size: 1.35em; font-weight: 700; color: #92400e; margin-bottom: 0.3em; }
.oonda-odev-alt { margin-top: 0.8em; }
.oonda-odev-sonuclar { list-style: none; padding: 0; margin: 0.8em 0; }
.oonda-odev-sonuclar li { padding: 0.45em 0.7em; border-radius: 8px; margin-bottom: 0.35em; }
.oonda-odev-dogru { background: var(--oo-dogru-bg); }
.oonda-odev-yanlis { background: var(--oo-yanlis-bg); }

/* TAHTA SUNUMU (tam ekran) */
.oonda.oonda-sunum {
	position: fixed;
	inset: 0;
	z-index: 2147483000;
	display: flex;
	flex-direction: column;
	max-width: none;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: linear-gradient(135deg, #172554, #1d4ed8);
	color: #fff;
	font-size: clamp(22px, 2.5vw, 46px);
	line-height: 1.4;
}
.oonda-sunum .oonda-sn-ust { display: flex; flex-wrap: wrap; align-items: center; gap: 0.6em; padding: 0.5em 1em; background: rgba(0, 0, 0, 0.25); font-size: 0.7em; }
.oonda-sn-baslik { font-weight: 700; flex: 1 1 auto; min-width: 8em; }
.oonda-sn-no { opacity: 0.85; }
.oonda-sn-sayac { font-weight: 700; font-variant-numeric: tabular-nums; min-width: 4.5em; text-align: center; border-radius: 999px; padding: 0 0.6em; }
.oonda-sn-aktif { background: rgba(255, 255, 255, 0.2); }
.oonda-sn-bitti { background: #dc2626; animation: oo-sn-yan 0.6s ease-in-out infinite alternate; }
@keyframes oo-sn-yan { from { opacity: 1; } to { opacity: 0.45; } }
.oonda-sunum .oonda-sn-menu { display: flex; gap: 0.4em; padding: 0.4em 1em; background: rgba(0, 0, 0, 0.35); font-size: 0.7em; }
.oonda-sunum .oonda-sn-menu[hidden] { display: none; }
.oonda-sunum .oonda-sn-govde { flex: 1 1 auto; overflow: auto; padding: 1.2vw 5vw; display: flex; }
.oonda-sn-slayt { margin: auto; width: 100%; max-width: 1500px; }
.oonda-sn-slayt.oonda-sn-orta { text-align: center; }
.oonda-sn-slayt h1 { font-size: 2.1em; margin: 0.2em 0; color: #fff; line-height: 1.2; }
.oonda-sn-slayt h2 { font-size: 1.5em; margin: 0.2em 0 0.5em; color: #fff; line-height: 1.3; }
.oonda-sn-slayt p, .oonda-sn-slayt li { color: #fff; }
.oonda-sn-dev { font-size: 3.6em; line-height: 1.15; }
.oonda-sn-numara { font-size: 3.4em; font-weight: 800; color: var(--oo-vurgu); line-height: 1.1; }
.oonda-sn-metin { font-size: 1.05em; margin: 0 0 0.5em; }
.oonda-sn-alt-metin { font-size: 1.2em; opacity: 0.95; }
.oonda-sn-etiket { font-size: 0.85em; opacity: 0.9; margin-bottom: 0.2em; }
.oonda-sn-kucuk { font-size: 0.62em; opacity: 0.85; display: block; }
.oonda-sn-kod { display: inline-block; background: rgba(255, 255, 255, 0.2); border-radius: 999px; padding: 0 0.7em; font-size: 0.65em; font-weight: 700; margin-bottom: 0.4em; }
.oonda-sn-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(10em, 1fr)); gap: 0.5em; margin: 0.6em 0; }
.oonda-sn-kart { background: #fff; color: #0f172a; border-radius: 0.5em; padding: 0.4em 0.6em; display: flex; flex-direction: column; gap: 0.1em; }
.oonda-sunum .oonda-sn-kart strong, .oonda-sunum .oonda-sn-kart .oonda-sn-kucuk { color: #0f172a; }
.oonda-sn-emoji { font-size: 1.5em; line-height: 1.1; }
.oonda-sn-uyari { background: #fef3c7; color: #78350f; border-radius: 0.5em; padding: 0.4em 0.7em; margin-top: 0.5em; font-size: 0.8em; }
.oonda-sn-kategoriler { display: flex; flex-wrap: wrap; gap: 0.5em; justify-content: center; margin: 0.7em 0; }
.oonda-sn-kutu { background: rgba(255, 255, 255, 0.14); border: 3px solid rgba(255, 255, 255, 0.35); border-radius: 0.6em; padding: 0.3em 0.9em; display: flex; flex-direction: column; align-items: center; min-width: 5.5em; }
.oonda-sn-secenekler { display: flex; flex-direction: column; gap: 0.4em; margin: 0.6em 0; }
.oonda-sn-sec { background: rgba(255, 255, 255, 0.14); border: 3px solid rgba(255, 255, 255, 0.35); border-radius: 0.6em; padding: 0.3em 0.7em; display: flex; align-items: center; gap: 0.6em; }
.oonda-sn-harf { flex: 0 0 auto; width: 1.6em; height: 1.6em; border-radius: 50%; background: #fff; color: #1e3a8a; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; }
.oonda-sn-dogru { background: #16a34a !important; border-color: #bbf7d0 !important; }
.oonda-sn-soluk { opacity: 0.45; }
/* Tahta sunumunda dokunulabilir seçenekler (0.118.2) */
.oonda-sn-sec.oonda-sn-tikla, .oonda-sn-kutu.oonda-sn-tikla { font: inherit; color: inherit; text-align: left; cursor: pointer; appearance: none; -webkit-appearance: none; transition: transform 0.12s ease, background 0.12s ease; }
.oonda-sn-sec.oonda-sn-tikla { width: 100%; }
.oonda-sn-kutu.oonda-sn-tikla { justify-content: center; text-align: center; }
.oonda-sn-tikla:hover { background: rgba(255, 255, 255, 0.3); transform: translateY(-2px); }
.oonda-sn-tikla:focus-visible { outline: 4px solid #ffd54a; outline-offset: 2px; }
.oonda-sn-yanlis { background: #dc2626 !important; border-color: #fecaca !important; opacity: 1 !important; }
.oonda-sn-geri { font-weight: 800; font-size: 1em; margin: 0.4em 0 0; }
.oonda-sn-geri-dogru { color: #bbf7d0; }
.oonda-sn-geri-yanlis { color: #fecaca; }
.oonda-sn-tam { white-space: nowrap; }

/* Tahta araç çubuğu: ders, soru ve atölye ekranlarında her zaman erişilir (0.118.2) */
.oonda .oonda-dock { position: fixed; right: 14px; bottom: 14px; z-index: 60; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; max-width: calc(100vw - 28px); pointer-events: none; }
.oonda .oonda-dock-btn { pointer-events: auto; min-height: 44px; padding: 8px 16px; border-radius: 999px; border: 2px solid #7c3aed; background: #fff; color: #5b21b6; font-weight: 800; font-size: 14px; line-height: 1.1; letter-spacing: 0; cursor: pointer; box-shadow: 0 6px 18px rgba(76, 29, 149, 0.28); }
.oonda .oonda-dock-btn:hover { background: #f5f0ff; }
.oonda .oonda-dock-btn[aria-pressed="true"], .oonda .oonda-dock-sunum { background: linear-gradient(110deg, #7c29f5, #a653ff); border-color: #6d28d9; color: #fff; }
.oonda .oonda-dock-btn:focus-visible { outline: 4px solid #ffd54a; outline-offset: 2px; }
.oonda.oonda-tahta .oonda-dock-btn { min-height: 56px; font-size: 18px; padding: 10px 22px; }
.oonda .oonda-dock-btn { display: inline-flex; align-items: center; gap: 8px; font-family: 'Nunito', 'Segoe UI', system-ui, sans-serif !important; letter-spacing: 0 !important; }
.oonda .oonda-dock-ikon { font-size: 1.15em; }
@media (max-width: 720px) {
	/* Telefonda yalnızca simge: içeriği kapatmaz, parmakla kolay basılır */
	.oonda .oonda-dock { right: 8px; bottom: 82px; flex-direction: column; align-items: flex-end; flex-wrap: nowrap; }
	.oonda .oonda-dock-btn { width: 48px; height: 48px; min-height: 48px; padding: 0; justify-content: center; }
	.oonda .oonda-dock-etiket { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.oonda .oonda-dock-ikon { font-size: 22px; }
}
#oonda-kok:fullscreen { overflow: auto; background: #f6f3ff; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 12px; box-sizing: border-box; }
#oonda-kok:-webkit-full-screen { overflow: auto; background: #f6f3ff; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 12px; box-sizing: border-box; }

/* Ortaokul / Lise: yakında penceresi (0.118.2) */
.oonda .oonda-sinif-chip.oonda-yakinda { display: inline-flex; align-items: center; gap: 6px; opacity: 0.85; border-style: dashed; }
.oonda .oonda-yakinda-rozet { font-size: 0.68em; font-weight: 800; background: #fff3ce; color: #7a4b00; border-radius: 999px; padding: 2px 7px; }
.oonda .oonda-yakinda-kaplama { position: fixed; inset: 0; z-index: 2147482000; background: rgba(30, 20, 70, 0.55); display: flex; align-items: center; justify-content: center; padding: 16px; }
.oonda .oonda-yakinda-kutu { background: #fff; color: #24165d; border-radius: 22px; padding: 26px 28px; max-width: 420px; width: 100%; text-align: center; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35); }
.oonda .oonda-yakinda-emoji { font-size: 54px; line-height: 1; }
.oonda .oonda-yakinda-kutu h3 { margin: 8px 0 4px; font-size: 26px; }
.oonda .oonda-yakinda-ana { font-weight: 800; font-size: 18px; color: #6d28d9; margin: 0 0 8px; }
.oonda .oonda-yakinda-alt { margin: 0 0 16px; font-size: 14px; color: #5a5280; }
@media print { .oonda .oonda-dock, .oonda .oonda-yakinda-kaplama { display: none !important; } }
.oonda-sn-aciklama { background: rgba(0, 0, 0, 0.25); border-radius: 0.5em; padding: 0.4em 0.7em; margin-top: 0.5em; font-size: 0.85em; }
.oonda-sn-adimlar { margin: 0.5em 0 0 1.2em; padding: 0; font-size: 0.85em; }
.oonda-sn-adimlar li { margin-bottom: 0.25em; }
.oonda-sn-cevap { font-weight: 800; font-size: 1.05em; margin-top: 0.4em; }
.oonda-sn-liste { list-style: none; padding: 0; font-size: 0.95em; }
.oonda-sn-tablo { background: #fff; border-radius: 0.5em; padding: 0.3em; margin: 0.4em 0; font-size: 0.8em; color: #0f172a; }
.oonda-sn-tablo .oonda-tablo th, .oonda-sn-tablo .oonda-tablo td { color: #0f172a; }
.oonda-sunum .oonda-sn-alt { display: flex; align-items: center; justify-content: space-between; gap: 0.6em; padding: 0.55em 1em; background: rgba(0, 0, 0, 0.25); font-size: 0.8em; }
.oonda-sn-ipucu { opacity: 0.65; font-size: 0.6em; text-align: center; flex: 1; }
.oonda .oonda-sn-btn { min-height: 2.4em; border-radius: 0.6em; border: 2px solid rgba(255, 255, 255, 0.6); background: rgba(255, 255, 255, 0.12); color: #fff; padding: 0.2em 1em; font-weight: 700; font-size: inherit; }
.oonda .oonda-sn-btn:hover:not(:disabled) { background: rgba(255, 255, 255, 0.28); }
.oonda .oonda-sn-btn.oonda-sn-ana { background: #f59e0b; border-color: #f59e0b; color: #1c1917; }
.oonda .oonda-sn-btn.oonda-sn-ana:hover { background: #fbbf24; }
.oonda-sunum .oonda-sn-ust .oonda-sn-btn { font-size: 1em; min-height: 2.2em; }

/* ÇALIŞMA YAPRAĞI: ekranda gizli, yalnızca yazdırırken görünür */
.oonda-yz { display: none; }

@media print {
	body.oonda-yazdiriyor > *:not(.oonda-yz) { display: none !important; }
	body.oonda-yazdiriyor { background: #fff !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; }
	body.oonda-yazdiriyor .oonda-yz {
		display: block;
		color: #000;
		background: #fff;
		font: 11pt/1.4 "Segoe UI", "Helvetica Neue", Arial, sans-serif;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
	.oonda-yz * { box-sizing: border-box; }
	.oonda-yz-t { width: 100%; border-collapse: collapse; }
	.oonda-yz-t > thead > tr > td, .oonda-yz-t > tbody > tr > td, .oonda-yz-t > tfoot > tr > td { padding: 0; border: 0; }
	.oonda-yz-marka { font-size: 9pt; color: #1e3a8a; border-bottom: 1.5px solid #1e3a8a; padding-bottom: 1.5mm; margin-bottom: 3mm; }
	.oonda-yz-alt { font-size: 8pt; color: #475569; border-top: 1px solid #94a3b8; padding-top: 1.5mm; margin-top: 2mm; text-align: center; }
	.oonda-yz-alt a { color: #1d4ed8; text-decoration: none; }
	.oonda-yz-yeni { break-before: page; page-break-before: always; }
	.oonda-yz-sb { margin-bottom: 2mm; }
	.oonda-yz-sb-b { font-size: 16pt; font-weight: 700; color: #1e3a8a; line-height: 1.2; }
	.oonda-yz-sb-a { font-size: 10pt; color: #475569; }
	.oonda-yz-kimlik { display: flex; flex-wrap: nowrap; gap: 6mm; font-size: 10.5pt; margin: 3.5mm 0 3.5mm; }
	.oonda-yz-kimlik span { display: flex; align-items: flex-end; gap: 1.5mm; white-space: nowrap; }
	.oonda-yz-kimlik i { display: block; flex: 1 1 auto; min-width: 8mm; border-bottom: 1px solid #000; height: 1.1em; }
	.oonda-yz-k3 { flex: 3 1 0; }
	.oonda-yz-k2 { flex: 2 1 0; }
	.oonda-yz-k1 { flex: 1.3 1 0; }
	.oonda-yz-kazanim { font-size: 8.5pt; line-height: 1.3; border: 1px solid #cbd5e1; border-radius: 2mm; padding: 1.5mm 3mm; margin-bottom: 2.5mm; background: #f8fafc; }
	.oonda-yz-yonerge { font-size: 10pt; font-style: italic; margin: 1mm 0 3.5mm; }
	.oonda-yz-soru { display: flex; gap: 3mm; margin-bottom: 4.2mm; break-inside: avoid; page-break-inside: avoid; }
	.oonda-yz-no { flex: 0 0 7.5mm; height: 7.5mm; border: 1.5px solid #1e3a8a; border-radius: 50%; text-align: center; font-weight: 700; line-height: 6mm; color: #1e3a8a; }
	.oonda-yz-ic { flex: 1; }
	.oonda-yz-m { margin: 0 0 1.5mm; font-weight: 600; font-size: 11pt; }
	.oonda-yz-sec.oonda-yz-yan { display: flex; flex-wrap: wrap; gap: 1mm 9mm; }
	.oonda-yz-s { margin: 0.5mm 0; font-size: 10.5pt; }
	.oonda-yz-tablo { border-collapse: collapse; width: 100%; margin: 2mm 0 3mm; font-size: 10pt; }
	.oonda-yz-tablo th, .oonda-yz-tablo td { border: 1px solid #475569; padding: 1.5mm 2mm; text-align: left; vertical-align: top; }
	.oonda-yz-tablo th { background: #e0e7ff; color: #1e3a8a; }
	.oonda-yz-gozlem td { height: 14mm; }
	.oonda-yz-cizelge-t td { height: 13.5mm; text-align: center; }
	.oonda-yz-cizelge-t td:first-child { text-align: left; font-weight: 600; }
	.oonda-yz-cizelge-t th { text-align: center; }
	.oonda-yz-cizelge-t th:first-child { text-align: left; }
	.oonda-yz-etiket { font-weight: 700; color: #1e3a8a; font-size: 10.5pt; margin: 0 0 0.5mm; }
	.oonda-yz-bosluk { margin-top: 6mm; font-size: 12pt; }
	.oonda-yz-alan { margin-bottom: 3mm; break-inside: avoid; page-break-inside: avoid; }
	.oonda-yz-cizgi { border-bottom: 1px solid #94a3b8; height: 9mm; }
	.oonda-yz-iki { display: grid; grid-template-columns: 1fr 1fr; gap: 6mm; }
	.oonda-yz-imza { margin-top: 5mm; font-size: 10.5pt; display: flex; flex-wrap: nowrap; gap: 8mm; }
	.oonda-yz-imza span { display: flex; align-items: flex-end; gap: 1.5mm; white-space: nowrap; flex: 1 1 0; }
	.oonda-yz-imza i { display: block; flex: 1 1 auto; border-bottom: 1px solid #000; height: 1.1em; min-width: 20mm; }
	.oonda-yz-deger { margin-top: 3mm; border: 1px solid #94a3b8; border-radius: 2mm; padding: 1.5mm 4mm 1.5mm; break-inside: avoid; page-break-inside: avoid; }
	.oonda-yz-deger .oonda-yz-etiket { margin-bottom: 1mm; }
	.oonda-yz-dr { display: flex; gap: 8mm; font-size: 10.5pt; margin: 0 0 2.6mm; }
	.oonda-yz-dr span { display: flex; align-items: flex-end; gap: 1.5mm; white-space: nowrap; flex: 1 1 0; }
	.oonda-yz-dr i { display: block; flex: 1 1 auto; border-bottom: 1px solid #000; height: 1.1em; min-width: 10mm; }
	.oonda-yz-cozum { font-size: 9.5pt; margin-bottom: 3mm; break-inside: avoid; page-break-inside: avoid; }
	.oonda-yz-cozum ol { margin: 1mm 0 0 5mm; padding: 0; }
	.oonda-yz-rapor .oonda-yz-cizgi { height: 9mm; }
}

@media (max-width: 600px) {
	.oonda-satir .oonda-ders { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.oonda-sn-bitti { animation: none; }
}

/* Sunum: soru + çözüm yan yana (geniş tahta) */
.oonda-sn-slayt.oonda-sn-iki { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 2.2vw; align-items: start; }
.oonda-sn-iki h2 { font-size: 1.2em; margin-bottom: 0.35em; }
.oonda-sn-iki .oonda-sn-sec { font-size: 0.82em; padding: 0.2em 0.6em; }
.oonda-sn-sag { background: rgba(0, 0, 0, 0.28); border: 2px solid rgba(255, 255, 255, 0.25); border-radius: 0.7em; padding: 0.5em 0.8em; position: sticky; top: 0; }
.oonda-sn-sag-b { font-weight: 800; font-size: 0.95em; margin-bottom: 0.2em; }
.oonda-sn-sag .oonda-sn-adimlar { font-size: 0.78em; margin-top: 0.2em; }
.oonda-sn-sag .oonda-sn-cevap { font-size: 0.85em; }
@media (max-width: 900px) {
	.oonda-sn-slayt.oonda-sn-iki { grid-template-columns: 1fr; }
	.oonda-sn-sag { position: static; }
}

/* Ödev ekranında küçük başlık */
.oonda-ust.oonda-ust-kompakt { padding: 0.7em 1em; margin-bottom: 0.8em; }
.oonda-ust-kompakt .oonda-baslik { font-size: 1.1em; margin: 0.25em 0 0; }
.oonda-ust-kompakt .oonda-ust-sag { min-width: 180px; }
@media (max-width: 600px) {
	.oonda-ust-kompakt .oonda-ust-sag { min-width: 100%; }
	.oonda-ust-kompakt .oonda-xp-alt { display: none; }
}

/* =====================================================================
 * 0.4.0 - ÇOK ÜNİTE: ünite seçici, ünite kartları, yeni yazdırma tabloları
 * ===================================================================== */
.oonda-unite-bar { display: flex; flex-wrap: wrap; gap: 0.5em; margin: 0.8em 0 0; }
.oonda .oonda-unite-btn {
	flex: 1 1 150px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.05em;
	min-height: 52px;
	text-align: left;
	background: #fff;
	border: 2px solid var(--oo-cizgi);
	border-radius: 12px;
	padding: 0.4em 0.8em;
	position: relative;
}
.oonda .oonda-unite-btn:hover { border-color: var(--oo-ana); }
.oonda .oonda-unite-btn.oonda-aktif { background: #eff6ff; border-color: var(--oo-ana); box-shadow: 0 0 0 3px rgba(29, 78, 216, 0.15); }
.oonda .oonda-unite-btn.oonda-tamam { border-color: var(--oo-dogru); }
.oonda-unite-no { font-size: 0.75em; font-weight: 800; color: var(--oo-ana-koyu); text-transform: uppercase; letter-spacing: 0.03em; }
.oonda-unite-ad { font-size: 0.9em; font-weight: 600; line-height: 1.25; }
.oonda-unite-tik { position: absolute; top: 0.3em; right: 0.5em; color: var(--oo-dogru); font-weight: 800; }
.oonda-unite-kartlar { margin: 0.4em 0 1em; }
.oonda-unite-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 0.7em; }
.oonda .oonda-unite-kart {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.2em;
	text-align: left;
	background: var(--oo-kart);
	border: 2px solid var(--oo-cizgi);
	border-radius: 14px;
	padding: 0.8em 1em;
	min-height: 108px;
}
.oonda .oonda-unite-kart:hover { border-color: var(--oo-ana); }
.oonda .oonda-unite-kart.oonda-aktif { border-color: var(--oo-ana); background: #eff6ff; }

@media (max-width: 600px) {
	.oonda .oonda-unite-btn { flex-basis: calc(50% - 0.5em); }
}
@media print {
	.oonda-yz-akran td { height: 14mm; text-align: center; }
	.oonda-yz-akran td:first-child { text-align: left; }
	.oonda-yz-akran th { text-align: center; }
	.oonda-yz-akran th:first-child { text-align: left; }
	.oonda-yz-akran th:not(:first-child), .oonda-yz-akran td:not(:first-child) { width: 20mm; }
	.oonda-yz-rubrik td { height: 22mm; font-size: 9.5pt; }
	.oonda-yz-rubrik td:first-child { font-weight: 700; width: 26mm; }
	.oonda-yz-rubrik th:last-child, .oonda-yz-rubrik td:last-child { width: 16mm; }
}

/* =====================================================================
 * 0.5.0 - SIRALAMA ETKİNLİĞİ, yaşam döngüsü formu
 * ===================================================================== */
.oonda-sira-slotlar { display: flex; flex-wrap: wrap; gap: 0.6em; list-style: none; padding: 0; margin: 0.7em 0; }
.oonda-sira-slot {
	position: relative;
	flex: 1 1 110px;
	max-width: 190px;
	min-height: 112px;
	border: 3px dashed var(--oo-cizgi);
	border-radius: 14px;
	background: #f8fafc;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.3em 0.4em 0.4em;
}
.oonda-sira-slot.oonda-sira-dolu { border-style: solid; background: #fff; border-color: var(--oo-ana); }
.oonda-sira-no {
	position: absolute;
	top: 0.25em;
	left: 0.4em;
	width: 1.6em;
	height: 1.6em;
	border-radius: 50%;
	background: var(--oo-ana);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	font-size: 0.85em;
}
.oonda-sira-havuz { display: flex; flex-wrap: wrap; gap: 0.6em; margin: 0.8em 0; }
.oonda .oonda-sira-kart {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.15em;
	min-width: 6.5em;
	min-height: 5.5em;
	background: #fff;
	border: 2px solid var(--oo-cizgi);
	border-radius: 12px;
	padding: 0.4em 0.6em;
	font-weight: 700;
	text-align: center;
}
.oonda .oonda-sira-kart:hover:not(:disabled) { border-color: var(--oo-ana); }
.oonda .oonda-sira-slot .oonda-sira-kart { border: 0; background: transparent; min-width: 0; min-height: 0; }
.oonda-sira-emoji { font-size: 2.2em; line-height: 1.1; }
.oonda .oonda-sira-slot.oonda-dogru-kutu { border-color: var(--oo-dogru); background: var(--oo-dogru-bg); }
.oonda .oonda-sira-slot.oonda-yanlis-kutu { border-color: var(--oo-yanlis); background: var(--oo-yanlis-bg); }

@media print {
	.oonda-yz-dongu td { height: 52mm; }
	.oonda-yz-dongu th { text-align: center; }
	.oonda-yz-dongu-ad td { height: 10mm; }
	.oonda-yz-dongu-ad th { display: none; }
}

/* Telefonda ders/soru açıkken başlık küçülür: içerik ilk ekranda görünsün */
@media (max-width: 600px) {
	.oonda.oonda-icerde .oonda-ust { padding: 0.55em 0.8em; margin-bottom: 0.3em; }
	.oonda.oonda-icerde .oonda-chips { display: none; }
	.oonda.oonda-icerde .oonda-baslik { font-size: 1.05em; margin: 0.2em 0 0; }
	.oonda.oonda-icerde .oonda-xp-alt, .oonda.oonda-icerde .oonda-ust-sag .oonda-btn-hafif { display: none; }
	.oonda.oonda-icerde .oonda-xpkutu { padding: 0.35em 0.6em; }
	.oonda.oonda-icerde .oonda-menu { display: none; }
	.oonda.oonda-icerde .oonda-unite-bar { display: none; }
}

/* =====================================================================
 * 0.6.0 - KAVRAM HARİTASI ETKİNLİĞİ
 * ===================================================================== */
.oonda-kavram { display: flex; flex-wrap: wrap; align-items: stretch; gap: 0.5em; margin: 0.8em 0; }
.oonda-kavram-dugum {
	flex: 1 1 150px;
	min-width: 130px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 0.5em;
	background: #fff;
	border: 3px solid var(--oo-ana);
	border-radius: 14px;
	padding: 0.7em 0.6em;
	text-align: center;
}
.oonda-kavram-dugum.oonda-kavram-bos { border-style: dashed; background: #f8fafc; }
.oonda-kavram-ad { font-size: 1.25em; line-height: 1.2; }
.oonda-kavram-soru { color: var(--oo-soluk); font-size: 1.8em; }
.oonda-kavram-secenekler { display: flex; flex-wrap: wrap; gap: 0.3em; justify-content: center; }
.oonda .oonda-chipbtn.oonda-kucuk { min-height: 38px; padding: 0.15em 0.7em; font-size: 0.85em; }
.oonda-kavram-bag { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; max-width: 9em; text-align: center; color: var(--oo-soluk); font-size: 0.8em; }
.oonda-kavram-ok { font-size: 2em; color: var(--oo-ana); line-height: 1; font-weight: 800; }
.oonda .oonda-kavram-dugum.oonda-dogru-kutu { border-color: var(--oo-dogru); background: var(--oo-dogru-bg); }
.oonda .oonda-kavram-dugum.oonda-yanlis-kutu { border-color: var(--oo-yanlis); background: var(--oo-yanlis-bg); }
.oonda-sn-bag { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; font-size: 1.4em; padding: 0 0.15em; }
@media (max-width: 600px) {
	.oonda-kavram { flex-direction: column; }
	.oonda-kavram-bag { flex-direction: row; gap: 0.4em; max-width: none; }
	.oonda-kavram-ok { transform: rotate(90deg); display: inline-block; }
}

/* kavram haritası: sabit kutu ortalı; dikey düzende gereksiz uzamasın */
.oonda-kavram-dugum:not(.oonda-kavram-bos) { justify-content: center; }
@media (max-width: 600px) {
	.oonda-kavram-dugum { flex: 0 0 auto; width: 100%; }
}

/* =====================================================================
 * 0.7.0 - ZENGİN ANLATIM: şemalar, hikâye girişi, biliyor muydun, dikkat,
 * aşama aşama anlatım, çözümlü örnek, ders özeti
 * ===================================================================== */
.oonda-sema { background: #f1f5f9; border: 1px solid #cbd5e1; border-radius: 14px; overflow: hidden; margin: 0.8em auto; max-width: 680px; }
.oonda-sema svg { display: block; width: 100%; height: auto; }
/* yalnızca animasyonlu öğeler kendi sınırlarına göre döner/ölçeklenir; diğerleri SVG'nin kendi koordinatını kullanır */
.oonda-sema-svg [class^="a-"] { transform-box: fill-box; }
.oonda-sema-svg .sema-yazi { font-family: system-ui, "Segoe UI", Arial, sans-serif; font-weight: 800; fill: #ffffff; paint-order: stroke; stroke: rgba(15, 23, 42, 0.7); stroke-width: 4px; stroke-linejoin: round; }

/* Bitmiş (temel) durum; animasyonlar bu duruma doğru oynar */
.a-yokol { opacity: 0; }
.a-dus { opacity: 0; }
.a-parcacik { opacity: 0; }
.a-bat { animation: sema-bat 3.4s ease-out both; }
.a-baloncuk { animation: sema-bal 3s ease-in infinite; }
.a-yosun { transform-origin: 50% 100%; animation: sema-yosun 3s ease-in-out infinite alternate; }
.a-katman { transform-origin: 50% 100%; animation: sema-katman 3s ease-out both; }
.a-dus { animation: sema-dus 1.6s ease-in 3 both; }
.a-yokol { animation: sema-yokol 3s ease-in-out 0.6s both; }
.a-parcacik { animation: sema-parcacik 2.2s ease-out 1 both; }
.a-tasla { animation: sema-tasla 3.4s ease-in-out both; }
.a-iskelet-tas { animation: sema-isk 3.4s ease-in-out both; }
.a-saat { transform-origin: 50% 50%; animation: sema-saat 3.4s ease-in-out 2 both; }
.a-firca { transform-origin: 100% 100%; animation: sema-firca 0.9s ease-in-out infinite alternate; }
.a-parilti { transform-origin: 50% 50%; animation: sema-parilti 1.6s ease-in-out infinite; }
.a-cizgi { animation: sema-cizgi 2.6s ease-out both; }
.a-buyutec { animation: sema-buyutec 2.4s ease-in-out infinite alternate; }

@keyframes sema-bat { from { transform: translate(70px, -120px) rotate(-22deg); } to { transform: translate(0, 0) rotate(0deg); } }
@keyframes sema-bal { from { transform: translateY(0); opacity: 0.9; } to { transform: translateY(-80px); opacity: 0; } }
@keyframes sema-yosun { from { transform: rotate(-4deg); } to { transform: rotate(4deg); } }
@keyframes sema-katman { from { transform: scaleY(0); } to { transform: scaleY(1); } }
@keyframes sema-dus { 0% { opacity: 0; transform: translateY(-30px); } 15% { opacity: 1; } 90% { opacity: 1; } 100% { opacity: 0; transform: translateY(var(--dy, 120px)); } }
@keyframes sema-yokol { from { opacity: 1; } to { opacity: 0; } }
@keyframes sema-parcacik { 0% { opacity: 0.9; transform: translate(0, 0); } 100% { opacity: 0; transform: translate(var(--dx, 20px), var(--dy, -30px)); } }
@keyframes sema-tasla { from { fill: var(--from); } to { fill: var(--to); } }
@keyframes sema-isk { from { stroke: #ffffff; } to { stroke: #4b4037; } }
@keyframes sema-saat { from { transform: rotate(0deg); } to { transform: rotate(180deg); } }
@keyframes sema-firca { from { transform: rotate(-12deg); } to { transform: rotate(10deg); } }
@keyframes sema-parilti { 0%, 100% { opacity: 0.15; transform: scale(0.7); } 50% { opacity: 1; transform: scale(1.2); } }
@keyframes sema-cizgi { from { stroke-dasharray: 0 400; } to { stroke-dasharray: 400 0; } }
@keyframes sema-buyutec { from { transform: translate(0, 0); } to { transform: translate(-22px, -12px); } }

.oonda-sema-durgun *, .oonda-sema-durgun { animation: none !important; }
@media (prefers-reduced-motion: reduce) { .oonda-sema-svg * { animation: none !important; } }

/* Hikâye girişi, biliyor muydun, dikkat */
.oonda-giris { background: #fff7ed; border: 2px solid #fdba74; border-radius: 14px; padding: 0.9em 1.1em; margin: 0.5em 0 0.8em; }
.oonda-giris-etiket { font-weight: 800; color: #9a3412; margin: 0 0 0.3em; }
.oonda-giris-metin { margin: 0.3em 0; line-height: 1.55; }
.oonda-giris-soru { margin: 0.6em 0 0; font-weight: 800; color: var(--oo-ana-koyu); }
.oonda-biliyor, .oonda-dikkat { border-radius: 12px; padding: 0.7em 1em; margin: 0.7em 0; line-height: 1.5; }
.oonda-biliyor { background: #ecfeff; border: 2px solid #67e8f9; }
.oonda-dikkat { background: #fdf2f8; border: 2px solid #f9a8d4; }
.oonda-kutu-baslik { display: block; font-weight: 800; margin-bottom: 0.2em; }
.oonda-biliyor .oonda-kutu-baslik { color: #0e7490; }
.oonda-dikkat .oonda-kutu-baslik { color: #be185d; }

/* Aşama aşama anlatım */
.oonda-asama-noktalar { display: flex; gap: 0.4em; justify-content: center; flex-wrap: wrap; margin: 0.5em 0; }
.oonda .oonda-asama-nokta { width: 2.4em; height: 2.4em; border-radius: 50%; border: 2px solid var(--oo-cizgi); background: #fff; font-weight: 800; padding: 0; min-height: 0; }
.oonda .oonda-asama-nokta.oonda-gorulen { border-color: var(--oo-dogru); background: var(--oo-dogru-bg); }
.oonda .oonda-asama-nokta.oonda-aktif { border-color: var(--oo-ana); background: var(--oo-ana); color: #fff; }
.oonda-asama-kutu { background: #fff; border: 2px solid var(--oo-ana); border-radius: 14px; padding: 0.8em 1em; margin: 0.4em 0; }
.oonda-asama-baslik { display: block; color: var(--oo-ana-koyu); font-size: 1.15em; margin-bottom: 0.25em; }
.oonda-asama-dugmeler { display: flex; flex-wrap: wrap; gap: 0.5em; justify-content: space-between; margin-top: 0.6em; }

/* Çözümlü örnek */
.oonda-cozumlu-soru { background: #eef2ff; border-left: 6px solid var(--oo-ana); border-radius: 10px; padding: 0.7em 1em; margin: 0.6em 0; }
.oonda-cozumlu-soru p { margin: 0.2em 0 0; }
.oonda-cozumlu-adimlar { list-style: none; padding: 0; margin: 0.6em 0; counter-reset: cozum; }
.oonda-cozumlu-adimlar li { counter-increment: cozum; position: relative; background: #fff; border: 1px solid var(--oo-cizgi); border-radius: 12px; padding: 0.6em 1em 0.6em 3em; margin: 0.45em 0; }
.oonda-cozumlu-adimlar li::before { content: counter(cozum); position: absolute; left: 0.8em; top: 0.6em; width: 1.7em; height: 1.7em; border-radius: 50%; background: var(--oo-ana); color: #fff; font-weight: 800; display: flex; align-items: center; justify-content: center; }
.oonda-cozumlu-adimlar li strong { display: block; }
.oonda-cozumlu-sonuc { background: var(--oo-dogru-bg); border: 2px solid var(--oo-dogru); border-radius: 12px; padding: 0.7em 1em; margin: 0.6em 0; font-weight: 700; }

/* Ders özeti */
.oonda-ozet { background: #f0fdf4; border: 2px solid #86efac; border-radius: 14px; padding: 0.9em 1.1em; }
.oonda-ozet ul { margin: 0.4em 0 0.6em 1.1em; padding: 0; }
.oonda-ozet li { margin: 0.35em 0; line-height: 1.5; }
.oonda-ozet-kavramlar { display: flex; flex-wrap: wrap; gap: 0.4em; margin-top: 0.4em; }
.oonda-ozet-kavramlar span { background: #fff; border: 2px solid #86efac; border-radius: 999px; padding: 0.1em 0.8em; font-weight: 700; }

/* Tahta sunumu */
.oonda-sn-sema { max-width: min(760px, 100%); margin: 0.5em auto; }
.oonda-sn-sema svg { max-height: 50vh; }
.oonda-sn-giris, .oonda-sn-biliyor, .oonda-sn-dikkat { border-radius: 14px; padding: 0.6em 1em; margin: 0.6em auto; max-width: 52em; line-height: 1.5; }
.oonda-sn-giris { background: #fff7ed; border: 3px solid #fdba74; }
.oonda-sn-biliyor { background: #ecfeff; border: 3px solid #67e8f9; }
.oonda-sn-dikkat { background: #fdf2f8; border: 3px solid #f9a8d4; }
.oonda-sn-adim { background: #fff; border: 2px solid var(--oo-ana); border-radius: 12px; padding: 0.4em 0.9em; margin: 0.35em auto; max-width: 52em; text-align: left; }

@media (max-width: 600px) {
	.oonda-asama-dugmeler { justify-content: center; }
}

/* Ünite 3 şemaları: maden animasyonları (konum dış kapta, hareket iç kaptadır) */
.a-vagon { animation: sema-vagon 3s ease-out both; }
.a-duman { animation: sema-duman 3s ease-in-out infinite; }
.a-isik { animation: sema-isik 1.6s ease-in-out infinite alternate; }
.a-bant { animation: sema-bant 2.4s linear infinite; }
.a-bobin { transform-origin: 50% 50%; animation: sema-bobin 8s linear infinite; }
@keyframes sema-vagon { from { transform: translateX(-130px); } to { transform: translateX(0); } }
@keyframes sema-duman { 0% { transform: translateY(14px) scale(0.6); opacity: 0; } 40% { opacity: 0.9; } 100% { transform: translateY(-34px) scale(1.4); opacity: 0; } }
@keyframes sema-isik { from { opacity: 0.55; } to { opacity: 1; } }
@keyframes sema-bant { from { transform: translateX(0); } to { transform: translateX(26px); } }
@keyframes sema-bobin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* Ünite 2 şemaları: canlılar (konum dış kapta, hareket iç kaptadır) */
.a-yuzme { animation: sema-yuzme 2.6s ease-in-out infinite alternate; }
.a-titre { animation: sema-titre 0.18s linear infinite alternate; }
.a-salla { transform-origin: 50% 0%; animation: sema-salla 2.4s ease-in-out infinite alternate; }
.a-kanat { transform-origin: 50% 50%; animation: sema-kanat 0.7s ease-in-out infinite alternate; }
.a-zipla { animation: sema-zipla 0.7s ease-in-out infinite alternate; }
.a-buyu { transform-origin: 50% 100%; animation: sema-buyu 1.2s ease-out both; }
.a-kemir { transform-origin: 50% 50%; animation: sema-kemir 0.6s ease-in-out infinite alternate; }
.a-limon { animation: sema-limon 1.6s ease-out both; }
.a-donus { transform-origin: 50% 50%; animation: sema-donus 2.4s ease-in-out infinite alternate; }
.a-kapan { transform-origin: 50% 50%; animation: sema-kapan 2.2s ease-in-out infinite alternate; }
@keyframes sema-yuzme { from { transform: translate(-6px, -4px); } to { transform: translate(6px, 5px); } }
@keyframes sema-titre { from { transform: translateX(-3px); } to { transform: translateX(3px); } }
@keyframes sema-salla { from { transform: rotate(-5deg); } to { transform: rotate(5deg); } }
@keyframes sema-kanat { from { transform: scaleX(1); } to { transform: scaleX(0.4); } }
@keyframes sema-zipla { from { transform: translateY(0); } to { transform: translateY(-9px); } }
@keyframes sema-buyu { from { transform: scaleY(0); } to { transform: scaleY(1); } }
@keyframes sema-kemir { from { transform: rotate(-8deg); } to { transform: rotate(8deg); } }
@keyframes sema-limon { from { transform: translate(120px, -6px); } to { transform: translate(0, 0); } }
@keyframes sema-donus { from { transform: rotate(-10deg); } to { transform: rotate(10deg); } }
@keyframes sema-kapan { from { transform: scaleX(1); } to { transform: scaleX(0.35); } }

/* Ünite 1 şemaları */
.oonda-sema-svg .sema-koyu { font-family: system-ui, "Segoe UI", Arial, sans-serif; font-weight: 800; fill: #0f172a; }
.a-belir { transform-origin: 50% 50%; animation: sema-belir 0.7s ease-out both; }
.a-bobinters { transform-origin: 50% 50%; animation: sema-bobinters 8s linear infinite; }
@keyframes sema-belir { from { opacity: 0; transform: scale(0.6); } to { opacity: 1; transform: scale(1); } }
@keyframes sema-bobinters { from { transform: rotate(0deg); } to { transform: rotate(-360deg); } }

/* Ünite 4 şemaları */
.a-akis { stroke-dasharray: 7 9; animation: sema-akis 0.7s linear infinite; }
.a-bosalt { transform-origin: 50% 100%; animation: sema-bosalt 2.4s ease-in-out both; }
.a-sisme { transform-origin: 50% 100%; animation: sema-sisme 1.6s ease-out both; }
.a-cekil { animation: sema-cekil 1.8s ease-out both; }
@keyframes sema-akis { to { stroke-dashoffset: -32; } }
@keyframes sema-bosalt { from { transform: scaleY(3.2); } to { transform: scaleY(1); } }
@keyframes sema-sisme { from { transform: scale(0.3); } to { transform: scale(1); } }
@keyframes sema-cekil { from { transform: translateY(80px); } to { transform: translateY(0); } }
.a-hizlan { animation: sema-hizlan 2.4s cubic-bezier(0.55, 0, 1, 0.45) both; }
.a-yavasla { animation: sema-yavasla 2.4s cubic-bezier(0, 0.55, 0.45, 1) both; }
.a-don { transform-origin: 50% 50%; animation: sema-don 4s linear infinite; }
.a-sallan { transform-origin: 50% 0%; animation: sema-sallan 2.4s ease-in-out infinite alternate; }
.a-yonlen { animation: sema-yonlen 3.2s linear infinite alternate; }
.a-it { animation: sema-it 1.8s ease-out both; }
.a-cek { animation: sema-cek 1.8s ease-out both; }
.a-ezil { transform-origin: 50% 100%; animation: sema-ezil 1.6s ease-out both; }
.a-uza { transform-origin: 0% 50%; animation: sema-uza 1.6s ease-out both; }
@keyframes sema-hizlan { from { transform: translateX(-300px); } to { transform: translateX(0); } }
@keyframes sema-yavasla { from { transform: translateX(-315px); } to { transform: translateX(0); } }
@keyframes sema-don { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@keyframes sema-sallan { from { transform: rotate(-24deg); } to { transform: rotate(24deg); } }
@keyframes sema-yonlen { from { transform: translateX(-160px); } to { transform: translateX(160px); } }
@keyframes sema-it { from { transform: translateX(-90px); } to { transform: translateX(0); } }
@keyframes sema-cek { from { transform: translateX(90px); } to { transform: translateX(0); } }
@keyframes sema-ezil { from { transform: scaleY(2); } to { transform: scaleY(1); } }
@keyframes sema-uza { from { transform: scaleX(0.45); } to { transform: scaleX(1); } }

/* Maskot animasyonları (Kaşif Tilki) */
.oonda-maskot-svg [class^="a-"] { transform-box: fill-box; }
.a-nefes { transform-origin: 50% 100%; animation: sema-nefes 2.6s ease-in-out infinite alternate; }
.a-sicra { transform-origin: 50% 100%; animation: sema-sicra 0.7s ease-in-out 3 both; }
.a-goz { transform-origin: 50% 50%; animation: sema-goz 4.5s ease-in-out infinite; }
.a-kuyruk { transform-origin: 10% 90%; animation: sema-kuyruk 1.4s ease-in-out infinite alternate; }
.a-selam { transform-origin: 100% 100%; animation: sema-selam 0.55s ease-in-out infinite alternate; }
@keyframes sema-nefes { from { transform: scaleY(1); } to { transform: scaleY(1.025); } }
@keyframes sema-sicra { 0%, 100% { transform: translateY(0) scale(1, 1); } 40% { transform: translateY(-16px) scale(0.97, 1.04); } 70% { transform: translateY(0) scale(1.04, 0.96); } }
@keyframes sema-goz { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(0.1); } }
@keyframes sema-kuyruk { from { transform: rotate(-7deg); } to { transform: rotate(9deg); } }
@keyframes sema-selam { from { transform: rotate(-14deg); } to { transform: rotate(14deg); } }
@media (prefers-reduced-motion: reduce) { .oonda-maskot-svg * { animation: none !important; } }

.oonda-maskot-svg { overflow: visible; }

/* ---------- Matematik: ders seçici, tuş takımı, alıştırma ---------- */
.oonda-sinif-secici { display: flex; flex-wrap: wrap; gap: 0.5em; margin: 0 0 0.6em; }
.oonda-sinif-chip { display: inline-flex; align-items: center; padding: 0.4em 1.2em; border-radius: 999px; border: 2px solid var(--oo-cizgi); background: #fff; color: var(--oo-yazi); font: inherit; font-weight: 800; cursor: pointer; }
.oonda-sinif-chip.oonda-aktif { background: #4f46e5; border-color: #4f46e5; color: #fff; }
.oonda-ders-secici { display: flex; flex-wrap: wrap; gap: 0.5em; margin: 0 0 0.8em; }
.oonda-ders-chip { display: inline-flex; align-items: center; gap: 0.45em; padding: 0.5em 1.1em; border-radius: 999px; border: 2px solid var(--oo-cizgi); background: #fff; color: var(--oo-yazi); font: inherit; font-weight: 700; cursor: pointer; }
.oonda-ders-chip.oonda-aktif { background: var(--oo-ana); border-color: var(--oo-ana); color: #fff; }
.oonda-ders-chip-ikon { font-size: 1.2em; }
.oonda-mat-gorsel { margin: 0.7em 0; text-align: center; }
.oonda-mat-gorsel svg { max-width: 100%; height: auto; max-height: 230px; }
.oonda-mat-ust { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 0.6em; color: var(--oo-soluk); font-weight: 700; }
.oonda-mat-soru { font-size: 1.25em; font-weight: 700; margin: 0.4em 0 0.2em; line-height: 1.4; }
.oonda-sayi-giris { max-width: 330px; margin: 0.8em auto; }
.oonda-sayi-ekran { font-size: 2.4em; font-weight: 800; text-align: center; letter-spacing: 0.12em; min-height: 1.7em; padding: 0.1em 0.3em; border: 3px solid var(--oo-cizgi); border-radius: 16px; background: #fff; color: var(--oo-yazi); }
.oonda-sayi-bos { color: #94a3b8; }
.oonda-tuslar { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.5em; margin-top: 0.6em; }
.oonda-tus { font: inherit; font-size: 1.5em; font-weight: 800; min-height: 58px; padding: 0.4em 0; border-radius: 14px; border: 2px solid var(--oo-cizgi); background: #fff; color: var(--oo-yazi); cursor: pointer; }
.oonda-tus:active { transform: translateY(2px); }
.oonda-tus-tamam { background: var(--oo-dogru); border-color: var(--oo-dogru); color: #fff; }
.oonda-tus-sil { background: #f1f5f9; }
.oonda-mat-geri-kutu { margin-top: 0.8em; padding: 0.8em 1em; border-radius: 14px; border: 2px solid; }
.oonda-mat-dogru { background: var(--oo-dogru-bg); border-color: var(--oo-dogru); }
.oonda-mat-yanlis { background: var(--oo-yanlis-bg); border-color: var(--oo-yanlis); }
.oonda-mat-adimlar { margin: 0.4em 0 0.8em 1.2em; padding: 0; }
.oonda-mat-adimlar li { margin: 0.2em 0; }
.oonda-mat-nasil { font-weight: 700; margin: 0.5em 0 0.2em; }
.oonda-mat-ozet { text-align: center; padding: 1em 0; }
.oonda-sinirsiz-konular { display: flex; flex-wrap: wrap; gap: 0.5em; margin: 0.6em 0 1em; }
.oonda-mat-secenekler { margin-top: 0.6em; }
@media (max-width: 480px) { .oonda-sayi-ekran { font-size: 2em; } }

/* Sınav Merkezi */
.oonda-sm-kart { background: #fff; border: 2px solid #c7d2fe; border-radius: 16px; padding: 14px 16px; margin: 0 0 14px; }
.oonda-sm-kart h4 { margin: 0 0 6px; }
.oonda-sm-kodlar { flex-wrap: wrap; }
.oonda-sm-kod[disabled] { opacity: 0.5; cursor: not-allowed; }
.oonda-sm-alt { font-size: 0.9em; opacity: 0.85; margin-top: 4px; }
.oonda-sm-oneri { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; margin: 6px 0 12px; }
.oonda-sm-git { text-align: left; white-space: normal; }

/* Sınav kâğıdı (yazdırma) */
@media print {
	.oonda-yz-grup { font-size: 15pt; font-weight: 800; text-align: center; color: #1e3a8a; border: 2px solid #1e3a8a; border-radius: 2mm; padding: 1mm 0; margin: 1mm 0 2mm; letter-spacing: 1mm; }
	.oonda-yz-optik { margin-top: 3mm; border: 1px solid #94a3b8; border-radius: 2mm; padding: 2mm 3mm; break-inside: avoid; page-break-inside: avoid; }
	.oonda-yz-op-izgara { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.8mm 3mm; margin-top: 1.5mm; }
	.oonda-yz-op-h { display: flex; align-items: center; gap: 1.2mm; font-size: 9pt; }
	.oonda-yz-op-h b { min-width: 6mm; }
	.oonda-yz-op { width: 5.2mm; height: 5.2mm; border: 1px solid #1e3a8a; border-radius: 50%; text-align: center; font-size: 7pt; line-height: 4.2mm; color: #1e3a8a; }
	.oonda-yz-anahtar-satir { font-size: 10.5pt; font-weight: 600; margin: 1mm 0 2mm; word-spacing: 1.5mm; }
	.oonda-yz-puan { font-size: 10pt; margin: 0 0 1mm; }
}
.oonda-sk-uyari { color: #b91c1c; font-weight: 600; }

/* Sınav kâğıdı: iki sütun, yetim başlık ve bölünmeyen blok */
@media print {
	.oonda-yz-sutun2 { column-count: 2; column-gap: 9mm; column-rule: 0.3mm solid #cbd5e1; }
	.oonda-yz-sutun2 .oonda-yz-soru { margin-bottom: 4mm; }
	.oonda-yz-sutun2 .oonda-yz-tablo { font-size: 8.5pt; }
	.oonda-yz-sutun2 .oonda-yz-sec.oonda-yz-yan { gap: 1mm 6mm; }
	.oonda-yz-son { break-inside: avoid; page-break-inside: avoid; }
	.oonda-yz-son .oonda-yz-optik { margin-top: 2mm; }
	.oonda-yz-etiket { break-after: avoid; page-break-after: avoid; }
	.oonda-yz-tablo tr { break-inside: avoid; page-break-inside: avoid; }
	.oonda-yz-tablo thead { display: table-header-group; }
}
/* Baskı sınav kâğıdında soru şekilleri (kesir modeli, sayı doğrusu vb.) */
.oonda-yz-ic .oonda-mat-gorsel { text-align: left; margin: 0.3em 0 0.5em; break-inside: avoid; }
.oonda-yz-ic .oonda-mat-gorsel svg { width: auto; max-width: 100%; max-height: 118px; }

/* Yıllık plan ve ders kitabı kutusu */
.oonda-plan { margin-top: 0.6em; background: rgba(255, 255, 255, 0.16); border-radius: 12px; padding: 0.35em 0.9em; color: #fff; font-size: 0.88em; max-width: 46em; }
.oonda-plan-ozet { cursor: pointer; font-weight: 700; padding: 0.25em 0; }
.oonda-plan-ic { padding: 0.2em 0 0.5em; }
.oonda-plan-baslik { margin: 0.6em 0 0.2em; font-weight: 700; }
.oonda-plan-liste { margin: 0.1em 0 0.3em; padding-left: 1.2em; line-height: 1.45; }
.oonda-plan-not { margin: 0.3em 0; opacity: 0.9; font-size: 0.92em; }

/* Erişim (üyelik): kilitli konu / özellik */
.oonda .oonda-unite-btn.oonda-kilitli, .oonda .oonda-unite-kart.oonda-kilitli { opacity: 0.78; border-style: dashed; }
.oonda .oonda-uyelik-dugmeler { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 14px; }
.oonda .oonda-uyelik-dugmeler .oonda-btn { text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
.oonda .oonda-kilit-kutu { text-align: center; padding: 24px 18px; border: 1px dashed #c9b6f2; border-radius: 18px; background: #faf7ff; }
.oonda .oonda-kilit-ikon { font-size: 40px; line-height: 1; }
.oonda .oonda-kilit-kutu h3 { margin: 8px 0 6px; font-size: 20px; color: #3b2a85; }
