/* ============================================================
   admin.css — Core Shell, Layout & Navigation (v2)
   Düzeltmeler: Eşit Boşluklar, Mobilde Sidebar Kaydırma
   ============================================================ */

/* ============================================================
   1. FULLSCREEN SHELL
   ============================================================ */
html body #adminPanelModal.modal-overlay{
  position:fixed !important; top:0 !important; left:0 !important; right:0 !important; bottom:0 !important;
  width:100vw !important; height:100vh !important; height:100dvh !important;
  max-width:none !important; max-height:none !important; padding:0 !important; margin:0 !important;
  border-radius:0 !important; display:none !important; align-items:stretch !important; justify-content:stretch !important;
  background:var(--bg-color) !important; z-index:99999 !important; overflow:hidden !important;
}
html body #adminPanelModal.modal-overlay.active{display:flex !important}
html body #adminPanelModal.modal-overlay .modal-container,
html body #adminPanelModal.modal-overlay .admin-fullscreen{
  position:absolute !important; top:0 !important; left:0 !important; right:0 !important; bottom:0 !important;
  width:100% !important; height:100% !important; max-width:none !important; max-height:none !important;
  min-width:0 !important; min-height:0 !important; padding:0 !important; margin:0 !important;
  border-radius:0 !important; box-shadow:none !important; transform:none !important;
  background:var(--bg-color) !important; display:block !important; overflow:hidden !important;
}
html body #adminPanelModal.modal-overlay .admin-shell{
  width:100% !important; height:100% !important; max-width:none !important; max-height:none !important;
  min-height:0 !important; padding:0 !important; margin:0 !important; display:flex !important;
  border-radius:0 !important; overflow:hidden !important; position:relative !important;
}
html body.admin-panel-open{
  overflow:hidden !important; position:fixed !important; top:0 !important; left:0 !important;
  width:100% !important; height:100% !important;
}

/* ============================================================
   2. SIDEBAR
   ============================================================ */
.admin-sidebar{
  width:250px; flex-shrink:0; background:var(--modal-container-bg);
  border-right:1px solid var(--line-color); display:flex; flex-direction:column;
  padding:20px 0; transition:transform .3s ease; height:100% !important;
  max-height:100% !important; min-height:0 !important; border-radius:0 !important;
  overflow-y:auto !important; -webkit-overflow-scrolling:touch !important;
}
.admin-sidebar-brand{
  display:flex; align-items:center; gap:12px; padding:0 20px 20px;
  border-bottom:1px solid var(--line-color); margin-bottom:12px;
}
.admin-sidebar-brand img{ width:38px; height:38px; border-radius:10px; box-shadow:0 4px 12px rgba(var(--accent-rgb),.3); }
.admin-sidebar-brand span{ font-size:1.05rem; font-weight:800; color:var(--accent); letter-spacing:-.4px; }
.admin-nav{ display:flex; flex-direction:column; gap:2px; padding:0 12px; flex:1; }
.admin-nav .admin-tab{
  display:flex; align-items:center; gap:12px; padding:11px 14px; border-radius:10px;
  background:transparent; border:none; color:var(--text-secondary); font-size:.82rem;
  font-weight:600; cursor:pointer; text-align:left; transition:all .2s; font-family:inherit; position:relative;
}
.admin-nav .admin-tab i{ font-size:1rem; width:18px; text-align:center; flex-shrink:0; }
.admin-nav .admin-tab span{ flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.admin-nav .admin-tab:hover{ background:var(--box-hover-bg); color:var(--accent); }
.admin-nav .admin-tab.active{ background:linear-gradient(135deg,var(--accent),var(--accent-2)); color:#fff; box-shadow:0 4px 14px rgba(var(--accent-rgb),.35); }
.admin-nav .admin-tab .tab-badge{ display:inline-flex; align-items:center; justify-content:center; min-width:18px; height:18px; padding:0 5px; border-radius:9px; background:#ef4444; color:#fff; font-size:.55rem; font-weight:800; }
.admin-sidebar-backdrop{ display:none; position:absolute; inset:0; background:rgba(0,0,0,.55); z-index:90; opacity:0; transition:opacity .25s; }
.admin-sidebar-backdrop.show{ display:block; opacity:1; }

/* ============================================================
   3. MAIN AREA & TOPBAR
   ============================================================ */
.admin-main{
  flex:1 !important; height:100% !important; max-height:100% !important; min-width:0 !important; min-height:0 !important;
  display:flex !important; flex-direction:column !important; overflow:hidden !important; border-radius:0 !important;
}
.admin-topbar{
  flex-shrink:0 !important; height:58px !important; min-height:58px !important;
  border-bottom:1px solid var(--line-color); background:var(--modal-container-bg);
  display:flex; align-items:center; padding:0 20px; gap:14px; z-index:20;
}
.admin-menu-toggle{ display:none; width:40px; height:40px; border-radius:10px; border:1px solid var(--line-color); background:var(--box-bg); color:var(--text-color-override); font-size:1rem; cursor:pointer; align-items:center; justify-content:center; flex-shrink:0; transition:all .2s; }
.admin-menu-toggle:hover{ border-color:var(--accent); color:var(--accent); }
.admin-page-title{ flex:1; font-size:1rem; font-weight:800; color:var(--text-color-override); letter-spacing:-.3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.admin-topbar-actions{ display:flex; gap:8px; flex-shrink:0; }
.admin-icon-btn{ width:40px; height:40px; border-radius:10px; border:1px solid var(--line-color); background:var(--box-bg); color:var(--text-color-override); font-size:.95rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all .2s; }
.admin-icon-btn:hover{ border-color:var(--accent); color:var(--accent); background:var(--box-hover-bg); }

/* EŞİT BOŞLUK DÜZELTMESİ BURADA */
.admin-panel-content{
  flex:1 1 auto !important; min-height:0 !important; height:auto !important; max-height:none !important;
  overflow-y:auto !important; overflow-x:hidden !important; -webkit-overflow-scrolling:touch !important;
  padding:16px 16px 100px 16px !important; /* Üst Sağ Alt Sol */
  max-width:100% !important; box-sizing:border-box !important;
  overscroll-behavior:contain !important;
}

/* ============================================================
   4. SECTIONS
   ============================================================ */
.admin-section{ display:none; }
.admin-section.active{ display:block; animation:fadeIn .3s; }
@keyframes fadeIn{ from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:translateY(0);} }
.admin-page-header{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:20px; flex-wrap:wrap; }
.admin-page-header h2{ font-size:1.4rem; font-weight:800; color:var(--text-color-override); letter-spacing:-.4px; margin:0; }
.admin-page-actions{ display:flex; gap:8px; flex-wrap:wrap; }

/* ============================================================
   5. BOTTOM NAV (MOBİL ALT MENÜ)
   ============================================================ */
html body #adminPanelModal.modal-overlay .admin-bottom-nav{
  display:none !important; position:fixed !important; bottom:0 !important; left:0 !important; right:0 !important;
  width:100vw !important; height:66px !important; min-height:66px !important; max-height:66px !important;
  flex-direction:row !important; background:var(--modal-container-bg) !important; border-top:1px solid var(--line-color) !important;
  padding:0 !important; padding-bottom:env(safe-area-inset-bottom) !important; margin:0 !important;
  z-index:999999 !important; box-shadow:0 -2px 10px rgba(0,0,0,.08) !important; visibility:visible !important; opacity:1 !important; transform:none !important; flex-shrink:0 !important;
}
@media (max-width:900px){ html body #adminPanelModal.modal-overlay .admin-bottom-nav{ display:flex !important; } }
html body #adminPanelModal.modal-overlay .admin-bottom-nav .admin-tab-bottom{
  display:flex !important; flex:1 1 0 !important; flex-direction:column !important; align-items:center !important; justify-content:center !important;
  gap:2px !important; background:transparent !important; border:none !important; color:var(--text-secondary) !important;
  font-size:.62rem !important; font-weight:700 !important; cursor:pointer !important; padding:6px 4px !important; font-family:inherit !important;
  position:relative !important; visibility:visible !important; opacity:1 !important;
}
html body #adminPanelModal.modal-overlay .admin-bottom-nav .admin-tab-bottom i{ font-size:1.05rem !important; display:block !important; }
html body #adminPanelModal.modal-overlay .admin-bottom-nav .admin-tab-bottom span{ display:block !important; }
html body #adminPanelModal.modal-overlay .admin-bottom-nav .admin-tab-bottom.active{ color:var(--accent) !important; }
html body #adminPanelModal.modal-overlay .admin-bottom-nav .admin-tab-bottom.active::before{
  content:'' !important; position:absolute !important; top:0 !important; left:50% !important; transform:translateX(-50%) !important;
  width:32px !important; height:3px !important; border-radius:0 0 3px 3px !important; background:var(--accent) !important; display:block !important;
}
@media (min-width:901px){ html body #adminPanelModal.modal-overlay .admin-bottom-nav{ display:none !important; } }

/* ============================================================
   6. OVERLAY Z-INDEX
   ============================================================ */
#externalEmailModal,#adminChatModal,#orderEmailPreviewModal,#adminUserProfileModal,#adminEditAppModal{z-index:9999998 !important}
#customAlertModal,#qrFullscreen{z-index:99999999 !important}

/* ============================================================
   7. SCROLLBARS & GLOBAL FIXES
   ============================================================ */
.admin-panel-content::-webkit-scrollbar{ width:6px; }
.admin-panel-content::-webkit-scrollbar-thumb{ background:rgba(var(--accent-rgb),.4); border-radius:3px; }
.admin-sidebar::-webkit-scrollbar{ width:5px; }

html body #adminPanelModal.modal-overlay .admin-section,
html body #adminPanelModal.modal-overlay .admin-page-header,
html body #adminPanelModal.modal-overlay .form-group,
html body #adminPanelModal.modal-overlay .toggle-row,
html body #adminPanelModal.modal-overlay .user-card,
html body #adminPanelModal.modal-overlay .activity-item,
html body #adminPanelModal.modal-overlay .admin-actions-grid,
html body #adminPanelModal.modal-overlay .admin-hint,
html body #adminPanelModal.modal-overlay .social-row,
html body #adminPanelModal.modal-overlay .form-input,
html body #adminPanelModal.modal-overlay .form-textarea,
html body #adminPanelModal.modal-overlay .form-label,
html body #adminPanelModal.modal-overlay .user-card-info,
html body #adminPanelModal.modal-overlay .dash-stats,
html body #adminPanelModal.modal-overlay .dash-charts,
html body #adminPanelModal.modal-overlay .dash-bottom{
  max-width:100% !important; box-sizing:border-box !important; overflow-x:hidden !important;
}
html body #adminPanelModal.modal-overlay .form-input,
html body #adminPanelModal.modal-overlay .form-textarea{ width:100% !important; }

/* ============================================================
   8. RESPONSIVE DÜZELTMELERİ
   ============================================================ */
/* MASAÜSTÜ: Genişliklerin orantılı ve eşit olması */
@media (min-width:1025px){
  .admin-sidebar{width:260px}
  .admin-panel-content{padding:28px 32px 40px 32px !important} /* Sol ve Sağ 32px eşitlendi */
  .admin-topbar{height:70px;padding:0 24px}
  .admin-page-title{font-size:1.05rem}
}

@media (max-width:1024px){
  .admin-panel-content{padding:20px 20px 90px 20px !important} /* Sol ve Sağ 20px eşitlendi */
}

@media (max-width:900px){
  .admin-sidebar{ position:absolute; left:0; top:0; bottom:0; width:260px; transform:translateX(-100%); z-index:100; box-shadow:4px 0 24px rgba(0,0,0,.3); 
    /* MOBİL DÜZELTMESİ: Backup sekmesinin alt menüde kaybolmaması için alt boşluk */
    padding-bottom: 90px !important;
    height: 100dvh !important;
  }
  .admin-sidebar.open{ transform:translateX(0); }
  .admin-menu-toggle{ display:flex; }
  .admin-panel-content{ padding:16px 16px 100px 16px !important; } /* Sol ve Sağ 16px eşitlendi */
  .admin-topbar{ padding:0 12px; height:58px; }
  .admin-page-title{ font-size:.9rem; }
  .admin-icon-btn{ width:36px; height:36px; font-size:.85rem; }
}

@media (max-width:480px){
  .admin-sidebar-brand span{ font-size:.95rem; }
  .admin-page-header h2{ font-size:1.15rem; }
  .admin-panel-content{ padding:12px 12px 90px 12px !important; } /* Çok küçük ekranlarda eşit dar boşluk */
}

body.light-mode .admin-sidebar, body.light-mode .admin-topbar { background:#fff; }