/* PM-OD Branch B: collapsible left sidebar (presentation only).
   Colors come from the original app.css tokens; no new palette is defined here. */
.nav-menu-icon{width:18px;height:18px;flex:0 0 18px;display:block}
.nav-menu-label{min-width:0}
html[data-nav-variant=b]{--nav-rail-width:224px}
html[data-nav-variant=b].nav-is-collapsed{--nav-rail-width:72px}
.variant-sidebar{position:fixed;inset:0 auto 0 0;height:100dvh;width:var(--nav-rail-width);background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:20px 12px;z-index:30;overflow:hidden}
.variant-sidebar-head{height:48px;flex-shrink:0;margin-bottom:14px}
.variant-sidebar-brand{display:flex;align-items:center;gap:10px;min-height:44px;color:var(--text);font-weight:650;text-decoration:none!important;padding:0 10px;font-size:18px;white-space:nowrap}
.variant-sidebar-brand>.nav-menu-icon{color:var(--primary);width:22px;height:22px;flex-basis:22px}
.variant-sidebar-brand>img.nav-brand-symbol{width:22px;height:auto;flex:0 0 22px;display:block}
.nav-brand-label small{font-size:10px;font-weight:400;display:block;color:var(--muted);margin-top:3px}
.variant-nav-toggle{display:flex;align-items:center;gap:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:10px;color:var(--muted);font:inherit;font-size:12px;cursor:pointer;min-height:42px;flex-shrink:0;white-space:nowrap}
.variant-nav-toggle:hover{color:var(--text);border-color:var(--primary)}
.variant-nav-caption{font-size:11px;color:var(--muted);font-weight:600;padding:0 10px;margin:26px 0 10px}
.variant-sidebar .subtabs{display:flex;flex-direction:column;align-items:stretch;gap:5px;border:0;margin:0;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;scrollbar-width:thin}
.variant-sidebar-footer{flex:0 0 auto;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.variant-sidebar-footer .variant-nav-toggle{width:100%}
.variant-sidebar .subtab{width:100%;min-height:44px;flex:0 0 auto;padding:11px 10px;gap:12px;border:0;border-radius:5px;justify-content:flex-start;position:relative;white-space:normal;text-align:left;font-size:13px;line-height:1.4}
.variant-sidebar .subtab .badge{margin-left:auto;font-size:10px;min-width:18px}
.variant-sidebar .subtab.active{background:var(--bg-primary-light);box-shadow:inset 3px 0 var(--primary)}
.variant-workspace{margin-left:var(--nav-rail-width);min-width:0}
.variant-workspace>.topbar,.variant-workspace>.main{width:calc(100% - 32px);max-width:none;margin-left:auto;margin-right:auto}
.variant-workspace>.main{margin-top:20px;padding:0;container-type:inline-size}
.variant-workspace>.topbar{margin-top:16px}
/* Capped menus: ToDo, OT, Customer & Work Type, and the Project Dashboard
   (#projectDashboard, which sits inside #view-projects). These keep the
   original centered width, min(1600px, 100vw - 48px). Other menus stay full-width. */
.variant-workspace #view-todo,.variant-workspace #view-ot,.variant-workspace #view-masterdata,.variant-workspace #projectDashboard{max-width:min(1600px,calc(100vw - 48px));margin-left:auto;margin-right:auto}
.variant-workspace .brand-block{min-width:0;flex-shrink:1}
.variant-workspace .header-controls{margin-left:auto}
/* Tenant selector lives in the sidebar under the logo (moved by dashboard-navigation.js). */
.variant-tenant{margin:0 0 4px;padding:0 0 6px}
.variant-tenant:has(#tenantSwitcher[hidden]){display:none}
.variant-tenant .variant-nav-caption{margin:0 0 6px}
.variant-tenant .tenant-switcher,.variant-tenant .tenant-switcher-btn{width:100%;max-width:none}
.variant-tenant .tenant-switcher-btn{border-radius:6px;justify-content:flex-start;font-size:12px}
.variant-tenant .tenant-switcher-label{max-width:none;flex:1;min-width:0}
.variant-tenant .tenant-switcher-menu{left:0;right:0;min-width:0}
.nav-is-collapsed .variant-tenant{display:none}
.variant-workspace .brand-text h1{font-size:16px}
.variant-workspace .search-wrap input{min-width:140px}
.variant-workspace .row>*{min-width:0}
.nav-is-collapsed .nav-menu-label,.nav-is-collapsed .nav-brand-label,.nav-is-collapsed .nav-toggle-label,.nav-is-collapsed .variant-nav-caption{display:none}
.nav-is-collapsed .variant-sidebar{padding-inline:12px}
.nav-is-collapsed .variant-sidebar-brand{padding:0;justify-content:center}
.nav-is-collapsed .variant-sidebar .subtab,.nav-is-collapsed .variant-nav-toggle{justify-content:center;padding-inline:0}
.nav-is-collapsed .variant-nav-toggle .nav-menu-icon{transform:rotate(180deg)}
.nav-is-collapsed .variant-sidebar .subtab .badge{position:absolute;right:0;top:1px;font-size:9px;min-width:15px;padding:0 3px;line-height:15px;border:2px solid var(--surface)}
.nav-is-collapsed .variant-sidebar .subtabs{margin-top:20px}
.variant-nav-scrim{position:fixed;inset:0;background:rgba(0,0,0,.4);border:0;z-index:29;cursor:pointer}
@container(max-width:1100px){.variant-workspace .kpi-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container(max-width:700px){.variant-workspace .row.two,.variant-workspace .row.three{grid-template-columns:minmax(0,1fr)}.variant-workspace .kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.variant-workspace .md-grid,.variant-workspace .projects-grid{grid-template-columns:minmax(0,1fr)}.variant-workspace .tasks-head,.variant-workspace .tasks-head-right{flex-wrap:wrap;max-width:100%}}
@media(max-width:1100px){.variant-workspace>.topbar{padding:16px}.variant-workspace .brand-block{flex-wrap:wrap}.variant-workspace .bar-row{grid-template-columns:minmax(44px,80px) minmax(0,1fr) 26px}}
@media(max-width:760px){
  html[data-nav-variant=b]{--nav-rail-width:64px}
  html[data-nav-variant=b].nav-is-collapsed{--nav-rail-width:64px}
  html[data-nav-variant=b]:not(.nav-is-collapsed) .variant-sidebar{width:min(244px,calc(100vw - 24px))}
  .variant-sidebar{padding:14px 8px}
  .nav-is-collapsed .variant-sidebar{padding-inline:8px}
  .variant-workspace>.topbar,.variant-workspace>.main{width:calc(100% - 16px)}
  .variant-workspace>.main{padding:0 4px}
  .variant-workspace>.topbar{padding:12px;gap:14px}
  .variant-workspace .brand-text h1{font-size:15px;align-items:flex-start}
  .variant-workspace .brand-text h1 svg{flex-shrink:0;margin-top:3px}
  .variant-workspace .brand-sub{font-size:11px}
  .variant-workspace .header-controls{gap:6px}
  .variant-workspace .filter-select{font-size:12px;padding-inline:7px;max-width:100%}
  .variant-workspace .search-wrap input{min-width:0}
}
