/* Calm, workflow-first shell for the owner dashboard. */
.nav-group{display:contents}
.nav-group-label{display:none}

@media (min-width:1101px){
  #dashboardView.app:not([hidden]){
    display:grid;
    grid-template-columns:17.25rem minmax(0,1fr);
    min-height:100vh;
  }
  .app-header{
    position:sticky;
    top:0;
    align-self:start;
    height:100vh;
    border-right:1px solid var(--line);
    border-bottom:0;
    background:color-mix(in srgb,var(--bg) 92%,transparent);
  }
  .header-inner{
    width:100%;
    height:100%;
    max-width:none;
    min-height:0;
    margin:0;
    padding:1.15rem .9rem 1rem;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:1rem;
  }
  .compact-lockup{
    padding:.1rem .35rem .95rem;
    border-bottom:1px solid var(--line);
  }
  .main-nav{
    flex:1;
    min-height:0;
    margin:0;
    padding:0 .2rem .6rem;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:1rem;
    overflow-y:auto;
    border:0;
    border-radius:0;
    background:transparent;
    scrollbar-width:thin;
  }
  .nav-group{
    display:grid;
    gap:.22rem;
  }
  .nav-group-label{
    display:block;
    padding:0 .72rem .22rem;
    color:var(--faint);
    font-size:max(.66rem,11px);
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
  }
  .nav-link{
    display:flex;
    align-items:center;
    min-height:2.55rem;
    padding:.62rem .72rem;
    border:1px solid transparent;
    border-radius:.7rem;
    font-size:max(.78rem,12px);
    line-height:1.25;
    white-space:normal;
  }
  .nav-link:hover{
    border-color:var(--line);
    background:var(--card);
  }
  .nav-link.active{
    border-color:rgba(var(--accent-rgb),.3);
    background:rgba(var(--accent-rgb),.14);
    color:var(--text);
    box-shadow:inset 3px 0 0 var(--accent);
  }
  .header-tools{
    width:100%;
    margin:0;
    padding:.9rem .2rem 0;
    display:grid;
    grid-template-columns:1fr auto;
    gap:.65rem;
    border-top:1px solid var(--line);
  }
  .density-switch{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .density-switch button{
    min-width:0;
    padding:.48rem .25rem;
    font-size:max(.65rem,10px);
  }
  .account-name{
    min-width:0;
    max-width:none;
    align-self:center;
  }
  .content-shell{
    width:100%;
    min-width:0;
    max-width:none;
    margin:0;
    padding:1.45rem clamp(1.4rem,3vw,3rem) 4rem;
  }
}

@media (max-width:1100px){
  .main-nav{
    overflow-x:auto;
    scrollbar-width:thin;
  }
  .nav-link{
    flex:0 0 auto;
    white-space:nowrap;
  }
}

@media (max-width:760px){
  .app-header{backdrop-filter:blur(16px)}
  .header-inner{gap:.65rem}
  .main-nav{scroll-snap-type:x proximity}
  .nav-link{scroll-snap-align:start}
}

@media (prefers-reduced-motion:reduce){
  .nav-link{transition:none}
}
