/* ============================================================================
   CASE-WORK.CSS — Görevler sekmesi, Dosya Detayı penceresi ve yapay zekâ
   Belge Analizi penceresi (üçü aynı dosya iş akışını paylaşır).
   ============================================================================ */

/* Pencere katmanları: Dosya Detayı (55) ve Belge Analizi (57) açıkken kayıt
   penceresi (#overlay) her zaman en üstte (60) açılır — böylece "+ Görev",
   "+ Hatırlatma", "Düzenle" detay penceresini kapatmadan üstüne biner. */
.cd-overlay{z-index:55;}
.ai-overlay{z-index:57;}
#overlay{z-index:60;}

/* ---------- Ortak küçük öğeler ---------- */
.btn-sm{padding:6px 11px;font-size:12px;border-radius:7px;}
.link-btn{
  background:none;border:none;padding:0;font:inherit;color:var(--gold);cursor:pointer;text-align:left;
}
.link-btn:hover{text-decoration:underline;}
.icon-btn:disabled{cursor:default;opacity:.7;}
.icon-btn.ai-done{color:var(--gold);}
.spin{display:inline-block;animation:cw-spin 1.2s linear infinite;}
@keyframes cw-spin{to{transform:rotate(360deg);}}
@media (prefers-reduced-motion:reduce){.spin{animation:none;}}

/* ---------- E-posta bildirim ayarları (Hatırlatmalar) ---------- */
.notify-status{font-size:12.5px;line-height:1.5;padding:8px 11px;border-radius:8px;background:var(--panel-light);border:1px solid var(--border);color:var(--ink-dim);}
.notify-status.is-ok{background:var(--green-soft);border-color:rgba(124,173,142,0.35);}
.notify-status.is-error{background:var(--red-soft);border-color:rgba(242,104,95,0.4);color:var(--ink);}
#notifyBanner .notify-status{margin-bottom:14px;}
.notify-toggle{font-size:13.5px;color:var(--ink);font-weight:600;}
.notify-test{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:12px;}

/* ---------- Yönetim Paneli ---------- */
#mgmtKpis{margin-bottom:26px;}
.mgmt-block{margin-bottom:26px;}
.mgmt-note{max-width:none;margin:-6px 0 10px 2px;}
.mgmt-note:empty{display:none;}
.mgmt-title-row{justify-content:space-between;flex-wrap:wrap;}
.mgmt-toggle{margin:-16px 0 26px 0;}

/* ---------- Demo talepleri (Büro Yönetimi) ---------- */
.nav-badge{margin-left:auto;font-size:10px;padding:1px 7px;}
.demo-msg{max-width:320px;}
.demo-msg .cell-sub{max-width:none;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.demo-note{margin-top:5px;font-size:12px;color:var(--ink-dim);}
.demo-durum{padding:5px 8px;font-size:12px;}

/* ---------- Görevler ---------- */
.task-priority{font-size:10px;margin-right:6px;vertical-align:1px;}
.task-repeat{font-size:11px;margin-left:4px;cursor:help;}
.task-priority.high{color:var(--red);}
.task-priority.low{color:var(--ink-muted);}
tr.row-done .cell-name{color:var(--ink-muted);text-decoration:line-through;text-decoration-color:var(--border);}

/* ---------- Dosya Detayı ---------- */
.cd-modal{max-width:720px;}
.cd-head{margin-bottom:4px;}
.cd-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 16px;font-size:13px;color:var(--ink);}
.cd-facts > div{display:flex;flex-direction:column;gap:3px;min-width:0;}
.cd-notes{margin-top:10px;max-width:none;}
.cd-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}

.cd-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:8px;overflow:hidden;}
.cd-row{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--panel);font-size:13px;}
.cd-row + .cd-row{border-top:1px solid var(--border);}
.cd-row-main{flex:1;min-width:0;}
.cd-row-main .cell-sub{max-width:none;}
.cd-row-title{color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cd-row-badges{display:flex;gap:6px;flex-shrink:0;}
.cd-doc-link{color:var(--ink);font-weight:600;text-decoration:none;}
.cd-doc-link:hover{color:var(--gold);}
.cd-ai-snippet{
  margin-top:5px;font-size:12px;color:var(--ink-dim);line-height:1.45;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}

/* ---------- Belge Analizi ---------- */
.ai-modal{max-width:680px;}
.ai-disclaimer{
  background:var(--gold-soft);border:1px solid var(--gold-line);color:var(--ink-dim);
  border-radius:8px;padding:9px 12px;font-size:12px;line-height:1.45;
}
.ai-summary{font-size:13.5px;line-height:1.6;color:var(--ink);white-space:pre-line;}
.ai-info{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink);}
.ai-info-row{display:grid;grid-template-columns:130px 1fr;gap:10px;}
.ai-info-label{font-size:10.5px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.6px;padding-top:2px;}
.ai-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:8px;overflow:hidden;}
.ai-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--panel);}
.ai-item + .ai-item{border-top:1px solid var(--border);}
.ai-item-main{flex:1;min-width:0;}
.ai-item-main .cell-sub{max-width:none;}
.ai-item-title{color:var(--ink);font-weight:600;font-size:13px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.ai-item .btn{flex-shrink:0;}
.ai-warnings{margin:0;padding-left:18px;font-size:13px;color:var(--ink-dim);line-height:1.55;}
.ai-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;max-width:none;border-top:1px solid var(--border);padding-top:12px;}

@media (max-width:880px){
  .cd-row{flex-wrap:wrap;}
  .cd-row-badges{order:3;}
  .ai-info-row{grid-template-columns:1fr;gap:2px;}
  .ai-item{flex-direction:column;align-items:stretch;}
  .ai-foot{flex-direction:column;align-items:flex-start;}
}

/* ---------- Belge önizleme (preview.js) ---------- */
.archive-file-link{color:var(--gold);text-align:left;}
.preview-overlay{z-index:65;padding:12px;}
.preview-modal{max-width:1160px;height:94vh;max-height:94vh;display:flex;flex-direction:column;overflow:hidden;}
.preview-modal .modal-head{gap:12px;padding:12px 16px;}
.preview-head-text{min-width:0;}
.preview-head-text h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.preview-head-text .cell-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.preview-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.preview-body{flex:1;overflow:auto;background:var(--panel-light);padding:12px;display:flex;flex-direction:column;align-items:center;gap:12px;}
.preview-page{position:relative;width:100%;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;}
.preview-page canvas{display:block;}
.preview-page-no{font-size:12px;color:#888;}
.preview-image{max-width:100%;height:auto;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.18);}
.preview-status{margin:auto;text-align:center;color:var(--ink-dim);font-size:14px;line-height:1.6;padding:24px;}
@media (max-width:640px){
  .preview-overlay{padding:0;}
  .preview-modal{height:100vh;max-height:100vh;border-radius:0;}
  .preview-body{padding:6px;}
}
.pwa-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.5;}

/* ---------- Dilekçe şablonları (templates.js) ---------- */
.tpl-overlay{z-index:62;padding:12px;}
.tpl-modal{max-width:920px;max-height:94vh;display:flex;flex-direction:column;}
/* Belge Oluştur penceresinde 5 düğme var: dar ekranda alt satıra geçsin. */
.tpl-modal .modal-foot{flex-wrap:wrap;}
/* Gövde kaydırılır; içindeki tablo kutuları (overflow:hidden → min-height 0)
   esnek sütunda sıkışıp satırları GİZLEMESİN (UYAP eşitlemede yalnızca ilk
   3 satır görünüyordu, gerisi görünmeden uygulanıyordu). */
.tpl-body{overflow-y:auto;min-height:0;}
.tpl-body > *{flex-shrink:0;}
.field textarea.tpl-textarea{min-height:46vh;font-family:'IBM Plex Mono',monospace;font-size:13px;line-height:1.6;resize:vertical;white-space:pre-wrap;}
.tpl-chips{display:flex;flex-wrap:wrap;gap:6px;}
.tpl-chip{font-family:'IBM Plex Mono',monospace;font-size:11.5px;padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:var(--panel-light);color:var(--ink-dim);cursor:pointer;}
.tpl-chip:hover{border-color:var(--gold);color:var(--gold);}
.tpl-body .cell-sub{max-width:none;}
.tpl-missing{color:var(--red);}
.tpl-missing:empty{display:none;}
.tpl-missing code{font-size:11.5px;}
@media (max-width:640px){
  .tpl-overlay{padding:0;}
  .tpl-modal{max-height:100vh;height:100vh;border-radius:0;}
  .field textarea.tpl-textarea{min-height:40vh;}
}

/* ---------- UYAP aktarımı (uyap-import.js) ---------- */
.uyap-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;background:var(--panel-light);border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-size:13px;}
.uyap-summary .ai-info-label{display:block;}
.uyap-new{display:flex;flex-direction:column;gap:12px;padding:12px;border:1px dashed var(--border);border-radius:10px;}
.uyap-new[hidden]{display:none;}
.uyap-details{font-size:13px;}
.uyap-details summary{cursor:pointer;font-weight:600;}
.uyap-details ul{margin:6px 0 0;padding-left:18px;max-height:220px;overflow:auto;line-height:1.55;}
.uyap-parties{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;}
.preview-udf{width:100%;max-width:820px;background:#fff;color:#111;box-shadow:0 2px 10px rgba(0,0,0,.18);padding:48px 56px;font:15px/1.6 "Times New Roman",serif;}
.preview-udf p{margin:0 0 4px;white-space:pre-wrap;}
@media (max-width:640px){.preview-udf{padding:20px 16px;font-size:14px;}}

/* ---------- UYAP duruşma / e-tebligat listeleri (uyap-lists.js) ---------- */
.ul-modal{max-width:1100px;}
.ul-modal td input[list]{width:100%;min-width:150px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:var(--panel-light);color:var(--ink);font:inherit;font-size:13px;}
.ul-table-wrap{max-height:58vh;overflow:auto;border:1px solid var(--border);border-radius:10px;}
.ul-table{width:100%;min-width:760px;border-collapse:collapse;font-size:13px;}
.ul-table th{position:sticky;top:0;z-index:1;background:var(--panel-light);text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--ink-muted);padding:8px 10px;}
.ul-table td{padding:8px 10px;border-top:1px solid var(--border);vertical-align:top;}
.ul-table .cell-sub{max-width:none;}
.ul-table select,.ul-table input[type=date],.ul-sure-ad{font:inherit;font-size:12.5px;padding:5px 7px;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--ink);max-width:240px;}
.ul-sure{display:flex;gap:6px;margin-bottom:4px;}
.ul-sure input{width:64px;font:inherit;font-size:12.5px;padding:5px 7px;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--ink);}
.ul-sure select{width:auto;}
.ul-sure-ad{width:170px;}
.ul-muted td{opacity:.55;}
.ul-warn{font-size:13px;line-height:1.55;background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:10px;padding:10px 12px;}
.ul-count{margin-right:auto;}
.ul-sorumluluk{font-size:12.5px;line-height:1.55;color:var(--red);background:var(--red-soft);border:1px solid var(--red);border-radius:10px;padding:9px 12px;}
.ul-onay{font-size:13px;line-height:1.5;align-items:flex-start;gap:8px;}
.ul-onay input{margin-top:3px;flex-shrink:0;}
.ul-adli{margin-top:4px;font:inherit;font-size:12px;padding:4px 6px;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--ink);max-width:190px;}
.ul-uyari{color:var(--red);}

/* ---------- Bildirim ve takvim (notifications.js) ---------- */
.nt-modal{max-width:640px;}
.nt-sec{border:1px solid var(--border);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;}
.nt-sec .cell-sub{max-width:none;}
.nt-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;}
.nt-head h4{margin:0 0 4px;font-family:'Fraunces',serif;font-size:15px;}
.nt-row{display:flex;gap:8px;flex-wrap:wrap;}
.nt-note{font-size:12.5px;line-height:1.55;background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:9px;padding:9px 11px;}
.nt-ayar{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.nt-ayar[disabled]{opacity:.5;}
.nt-ayar legend{font-size:12px;font-weight:600;color:var(--ink-dim);margin-bottom:6px;padding:0;}
.nt-url{display:flex;gap:6px;}
.nt-url input{flex:1;min-width:0;font-family:'IBM Plex Mono',monospace;font-size:11.5px;}
.nt-danger{color:var(--red);}

/* ---------- Duruşma sonrası not (hearing-result.js) ---------- */
.hr-modal{max-width:680px;max-height:94vh;display:flex;flex-direction:column;}
.hr-modal .modal-body{overflow-y:auto;}
.hr-set{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:0;display:flex;flex-direction:column;gap:10px;}
.hr-set legend{font-size:12px;font-weight:600;color:var(--ink-dim);padding:0 4px;}
.hr-sonuc{font-size:13px;}
.hr-sonuc .cell-sub{max-width:none;}
.hr-snippet{max-width:none;}
.hr-text{font-size:13px;line-height:1.5;white-space:pre-wrap;margin-top:2px;}
.icon-btn.hearing-due{color:var(--gold);}
/* ---------- Otomatik oturum kapatma (idle-logout.js) ---------- */
.idle-uyari{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:120;display:flex;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--red);border-radius:12px;padding:12px 16px;box-shadow:var(--shadow);max-width:calc(100% - 32px);}
.idle-uyari div{display:flex;flex-direction:column;font-size:13px;line-height:1.4;}
.idle-uyari span{color:var(--ink-muted);font-size:12.5px;}

/* Yapay zekâ notları (Claude → dosyaya_kaydet): içerik uzun olabilir, açılır kutuda. */
.cd-ai-not>summary{cursor:pointer;list-style-position:inside}
.cd-ai-not-icerik{white-space:pre-wrap;font-size:13px;line-height:1.6;margin:8px 0;max-height:420px;overflow:auto;
  padding:8px 10px;border-radius:6px;background:color-mix(in srgb,currentColor 4%,transparent)}
.cd-ai-kaynaklar{margin:4px 0 0;padding-left:18px;font-size:12.5px}

/* ---------- Dosya Detayı: UYAP son aktarım özeti ---------- */
.uyap-ozet{border:1px solid var(--border);border-radius:10px;padding:8px 12px;margin:6px 0 10px;font-size:13px;}
.uyap-ozet.is-yeni{border-color:var(--gold);background:var(--gold-soft);}
.uyap-ozet ul{margin:6px 0 0;padding-left:18px;}
.uyap-ozet li{margin:2px 0;color:var(--ink-dim);}

/* ---------- İcra takibi bölümü (js/icra.js) ---------- */
.icra-bolum .icra-facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
.icra-alt-baslik{display:flex;align-items:center;gap:10px;justify-content:space-between;font-weight:600;font-size:13.5px;color:var(--ink);margin:18px 0 8px;}
.icra-alt-baslik .btn{font-weight:500;}
.icra-borc-satir{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.icra-borc-satir input[type="date"]{width:auto;}
.icra-borc-sonuc{margin-top:10px;border:1px solid var(--border);border-radius:var(--radius,8px);padding:12px 14px;background:var(--panel);}
.icra-borc-toplam{font-weight:600;margin-bottom:8px;}
.icra-borc-baslik{font-size:12px;color:var(--ink-muted);margin:10px 0 4px;}
.icra-borc-tablo{width:100%;border-collapse:collapse;font-size:13px;}
.icra-borc-tablo td{padding:4px 0;border-bottom:1px solid var(--border);vertical-align:top;}
.icra-borc-tablo td.tutar{text-align:right;white-space:nowrap;padding-left:12px;font-variant-numeric:tabular-nums;}
.icra-uyarilar{margin:10px 0 0;padding-left:18px;font-size:12px;color:var(--ink-muted);}
.icra-uyari-metin{color:var(--red);font-weight:600;}
.icra-kalem{display:grid;grid-template-columns:1fr 1.3fr .7fr 1.1fr auto;gap:6px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px dashed var(--border);align-items:center;}
.icra-kalem .ik-ad{grid-column:1/-1;}
.icra-kalem input,.icra-kalem select{width:100%;min-width:0;}
@media (max-width:560px){.icra-kalem{grid-template-columns:1fr 1fr;}}
.field-row[hidden]{display:none;}
/* Toplu belge ve icra raporu (js/templates.js, js/icra-rapor.js) */
.toplu-arac{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:4px 0 8px;}
.toplu-liste{max-height:320px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius,8px);padding:6px 10px;background:var(--panel);}
.toplu-satir{display:flex;padding:5px 0;border-bottom:1px solid var(--border);}
.toplu-satir:last-child{border-bottom:0;}
.icra-rapor-kartlar{margin-bottom:14px;}
#icraRaporOverlay .panel-title{margin-top:18px;}

/* Telefonda icra raporu tabloları: başlıksız, her satır "başlık: değer" kartı */
@media (max-width:560px){
  #icraRaporOverlay .table-wrap{overflow:visible;}
  #icraRaporOverlay table{min-width:0;}
  #icraRaporOverlay thead{display:none;}
  #icraRaporOverlay tbody tr{display:block;padding:8px 14px;border-bottom:1px solid var(--border);}
  #icraRaporOverlay tbody tr:last-child{border-bottom:none;}
  #icraRaporOverlay tbody td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:4px 0;border:0;text-align:right;}
  #icraRaporOverlay tbody td::before{content:attr(data-label);color:var(--ink-muted);font-size:12px;text-align:left;flex-shrink:0;}
  #icraRaporOverlay tbody td[data-label=""]{justify-content:flex-end;}
  #icraRaporOverlay tbody td[data-label=""]::before{content:none;}
  #icraRaporOverlay tbody td .link-btn{text-align:right;}
  #icraRaporOverlay tbody td .cell-sub{max-width:none;}
}
/* Telefonda icra bölümü satırları: başlık (plaka, banka, ada/parsel) kesilmesin,
   süre rozeti alt satıra insin; düzenle/sil sağda kalır. */
@media (max-width:560px){
  .icra-bolum .cd-row-title{white-space:normal;overflow-wrap:anywhere;}
  .icra-bolum .cd-row-badges{order:3;flex-basis:100%;}
  .icra-bolum .cd-row-badges:empty{display:none;}
}
/* Arşiv → Silinen belgeler (js/silinen-belgeler.js): telefonda başlık tam, düğmeler alta */
@media (max-width:560px){
  .silinen-liste .cd-row{flex-wrap:wrap;}
  .silinen-liste .cd-row-title{white-space:normal;overflow-wrap:anywhere;}
  .silinen-liste .row-actions{flex-basis:100%;justify-content:flex-start;}
}
