/* =========================================================
   ZÖLDBETON V7 MASTER PLATFORM CORE UI 1.0
   Központi: tipográfia, oldalsáv, navigáció, fejléc, háttér-alap
   ========================================================= */
:root{
  --v7-core-sidebar-width:218px;
  --v7-core-green:#159455;
  --v7-core-green-dark:#0b6b3a;
  --v7-core-green-soft:#eef4ef;
  --v7-core-line:#d7e3d8;
  --v7-core-text:#263238;
  --v7-core-muted:#68756e;
  --v7-core-surface:rgba(251,252,251,.96);
  --v7-core-header-height:56px;
  --v7-core-font:'Urbanist',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}

html,body{font-family:var(--v7-core-font)!important;color:var(--v7-core-text);}
body.v7-platform-core{font-family:var(--v7-core-font)!important;}
body.v7-platform-core button,
body.v7-platform-core input,
body.v7-platform-core select,
body.v7-platform-core textarea{font-family:inherit;}

/* Egyetlen közös oldalsáv */
body.v7-platform-core aside.v7-core-sidebar{
  position:fixed!important;
  inset:0 auto 0 0!important;
  width:var(--v7-core-sidebar-width)!important;
  height:100vh!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  background:var(--v7-core-surface)!important;
  border-right:1px solid var(--v7-core-line)!important;
  box-shadow:none!important;
  z-index:1300!important;
  overflow:hidden!important;
}

body.v7-platform-core .v7-core-logo{
  height:auto!important;
  min-height:92px!important;
  padding:24px 20px 18px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  border:0!important;
}
body.v7-platform-core .v7-core-logo img{
  width:154px!important;
  height:auto!important;
  max-width:100%!important;
  max-height:58px!important;
  object-fit:contain!important;
  display:block!important;
}

body.v7-platform-core .v7-core-nav{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  padding:0 13px!important;
  margin:6px 0 0!important;
}
body.v7-platform-core .v7-core-nav-item{
  min-height:38px!important;
  height:38px!important;
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
  padding:0 14px!important;
  margin:0!important;
  border:0!important;
  border-radius:10px!important;
  background:transparent!important;
  color:var(--v7-core-text)!important;
  text-decoration:none!important;
  font-family:var(--v7-core-font)!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
  box-shadow:none!important;
  white-space:nowrap!important;
  transition:background .15s ease,color .15s ease!important;
}
body.v7-platform-core .v7-core-nav-item:hover{background:#f1f6f3!important;}
body.v7-platform-core .v7-core-nav-item.active,
body.v7-platform-core .v7-core-nav-item[aria-current='page']{
  background:var(--v7-core-green-soft)!important;
  color:var(--v7-core-green-dark)!important;
  box-shadow:inset 3px 0 0 var(--v7-core-green)!important;
}
body.v7-platform-core .v7-core-nav-icon{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 18px!important;
  color:#20342e!important;
  font-size:0!important;
  line-height:1!important;
}
body.v7-platform-core .v7-core-nav-icon svg{
  width:18px!important;
  height:18px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.v7-platform-core .v7-core-nav-item.active .v7-core-nav-icon,
body.v7-platform-core .v7-core-nav-item[aria-current='page'] .v7-core-nav-icon{color:var(--v7-core-green-dark)!important;}
body.v7-platform-core .v7-core-nav-label{display:block!important;min-width:0!important;}

body.v7-platform-core .v7-core-sidebar-spacer{flex:1 1 auto!important;min-height:12px!important;}
body.v7-platform-core .v7-core-sidebar-footer{
  margin:0 13px!important;
  padding:14px 0 24px!important;
  border-top:1px solid var(--v7-core-line)!important;
  font-family:var(--v7-core-font)!important;
}
body.v7-platform-core .v7-core-sidebar-footer .v7-core-nav-item{
  margin:0 -10px!important;
  padding-left:10px!important;
  width:calc(100% + 20px)!important;
}

/* Oldaltartalom igazítása a közös oldalsávhoz */
@media (min-width:901px){
  body.v7-platform-core .v7-core-page-main{
    margin-left:var(--v7-core-sidebar-width)!important;
    min-width:0!important;
  }
  body.v7-platform-core .app,
  body.v7-platform-core .app-shell{
    grid-template-columns:var(--v7-core-sidebar-width) minmax(0,1fr)!important;
  }
  body.v7-platform-core .app > .v7-core-page-main,
  body.v7-platform-core .app-shell > .v7-core-page-main{
    grid-column:2!important;
    margin-left:0!important;
  }
}

/* Közös felső csík / Global Header */
body.v7-platform-core [data-v7-global-header],
body.v7-platform-core .global-header,
body.v7-platform-core .topbar.v7-core-topbar{
  font-family:var(--v7-core-font)!important;
  min-height:var(--v7-core-header-height)!important;
  border-bottom:1px solid var(--v7-core-line)!important;
  background:rgba(255,255,255,.94)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
}

/* Közös platformháttér – nem írja felül az oldalak tartalmi képeit */
body.v7-platform-core{
  background-color:#fff!important;
}
body.v7-platform-core::after{
  content:'';
  position:fixed;
  right:0;
  bottom:0;
  width:min(48vw,760px);
  height:min(72vh,760px);
  background:url('../assets/home-background.png') right bottom/contain no-repeat;
  opacity:.075;
  pointer-events:none;
  z-index:-1;
}

/* Mobil: a meglévő Mobile Shell működését megtartjuk */
@media (max-width:900px){
  :root{--v7-core-sidebar-width:218px;}
  body.v7-platform-core aside.v7-core-sidebar{
    transform:translateX(-105%);
    transition:transform .24s ease;
  }
  body.v7-platform-core aside.v7-core-sidebar.open,
  body.v7-platform-core.v7-menu-open aside.v7-core-sidebar,
  body.v7-platform-core.zb-menu-open aside.v7-core-sidebar{transform:translateX(0)!important;}
  body.v7-platform-core .v7-core-page-main{margin-left:0!important;}
  body.v7-platform-core .app,
  body.v7-platform-core .app-shell{display:block!important;grid-template-columns:1fr!important;}
}

@media print{
  body.v7-platform-core aside.v7-core-sidebar{display:none!important;}
  body.v7-platform-core .v7-core-page-main{margin-left:0!important;}
}
