/* ===== R48: cari iletişim tanımları penceresi, düğme, ipucu kartı ve zorunlu bilgilendirme katmanı ===== */
.ci-pencere{display:flex;flex-direction:column;gap:12px}
.ci-soru{background:var(--warn-soft);color:var(--warn-ink);border-radius:var(--radius-sm);padding:10px 12px;font-size:13px;line-height:1.45}
.ci-cari{font-size:13px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ci-bol{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:var(--surface)}
.ci-bol.odak{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}
.ci-bas{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.ci-bas h4{margin:0;font-size:14.5px;font-family:var(--font-head);font-weight:600;flex:1;color:var(--ink)}
.ci-bol.kapali{padding-top:9px;padding-bottom:9px;background:var(--surface-2)}
.ci-bol.kapali .ci-bas{margin-bottom:0}
.ci-bol.kapali .ci-govde{display:none}
.ci-alanlar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0 8px}
.ci-alan{display:inline-flex;align-items:center;gap:4px;padding:3px 4px 3px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);font-size:12.5px;font-family:var(--font-mono)}
.ci-alan .iconbtn{width:20px;height:20px;padding:0;font-size:11px}
.ci-oneri{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0}
.ci-ekle,.ci-arac{display:flex;gap:6px;align-items:center;margin:6px 0;flex-wrap:wrap}
.ci-ekle input,.ci-arac input{flex:1;min-width:180px;font:inherit;font-size:13.5px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);min-height:34px}
.ci-ekle input:focus,.ci-arac input:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus)}
.ci-ekle input::placeholder,.ci-arac input::placeholder{color:var(--ink-3)}
.ci-alt{display:flex;gap:6px;margin-top:8px}
.ci-bilgi{margin-top:10px;padding:9px 11px;border-radius:var(--radius-sm);background:var(--surface-2);font-size:12.5px;line-height:1.5;color:var(--ink-2)}
.ci-bilgi .warnt,.warnt{color:var(--warn-ink);margin-top:4px}
.ci-liste{display:flex;flex-direction:column;gap:2px;margin:8px 0;max-height:260px;overflow:auto;border:1px solid var(--line-2);border-radius:var(--radius-sm);padding:4px}
.ci-kisi{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"c a x" "c e x" "c s x";column-gap:9px;align-items:center;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13px}
.ci-kisi:hover{background:var(--surface-2)}
.ci-kisi.sec{background:var(--accent-soft)}
.ci-kisi input{grid-area:c}
.ci-kisi .ad{grid-area:a;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ci-kisi .ep{grid-area:e;color:var(--ink-2);font-family:var(--font-mono);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ci-kisi small{grid-area:s;color:var(--ink-3)}
.ci-kisi .chip{grid-area:x}
.ci-sip{margin:8px 0}
.ci-sip-b{display:block;font-weight:600;font-size:13px;margin-bottom:2px}
.ci-dugme{position:relative}
.ci-nokta{position:absolute;top:-3px;right:-3px;width:9px;height:9px;border-radius:50%;background:var(--warn);box-shadow:0 0 0 2px var(--surface)}
.ci-ipucu{position:fixed;left:16px;bottom:16px;z-index:60;max-width:360px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:12px 14px 12px 14px;font-size:13px;line-height:1.45;animation:ciGir .25s ease-out}
.ci-ipucu p{margin:6px 0 8px;color:var(--ink-2)}
.ci-ipucu .ci-x{position:absolute;top:6px;right:6px}
.ci-ipucu .ci-btns{display:flex;gap:6px}
@keyframes ciGir{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
@media (max-width:640px){.ci-ipucu{left:12px;right:12px;max-width:none;bottom:12px}.ci-kisi .ep{white-space:normal;word-break:break-all}}

/* zorunlu bilgilendirme katmanı */
.bilgi-katman{display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(10,18,26,.72);backdrop-filter:blur(3px)}
/* R56: tam kilit: arkadaki panel görünmez; panel yüklenmeden açılan katmanın zemini */
.bilgi-katman.tam{background:#0a121a;backdrop-filter:none}
.bilgi-bos{position:fixed;inset:0;background:#0a121a}
@media (max-width:640px){.bilgi-alt #bilgiCikis{flex:0 0 auto;order:3;margin:0 auto;border:0;background:none;box-shadow:none;text-decoration:underline;font-size:12.5px;color:var(--ink-2)}}
.bilgi-kutu{width:min(860px,100%);max-height:calc(100vh - 36px);display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}
.bilgi-ust{padding:20px 24px 14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--crit-soft),transparent 80%)}
.bilgi-rozet{display:inline-block;font-family:var(--font-head);font-weight:700;letter-spacing:.08em;font-size:12px;color:#fff;background:var(--critical);padding:4px 10px;border-radius:999px}
.bilgi-ust h2{margin:10px 0 6px;font-family:var(--font-head);font-size:21px;line-height:1.25;color:var(--ink)}
.bilgi-ozet{margin:0 0 10px;color:var(--ink-2);font-size:13.5px;line-height:1.5}
.bilgi-ilerleme{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.bilgi-ilerleme .bar{flex:1;height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden}
.bilgi-ilerleme .bar span{display:block;height:100%;width:0;background:var(--good);transition:width .3s}
.bilgi-govde{flex:1;overflow:auto;padding:8px 24px 18px;outline:none;scroll-behavior:smooth}
.bilgi-madde{padding:16px 0 14px;border-bottom:1px dashed var(--line)}
.bilgi-madde:last-of-type{border-bottom:0}
.bilgi-madde h3{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:15.5px;font-family:var(--font-head);font-weight:600}
.bilgi-madde h3 .no{flex:0 0 26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent-ink);font-size:13px;font-weight:700}
.bilgi-madde.onayli h3 .no{background:var(--good);color:#fff}
.bilgi-madde .metin{font-size:13.5px;line-height:1.6;color:var(--ink)}
.bilgi-madde .metin p{margin:0 0 8px}
.bilgi-madde .metin ul{margin:0 0 8px;padding-left:20px}
.bilgi-madde .metin li{margin:3px 0}
.bilgi-onay{display:flex;gap:10px;align-items:flex-start;margin-top:8px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface-2);font-size:13px;line-height:1.45;cursor:pointer;transition:background .2s,border-color .2s}
.bilgi-onay input{margin-top:2px;width:18px;height:18px;flex:0 0 18px}
.bilgi-onay input:disabled+span{opacity:.55}
.bilgi-madde.goruldu .bilgi-onay{border-color:var(--accent)}
.bilgi-madde.onayli .bilgi-onay{background:var(--good-soft);border-color:var(--good)}
.bilgi-son{padding:12px 0 0}
.bilgi-alt{display:flex;align-items:center;gap:8px;padding:12px 24px;border-top:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap}
.bilgi-alt .spacer{flex:1}
.bg-say{display:flex;gap:6px;margin:6px 0 10px;flex-wrap:wrap}
.bg-maddeler li{margin:6px 0}
.bg-m{border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;margin:8px 0}
@media (max-width:640px){.bilgi-katman{padding:0}.bilgi-kutu{max-height:100vh;height:100vh;max-height:100dvh;height:100dvh;border-radius:0}.bilgi-ust,.bilgi-govde,.bilgi-alt{padding-left:16px;padding-right:16px}.bilgi-ust h2{font-size:18px}.bilgi-alt .btn{flex:1}}
body:has(.modal-bg) .ci-ipucu{display:none}

/* R55: yetkililer ve bildirimler (kişi × yetki tablosu) */
.ci-rol-kap{overflow-x:auto;margin:8px 0;border:1px solid var(--line-2);border-radius:var(--radius-sm)}
.ci-rol{border-collapse:collapse;width:100%;font-size:13px}
.ci-rol th,.ci-rol td{padding:6px 8px;border-bottom:1px solid var(--line-2);text-align:center;vertical-align:middle}
.ci-rol tbody tr:last-child th,.ci-rol tbody tr:last-child td{border-bottom:0}
.ci-rol thead th{font-weight:600;font-size:12px;background:var(--surface-2);white-space:nowrap;position:sticky;top:0}
.ci-rol thead th small{display:block;font-weight:400;font-size:10.5px;color:var(--ink-3);letter-spacing:.03em;text-transform:uppercase}
.ci-rol thead th.kilit{opacity:.55}
.ci-rol th:first-child{text-align:left;min-width:190px}
.ci-rol tbody th{font-weight:400;text-align:left}
.ci-rol tbody th .ad{display:block;font-weight:600;color:var(--ink);overflow-wrap:anywhere}
.ci-rol tbody th .ep,.ci-rol tbody th small{display:block;font-size:12px;color:var(--ink-3);overflow-wrap:anywhere}
.ci-rol tbody th .chip{margin-top:3px}
.ci-rol td input[type=checkbox]{width:17px;height:17px;cursor:pointer}
.ci-rol td input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}
.ci-rol tbody th .ci-rol-p{display:block;margin-top:3px;font-size:12px;color:var(--ink-2);overflow-wrap:anywhere}
.ci-rol tbody th .ci-rol-p::before{content:'Portalda: ';color:var(--ink-3)}
.ci-rol-ac{margin-top:8px;font-size:13px}
.ci-rol-ac summary{cursor:pointer;color:var(--ink-2)}
.ci-rol-ac ul{margin:6px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px}
/* R55: adres denetimi ipucu */
.ep-ipucu{margin-top:4px;font-size:12.5px;display:flex;flex-direction:column;gap:3px}
.ep-ipucu .k{color:var(--critical)}
.ep-ipucu .u{color:var(--warn-ink)}
.ep-ipucu .btn{margin-left:4px;vertical-align:baseline}
input.ep-hata{border-color:var(--critical)!important}
input.ep-uyari{border-color:var(--warn)!important}
/* R55: E-posta takibi ve kuralları */
.ep-row{grid-template-columns:minmax(0,1fr) minmax(130px,200px) 90px auto}
.ep-detay{display:flex;flex-direction:column;gap:10px}
.ep-bas{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ep-adres{font-size:16px;overflow-wrap:anywhere}
.ep-yap{margin:0;color:var(--ink-2)}
.ep-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 16px}
.ep-kv>div{display:flex;flex-direction:column;gap:1px;min-width:0}
.ep-kv span{font-size:11.5px;color:var(--ink-3);letter-spacing:.03em;text-transform:uppercase}
.ep-kv b{font-weight:500;overflow-wrap:anywhere}
.ep-tani{font-size:13px}
.ep-tani summary{cursor:pointer;color:var(--ink-2)}
.ep-tani pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;background:var(--surface-2);padding:8px 10px;border-radius:8px;margin:6px 0 0}
.ep-tani ul,.ep-kul ul{margin:6px 0 0;padding-left:18px;font-size:13px}
.ep-islem{border-top:1px solid var(--line);padding-top:10px;display:flex;flex-direction:column;gap:8px}
.ep-satir{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ep-satir input[type=email],.ep-satir input:not([type]){flex:1;min-width:200px}
.ep-diger,.ep-ata{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ep-ata select{max-width:240px}
.ep-metin{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-2);border-radius:8px;padding:10px 12px;font-size:13.5px;max-height:160px;overflow:auto}
.ep-metin.tam{max-height:420px}
.ep-defter td{vertical-align:top}
.ep-kural{display:flex;flex-direction:column;gap:14px}
.ep-kural h3{margin:0 0 8px;font-size:15.5px}
.ep-kural .card{padding:14px 16px}
.ep-anahtar{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:8px 18px;margin-bottom:10px}
.ep-anahtar label{display:flex;gap:9px;align-items:flex-start;font-weight:400;cursor:pointer}
.ep-anahtar label input{margin-top:3px}
.ep-anahtar label b{display:block;font-weight:600}
.ep-anahtar label small{display:block;color:var(--ink-3);font-size:12.5px}
.ep-mod{margin:12px 0 6px;font-size:13.5px}
.ep-esles{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:6px 16px}
.ep-esles label{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,210px);gap:8px;align-items:center;font-weight:400;font-size:13px}
.ep-kisi select{max-width:240px;width:100%}
.ep-kural table input{width:100%;min-width:140px}
@media (max-width:860px){.ep-row{grid-template-columns:minmax(0,1fr) auto}}
