:root {
  --bos-blue:#1b9cc8; --bos-blue-dark:#0877a2; --bos-gray:#696767;
  --bg:#f4f6f8; --surface:#ffffff; --surface-2:#f8fafb; --text:#26323a; --muted:#71808a;
  --border:#dce3e8; --sidebar:#0c5275; --sidebar-2:#087eac; --sidebar-text:#f4fbff; --sidebar-muted:#b8d7e6;
  --shadow:0 6px 20px rgba(26,54,75,.08); --danger:#bb3d45; --success:#278a50;
  --topbar-height:58px; --sidebar-width:248px; --sidebar-default-width:248px; --sidebar-min-width:190px; --sidebar-max-width:460px; --sidebar-collapsed:72px;
}
html[data-theme="dark"] {
  --bg:#171b1f; --surface:#20262b; --surface-2:#252c32; --text:#eef3f6; --muted:#a5b1b9;
  --border:#34414a; --sidebar:#111a20; --sidebar-2:#162b36; --sidebar-text:#f4fbff; --sidebar-muted:#9fb8c5;
  --shadow:0 8px 24px rgba(0,0,0,.24); --danger:#ef6f78; --success:#55c77e;
}
*{box-sizing:border-box} html,body{margin:0;min-height:100%;font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:inherit;text-decoration:none} button,input,select{font:inherit} button{cursor:pointer}.no-scroll{overflow:hidden}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));color:var(--sidebar-text);z-index:40;transition:width .2s ease,transform .2s ease;box-shadow:4px 0 18px rgba(0,0,0,.08)}
.sidebar-brand{height:var(--topbar-height);display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-link{min-width:0;flex:1}.brand-logo{display:block;max-width:132px;width:100%;height:38px;object-fit:contain;object-position:left center}.sidebar-collapse{color:#fff}.sidebar-scroll{height:calc(100vh - var(--topbar-height));overflow:auto;padding:10px 10px 30px}.workspace{min-height:100vh;margin-left:var(--sidebar-width);transition:margin-left .2s ease}.topbar{height:var(--topbar-height);position:sticky;top:0;z-index:30;background:var(--surface);border-bottom:1px solid var(--border);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:0 18px;box-shadow:0 1px 4px rgba(0,0,0,.04)}.topbar-left{display:flex;align-items:center;gap:10px}.company-label{font-weight:700;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-actions{justify-self:end;display:flex;gap:8px;align-items:center}.icon-button{border:0;background:transparent;color:inherit;width:36px;height:36px;border-radius:8px}.icon-button:hover{background:var(--surface-2)}.mobile-menu-button{display:none}.table-search-wrap{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:0 10px}.table-search-wrap input{border:0;outline:0;background:transparent;color:var(--text);height:34px;width:100%}.user-menu{position:relative}.user-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:8px;border-radius:9px;padding:5px 7px}.user-button:hover{background:var(--surface-2)}.avatar{width:30px;height:30px;border-radius:50%;background:var(--bos-blue);color:white;display:grid;place-items:center;font-size:12px;font-weight:800}.user-menu-popover{position:absolute;right:0;top:44px;width:210px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);padding:10px}.user-context-small{font-size:12px;color:var(--muted);padding:5px 7px}.popover-action{width:100%;text-align:left;border:0;background:transparent;color:var(--text);padding:9px 7px;border-radius:7px}.popover-action:hover{background:var(--surface-2)}
.sidebar-search-wrap{position:relative;margin:0 0 12px}.sidebar-search{width:100%;height:34px;border-radius:7px;border:1px solid rgba(255,255,255,.20);background:rgba(255,255,255,.10);color:white;padding:0 31px 0 31px;outline:0}.sidebar-search::placeholder{color:var(--sidebar-muted)}.sidebar-search:focus{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.15)}.search-glyph{position:absolute;left:10px;top:7px}.sidebar-search-clear{position:absolute;right:5px;top:4px;border:0;background:transparent;color:white;font-size:20px;width:28px;height:27px}.sidebar-section-title{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--sidebar-muted);font-weight:800;padding:10px 8px 6px}.favorites-empty{font-size:12px;color:var(--sidebar-muted);padding:5px 8px 9px}.all-menu-title{margin-top:5px}.menu-node{margin:1px 0}.menu-row{display:flex;align-items:center;min-width:0}.nav-link{min-height:36px;display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--sidebar-text);border-radius:7px;padding:7px 8px;flex:1;min-width:0;text-align:left;font-size:13px}.nav-link:hover{background:rgba(255,255,255,.11)}.nav-link.disabled{opacity:.46;cursor:not-allowed}.nav-icon{width:20px;text-align:center;flex:none}.nav-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.menu-chevron{font-size:20px;transition:transform .15s}.menu-toggle[aria-expanded="true"] .menu-chevron{transform:rotate(90deg)}.menu-children{margin-left:12px;border-left:1px solid rgba(255,255,255,.12);padding-left:5px}.favorite-toggle{border:0;background:transparent;color:rgba(255,255,255,.28);font-size:14px;width:25px;height:30px;flex:none}.favorite-toggle:hover,.favorite-toggle.is-favorite{color:#ffd66b}.nav-favorite .nav-icon{color:#ffd66b}.menu-no-results{color:var(--sidebar-muted);font-size:12px;padding:12px 8px}
.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)}.sidebar-collapsed .workspace{margin-left:var(--sidebar-collapsed)}.sidebar-collapsed .brand-logo{width:42px;object-fit:cover;object-position:left}.sidebar-collapsed .sidebar-collapse{transform:rotate(180deg)}.sidebar-collapsed .sidebar-search,.sidebar-collapsed .sidebar-search-clear,.sidebar-collapsed .search-glyph,.sidebar-collapsed .sidebar-section-title,.sidebar-collapsed .favorites-empty,.sidebar-collapsed .nav-text,.sidebar-collapsed .menu-chevron,.sidebar-collapsed .favorite-toggle,.sidebar-collapsed .menu-children{display:none}.sidebar-collapsed .nav-link{justify-content:center}.sidebar-collapsed .nav-icon{font-size:16px}.sidebar-collapsed .sidebar-scroll{padding-inline:8px}
.content-area{padding:22px;max-width:1800px;margin:0 auto}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}.page-header h1{font-size:24px;margin:2px 0 0}.eyebrow{color:var(--bos-blue);font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.12em}.page-subtitle{color:var(--muted);margin:5px 0 0}.page-actions{display:flex;gap:8px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:11px;box-shadow:var(--shadow)}.home-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;margin-bottom:14px}.welcome-panel{display:flex;align-items:center;gap:16px;padding:20px}.panel-icon{width:54px;height:54px;border-radius:14px;background:linear-gradient(145deg,var(--bos-blue),var(--bos-blue-dark));display:grid;place-items:center;color:white;font-weight:900;font-size:22px}.welcome-panel h2{margin:0 0 5px}.welcome-panel p{margin:0;color:var(--muted)}.compact-panel{padding:20px}.stat-label{font-size:12px;color:var(--muted)}.stat-value{font-size:23px;font-weight:800;margin-top:7px}.start-panel{padding:18px}.section-heading h2{margin:0 0 4px;font-size:18px}.section-heading p{margin:0;color:var(--muted)}.quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.quick-link{border:1px solid var(--border);border-radius:9px;padding:15px;display:flex;flex-direction:column;gap:5px}.quick-link:hover{border-color:var(--bos-blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--bos-blue) 13%,transparent)}.quick-link span{font-size:12px;color:var(--muted)}
.btn{border:1px solid transparent;border-radius:7px;min-height:34px;padding:7px 13px;font-weight:650}.btn-primary{background:var(--bos-blue);color:white}.btn-primary:hover{background:var(--bos-blue-dark)}.btn-secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-block{width:100%}.data-panel{overflow:hidden}.toolbar-row,.filter-bar{display:flex;gap:10px;align-items:end;padding:12px;border-bottom:1px solid var(--border);background:var(--surface-2)}.toolbar-row .table-search-wrap{max-width:460px;flex:1}.toolbar-note{margin-left:auto;font-size:11px;color:var(--muted);font-weight:700}.filter-bar label{font-size:11px;color:var(--muted);display:flex;flex-direction:column;gap:4px}.filter-bar select{height:34px;min-width:120px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:7px;padding:0 8px}.listing-search{max-width:420px;margin:10px 12px}.tree-table-wrap,.data-table-wrap{overflow:auto;max-height:calc(100vh - 200px)}.data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:920px;font-size:12px}.data-table th{position:sticky;top:0;z-index:2;background:var(--surface-2);color:var(--muted);font-weight:800;text-align:left;padding:9px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:8px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table tbody tr:hover{background:color-mix(in srgb,var(--bos-blue) 6%,var(--surface))}.numeric{text-align:right;font-variant-numeric:tabular-nums}.group-row td{font-weight:750}.tree-indent{display:inline-block;width:calc(var(--depth) * 18px)}.tree-toggle,.tree-toggle-spacer{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:3px}.tree-toggle{border:0;background:transparent;color:var(--text);border-radius:5px}.tree-toggle:hover{background:var(--surface-2)}.account-code{font-variant-numeric:tabular-nums}.attachment-mark{color:var(--bos-blue)}.table-footer{padding:9px 12px;text-align:right;color:var(--muted);font-size:11px;border-top:1px solid var(--border)}
.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,44%) 1fr}.login-brand-panel{background:linear-gradient(145deg,#0c5275,#1b9cc8);padding:56px;display:flex;flex-direction:column;justify-content:space-between;color:white}.login-logo{width:min(300px,75%);height:auto}.login-brand-copy h1{font-size:34px;max-width:520px;margin:0 0 12px}.login-brand-copy p{max-width:520px;color:#d8eef7;line-height:1.6}.login-form-panel{display:grid;place-items:center;padding:26px;background:var(--bg)}.login-card{width:min(440px,100%);background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:30px}.login-card-logo{width:145px;height:auto;margin-bottom:22px}.login-card h2{font-size:26px;margin:0}.muted{color:var(--muted)}.form-stack{display:flex;flex-direction:column;gap:7px;margin-top:22px}.form-stack label{font-size:12px;font-weight:750;margin-top:7px}.form-stack input,.form-stack select{height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);padding:0 11px;outline:0}.form-stack input:focus,.form-stack select:focus{border-color:var(--bos-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--bos-blue) 14%,transparent)}.validation{color:var(--danger);font-size:11px}.alert{border-radius:8px;padding:10px 12px;margin:14px 0;font-size:12px}.alert-error{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 30%,var(--border))}.status-card{max-width:780px;margin:60px auto;background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:28px;box-shadow:var(--shadow)}
.mobile-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:35}
@media(max-width:1050px){.topbar{grid-template-columns:minmax(0,1fr) auto}.user-name{display:none}.home-grid{grid-template-columns:1fr 1fr}.welcome-panel{grid-column:1/-1}}
@media(max-width:800px){.sidebar{transform:translateX(-102%);width:min(86vw,310px)}.sidebar.mobile-open{transform:translateX(0)}.workspace,.sidebar-collapsed .workspace{margin-left:0}.sidebar-collapsed .sidebar{width:min(86vw,310px)}.sidebar-collapsed .brand-logo{width:100%;max-width:132px;object-fit:contain}.sidebar-collapsed .sidebar-search,.sidebar-collapsed .sidebar-search-clear,.sidebar-collapsed .search-glyph,.sidebar-collapsed .sidebar-section-title,.sidebar-collapsed .favorites-empty,.sidebar-collapsed .nav-text,.sidebar-collapsed .menu-chevron,.sidebar-collapsed .favorite-toggle{display:initial}.sidebar-collapsed .nav-link{justify-content:flex-start}.sidebar-collapse{display:none}.mobile-menu-button{display:inline-grid;place-items:center}.topbar{grid-template-columns:minmax(0,1fr) auto;padding:0 10px}.company-label{font-size:13px}.content-area{padding:14px}.page-header{align-items:flex-start}.page-header h1{font-size:21px}.home-grid{grid-template-columns:1fr}.welcome-panel{grid-column:auto}.quick-links{grid-template-columns:1fr}.toolbar-row,.filter-bar{flex-wrap:wrap;align-items:center}.toolbar-note{width:100%;margin-left:0}.tree-table-wrap,.data-table-wrap{max-height:none}.login-page{display:block;background:linear-gradient(160deg,#0c5275 0 28%,var(--bg) 28%)}.login-brand-panel{background:transparent;padding:28px 24px 10px;min-height:170px}.login-logo{width:150px}.login-brand-copy{display:none}.login-form-panel{background:transparent;padding:14px}.login-card{padding:24px}.login-card-logo{display:none}}
@media(max-width:520px){.topbar-actions{gap:2px}.content-area{padding:10px}.page-actions{width:100%;flex-wrap:wrap}.page-header{flex-direction:column}.compact-panel{padding:15px}.welcome-panel{padding:16px}.data-table{font-size:11px}.filter-bar label{flex:1;min-width:120px}.filter-bar select{width:100%;min-width:0}}

/* Phase 1 Fix 2 - one-time BOSCompanies setup */
.setup-card { max-width: 540px; }
.setup-hint { margin: 1.1rem 0 0; font-size: .86rem; color: var(--text-muted); line-height: 1.5; }
.check-row { display: flex; align-items: center; gap: .65rem; margin: .35rem 0; cursor: pointer; }
.check-row input { width: auto; }
.compact-stack { gap: .55rem; }
.login-secondary-action { margin-top: 1rem; text-align: center; font-size: .88rem; }
.login-secondary-action a { color: var(--bos-blue); text-decoration: none; }
.alert-success { background: rgba(38, 153, 92, .12); border: 1px solid rgba(38, 153, 92, .35); color: var(--text); }

/* Phase 1 Fix 4 - clean main navigation */
.main-menu-link{font-weight:700}.main-menu-icon{width:19px;height:19px;display:inline-grid;place-items:center;color:#d9f2fb}.main-menu-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.main-menu-node>.menu-row .nav-link:hover .main-menu-icon{color:#fff}.menu-children .nav-link{font-weight:500}.sidebar-collapsed .main-menu-icon{width:22px;height:22px}.sidebar-collapsed .main-menu-icon svg{width:20px;height:20px}


/* Phase 1 Fix 7 - desktop sidebar drag resize */
.sidebar-resizer{position:absolute;top:0;right:-4px;width:8px;height:100%;z-index:45;cursor:col-resize;touch-action:none;background:transparent}
.sidebar-resizer::after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:transparent;transition:background .12s ease}
.sidebar-resizer:hover::after,.sidebar-resizing .sidebar-resizer::after{background:rgba(255,255,255,.35)}
.sidebar-resizing,.sidebar-resizing *{cursor:col-resize!important;user-select:none!important}
.sidebar-resizing .sidebar,.sidebar-resizing .workspace{transition:none!important}
.sidebar-collapsed .sidebar-resizer{display:none}
@media(max-width:800px){.sidebar-resizer{display:none}}

/* Phase 1 Fix 8 - responsive dashboard preview charts (no external chart library) */
.dashboard-header{align-items:center}.dashboard-preview-pill{font-size:11px;font-weight:800;letter-spacing:.03em;color:var(--bos-blue);background:color-mix(in srgb,var(--bos-blue) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--bos-blue) 25%,var(--border));padding:6px 10px;border-radius:999px;white-space:nowrap}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.dashboard-kpi-card{padding:16px;display:flex;gap:13px;align-items:center;min-width:0}.dashboard-kpi-icon{width:42px;height:42px;flex:0 0 42px;border-radius:11px;background:color-mix(in srgb,var(--bos-blue) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--bos-blue) 24%,var(--border));color:var(--bos-blue);display:grid;place-items:center;font-size:19px;font-weight:900}.dashboard-kpi-value{font-size:21px;line-height:1.2;font-weight:850;margin-top:3px;font-variant-numeric:tabular-nums}.dashboard-kpi-caption{font-size:10.5px;color:var(--muted);margin-top:4px}.dashboard-chart-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.9fr);gap:14px}.dashboard-chart-card{padding:17px;min-width:0;overflow:hidden}.dashboard-chart-wide{min-height:330px}.dashboard-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.dashboard-card-heading h2{font-size:16px;margin:0 0 4px}.dashboard-card-heading p{font-size:11px;color:var(--muted);margin:0;line-height:1.45}.dashboard-mini-tag{font-size:10px;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);padding:4px 7px;border-radius:999px;white-space:nowrap}.dashboard-line-chart{height:232px;position:relative;padding-bottom:25px}.dashboard-line-chart svg{width:100%;height:100%;overflow:visible}.chart-grid-lines line{stroke:var(--border);stroke-width:1}.chart-area{fill:color-mix(in srgb,var(--bos-blue) 12%,transparent)}.chart-primary-line{fill:none;stroke:var(--bos-blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-secondary-line{fill:none;stroke:var(--bos-gray);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:.68}.dashboard-chart-axis{position:absolute;left:5.7%;right:0;bottom:0;display:flex;justify-content:space-between;color:var(--muted);font-size:9.5px}.dashboard-legend{display:flex;gap:18px;justify-content:flex-end;color:var(--muted);font-size:10.5px;margin-top:4px}.dashboard-legend span{display:flex;align-items:center;gap:5px}.dashboard-legend i{width:18px;height:3px;border-radius:9px;display:block}.legend-primary{background:var(--bos-blue)}.legend-secondary{background:var(--bos-gray);opacity:.72}.dashboard-donut-wrap{display:flex;align-items:center;justify-content:center;gap:22px;min-height:235px}.dashboard-donut{width:150px;height:150px;flex:0 0 150px;border-radius:50%;background:conic-gradient(var(--bos-blue) 0 42%,#4fa8c9 42% 70%,#7e8c97 70% 89%,color-mix(in srgb,var(--bos-gray) 45%,var(--surface)) 89% 100%);position:relative;display:grid;place-items:center}.dashboard-donut::after{content:"";position:absolute;inset:28px;border-radius:50%;background:var(--surface);border:1px solid var(--border)}.dashboard-donut-center{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column}.dashboard-donut-center strong{font-size:19px}.dashboard-donut-center span{font-size:10px;color:var(--muted)}.dashboard-donut-legend{display:flex;flex-direction:column;gap:10px;min-width:145px}.dashboard-donut-legend span{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.dashboard-donut-legend strong{color:var(--text);font-variant-numeric:tabular-nums}.dot{width:8px;height:8px;border-radius:50%}.dot-accounting{background:var(--bos-blue)}.dot-stock{background:#4fa8c9}.dot-sales{background:#7e8c97}.dot-other{background:color-mix(in srgb,var(--bos-gray) 45%,var(--surface))}.dashboard-bars{height:230px;display:flex;align-items:flex-end;gap:clamp(10px,2.4vw,30px);padding:14px 10px 0;border-bottom:1px solid var(--border);background:repeating-linear-gradient(to top,transparent 0,transparent 49px,color-mix(in srgb,var(--border) 72%,transparent) 50px)}.bar-group{height:100%;flex:1;min-width:24px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px}.bar-columns{height:calc(100% - 24px);width:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px}.bar{width:min(18px,35%);border-radius:4px 4px 1px 1px;min-height:3px}.bar-primary{background:var(--bos-blue)}.bar-secondary{background:var(--bos-gray);opacity:.72}.bar-label{font-size:9.5px;color:var(--muted)}.dashboard-context-card{align-self:stretch}.dashboard-context-list{display:flex;flex-direction:column;border-top:1px solid var(--border)}.dashboard-context-list div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border);font-size:12px}.dashboard-context-list span{color:var(--muted)}.dashboard-context-list strong{text-align:right;overflow:hidden;text-overflow:ellipsis}.dashboard-context-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:15px}.dashboard-context-actions .btn{text-align:center}.dashboard-preview-note{margin-top:14px;color:var(--muted);font-size:10.5px;line-height:1.5;padding:0 2px}.dashboard-preview-note strong{color:var(--text)}
@media(max-width:1200px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-chart-grid{grid-template-columns:1fr}.dashboard-chart-wide{min-height:310px}.dashboard-donut-wrap{min-height:210px}}
@media(max-width:800px){.dashboard-header{flex-direction:row}.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-kpi-card{padding:13px}.dashboard-kpi-icon{width:36px;height:36px;flex-basis:36px;font-size:16px}.dashboard-kpi-value{font-size:17px}.dashboard-chart-grid{gap:10px}.dashboard-chart-card{padding:14px}.dashboard-line-chart{height:210px}.dashboard-bars{height:210px}.dashboard-donut-wrap{flex-direction:row}}
@media(max-width:520px){.dashboard-header{align-items:flex-start}.dashboard-preview-pill{font-size:9px;padding:5px 8px}.dashboard-kpi-grid{grid-template-columns:1fr 1fr}.dashboard-kpi-card{display:block}.dashboard-kpi-icon{margin-bottom:9px}.dashboard-kpi-value{font-size:16px}.dashboard-kpi-caption{font-size:9px}.dashboard-chart-wide{min-height:0}.dashboard-line-chart{height:185px}.dashboard-card-heading p{font-size:10px}.dashboard-donut-wrap{flex-direction:column;gap:16px}.dashboard-donut{width:132px;height:132px;flex-basis:132px}.dashboard-donut::after{inset:25px}.dashboard-donut-legend{width:100%}.dashboard-bars{height:190px;gap:7px;padding-inline:2px}.bar-columns{gap:2px}.bar{width:min(13px,40%)}.dashboard-legend{justify-content:flex-start}.dashboard-preview-note{font-size:9.5px}}

/* Phase 1 Fix 9 - stronger BOS menu hierarchy and action differentiation */
.menu-type-module{margin-top:3px}
.menu-type-module>.menu-row>.nav-link{min-height:39px}
.menu-type-module>.menu-row>.main-menu-link{font-size:13.5px;font-weight:800}
.menu-type-module>.menu-row>.main-menu-link[aria-expanded="true"]{background:rgba(0,0,0,.13);box-shadow:inset 3px 0 0 rgba(255,255,255,.88)}

.menu-type-folder{margin-top:2px}
.folder-menu-link{font-weight:700;color:#f8fcff;background:rgba(0,0,0,.055)}
.folder-menu-link:hover,.folder-menu-link[aria-expanded="true"]{background:rgba(255,255,255,.09)}
.folder-menu-icon{width:18px;height:18px;display:inline-grid;place-items:center;color:#d7e9f2}
.folder-menu-icon svg,.action-menu-icon svg,.leaf-menu-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

.menu-type-action>.menu-row{position:relative}
.action-menu-link{font-weight:600;color:#eafaff;min-height:34px}
.action-menu-link:hover{background:rgba(255,255,255,.12);color:#fff}
.action-menu-icon{width:18px;height:18px;display:inline-grid;place-items:center;color:#79d4f3;opacity:.95}
.leaf-menu-link{color:var(--sidebar-text)}
.leaf-menu-icon{width:18px;height:18px;display:inline-grid;place-items:center;color:var(--sidebar-muted)}

/* Tree-like guide makes parent, sub-menu and opening screen levels obvious. */
.menu-children{position:relative;margin-left:11px;border-left:1px solid rgba(210,238,249,.22);padding-left:8px}
.menu-children>.menu-node>.menu-row::before{content:"";position:absolute;width:7px;border-top:1px solid rgba(210,238,249,.20);left:-8px;top:18px}
.menu-children>.menu-node>.menu-row{position:relative}
.menu-children .menu-children{margin-left:13px}

/* Current web screen is highlighted and its parents stay visibly open. */
.nav-link.active-menu-item{background:rgba(255,255,255,.17)!important;color:#fff;box-shadow:inset 3px 0 0 #7cddff}
.nav-link.active-menu-item .action-menu-icon,.nav-link.active-menu-item .leaf-menu-icon{color:#fff}
.menu-node.contains-active>.menu-row>.menu-toggle{background:rgba(255,255,255,.075)}

/* Favorite stars stay secondary to the action icon/text. */
.menu-type-action .favorite-toggle{opacity:.72}
.menu-type-action .favorite-toggle:hover,.menu-type-action .favorite-toggle.is-favorite{opacity:1}

/* Keep the collapsed sidebar focused on root modules only. */
.sidebar-collapsed .menu-type-folder>.menu-row,
.sidebar-collapsed .menu-type-action>.menu-row,
.sidebar-collapsed .menu-type-leaf>.menu-row{display:none}

@media(max-width:800px){
  .sidebar-collapsed .menu-type-folder>.menu-row,
  .sidebar-collapsed .menu-type-action>.menu-row,
  .sidebar-collapsed .menu-type-leaf>.menu-row{display:flex}
  .folder-menu-link{min-height:38px}
  .action-menu-link{min-height:38px}
}

/* Phase 1 Fix 10 - clearer clickable screens + correct collapsed BOS branding */
.brand-logo-collapsed{display:none;width:40px;height:40px;object-fit:contain;margin:auto}
.sidebar-collapsed .brand-logo-full{display:none}
.sidebar-collapsed .brand-logo-collapsed{display:block}
.sidebar-collapsed .brand-link{display:grid;place-items:center}

/* Actual screens that open are intentionally lighter than folders/modules. */
.action-menu-link{
  color:#d9f7ff;
  background:rgba(124,221,255,.085);
  border:1px solid rgba(124,221,255,.08);
  font-weight:650;
}
.action-menu-link:hover{
  color:#fff;
  background:rgba(124,221,255,.18);
  border-color:rgba(124,221,255,.20);
}
.action-menu-icon{color:#8be2ff;opacity:1}
.action-menu-link .nav-text{color:inherit}
.action-menu-link.active-menu-item{
  background:rgba(124,221,255,.23)!important;
  border-color:rgba(124,221,255,.25);
}

@media(max-width:800px){
  .sidebar-collapsed .brand-logo-full{display:block}
  .sidebar-collapsed .brand-logo-collapsed{display:none}
}


/* Phase 1 Fix 11 - move Search Engine / My Notifications out of the left menu into shell utilities */
.topbar-notification{display:inline-grid;place-items:center;text-decoration:none;position:relative}
.topbar-notification svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.topbar-notification:hover{color:var(--bos-blue)}
.popover-divider{height:1px;background:var(--border);margin:7px 3px}
.popover-link{display:flex;align-items:center;gap:10px;text-decoration:none}
.popover-action-icon{width:18px;height:18px;display:inline-grid;place-items:center;color:var(--bos-blue);flex:none}
.popover-action-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.popover-signout{font-weight:650}
@media(max-width:520px){.topbar-notification{width:34px;height:34px}.user-menu-popover{width:min(240px,calc(100vw - 20px))}}

.topbar-notification{position:relative}.notification-badge{position:absolute;top:2px;right:1px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#d93025;color:#fff;font-size:9px;font-weight:900;display:grid;place-items:center;line-height:1}
