:root{--workspace-sidebar-text:#475467;--workspace-sidebar-muted:#98a2b3;--workspace-accent:#1769e0;--workspace-accent-soft:#eef5ff}

/* Navegación del despacho: corta, explícita y separada del contexto fiscal. */
.firm-navigation{display:none}
.firm-workspace .sidebar-nav>.nav-item,.firm-workspace .sidebar-nav>.sidebar-nav-group{display:none!important}
.firm-workspace .firm-navigation{display:grid;gap:3px;padding:2px 0 74px}
.firm-nav-label{margin:15px 11px 5px;color:var(--workspace-sidebar-muted);font-size:9px;font-weight:750;letter-spacing:.1em}
.firm-navigation>button,.firm-nav-office>button{display:grid;grid-template-columns:30px minmax(0,1fr) 16px;align-items:center;gap:8px;min-height:40px;padding:5px 9px;border:0;border-radius:9px;background:transparent;color:var(--workspace-sidebar-text);text-align:left;cursor:pointer}
.firm-navigation>button>span,.firm-nav-office>button>span{display:grid;width:28px;height:28px;place-items:center;border-radius:8px;color:#667085}
.firm-navigation button svg{width:17px;height:17px;stroke-width:1.8}
.firm-navigation button b{overflow:hidden;font-size:12.5px;font-weight:550;text-overflow:ellipsis;white-space:nowrap}
.firm-navigation>button:hover,.firm-nav-office>button:hover{background:#f5f7fa;color:#1d2939}
.firm-navigation>button.active,.firm-nav-office:has([data-firm-action].active)>button{background:var(--workspace-accent-soft);color:#145fc9}
.firm-navigation>button.active>span,.firm-nav-office:has([data-firm-action].active)>button>span{background:#dceaff;color:var(--workspace-accent)}
.firm-navigation>button.active b,.firm-nav-office:has([data-firm-action].active)>button b{font-weight:700}
.firm-nav-office{display:grid;gap:2px}
.firm-nav-office>button>i{display:grid;place-items:center;transition:transform .18s}
.firm-nav-office.open>button>i{transform:rotate(180deg)}
.firm-nav-office>div{display:none;margin:0 0 4px 38px;padding:3px 0 3px 11px;border-left:1px solid #e4e7ec}
.firm-nav-office.open>div{display:grid;gap:2px}
.firm-nav-office>div button{display:flex;align-items:center;gap:8px;min-height:34px;padding:6px 9px;border:0;border-radius:7px;background:transparent;color:#667085;font-size:11.5px;font-weight:520;text-align:left;cursor:pointer}
.firm-nav-office>div button:hover{background:#f5f7fa;color:#1d2939}.firm-nav-office>div button.active{background:#eef5ff;color:#145fc9;font-weight:700}
.firm-nav-office>div svg{width:15px;height:15px}.firm-nav-logout{color:#8b3a45!important}

/* Dos tableros, una sola jerarquía: despacho primero, contribuyente después. */
.firm-workspace #dashboardActiveCompany,.firm-workspace #dashboardOperationalSummary,.firm-workspace #complianceCenter,.firm-workspace #dashGrid,.firm-workspace .dashboard-quick-header,.firm-workspace .dashboard-security-note{display:none!important}
.company-workspace #accountingPortfolioDashboard{display:none!important}
.company-workspace .welcome-stats{display:none!important}
.firm-workspace .welcome-text h1{font-size:28px!important}.firm-workspace .welcome-text .dash-sub{margin-bottom:19px!important}
.firm-workspace .accounting-portfolio-dashboard{margin-top:18px!important}
.firm-workspace .portfolio-head{background:#fff!important}
.firm-workspace .portfolio-head h2{font-size:19px!important}.firm-workspace .portfolio-head p{font-size:12px!important}
.firm-workspace .liquid-nav-scroll button{display:none!important}

/* Directorio de clientes. */
.client-directory-heading{align-items:end!important;margin-bottom:18px!important;padding-bottom:0!important;border:0!important}
.client-directory-heading h1{margin:4px 0 5px;color:#101828;font-size:28px;font-weight:720;letter-spacing:-.035em}
.client-directory-heading .section-label{margin:0!important;color:#1769e0!important;font-size:9px!important;font-weight:750!important;letter-spacing:.1em!important;text-transform:uppercase}
.client-directory-heading .empresas-sub{margin:0!important;color:#667085!important;font-size:12px!important}
.client-directory-heading #addCompanyBtn{display:inline-flex!important;align-items:center!important;gap:8px!important;min-height:40px!important;padding:0 15px!important}.client-directory-heading #addCompanyBtn svg{width:17px}
.client-directory-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 210px;gap:10px;margin-bottom:13px;padding:12px;border:1px solid #e4e7ec;border-radius:11px;background:#fff}
.client-directory-toolbar label{display:flex;align-items:center;gap:9px;height:40px;margin:0!important;padding:0 11px;border:1px solid #e1e5eb;border-radius:8px;background:#fafbfc}.client-directory-toolbar label svg{width:17px;color:#98a2b3}.client-directory-toolbar input{height:100%!important;padding:0!important;border:0!important;background:transparent!important;font-size:12px!important;box-shadow:none!important}.client-directory-toolbar select{height:40px!important;padding:0 11px!important;font-size:11.5px!important;font-weight:600!important}
.client-directory-table{overflow:hidden;border:1px solid #e4e7ec;border-radius:11px;background:#fff}
.client-directory-table>header,.client-directory-row{display:grid;grid-template-columns:minmax(230px,1.45fr) minmax(180px,1.1fr) minmax(130px,.75fr) 105px minmax(125px,.72fr) 150px;align-items:center;gap:14px}
.client-directory-table>header{min-height:42px;padding:0 15px;border-bottom:1px solid #e4e7ec;background:#f8f9fb;color:#667085;font-size:9px;font-weight:750;letter-spacing:.07em;text-transform:uppercase}
.client-directory-row{min-height:76px;padding:10px 15px!important;border:0!important;border-bottom:1px solid #eaecf0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
.client-directory-row:last-child{border-bottom:0!important}.client-directory-row:hover{background:#fbfdff!important;transform:none!important}
.client-directory-identity{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;padding:0;border:0;background:transparent;color:#101828;text-align:left;cursor:pointer}
.client-directory-identity>span{display:grid;width:36px;height:36px;place-items:center;border-radius:9px;background:#eaf2ff;color:#1769e0;font-size:13px;font-weight:750}.client-directory-identity>div,.client-directory-regime,.client-directory-access,.client-directory-fiel{display:grid;gap:3px;min-width:0}.client-directory-identity b{overflow:hidden;font-size:11.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.client-directory-identity small,.client-directory-regime small,.client-directory-access small,.client-directory-fiel small{overflow:hidden;color:#8a94a4;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.client-directory-regime b,.client-directory-access b{font-size:10.5px;font-weight:650}.client-directory-access.licensed b{color:#087a4e}.client-directory-access.billing b{color:#9a5b00}.client-directory-access.unlicensed b{color:#9b2938}
.client-directory-credentials{display:flex;gap:5px}.client-directory-credentials span{padding:4px 6px;border-radius:5px;background:#f2f4f7;color:#98a2b3;font-size:8px;font-weight:750}.client-directory-credentials span.ready{background:#e9f8f0;color:#087a4e}
.client-directory-fiel .company-badge{width:max-content;padding:4px 7px;border-radius:6px;font-size:8px!important;font-weight:750!important}
.client-directory-actions{display:flex!important;justify-content:flex-end!important;gap:7px!important;margin:0!important}.client-directory-actions button{display:inline-flex!important;flex:0 0 36px!important;width:36px!important;height:36px!important;min-width:36px!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0!important;border:1px solid #dfe4ea!important;border-radius:8px!important;background:#fff!important;color:#475467!important;box-shadow:none!important}.client-directory-actions button svg{width:16px!important;height:16px!important}.client-directory-actions .primary-row{border-color:#1769e0!important;background:#1769e0!important;color:#fff!important}.client-directory-actions .primary-row:hover{border-color:#145fc9!important;background:#145fc9!important}.client-directory-actions .danger{color:#a32b3b!important}
.client-directory-table .company-card:not(.client-directory-row){grid-column:1/-1;margin:14px!important;border:1px solid #dfe4ea!important;border-radius:10px!important}

@media(max-width:1180px){.client-directory-table{overflow-x:auto}.client-directory-table>header,.client-directory-row{min-width:1050px}}
@media(max-width:720px){.client-directory-toolbar{grid-template-columns:1fr}.client-directory-heading{align-items:flex-start!important;gap:14px!important}.client-directory-heading #addCompanyBtn{width:100%;justify-content:center!important}.firm-workspace .welcome-text h1{font-size:24px!important}}

html[data-theme="dark"] .firm-navigation>button:hover,html[data-theme="dark"] .firm-nav-office>button:hover,html[data-theme="dark"] .firm-nav-office>div button:hover{background:#202833;color:#fff}
html[data-theme="dark"] .client-directory-toolbar,html[data-theme="dark"] .client-directory-table,html[data-theme="dark"] .client-directory-row{border-color:#2b323d!important;background:#171c25!important}
html[data-theme="dark"] .client-directory-table>header,html[data-theme="dark"] .client-directory-toolbar label{border-color:#303844;background:#202630;color:#aab3c0}
html[data-theme="dark"] .client-directory-heading h1,html[data-theme="dark"] .client-directory-identity{color:#f4f7fb}

/* El contribuyente se cambia exclusivamente desde el selector global. */
.company-workspace [data-context-company-control="true"]{display:none!important}
.dashboard-company-active--fixed{cursor:default!important}
.dashboard-company-active--fixed:hover{transform:none!important;box-shadow:none!important}
.dashboard-company-context{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:112px;color:#667085;font-size:9px;font-weight:700;white-space:nowrap}
.dashboard-company-context svg{width:14px;height:14px;color:#1769e0}
.cc-toolbar--context-locked{justify-content:flex-end}
.cc-toolbar--context-locked .cc-year{flex:0 0 130px!important}

/* Sidebar compacto para escritorio: conserva iconos, contexto y espacio de trabajo. */
@media(min-width:1101px){
  .sidebar-collapse{position:absolute!important;z-index:4!important;top:28px!important;right:-14px!important;display:grid!important;width:29px!important;height:29px!important;padding:0!important;place-items:center!important;border:1px solid #d9e0ea!important;border-radius:50%!important;background:#fff!important;color:#526071!important;box-shadow:0 3px 10px rgba(16,24,40,.12)!important;cursor:pointer!important}
  .sidebar-collapse:hover{border-color:#aac7ef!important;background:#f3f7fd!important;color:#1769e0!important}
  .sidebar-collapse svg{width:15px!important;height:15px!important}
  .sidebar,.shell-main,.liquid-topnav{transition:width .2s ease,margin-left .2s ease,left .2s ease!important}
  .shell.sidebar-collapsed .sidebar,.shell.sidebar-collapsed.module-mode .sidebar{width:72px!important;padding-right:9px!important;padding-left:9px!important}
  .shell.sidebar-collapsed .shell-main,.shell.sidebar-collapsed.module-mode .shell-main{margin-left:72px!important}
  .shell.sidebar-collapsed .liquid-topnav{left:72px!important}
  .shell.sidebar-collapsed .sidebar-brand{min-height:58px!important;height:58px!important;margin:0 0 10px!important;padding:0!important;border-bottom:1px solid #eef0f3!important}
  .shell.sidebar-collapsed .sidebar-brand::before{display:none!important}
  .shell.sidebar-collapsed .brand-mark-big{display:none!important}
  .shell.sidebar-collapsed .brand-mark-compact{position:static!important;display:block!important;width:36px!important;height:36px!important;opacity:1!important;object-fit:contain!important;pointer-events:auto!important}
  .shell.sidebar-collapsed .sidebar-search{width:40px!important;margin:0 auto 10px!important;padding:0!important;justify-content:center!important}
  .shell.sidebar-collapsed .sidebar-search>span{margin:0!important}
  .shell.sidebar-collapsed .sidebar-search input,.shell.sidebar-collapsed .sidebar-search kbd,.shell.sidebar-collapsed .nav-label,.shell.sidebar-collapsed .nav-group-label,.shell.sidebar-collapsed .sidebar-more,.shell.sidebar-collapsed .nav-soon-chip,.shell.sidebar-collapsed .beta-chip{display:none!important}
  .shell.sidebar-collapsed .sidebar-nav{padding-right:0!important;padding-left:0!important}
  .shell.sidebar-collapsed .sidebar-nav-group{margin:0!important}
  .shell.sidebar-collapsed .sidebar .nav-item{width:42px!important;min-height:40px!important;margin:1px auto!important;padding:5px!important;justify-content:center!important}
  .shell.sidebar-collapsed .sidebar .nav-icon{flex:0 0 30px!important;margin:0!important}
  .shell.sidebar-collapsed .firm-navigation{gap:3px!important;padding-right:0!important;padding-left:0!important}
  .shell.sidebar-collapsed .firm-navigation>button,.shell.sidebar-collapsed .firm-nav-office>button{width:42px!important;grid-template-columns:30px!important;gap:0!important;margin:1px auto!important;padding:5px!important;justify-content:center!important}
  .shell.sidebar-collapsed .firm-navigation button b,.shell.sidebar-collapsed .firm-navigation>button>i,.shell.sidebar-collapsed .firm-nav-office>button>i,.shell.sidebar-collapsed .firm-nav-office>div{display:none!important}
  .shell.sidebar-collapsed .account-menu--sidebar{right:9px!important;left:9px!important}
  .shell.sidebar-collapsed .account-pill{width:42px!important;padding:5px!important;justify-content:center!important}
  .shell.sidebar-collapsed .account-pill #accountTenant,.shell.sidebar-collapsed .account-pill .chev{display:none!important}
}

@media(max-width:720px){.cc-toolbar--context-locked{grid-template-columns:1fr auto!important}.cc-toolbar--context-locked .cc-year{max-width:none!important}}

html[data-theme="dark"] .sidebar-collapse{border-color:#394657!important;background:#202833!important;color:#c8d2df!important}
