/* Eksper portali — ortak stil. */
:root{
  --paper:#F7F8F6; --surface:#FFFFFF; --surface-2:#EFF2EF; --surface-3:#E5EAE6;
  --ink:#16211C; --ink-2:#42524A; --ink-3:#6B7B72;
  --rule:#D8DEDA; --rule-2:#C2CBC5;
  --deed:#1F6B4A; --deed-soft:#E4F0EA;
  --plan:#2C4770; --plan-soft:#E3E9F2;
  --crit:#A8321E; --crit-soft:#F7E5E1;
  --warn:#8A5E0F; --warn-soft:#F6EEDC;
  --shadow:0 1px 2px rgba(22,33,28,.05), 0 8px 24px -16px rgba(22,33,28,.25);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#0F1512; --surface:#171E1A; --surface-2:#1E2722; --surface-3:#26302A;
    --ink:#E6EBE7; --ink-2:#AFBCB4; --ink-3:#8B9A91;
    --rule:#28322C; --rule-2:#37433C;
    --deed:#4FB183; --deed-soft:#15291F;
    --plan:#8AA9DA; --plan-soft:#182231;
    --crit:#E1866F; --crit-soft:#2B1913;
    --warn:#D9AC5A; --warn-soft:#2A2110;
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px -16px rgba(0,0,0,.8);
  }
}
:root[data-theme="dark"]{
  --paper:#0F1512; --surface:#171E1A; --surface-2:#1E2722; --surface-3:#26302A;
  --ink:#E6EBE7; --ink-2:#AFBCB4; --ink-3:#8B9A91;
  --rule:#28322C; --rule-2:#37433C;
  --deed:#4FB183; --deed-soft:#15291F;
  --plan:#8AA9DA; --plan-soft:#182231;
  --crit:#E1866F; --crit-soft:#2B1913;
  --warn:#D9AC5A; --warn-soft:#2A2110;
  --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px -16px rgba(0,0,0,.8);
}

*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:Archivo,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:14px;line-height:1.5;
  -webkit-font-smoothing:antialiased}
.mono{font-family:"IBM Plex Mono",ui-monospace,Consolas,monospace;font-variant-numeric:tabular-nums}
a{color:var(--deed)}
:focus-visible{outline:2px solid var(--deed);outline-offset:2px}

/* ---------- giris ---------- */
.giris-sayfa{display:grid;place-items:center;min-height:100%;padding:24px}
.giris-kart{width:min(400px,100%);background:var(--surface);border:1px solid var(--rule);
  border-radius:5px;box-shadow:var(--shadow);padding:30px 30px 26px}
.giris-kart .marka{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--deed);margin:0 0 6px}
.giris-kart h1{font-size:21px;font-weight:700;letter-spacing:-.02em;margin:0 0 4px}
.giris-kart p.alt{font-size:13px;color:var(--ink-3);margin:0 0 24px}

/* ---------- form ogeleri ---------- */
label.e{display:block;font-size:12px;font-weight:600;color:var(--ink-2);margin-bottom:5px}
input,select,textarea,button{font-family:inherit;font-size:13px}
input,select,textarea{color:var(--ink);background:var(--surface);border:1px solid var(--rule-2);
  border-radius:3px;padding:8px 10px;width:100%}
textarea{resize:vertical;min-height:66px;line-height:1.5}
input[readonly],textarea[readonly]{background:var(--surface-2);color:var(--ink-2);
  border-style:dashed;cursor:default}
.dugme{border:1px solid var(--deed);background:var(--deed);color:#fff;border-radius:3px;
  padding:9px 16px;cursor:pointer;font-weight:600;width:100%}
.dugme:hover{filter:brightness(1.08)}
.dugme:disabled{opacity:.55;cursor:not-allowed;filter:none}
.dugme.ikincil{background:var(--surface);color:var(--ink-2);border-color:var(--rule-2);width:auto;font-weight:500}
.dugme.ikincil:hover{border-color:var(--deed);color:var(--deed);filter:none}
.uyari-kutu{background:var(--crit-soft);color:var(--crit);border-radius:3px;padding:9px 12px;
  font-size:12.5px;margin-bottom:14px}
.bilgi-kutu{background:var(--deed-soft);color:var(--deed);border-radius:3px;padding:9px 12px;
  font-size:12.5px;margin-bottom:14px}

/* ---------- uygulama iskeleti ---------- */
.uyg{display:flex;flex-direction:column;height:100%}
header.ust{border-bottom:1px solid var(--rule);background:var(--surface);padding:11px 18px;
  display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center;flex:none}
header.ust .marka{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--deed);font-weight:600}
header.ust .no{font-family:"IBM Plex Mono",monospace;font-size:13px;color:var(--ink)}
header.ust .adres{font-size:12.5px;color:var(--ink-3);flex:1;min-width:180px}
header.ust .sag{display:flex;gap:10px;align-items:center;margin-left:auto}
header.ust .kisi{font-size:12.5px;color:var(--ink-2);text-align:right;line-height:1.3}
header.ust .kisi b{display:block;font-size:10px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-3);font-weight:600}

.rozet{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;
  letter-spacing:.03em;padding:3px 9px;border-radius:3px;background:var(--surface-2);
  color:var(--ink-3);border:1px solid var(--rule);white-space:nowrap}
.rozet.ok{background:var(--deed-soft);color:var(--deed);border-color:transparent}
.rozet.uyari{background:var(--warn-soft);color:var(--warn);border-color:transparent}
.rozet.kritik{background:var(--crit-soft);color:var(--crit);border-color:transparent}
.rozet.plan{background:var(--plan-soft);color:var(--plan);border-color:transparent}

.kopru{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--rule);background:var(--surface-2);flex:none}
.kopru div{padding:8px 16px;border-right:1px solid var(--rule);display:flex;gap:8px;align-items:baseline}
.kopru .e{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:600}
.kopru .v{font-family:"IBM Plex Mono",monospace;font-size:13px;font-variant-numeric:tabular-nums}
.kopru .disari .v{color:var(--crit);font-weight:600}
.kopru .icinde .v{color:var(--deed);font-weight:600}

.govde{display:grid;grid-template-columns:1fr;flex:1;min-height:0}
@media(min-width:1040px){.govde{grid-template-columns:minmax(0,470px) minmax(0,1fr)}}
.bolme{min-width:0;display:flex;flex-direction:column;min-height:0}
.bolme.sol{border-right:1px solid var(--rule);background:var(--surface)}
.bolme-baslik{padding:10px 16px;border-bottom:1px solid var(--rule);display:flex;gap:10px;
  align-items:center;flex:none;flex-wrap:wrap}
.bolme-baslik b{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);font-weight:600}
.kaydir{overflow-y:auto;flex:1;min-height:0}

/* ---------- adim rayi ---------- */
.adimlar{display:flex;gap:4px;padding:9px 12px;border-bottom:1px solid var(--rule);
  overflow-x:auto;flex:none;background:var(--surface-2)}
.adim{flex:none;border:1px solid var(--rule);background:var(--surface);border-radius:3px;
  padding:6px 10px;cursor:pointer;font-size:12px;color:var(--ink-2);display:flex;gap:7px;
  align-items:center;white-space:nowrap}
.adim:hover{border-color:var(--rule-2)}
.adim[aria-selected="true"]{border-color:var(--deed);background:var(--deed-soft);color:var(--deed);font-weight:600}
.adim .n{font-family:"IBM Plex Mono",monospace;font-size:11px;opacity:.7}
.adim .sayac{font-family:"IBM Plex Mono",monospace;font-size:10px;background:var(--surface-2);
  padding:1px 5px;border-radius:2px;color:var(--ink-3)}
.adim.eksik .sayac{background:var(--crit-soft);color:var(--crit)}
.adim[aria-selected="true"] .sayac{background:rgba(255,255,255,.35);color:inherit}

/* ---------- form alanlari ---------- */
.form{padding:15px 16px 46px;display:flex;flex-direction:column;gap:13px}
.alan{display:flex;flex-direction:column;gap:5px}
.alan > label{font-size:12px;font-weight:600;color:var(--ink-2);display:flex;gap:7px;
  align-items:baseline;flex-wrap:wrap}
.yildiz{color:var(--crit)}
.iz{font-size:10px;font-weight:500;letter-spacing:.04em;padding:1px 6px;border-radius:2px;
  background:var(--surface-2);color:var(--ink-3);border:1px solid var(--rule);
  font-family:"IBM Plex Mono",monospace}
.iz.hesap{background:var(--plan-soft);color:var(--plan);border-color:transparent}
.iz.maya{background:var(--deed-soft);color:var(--deed);border-color:transparent}
.kutular{display:flex;flex-wrap:wrap;gap:6px}
.kutular label{font-size:12px;font-weight:400;display:inline-flex;gap:6px;align-items:center;
  border:1px solid var(--rule-2);border-radius:3px;padding:5px 9px;cursor:pointer;background:var(--surface)}
.kutular label:has(input:checked){border-color:var(--deed);background:var(--deed-soft);
  color:var(--deed);font-weight:500}
.kutular input{width:auto;margin:0}
.bos-adim{padding:30px 16px;color:var(--ink-3);font-size:13px}

/* ---------- is listesi ---------- */
.liste{padding:14px 16px 40px;display:flex;flex-direction:column;gap:8px}
.is-kart{border:1px solid var(--rule);background:var(--surface);border-radius:4px;padding:12px 14px;
  cursor:pointer;display:flex;gap:12px;align-items:flex-start;text-align:left;width:100%;color:inherit}
.is-kart:hover{border-color:var(--deed)}
.is-kart[aria-current="true"]{border-color:var(--deed);background:var(--deed-soft)}
.is-kart .no{font-family:"IBM Plex Mono",monospace;font-size:12.5px;color:var(--deed);font-weight:500}
.is-kart .uye{font-size:13px;font-weight:600;margin-top:2px}
.is-kart .alt{font-size:12px;color:var(--ink-3);margin-top:2px}

/* ---------- onizleme ---------- */
.sekmeler{display:flex;gap:2px;margin-left:auto}
.sekme{border:1px solid transparent;background:none;font-size:12px;color:var(--ink-3);
  padding:5px 11px;border-radius:3px;cursor:pointer}
.sekme:hover{color:var(--ink-2);background:var(--surface-2)}
.sekme[aria-selected="true"]{background:var(--surface-3);color:var(--ink);font-weight:600}
.onizleme{padding:22px clamp(14px,2.6vw,34px) 56px;font-family:"Source Serif 4",Georgia,serif;
  font-size:14px;color:var(--ink)}
.sayfa{background:var(--surface);border:1px solid var(--rule);box-shadow:var(--shadow);
  border-radius:3px;padding:clamp(16px,2.4vw,32px);max-width:940px;margin:0 auto 18px}
.kapak{text-align:center;padding:32px 22px}
.kapak .foto{border:1px dashed var(--rule-2);border-radius:3px;padding:34px 12px;color:var(--ink-3);
  font-family:Archivo,sans-serif;font-size:12px;margin-bottom:20px}
.kapak .foto img{max-width:100%;max-height:260px;border-radius:2px;display:block;margin:0 auto}
.kapak .k1,.kapak .k2{font-weight:600;font-size:15px;line-height:1.4}
.kapak .k3{font-family:Archivo,sans-serif;font-weight:700;font-size:22px;letter-spacing:.03em;margin:18px 0 8px}
.kapak .k4{font-family:"IBM Plex Mono",monospace;font-size:13px;color:var(--deed)}
.kapak .k5{font-size:12px;color:var(--ink-3);margin-top:18px;line-height:1.6}
h2.blk{font-family:Archivo,sans-serif;font-size:12px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--surface);background:var(--ink);margin:0;padding:8px 12px;
  border-radius:2px 2px 0 0}
table.r{border-collapse:collapse;width:100%;margin:0 0 20px;font-size:13px}
table.r th,table.r td{border:1px solid var(--rule-2);padding:7px 10px;vertical-align:top;text-align:left}
table.r th{background:var(--surface-2);font-family:Archivo,sans-serif;font-size:11px;font-weight:600;
  letter-spacing:.04em;color:var(--ink-2);width:1%;white-space:nowrap}
table.r td{color:var(--ink-2);line-height:1.55}
table.r td.v{color:var(--ink)}
table.r td.num{font-family:"IBM Plex Mono",monospace;text-align:right;
  font-variant-numeric:tabular-nums;white-space:nowrap}
.kutu-satiri{display:flex;flex-wrap:wrap;gap:13px;font-family:Archivo,sans-serif;font-size:12px}
.kutu-satiri span{display:inline-flex;gap:6px;align-items:center;color:var(--ink-3)}
.kutu-satiri span.on{color:var(--ink);font-weight:600}
.kutu-satiri i{font-style:normal;font-family:"IBM Plex Mono",monospace}
.imza{display:grid;grid-template-columns:repeat(3,1fr);margin-top:6px}
.imza div{border:1px solid var(--rule-2);padding:12px;text-align:center;font-size:12px}
.imza b{display:block;font-family:Archivo,sans-serif;font-size:11px;letter-spacing:.04em;
  color:var(--ink-3);font-weight:600;margin-bottom:24px}
.imza .ad{font-weight:600}
.imza .ls{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--ink-3);margin-top:3px}

/* ---------- maya aktarim ---------- */
.aktarim{max-width:940px;margin:0 auto;font-family:Archivo,sans-serif}
.aktarim h3{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:var(--plan);margin:20px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--rule);
  display:flex;align-items:center;gap:10px}
.aktarim h3:first-of-type{margin-top:0}
.aktarim h3 .sayac{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:0;
  background:var(--surface-2);color:var(--ink-3);padding:2px 7px;border-radius:2px;margin-left:auto;
  text-transform:none;font-weight:500}
.aktarim h3 .sayac.bitti{background:var(--deed-soft);color:var(--deed)}

.aktarim-ozet{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 14px;
  background:var(--surface-2);border:1px solid var(--rule);border-radius:4px;margin-bottom:18px}
.aktarim-ozet b{font-size:13px;font-weight:600;white-space:nowrap}
.aktarim-ozet .cubuk{flex:1;min-width:120px;height:6px;background:var(--rule);border-radius:3px;overflow:hidden}
.aktarim-ozet .cubuk i{display:block;height:100%;background:var(--deed);transition:width .2s}

.satir{display:grid;grid-template-columns:minmax(150px,230px) minmax(0,1fr) auto;gap:12px;
  align-items:start;padding:8px 10px;border-bottom:1px solid var(--rule)}
.satir:hover{background:var(--surface-2)}
.satir.bos{opacity:.5}
.satir.girildi{background:var(--deed-soft)}
.satir.girildi .d{text-decoration:line-through;text-decoration-color:var(--rule-2)}
.satir .a{font-size:12.5px;color:var(--ink-2);display:flex;gap:8px;align-items:flex-start}
.satir .a input[type=checkbox]{width:auto;margin:2px 0 0;flex:none;accent-color:var(--deed)}
.satir .d{font-family:"IBM Plex Mono",monospace;font-size:12.5px;color:var(--ink);word-break:break-word}
.satir .u{grid-column:2;font-size:11.5px;color:var(--warn);margin-top:3px}
.kopyala{border:1px solid var(--rule-2);background:var(--surface);border-radius:3px;font-size:11px;
  color:var(--ink-3);padding:3px 8px;cursor:pointer}
.kopyala:hover{border-color:var(--deed);color:var(--deed)}
.kopyala[data-ok="1"]{border-color:var(--deed);background:var(--deed-soft);color:var(--deed)}

/* ---------- müşteri görünümü ---------- */
.musteri-kart{border:1px solid var(--rule);border-radius:3px;background:var(--surface);overflow:hidden}
.musteri-satir{display:flex;justify-content:space-between;gap:14px;padding:8px 11px;
  border-bottom:1px solid var(--rule);font-size:12.5px}
.musteri-satir:last-child{border-bottom:0}
.musteri-satir span{color:var(--ink-3)}
.musteri-satir b{font-weight:600;text-align:right}

/* ---------- emsal havuzu ---------- */
.havuz-ozet{display:flex;gap:14px;flex-wrap:wrap;align-items:baseline;background:var(--surface-2);
  border:1px solid var(--rule);border-radius:3px;padding:8px 11px;margin-bottom:7px;font-size:12px}
.havuz-ozet b{font-size:12.5px}
.havuz-ozet span{color:var(--ink-3)}
.havuz{border:1px solid var(--rule);border-radius:3px;overflow:hidden}
.havuz-satir{display:grid;grid-template-columns:minmax(0,1fr) 62px 78px auto;gap:8px;
  padding:5px 10px;font-size:12px;border-bottom:1px solid var(--rule);align-items:baseline}
.havuz-satir:last-child{border-bottom:0}
.havuz-satir:hover{background:var(--surface-2)}
.havuz-satir .yer{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.havuz-satir .alan-m2{color:var(--ink-3);text-align:right;font-size:11px}
.havuz-satir .birim{text-align:right;color:var(--deed);font-weight:600}
.havuz-satir .kaynak{font-family:"IBM Plex Mono",monospace;font-size:10px;color:var(--ink-3);
  max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ---------- pano ---------- */
.pano-kutular{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:7px}
.pano-kutu{border:1px solid var(--rule);border-radius:3px;background:var(--surface);
  padding:10px;text-align:center}
.pano-kutu b{display:block;font-family:"IBM Plex Mono",monospace;font-size:21px;
  font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums}
.pano-kutu span{font-size:10.5px;color:var(--ink-3);letter-spacing:.03em}
.pano-kutu.kritik{border-color:var(--crit)}
.pano-kutu.kritik b{color:var(--crit)}
.pano-kutu.uyari{border-color:var(--warn)}
.pano-kutu.uyari b{color:var(--warn)}
.pano-kutu.ok b{color:var(--deed)}
.pano-dagilim{display:flex;flex-direction:column;gap:3px}
.pano-dagilim div{display:flex;justify-content:space-between;padding:5px 9px;
  background:var(--surface-2);border-radius:3px;font-size:12.5px}

table.pano-tablo{border-collapse:collapse;width:100%;font-family:Archivo,sans-serif;font-size:12.5px}
table.pano-tablo th{background:var(--surface-2);text-align:left;padding:7px 9px;font-size:10.5px;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--rule-2)}
table.pano-tablo td{padding:7px 9px;border-bottom:1px solid var(--rule);vertical-align:top;color:var(--ink-2)}
table.pano-tablo tr[data-pano-is]{cursor:pointer}
table.pano-tablo tr[data-pano-is]:hover td{background:var(--surface-2)}
table.pano-tablo tr.geciken td{background:var(--crit-soft)}
table.pano-tablo td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
table.pano-tablo td.gec{color:var(--crit);font-weight:600}
table.pano-tablo .alt{font-size:11px;color:var(--ink-3)}

/* ---------- kural motoru ---------- */
.kural{border:1px solid var(--rule);border-left:3px solid var(--rule-2);border-radius:3px;
  background:var(--surface);padding:9px 11px;margin-bottom:7px}
.kural.bloke{border-left-color:var(--crit)}
.kural.uyari{border-left-color:var(--warn)}
.kural .ust{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:4px}
.kural .ust code{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--ink-3);
  background:var(--surface-2);padding:1px 5px;border-radius:2px}
.kural .ust b{font-size:12.5px;font-weight:600}
.kural .kaynak{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--plan);
  background:var(--plan-soft);padding:1px 5px;border-radius:2px;margin-left:auto}
.kural p{margin:0;font-size:12.5px;line-height:1.5;color:var(--ink-2)}
.kural .git{margin-top:7px;border:1px solid var(--rule-2);background:var(--surface);
  border-radius:3px;font-family:inherit;font-size:11.5px;color:var(--ink-3);padding:3px 9px;cursor:pointer}
.kural .git:hover{border-color:var(--deed);color:var(--deed)}

/* ---------- denetim izi ---------- */
.liste-baslik{font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);
  font-weight:600;margin:14px 0 2px;padding:0 2px}
.liste-baslik:first-child{margin-top:0}

.bulgu{border:1px solid var(--rule);border-left:3px solid var(--crit);border-radius:3px;
  background:var(--surface);padding:10px 12px;margin-bottom:8px}
.bulgu.cozuldu{border-left-color:var(--deed);opacity:.72}
.bulgu .ust{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:5px}
.bulgu .ust b{font-size:12.5px}
.bulgu .kim{font-size:11.5px;color:var(--ink-3);margin-left:auto}
.bulgu p{margin:0;font-size:13px;color:var(--ink-2);line-height:1.5}
.bulgu p.cozum{margin-top:6px;padding-top:6px;border-top:1px solid var(--rule);
  font-size:11.5px;color:var(--deed)}
.bulgu-ac{display:flex;gap:8px;align-items:flex-start;margin-top:10px}
.bulgu-ac textarea{flex:1;min-height:44px}

.arsiv-surum{border:1px solid var(--rule);border-radius:3px;background:var(--surface);
  padding:11px 13px;margin-bottom:8px}
.arsiv-surum .ust{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.arsiv-surum .ust b{font-size:13px}
.arsiv-surum .kim{font-size:11.5px;color:var(--ink-3);margin-left:auto}
.arsiv-surum .kisiler{font-size:12px;color:var(--ink-2);margin-bottom:8px}
.arsiv-surum .belgeler{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}
.arsiv-surum .belgeler a{font-size:12.5px}
.arsiv-surum code{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--ink-3);
  background:var(--surface-2);padding:1px 5px;border-radius:2px;margin-left:6px}
.arsiv-surum .muhur{font-size:11.5px;color:var(--ink-3);padding-top:7px;border-top:1px solid var(--rule)}
.arsiv-surum .sorun{margin-top:7px;background:var(--crit-soft);color:var(--crit);
  padding:7px 9px;border-radius:3px;font-size:12px}

table.iz-tablo{border-collapse:collapse;width:100%;font-size:12px}
table.iz-tablo th{background:var(--surface-2);text-align:left;padding:6px 8px;font-size:10.5px;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--rule-2)}
table.iz-tablo td{padding:5px 8px;border-bottom:1px solid var(--rule);color:var(--ink-2);vertical-align:top}
table.iz-tablo td:first-child{font-family:"IBM Plex Mono",monospace;font-size:11px;
  white-space:nowrap;color:var(--ink-3)}
table.iz-tablo td.d{font-family:"IBM Plex Mono",monospace;font-size:11px;
  max-width:200px;overflow-wrap:anywhere}

/* ---------- hakediş ---------- */
table.hakedis{border-collapse:collapse;width:100%;font-size:12.5px}
table.hakedis th,table.hakedis td{border:1px solid var(--rule);padding:5px 8px;text-align:left;vertical-align:middle}
table.hakedis tr:first-child th{background:var(--surface-2);font-size:10.5px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--ink-3);font-weight:600}
table.hakedis th{font-weight:500;color:var(--ink-2);white-space:nowrap}
table.hakedis td{width:1%}
table.hakedis td:first-of-type,table.hakedis td:nth-of-type(2){width:26%}
table.hakedis input{padding:5px 7px;border-radius:2px;min-width:78px}
table.hakedis td.num{font-family:"IBM Plex Mono",monospace;text-align:right;
  font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap;min-width:96px}
table.hakedis tr.toplam th{background:var(--surface-2);font-weight:700;color:var(--ink)}
table.hakedis tr.toplam td.num{background:var(--deed-soft);color:var(--deed);font-weight:700}

/* ---------- dosyalar ---------- */
.dosya-listesi{display:flex;flex-direction:column;gap:6px}
.dosya{display:flex;gap:10px;align-items:center;border:1px solid var(--rule);border-radius:3px;
  padding:7px 10px;background:var(--surface);font-size:12.5px}
.dosya .ad{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dosya .tur{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--ink-3)}
.dosya .boyut{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--ink-3)}
.dosya button{border:none;background:none;color:var(--ink-3);cursor:pointer;font-size:15px;line-height:1;padding:2px 4px}
.dosya button:hover{color:var(--crit)}
.dosya .basilir{font-size:10px;letter-spacing:.03em;color:var(--deed);background:var(--deed-soft);
  padding:1px 6px;border-radius:2px;white-space:nowrap;flex:none}

/* ---------- kayit durumu ---------- */
.kayit-durum{font-size:11.5px;color:var(--ink-3);margin-left:auto}
.kayit-durum[data-hal="kaydediliyor"]{color:var(--warn)}
.kayit-durum[data-hal="kaydedildi"]{color:var(--deed)}
.kayit-durum[data-hal="hata"]{color:var(--crit)}

@media (prefers-reduced-motion: reduce){*{transition:none !important;animation:none !important}}

/* ---------- kurum ---------- */
.is-kart .alt .kurum{color:var(--plan);font-weight:600}
.pano-tablo .kurum{font-size:11px;color:var(--plan)}

/* ---------- rapordan okuma ---------- */
.oku-satir{display:flex;gap:10px;align-items:flex-start;padding:9px 10px;
  border-bottom:1px solid var(--rule);cursor:pointer;font-family:Archivo,sans-serif}
.oku-satir:hover{background:var(--surface-2)}
.oku-satir input{width:auto;margin:3px 0 0;flex:none;accent-color:var(--deed)}
.oku-satir .bilgi{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.oku-satir b{font-size:12.5px;font-weight:600}
.oku-satir .yer{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--ink-3)}
.oku-satir .degerler{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:12px}
.oku-satir .mevcut{font-style:normal;color:var(--ink-3);text-decoration:line-through;
  text-decoration-color:var(--rule-2)}
.oku-satir .ok{font-style:normal;color:var(--ink-3);flex:none}
.oku-satir .okunan{font-style:normal;color:var(--deed);font-weight:500}

/* Kullanici yonetimi tablosu */
table.kullanici-tablo tr.pasif td{opacity:.5}
table.kullanici-tablo td.islem{white-space:nowrap;text-align:right}
table.kullanici-tablo td.islem .dugme{padding:3px 8px;font-size:11px;margin-left:5px}

/* Bildirim zili */
.zil{position:relative}
.zil-sayac{display:inline-block;min-width:17px;padding:0 5px;margin-left:6px;
  border-radius:9px;background:var(--crit);color:#fff;
  font-size:10.5px;font-weight:600;line-height:17px;text-align:center}
.bildirim-satir{display:block;padding:9px 11px;border-bottom:1px solid var(--rule);
  cursor:pointer;background:none;border-left:0;border-right:0;border-top:0;width:100%;text-align:left}
.bildirim-satir:hover{background:var(--surface-2)}
.bildirim-satir.yeni{background:var(--surface-2)}
.bildirim-satir .m{display:block;font-size:12.5px;color:var(--ink-1)}
.bildirim-satir.yeni .m{font-weight:600}
.bildirim-satir .z{display:block;font-size:11px;color:var(--ink-3);margin-top:2px}

/* Kayit durumu: cevrimdisi ve bekleyen hallerinin ayirt edilmesi onemli */
.kayit-durum[data-hal="bekliyor"]{color:var(--ink-3)}
.kayit-durum[data-hal="gonderiliyor"]{color:var(--warn)}
.kayit-durum[data-hal="cevrimdisi"]{color:var(--crit);font-weight:600}
.kayit-durum[data-hal="hata"]{color:var(--crit)}

/* Alt çubuk yalnızca dar ekranda görünür; varsayılan gizli.
   Bu satır medya sorgusundan ÖNCE olmalı — sonra gelirse aynı özgüllükte
   olduğu için medya kuralını ezer ve çubuk hiçbir yerde görünmez. */
.mobil-cubuk { display: none; }

/* ====================================================================
   MOBİL DÜZEN
   Eksper sahada telefon/tabletle çalışıyor. Üç sorun vardı:
   1. Girdiler 13px idi; iOS Safari 16px altındaki bir alana odaklanınca
      sayfayı otomatik yakınlaştırıp düzeni bozuyordu.
   2. Üst çubuktaki 13 düğme sarmalayıp ekranın yarısını yiyordu.
   3. Form ve önizleme alt alta iki panel olarak açılıyor, telefonda her biri
      ekranın yarısı kadar kalıyordu. Artık aynı anda biri görünüyor.
   ==================================================================== */
@media (max-width: 1039px) {

  /* iOS yakınlaştırmasını engelleyen tek şey 16px. Daha küçüğü kabul yok. */
  input, select, textarea { font-size: 16px; padding: 11px 12px; }

  /* Parmakla dokunulabilir hedef: 44px alt sınır. */
  .dugme { padding: 12px 16px; min-height: 44px; }
  .adimlar button { min-height: 40px; }

  /* Üst çubuk tek satır, yatay kaydırılır — sarmalayıp yığılmasın. */
  header.ust {
    flex-wrap: nowrap; overflow-x: auto; gap: 10px 12px;
    padding: 9px 12px; scrollbar-width: none;
  }
  header.ust::-webkit-scrollbar { display: none; }
  header.ust .dugme { flex: none; }
  /* Rozetler ve adres bilgi amaçlı; formda zaten görünüyorlar. */
  header.ust .rozet, header.ust .adres, header.ust .kisi { display: none; }
  header.ust .sag { margin-left: 0; }

  /* Köprü satırı (değer özeti) telefonda çok yer kaplıyor; kaydırılabilir. */
  .kopru { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .kopru::-webkit-scrollbar { display: none; }

  /* Tek panel: hangisinin görüneceğini alt çubuk belirler. */
  .govde[data-gorunum="form"] .bolme.sag { display: none; }
  .govde[data-gorunum="onizleme"] .bolme.sol { display: none; }
  .bolme.sol { border-right: none; }

  /* Alt çubuk: panel değiştirme ve kayıt durumu. Başparmak erişiminde ve
     her zaman görünür — "3 değişiklik bekliyor" saha için kritik bilgi. */
  .mobil-cubuk {
    display: flex; align-items: center; gap: 10px; flex: none;
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom));
    border-top: 1px solid var(--rule); background: var(--surface);
  }
  .mobil-cubuk .segment { display: flex; border: 1px solid var(--rule-2); border-radius: 4px; overflow: hidden; }
  .mobil-cubuk .segment button {
    border: 0; background: var(--surface); color: var(--ink-2);
    padding: 10px 16px; min-height: 44px; font-weight: 600; font-size: 13px; cursor: pointer;
  }
  .mobil-cubuk .segment button[aria-pressed="true"] { background: var(--deed); color: #fff; }
  .mobil-cubuk .durum { flex: 1; text-align: right; font-size: 12.5px; }

  /* Geniş içerik yatayda kendi kabında kayar; sayfa yana kaymaz.
     display:block tabloyu blok kutuya çevirir ama satırlar içeride anonim
     tablo olarak kaldığı için sütun hizası korunur. */
  table { display: block; overflow-x: auto; width: max-content; min-width: 100%; }

  /* Önizlemedeki etiket/değer satırları: telefonda 150px sabit etiket
     sütunu değere yer bırakmıyordu. */
  .satir { grid-template-columns: 1fr; gap: 2px; }
  .satir .d { text-align: left; }

  /* Emsal havuzu önerileri: dört sütun 360px ekrana sığmıyor. */
  .havuz-satir { grid-template-columns: 1fr auto; gap: 6px 10px; }

  /* İmza bloğu üç sütundan tek sütuna. */
  .imza { grid-template-columns: 1fr; gap: 10px; }

  /* Kullanıcı tablosundaki işlem düğmeleri alt alta. */
  table.kullanici-tablo td.islem { white-space: normal; }
  table.kullanici-tablo td.islem .dugme { margin: 2px 0 2px 4px; }

  .onizleme { padding: 12px; }
}

