/* v103 - Genel responsive/compact düzeltme
   Amaç: laptop/tablet/mobilde sayfanın kaydırılmasını engelleyen sabit yükseklikleri kaldırmak,
   paneli daha kompakt yapmak ve yatay taşmaları güvenli scroll içine almak. */
html{height:auto!important;min-height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;scroll-behavior:smooth;}
body{min-height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;}
img,svg,video,canvas{max-width:100%;height:auto;}
*{max-width:100%;}
input,select,textarea,button{max-width:100%;}

/* ADMIN / PANEL GENEL */
body.admin-body{height:auto!important;min-height:100vh!important;overflow-y:auto!important;overflow-x:hidden!important;background:#eef2f7!important;}
body.admin-body .admin-shell{height:auto!important;min-height:100vh!important;display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;overflow:visible!important;width:100%!important;}
body.admin-body .sidebar{position:sticky!important;top:0!important;align-self:start!important;height:100vh!important;max-height:100vh!important;overflow-y:auto!important;overflow-x:hidden!important;flex:none!important;width:auto!important;padding:14px 10px!important;}
body.admin-body .sidebar a{padding:10px 11px!important;margin:4px 0!important;border-radius:10px!important;font-size:12.5px!important;line-height:1.18!important;overflow-wrap:anywhere!important;}
body.admin-body .panel-logo{margin-bottom:8px!important;}
body.admin-body .panel-logo img{max-height:42px!important;max-width:150px!important;object-fit:contain!important;}
body.admin-body .admin-main{height:auto!important;min-height:100vh!important;overflow:visible!important;overflow-x:hidden!important;padding:14px!important;width:100%!important;min-width:0!important;margin-left:0!important;}
body.admin-body .admin-top{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;flex-wrap:wrap!important;margin-bottom:14px!important;padding:9px 10px!important;border-radius:12px!important;min-height:0!important;overflow:visible!important;}
body.admin-body .top-title-wrap{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;flex:1 1 260px!important;}
body.admin-body .admin-top h1{font-size:18px!important;line-height:1.15!important;margin:0!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
body.admin-body .admin-top-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:wrap!important;min-width:0!important;max-width:100%!important;}
body.admin-body .notif{height:34px!important;min-width:40px!important;padding:0 8px!important;border-radius:8px!important;font-size:13px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;}
body.admin-body .notif b,.nav-badge{font-size:10px!important;min-width:16px!important;height:16px!important;line-height:16px!important;}
body.admin-body .lang-switch-clean{display:flex!important;gap:4px!important;flex-wrap:nowrap!important;align-items:center!important;}
body.admin-body .lang-switch-clean a{height:32px!important;min-width:42px!important;padding:0 7px!important;font-size:11px!important;border-radius:8px!important;}
body.admin-body .admin-user-card{height:42px!important;max-width:210px!important;min-width:0!important;padding:6px 8px!important;border-radius:9px!important;}
body.admin-body .admin-user-meta{min-width:0!important;}
body.admin-body .admin-user-meta strong,body.admin-body .admin-user-meta span,body.admin-body .admin-user-meta small{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:145px!important;}
body.admin-body .admin-card{padding:14px!important;border-radius:14px!important;margin-bottom:12px!important;overflow-x:auto!important;overflow-y:visible!important;}
body.admin-body .admin-card h1,body.admin-body .admin-card h2,body.admin-body .admin-card h3{line-height:1.15!important;margin-top:0!important;}
body.admin-body .admin-card h2{font-size:18px!important;}
body.admin-body .table{width:100%!important;min-width:720px;border-collapse:collapse!important;table-layout:auto!important;}
body.admin-body .table th,body.admin-body .table td{padding:9px 10px!important;font-size:12px!important;line-height:1.25!important;vertical-align:middle!important;word-break:normal!important;overflow-wrap:anywhere!important;}
body.admin-body .small-btn,body.admin-body .btn{font-size:12px!important;padding:8px 10px!important;border-radius:8px!important;line-height:1.1!important;white-space:nowrap!important;}
body.admin-body input,body.admin-body select,body.admin-body textarea{font-size:13px!important;padding:10px 11px!important;border-radius:9px!important;margin:6px 0 10px!important;}
body.admin-body label{font-size:12px!important;}
body.admin-body .row{gap:10px!important;}
body.admin-body .stats,body.admin-body .dashboard-grid,body.admin-body .cards-grid,body.admin-body .kpi-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:10px!important;}
body.admin-body .v17-calendar,body.admin-body .mini-calendar{max-width:100%!important;}
body.admin-body .v17-calendar{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:7px!important;}
body.admin-body .v17-calendar .cal-day,body.admin-body .mini-calendar .cal-day{min-width:0!important;}

/* Employees/planning page compact grid */
body.admin-body .salary-layout,body.admin-body .payroll-layout,body.admin-body .employee-planning-layout{max-width:100%!important;overflow:visible!important;}
body.admin-body .employee-summary-card,body.admin-body .salary-employee-card{min-width:0!important;}

/* Dropdown ve bildirim kutuları taşmasın */
body.admin-body .employee-admin-notif-dropdown,body.admin-body .admin-notif-dropdown,body.admin-body [data-admin-employee-dropdown]{max-width:min(360px,calc(100vw - 24px))!important;min-width:280px!important;white-space:normal!important;overflow-wrap:anywhere!important;}
body.admin-body .employee-admin-notif-row,body.admin-body .admin-notif-row{white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.25!important;}

/* PUBLIC SITE */
body:not(.admin-body) .top{gap:14px!important;flex-wrap:wrap!important;padding:12px clamp(14px,4vw,56px)!important;}
body:not(.admin-body) .brand{min-width:0!important;}
body:not(.admin-body) .brand img{max-height:48px!important;max-width:170px!important;object-fit:contain!important;}
body:not(.admin-body) .desktop-nav,body:not(.admin-body) nav{min-width:0!important;flex-wrap:wrap!important;gap:10px!important;}
body:not(.admin-body) .section{padding:clamp(34px,5vw,62px) clamp(14px,5vw,70px)!important;}
body:not(.admin-body) .grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;gap:16px!important;}
body:not(.admin-body) .row{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;gap:12px!important;}
body:not(.admin-body) .card{border-radius:18px!important;}
body:not(.admin-body) .card-body{padding:18px!important;}
body:not(.admin-body) .cta{margin:22px clamp(14px,5vw,70px)!important;padding:28px!important;border-radius:22px!important;flex-wrap:wrap!important;}
body:not(.admin-body) footer{flex-wrap:wrap!important;padding:26px clamp(14px,5vw,70px)!important;}

/* Boutique / client alanlarında taşma engeli */
.shop-cart-pro,.shop-admin-grid,.client-space-v32 .client-head,.client-space-v32 .admin-card{max-width:100%!important;}
.client-order-row,.order-product,.cart-item-pro{min-width:0!important;}

@media(max-width:1280px){
  body.admin-body .admin-shell{grid-template-columns:205px minmax(0,1fr)!important;}
  body.admin-body .admin-main{padding:12px!important;}
  body.admin-body .sidebar a{font-size:12px!important;padding:9px 10px!important;}
  body.admin-body .admin-user-card{max-width:180px!important;}
  body.admin-body .admin-user-meta strong,body.admin-body .admin-user-meta span,body.admin-body .admin-user-meta small{max-width:120px!important;}
  body.admin-body .table th,body.admin-body .table td{font-size:11.5px!important;padding:8px!important;}
}

@media(max-width:1024px){
  body.admin-body .admin-shell{grid-template-columns:190px minmax(0,1fr)!important;}
  body.admin-body .admin-top-actions{justify-content:flex-start!important;}
  body.admin-body .admin-user-card{display:none!important;}
  body.admin-body .table{min-width:680px!important;}
}

@media(max-width:900px){
  html,body.admin-body{height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;}
  body.admin-body .admin-shell{display:block!important;min-height:100vh!important;height:auto!important;overflow:visible!important;}
  body.admin-body .sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(280px,86vw)!important;height:100dvh!important;max-height:100dvh!important;z-index:1000!important;transform:translateX(-105%)!important;transition:transform .2s ease!important;box-shadow:20px 0 50px rgba(15,23,42,.22)!important;}
  body.admin-body.sidebar-open .sidebar{transform:translateX(0)!important;}
  body.admin-body .admin-main{margin:0!important;width:100%!important;padding:10px!important;min-height:100vh!important;}
  body.admin-body .admin-top{position:sticky!important;top:0!important;z-index:80!important;background:#fff!important;border:1px solid #dfe7f1!important;}
  body.admin-body .admin-menu-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;}
  body.admin-body .top-title-wrap{flex-basis:100%!important;}
  body.admin-body .admin-top-actions{width:100%!important;justify-content:flex-start!important;}
  body.admin-body .admin-card{padding:12px!important;border-radius:12px!important;}
  body.admin-body .table{min-width:640px!important;}
  body.admin-body .row{grid-template-columns:1fr!important;}
}

@media(max-width:640px){
  body.admin-body .admin-main{padding:8px!important;}
  body.admin-body .admin-top h1{font-size:16px!important;}
  body.admin-body .admin-top-actions{gap:5px!important;}
  body.admin-body .lang-switch-clean a{min-width:38px!important;padding:0 5px!important;font-size:10px!important;}
  body.admin-body .notif{height:32px!important;min-width:36px!important;padding:0 7px!important;}
  body.admin-body .admin-card{padding:10px!important;}
  body.admin-body .table{min-width:560px!important;}
  body.admin-body .table th,body.admin-body .table td{font-size:11px!important;padding:7px!important;}
  body:not(.admin-body) .desktop-nav{display:none!important;}
  body:not(.admin-body) .mobile-devis-cta{display:inline-flex!important;}
  body:not(.admin-body) .hamburger-btn{display:inline-flex!important;}
  body:not(.admin-body) .hero,body:not(.admin-body) .slide{min-height:430px!important;}
  body:not(.admin-body) .hero-panel,body:not(.admin-body) .hero-stats{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;margin:12px!important;grid-template-columns:1fr!important;}
  body:not(.admin-body) .section-title{display:block!important;}
  body:not(.admin-body) .section-title h2{font-size:28px!important;}
}

@media(max-width:420px){
  body.admin-body .table{min-width:520px!important;}
  body.admin-body .small-btn,body.admin-body .btn{font-size:11px!important;padding:7px 8px!important;}
}
