/* Gerçek oyun için küçük eklemeler. Görsel dil masa.css'te. */

/* Yükleniyor: masada daktiloyla yazılan not */
.yukleniyor { display: grid; place-items: center; min-height: 40vh; }
.yukleniyor .not { font-family: var(--typed); background: var(--sheet); color: var(--sheet-ink); padding: 16px 22px; transform: rotate(-1deg); box-shadow: 0 14px 30px -14px rgba(0,0,0,.8); display: flex; gap: 10px; align-items: center; }
.yukleniyor .not i { animation: ds-nabiz 1.1s ease-in-out infinite; color: var(--stamp); }
@keyframes ds-nabiz { 50% { opacity: .25; } }
@media (prefers-reduced-motion: reduce) { .yukleniyor .not i { animation: none; } }
.hata-notu { max-width: 460px; margin: 40px auto; text-align: center; }
.hata-notu .not { font-family: var(--typed); background: var(--sheet); color: var(--sheet-ink); padding: 18px 22px; transform: rotate(.6deg); margin-bottom: 16px; }

/* Portre görseli */
.portrait img.portre { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; }
.who .mini { overflow: hidden; }
.who .mini img { width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }

/* Yakında damgası ve kilitli dosya */
.tfolder .stamp-r.gri { color: #5A5E66; border-color: #5A5E66; }
.tfolder.yakinda .tpaper { filter: grayscale(.55); }

/* Cümle sesleri */
.ses-btn { width: 34px; height: 34px; border-radius: 50%; border: 1px solid #3A4049; background: transparent; color: var(--ink); display: inline-grid; place-items: center; cursor: pointer; flex: none; }
.ses-btn:hover { border-color: var(--marker); color: var(--marker); }
.ses-btn.calar { background: var(--marker); color: #15171A; border-color: var(--marker); }
.statement .ses-btn { justify-self: start; }
.statement .reply .ses-btn { width: 28px; height: 28px; vertical-align: middle; margin-left: 6px; border-color: rgba(0,0,0,.25); color: inherit; }
.st-row { display: flex; gap: 10px; align-items: flex-start; }
.st-row q { flex: 1; }

/* Oyuncu işaretleri */
.doc mark.oy { background: #FBE7A1; color: inherit; padding: 0 2px; cursor: pointer; border-radius: 2px; }
.isaretle-btn { position: fixed; z-index: 45; transform: translate(-50%, -120%); font-family: var(--typed); background: #15171A; color: var(--marker); border: 0; border-radius: 6px; padding: 7px 12px; display: inline-flex; gap: 6px; align-items: center; cursor: pointer; box-shadow: 0 8px 18px -8px rgba(0,0,0,.8); }
.isaret-ipucu { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.linkbtn { background: none; border: 0; padding: 0; color: inherit; text-decoration: underline; cursor: pointer; font: inherit; }

/* Üst bar: siteye dönüş */
.site-link { padding: 0 10px; }
@media (max-width: 560px) { .site-link { display: none; } }

/* Alt bilgi bağlantıları */
.footer .flinks { display: flex; flex-wrap: wrap; gap: 6px 16px; list-style: none; padding: 0; margin: 6px 0 0; }
.footer .flinks a { color: var(--ink-2); }
.yasal-mini { display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: center; margin-top: 30px; font-size: .78rem; }
.yasal-mini a { color: var(--ink-3); }

/* Kayıt formu ek alanları */
.field .help.ok { color: #7CC59A; }
.form-sheet .field .help.ok { color: #1F6B48; }
.yas-notu { font-family: var(--typed); background: rgba(194,59,46,.08); border-left: 3px solid var(--stamp); padding: 10px 12px; font-size: .9rem; }
.check.opt-in span { font-size: .88rem; }

/* Lig formları */
.lig-form { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.lig-form input { flex: 1; min-width: 140px; padding: 10px 12px; border-radius: 6px; border: 1px solid var(--line); background: rgba(255,255,255,.04); color: var(--ink); font: inherit; }

/* Bekleyen düğme */
.btn[aria-busy="true"] { opacity: .65; pointer-events: none; }

/* Boş durum */
.bos { font-family: var(--typed); color: var(--ink-3); padding: 14px 0; }
.clipboard .bos { color: #6A6458; }

/* Profil notları */
.uyari { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: 10px; border: 1px dashed rgba(242,194,48,.5); background: rgba(242,194,48,.07); margin-top: 16px; font-size: .92rem; }
.uyari i { color: var(--marker); font-size: 1.2rem; }

/* Dar ekranda üst bardaki giriş düğmeleri sığsın */
@media (max-width: 480px){ .login-links{gap:6px} .login-links .btn-ghost{display:none} .login-links .btn{padding-inline:12px;white-space:nowrap} }

/* Büyük dosyalar (5 şüpheli, 10-11 delil) ve genel laboratuvar */
.people.iki { grid-template-columns: 1fr 1fr; }
.people.iki.tek-sayi > .person:last-child { grid-column: 1 / -1; justify-self: center; width: calc(50% - 6px); }
@media (min-width: 1000px) {
  .ev-split .ev-list { max-height: calc(100dvh - 150px); overflow-y: auto; overscroll-behavior: contain; padding: 2px 4px 2px 2px; scrollbar-width: thin; }
  .ev-split .ev-list.cok { gap: 6px; }
  .ev-split .ev-list.cok .ev-item { padding: 7px 10px; }
  .ev-split .ev-list.cok .ev-item .tagno { height: 30px; }
}
@media (min-width: 720px) { .who { flex-wrap: wrap; overflow-x: visible; } }
@media (max-width: 719px) { .who { scroll-snap-type: x proximity; scrollbar-width: none; } .who button { scroll-snap-align: start; } }
.node .nl { overflow: hidden; text-overflow: ellipsis; max-width: 20ch; }
.board.kalabalik .node { font-size: .78rem; padding: 5px 10px 5px 5px; gap: 6px; }
.board.kalabalik .node .dotp { width: 24px; height: 24px; font-size: .85rem; }
.board.kalabalik .node.ev .dotp { width: 22px; height: 22px; font-size: .68rem; }
@media (max-width: 600px) {
  .board.kalabalik { height: 640px; }
  .board.kalabalik .node { font-size: .66rem; gap: 4px; padding: 4px 7px 4px 4px; }
  .board.kalabalik .node .nl { max-width: 11ch; }
  .board.kalabalik .node .dotp, .board.kalabalik .node.ev .dotp { width: 20px; height: 20px; font-size: .7rem; }
}
.lab .lab-zemin { width: 100%; height: 100%; object-fit: cover; }
.lab.lab-foto .uv { z-index: 2; }
