@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap');
:root{
    --bg:#f5f3ef;--bg2:#fff;--bg3:#faf8f5;
    --sinir:#e8e4de;--sinir2:#d4cfc8;
    --yazi:#2d2419;--yazi2:#6b5e52;--yazi3:#9b8f82;
    --bakir:#c8773a;--bakir2:#e09050;--bakir-ac:#fdf2e9;--bakir-sin:#e8a96b;
    --kirmizi:#8b2020;--kirmizi-bg:#fee7e7;--kirmizi-sin:#f5bfbf;
    --yesil:#1a6644;--yesil-bg:#edf7f2;--yesil-sin:#b0ddc4;
    --mavi:#1a3f8a;--mavi-bg:#e8f0fe;--mavi-sin:#aac4f5;
    --sidebar-w:210px;--header-h:56px;--radius:10px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body.admin-body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--yazi)}

/* GİRİŞ */
.giris-ekrani{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}
.giris-kutu{background:var(--bg2);border:1px solid var(--sinir);border-radius:16px;padding:36px;width:360px;max-width:95vw;box-shadow:0 4px 24px rgba(45,36,25,.08)}
.giris-logo{font-size:22px;font-weight:700;color:var(--yazi);text-align:center;margin-bottom:4px}
.giris-alt{font-size:12px;color:var(--yazi3);text-align:center;margin-bottom:24px}
.giris-hata{color:var(--kirmizi);font-size:12.5px;text-align:center;margin-top:10px;min-height:18px}

/* SÜPER ADMİN */
.sa-panel{min-height:100vh;background:var(--bg)}
.sa-header{background:var(--bg2);border-bottom:1px solid var(--sinir);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50}
.sa-logo{font-size:17px;font-weight:700;color:var(--yazi);display:flex;align-items:center;gap:10px}
.sa-badge{background:var(--bakir-ac);border:1px solid var(--bakir-sin);color:var(--bakir);font-size:10px;font-weight:600;padding:3px 9px;border-radius:20px;letter-spacing:.3px}
.sa-content{max-width:1100px;margin:0 auto;padding:24px}
.sa-ust{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.sa-ust h2{font-size:20px;font-weight:700;color:var(--yazi)}

.salon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.salon-kart{background:var(--bg2);border:1px solid var(--sinir);border-radius:14px;padding:20px;transition:box-shadow .15s}
.salon-kart:hover{box-shadow:0 4px 16px rgba(45,36,25,.08)}
.salon-kart.dondurulmus{opacity:.65;border-color:var(--kirmizi-sin);background:var(--kirmizi-bg)}
.salon-kart-ust{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.salon-logo-kucuk{width:44px;height:44px;border-radius:10px;object-fit:cover;background:var(--bg3);border:1px solid var(--sinir);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;overflow:hidden}
.salon-logo-kucuk img{width:100%;height:100%;object-fit:cover}
.salon-kart-adi{font-size:15px;font-weight:700;color:var(--yazi)}
.salon-kart-slug{font-size:11px;color:var(--yazi3);margin-top:2px;font-family:monospace}
.salon-kart-info{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:14px;padding:12px;background:var(--bg3);border-radius:8px}
.salon-info-item{font-size:11.5px;color:var(--yazi2)}
.salon-info-label{font-size:10px;color:var(--yazi3);font-weight:600;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:1px}
.salon-kart-alt{display:flex;gap:8px;flex-wrap:wrap}
.durum-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px}
.durum-badge.aktif{background:var(--yesil-bg);color:var(--yesil);border:1px solid var(--yesil-sin)}
.durum-badge.dondurulmus{background:var(--kirmizi-bg);color:var(--kirmizi);border:1px solid var(--kirmizi-sin)}

/* SALON ADMİN LAYOUT */
#admin-panel{display:flex;height:100vh;overflow:hidden;background:var(--bg)}
#sidebar{width:var(--sidebar-w);background:var(--bg2);border-right:1px solid var(--sinir);display:flex;flex-direction:column;flex-shrink:0}
.sidebar-logo{padding:16px;border-bottom:1px solid var(--sinir);display:flex;align-items:center;gap:10px}
.salon-logo-wrap{width:36px;height:36px;border-radius:9px;background:var(--bg3);border:1px solid var(--sinir);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;overflow:hidden}
.salon-logo-wrap img{width:100%;height:100%;object-fit:cover}
.sidebar-salon-adi{font-size:13px;font-weight:700;color:var(--yazi);line-height:1.2}
.sidebar-alt-yazi{font-size:10px;color:var(--yazi3)}
.sidebar-nav{padding:8px 0;flex:1;overflow-y:auto}
.nav-label{font-size:9px;color:var(--yazi3);font-weight:600;letter-spacing:.8px;padding:8px 16px 3px;text-transform:uppercase}
.nav-item{display:flex;align-items:center;gap:8px;padding:8px 14px;cursor:pointer;font-size:13px;color:var(--yazi2);border-left:3px solid transparent;transition:all .15s;user-select:none}
.nav-item:hover{background:var(--bg3);color:var(--yazi)}
.nav-item.aktif{background:var(--bakir-ac);color:var(--bakir);border-left-color:var(--bakir);font-weight:600}
.ikon{font-size:14px;width:18px;text-align:center}
.calisan-listesi{padding:0 8px 8px}
.calisan-badge{display:flex;align-items:center;gap:7px;padding:6px 8px;border-radius:7px;font-size:12px;cursor:pointer;transition:background .15s;color:var(--yazi2)}
.calisan-badge:hover{background:var(--bg3)}
.calisan-badge.secili{background:var(--bakir-ac);color:var(--bakir)}
.calisan-renk{width:9px;height:9px;border-radius:50%;flex-shrink:0}
.calisan-checkbox{margin-left:auto;opacity:.4;font-size:11px}
.calisan-badge.secili .calisan-checkbox{opacity:1;color:var(--bakir)}
.sidebar-alt{padding:12px;border-top:1px solid var(--sinir)}

/* MAIN */
#ana{flex:1;display:flex;flex-direction:column;overflow:hidden}
#header{height:var(--header-h);background:var(--bg2);border-bottom:1px solid var(--sinir);display:flex;align-items:center;padding:0 16px;gap:10px;flex-shrink:0}
.header-tarih{display:flex;align-items:center;gap:8px}
.header-tarih button{background:var(--bg3);border:1px solid var(--sinir);color:var(--yazi2);width:28px;height:28px;border-radius:7px;cursor:pointer;font-size:13px;transition:border-color .15s}
.header-tarih button:hover{border-color:var(--sinir2)}
#tarih-goster{font-size:14px;font-weight:600;color:var(--yazi);min-width:160px}
#bugun-btn{background:var(--bakir-ac);border:1px solid var(--bakir-sin);color:var(--bakir);padding:4px 12px;border-radius:20px;cursor:pointer;font-size:11.5px;font-weight:600;font-family:'Inter',sans-serif;transition:all .15s}
.header-spacer{flex:1}

/* TAKVİM */
.sekme{display:none;flex:1;overflow:hidden}
.sekme.aktif-sekme{display:flex;flex-direction:column}
#takvim-wrap{flex:1;overflow:auto;background:var(--bg)}
#takvim{min-width:620px}
.takvim-header-row{display:grid;position:sticky;top:0;z-index:10;background:var(--bg2);border-bottom:2px solid var(--sinir)}
.th-saat{width:50px}
.th-gun{padding:8px 6px;text-align:center;font-size:10px;color:var(--yazi3);text-transform:uppercase;letter-spacing:.3px;font-weight:500}
.th-gun .gun-no{font-size:19px;font-weight:700;color:var(--yazi);display:block;margin-top:2px;letter-spacing:-.5px}
.th-gun.bugun-col .gun-no{color:var(--bakir)}
.th-gun.bugun-col{color:var(--bakir)}
.saat-row{display:grid;border-bottom:1px solid rgba(0,0,0,.05);min-height:46px}
.saat-etiket{width:50px;padding:5px 8px 0 0;font-size:10px;color:var(--yazi3);text-align:right;position:sticky;left:0;background:var(--bg2);z-index:5}
.gun-cell{border-left:1px solid rgba(0,0,0,.05);padding:2px 3px;cursor:pointer;transition:background .1s}
.gun-cell:hover{background:var(--bakir-ac)}
.gun-cell.bugun-col{background:rgba(200,119,58,.03)}

.randevu-kart{border-radius:6px;padding:3px 8px;font-size:11px;font-weight:500;cursor:pointer;border-left:3px solid transparent;transition:filter .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}
.randevu-kart:hover{filter:brightness(.93)}
.r-musteri{font-weight:700;font-size:11.5px}
.r-hizmet{font-size:10px;opacity:.75}

/* YÖNETİM */
.yonetim-panel{padding:20px;max-width:700px;overflow-y:auto}
.yonetim-baslik{font-size:18px;font-weight:700;color:var(--yazi);margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}
.tablo-satir{display:flex;align-items:center;gap:10px;padding:11px 14px;background:var(--bg2);border-radius:9px;margin-bottom:8px;border:1px solid var(--sinir);transition:border-color .15s}
.tablo-satir:hover{border-color:var(--sinir2)}
.tablo-renk{width:12px;height:12px;border-radius:50%;flex-shrink:0}
.tablo-ad{flex:1;font-size:13.5px;font-weight:500;color:var(--yazi)}
.tablo-alt{font-size:12px;color:var(--yazi3)}

/* DETAY POPUP */
.detay-popup{background:var(--bg2);border:1px solid var(--sinir);border-radius:12px;padding:14px 16px;width:230px;position:fixed;z-index:200;font-size:12.5px;box-shadow:0 8px 32px rgba(45,36,25,.12);display:none}
.detay-popup.goster{display:block}
.d-baslik{font-weight:700;font-size:14px;margin-bottom:8px;color:var(--yazi)}
.d-satir{color:var(--yazi3);margin-bottom:3px;font-size:12px}
.d-satir span{color:var(--yazi)}

/* BUTONLAR */
.btn-primary{background:var(--bakir);color:#fff;border:none;border-radius:9px;padding:9px 18px;font-size:13px;font-weight:600;cursor:pointer;font-family:'Inter',sans-serif;transition:background .15s;display:inline-flex;align-items:center;gap:6px}
.btn-primary:hover{background:var(--bakir2)}
.btn-primary.sm{padding:6px 13px;font-size:12px;border-radius:7px}
.btn-ghost{background:none;border:1px solid var(--sinir);color:var(--yazi2);border-radius:8px;padding:7px 14px;font-size:12.5px;cursor:pointer;font-family:'Inter',sans-serif;transition:all .15s}
.btn-ghost:hover{border-color:var(--sinir2);color:var(--yazi)}
.btn-duzenle{background:var(--bg3);border:1px solid var(--sinir);color:var(--yazi2);padding:5px 11px;border-radius:7px;font-size:12px;cursor:pointer;font-family:'Inter',sans-serif;transition:all .15s}
.btn-duzenle:hover{border-color:var(--sinir2);color:var(--yazi)}
.btn-sil{background:var(--kirmizi-bg);border:1px solid var(--kirmizi-sin);color:var(--kirmizi);padding:5px 11px;border-radius:7px;font-size:12px;cursor:pointer;font-family:'Inter',sans-serif;transition:all .15s}
.btn-sil:hover{background:#fdd}
.btn-danger{background:var(--kirmizi-bg);border:1px solid var(--kirmizi-sin);color:var(--kirmizi);border-radius:9px;padding:9px 18px;font-size:13px;font-weight:600;cursor:pointer;font-family:'Inter',sans-serif}
.btn-cikis{width:100%;background:var(--kirmizi-bg);border:1px solid var(--kirmizi-sin);color:var(--kirmizi);border-radius:8px;padding:8px;font-size:12.5px;cursor:pointer;font-family:'Inter',sans-serif;transition:all .15s}
.btn-cikis:hover{background:#fdd}
.btn-dondur{background:#fff8e6;border:1px solid #f5c98a;color:#7a4010;padding:5px 11px;border-radius:7px;font-size:12px;cursor:pointer;font-family:'Inter',sans-serif}
.btn-aktif-et{background:var(--yesil-bg);border:1px solid var(--yesil-sin);color:var(--yesil);padding:5px 11px;border-radius:7px;font-size:12px;cursor:pointer;font-family:'Inter',sans-serif}

/* SHARED MODAL */
.modal-arka{position:fixed;inset:0;background:rgba(45,36,25,.45);backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}
.modal-arka.acik{opacity:1;pointer-events:all}
.modal{background:var(--bg2);border:1px solid var(--sinir);border-radius:16px;width:460px;max-width:95vw;max-height:90vh;overflow-y:auto;padding:26px;transform:translateY(14px);transition:transform .2s;box-shadow:0 8px 40px rgba(45,36,25,.12)}
.modal-arka.acik .modal{transform:translateY(0)}
.modal-baslik{font-size:17px;font-weight:700;color:var(--yazi);margin-bottom:18px;display:flex;justify-content:space-between;align-items:center}
.modal-kapat{background:none;border:none;color:var(--yazi3);font-size:18px;cursor:pointer;width:28px;height:28px;border-radius:6px;transition:background .15s}
.modal-kapat:hover{background:var(--bg3)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grup{margin-bottom:13px}
.form-grup label{display:block;font-size:11px;color:var(--yazi3);font-weight:600;letter-spacing:.3px;margin-bottom:4px;text-transform:uppercase}
.form-grup input,.form-grup select,.form-grup textarea{width:100%;background:var(--bg3);border:1px solid var(--sinir);color:var(--yazi);border-radius:8px;padding:9px 12px;font-size:13.5px;font-family:'Inter',sans-serif;outline:none;transition:border-color .15s}
.form-grup input:focus,.form-grup select:focus,.form-grup textarea:focus{border-color:var(--bakir);background:var(--bg2)}
.form-grup textarea{resize:vertical;min-height:60px}
.form-grup input[type="color"]{padding:4px;height:40px;cursor:pointer}

.bildirim{position:fixed;bottom:20px;right:20px;background:var(--bg2);border:1px solid var(--sinir);border-radius:10px;padding:12px 18px;font-size:13px;z-index:300;transform:translateY(20px);opacity:0;transition:all .25s;max-width:300px;box-shadow:0 4px 20px rgba(45,36,25,.1)}
.bildirim.goster{opacity:1;transform:translateY(0)}
.bildirim.basari{border-left:4px solid var(--yesil)}
.bildirim.hata{border-left:4px solid var(--kirmizi)}

.dil-secici{display:flex;gap:3px}
.dil-btn{background:none;border:1px solid transparent;border-radius:6px;padding:3px 5px;font-size:17px;cursor:pointer;opacity:.45;transition:all .15s;line-height:1}
.dil-btn:hover{opacity:.8;border-color:var(--sinir)}
.dil-btn.aktif{opacity:1;border-color:var(--bakir-sin);background:var(--bakir-ac)}

.yukleniyor{padding:40px;text-align:center;color:var(--yazi3);font-size:14px}
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-thumb{background:var(--sinir2);border-radius:3px}

@media(max-width:768px){
    #sidebar{display:none}
    #tarih-goster{font-size:12px;min-width:120px}
    #takvim{min-width:480px}
    .sa-content{padding:14px}
    .salon-grid{grid-template-columns:1fr}
}

/* SaaS ek ekranlar */
.saas-ozet{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px}
.ozet-kart{background:var(--bg2);border:1px solid var(--sinir);border-radius:14px;padding:16px;box-shadow:0 3px 14px rgba(45,36,25,.05)}
.ozet-kart b{display:block;font-size:24px;color:var(--yazi);margin-bottom:4px}
.ozet-kart span{font-size:12px;color:var(--yazi3)}
.tablo-ad small{display:block;color:var(--yazi3);font-weight:500;margin-top:3px;line-height:1.35}
.bos{padding:20px;color:var(--yazi3);font-size:13px}
.tablo-satir.kritik{border-left:4px solid var(--kirmizi);background:#fff7f7}
.mini-table{max-height:260px;overflow:auto;border-top:1px solid var(--sinir)}
.bilgi-kutu{background:#fff6ec;border:1px solid #f0d3b8;border-radius:10px;padding:10px 12px;color:#6b4b2d;font-size:13px;line-height:1.45}
