/* ═══════════════════════════════════════════════════════════════════
   SINIFIN — öğrencinin kümesi (maket ekran 11).

   kumem.js ile eşleşir. Küme İŞARETİ burada değil, ortak dosyada
   (kume-isareti.css/js) — her ekran aynı işareti çizsin diye.

   RENK: küme ALTIN ailededir (öğretmen kolu), Programım ise mavi.
   İkisi aynı profilde yan yana durur ama karışmaz.

   🔴 Bu dosyada ASLA olmayacaklar:
     • Komşu satırında süre/soru/konu biçimi. Sunucu göndermiyor,
       burada da yeri yok.
     • Sıra numarası, yüzde, rozet. Liste alfabetiktir.
     • Sönük pencereyi kızartan renk. Işığı yanmayan sönüktür, suçlu değil.
   ═══════════════════════════════════════════════════════════════════ */

/* ⏱ ÇAKIŞMA SATIRI — masa şeridinin bir alt satırı (14 Ağu kararı).
   Masa şeridiyle aynı ölçü ve sessizlik; farkı rengin altına kayması:
   bu satır bir DURUM değil, bir ÇAĞRI. Bağırmaz — masadaki tempoyu bozmak
   için değil, "sınıfın da orada" demek için var. */
/* 🔴 16 Ağustos 2026 — BU SATIR KALDIRILDI (#kavusma-serit).
   Masa şeridinin altında ayrı bir küme satırı duruyordu; ikisi de aynı
   soruyu soruyordu ("neredesin?") ve ekranın en değerli yerini iki kez
   kaplıyordu. Üstelik sade ekranda biri susup öbürü konuşuyordu, öğrenci
   "hep öğretmen masasındayım" sanıyordu (canlı test bulgusu).
   Kümenin sözü artık TEK yer şeridine giriyor (kronometre.js → seridiCiz),
   öncelik masanın; masa sustuğunda küme konuşuyor. Stil de oraya taşındı. */

/* ═══ ŞU AN NEREDESİN? — yer değiştirme yaprağı (15 Ağu kararı) ═══
   İki masası birden canlı olan öğrenci, kronometreden çıkmadan yer
   değiştirebilsin diye. Alttan gelen küçük bir yaprak: tam ekran perde
   çalışmayı böler, bu ise yalnız bir soru sorar. */
#yer-secim { position: fixed; inset: 0; z-index: 10070; }
#yer-secim[hidden] { display: none; }
.ys-perde { position: absolute; inset: 0; background: rgba(6, 10, 20, 0.55); }
.ys-ic {
    position: absolute; left: 0; right: 0; bottom: 0;
    max-width: 460px; margin: 0 auto; padding: 18px 16px calc(18px + env(safe-area-inset-bottom));
    background: #0e1524; border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 18px 18px 0 0;
}
.ys-ic h4 { margin: 0 0 4px; font-size: 1.02em; font-weight: 700; color: #e6edf7; }
.ys-ip { margin: 0 0 12px; font-size: 0.78em; color: #8fa2bf; line-height: 1.5; }
.ys-bl {
    font-size: 0.7em; letter-spacing: .5px; text-transform: uppercase;
    color: #8fa2bf; opacity: .75; margin: 12px 0 6px;
}
.ys-sat {
    display: flex; align-items: center; gap: 11px; width: 100%; text-align: left;
    padding: 11px 12px; margin-bottom: 7px; border-radius: 12px; cursor: pointer;
    background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08);
    color: #e6edf7; font-family: inherit; font-size: 0.92em;
}
/* Bulunduğun yer altın çerçeveli — "buradasın" bir durum, seçenek değil. */
.ys-sat.burada { border-color: rgba(212, 175, 106, 0.45); background: rgba(212, 175, 106, 0.08); }
/* PERDE SATIRI (16 Ağu): "Kendi başıma". Noktası içi boş bir halka —
   yanan bir ışık değil, çekilmiş bir perde. */
.ys-sat.yalniz .nk { background: transparent; border: 1px solid rgba(255, 255, 255, 0.3); }
/* SINIF SATIRININ İKİNCİ İŞİ (16 Ağu): gövde yer değiştirir, bu küçük kapı
   odayı açar. Ayrı durur ki hangisinin ne yaptığı dokunmadan belli olsun. */
/* 🔴 31 Ağu — İKİ KAPI YAN YANA DURUNCA (☆ + aç ›) `margin-left:auto`
   yalnız BİRİNCİSİNE yetiyordu: yıldız sağa itiliyor, "aç" onun peşine
   yapışıyor ve yıldız SATIRIN ORTASINDA kalıyordu (canlı prova).
   Doğru çözüm boşluğu adın vermesi: ad genişler, kapılar sağda toplanır
   (kural aşağıda `.ys-sat .ad` tanımında). */
.ys-ac {
    flex: none; font-size: 0.76em; color: #8fa2bf;
    padding: 4px 9px; border-radius: 99px; border: 1px solid rgba(255, 255, 255, 0.12);
}
.ys-ac:hover { color: #e6edf7; border-color: rgba(255, 255, 255, 0.28); }

/* ☆ — geçici masayı kalıcı yapmanın kapısı (31 Ağu · kullanıcı fikri).
   Uğradığın masa listede yalnız orada otururken durur; yıldız onu
   listende bırakır. Altın çerçeve: bir şey KAZANDIRAN düğme. */
.ys-ac.ys-yildiz {
    color: #e8d5a8; border-color: rgba(212, 175, 106, 0.45);
    background: rgba(212, 175, 106, 0.10); font-size: 1.05em; line-height: 1;
}
.ys-ac.ys-yildiz:hover { background: rgba(212, 175, 106, 0.2); color: #f2e3c0; }
/* Dolu yıldız: söz verildi. Karşılık ANINDA görünür, ağ arkadan yetişir. */
.ys-ac.ys-yildiz.dolu {
    color: #f2e3c0; border-color: rgba(212, 175, 106, 0.7);
    background: rgba(212, 175, 106, 0.24);
}
/* Geçici satırın adı sönük değil ama alt yazısı bunu söyler; renk oynamaz
   (oda standardı: kalabalıkla ve durumla parlaklık değişmez). */
/* Kendi ritmin — yer değil ama "neredesin"in parçası. Listenin dibinde,
   sessiz. */
.ys-dip { margin: 12px 2px 0; font-size: 0.76em; color: #8fa2bf; line-height: 1.5; }
.ys-dip b { color: #cbd5e1; font-weight: 600; }
.ys-sat .nk {
    flex: none; width: 8px; height: 8px; border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
}
.ys-sat .nk.canli { background: #7FC79A; box-shadow: 0 0 8px rgba(127, 199, 154, .6); }
.ys-sat .ad {
    display: flex; flex-direction: column; gap: 2px; min-width: 0; font-weight: 600;
    flex: 1;                 /* boşluğu ad verir: kapılar (☆ · aç ›) sağda toplanır */
}
.ys-sat .ad small { font-size: 0.78em; font-weight: 400; color: #8fa2bf; }
.ys-kapat {
    width: 100%; margin-top: 10px; padding: 11px; border-radius: 12px; cursor: pointer;
    background: none; border: 1px solid rgba(255, 255, 255, 0.1);
    color: #8fa2bf; font-family: inherit; font-size: 0.88em;
}

/* ── tam ekran perde ── */
.kmm-perde {
    position: fixed; inset: 0; z-index: 10050;
    background: #0a0e1a;
    background-image:
        radial-gradient(at 0% 0%, hsla(253, 16%, 10%, 1) 0, transparent 50%),
        radial-gradient(at 50% 0%, hsla(225, 39%, 30%, 0.24) 0, transparent 50%),
        radial-gradient(at 100% 0%, hsla(36, 45%, 30%, 0.16) 0, transparent 50%);
    overflow-y: auto; -webkit-overflow-scrolling: touch;
    padding: 22px 18px 40px;
    opacity: 0; visibility: hidden; pointer-events: none;
    transition: opacity 0.18s ease, visibility 0.18s ease;
    color: #e2e8f0;
}
.kmm-perde.acik { opacity: 1; visibility: visible; pointer-events: auto; }
@media (prefers-reduced-motion: reduce) { .kmm-perde { transition: none; } }
.kmm-ic { max-width: 560px; margin: 0 auto; }
@media (min-width: 768px) { .kmm-perde { padding: 30px 26px 60px; } }

/* ── üst bar (Programım ile aynı biçim: iki ekran tek dil konuşsun) ── */
.kmm-ust {
    display: flex; align-items: center; gap: 10px;
    padding-bottom: 11px; margin-bottom: 14px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}
.kmm-ust .yer { flex: 1; min-width: 0; }
.kmm-ust h3 { margin: 0; font-size: 1.05em; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kmm-ust .alt { font-size: 0.65em; color: #5f6b80; letter-spacing: 0.5px; text-transform: uppercase; margin-top: 2px; }
.kmm-yuv {
    flex: 0 0 auto; width: 30px; height: 30px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.1);
    color: #94a3b8; font-size: 0.95em; font-family: inherit; cursor: pointer;
}
.kmm-yuv.sag { margin-left: auto; }

.kmm-iskelet {
    height: 60px; border-radius: 14px; margin-bottom: 10px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.04));
    background-size: 200% 100%; animation: kmm-parla 1.3s linear infinite;
}
@keyframes kmm-parla { from { background-position: 200% 0; } to { background-position: -200% 0; } }
@media (prefers-reduced-motion: reduce) { .kmm-iskelet { animation: none; } }

/* ── küme başı: sembol İÇERİDE yaşar ── */
.kmm-basi {
    position: relative; text-align: center; padding: 16px 12px 14px; margin-bottom: 12px;
    border-radius: 16px; overflow: hidden;
    background: rgba(212, 175, 106, 0.05); border: 1px solid rgba(212, 175, 106, 0.18);
}
.kmm-basi::before {
    content: ""; position: absolute; left: 50%; bottom: -40px; transform: translateX(-50%);
    width: 130px; height: 64px; border-radius: 50%; background: #d4af6a;
    filter: blur(36px); opacity: 0.22;
}
.kmm-basi .isaret { position: relative; margin: 0 auto; }
.kmm-basi .kim { position: relative; font-size: 0.8em; color: #94a3b8; margin-top: 8px; }

/* ── kavuşma geri sayımı ── */
.kmm-sayim {
    text-align: center; padding: 15px 10px; border-radius: 14px; margin-bottom: 10px;
    background: rgba(79, 172, 254, 0.05); border: 1px solid rgba(79, 172, 254, 0.22);
}
.kmm-sayim .buyuk { font-size: 1.75em; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: 1px; }
.kmm-sayim .alt { font-size: 0.78em; color: #94a3b8; margin-top: 4px; line-height: 1.5; }

/* ── komşu ışıkları ── */
.kmm-komsu {
    border-radius: 13px; background: #0b1226; border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 13px 14px 11px; margin-bottom: 10px;
}
.kmm-komsu .bant { position: relative; height: 34px; }
.kmm-komsu .bant i {
    position: absolute; bottom: 0; border-radius: 2px; background: #e8c98a;
    box-shadow: 0 0 8px 1px rgba(232, 201, 138, 0.5);
}
/* Işığı yanmayan pencere: sönük durur, KAYBOLMAZ ve kızarmaz. */
.kmm-komsu .bant i.sonuk { background: #2a3350; box-shadow: none; }
/* Dinlenme ilan edilmiş pencere: sönük DEĞİL, ay ışığında. Perde çekilmiş
   ama ev boş değil — "bugün dinleniyor" sönüklükten ayrı bir hâldir (14 Ağu). */
.kmm-komsu .bant i.ayda { background: #46618a; box-shadow: 0 0 6px 0 rgba(143, 180, 217, 0.28); }
.kmm-komsu .yazi { font-size: 0.78em; color: #94a3b8; margin-top: 10px; line-height: 1.5; }
.kmm-komsu .yazi b { color: #e8d5a8; font-weight: 600; }

.kmm-bl {
    font-size: 0.7em; letter-spacing: 0.7px; text-transform: uppercase;
    color: #5f6b80; margin: 18px 0 8px;
}

/* ── kümedekiler — alfabetik, sırasız ── */
.kmm-satir {
    display: flex; gap: 11px; align-items: center; padding: 11px 2px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.kmm-satir:last-of-type { border-bottom: none; }
.kmm-satir .harf {
    flex: 0 0 32px; height: 32px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 0.85em; font-weight: 700; color: #94a3b8;
}
.kmm-satir .harf.isikli {
    background: rgba(212, 175, 106, 0.14); border-color: rgba(212, 175, 106, 0.4); color: #e8d5a8;
}
.kmm-satir .ic { min-width: 0; flex: 1; }
/* Etiketler dar ekranda alt satıra iner, birbirine girmez (17 Ağu). */
.kmm-satir .ad { font-size: 0.92em; font-weight: 600;
    display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 6px; }
.kmm-satir .alt { font-size: 0.76em; color: #94a3b8; margin-top: 2px;
    display: flex; flex-wrap: wrap; align-items: center; gap: 3px 7px; }
/* ── SINIFIN ÖLÇÜSÜ — hüküm değil, davet (20 Ağu) ─────────────────────
   Masa ekranıyla TEK DİL (masa↔küme denklik kuralı). */
.kmm-olcu { display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    margin: 8px 0 4px; padding: 9px 11px; border-radius: 11px;
    background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.07); }
.kmm-olcu .ic { flex: 1; min-width: 0; font-size: 0.78em; color: #94a3b8; line-height: 1.5; }
.kmm-olcu .ic b { color: #cbd5e1; font-weight: 600; }
.kmm-olcu .ic .sonuk { color: #64748b; }
.kmm-olcu.teklif { border-color: rgba(212, 175, 106, 0.28); background: rgba(212, 175, 106, 0.06); }
.kmm-olcu .al { flex: none; padding: 7px 13px; border-radius: 99px; cursor: pointer;
    font-family: inherit; font-size: 0.76em; font-weight: 600;
    color: #e8d5a8; background: rgba(212, 175, 106, 0.14);
    border: 1px solid rgba(212, 175, 106, 0.4); }
.kmm-cita { display: flex; align-items: center; gap: 9px; margin-top: 12px; font-size: 0.78em; color: #94a3b8; }
.kmm-cita span { flex: 1; min-width: 0; }
.kmm-cita b { min-width: 74px; text-align: center; color: #e8d5a8; font-variant-numeric: tabular-nums; }
.kmm-cita .cita-dug { padding: 6px 11px; border-radius: 99px; cursor: pointer;
    font-family: inherit; font-size: 1em; color: #cbd5e1;
    background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.14); }
.kmm-soz-sil { margin-top: 12px; padding: 0; border: none; background: none; cursor: pointer;
    font-family: inherit; font-size: 0.74em; color: #64748b; text-decoration: underline; }

/* 🌙 DİNLENME AY MAVİSİ (20 Ağu) — üst karttaki dinlenme rengiyle aynı.
   Yokluğun grisiyle karışmaz: dinlenme ilan edilmiş bir hâldir, boşluk değil. */
.kmm-satir .alt .dinlenme { color: var(--ss-dinlenme, #8FB4D9); }
/* 🟢 MOLA — masa ekranıyla aynı yeşil (28 Ağu). Mola çalışmanın parçası;
   ne yokluk (gri) ne ilan edilmiş dinlenme (ay mavisi). */
.kmm-satir .alt .molada { color: var(--ss-var-acik, #9fe0b8); }
.kmm-satir .harf.molada {
    background: rgba(127, 199, 154, 0.12); border-color: rgba(127, 199, 154, 0.38); color: #9fe0b8;
}
.kmm-satir .harf.ayda {
    background: rgba(143, 180, 217, 0.12); border-color: rgba(143, 180, 217, 0.38); color: #8FB4D9;
}
/* NEREDESİN — yalnız kendi satırında; dipteki iki satırın yerine geçti. */
.kmm-satir .alt .yer {
    padding: 1px 8px; border-radius: 99px; font-size: 0.92em; white-space: nowrap;
    color: #8fa2bf; border: 1px solid rgba(255, 255, 255, 0.12);
}
.kmm-satir .alt .yer.burada {
    color: #e8d5a8; border-color: rgba(212, 175, 106, 0.35); background: rgba(212, 175, 106, 0.10);
}
.kmm-gec-mini {
    flex: none; align-self: center; padding: 6px 11px; border-radius: 99px; cursor: pointer;
    font: inherit; font-size: 0.76em; font-weight: 600; white-space: nowrap;
    color: #e8d5a8; background: rgba(212, 175, 106, 0.12);
    border: 1px solid rgba(212, 175, 106, 0.4);
}
.kmm-gec-mini:hover { background: rgba(212, 175, 106, 0.2); }

/* ── kümenin sözü ──
   Çıtayı öğretmen koyar; yüzde YALNIZ kişinin kendisine görünür (kilitli
   mahremiyet kuralı: kimse kimsenin süresini görmez, yüzde de bir süredir). */
.kmm-soz {
    border-radius: 13px; background: #0b1226; border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 12px 14px; margin-bottom: 10px;
}
.kmm-soz .bl {
    font-size: 0.7em; letter-spacing: 0.7px; text-transform: uppercase; color: #5f6b80;
}
.kmm-soz .cumle { font-size: 0.92em; font-weight: 600; margin-top: 4px; }
.kmm-soz .benim { display: flex; align-items: baseline; gap: 6px; margin-top: 9px;
    font-size: 0.78em; color: #94a3b8; }
.kmm-soz .benim b { font-size: 1.5em; color: #e9eef8; font-weight: 700; font-variant-numeric: tabular-nums; }
.kmm-soz .benim .ay { color: #8FB4D9; }

/* Üç gün işareti — uyarı ama SUÇLAMA DEĞİL: kırmızı yok, ay mavisi ailesinden
   sakin bir çerçeve. Dikkat çeker, azarlamaz. Yalnız kişinin kendisi görür. */
.kmm-uyari {
    display: flex; gap: 9px; align-items: flex-start; margin-top: 11px;
    border-radius: 11px; padding: 10px 11px;
    background: rgba(143, 180, 217, 0.07); border: 1px solid rgba(143, 180, 217, 0.3);
}
.kmm-uyari .yazi { flex: 1; font-size: 0.79em; line-height: 1.55; color: #dce6f5; }
.kmm-uyari .kapat {
    flex: none; background: none; border: 0; cursor: pointer; color: #5f6b80;
    font-size: 0.9em; line-height: 1; padding: 1px 3px;
}
.kmm-uyari .kapat:hover { color: #94a3b8; }

.kmm-not { font-size: 0.73em; color: #5f6b80; margin-top: 7px; line-height: 1.5; }

/* Günlerin ÖZETİ — kutu değil düz yazı: dokunulacak bir şey olmadığı
   ilk bakışta belli olsun (masadaki düzenin aynısı, 15 Ağu). */
.kmm-gunozet { margin-top: 11px; padding-top: 10px; border-top: 1px solid rgba(255, 255, 255, 0.07); }
.kmm-gunozet .ust { display: flex; align-items: baseline; justify-content: space-between; gap: 9px; }
.kmm-gunozet .etiket { font-size: 0.72em; letter-spacing: 0.5px; text-transform: uppercase; color: #5f6b80; }
.kmm-gunozet .duzenle {
    flex: none; background: none; border: 0; cursor: pointer; font: inherit; font-size: 0.76em;
    color: #94a3b8; padding: 3px 2px; text-decoration: underline; text-underline-offset: 3px;
    white-space: nowrap;
}
.kmm-gunozet .duzenle:hover { color: #e8d5a8; }
.kmm-gunozet .noktalar { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 6px; }
.kmm-gunozet .noktalar span { font-size: 0.8em; color: #5f6b80; opacity: .5; }
.kmm-gunozet .noktalar span.acik { color: #e8d5a8; opacity: 1; font-weight: 600; }

.kmm-gunduzen { margin-top: 11px; padding-top: 10px; border-top: 1px solid rgba(255, 255, 255, 0.07); }
.kmm-kayit { margin-top: 8px; font-size: 0.76em; color: #7FC79A; }

.kmm-gunler { display: flex; gap: 5px; flex-wrap: wrap; margin-top: 7px; }
.kmm-gunler button {
    flex: 1; min-width: 36px; padding: 7px 3px; font: inherit; font-size: 0.74em;
    border-radius: 9px; cursor: pointer; color: #94a3b8;
    background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.1);
    transition: border-color .18s, background .18s, color .18s;
}
.kmm-gunler button[aria-pressed="true"] {
    border-color: rgba(212, 175, 106, 0.45); background: rgba(212, 175, 106, 0.13); color: #e8d5a8;
}

/* Dinlenme — cezasız işaret, ay ışığı tonunda. Altın YOK: altın çalışmanın
   ve Kyron'un rengi; dinlenme başka bir hâl. */
.kmm-dinlen { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0 4px; }
.kmm-ay {
    flex: 1; min-width: 130px; padding: 10px 12px; font: inherit; font-size: 0.8em; font-weight: 600;
    border-radius: 11px; cursor: pointer; color: #94a3b8;
    background: transparent; border: 1px solid rgba(255, 255, 255, 0.12);
    transition: border-color .18s, background .18s, color .18s;
}
.kmm-ay[aria-pressed="true"] {
    border-color: #8FB4D9; background: rgba(143, 180, 217, 0.14); color: #bcd9f5;
}
.kmm-ay:disabled { opacity: .5; cursor: wait; }

/* Bu hafta: ortak toplam + senin payın (17 Ağu). Masa ekranındakiyle AYNI
   biçim — çubuk yarış değil, pay göstergesidir. */
.kmm-hafta {
    border-radius: 13px; background: #0b1226; border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 12px 14px;
}
.kmm-hafta .sat { display: flex; align-items: baseline; justify-content: space-between; gap: 10px;
    font-size: 0.8em; color: #94a3b8; padding: 3px 0; }
.kmm-hafta .sat b { font-size: 1.15em; color: #e9eef8; font-variant-numeric: tabular-nums; }
.kmm-hafta .sat b i { font-style: normal; font-size: 0.82em; color: #b79a63; }
.kmm-hafta .cubuk { margin-top: 9px; height: 6px; border-radius: 99px;
    background: rgba(255, 255, 255, 0.07); overflow: hidden; }
.kmm-hafta .cubuk i { display: block; height: 100%; border-radius: 99px;
    background: linear-gradient(90deg, #d4af6a, #e8c98a); }

.kmm-mavi {
    border-radius: 12px; padding: 10px 12px; margin: 14px 0 12px;
    font-size: 0.8em; line-height: 1.55; color: #94b8d8;
    background: rgba(79, 172, 254, 0.06); border: 1px solid rgba(79, 172, 254, 0.2);
}
.kmm-mavi b { color: #bcd9f5; font-weight: 600; }

.kmm-bos { text-align: center; padding: 34px 18px; color: #94a3b8; font-size: 0.88em; line-height: 1.7; }

/* 🔴 17 Ağu — DİPTEKİ YER SATIRI VE BÜYÜK "BU SINIFA GEÇ" DÜĞMESİ SÖKÜLDÜ
   (.kmm-yer / .kmm-gec). Aynı soruyu ekranın en uzak yerinde tekrar
   ediyorlardı; cevap da düğme de artık listedeki kendi satırında
   (.kmm-satir .alt .yer + .kmm-gec-mini). Masa ekranıyla tek düzen. */

/* KENDİ SATIRIN (16 Ağu) — listede, herkesle aynı biçimde. "sen" rozeti
   yalnız hangisinin sen olduğunu söyler; sıra yine alfabetik, ayrıcalık yok. */
.kmm-satir.benim .ad { color: #e8d5a8; }
.kmm-satir .ad .sen {
    margin-left: 6px; font-size: 0.74em; font-weight: 600; letter-spacing: .3px;
    color: #b79a63; background: rgba(212, 175, 106, 0.14);
    border: 1px solid rgba(212, 175, 106, 0.3); border-radius: 99px; padding: 1px 7px;
}

/* 🔴 16 Ağu: BÜYÜK SARI "IŞIĞINI YAK" DÜĞMESİ KALDIRILDI (.kmm-dugme).
   Hiçbir şey yapmıyordu — yalnız ekranı kapatıyordu — ama en parlak öğe
   olduğu için ekranın asıl eylemi o sanılıyor, "ışığı yakmak için buraya
   basmalıyım" diye okunuyordu. Işığı yakan sayaçtır.
   Yerine sessiz dönüş kapısı: yol açık, gürültü yok. */
.kmm-don {
    width: 100%; margin-top: 14px; padding: 11px; border-radius: 12px; cursor: pointer;
    background: none; border: 1px solid rgba(255, 255, 255, 0.12);
    color: #cbd5e1; font-family: inherit; font-size: 0.88em;
}
.kmm-don:hover { color: #e6edf7; border-color: rgba(255, 255, 255, 0.28); }

/* Kümeden ayrılma — geri dönülebilir ama sonuçlu bir iş: "başla" düğmesiyle
   eşit ağırlıkta durmasın diye çerçevesiz, sessiz tek satır.
   Masadaki eşi: oda.html → .ayril (aynı ölçü, aynı somon). */
.kmm-ayril {
    display: block; margin: 10px auto 0; padding: 8px 14px;
    background: none; border: 0; cursor: pointer; font: inherit;
    font-size: 0.78em; font-weight: 600; color: #e08a76; opacity: 0.75;
    transition: opacity 0.18s;
}
.kmm-ayril:hover { opacity: 1; text-decoration: underline; text-underline-offset: 3px; }
.kmm-ayril:disabled { opacity: 0.45; cursor: not-allowed; text-decoration: none; }


/* ═══ SINIFIN SALONU (30 Ağustos 2026 · TEK KURGU) ══════════════════════
   "Sınıf, kapalı masa, açık masa — hepsi ortak dilde olsun" (kullanıcı).
   Çizim `salon.css`ten gelir; burada yalnız sınıfa özgü çevresi var.
   🔑 Sınıfta KOLTUK SEÇİLMEZ: ışık nerede çalışırsan yanar, sistem
   yerleştirir. Ortak olan görüntü ve dil, kural değil. */
.kmm-salon { margin: 10px 0 2px; }
/* Sınıfta boş yer TIKLANMAZ: oturulacak bir yer yok. */
.kmm-salon .sln-yer.bos { cursor: default; }
.kmm-salon-alt { text-align: center; font-size: 0.78em; color: #94a3b8; margin-top: 6px; }
.kmm-salon-alt b { color: #cfe0f5; font-weight: 600; }
.kmm-ipucu { text-align: center; font-size: 0.7em; color: #5f6b80; margin-top: 3px; }

.kmm-kisi {
    display: flex; align-items: center; gap: 11px;
    margin-top: 9px; padding-top: 10px; border-top: 1px solid rgba(255, 255, 255, 0.07);
}
.kmm-kisi .harf {
    flex: none; width: 34px; height: 34px; border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-size: 0.9em; font-weight: 700; color: #0B1220; background: var(--ss-var, #7FC79A);
}
.kmm-kisi .harf.molada { background: rgba(127, 199, 154, .42); }
.kmm-kisi .harf.ayda { background: rgba(143, 180, 217, .38); }
.kmm-kisi .ic { flex: 1; min-width: 0; }
.kmm-kisi .ad { display: block; font-size: 0.92em; font-weight: 600; color: #e9eef8; }
.kmm-kisi .ad .sen { font-size: 0.72em; font-weight: 500; color: #5f6b80; }
.kmm-kisi .alt { display: block; font-size: 0.76em; color: #94a3b8; margin-top: 1px; }

.kmm-kendi {
    display: flex; align-items: center; justify-content: center; gap: 9px;
    margin-top: 9px; font-size: 0.74em; color: #5f6b80;
}
