/* v39.3.0 – verbindliche responsive Basis für Frontend und Backend */
*,*::before,*::after{box-sizing:border-box}
html{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%}
body{width:100%;max-width:100%;overflow-x:hidden}
img,svg,video,canvas,iframe{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%;font:inherit}
.admin-content,.admin-card,.cms14-container,.page-container,main,section{min-width:0}
.table-responsive,.admin-table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
table{max-width:100%}

@media (max-width:1480px){
  body.cms14-nav-open{overflow:hidden!important}
  .cms14-nav-wrap{position:relative!important;z-index:6000!important;overflow:visible!important}
  .cms14-nav-wrap .cms14-nav-bar{position:relative!important;z-index:6200!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .cms14-nav-wrap .cms14-main-nav{
    position:fixed!important;inset:0 0 0 auto!important;z-index:6100!important;
    width:min(92vw,430px)!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;
    padding:76px 16px max(24px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;
    background:#080d0a!important;border-left:1px solid rgba(213,181,110,.28)!important;
    box-shadow:-20px 0 50px rgba(0,0,0,.62)!important;
    transform:translateX(105%)!important;visibility:hidden!important;opacity:0!important;
  }
  .cms14-nav-wrap .cms14-main-nav.is-active{transform:translateX(0)!important;visibility:visible!important;opacity:1!important}
  .cms14-menu-toggle{position:relative!important;z-index:6300!important}
  .cms14-menu-toggle.is-active{position:fixed!important;top:max(12px,env(safe-area-inset-top))!important;right:max(12px,env(safe-area-inset-right))!important;background:#121811!important}
  .cms14-nav-backdrop{position:fixed!important;inset:0!important;z-index:6050!important;background:rgba(0,0,0,.72)!important}
  .cms14-main-nav .cms14-nav-list,.cms14-main-nav .cms14-nav-actions{width:100%!important;min-width:0!important;margin:0!important;padding:0!important}
  .cms14-main-nav .cms14-nav-item,.cms14-main-nav .cms14-nav-item>a,.cms14-main-nav .cms14-dropdown-toggle{width:100%!important;min-width:0!important}
  .cms14-main-nav .cms14-dropdown-menu,.cms14-main-nav .cms14-dropdown-panel,.cms14-main-nav .cms14-dropdown-links{max-width:100%!important;min-width:0!important}
}
@media (max-width:560px){
  .cms14-nav-wrap .cms14-main-nav{width:100vw!important;border-left:0!important;padding-left:14px!important;padding-right:14px!important}
  .cms14-nav-bar{padding-inline:10px!important}
}

@media (max-width:1100px){
  body.admin-nav-open{overflow:hidden!important}
  .admin-header-nav{position:sticky!important;top:0!important;z-index:10000!important;width:100%!important;max-width:100%!important;overflow:visible!important}
  .admin-header-nav__menu{position:fixed!important;inset:64px 0 0!important;z-index:9990!important;width:100vw!important;max-width:100vw!important;max-height:calc(100dvh - 64px)!important;padding:14px 14px max(24px,env(safe-area-inset-bottom))!important;overflow-y:auto!important;overflow-x:hidden!important;background:#0b100d!important}
  .admin-header-nav:not(.is-open) .admin-header-nav__menu{display:none!important}
  .admin-header-nav.is-open .admin-header-nav__menu{display:flex!important}
  .admin-header-nav details,.admin-header-nav details>div,.admin-header-nav__menu>a,.admin-header-nav summary{width:100%!important;max-width:100%!important;min-width:0!important}
  .admin-header-nav details>div{position:static!important;margin:0 0 8px!important;box-shadow:none!important}
  .admin-content{width:100%!important;max-width:100%!important;padding-inline:clamp(10px,3vw,20px)!important}
  .form-grid,.permission-checks,.role-selection-grid{grid-template-columns:1fr!important}
}
@media (max-width:720px){
  .admin-header-nav__brand strong{font-size:.82rem!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .admin-header-nav__toggle{min-width:auto!important;padding:8px 10px!important}
  .admin-card{padding:14px!important}
  .admin-toolbar{padding-inline:14px!important}
  .admin-toolbar h1{font-size:clamp(1.35rem,7vw,2rem)!important;overflow-wrap:anywhere}
  .btn,.admin-btn,button,input[type=submit]{min-height:44px}
}
