/* Panel (admin + bayi) ortak arayuz stili */
:root{
  --arka-plan:   #F4F6F5;
  --yuzey:       #FFFFFF;
  --metin:       #17251E;
  --metin-soluk: #5E6C64;
  --cizgi:       #E5EAE7;
  --marka:       #1C4635;
  --marka-koyu:  #163A2C;
  --basari:      #1B8153;
  --basari-zemin:#E7F5EE;
  --uyari:       #B45309;
  --uyari-zemin: #FEF3E2;
  --hata:        #B42318;
  --hata-zemin:  #FDECEC;
  --odak:        #2C6E52;
}
*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
body{
  font-family:"Plus Jakarta Sans", -apple-system, "Segoe UI", Roboto, sans-serif;
  background:var(--arka-plan);
  color:var(--metin);
  min-height:100vh;
}
a{ color:var(--marka); }
.gizli{ display:none !important; }

/* ---------- Giris ekrani ---------- */
.giris-sayfa{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1.5rem;
}
.giris-kutu{
  width:100%;
  max-width:23rem;
  background:var(--yuzey);
  border:1px solid var(--cizgi);
  border-radius:1.25rem;
  padding:2rem 1.75rem;
  box-shadow:0 20px 48px -24px rgba(23,37,30,.25);
}
.giris-kutu h1{ font-size:1.25rem; margin:0 0 .25rem; }
.giris-kutu .alt{ color:var(--metin-soluk); font-size:.875rem; margin:0 0 1.5rem; }

/* ---------- Genel layout ---------- */
.uygulama{ display:flex; min-height:100vh; }
.kenar{
  width:15.5rem;
  flex:none;
  background:var(--marka);
  color:#fff;
  padding:1.5rem 1rem;
  display:flex;
  flex-direction:column;
  gap:.25rem;
}
.kenar .marka-baslik{
  font-weight:800;
  font-size:1.05rem;
  margin-bottom:1.25rem;
  padding:0 .5rem;
}
.kenar .marka-baslik small{ display:block; font-weight:500; opacity:.75; font-size:.75rem; margin-top:.15rem; }
.kenar a{
  color:#fff;
  text-decoration:none;
  padding:.65rem .75rem;
  border-radius:.6rem;
  font-size:.9rem;
  font-weight:500;
  opacity:.85;
}
.kenar a:hover, .kenar a.aktif{ background:rgba(255,255,255,.12); opacity:1; }
.kenar .ayir{ flex:1; }
.kenar .cikis{ opacity:.7; font-size:.8rem; }

.icerik{ flex:1; padding:2rem 2.25rem; max-width:72rem; }
.icerik h1{ font-size:1.5rem; margin:0 0 .35rem; }
.icerik .ust-alt{ color:var(--metin-soluk); margin:0 0 1.5rem; font-size:.9rem; }
.ust-satir{ display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1.5rem; }
.ust-satir h1{ margin:0; }

/* ---------- Kart / kutu ---------- */
.kutu{
  background:var(--yuzey);
  border:1px solid var(--cizgi);
  border-radius:1rem;
  padding:1.5rem;
  margin-bottom:1.5rem;
}
.kutu h2{ font-size:1.05rem; margin:0 0 1rem; }

.istatistik-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(11rem,1fr)); gap:1rem; margin-bottom:1.5rem; }
.istatistik{
  background:var(--yuzey);
  border:1px solid var(--cizgi);
  border-radius:1rem;
  padding:1.25rem 1.375rem;
}
.istatistik .sayi{ font-size:1.75rem; font-weight:800; line-height:1.2; }
.istatistik .etiket{ color:var(--metin-soluk); font-size:.8125rem; font-weight:600; margin-top:.2rem; }

/* ---------- Form ---------- */
.form-grid{ display:grid; gap:1rem; }
.form-grid.iki-kolon{ grid-template-columns:1fr 1fr; }
label{ display:block; font-size:.8125rem; font-weight:700; margin-bottom:.35rem; color:var(--metin); }
label .opsiyonel{ color:var(--metin-soluk); font-weight:500; }
input[type=text], input[type=email], input[type=password], input[type=tel], input[type=number], input[type=date], textarea, select{
  width:100%;
  font-family:inherit;
  font-size:.9rem;
  padding:.65rem .8rem;
  border:1px solid var(--cizgi);
  border-radius:.65rem;
  background:#fff;
  color:var(--metin);
}
input:focus, textarea:focus, select:focus{ outline:2px solid var(--odak); outline-offset:1px; }
textarea{ resize:vertical; min-height:5rem; }
.yardim-metni{ font-size:.78rem; color:var(--metin-soluk); margin-top:.3rem; }
.alan{ margin-bottom:1.1rem; }
fieldset{ border:1px solid var(--cizgi); border-radius:.85rem; padding:1rem 1rem .25rem; margin:0 0 1.1rem; }
legend{ font-size:.8125rem; font-weight:700; padding:0 .4rem; }

.iban-satiri{ display:grid; grid-template-columns:1fr 1.4fr 1fr auto; gap:.6rem; align-items:end; margin-bottom:.75rem; }
.iban-satiri:last-child{ margin-bottom:0; }

/* ---------- Butonlar ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.4rem;
  font-family:inherit; font-size:.875rem; font-weight:700;
  padding:.65rem 1.15rem; border-radius:.7rem; border:1px solid transparent;
  cursor:pointer; text-decoration:none; line-height:1.2;
}
.btn-birincil{ background:var(--marka); color:#fff; }
.btn-birincil:hover{ background:var(--marka-koyu); }
.btn-ikincil{ background:#fff; color:var(--metin); border-color:var(--cizgi); }
.btn-ikincil:hover{ background:var(--arka-plan); }
.btn-tehlike{ background:var(--hata-zemin); color:var(--hata); }
.btn-tehlike:hover{ background:#f8d9d7; }
.btn-kucuk{ padding:.4rem .75rem; font-size:.8rem; }
.btn-tam{ width:100%; }
.btn[disabled]{ opacity:.5; cursor:not-allowed; }
.btn-grup{ display:flex; gap:.6rem; flex-wrap:wrap; }

/* ---------- Tablo ---------- */
table{ width:100%; border-collapse:collapse; font-size:.875rem; }
th, td{ text-align:left; padding:.7rem .6rem; border-bottom:1px solid var(--cizgi); }
th{ color:var(--metin-soluk); font-size:.75rem; text-transform:uppercase; letter-spacing:.04em; font-weight:700; }
tr:last-child td{ border-bottom:0; }
.tablo-sarma{ overflow-x:auto; }
.bos-durum{ padding:2rem 1rem; text-align:center; color:var(--metin-soluk); }

/* ---------- Rozet ---------- */
.rozet{ display:inline-flex; align-items:center; gap:.3rem; padding:.2rem .6rem; border-radius:999px; font-size:.75rem; font-weight:700; }
.rozet-basari{ background:var(--basari-zemin); color:var(--basari); }
.rozet-uyari{ background:var(--uyari-zemin); color:var(--uyari); }
.rozet-hata{ background:var(--hata-zemin); color:var(--hata); }
.rozet-notr{ background:var(--arka-plan); color:var(--metin-soluk); }

/* ---------- Bildirim ---------- */
.bildirim{ padding:.85rem 1.1rem; border-radius:.75rem; font-size:.875rem; font-weight:600; margin-bottom:1.25rem; }
.bildirim-basari{ background:var(--basari-zemin); color:var(--basari); }
.bildirim-hata{ background:var(--hata-zemin); color:var(--hata); }
.bildirim-uyari{ background:var(--uyari-zemin); color:var(--uyari); }

/* ---------- Kota gostergesi ---------- */
.kota-cubuk{ height:.5rem; border-radius:999px; background:var(--cizgi); overflow:hidden; margin-top:.5rem; }
.kota-cubuk-ic{ height:100%; background:var(--marka); border-radius:999px; }
.kota-cubuk-ic.dolu{ background:var(--hata); }

.url-kutusu{
  display:flex; align-items:center; gap:.5rem;
  background:var(--arka-plan); border:1px solid var(--cizgi); border-radius:.65rem;
  padding:.55rem .75rem; font-size:.85rem; font-family:ui-monospace,Consolas,monospace;
  overflow-x:auto; white-space:nowrap;
}

@media (max-width: 860px){
  .uygulama{ flex-direction:column; }
  .kenar{ width:100%; flex-direction:row; overflow-x:auto; padding:1rem; align-items:center; }
  .kenar .marka-baslik{ margin-bottom:0; margin-right:.5rem; }
  .kenar .ayir{ display:none; }
  .icerik{ padding:1.25rem; }
  .form-grid.iki-kolon{ grid-template-columns:1fr; }
  .iban-satiri{ grid-template-columns:1fr; }
}
