/* Mali Muhasebe — arayüz stili. maliofis.tr marka paleti: Navy #0B1D3A · Okyanus #0891B2 · Gold #E8A838 · Krem #FAF7F1
   Yazı tipleri: DM Serif Display (başlık/marka), Plus Jakarta Sans (arayüz), JetBrains Mono (rakam); @font-face tanımları ../fonts.css'te
   (index.html bağlar). Açık ve koyu tema. */

:root{
  --navy:#0B1D3A; --navy-2:#132C54; --okyanus:#0891B2; --okyanus-koyu:#0E7490; --okyanus-acik:#22D3EE; --gold:#E8A838; --gold-acik:#F4C76B;
  --vurgu:#0E7490; --vurgu-yazi:#FFFFFF; --vurgu-hover:#0B5F76; --vurgu-soluk:#E0F4F8;
  --yazi:#0B1D3A; --yazi-2:#2B3F5E; --soluk:#64748B;
  --zemin:#FAF7F1; --yuzey:#FFFFFF; --yuzey-2:#F5F7FA; --cizgi:#E4E0D6; --cizgi-2:#EEEBE3;
  --olumlu:#047857; --olumlu-soluk:#DDF7EC; --uyari:#92400E; --uyari-soluk:#FBEFD8; --olumsuz:#B91C1C; --olumsuz-soluk:#FDE4E4;
  --giris:#0891B2; --cikis:#E8A838;
  --golge:0 12px 32px rgba(11,29,58,.14); --golge-kucuk:0 2px 8px rgba(11,29,58,.08);
  --yazi-govde:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --yazi-serif:"DM Serif Display",Georgia,serif;
  --yazi-mono:"JetBrains Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
  --yan:248px; --r:12px;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-tema="acik"]){
    --vurgu:#22D3EE; --vurgu-yazi:#0B1D3A; --vurgu-hover:#67E8F9; --vurgu-soluk:#0F3A4A;
    --yazi:#F5F7FA; --yazi-2:#C9D3E3; --soluk:#8FA0BA;
    --zemin:#060A12; --yuzey:#0B1D3A; --yuzey-2:#122B52; --cizgi:#1E3A63; --cizgi-2:#16305A;
    --olumlu:#6EE7B7; --olumlu-soluk:#0E3B30; --uyari:#FCD34D; --uyari-soluk:#3E2E0F; --olumsuz:#FCA5A5; --olumsuz-soluk:#4A1D1D;
    --golge:0 12px 32px rgba(0,0,0,.5); color-scheme:dark;
  }
}
:root[data-tema="koyu"]{
  --vurgu:#22D3EE; --vurgu-yazi:#0B1D3A; --vurgu-hover:#67E8F9; --vurgu-soluk:#0F3A4A;
  --yazi:#F5F7FA; --yazi-2:#C9D3E3; --soluk:#8FA0BA;
  --zemin:#060A12; --yuzey:#0B1D3A; --yuzey-2:#122B52; --cizgi:#1E3A63; --cizgi-2:#16305A;
  --olumlu:#6EE7B7; --olumlu-soluk:#0E3B30; --uyari:#FCD34D; --uyari-soluk:#3E2E0F; --olumsuz:#FCA5A5; --olumsuz-soluk:#4A1D1D;
  --golge:0 12px 32px rgba(0,0,0,.5); color-scheme:dark;
}

/* ------------------------------------------------------------------ temel */
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;min-height:100%}
body{background:var(--zemin);color:var(--yazi);font:14px/1.45 var(--yazi-govde);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{margin:0;font-weight:700;text-wrap:balance}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:var(--vurgu)}
:focus-visible{outline:2px solid var(--vurgu);outline-offset:2px}
.mono,.sayi{font-family:var(--yazi-mono);font-variant-numeric:tabular-nums}
.sag{text-align:right}
.orta{text-align:center}
.soluk{color:var(--soluk)}
.kucuk{font-size:12px}
.bosluk{flex:1}
.olumsuz{color:var(--olumsuz)}
.olumlu{color:var(--olumlu)}
.uyari-yazi{color:var(--uyari)}
.kalin{font-weight:700}
.satir{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.satir.arasi{justify-content:space-between}
.yigin{display:flex;flex-direction:column;gap:12px}
.ust-baslik{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--soluk)}
.ikon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none;display:inline-block;vertical-align:middle}
.ikon.b{width:22px;height:22px}
.ikon.k{width:15px;height:15px}

/* ------------------------------------------------------------------ kabuk */
.kabuk{display:grid;grid-template-columns:var(--yan) minmax(0,1fr);min-height:100vh}
.yan{background:var(--yuzey);border-right:1px solid var(--cizgi);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow:hidden;z-index:20}
.marka{display:flex;align-items:center;gap:11px;padding:16px 18px 14px;border-bottom:1px solid var(--cizgi-2);text-decoration:none;color:inherit}
.marka img{width:36px;height:36px;border-radius:8px}
.marka b{display:block;font-family:var(--yazi-serif);font-weight:400;font-size:20px;line-height:1.05;letter-spacing:.01em}
.marka b .v{color:var(--okyanus)}
.marka .alt{display:block;font-size:11.5px;color:var(--soluk)}
.firma-karti{display:flex;align-items:center;gap:10px;margin:12px 12px 4px;padding:9px 11px;border:1px solid var(--cizgi);border-radius:10px;background:var(--zemin);text-align:left;width:calc(100% - 24px);cursor:pointer}
.firma-karti:hover{border-color:var(--vurgu)}
.firma-karti .a{flex:1;min-width:0}
.firma-karti b{display:block;font-size:13.5px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.firma-karti span{display:block;font-size:11px;color:var(--soluk)}
.yan nav{flex:1;overflow-y:auto;padding:6px 10px 14px}
.yan nav .grup{margin:14px 8px 4px;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--soluk)}
.yan nav a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;color:var(--yazi-2);text-decoration:none;font-weight:500;font-size:13.5px}
.yan nav a:hover{background:var(--yuzey-2);color:var(--yazi)}
.yan nav a.acik{background:var(--vurgu-soluk);color:var(--vurgu);font-weight:650}
.yan nav a .rozet{margin-left:auto}
.yan-alt{border-top:1px solid var(--cizgi-2);padding:10px 12px;display:flex;align-items:center;gap:8px}
.yan-alt .kisi{flex:1;min-width:0}
.yan-alt .kisi b{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yan-alt .kisi span{display:block;font-size:11px;color:var(--soluk)}
.ana{min-width:0;display:flex;flex-direction:column}
.ust{display:flex;align-items:center;gap:12px;padding:12px 28px;border-bottom:1px solid var(--cizgi-2);background:var(--zemin);position:sticky;top:0;z-index:15}
.ust .menu-dugme{display:none}
.ust .ara{flex:1;max-width:480px;position:relative}
.ust .ara input{width:100%;padding:8px 12px 8px 34px;border:1px solid var(--cizgi);border-radius:10px;background:var(--yuzey)}
.ust .ara .ikon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--soluk)}
.ara-sonuc{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--yuzey);border:1px solid var(--cizgi);border-radius:12px;box-shadow:var(--golge);padding:6px;max-height:420px;overflow:auto;z-index:40}
.ara-sonuc .grup{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--soluk);padding:8px 10px 4px}
.ara-sonuc a{display:flex;justify-content:space-between;gap:10px;padding:7px 10px;border-radius:8px;text-decoration:none;color:var(--yazi)}
.ara-sonuc a:hover,.ara-sonuc a.secili{background:var(--yuzey-2)}
.icerik{padding:22px 28px 60px;display:flex;flex-direction:column;gap:18px;min-width:0}
.sayfa-basligi{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.sayfa-basligi h1{font-family:var(--yazi-serif);font-weight:400;font-size:30px;line-height:1.1;letter-spacing:.005em}
.sayfa-basligi .alt{color:var(--soluk);font-size:13px;margin-top:4px}
.sayfa-basligi .geri{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;color:var(--soluk);text-decoration:none;margin-bottom:4px}
.sayfa-basligi .geri:hover{color:var(--vurgu)}
.eylemler{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

/* ------------------------------------------------------------------ düğmeler */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:7px 14px;border:1px solid var(--cizgi);border-radius:10px;background:var(--yuzey);color:var(--yazi);font-weight:600;font-size:13.5px;line-height:1.2;text-decoration:none;white-space:nowrap}
.btn:hover{background:var(--yuzey-2)}
.btn.birincil{background:var(--vurgu);border-color:var(--vurgu);color:var(--vurgu-yazi)}
.btn.birincil:hover{background:var(--vurgu-hover);border-color:var(--vurgu-hover)}
.btn.koyu{background:var(--navy);border-color:var(--navy);color:#fff}
.btn.hayalet{background:transparent;border-color:transparent}
.btn.hayalet:hover{background:var(--yuzey-2)}
.btn.tehlike{color:var(--olumsuz);border-color:color-mix(in srgb,var(--olumsuz) 45%,transparent)}
.btn.tehlike:hover{background:var(--olumsuz-soluk)}
.btn.k{min-height:30px;padding:4px 10px;font-size:12.5px;border-radius:8px}
.btn.ikon-dugme{padding:6px;min-width:34px}
.btn[disabled]{opacity:.5;cursor:default;pointer-events:none}
.btn.yukleniyor{position:relative;color:transparent!important}
.btn.yukleniyor::after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-color:var(--vurgu-yazi) transparent var(--vurgu-yazi) transparent;border-radius:50%;animation:don .8s linear infinite}
.btn:not(.birincil).yukleniyor::after{border-color:var(--vurgu) transparent var(--vurgu) transparent}
@keyframes don{to{transform:rotate(360deg)}}
.baglanti{border:0;background:none;padding:0;color:var(--vurgu);font:inherit;font-weight:650;cursor:pointer;text-decoration:none}
.baglanti:hover{text-decoration:underline}

/* ------------------------------------------------------------------ kartlar ve göstergeler */
.kart{background:var(--yuzey);border:1px solid var(--cizgi);border-radius:var(--r);padding:18px 20px;display:flex;flex-direction:column;gap:12px;min-width:0}
.kart.sifir{padding:0;gap:0;overflow:hidden}
.kart-baslik{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.kart-baslik h2{font-size:15.5px}
.kart-baslik .alt{font-size:12px;color:var(--soluk)}
.kart.sifir>.kart-baslik{padding:14px 18px;border-bottom:1px solid var(--cizgi-2)}
.izgara{display:grid;gap:16px}
.izgara.iki{grid-template-columns:repeat(2,minmax(0,1fr))}
.izgara.uc{grid-template-columns:repeat(3,minmax(0,1fr))}
.izgara.dort{grid-template-columns:repeat(4,minmax(0,1fr))}
/* 1 piksellik aralığı hücrelerin gölgesi boyar: son satır dolmasa da hücresiz alan kart renginde kalır */
.gostergeler{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;background:var(--yuzey);border:1px solid var(--cizgi);border-radius:var(--r);overflow:hidden}
.gosterge{background:var(--yuzey);padding:14px 18px;min-width:0;text-decoration:none;color:inherit;display:block;box-shadow:0 0 0 1px var(--cizgi)}
a.gosterge:hover{background:var(--yuzey-2)}
.gosterge .ust-baslik{margin-bottom:6px}
.gosterge .d{font-family:var(--yazi-mono);font-variant-numeric:tabular-nums;font-size:18px;font-weight:500;letter-spacing:-.02em;white-space:nowrap;overflow-wrap:anywhere}
@media (min-width:1500px){.gosterge .d{font-size:20px}}
.gosterge .a{font-size:12px;color:var(--soluk);margin-top:3px}
.gosterge.koyu{background:var(--navy);color:#fff}
.gosterge.koyu .ust-baslik{color:#9FD8E6}
.gosterge.koyu .a{color:#C9D3E3}
.rozet{display:inline-flex;align-items:center;gap:4px;min-height:21px;padding:1px 8px;border-radius:999px;font-size:11.5px;font-weight:700;white-space:nowrap;line-height:1.3;background:var(--yuzey-2);color:var(--yazi-2);border:1px solid var(--cizgi)}
.rozet.mavi{background:var(--vurgu-soluk);color:var(--vurgu);border-color:transparent}
.rozet.yesil{background:var(--olumlu-soluk);color:var(--olumlu);border-color:transparent}
.rozet.sari{background:var(--uyari-soluk);color:var(--uyari);border-color:transparent}
.rozet.kirmizi{background:var(--olumsuz-soluk);color:var(--olumsuz);border-color:transparent}
.rozet.koyu{background:var(--navy);color:#fff;border-color:transparent}
.bilgi-kutusu{display:flex;gap:10px;align-items:flex-start;padding:11px 14px;border-radius:10px;background:var(--vurgu-soluk);color:var(--yazi-2);font-size:13px}
.bilgi-kutusu.uyari{background:var(--uyari-soluk)}
.bilgi-kutusu.hata{background:var(--olumsuz-soluk)}
.tanim{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 16px;font-size:13px}
.tanim dt{color:var(--soluk)}
.tanim dd{margin:0;overflow-wrap:anywhere}

/* ------------------------------------------------------------------ tablolar */
.tablo-kap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.tablo{border-collapse:collapse;width:100%}
.tablo th,.tablo td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--cizgi-2);vertical-align:middle}
.tablo th{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--yazi-2);background:var(--yuzey-2);white-space:nowrap;position:sticky;top:0;z-index:1}
.tablo th.siralanir{cursor:pointer;user-select:none}
.tablo th.siralanir:hover{color:var(--vurgu)}
.tablo th .ok{font-size:9px;margin-left:3px;color:var(--vurgu)}
.tablo td.sayi,.tablo th.sayi{text-align:right;white-space:nowrap}
.tablo td.tarih{white-space:nowrap;font-family:var(--yazi-mono);font-size:12.5px}
.tablo td.kisa{white-space:nowrap}
.tablo td.ad{min-width:220px}
.tablo td.uzun{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tablo tbody tr.tiklanir{cursor:pointer}
.tablo tbody tr.tiklanir:hover{background:var(--yuzey-2)}
.tablo tbody tr.secili{background:var(--vurgu-soluk)}
.tablo tfoot td{font-weight:700;background:var(--yuzey-2);border-bottom:0}
.tablo .onay{width:34px;text-align:center}
.tablo-alt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;flex-wrap:wrap;font-size:12.5px;color:var(--soluk)}
.sayfalama{display:flex;gap:4px;align-items:center}
.bos{padding:34px 16px;text-align:center;color:var(--soluk);font-size:13px}
.bos b{display:block;color:var(--yazi);font-size:15px;margin-bottom:4px}
.bos .btn{margin-top:12px}
.suzgecler{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid var(--cizgi-2)}
.suzgecler input,.suzgecler select{padding:6px 10px;border:1px solid var(--cizgi);border-radius:8px;background:var(--yuzey);min-height:34px}
.suzgecler input[type=search]{min-width:220px}

/* ------------------------------------------------------------------ formlar */
.form{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px 14px}
.alan{display:flex;flex-direction:column;gap:5px;grid-column:span 6;min-width:0}
.alan.g12{grid-column:span 12}.alan.g8{grid-column:span 8}.alan.g4{grid-column:span 4}.alan.g3{grid-column:span 3}.alan.g2{grid-column:span 2}
.alan>label{font-size:12px;font-weight:650;color:var(--yazi-2)}
.alan>label .z{color:var(--olumsuz);margin-left:2px}
.alan input,.alan select,.alan textarea,.girdi{width:100%;padding:8px 11px;border:1px solid var(--cizgi);border-radius:9px;background:var(--yuzey);min-height:38px}
.alan textarea{min-height:76px;resize:vertical}
.alan input:focus,.alan select:focus,.alan textarea:focus,.girdi:focus{border-color:var(--vurgu);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--vurgu) 20%,transparent)}
.alan.hatali input,.alan.hatali select,.alan.hatali textarea{border-color:var(--olumsuz)}
.alan .ipucu{font-size:11.5px;color:var(--soluk)}
.alan .hata-yazi{font-size:11.5px;color:var(--olumsuz)}
.alan input.sayi,.girdi.sayi{text-align:right;font-family:var(--yazi-mono)}
.onay-kutusu{display:inline-flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}
.onay-kutusu input{width:17px;height:17px;accent-color:var(--vurgu)}
/* e-Belge › Ayarlar › seriler: işaretli olan varsayılan */
.seri-liste{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.seri{display:inline-flex;align-items:center;gap:6px;padding:3px 4px 3px 9px;border:1px solid var(--cizgi);border-radius:10px;background:var(--yuzey-2)}
.alan .seri input[type=radio]{width:auto;min-height:0;padding:0;margin:0;accent-color:var(--vurgu)}
.alan .seri input.seri-kod{width:66px;min-height:30px;padding:4px 8px;font-family:var(--yazi-mono);letter-spacing:.08em;text-transform:uppercase}
.seri .btn,.seri-liste>.btn{margin:0}
/* e-Belge › Tasarım › Banka bilgileri: her hesap iki satır (banka, şube, döviz, sil / IBAN) */
.banka-baslik>label:first-child{font-size:12px;font-weight:650;color:var(--yazi-2)}
.banka-duzen,.banka-liste{display:flex;flex-direction:column;gap:8px}
.banka-liste:empty{display:none}
.banka-satir{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 78px 34px;gap:6px;padding:8px;border:1px solid var(--cizgi-2);border-radius:10px;background:var(--yuzey-2)}
.banka-satir .girdi{min-height:34px;padding:6px 9px}
.banka-satir .b-iban{grid-column:1 / -1;grid-row:2;font-family:var(--yazi-mono);letter-spacing:.02em}
.banka-satir .b-sil{grid-column:4;grid-row:1;min-height:34px}
.banka-satir .girdi.hatali{border-color:var(--olumsuz)}
.secenekler{display:inline-flex;border:1px solid var(--cizgi);border-radius:10px;overflow:hidden;background:var(--yuzey)}
.secenekler button{border:0;background:none;padding:7px 14px;font-weight:600;font-size:13px;color:var(--yazi-2);border-right:1px solid var(--cizgi)}
.secenekler button:last-child{border-right:0}
.secenekler button.acik{background:var(--navy);color:#fff}
.form-hata{padding:10px 14px;border-radius:10px;background:var(--olumsuz-soluk);color:var(--olumsuz);font-size:13px}

/* otomatik tamamlama */
.oneri-kap{position:relative}
.oneriler{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:260px;background:var(--yuzey);border:1px solid var(--cizgi);border-radius:10px;box-shadow:var(--golge);max-height:300px;overflow:auto;z-index:60;padding:4px}
.oneriler button{display:flex;width:100%;justify-content:space-between;gap:10px;text-align:left;border:0;background:none;padding:7px 10px;border-radius:7px}
.oneriler button:hover,.oneriler button.secili{background:var(--yuzey-2)}
.oneriler button small{color:var(--soluk)}
.oneriler .yeni{color:var(--vurgu);font-weight:650;border-top:1px solid var(--cizgi-2);border-radius:0 0 7px 7px}

/* sekmeler */
.sekmeler{display:flex;gap:2px;border-bottom:1px solid var(--cizgi);overflow-x:auto;overflow-y:hidden}
.sekmeler button,.sekmeler a{border:0;background:none;padding:9px 14px;font-weight:600;color:var(--soluk);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;text-decoration:none;font-size:13.5px}
.sekmeler button.acik,.sekmeler a.acik{color:var(--vurgu);border-bottom-color:var(--vurgu)}

/* ------------------------------------------------------------------ pencere, bildirim */
.perde{position:fixed;inset:0;background:rgba(6,10,18,.46);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px 16px;z-index:100;overflow-y:auto;animation:belir .12s ease-out}
.pencere{background:var(--yuzey);border-radius:16px;box-shadow:var(--golge);width:min(560px,100%);display:flex;flex-direction:column;max-height:none;animation:kay .15s ease-out}
.pencere.genis{width:min(880px,100%)}
.pencere.cok-genis{width:min(1180px,100%)}
.pencere-bas{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 20px;border-bottom:1px solid var(--cizgi-2)}
.pencere-bas h2{font-size:17px}
.pencere-govde{padding:18px 20px;display:flex;flex-direction:column;gap:14px}
.pencere-alt{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--cizgi-2);background:var(--yuzey-2);border-radius:0 0 16px 16px;flex-wrap:wrap}
@keyframes belir{from{opacity:0}}
@keyframes kay{from{transform:translateY(8px);opacity:0}}
.bildirimler{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:8px;z-index:200;max-width:min(420px,calc(100vw - 36px))}
.bildirim{background:var(--navy);color:#fff;padding:11px 16px;border-radius:12px;box-shadow:var(--golge);font-size:13.5px;display:flex;gap:10px;align-items:flex-start;animation:kay .15s ease-out}
.bildirim.hata{background:#7F1D1D}
.bildirim.basari{background:#065F46}
.bildirim button{border:0;background:none;color:#9FD8E6;font-weight:700;padding:0;margin-left:auto}
.yukleniyor-alan{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:var(--soluk)}
.donen{width:20px;height:20px;border:2px solid var(--cizgi);border-top-color:var(--vurgu);border-radius:50%;animation:don .8s linear infinite}
.ust-cubuk{position:fixed;left:0;top:0;height:3px;background:linear-gradient(90deg,var(--okyanus),var(--okyanus-acik),var(--gold));z-index:300;transition:width .3s,opacity .3s}

/* ------------------------------------------------------------------ giriş ekranı */
.giris-ekrani{min-height:100vh;display:flex;flex-direction:column}
.giris-bant{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);color:#fff;padding:36px 24px 110px;position:relative}
.giris-bant::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#0891B2 0%,#22D3EE 50%,#E8A838 100%)}
.giris-bant .marka-buyuk{display:flex;align-items:center;gap:14px;max-width:420px;margin:0 auto}
.giris-bant .marka-buyuk img{width:48px;height:48px;border-radius:11px;background:#fff;padding:4px}
.giris-bant .marka-buyuk b{font-family:var(--yazi-serif);font-weight:400;font-size:28px;line-height:1}
.giris-bant .marka-buyuk b .v{color:var(--okyanus-acik)}
.giris-bant .marka-buyuk .alt{display:block;color:#9FD8E6;font-size:13px;margin-top:3px}
.giris-kutu{background:var(--yuzey);border-radius:16px;box-shadow:var(--golge);width:min(420px,calc(100% - 32px));margin:-80px auto 40px;padding:26px 26px 22px;display:flex;flex-direction:column;gap:14px;position:relative}
.giris-kutu h1{font-size:20px}
.giris-kutu .form{grid-template-columns:1fr}
.giris-kutu .alan{grid-column:span 1}
.giris-alt{text-align:center;color:var(--soluk);font-size:12px;margin-top:auto;padding:16px}

/* ------------------------------------------------------------------ belge formu (fatura, teklif) */
.kalemler{width:100%;border-collapse:collapse}
.kalemler th{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--soluk);text-align:left;padding:6px 6px;border-bottom:1px solid var(--cizgi)}
.kalemler td{padding:5px 4px;border-bottom:1px solid var(--cizgi-2);vertical-align:top}
.kalemler input,.kalemler select{width:100%;padding:7px 8px;border:1px solid var(--cizgi);border-radius:8px;background:var(--yuzey);min-height:36px}
.kalemler input.sayi{text-align:right;font-family:var(--yazi-mono)}
.kalemler td.aciklama{width:38%;min-width:240px}
.kalemler td:nth-child(2) input{max-width:110px}
.kalemler td:nth-child(3) select{max-width:100px}
.kalemler td:nth-child(4) input{max-width:140px}
.kalemler td:nth-child(5) input{max-width:80px}
.kalemler td:nth-child(6) select{max-width:90px}
.kalemler td.tutar{text-align:right;font-family:var(--yazi-mono);padding-top:12px;white-space:nowrap}
.kalemler .sil{border:0;background:none;color:var(--soluk);padding:8px}
.kalemler .sil:hover{color:var(--olumsuz)}
.toplamlar{margin-left:auto;min-width:300px;display:grid;grid-template-columns:1fr auto;gap:6px 24px;font-size:13.5px}
.toplamlar .d{text-align:right;font-family:var(--yazi-mono)}
.toplamlar .genel{font-weight:800;font-size:16px;border-top:1px solid var(--cizgi);padding-top:8px}

/* grafik */
.grafik{width:100%;height:220px;display:block}
.grafik text{font-size:10.5px;fill:var(--soluk);font-family:var(--yazi-govde)}
.grafik .izgara-cizgi{stroke:var(--cizgi-2);stroke-width:1}
.cubuk-satis{fill:var(--okyanus)}
.cubuk-alis{fill:var(--gold)}
.lejant{display:flex;gap:14px;font-size:12px;color:var(--yazi-2)}
.lejant i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.cubuk-yatay{display:flex;height:6px;border-radius:999px;background:var(--cizgi-2);overflow:hidden;min-width:60px}
.cubuk-yatay>i{display:block;height:100%;background:var(--okyanus);border-radius:999px}

/* liste satırları (pano) */
.liste{display:flex;flex-direction:column}
.liste>a,.liste>div{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--cizgi-2);text-decoration:none;color:inherit;font-size:13px}
.liste>*:last-child{border-bottom:0}
.liste .b{flex:1;min-width:0}
.liste .b b{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.liste .b span{display:block;font-size:11.5px;color:var(--soluk)}
/* vade satırı dar ekranda iki satıra bölünür: metin tam genişlikte, rozet ve tutar altta (bölünmeyen fatura numarası rozetin altında kalmasın) */
@media (max-width:520px){
  .liste.vade>a{flex-wrap:wrap;row-gap:6px}
  .liste.vade .b{flex:1 1 100%}
  .liste.vade .sayi{margin-left:auto}
}

/* dönem çizelgesi */
.donemler{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.donem{border:1px solid var(--cizgi);border-radius:12px;padding:12px 14px;background:var(--yuzey);display:flex;flex-direction:column;gap:8px}
.donem.aktarildi{border-color:color-mix(in srgb,var(--olumlu) 40%,var(--cizgi))}
.donem.kontrol{border-color:color-mix(in srgb,var(--okyanus) 50%,var(--cizgi))}
.donem.tamamlandi{border-color:color-mix(in srgb,var(--gold) 60%,var(--cizgi))}

/* portföy › Sertifika · Kontör (Müşteri Takip bitişleri, e-Belge kontörü) */
.tablo td.sk{white-space:nowrap}
.sk-hucre{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.sk-iste{font-size:12px;display:inline-flex;align-items:center;gap:4px;line-height:1.3}
.sk-iste .ikon{width:13px;height:13px;stroke-width:2}
.sk-durum{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:650;color:var(--soluk);line-height:1.3}
.sk-durum.iletildi{color:var(--olumlu)}
.sk-durum .ikon{width:13px;height:13px;stroke-width:2.2}
.sk-durum .mono{font-size:11.5px;font-weight:600}
.sk-kaynak{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:12px;color:var(--soluk);margin:0 0 -8px 2px}
.sk-kaynak b{font-weight:650;color:var(--yazi-2)}
.sk-kaynak .ikon{color:var(--okyanus)}
.sk-kaynak.hata .ikon{color:var(--uyari)}
.sk-kaynak .baglanti{font-size:12px}
/* e-Belge › kontör kartı */
.kontor-karti{flex-direction:row;align-items:center;gap:22px;flex-wrap:wrap;padding:14px 20px}
.kontor-karti .kalem .ust-baslik{margin-bottom:3px}
.kontor-karti .kalem .d{font-family:var(--yazi-mono);font-variant-numeric:tabular-nums;font-size:18px;font-weight:500;letter-spacing:-.02em;min-height:26px;display:flex;align-items:center}
.kontor-karti .kalem .d.metin{font-family:var(--yazi-govde);font-size:14px;letter-spacing:0;gap:4px}
.kontor-karti .kalem .d.metin b{font-weight:700}
.kontor-karti .kalem .d .rozet{font-size:12.5px;min-height:24px;padding:2px 10px}
.kontor-karti .kalem .a{font-size:12px;color:var(--soluk)}
.kontor-karti .bosluk{flex:1}
/* büro › Mali Ofis bağlantısı ve onay */
.onay-alan{border:1px solid var(--cizgi);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;background:var(--yuzey-2)}
.onay-alan .onay-kutusu{font-size:14px}
.onay-alan p{margin:0;font-size:13px;color:var(--yazi-2);max-width:78ch}
/* büro › Mali Ofis bağlantısı: KVKK aydınlatması (onay kutusundan önce) */
.kvkk{border:1px solid var(--cizgi);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;background:var(--yuzey)}
.kvkk-bas{display:flex;align-items:center;gap:8px;font-size:14px}
.kvkk-bas .ikon{color:var(--okyanus)}
.kvkk-liste{margin:0;display:grid;grid-template-columns:170px minmax(0,1fr);gap:7px 16px;font-size:13px}
.kvkk-liste dt{color:var(--soluk);font-weight:650}
.kvkk-liste dd{margin:0;color:var(--yazi-2);max-width:96ch}
.kvkk-alt{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:12.5px;padding-top:9px;border-top:1px solid var(--cizgi-2)}
.kvkk-alt a{font-weight:650}
@media (max-width:700px){.kvkk-liste{grid-template-columns:1fr;gap:2px}.kvkk-liste dd{margin-bottom:6px}}
/* sistem › Müşteri Takip bağlantısı: ana bağlantı, "Bağla" (müşavir seçimi), bağlandı özeti, elle giriş */
p.aciklama{margin:0;font-size:13px;color:var(--yazi-2);max-width:100ch}
.ana-baglanti .tanim dd.mono{font-size:12.5px}
.musavir-sec{display:flex;flex-direction:column;gap:8px}
.musavir-liste{border:1px solid var(--cizgi);border-radius:10px;max-height:280px;overflow:auto;padding:4px;background:var(--yuzey)}
.musavir-secenek{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;background:none;padding:8px 10px;border-radius:8px;color:var(--yazi);font-size:13.5px}
.musavir-secenek:hover,.musavir-secenek.odak{background:var(--yuzey-2)}
.musavir-secenek.secili{background:var(--vurgu-soluk);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--vurgu) 45%,transparent)}
.musavir-secenek .nokta{width:16px;height:16px;border-radius:50%;border:2px solid var(--cizgi);flex:none;background:var(--yuzey)}
.musavir-secenek.secili .nokta{border-color:var(--vurgu);box-shadow:inset 0 0 0 3px var(--yuzey);background:var(--vurgu)}
.musavir-secenek.secili .rozet.mavi{background:var(--yuzey);border-color:color-mix(in srgb,var(--vurgu) 35%,transparent)}
.musavir-secenek .ad{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.musavir-secenek .adet{font-size:12px;color:var(--soluk);white-space:nowrap}
.musavir-secenek.yeni{color:var(--vurgu);border-top:1px dashed var(--cizgi);border-radius:0 0 8px 8px;margin-top:2px}
.musavir-secenek.yeni .ad{font-weight:650}
.musavir-secenek.yeni.secili{border-top-color:transparent}
.musavir-bos{padding:14px;text-align:center;color:var(--soluk);font-size:13px}
.baglandi{display:flex;flex-direction:column;gap:14px}
.baglandi-bas{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:var(--olumlu-soluk);color:var(--olumlu)}
.baglandi-bas b{display:block;color:var(--yazi);font-size:15px}
.baglandi-bas .alt{font-size:12.5px;color:var(--yazi-2)}
.onay-ozet{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;padding:10px 14px;border:1px solid var(--cizgi-2);border-radius:10px}
.onay-ozet>b{font-weight:650;color:var(--yazi-2)}
.onay-ozet .btn{margin-left:auto}
details.gelismis{border:1px solid var(--cizgi-2);border-radius:10px;padding:10px 14px;background:var(--yuzey-2)}
details.gelismis>summary{cursor:pointer;font-weight:650;font-size:13px;color:var(--yazi-2)}
details.gelismis[open]>summary{margin-bottom:10px}
details.gelismis .aciklama{margin-bottom:10px}
/* bildirim: başlık ve alt satır (ör. "Talebiniz iletildi · T-…") */
.bildirim .ileti{display:flex;gap:10px;align-items:flex-start}
.bildirim .ileti b{display:block;font-weight:700}
.bildirim .ileti .alt{display:block;color:#C8F1E1;font-size:12.5px;margin-top:2px}
.bildirim .ileti>.ikon{margin-top:1px}
.bildirim.basari .ileti>.ikon{color:#6EE7B7}

/* ------------------------------------------------------------------ ilk giriş sihirbazı */
.ilk-giris{min-height:100vh;display:flex;flex-direction:column}
.ig-bant{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);color:#fff;padding:26px 24px 96px;position:relative}
.ig-bant::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#0891B2 0%,#22D3EE 50%,#E8A838 100%)}
.ig-bant-ic{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.ig-bant .marka-buyuk{display:flex;align-items:center;gap:12px}
.ig-bant .marka-buyuk img{width:44px;height:44px;border-radius:10px;background:#fff;padding:4px}
.ig-bant .marka-buyuk b{font-family:var(--yazi-serif);font-weight:400;font-size:24px;line-height:1}
.ig-bant .marka-buyuk b .v{color:var(--okyanus-acik)}
.ig-bant .marka-buyuk .alt{display:block;color:#9FD8E6;font-size:12px;margin-top:3px}
.ig-karsilama{border-left:1px solid #2B4A74;padding-left:24px;min-width:0}
.ig-merhaba{font-family:var(--yazi-serif);font-size:26px;line-height:1.15}
.ig-alt-yazi{color:#C9D3E3;font-size:13.5px;margin-top:4px}
.ig-kap{width:min(1180px,calc(100% - 32px));margin:-72px auto 20px;display:grid;grid-template-columns:270px minmax(0,1fr);background:var(--yuzey);border-radius:16px;box-shadow:var(--golge);overflow:hidden;position:relative}
.ig-yan{background:var(--yuzey-2);border-right:1px solid var(--cizgi-2);padding:20px 14px;display:flex;flex-direction:column;gap:14px}
.ig-ilerleme{display:flex;flex-direction:column;gap:6px;padding:0 8px;font-size:12px;font-weight:650;color:var(--soluk);letter-spacing:.04em}
.ig-cubuk{height:5px;border-radius:999px;background:var(--cizgi-2);overflow:hidden}
.ig-cubuk>i{display:block;height:100%;background:linear-gradient(90deg,var(--okyanus),var(--okyanus-acik));border-radius:999px;transition:width .25s}
.ig-adimlar{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.ig-adim{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:10px;color:var(--yazi-2)}
.ig-adim .no{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;border:1.5px solid var(--cizgi);background:var(--yuzey);color:var(--soluk)}
.ig-adim .no .ikon{width:14px;height:14px;stroke-width:2.4}
.ig-adim .ad{display:flex;flex-direction:column;min-width:0;padding-top:3px}
.ig-adim .ad b{font-size:13.5px;font-weight:650;line-height:1.3}
.ig-adim .ad small{font-size:11.5px;color:var(--soluk);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:190px}
.ig-adim .ad small.atlandi-yazi{color:var(--uyari)}
.ig-adim.simdi{background:var(--vurgu-soluk);color:var(--yazi)}
.ig-adim.simdi .no{background:var(--vurgu);border-color:var(--vurgu);color:var(--vurgu-yazi)}
.ig-adim.tamam .no{background:var(--olumlu);border-color:var(--olumlu);color:#fff}
.ig-adim.atlandi .no{background:var(--uyari-soluk);border-color:color-mix(in srgb,var(--uyari) 60%,transparent);color:var(--uyari)}
.ig-icerik{padding:26px 32px 24px;display:flex;flex-direction:column;gap:16px;min-width:0}
.ig-baslik{display:flex;gap:14px;align-items:center}
.ig-simge{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--vurgu-soluk);color:var(--vurgu);flex:none}
.ig-simge .ikon{width:24px;height:24px}
.ig-baslik h1{font-family:var(--yazi-serif);font-weight:400;font-size:28px;line-height:1.1}
.ig-aciklama{margin:0;color:var(--yazi-2);max-width:92ch}
.ig-alt{display:flex;gap:8px;align-items:center;border-top:1px solid var(--cizgi-2);padding-top:16px;flex-wrap:wrap}
.ig-ozet{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ig-ozet-oge{display:flex;gap:12px;align-items:flex-start;padding:10px 14px;border:1px solid var(--cizgi-2);border-radius:12px}
.ig-ozet-oge .simge{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none}
.ig-ozet-oge .simge .ikon{width:14px;height:14px;stroke-width:2.4}
.ig-ozet-oge.tamam .simge{background:var(--olumlu-soluk);color:var(--olumlu)}
.ig-ozet-oge.atlandi .simge{background:var(--uyari-soluk);color:var(--uyari)}
.ig-ozet-oge.bekliyor .simge{background:var(--olumsuz-soluk);color:var(--olumsuz)}
.ig-ozet-oge b{display:block;font-size:14px}
.ig-ozet-oge span{font-size:12.5px;color:var(--soluk)}
.aydinlatma-ozet ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;color:var(--yazi-2)}
details.parola-degis{border:1px solid var(--cizgi-2);border-radius:10px;padding:10px 14px;background:var(--yuzey-2)}
details.parola-degis summary{cursor:pointer}
details.parola-degis p{margin:8px 0}

/* firma ve büro bilgileri: yazılırken denetim (kırmızı: kaydedilmez, sarı: uyarı) */
.alan.uyarili input,.alan.uyarili select,.alan.uyarili textarea{border-color:color-mix(in srgb,var(--gold) 80%,var(--cizgi))}
.denetim-notu{display:flex;gap:5px;align-items:flex-start;font-size:11.5px;color:var(--uyari);line-height:1.35}
.denetim-notu.hata{color:var(--olumsuz)}
.denetim-notu .ikon{width:13px;height:13px;margin-top:1px;stroke-width:2.2}
.bilgi-kutusu.basari{background:var(--olumlu-soluk)}
.bilgi-kutusu.basari>.ikon{color:var(--olumlu)}
.bilgi-kutusu.uyari>.ikon{color:var(--uyari)}
.bilgi-kutusu.hata>.ikon{color:var(--olumsuz)}
.denetim-listesi{margin:6px 0 4px;padding-left:18px;display:flex;flex-direction:column;gap:2px}
.bilgi-ozeti:empty{display:none}

/* e-posta hesabı (SMTP) formu ve sağlayıcı yardımı */
.eposta-duzen{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,1fr);gap:20px;align-items:start}
.eposta-formu{gap:12px 14px}
.saglayici-cip{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:12.5px;padding:4px 10px;border-radius:999px;background:var(--vurgu-soluk);color:var(--yazi-2);max-width:100%;flex-wrap:wrap}
.saglayici-cip b{color:var(--vurgu)}
.saglayici-cip .ikon{color:var(--vurgu)}
.saglayici-cip.soluk-cip{background:var(--yuzey-2);border:1px solid var(--cizgi)}
.saglayici-cip .mono{font-size:11.5px;color:var(--soluk)}
.parola-alani{position:relative}
.parola-alani input{padding-right:42px}
.parola-goster{position:absolute;right:3px;bottom:3px;min-height:32px;min-width:32px}
details.sunucu-ayarlari{border:1px solid var(--cizgi-2);border-radius:10px;padding:9px 14px;background:var(--yuzey-2)}
details.sunucu-ayarlari summary{cursor:pointer;font-size:13px}
details.sunucu-ayarlari[open] summary{margin-bottom:10px}
.yardim-panel{border:1px solid var(--cizgi);border-radius:12px;padding:16px 18px;background:var(--yuzey-2);display:flex;flex-direction:column;gap:8px}
.yardim-panel h3{font-size:15.5px}
.yardim-panel ol{margin:2px 0 4px;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--yazi-2)}
.kilit-notu{display:flex;gap:6px;align-items:flex-start;font-size:12px;color:var(--soluk);border-top:1px solid var(--cizgi-2);padding-top:10px;margin-top:4px}
.sonuc-kutusu b{font-weight:700}
.eposta-notlari{gap:8px}
.eposta-notlari:empty{display:none}
.port-secenekleri .secenekler{align-self:flex-start;flex-wrap:wrap}
.port-secenekleri .secenekler button{font-family:inherit}
/* sistem e-posta hesabı (Sistem yönetimi) ve bağlantı penceresindeki e-posta durumu */
.sistem-eposta .kullanim{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--yazi-2)}
.baglanti-eposta{align-items:center}
.giris-kutu .giris-bag{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px}
.sekme-rozet{min-height:0;height:16px;padding:0 6px;font-size:10.5px;line-height:1;margin-left:6px;vertical-align:1px}
.yan nav a .rozet.hatirlatma{min-height:18px;padding:0 7px;font-size:11px}

/* ------------------------------------------------------------------ duyarlı */
@media (max-width:1100px){.izgara.dort{grid-template-columns:repeat(2,minmax(0,1fr))}.izgara.uc{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .kabuk{grid-template-columns:1fr}
  .yan{position:fixed;left:0;top:0;bottom:0;width:min(86vw,300px);transform:translateX(-102%);transition:transform .2s;box-shadow:var(--golge)}
  body.menu-acik .yan{transform:none}
  body.menu-acik::after{content:"";position:fixed;inset:0;background:rgba(6,10,18,.4);z-index:19}
  .ust{padding:10px 14px}
  .ust .menu-dugme{display:inline-flex}
  .icerik{padding:16px 14px 90px}
  .izgara.iki,.izgara.uc,.izgara.dort{grid-template-columns:1fr}
  .alan,.alan.g8,.alan.g4,.alan.g3,.alan.g2{grid-column:span 12}
  .sayfa-basligi h1{font-size:24px}
  .toplamlar{min-width:0;width:100%}
  .suzgecler input[type=search]{min-width:0;flex:1}
  .kalemler thead{display:none}
  .kalemler tr{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;padding:10px 0;border-bottom:1px solid var(--cizgi)}
  .kalemler td{border:0;padding:0}
  .kalemler td.aciklama{grid-column:1/-1}
  .gostergeler{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ig-kap{grid-template-columns:1fr;margin-top:-80px}
  .ig-yan{border-right:0;border-bottom:1px solid var(--cizgi-2);padding:14px}
  .ig-adimlar{flex-direction:row;overflow-x:auto;gap:6px}
  .ig-adim{flex:none}
  .ig-adim:not(.simdi) .ad{display:none}
  .ig-icerik{padding:18px 16px}
  .ig-karsilama{border-left:0;padding-left:0}
  .eposta-duzen{grid-template-columns:1fr}
}

/* ------------------------------------------------------------------ yazdırma */
@media print{
  .yan,.ust,.eylemler,.suzgecler,.tablo-alt,.bildirimler,.yazdirma{display:none!important}
  .kabuk{display:block}
  .icerik{padding:0}
  body{background:#fff;color:#000}
  .kart{border:0;padding:0}
}
