/* Reference verified in HubStrom: charcoal surfaces, green actions, compact data. */
:root{color-scheme:dark;--primary:#32b584;--primary-hover:#26946c;--primary-light:#12362a;--primary-glow:transparent;--primary-text:#061b13;--bg-body:#101213;--bg-sidebar:#121415;--bg-topbar:#191b1c;--bg-card:#191c1e;--bg-card-hover:#24282b;--bg-input:#141718;--text-main:#edf1f3;--text-sec:#bdc5ca;--text-muted:#98a3ab;--border:#303639;--border-light:#252b2e;--border-strong:#4b565c;--success:#54d69c;--warning:#f2c66d;--danger:#fa9393;--info:#87c6e9;--purple:#bdadf5;--tone-primary-bg:#12362a;--tone-primary-fg:#54d69c;--tone-info-bg:#19313d;--tone-info-fg:#87c6e9;--tone-success-bg:#153429;--tone-success-fg:#54d69c;--tone-warning-bg:#39301c;--tone-warning-fg:#f2c66d;--tone-danger-bg:#3a2326;--tone-danger-fg:#fa9393;--tone-neutral-bg:#282e32;--tone-neutral-fg:#bdc5ca;--shadow-sm:none;--shadow:none;--shadow-md:0 8px 24px #0003;--shadow-lg:0 20px 60px #0008}
.sidebar{width:220px;background:var(--bg-sidebar);padding-top:20px}
.primary-navigation{display:flex;flex-direction:column;gap:6px;padding-top:18px}
.primary-navigation .nav-item{min-height:44px;font-size:13px}
.primary-navigation .nav-item:last-child{margin-top:18px;border-top:1px solid var(--border);border-radius:0 0 6px 6px}
.sidebar-footer{border-top:1px solid var(--border);flex-shrink:0}
.module-select-label{display:none}
.brand-icon,.user-chip{background:var(--primary-light);color:var(--primary)}
.sidebar-section-label{padding:17px 12px 6px;font-size:9px;color:var(--text-muted)}
.nav-item{padding:9px 12px;border-radius:6px;min-height:36px}
.nav-item:hover{background:#202628;color:var(--text-main)}.nav-item svg{color:var(--primary)}
.nav-item.active{background:var(--primary-light);color:#66ddae}.nav-item.active::before{display:block;background:var(--primary);top:8px;bottom:8px;width:3px}
.topbar{height:68px;background:var(--bg-topbar)}.topbar-icon-btn{background:var(--bg-card);color:var(--text-sec)}
.empresa-pill{background:var(--bg-input);border-radius:6px}.empresa-pill-select{color:var(--text-main);background:transparent}
.content{padding:22px 26px}.card,.kpi-card{box-shadow:none;border-radius:7px}
.module-navigation{display:flex;align-items:center;gap:28px;min-height:48px;margin:-4px 0 24px;padding-bottom:12px;border-bottom:1px solid var(--border)}
.module-navigation h2{font-size:22px;letter-spacing:-.03em;white-space:nowrap}
.module-links{display:flex;gap:22px;overflow-x:auto;scrollbar-width:thin}
.module-link{background:none;border:0;border-bottom:2px solid transparent;padding:12px 0;color:var(--text-muted);font:inherit;font-size:12px;white-space:nowrap;cursor:pointer}
.module-link:hover{color:var(--text-main)}.module-link[aria-current=page]{color:var(--text-main);border-bottom-color:var(--primary);font-weight:650}
.btn{background:#282c2e;color:var(--text-main);border-color:#454d52;border-radius:5px}
.btn:hover{background:#333a3e}.btn-primary{background:var(--primary);color:#061b13;border-color:var(--primary);font-weight:650}
.btn-primary:hover{background:#5ad0a1;color:#061b13;border-color:#5ad0a1}.btn-danger{background:#302125;color:#ffacac;border-color:#6e4147}
th{background:#1c2022;color:#b4bec5;font-size:11px;padding:13px 14px}td{padding:14px;border-color:var(--border-light)}table{background:var(--bg-body)}
.table-wrap{border-radius:5px}.modal-backdrop{background:#0009}.modal-header,.modal-footer{background:#202427}.timeline-bar-container{background:#242c30}
.workspace-heading h2{font-size:22px}.workspace-eyebrow{color:var(--text-muted)}.workspace-heading p{font-size:12px}
.company-summary{gap:0;background:var(--bg-card);border:1px solid var(--border);border-radius:7px}
.company-summary>div{background:transparent;border:0;border-radius:0;border-right:1px solid var(--border);padding:18px 20px;box-shadow:none}
.company-summary>div:last-child{border:0}.company-summary span{color:var(--text-sec);font-size:11px;margin-bottom:7px}.company-summary strong{color:var(--text-main);font-size:23px}
.company-summary>div:nth-child(2) strong{color:var(--success)}.company-summary>div:nth-child(3) strong{color:var(--warning)}
.company-directory{background:transparent;border:0;padding:0}
.directory-filters input,.directory-filters select{background:var(--bg-input);color:var(--text-main);border-color:var(--border-strong);border-radius:5px}
.directory-help summary{color:#71dbb1}:focus-visible{outline-color:#76e5b9}
@media(max-width:900px){.sidebar,.sidebar.collapsed{background:var(--bg-sidebar)}.content{padding:20px 16px}.company-summary{gap:0}.company-summary>div{border-bottom:1px solid var(--border)}.company-summary>div:nth-child(2){border-right:0}.company-summary>div:nth-child(3){border-bottom:0}.module-navigation{align-items:flex-start;flex-direction:column;gap:4px}.module-links{max-width:100%}.topbar{height:auto}}
@media(max-width:600px){.module-links{display:none}.module-select-label{display:flex;flex-direction:column;gap:6px;width:100%;font-size:12px;color:var(--text-muted)}.module-select{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:6px;background:var(--bg-input);color:var(--text-main);font:inherit}.module-navigation{gap:14px}.primary-navigation{gap:3px;padding-top:8px}.primary-navigation .nav-item{min-height:42px}.primary-navigation .nav-item:last-child{margin-top:8px}}

/* Page context, company scope and actions have separate, responsive positions. */
.workspace-topbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px) auto;gap:24px;height:auto;min-height:80px;padding:12px 26px;align-items:center}
.workspace-topbar .topbar-left{gap:16px;min-width:0}
.header-context{display:flex;flex-direction:column;gap:4px;min-width:0}
.header-workspace{font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.header-title{font-size:18px;font-weight:650;line-height:1.25;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.workspace-topbar .menu-toggle,.workspace-topbar .topbar-icon-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;padding:0;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-sec)}
.workspace-topbar .menu-toggle:hover,.workspace-topbar .topbar-icon-btn:hover{background:var(--bg-card-hover);color:var(--text-main)}
.workspace-topbar .empresa-pill{width:100%;max-width:none;min-width:0;gap:10px;padding:7px 12px;border-radius:8px;color:var(--text-sec);background:var(--bg-input)}
.header-company-field{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.header-company-field label{font-size:10px;line-height:1.2;font-weight:500;color:var(--text-muted)}
.workspace-topbar .empresa-pill-select{width:100%;max-width:none;min-width:0;padding:0!important;font-size:12px!important;line-height:1.5;color:var(--text-main)!important;text-overflow:ellipsis}
.workspace-topbar .empresa-pill:focus-within{outline:2px solid var(--primary);outline-offset:3px}
.workspace-topbar .header-actions{gap:8px;flex:none;justify-content:flex-end}
.workspace-topbar .topbar-date{white-space:nowrap;background:none;border:0;padding:0 8px 0 0;font-size:11px;color:var(--text-muted)}
.module-navigation{align-items:stretch;flex-direction:column;gap:10px;margin:0 0 24px;padding:0;border-bottom:1px solid var(--border)}
.module-navigation h2{font-size:22px;line-height:1.35;margin:0}
.module-links{flex-wrap:wrap;gap:0 24px;overflow:visible;max-width:100%}
.module-link{min-height:44px;padding:10px 0;font-size:12px}
@media(max-width:1200px){.workspace-topbar{gap:16px;padding:12px 20px;grid-template-columns:minmax(0,1fr) minmax(200px,280px) auto}.workspace-topbar .topbar-date{display:none}}
@media(max-width:700px){.workspace-topbar{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 16px}.workspace-topbar .topbar-left{gap:12px}.workspace-topbar .empresa-pill{grid-column:1/-1;grid-row:2}.workspace-topbar .header-actions{grid-column:2;grid-row:1}.header-title{font-size:16px}.module-navigation h2{font-size:20px}}
@media(max-width:600px){.module-navigation{padding-bottom:16px}.module-links{display:none}.module-select-label{gap:8px}}
