html,body{margin:0!important;padding:0!important;font-family:"Segoe UI",Inter,Arial,sans-serif!important;background:var(--se-bg)!important;color:var(--se-ink)!important}
/*
  Şeker Efendi | Ortak Uygulama Kabuğu v90
  Tek kaynak: sol menü + üst bar + ortak modal davranışı.
  Sayfa CSS'leri burada tanımlı bileşenleri değiştiremez.
*/
:root{
  --se-red:#c1121f;
  --se-red-soft:#fff1f2;
  --se-green:#14804a;
  --se-green-soft:#edf8f1;
  --se-ink:#152033;
  --se-muted:#667085;
  --se-line:#e5eaf0;
  --se-bg:#f8fafc;
  --se-white:#fff;
  --se-sidebar-width:224px;
  --se-sidebar-collapsed:68px;
  --se-topbar-height:64px;
  --se-menu-font-size:12px;
  --se-submenu-font-size:11px;
}

/* Isolated shell frame */
.app-shell{
  min-height:100vh!important;
  display:grid!important;
  grid-template-columns:var(--se-sidebar-width) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  margin:0!important;
  padding:0!important;
  background:var(--se-bg)!important;
}
.app-shell > .sidebar{
  grid-column:1!important;
  grid-row:1!important;
  position:sticky!important;
  top:0!important;
  width:var(--se-sidebar-width)!important;
  min-width:var(--se-sidebar-width)!important;
  height:100vh!important;
  min-height:100vh!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  z-index:80!important;
  background:var(--se-white)!important;
  border:0!important;
  border-right:1px solid var(--se-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.app-shell > .main-area,
.app-shell > .main{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  margin:0!important;
  background:var(--se-bg)!important;
}
.app-shell > .main{display:block!important;padding:var(--se-main-padding,0)!important}
/* Each CRM page declares its own content spacing with --se-main-padding.
   Shell never removes page padding. */

/* Brand */
.app-shell > .sidebar .sidebar-brand,
.app-shell > .sidebar .brand{
  flex:0 0 72px!important;
  min-height:72px!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  margin:0!important;
  padding:15px 18px!important;
  overflow:hidden!important;
  color:var(--se-ink)!important;
  text-decoration:none!important;
  background:var(--se-white)!important;
  border:0!important;
  border-bottom:1px solid var(--se-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.app-shell > .sidebar .sidebar-brand img,
.app-shell > .sidebar .brand img{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  object-fit:contain!important;
  flex:0 0 36px!important;
}
.app-shell > .sidebar .brand-copy{min-width:0!important;overflow:hidden!important}
.app-shell > .sidebar .sidebar-brand strong,
.app-shell > .sidebar .brand strong{
  display:block!important;
  overflow:hidden!important;
  color:var(--se-ink)!important;
  font-family:inherit!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.app-shell > .sidebar .sidebar-brand small,
.app-shell > .sidebar .brand small{
  display:block!important;
  margin-top:3px!important;
  color:var(--se-muted)!important;
  font-family:inherit!important;
  font-size:10px!important;
  font-weight:500!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
}

/* Nav: only app-shell.js writes the list */
.app-shell > .sidebar .side-nav[data-menu-source]{
  flex:1 1 auto!important;
  min-height:0!important;
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:10px 10px 14px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  background:var(--se-white)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  scrollbar-width:thin;
  scrollbar-color:#cbd5df transparent;
}
.app-shell > .sidebar .side-nav[data-menu-source]::-webkit-scrollbar{width:8px}
.app-shell > .sidebar .side-nav[data-menu-source]::-webkit-scrollbar-track{background:transparent}
.app-shell > .sidebar .side-nav[data-menu-source]::-webkit-scrollbar-thumb{background:#cbd5df;border:2px solid #fff;border-radius:99px}
.app-shell > .sidebar .side-nav[data-menu-source] > *{box-sizing:border-box!important}

/* Main items */
.app-shell > .sidebar .side-nav[data-menu-source] .nav-item{
  position:relative!important;
  min-height:38px!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  margin:2px 0!important;
  padding:0 11px!important;
  overflow:hidden!important;
  color:#1f3b4d!important;
  font-family:inherit!important;
  font-size:var(--se-menu-font-size)!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-align:left!important;
  text-decoration:none!important;
  text-transform:none!important;
  white-space:nowrap!important;
  background:transparent!important;
  border:0!important;
  border-radius:9px!important;
  box-shadow:none!important;
  transition:background .16s ease,color .16s ease!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .nav-item .icon{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  display:grid!important;
  place-items:center!important;
  color:var(--se-green)!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .nav-item svg{
  display:block!important;
  width:17px!important;
  height:17px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .nav-label{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .nav-item:hover{
  color:var(--se-green)!important;
  background:var(--se-green-soft)!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .nav-item.active{
  color:var(--se-green)!important;
  background:#edf6f1!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .nav-item.active::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:9px!important;
  bottom:9px!important;
  width:3px!important;
  background:var(--se-red)!important;
  border-radius:3px!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .nav-item.danger{
  margin-top:8px!important;
  color:var(--se-red)!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .nav-item.danger .icon{color:var(--se-red)!important}

/* Group rows and submenus */
.app-shell > .sidebar .side-nav[data-menu-source] .explore-nav-group,
.app-shell > .sidebar .side-nav[data-menu-source] .stay-nav-group{
  display:block!important;
  margin:2px 0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .explore-subnav,
.app-shell > .sidebar .side-nav[data-menu-source] .stay-subnav{
  display:none!important;
  margin:2px 0 6px 29px!important;
  padding:2px 0 3px 10px!important;
  background:transparent!important;
  border:0!important;
  border-left:1px solid #dce7df!important;
  border-radius:0!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .explore-nav-group.is-open .explore-subnav,
.app-shell > .sidebar .side-nav[data-menu-source] .stay-nav-group.is-open .stay-subnav{
  display:grid!important;
  gap:1px!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .explore-subnav a,
.app-shell > .sidebar .side-nav[data-menu-source] .stay-subnav a{
  min-height:28px!important;
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  margin:0!important;
  padding:0 8px!important;
  overflow:hidden!important;
  color:#5c6d7a!important;
  font-family:inherit!important;
  font-size:var(--se-submenu-font-size)!important;
  font-weight:500!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-decoration:none!important;
  text-overflow:ellipsis!important;
  text-transform:none!important;
  white-space:nowrap!important;
  background:transparent!important;
  border:0!important;
  border-radius:7px!important;
  box-shadow:none!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .explore-subnav a:hover,
.app-shell > .sidebar .side-nav[data-menu-source] .stay-subnav a:hover{
  color:var(--se-green)!important;
  font-weight:600!important;
  background:var(--se-green-soft)!important;
}
.app-shell > .sidebar .side-nav[data-menu-source] .explore-subnav a.active,
.app-shell > .sidebar .side-nav[data-menu-source] .stay-subnav a.active{
  color:var(--se-green)!important;
  font-weight:700!important;
  background:#edf6f1!important;
}

/* Footer */
.app-shell > .sidebar .sidebar-footer,
.app-shell > .sidebar .support-card{
  flex:0 0 auto!important;
  width:100%!important;
  display:block!important;
  margin:0!important;
  padding:11px 14px!important;
  color:var(--se-muted)!important;
  font-family:inherit!important;
  font-size:10px!important;
  font-weight:500!important;
  line-height:1.45!important;
  background:var(--se-white)!important;
  border:0!important;
  border-top:1px solid var(--se-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.app-shell > .sidebar .support-card > *{display:none!important}
.app-shell > .sidebar .support-card{font-size:0!important}
.app-shell > .sidebar .support-card::after{
  content:"Finansal bilgiler yalnızca Raporlar alanında gösterilir."!important;
  display:block!important;
  color:var(--se-muted)!important;
  font-size:10px!important;
}

/* Topbar */
.app-shell .topbar,
.app-shell > .main-area > .topbar,
.app-shell > .main > .topbar{
  position:sticky!important;
  top:0!important;
  z-index:60!important;
  width:100%!important;
  height:var(--se-topbar-height)!important;
  min-height:var(--se-topbar-height)!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  padding:0 24px!important;
  background:rgba(255,255,255,.97)!important;
  border:0!important;
  border-bottom:1px solid var(--se-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.app-shell .hamburger,
.app-shell .quick-btn,
.app-shell .calc-btn,
.app-shell .bell{
  min-height:34px!important;
  height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  border:0!important;
  border-radius:9px!important;
  background:var(--se-white)!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:background .16s ease,color .16s ease,transform .16s ease!important;
}
.app-shell .hamburger,.app-shell .bell{width:36px!important;min-width:36px!important;padding:0!important;color:#344054!important;font-size:17px!important;line-height:1!important}
.app-shell .quick-wrap{position:relative!important;display:inline-flex!important;align-items:center!important}
.app-shell .quick-btn,.app-shell .calc-btn{gap:6px!important;padding:0 12px!important;font-family:inherit!important;font-size:12px!important;font-weight:700!important;line-height:1!important;white-space:nowrap!important}
.app-shell .quick-btn{color:var(--se-red)!important}.app-shell .calc-btn{color:var(--se-green)!important}
.app-shell .hamburger:hover,.app-shell .bell:hover{color:var(--se-green)!important;background:#f3f6f4!important}
.app-shell .quick-btn:hover,.app-shell .quick-btn.is-open{color:var(--se-red)!important;background:#f7f7f7!important}
.app-shell .calc-btn:hover{color:var(--se-green)!important;background:#f7f7f7!important}
.app-shell .hamburger:active,.app-shell .quick-btn:active,.app-shell .calc-btn:active,.app-shell .bell:active{transform:scale(.97)!important}
.app-shell .top-spacer{flex:1 1 auto!important}
.app-shell .quick-menu{position:absolute!important;top:42px!important;left:0!important;z-index:100!important;width:198px!important;display:none!important;margin:0!important;padding:6px!important;background:#fff!important;border:1px solid var(--se-line)!important;border-radius:10px!important;box-shadow:0 14px 28px rgba(15,23,42,.12)!important}.app-shell .quick-menu.is-open{display:grid!important}.app-shell .quick-menu a,.app-shell .quick-menu button{width:100%!important;display:block!important;padding:8px 9px!important;border:0!important;border-radius:7px!important;background:#fff!important;color:#344054!important;font:600 11px/1.2 inherit!important;text-align:left!important;text-decoration:none!important}.app-shell .quick-menu a:hover,.app-shell .quick-menu button:hover{background:var(--se-green-soft)!important;color:var(--se-green)!important}
.app-shell .bell{position:relative!important}.app-shell .bell sup{position:absolute!important;right:-5px!important;top:-6px!important;display:grid!important;place-items:center!important;min-width:15px!important;height:15px!important;border-radius:50%!important;background:var(--se-red)!important;color:#fff!important;font-size:9px!important;line-height:1!important}.app-shell .user-chip{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;padding:0 2px!important;color:var(--se-ink)!important;text-decoration:none!important;background:transparent!important;border:0!important}.app-shell .user-chip>span{width:32px!important;height:32px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:var(--se-red-soft)!important;color:var(--se-red)!important}.app-shell .user-chip b{display:block!important;font-size:12px!important;font-weight:700!important;line-height:1.15!important}.app-shell .user-chip small{display:block!important;margin-top:2px!important;color:var(--se-muted)!important;font-size:10px!important;line-height:1.15!important}


/* Shared modal */
.shell-modal-backdrop{position:fixed!important;inset:0!important;z-index:500!important;display:none!important;align-items:center!important;justify-content:center!important;padding:18px!important;background:rgba(15,23,42,.35)!important}.shell-modal-backdrop.is-open{display:flex!important}.shell-modal{width:min(440px,100%)!important;overflow:hidden!important;background:#fff!important;border:1px solid var(--se-line)!important;border-radius:14px!important;box-shadow:0 22px 50px rgba(15,23,42,.24)!important}.shell-modal-head{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:16px 18px!important;border-bottom:1px solid var(--se-line)!important}.shell-modal-head h2{margin:0!important;color:var(--se-ink)!important;font-size:16px!important}.shell-modal-close{border:0!important;background:transparent!important;color:var(--se-muted)!important;font-size:22px!important;line-height:1!important;cursor:pointer!important}.shell-modal-body{padding:18px!important;color:#344054!important;font-size:13px!important;line-height:1.5!important}.shell-modal-body label{display:block!important;margin:0 0 6px!important;color:var(--se-muted)!important;font-size:11px!important;font-weight:700!important}.shell-modal-body input,.shell-modal-body textarea{width:100%!important;margin:0 0 12px!important;padding:10px 11px!important;border:1px solid var(--se-line)!important;border-radius:8px!important;background:#fff!important;color:var(--se-ink)!important;font:inherit!important}.shell-modal-body textarea{min-height:92px!important;resize:vertical!important}.shell-modal-actions{display:flex!important;justify-content:flex-end!important;gap:8px!important;margin-top:6px!important}.shell-modal-actions button{height:34px!important;padding:0 12px!important;border:0!important;border-radius:8px!important;background:var(--se-green)!important;color:#fff!important;font-weight:700!important;cursor:pointer!important}.shell-modal-result{margin-top:8px!important;color:var(--se-green)!important;font-size:12px!important;font-weight:700!important}


/* v94 | Sidebar state contract
   Sidebar is a genuine two-state component. No generic page CSS may control its width. */
*,*::before,*::after{box-sizing:border-box!important}
:root{--se-sidebar-width:224px;--se-sidebar-collapsed:68px;--se-topbar-height:64px;--se-main-padding:0 28px 36px}
html,body{min-width:320px!important;overflow-x:hidden!important}
.app-shell{grid-template-columns:var(--se-sidebar-width) minmax(0,1fr)!important}
.app-shell[data-sidebar-state="open"]{grid-template-columns:var(--se-sidebar-width) minmax(0,1fr)!important}
.app-shell[data-sidebar-state="collapsed"]{grid-template-columns:var(--se-sidebar-collapsed) minmax(0,1fr)!important}

/* Brand matches the 64px topbar. Padding is included in its height. */
.app-shell>.sidebar .sidebar-brand,
.app-shell>.sidebar .brand{
  flex:0 0 var(--se-topbar-height)!important;
  min-height:var(--se-topbar-height)!important;
  height:var(--se-topbar-height)!important;
  padding:12px 16px!important;
}
.app-shell>.sidebar .sidebar-brand img,
.app-shell>.sidebar .brand img{width:34px!important;height:34px!important;min-width:34px!important}

/* Open state */
.app-shell[data-sidebar-state="open"]>.sidebar{width:var(--se-sidebar-width)!important;min-width:var(--se-sidebar-width)!important;overflow:hidden!important}
.app-shell[data-sidebar-state="open"]>.sidebar .sidebar-brand{justify-content:flex-start!important}
.app-shell[data-sidebar-state="open"]>.sidebar .brand-copy,
.app-shell[data-sidebar-state="open"]>.sidebar .nav-label,
.app-shell[data-sidebar-state="open"]>.sidebar .sidebar-footer{display:block!important;visibility:visible!important;opacity:1!important;width:auto!important;max-width:none!important}
.app-shell[data-sidebar-state="open"]>.sidebar .side-nav[data-menu-source]{padding:10px 10px 14px!important;overflow-x:hidden!important;overflow-y:auto!important}
.app-shell[data-sidebar-state="open"]>.sidebar .side-nav[data-menu-source] .nav-item{justify-content:flex-start!important;gap:11px!important;padding:0 11px!important}
.app-shell[data-sidebar-state="open"]>.sidebar .explore-subnav,
.app-shell[data-sidebar-state="open"]>.sidebar .stay-subnav{visibility:visible!important;opacity:1!important}

/* Collapsed state: icon rail only. Text and nested entries do not exist visually. */
.app-shell[data-sidebar-state="collapsed"]>.sidebar{width:var(--se-sidebar-collapsed)!important;min-width:var(--se-sidebar-collapsed)!important;overflow:visible!important}
.app-shell[data-sidebar-state="collapsed"]>.sidebar .sidebar-brand{justify-content:center!important;padding:15px 0!important}
.app-shell[data-sidebar-state="collapsed"]>.sidebar .brand-copy,
.app-shell[data-sidebar-state="collapsed"]>.sidebar .nav-label,
.app-shell[data-sidebar-state="collapsed"]>.sidebar .sidebar-footer,
.app-shell[data-sidebar-state="collapsed"]>.sidebar .support-card,
.app-shell[data-sidebar-state="collapsed"]>.sidebar .explore-subnav,
.app-shell[data-sidebar-state="collapsed"]>.sidebar .stay-subnav{display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;max-width:0!important;overflow:hidden!important}
.app-shell[data-sidebar-state="collapsed"]>.sidebar .side-nav[data-menu-source]{padding:10px 8px 14px!important;overflow:visible!important}
.app-shell[data-sidebar-state="collapsed"]>.sidebar .side-nav[data-menu-source] .nav-item{justify-content:center!important;gap:0!important;padding:0!important;overflow:visible!important}
.app-shell[data-sidebar-state="collapsed"]>.sidebar .side-nav[data-menu-source] .nav-item .icon{width:18px!important;height:18px!important;min-width:18px!important}
.app-shell[data-sidebar-state="collapsed"]>.sidebar .side-nav[data-menu-source] .nav-item.active::before{left:0!important;top:9px!important;bottom:9px!important}
/* Tooltip is attached to the hovered row, not fixed to a mystery coordinate. */
.app-shell[data-sidebar-state="collapsed"]>.sidebar .side-nav[data-menu-source] .nav-item:hover::after{
  content:attr(aria-label)!important;position:absolute!important;left:calc(100% + 8px)!important;top:50%!important;z-index:999!important;transform:translateY(-50%)!important;
  padding:7px 9px!important;border-radius:7px!important;background:#152033!important;color:#fff!important;font-size:11px!important;font-weight:600!important;line-height:1!important;white-space:nowrap!important;pointer-events:none!important;
}

/* Main content stays separate from page-specific layout. */
.app-shell>.main{padding:var(--se-main-padding)!important;min-width:0!important}
.app-shell .main{font-size:13px!important;line-height:1.45!important}
.app-shell .main p,.app-shell .main label,.app-shell .main input,.app-shell .main select,.app-shell .main button{font-family:"Segoe UI",Inter,Arial,sans-serif!important}
.app-shell .main h1{font-size:24px!important;font-weight:700!important;letter-spacing:-.018em!important}
.app-shell .main h2{font-weight:700!important}

/* Mobile is a third responsive context, not a half-collapsed desktop sidebar. */
@media (max-width:860px){
  .app-shell,.app-shell[data-sidebar-state="open"],.app-shell[data-sidebar-state="collapsed"]{grid-template-columns:0 minmax(0,1fr)!important}
  .app-shell>.main{padding:0 12px 24px!important}
  .app-shell>.sidebar{position:fixed!important;left:0!important;top:0!important;width:var(--se-sidebar-width)!important;min-width:var(--se-sidebar-width)!important;transform:translateX(-100%)!important;transition:transform .18s ease!important;overflow:hidden!important;box-shadow:none!important}
  .app-shell.menu-open>.sidebar{transform:translateX(0)!important;box-shadow:12px 0 30px rgba(15,23,42,.16)!important}
  .app-shell .topbar,.app-shell>.main>.topbar{padding-inline:12px!important}
  .app-shell .quick-btn,.app-shell .calc-btn{width:34px!important;min-width:34px!important;padding:0!important;font-size:0!important}
  .app-shell .quick-btn::first-letter,.app-shell .calc-btn::first-letter{font-size:13px!important}
  .app-shell .calc-btn span,.app-shell .user-chip small{display:none!important}
}
