/* One shared dashboard shell: page-specific content never changes navigation geometry. */
body[data-page] { --sidebar-width:264px !important; }
.layout { grid-template-columns:264px minmax(0,1fr) !important; height:100dvh; }
.layout > .sidebar { box-sizing:border-box; width:264px !important; height:100dvh; padding:16px 12px !important; display:flex; flex-direction:column; overflow:hidden; }
.sidebar .brand { flex-shrink:0; font-size:28px !important; line-height:44px !important; letter-spacing:-.8px !important; }
.sidebar .brand img { width:42px !important; height:42px !important; flex:0 0 42px; }
.sidebar > small { display:none !important; }
.sidebar nav { display:flex !important; flex-direction:column; flex:1; min-height:0; gap:4px !important; margin:12px 0 !important; overflow-y:auto; scrollbar-width:thin; }
.sidebar .nav-link { box-sizing:border-box; flex:0 0 50px; height:50px !important; min-height:50px !important; padding:10px 14px !important; margin:0 !important; gap:14px !important; font-size:15px !important; line-height:20px !important; border-left:3px solid transparent !important; display:flex; align-items:center; }
.sidebar .nav-link.active { background:#d9f573 !important; color:#153e2d !important; border-left-color:transparent !important; }
.sidebar .nav-link > .icon,.sidebar .nav-link > .ui-icon { width:24px !important; height:24px !important; min-width:24px; flex:0 0 24px; stroke-width:1.8; }
.sidebar .account { flex-shrink:0; margin-top:auto !important; }
.layout > .main { min-width:0; display:flex; flex-direction:column; height:100dvh; }
.layout .topbar { box-sizing:border-box; position:relative !important; left:auto !important; right:auto !important; top:auto !important; width:100% !important; height:64px !important; min-height:64px !important; flex:0 0 64px; padding:10px 28px !important; background:#fff !important; display:flex; align-items:center; gap:20px; }
.layout .header-search { box-sizing:border-box; flex:1 1 480px; width:100% !important; min-width:0 !important; max-width:480px !important; height:40px !important; }
.layout .header-search kbd { display:none !important; }
.layout .top-actions { margin-left:auto; display:flex; align-items:center; gap:12px !important; flex-shrink:0; }
.layout .top-avatar { display:inline-flex !important; width:38px !important; height:38px !important; flex:0 0 38px; }
.layout .top-actions [data-action="wf-create"] { display:none !important; }
.layout #workspace { box-sizing:border-box; width:100% !important; max-width:none !important; margin:0 !important; padding:24px 28px !important; height:auto !important; min-height:0 !important; flex:1; overflow:auto; scrollbar-gutter:stable; scrollbar-width:thin !important; }
.layout #workspace::-webkit-scrollbar { display:block !important; width:8px; height:8px; }
@media(max-width:760px) {
 .layout { display:block !important; height:auto; min-height:100dvh; }
 .layout > .sidebar { position:fixed; z-index:1200; top:0; left:0; transform:translateX(-100%); }
 .layout.menu-open > .sidebar { transform:translateX(0); }
 .layout > .main { height:auto; min-height:100dvh; }
 .layout .topbar { padding:10px 16px !important; gap:12px; }
 .layout .header-search { display:none !important; }
 .layout .top-actions { gap:10px !important; }
 .layout #workspace { padding:20px 16px !important; overflow:visible; scrollbar-gutter:auto; }
}