/* BizPilot Owner sidebar responsive controller v2.
   Loaded last: owns only sidebar presentation/interaction states. */
html.owner-sidebar-scroll-lock,html.owner-sidebar-scroll-lock body{overflow:hidden!important}

#app .owner-sidebar-toggle{
  display:grid!important;
  place-items:center!important;
  position:fixed!important;
  z-index:34!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  padding:0!important;
  border:1px solid #2b5576!important;
  border-radius:12px!important;
  background:rgba(5,18,34,.94)!important;
  color:#dff8ff!important;
  box-shadow:0 8px 24px #0008,0 0 18px #16e8ff16!important;
  backdrop-filter:blur(14px)!important;
  cursor:pointer!important;
}
#app .owner-sidebar-toggle span,
#app .owner-sidebar-toggle span:before,
#app .owner-sidebar-toggle span:after{
  display:block;
  width:18px;
  height:2px;
  border-radius:99px;
  background:currentColor;
  content:"";
  transition:transform .18s ease,opacity .18s ease;
}
#app .owner-sidebar-toggle span{position:relative}
#app .owner-sidebar-toggle span:before{position:absolute;left:0;top:-6px}
#app .owner-sidebar-toggle span:after{position:absolute;left:0;top:6px}

#app .owner-sidebar-backdrop{
  display:none!important;
  position:fixed!important;
  inset:0!important;
  z-index:32!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(2,8,20,.48)!important;
  box-shadow:none!important;
  backdrop-filter:blur(3px)!important;
}

/* The AI Chat item is injected dynamically and was previously blank because
   the icon rail hides text while no mask was assigned to this route. */
#app [data-owner-chat-route] .owner-nav-icon,
#app [data-owner-mobile-chat-route] i{
  --owner-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%205h14a2%202%200%200%201%202%202v8a2%202%200%200%201-2%202h-7l-5%204v-4H5a2%202%200%200%1-2-2V7a2%202%200%200%1%202-2z%22%2F%3E%3Cpath%20d%3D%22m14%208%20.7%201.3L16%2010l-1.3.7L14%2012l-.7-1.3L12%2010l1.3-.7z%22%2F%3E%3C%2Fsvg%3E")!important;
}
#app [data-owner-chat-route] .owner-nav-icon:before,
#app [data-owner-mobile-chat-route] i:before{
  content:""!important;
  display:block!important;
  width:20px!important;
  height:20px!important;
  background:currentColor!important;
  mask:var(--owner-icon) center/contain no-repeat!important;
  -webkit-mask:var(--owner-icon) center/contain no-repeat!important;
}

/* Desktop + iPad landscape: labelled sidebar, collapsible to an icon rail. */
@media(min-width:1101px){
  html[data-owner-sidebar-mode="inline"] body #app .shell{
    grid-template-columns:244px minmax(0,1fr)!important;
    transition:grid-template-columns .2s ease!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app .sidebar{
    display:flex!important;
    width:244px!important;
    min-width:244px!important;
    max-width:244px!important;
    transform:none!important;
    transition:width .2s ease,min-width .2s ease,max-width .2s ease!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app .owner-sidebar-toggle{
    left:216px!important;
    top:14px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .shell{
    grid-template-columns:76px minmax(0,1fr)!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar{
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .owner-sidebar-toggle{
    left:18px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .logoBox{
    justify-content:center!important;
    padding-left:2px!important;
    padding-right:2px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-brand-master{
    width:44px!important;
    max-width:44px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .logoText,
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-nav-copy,
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-nav-arrow,
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-nav-section,
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .promo{
    display:none!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .nav .owner-nav-link{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    gap:0!important;
    min-height:46px!important;
    margin:0!important;
    padding:9px 0!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-nav-icon{
    width:24px!important;
    height:24px!important;
    margin:0!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app .owner-sidebar-backdrop{display:none!important}
}
@media(min-width:651px) and (max-width:1100px) and (orientation:landscape){
  html[data-owner-sidebar-mode="inline"] body #app .shell{
    grid-template-columns:244px minmax(0,1fr)!important;
    transition:grid-template-columns .2s ease!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app .sidebar{
    display:flex!important;
    width:244px!important;
    min-width:244px!important;
    max-width:244px!important;
    transform:none!important;
    transition:width .2s ease,min-width .2s ease,max-width .2s ease!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app .owner-sidebar-toggle{
    left:216px!important;
    top:14px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .shell{
    grid-template-columns:76px minmax(0,1fr)!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar{
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .owner-sidebar-toggle{
    left:18px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .logoBox{
    justify-content:center!important;
    padding-left:2px!important;
    padding-right:2px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-brand-master{
    width:44px!important;
    max-width:44px!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .logoText,
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-nav-copy,
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-nav-arrow,
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-nav-section,
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .promo{
    display:none!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .nav .owner-nav-link{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    gap:0!important;
    min-height:46px!important;
    margin:0!important;
    padding:9px 0!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar .owner-nav-icon{
    width:24px!important;
    height:24px!important;
    margin:0!important;
  }
  html[data-owner-sidebar-mode="inline"] body #app .owner-sidebar-backdrop{display:none!important}
}

/* iPhone + iPad portrait: one visible top bar, content uses full width, sidebar is a drawer. */
@media(max-width:650px){
  html[data-owner-sidebar-mode="drawer"] body #app .shell{
    display:block!important;
    grid-template-columns:1fr!important;
    min-height:100dvh!important;
    overflow:visible!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .main{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:0!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .sidebar{
    display:flex!important;
    position:fixed!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    z-index:33!important;
    width:min(86vw,320px)!important;
    min-width:min(86vw,320px)!important;
    max-width:min(86vw,320px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:18px 14px 20px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    transform:translateX(-104%)!important;
    transition:transform .22s ease!important;
    box-shadow:20px 0 60px #000c!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar{
    transform:translateX(0)!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .owner-sidebar-toggle{
    display:grid!important;
    left:max(12px,env(safe-area-inset-left))!important;
    top:max(12px,env(safe-area-inset-top))!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
    left:calc(min(86vw,320px) - 54px)!important;
    color:#fff!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span{
    background:transparent!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span:before{
    top:0!important;
    transform:rotate(45deg)!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span:after{
    top:0!important;
    transform:rotate(-45deg)!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-backdrop{
    display:block!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .owner-mobile-page-nav,
  html[data-owner-sidebar-mode="drawer"] body #app .mobile-owner-nav,
  html[data-owner-sidebar-mode="drawer"] body #app .owner-final-mobile-nav{
    display:none!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .hero{
    padding-top:max(64px,calc(env(safe-area-inset-top) + 56px))!important;
  }
}
@media(min-width:651px) and (max-width:1100px){
  html[data-owner-sidebar-mode="drawer"] body #app .shell{
    display:block!important;
    grid-template-columns:1fr!important;
    min-height:100dvh!important;
    overflow:visible!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .main{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:0!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .sidebar{
    display:flex!important;
    position:fixed!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    z-index:33!important;
    width:min(86vw,320px)!important;
    min-width:min(86vw,320px)!important;
    max-width:min(86vw,320px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:18px 14px 20px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    transform:translateX(-104%)!important;
    transition:transform .22s ease!important;
    box-shadow:20px 0 60px #000c!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar{
    transform:translateX(0)!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .owner-sidebar-toggle{
    display:grid!important;
    left:max(12px,env(safe-area-inset-left))!important;
    top:max(12px,env(safe-area-inset-top))!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
    left:calc(min(86vw,320px) - 54px)!important;
    color:#fff!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span{
    background:transparent!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span:before{
    top:0!important;
    transform:rotate(45deg)!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span:after{
    top:0!important;
    transform:rotate(-45deg)!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-backdrop{
    display:block!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .owner-mobile-page-nav,
  html[data-owner-sidebar-mode="drawer"] body #app .mobile-owner-nav,
  html[data-owner-sidebar-mode="drawer"] body #app .owner-final-mobile-nav{
    display:none!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app .hero{
    padding-top:max(64px,calc(env(safe-area-inset-top) + 56px))!important;
  }
}

/* Drawer overlays the page header without violating the Owner header stacking contract. */
html[data-owner-sidebar-mode="drawer"] body #app .main>.hero{z-index:1!important}

/* Chat route: use the same state model as the rest of Owner Center. */
html[data-owner-page="chat"][data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .shell{
  grid-template-columns:76px minmax(0,1fr)!important;
}
html[data-owner-page="chat"][data-owner-sidebar-mode="inline"] body #app.owner-sidebar-collapsed .sidebar{
  width:76px!important;
  min-width:76px!important;
  max-width:76px!important;
}
html[data-owner-page="chat"][data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .shell{
  display:block!important;
  grid-template-columns:1fr!important;
}
html[data-owner-page="chat"][data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar{
  width:min(86vw,320px)!important;
  min-width:min(86vw,320px)!important;
  max-width:min(86vw,320px)!important;
  transform:translateX(0)!important;
}
html[data-owner-page="chat"][data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
  opacity:1!important;
  pointer-events:auto!important;
}
html[data-owner-page="chat"][data-owner-sidebar-mode="drawer"] body #app .owner-ai-chat-form{
  padding-bottom:max(10px,env(safe-area-inset-bottom))!important;
}

@media(prefers-reduced-motion:reduce){
  #app .sidebar,#app .shell,#app .owner-sidebar-toggle span,#app .owner-sidebar-toggle span:before,#app .owner-sidebar-toggle span:after{transition:none!important}
}
/* STAGING preview trigger marker: responsive sidebar review build. */


/* v2.2: iPad landscape can be wider than 1100 CSS px.
   JS identifies touch tablets and sets data-owner-sidebar-mode="drawer";
   these rules intentionally key off that state, not desktop viewport width. */
html[data-owner-sidebar-mode="drawer"] body #app .shell{
  display:block!important;
  grid-template-columns:1fr!important;
  min-height:100dvh!important;
  overflow:visible!important;
}
html[data-owner-sidebar-mode="drawer"] body #app .main{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:0!important;
}
html[data-owner-sidebar-mode="drawer"] body #app .sidebar{
  display:flex!important;
  position:fixed!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  z-index:33!important;
  width:min(86vw,320px)!important;
  min-width:min(86vw,320px)!important;
  max-width:min(86vw,320px)!important;
  height:100dvh!important;
  max-height:100dvh!important;
  padding:18px 14px 20px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  transform:translateX(-104%)!important;
  transition:transform .22s ease!important;
  box-shadow:20px 0 60px #000c!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar{
  transform:translateX(0)!important;
}
html[data-owner-sidebar-mode="drawer"] body #app .owner-sidebar-toggle{
  display:grid!important;
  left:max(12px,env(safe-area-inset-left))!important;
  top:max(12px,env(safe-area-inset-top))!important;
  opacity:1!important;
  pointer-events:auto!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
  left:calc(min(86vw,320px) - 54px)!important;
  color:#fff!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span{background:transparent!important}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span:before{
  top:0!important;transform:rotate(45deg)!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle span:after{
  top:0!important;transform:rotate(-45deg)!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-backdrop{display:block!important}
html[data-owner-sidebar-mode="drawer"] body #app .owner-mobile-page-nav,
html[data-owner-sidebar-mode="drawer"] body #app .mobile-owner-nav,
html[data-owner-sidebar-mode="drawer"] body #app .owner-final-mobile-nav{display:none!important}


/* v2.3 — iPad portrait expanded drawer must PUSH the main content, never overlay it.
   Also force full labels visible while expanded. iPhone keeps the compact drawer behavior. */
@media(min-width:651px) and (max-width:1366px) and (orientation:portrait){
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .shell{
    display:grid!important;
    grid-template-columns:min(38vw,320px) minmax(0,1fr)!important;
    width:100%!important;
    overflow:hidden!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    bottom:auto!important;
    width:min(38vw,320px)!important;
    min-width:min(38vw,320px)!important;
    max-width:min(38vw,320px)!important;
    height:100dvh!important;
    transform:none!important;
    box-shadow:none!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .main{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    overflow-x:hidden!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-backdrop{
    display:none!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
    left:calc(min(38vw,320px) - 54px)!important;
  }

  /* Expanded means full menu: icon + title + secondary text + section labels. */
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:auto!important;
    max-width:none!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy b,
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy small{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-arrow,
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-section{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .nav .owner-nav-link{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) auto!important;
    align-items:center!important;
    justify-items:stretch!important;
    gap:10px!important;
    width:100%!important;
    min-height:58px!important;
    padding:10px 12px!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-icon{
    width:32px!important;
    height:32px!important;
    margin:0!important;
  }
}

/* deploy-trigger: owner-sidebar-v2.3-ipad-portrait-push */


/* v2.4 — force expanded labels on iPad portrait.
   This intentionally wins over any legacy icon-only/collapsed rules. */
@media (min-width:651px) and (max-width:1366px) and (orientation:portrait){
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText,
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy,
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy b,
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy small,
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-arrow,
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-section{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    clip:auto!important;
    clip-path:none!important;
    position:static!important;
    transform:none!important;
    pointer-events:auto!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy{
    flex:1 1 auto!important;
    white-space:normal!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy b{
    font-size:18px!important;
    line-height:1.25!important;
    color:inherit!important;
    white-space:normal!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy small{
    margin-top:2px!important;
    font-size:13px!important;
    line-height:1.25!important;
    white-space:normal!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .nav .owner-nav-link{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 18px!important;
    align-items:center!important;
    justify-items:stretch!important;
    gap:10px!important;
  }
  html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-icon{
    display:grid!important;
    place-items:center!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    max-width:34px!important;
  }
}


/* v2.5 — unified iPhone/iPad sidebar contract, both orientations.
   Applies only when JS marks the device as drawer; desktop inline mode is untouched. */
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .shell{
  display:grid!important;
  grid-template-columns:min(82vw,320px) minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar{
  display:flex!important;
  position:relative!important;
  left:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:min(82vw,320px)!important;
  min-width:min(82vw,320px)!important;
  max-width:min(82vw,320px)!important;
  height:100dvh!important;
  max-height:100dvh!important;
  transform:translateX(0)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  box-shadow:none!important;
  visibility:visible!important;
  opacity:1!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .main{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  overflow-x:hidden!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-backdrop{
  display:none!important;
  opacity:0!important;
  pointer-events:none!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
  left:calc(min(82vw,320px) - 54px)!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

/* Expanded drawer must always be a full labelled menu, never icon-only. */
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy b,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy small,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-section{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  max-height:none!important;
  clip:auto!important;
  clip-path:none!important;
  transform:none!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy{
  flex:1 1 auto!important;
  overflow:hidden!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy b{
  font-size:17px!important;
  line-height:1.25!important;
  font-weight:700!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy small{
  display:block!important;
  margin-top:2px!important;
  font-size:12px!important;
  line-height:1.3!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-arrow{
  display:none!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .nav .owner-nav-link{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:10px!important;
  width:100%!important;
  min-height:58px!important;
  padding:10px 12px!important;
  overflow:visible!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-icon{
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  margin:0!important;
}


/* v2.6 — approved compact touch sidebar reference.
   Tighten icon/text spacing and pull the sidebar boundary inward; desktop inline mode untouched. */
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .shell{
  grid-template-columns:min(76vw,292px) minmax(0,1fr)!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar{
  width:min(76vw,292px)!important;
  min-width:min(76vw,292px)!important;
  max-width:min(76vw,292px)!important;
  padding-left:10px!important;
  padding-right:10px!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
  left:calc(min(76vw,292px) - 54px)!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .nav .owner-nav-link{
  grid-template-columns:34px minmax(0,1fr)!important;
  gap:1px!important;
  padding-left:9px!important;
  padding-right:9px!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-icon{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  max-width:32px!important;
}


/* v2.8 — touch icon rail contract.
   iPhone/iPad portrait+landscape: collapsed = BizPilot icon only; icon reopens; expanded = hamburger.
   Desktop inline mode remains untouched. */
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .shell{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar{
  display:flex!important;
  position:relative!important;
  left:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:64px!important;
  min-width:64px!important;
  max-width:64px!important;
  height:100dvh!important;
  max-height:100dvh!important;
  padding:10px 8px!important;
  transform:translateX(0)!important;
  overflow:hidden!important;
  box-shadow:none!important;
  visibility:visible!important;
  opacity:1!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .main{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  overflow-x:hidden!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .owner-sidebar-toggle{
  display:none!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .logoBox{
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0!important;
  cursor:pointer!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .owner-brand-master{
  display:block!important;
  width:42px!important;
  max-width:42px!important;
  height:42px!important;
  object-fit:contain!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .logoText,
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .nav,
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .promo{
  display:none!important;
}

/* Expanded touch drawer: no logo image, BizPilot OS on one line, hamburger visible. */
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-brand-master{
  display:none!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoBox{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText{
  display:block!important;
  white-space:nowrap!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText b,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText strong{
  display:inline!important;
  white-space:nowrap!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
  display:grid!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy{
  text-align:left!important;
  justify-self:start!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy b,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy small{
  text-align:left!important;
}


/* v2.9 — unified touch geometry: one design for iPhone/iPad, portrait/landscape.
   Only the viewport size changes; spacing and interaction rules do not. */
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .shell{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar{
  display:flex!important;
  position:relative!important;
  left:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:64px!important;
  min-width:64px!important;
  max-width:64px!important;
  height:100dvh!important;
  max-height:100dvh!important;
  padding:10px 8px!important;
  transform:translateX(0)!important;
  overflow:hidden!important;
  box-shadow:none!important;
  visibility:visible!important;
  opacity:1!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .logoBox{
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0!important;
  cursor:pointer!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .owner-brand-master{
  display:block!important;
  width:42px!important;
  max-width:42px!important;
  height:42px!important;
  object-fit:contain!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .owner-sidebar-toggle,
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .logoText,
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .nav,
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .promo{
  display:none!important;
}

html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .shell{
  display:grid!important;
  grid-template-columns:min(76vw,292px) minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar{
  display:flex!important;
  position:relative!important;
  left:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:min(76vw,292px)!important;
  min-width:min(76vw,292px)!important;
  max-width:min(76vw,292px)!important;
  height:100dvh!important;
  max-height:100dvh!important;
  padding:18px 10px 20px!important;
  transform:translateX(0)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  box-shadow:none!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-brand-master{
  display:none!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoBox{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:6px 8px 14px!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText{
  display:block!important;
  white-space:nowrap!important;
  line-height:1!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText b,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText strong{
  display:inline!important;
  white-space:nowrap!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText small{
  display:block!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .nav{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .nav .owner-nav-link{
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:7px!important;
  width:100%!important;
  min-height:58px!important;
  margin:0!important;
  padding:10px 9px!important;
  text-align:left!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-icon{
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  max-width:32px!important;
  margin:0!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy b,
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .owner-nav-copy small{
  text-align:left!important;
  justify-self:start!important;
}
html[data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .owner-sidebar-toggle{
  display:grid!important;
  left:calc(min(76vw,292px) - 54px)!important;
  top:max(12px,env(safe-area-inset-top))!important;
}


/* v3.0 — approved home-only polish.
   Scope: Owner home only. Keep the accepted touch behavior; refine visuals only. */
html[data-owner-page="home"][data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar{
  background:transparent!important;
  border-right:0!important;
  box-shadow:none!important;
}
html[data-owner-page="home"][data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar:before,
html[data-owner-page="home"][data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar:after{
  display:none!important;
  content:none!important;
}
html[data-owner-page="home"][data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .logoBox{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html[data-owner-page="home"][data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .nav .owner-nav-link{
  grid-template-columns:36px minmax(0,1fr)!important;
  gap:9px!important;
}
html[data-owner-page="home"][data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText{
  white-space:nowrap!important;
}
html[data-owner-page="home"][data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText b{
  display:inline!important;
  font-size:24px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
html[data-owner-page="home"][data-owner-sidebar-mode="drawer"] body #app.owner-sidebar-open .sidebar .logoText strong{
  display:inline!important;
  font-size:27px!important;
  line-height:1!important;
  white-space:nowrap!important;
}


/* v3.4 — AI Chat hard isolation.
   Chat only: remove the Owner shell/sidebar/toggle so only Chat History + chat controls remain.
   Home and every other Owner page are intentionally untouched. */
html[data-owner-page="chat"] body #app .sidebar,
html[data-owner-page="chat"] body #app > .owner-sidebar-toggle,
html[data-owner-page="chat"] body #app > .owner-sidebar-backdrop{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html[data-owner-page="chat"] body #app .shell{
  display:block!important;
  grid-template-columns:1fr!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  overflow:hidden!important;
}
html[data-owner-page="chat"] body #app .main{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
html[data-owner-page="chat"] body #app .hero{
  display:none!important;
}
html[data-owner-page="chat"] body #app .content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}

/* v3.5 — direct BizPilot Chat shortcut on the approved collapsed touch rail.
   The rest of the Owner navigation remains hidden exactly as before. */
#app .owner-chat-rail-shortcut{display:none!important}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .owner-chat-rail-shortcut{
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  height:48px!important;
  min-height:48px!important;
  margin:8px 0 0!important;
  padding:8px!important;
  border:1px solid #2b5576!important;
  border-radius:12px!important;
  background:rgba(5,18,34,.94)!important;
  color:#dff8ff!important;
  text-decoration:none!important;
  box-shadow:0 5px 16px rgba(0,0,0,.22)!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
html[data-owner-sidebar-mode="drawer"] body #app:not(.owner-sidebar-open) .sidebar .owner-chat-rail-shortcut .owner-nav-icon{
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  margin:0!important;
  color:#dff8ff!important;
  visibility:visible!important;
  opacity:1!important;
}
html[data-owner-page="chat"] body #app .owner-chat-rail-shortcut{display:none!important}
