#shell{display:flex;min-height:100vh;}

/* ---------- SIDEBAR ---------- */
#sidebar{
  width:250px;flex:0 0 250px;background:var(--bg-1);border-right:1px solid var(--border);
  display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;
  padding-top:env(safe-area-inset-top,0px);
}
.brand{display:flex;align-items:center;gap:11px;padding:20px 18px 14px;}
.logomark{width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:var(--accent);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.logomark img{width:68%;height:68%;object-fit:contain;display:block;}
.brand-text{font-family:var(--font-h);font-weight:800;font-size:17.5px;letter-spacing:0.2px;line-height:1.15;}
.brand-sub{font-size:10.5px;color:var(--text-3);letter-spacing:0.3px;margin-top:1px;}
.company-picker{margin:2px 14px 14px;padding:9px 11px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r-sm);display:flex;align-items:center;gap:9px;cursor:pointer;}
.company-picker:hover{border-color:var(--border-strong);}
.co-badge{width:26px;height:26px;border-radius:7px;flex:0 0 26px;display:flex;align-items:center;justify-content:center;font-family:var(--font-h);font-weight:700;font-size:12px;}
.company-picker .cp-name{font-size:13px;font-weight:600;line-height:1.25;}
.company-picker .cp-sub{font-size:10.5px;color:var(--text-3);}
.company-picker .cp-arrow{margin-left:auto;color:var(--text-3);}

nav.navlist{padding:4px 10px;display:flex;flex-direction:column;gap:1px;flex:1;}
.navitem{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:var(--r-sm);color:var(--text-2);font-size:13.5px;font-weight:500;}
.navitem:hover{background:var(--bg-2);color:var(--text-1);}
.navitem.active{background:var(--accent-dim);color:var(--accent);}
.navitem svg{flex:0 0 17px;width:17px;height:17px;}
.navdivider{height:1px;background:var(--border);margin:9px 12px;}
.navlabel{padding:10px 14px 4px;font-size:10.5px;letter-spacing:0.6px;color:var(--text-3);}

.sidebar-foot{padding:12px 18px 16px;font-size:10.5px;color:var(--text-3);border-top:1px solid var(--border);}

