@import url("/assets/cid-forense/dec-premium.css?v=20260726-1");

:root{
  --primary:#182033;
  --accent:#E4562F;
  --bg:#F4F3EF;
  --card:#FFFFFF;
  --text:#182033;
  --muted:#667085;
  --border:#E2E5E9;
  --radius:12px;
  --shadow:0 4px 14px rgba(24,32,51,.055);
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:Inter,system-ui,sans-serif;
  background:var(--bg);
  color:var(--text);
}

.wrap{max-width:980px;margin:0 auto;padding:28px 16px 48px}
.card{
  background:var(--card);
  border-radius:var(--radius);
  border:1px solid var(--border);
  box-shadow:var(--shadow);
  padding:18px;
}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.input{
  width:100%;
  border:1px solid var(--border);
  border-radius:14px;
  padding:10px 12px;
  font-size:14px;
  outline:none;
  background:#fff;
}
.btn{
  border:none;
  padding:10px 12px;
  border-radius:14px;
  font-weight:700;
  cursor:pointer;
}
.btn.primary{background:linear-gradient(135deg,var(--primary),#2c3a7c);color:#fff}
.btn.accent{background:linear-gradient(135deg,var(--accent),#ff7a63);color:#fff}
.muted{color:var(--muted);font-size:13px}
.hr{height:1px;background:var(--border);margin:14px 0}
html[data-theme="dark"]{
  color-scheme: dark;
  --primary:#8ea2ff;
  --accent:#ff755f;
  --bg:#0f1424;
  --card:#171d2d;
  --text:#edf2ff;
  --muted:#aeb8ce;
  --border:#30394d;
  --shadow:0 18px 40px rgba(0,0,0,.32);
}

html[data-theme="dark"] body{
  background:var(--bg) !important;
  color:var(--text) !important;
}

html[data-theme="dark"] .card,
html[data-theme="dark"] .input{
  background:var(--card) !important;
  border-color:var(--border) !important;
  color:var(--text) !important;
}

/* Contrast guard for application dark mode. */
html[data-theme="dark"] body{
  background:#0f1424 !important;
  color:#edf2ff !important;
}

html[data-theme="dark"] .card,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .box,
html[data-theme="dark"] .modal,
html[data-theme="dark"] .dropdown,
html[data-theme="dark"] .menu,
html[data-theme="dark"] table,
html[data-theme="dark"] .table{
  background:#171d2d !important;
  background-image:none !important;
  border-color:#30394d !important;
  color:#edf2ff !important;
}

html[data-theme="dark"] .card *,
html[data-theme="dark"] .panel *,
html[data-theme="dark"] .box *,
html[data-theme="dark"] .modal *,
html[data-theme="dark"] .dropdown *,
html[data-theme="dark"] .menu *,
html[data-theme="dark"] table *,
html[data-theme="dark"] .table *{
  color:inherit;
}

html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6,
html[data-theme="dark"] strong,
html[data-theme="dark"] b{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] .muted,
html[data-theme="dark"] .hint,
html[data-theme="dark"] .sub,
html[data-theme="dark"] .small,
html[data-theme="dark"] .meta{
  color:#b7c0d4 !important;
  -webkit-text-fill-color:#b7c0d4 !important;
}

html[data-theme="dark"] .input,
html[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
html[data-theme="dark"] textarea,
html[data-theme="dark"] select,
html[data-theme="dark"] .btn:not(.primary):not(.accent){
  background:#ffffff !important;
  background-image:none !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  border-color:#dbe3ee !important;
}

html[data-theme="dark"] th{background:#111827 !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;}
html[data-theme="dark"] td{background:#171d2d !important;color:#edf2ff !important;-webkit-text-fill-color:#edf2ff !important;}
html[data-theme="dark"] .btn.primary,
html[data-theme="dark"] .btn.accent{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;}

html[data-theme="dark"] button[id*="Reload"],
html[data-theme="dark"] .btn[id*="Reload"]{
  background:#111827 !important;
  background-image:none !important;
  border-color:#334155 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] #toolsCaseHint,
html[data-theme="dark"] #toolsCaseHint *,
html[data-theme="dark"] #toolsMsg,
html[data-theme="dark"] #btnToolsReload{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Hide user-facing JSON/debug panels in app tools. */
#btnJson,
#jsonBtn,
#btnExportJson,
#btnCopy,
#json,
.act-json,
article.suitePanel:has(#jsonText),
a#btnJson,
button#btnJson,
button#jsonBtn{
  display:none !important;
}


/* Global dark-mode pagination contrast: dark controls must use white text. */
html[data-theme="dark"] .pager .btn,
html[data-theme="dark"] .pagerbar .btn,
html[data-theme="dark"] .pagination .btn,
html[data-theme="dark"] .traffic-pagination .btn,
html[data-theme="dark"] .wallet-pagination .btn,
html[data-theme="dark"] button[id*="Prev"],
html[data-theme="dark"] button[id*="Next"],
html[data-theme="dark"] .btn[id*="Prev"],
html[data-theme="dark"] .btn[id*="Next"]{
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}

html[data-theme="dark"] .pager .btn *,
html[data-theme="dark"] .pagerbar .btn *,
html[data-theme="dark"] .pagination .btn *,
html[data-theme="dark"] .traffic-pagination .btn *,
html[data-theme="dark"] .wallet-pagination .btn *,
html[data-theme="dark"] button[id*="Prev"] *,
html[data-theme="dark"] button[id*="Next"] *,
html[data-theme="dark"] .btn[id*="Prev"] *,
html[data-theme="dark"] .btn[id*="Next"] *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] .pagerinfo,
html[data-theme="dark"] .pager-info,
html[data-theme="dark"] .page-info,
html[data-theme="dark"] .wallet-pagination-info,
html[data-theme="dark"] [id*="PageInfo"]{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}


/* Final specificity bump for dark pagination controls over generic dark button rules. */
html[data-theme="dark"] body .pager .btn:not(.primary),
html[data-theme="dark"] body .pagerbar .btn:not(.primary),
html[data-theme="dark"] body .pagination .btn:not(.primary),
html[data-theme="dark"] body .traffic-pagination .btn:not(.primary),
html[data-theme="dark"] body .wallet-pagination .btn:not(.primary),
html[data-theme="dark"] body button.btn[id*="Prev"],
html[data-theme="dark"] body button.btn[id*="Next"],
html[data-theme="dark"] body .btn[id*="Prev"]:not(.primary),
html[data-theme="dark"] body .btn[id*="Next"]:not(.primary){
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}

html[data-theme="dark"] body .pager .btn:not(.primary) *,
html[data-theme="dark"] body .pagerbar .btn:not(.primary) *,
html[data-theme="dark"] body .pagination .btn:not(.primary) *,
html[data-theme="dark"] body .traffic-pagination .btn:not(.primary) *,
html[data-theme="dark"] body .wallet-pagination .btn:not(.primary) *,
html[data-theme="dark"] body button.btn[id*="Prev"] *,
html[data-theme="dark"] body button.btn[id*="Next"] *,
html[data-theme="dark"] body .btn[id*="Prev"]:not(.primary) *,
html[data-theme="dark"] body .btn[id*="Next"]:not(.primary) *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}


/* Strongest dark pagination override for generic non-primary/non-accent tool buttons. */
html[data-theme="dark"] body .pager .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body .pagerbar .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body .pagination .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body .traffic-pagination .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body .wallet-pagination .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body button.btn[id*="Prev"]:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body button.btn[id*="Next"]:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body .btn[id*="Prev"]:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body .btn[id*="Next"]:not(.primary):not(.accent):not(.danger){
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}


/* Dark-mode pagination text must stay white in every module. */
html[data-theme="dark"] .pager,
html[data-theme="dark"] .pager *,
html[data-theme="dark"] .pagerbar,
html[data-theme="dark"] .pagerbar *,
html[data-theme="dark"] .pagination,
html[data-theme="dark"] .pagination *,
html[data-theme="dark"] .traffic-pagination,
html[data-theme="dark"] .traffic-pagination *,
html[data-theme="dark"] .wallet-pagination,
html[data-theme="dark"] .wallet-pagination *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] .pager .btn,
html[data-theme="dark"] .pagerbar .btn,
html[data-theme="dark"] .pagination .btn,
html[data-theme="dark"] .traffic-pagination .btn,
html[data-theme="dark"] .wallet-pagination .btn,
html[data-theme="dark"] .pager button,
html[data-theme="dark"] .pagerbar button,
html[data-theme="dark"] .pagination button,
html[data-theme="dark"] .traffic-pagination button,
html[data-theme="dark"] .wallet-pagination button{
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}


/* Casos: dark-mode buttons must render white text, including WebKit text fill. */
html[data-theme="dark"] #view-casos .btn,
html[data-theme="dark"] #view-casos button.btn,
html[data-theme="dark"] #view-casos a.btn{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] #view-casos .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] #view-casos button.btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] #view-casos a.btn:not(.primary):not(.accent):not(.danger){
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}


/* Dashboard modules: dark-mode controls must render white text across every view. */
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .btn,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout button,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout a.btn,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .view-subnav .btn,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .sales-subnav .btn,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .pagerbar .btn,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .traffic-pagination .btn{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout button.btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout a.btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .view-subnav .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .sales-subnav .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .pagerbar .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .traffic-pagination .btn:not(.primary):not(.accent):not(.danger){
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .pagerinfo,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout [id*="PageInfo"],
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .traffic-pagination,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .traffic-pagination span,
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout .traffic-pagination .muted{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}


/* Final dashboard module override: every listed module control stays white in dark mode. */
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) .btn,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) button,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) a.btn,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) .pagerinfo,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) [id*="PageInfo"],
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) .traffic-pagination span{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) .btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) button.btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-diplomado,#view-herramientas,#view-admin-tools,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios) a.btn:not(.primary):not(.accent):not(.danger){
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}


/* Dashboard final dark contrast for all real views and sidebar menu links. */
html[data-theme="dark"] body:has(.dashboard-layout) #menu a,
html[data-theme="dark"] body:has(.dashboard-layout) #menu a:visited,
html[data-theme="dark"] body:has(.dashboard-layout) #menu a:hover,
html[data-theme="dark"] body:has(.dashboard-layout) #menu a.active,
html[data-theme="dark"] body:has(.dashboard-layout) .sidebar .menu a,
html[data-theme="dark"] body:has(.dashboard-layout) .sidebar .menu a:visited,
html[data-theme="dark"] body:has(.dashboard-layout) .sidebar .menu a:hover,
html[data-theme="dark"] body:has(.dashboard-layout) .sidebar .menu a.active{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) #btnLogout,
html[data-theme="dark"] body:has(.dashboard-layout) #btnLogout *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-herramientas,#view-tool-installer,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios,#view-perfiles) .btn,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-herramientas,#view-tool-installer,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios,#view-perfiles) button,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-herramientas,#view-tool-installer,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios,#view-perfiles) a.btn,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-herramientas,#view-tool-installer,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios,#view-perfiles) .pagerinfo,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-herramientas,#view-tool-installer,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios,#view-perfiles) [id*="PageInfo"]{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}


/* Logout button follows dark dashboard controls too. */
html[data-theme="dark"] body:has(.dashboard-layout) #btnLogout.btn,
html[data-theme="dark"] body:has(.dashboard-layout) button#btnLogout.btn,
html[data-theme="dark"] body:has(.dashboard-layout) #btnLogout.btn.danger.jg-dark-contrast-fix{
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}


/* Universal dark-mode button contrast: every module button text must be white. */
html[data-theme="dark"] button,
html[data-theme="dark"] .btn,
html[data-theme="dark"] a.btn,
html[data-theme="dark"] input[type="button"],
html[data-theme="dark"] input[type="submit"],
html[data-theme="dark"] input[type="reset"]{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] button:not(.primary):not(.accent):not(.danger):not(.btn-primary):not(.btn-danger),
html[data-theme="dark"] .btn:not(.primary):not(.accent):not(.danger):not(.btn-primary):not(.btn-danger),
html[data-theme="dark"] a.btn:not(.primary):not(.accent):not(.danger):not(.btn-primary):not(.btn-danger),
html[data-theme="dark"] input[type="button"]:not(.primary):not(.accent):not(.danger):not(.btn-primary):not(.btn-danger),
html[data-theme="dark"] input[type="submit"]:not(.primary):not(.accent):not(.danger):not(.btn-primary):not(.btn-danger),
html[data-theme="dark"] input[type="reset"]:not(.primary):not(.accent):not(.danger):not(.btn-primary):not(.btn-danger){
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}

html[data-theme="dark"] button *,
html[data-theme="dark"] .btn *,
html[data-theme="dark"] a.btn *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}


/* Final contrast policy: dark background = white text, white background = dark text, orange = dark text. */
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-inicio,#view-herramientas,#view-tool-installer,#view-licencias,#view-trafico,#view-comercial,#view-ventas,#view-casos,#view-instituciones,#view-usuarios,#view-perfiles) :not(input):not(textarea):not(select):not(option){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) :is(.jg-keep-light,.license-user-row,.lic-users-filter-card,.license-detail-panel,.license-detail-item,#noteRole),
html[data-theme="dark"] body:has(.dashboard-layout) :is(.jg-keep-light,.license-user-row,.lic-users-filter-card,.license-detail-panel,.license-detail-item,#noteRole) *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] :is(.btn.accent,.btn.orange,.btn-panel-orange,button.accent,a.btn.accent,a.btn.orange),
html[data-theme="dark"] :is(.btn.accent,.btn.orange,.btn-panel-orange,button.accent,a.btn.accent,a.btn.orange) *,
html[data-theme="dark"] body:has(.dashboard-layout) :is(.view-subnav .btn.is-active,.sales-subnav .btn.is-active){
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Final orange surfaces: orange background must use dark text. */
html[data-theme="dark"] :is(.btn.orange,a.btn.orange,.btn.accent,a.btn.accent,.nav-cta,.btn-panel-orange){
  background:#ff755f !important;
  background-image:linear-gradient(135deg,#ff755f,#ff9a6f) !important;
  border-color:#ff755f !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}
html[data-theme="dark"] :is(.btn.orange,a.btn.orange,.btn.accent,a.btn.accent,.nav-cta,.btn-panel-orange) *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Casos module strict dark contrast: dark surfaces use white text. */
html[data-theme="dark"] #view-casos,
html[data-theme="dark"] #view-casos :not(input):not(textarea):not(select):not(option){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] #view-casos :is(.card,.inline-card,.case-actions-panel,.pagerbar,.table,table,thead,tbody,tr,th,td),
html[data-theme="dark"] #view-casos :is(.card,.inline-card,.case-actions-panel,.pagerbar,.table,table,thead,tbody,tr,th,td) :not(input):not(textarea):not(select):not(option){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="dark"] #view-casos input,
html[data-theme="dark"] #view-casos textarea,
html[data-theme="dark"] #view-casos select,
html[data-theme="dark"] #view-casos .input{
  background:#ffffff !important;
  background-image:none !important;
  border-color:#dbe3ee !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Casos explicit controls: audit, search, reload and pagination stay white on dark. */
html[data-theme="dark"] #view-casos #btnAuditReload,
html[data-theme="dark"] #view-casos #btnCasesSearch,
html[data-theme="dark"] #view-casos #btnCasesReload,
html[data-theme="dark"] #view-casos #btnCasesPrev,
html[data-theme="dark"] #view-casos #btnCasesNext,
html[data-theme="dark"] #view-casos #casesPageInfo{
  background:#141b2b !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:none !important;
}

html[data-theme="dark"] #view-casos #casesPageInfo{
  background:transparent !important;
  border-color:transparent !important;
}


/* Login dark mode credential fields stay white on dark inputs. */
html[data-theme="dark"] .login-card #email,
html[data-theme="dark"] .login-card #pass,
html[data-theme="dark"] .login-card #resetEmail,
html[data-theme="dark"] .login-card input[type="email"],
html[data-theme="dark"] .login-card input[type="password"],
html[data-theme="dark"] .login-card input[type="text"]{
  background:#111827 !important;
  background-image:none !important;
  border-color:#5b657a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  caret-color:#ffffff !important;
}

html[data-theme="dark"] .login-card input::placeholder{
  color:#b7c0d4 !important;
  -webkit-text-fill-color:#b7c0d4 !important;
  opacity:1 !important;
}


/* Perfil: el boton Cerrar usa letra negra, incluso en modo oscuro. */
#view-perfiles #btnProfileClose,
#view-perfiles #btnProfileClose *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] #view-perfiles #btnProfileClose{
  background:#fef2f2 !important;
  background-image:none !important;
  border-color:#fecaca !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

html[data-theme="dark"] #view-perfiles #btnProfileClose *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Licencias: lista de usuarios en tarjetas claras usa texto negro y estado activo verde. */
#view-licencias .license-user-row .license-pill.ok{
  background:#22c55e !important;
  background-image:none !important;
  border-color:#16a34a !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

#view-licencias .license-user-row .chip,
#view-licencias #btnLicUsersPrev,
#view-licencias #btnLicUsersNext{
  background:#f8fafc !important;
  background-image:none !important;
  border-color:#dbe3ee !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

#view-licencias .license-user-row .chip *,
#view-licencias #btnLicUsersPrev *,
#view-licencias #btnLicUsersNext *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] #view-licencias .license-user-row .license-pill.ok{
  background:#22c55e !important;
  background-image:none !important;
  border-color:#16a34a !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] #view-licencias .license-user-row .chip,
html[data-theme="dark"] #view-licencias #btnLicUsersPrev,
html[data-theme="dark"] #view-licencias #btnLicUsersNext{
  background:#f8fafc !important;
  background-image:none !important;
  border-color:#dbe3ee !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

html[data-theme="dark"] #view-licencias .license-user-row .chip *,
html[data-theme="dark"] #view-licencias #btnLicUsersPrev *,
html[data-theme="dark"] #view-licencias #btnLicUsersNext *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Licencias: pildoras blancas y botones de accion en paneles claros usan letra negra. */
#view-licencias :is(.license-user-row,.license-detail-panel,.license-detail-item) :is(.license-pill,.chip,.pill),
#view-licencias :is(.license-detail-panel,.license-detail-item) .btn{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

#view-licencias :is(.license-user-row,.license-detail-panel,.license-detail-item) :is(.license-pill:not(.ok):not(.warn),.chip,.pill),
#view-licencias :is(.license-detail-panel,.license-detail-item) .btn:not(.primary):not(.accent):not(.danger){
  background:#ffffff !important;
  background-image:none !important;
  border-color:#dbe3ee !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

#view-licencias :is(.license-user-row,.license-detail-panel,.license-detail-item) :is(.license-pill,.chip,.pill) *,
#view-licencias :is(.license-detail-panel,.license-detail-item) .btn *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] #view-licencias :is(.license-user-row,.license-detail-panel,.license-detail-item) :is(.license-pill,.chip,.pill),
html[data-theme="dark"] #view-licencias :is(.license-detail-panel,.license-detail-item) .btn{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] #view-licencias :is(.license-user-row,.license-detail-panel,.license-detail-item) :is(.license-pill:not(.ok):not(.warn),.chip,.pill),
html[data-theme="dark"] #view-licencias :is(.license-detail-panel,.license-detail-item) .btn:not(.primary):not(.accent):not(.danger){
  background:#ffffff !important;
  background-image:none !important;
  border-color:#dbe3ee !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] #view-licencias :is(.license-user-row,.license-detail-panel,.license-detail-item) :is(.license-pill,.chip,.pill) *,
html[data-theme="dark"] #view-licencias :is(.license-detail-panel,.license-detail-item) .btn *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Licencias: prioridad final para botones de accion dentro de paneles claros. */
html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(.license-detail-panel,.license-detail-item) button.btn,
html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(.license-detail-panel,.license-detail-item) a.btn{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(.license-detail-panel,.license-detail-item) button.btn:not(.primary):not(.accent):not(.danger),
html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(.license-detail-panel,.license-detail-item) a.btn:not(.primary):not(.accent):not(.danger){
  background:#ffffff !important;
  background-image:none !important;
  border-color:#dbe3ee !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(.license-detail-panel,.license-detail-item) button.btn.danger,
html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(.license-detail-panel,.license-detail-item) a.btn.danger{
  background:#fef2f2 !important;
  background-image:none !important;
  border-color:#fecaca !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(.license-detail-panel,.license-detail-item) button.btn *,
html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(.license-detail-panel,.license-detail-item) a.btn *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Usuarios y Comercial: pildoras blancas con letra negra. */
:is(#view-usuarios,#view-comercial) :is(.chip,.pill,.badge:not(.on):not(.off)){
  background:#ffffff !important;
  background-image:none !important;
  border-color:#dbe3ee !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

:is(#view-usuarios,#view-comercial) :is(.chip,.pill,.badge:not(.on):not(.off)) *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-usuarios,#view-comercial) :is(.chip,.pill,.badge:not(.on):not(.off)){
  background:#ffffff !important;
  background-image:none !important;
  border-color:#dbe3ee !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-usuarios,#view-comercial) :is(.chip,.pill,.badge:not(.on):not(.off)) *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Comercial/Licencias precios: boton Desactivar con letra negra. */
:is(#view-licencias,#view-comercial) #commercePriceTable button.btn.danger[data-plan-delete],
:is(#view-licencias,#view-comercial) #commercePriceTbody button.btn.danger[data-plan-delete]{
  background:#fef2f2 !important;
  background-image:none !important;
  border-color:#fecaca !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

:is(#view-licencias,#view-comercial) #commercePriceTable button.btn.danger[data-plan-delete] *,
:is(#view-licencias,#view-comercial) #commercePriceTbody button.btn.danger[data-plan-delete] *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-licencias,#view-comercial) #commercePriceTable button.btn.danger[data-plan-delete],
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-licencias,#view-comercial) #commercePriceTbody button.btn.danger[data-plan-delete]{
  background:#fef2f2 !important;
  background-image:none !important;
  border-color:#fecaca !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-licencias,#view-comercial) #commercePriceTable button.btn.danger[data-plan-delete] *,
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-licencias,#view-comercial) #commercePriceTbody button.btn.danger[data-plan-delete] *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Licencias: botones Eliminar y Desactivar en tablas administrativas con letra negra. */
#view-licencias :is(button.btn.danger[data-del-license],button.btn.danger[data-revoke-user]){
  background:#fef2f2 !important;
  background-image:none !important;
  border-color:#fecaca !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

#view-licencias :is(button.btn.danger[data-del-license],button.btn.danger[data-revoke-user]) *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(button.btn.danger[data-del-license],button.btn.danger[data-revoke-user]){
  background:#fef2f2 !important;
  background-image:none !important;
  border-color:#fecaca !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  box-shadow:none !important;
}

html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias :is(button.btn.danger[data-del-license],button.btn.danger[data-revoke-user]) *{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


/* Licencias: el CTA "Asignar al usuario" es primario oscuro y debe conservar texto blanco. */
#view-licencias #btnLicUserAssign,
#view-licencias #btnLicUserAssign *,
html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias #btnLicUserAssign,
html[data-theme="dark"] body:has(.dashboard-layout) #view-licencias #btnLicUserAssign *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Mobile usability layer - CID app/admin surfaces */
html, body{max-width:100%;overflow-x:hidden;}
img, video, canvas, svg{max-width:100%;height:auto;}
input, select, textarea, button{max-width:100%;}
.table{display:table;max-width:100%;}
.scroll, .table-scroll, .hq-table-wrap, .cases-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.card, .panel, .box, section, main, .wrap, .wrapper{min-width:0;}

@media (max-width: 760px){
  body{font-size:15px;}
  .wrap, .wrapper{width:100% !important;max-width:100% !important;padding:14px 10px 28px !important;}
  .page > header .header-inner{padding:10px 12px !important;justify-content:space-between !important;gap:10px !important;}
  .page > header .logo-text{max-width:58vw !important;font-size:10px !important;letter-spacing:.08em !important;}
  .dashboard-layout{display:block !important;width:100% !important;max-width:100% !important;}
  .dashboard-layout > .sidebar{position:relative !important;width:100% !important;max-width:100% !important;margin:0 0 12px !important;padding:10px !important;border-radius:16px !important;}
  .dashboard-layout > .main{width:100% !important;max-width:100% !important;padding:14px 10px !important;border-radius:16px !important;overflow:hidden !important;}
  .dashboard-cid-logo img{max-width:150px !important;}
  .sidebar .menu{display:flex !important;gap:8px !important;overflow-x:auto !important;overscroll-behavior-x:contain !important;padding:2px 0 8px !important;scroll-snap-type:x proximity !important;}
  .sidebar .menu a{flex:0 0 auto !important;min-height:38px !important;padding:9px 10px !important;font-size:13px !important;white-space:nowrap !important;scroll-snap-align:start !important;}
  .sidebar .note, .casebar{font-size:12px !important;padding:10px !important;}
  .casebar .row2{display:grid !important;grid-template-columns:1fr auto auto !important;gap:6px !important;}
  .casebar .input{min-width:0 !important;}
  .topline{display:block !important;padding:14px !important;border-radius:16px !important;}
  .h1{font-size:22px !important;line-height:1.18 !important;overflow-wrap:anywhere !important;}
  .muted{font-size:13px !important;line-height:1.45 !important;}
  .card{border-radius:16px !important;padding:12px !important;max-width:100% !important;overflow:hidden !important;}
  .row2, .actions, .searchline{display:grid !important;grid-template-columns:1fr !important;align-items:stretch !important;width:100% !important;gap:8px !important;}
  .row2 > *, .actions > *, .searchline > *{width:100% !important;min-width:0 !important;}
  .btn, button, a.btn{min-height:44px !important;white-space:normal !important;text-align:center !important;line-height:1.2 !important;}
  .btn.small{min-height:38px !important;font-size:12px !important;}
  .input, input:not([type="checkbox"]):not([type="radio"]), select, textarea{width:100% !important;min-width:0 !important;font-size:16px !important;}
  textarea{min-height:92px !important;}
  .inline-grid, .profile-grid, .profile-edit-grid, .summary-grid, .inst-structure-forms, .inst-assign-grid, .buy-grid, .license-group-filter{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;}
  .inline-grid .full, .profile-edit-grid .full, .inst-assign-grid .wide{grid-column:auto !important;}
  .kpi, .kpi4, .users-summary-grid, .lic-users-filter-grid{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;}
  .kpi .box, .kpi4 .box{padding:12px 12px 12px 16px !important;min-width:0 !important;}
  .kpi .box .v, .kpi4 .box .v{font-size:18px !important;line-height:1.2 !important;overflow-wrap:anywhere !important;}
  .view-subnav, .sales-subnav{display:flex !important;overflow-x:auto !important;flex-wrap:nowrap !important;padding-bottom:6px !important;}
  .view-subnav .btn, .sales-subnav .btn{flex:0 0 auto !important;width:auto !important;min-width:max-content !important;}
  .table{display:block !important;width:100% !important;max-width:100% !important;overflow-x:auto !important;white-space:nowrap !important;border-radius:12px !important;-webkit-overflow-scrolling:touch !important;}
  .table thead, .table tbody, .table tr{width:max-content !important;min-width:100% !important;}
  .table th, .table td{white-space:normal !important;min-width:118px !important;max-width:260px !important;overflow-wrap:anywhere !important;font-size:12px !important;padding:8px !important;}
  .table td:last-child, .table th:last-child{min-width:170px !important;}
  .pagerbar{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;align-items:stretch !important;}
  .pagerbar .row2{display:grid !important;grid-template-columns:1fr 1fr !important;}
  .tool-group-grid, #toolsWrap.tools, .tools{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;}
  #toolsWrap .tool, .tool{min-height:0 !important;padding:12px !important;border-radius:16px !important;}
  #toolsWrap .tool .row, .tool .row{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;min-height:0 !important;}
  .tool-price-strip, .pricing-plans{grid-template-columns:1fr !important;}
  .license-user-row, .home-license-row, .inst-unit-row, .inst-group-head{grid-template-columns:1fr !important;}
  .license-detail-list{grid-template-columns:1fr !important;}
  .buy-modal-card{width:calc(100vw - 14px) !important;max-height:94vh !important;margin:1vh auto 0 !important;border-radius:14px !important;}
  .buy-modal-head, .buy-modal-body, .buy-modal-foot{padding:12px !important;}
  pre{max-width:100% !important;overflow:auto !important;font-size:11px !important;}
}

@media (max-width: 420px){
  .wrap, .wrapper{padding-left:8px !important;padding-right:8px !important;}
  .dashboard-layout > .main{padding-left:8px !important;padding-right:8px !important;}
  .h1{font-size:20px !important;}
  .casebar .row2{grid-template-columns:1fr !important;}
  .pagerbar .row2{grid-template-columns:1fr !important;}
  .table th, .table td{min-width:106px !important;max-width:220px !important;}
}

/* Mobile overflow fixes after app global layer */
@media (max-width:760px){
  .theme-toggle{
    width:auto !important;
    min-width:0 !important;
    max-width:150px !important;
    right:auto !important;
  }
  .password-toggle{width:auto !important;min-width:64px !important;max-width:92px !important;}
  .input-with-button,
  .password-row,
  .field-with-button{max-width:100% !important;overflow:hidden !important;}
}



/* Institution admin: contraste coherente en modo oscuro. */
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-instituciones,#view-usuarios,#view-perfiles,#view-licencias) :is(.card,.inline-card,.profile-panel,.license-detail-panel,.inst-group-accordion,.inst-group-body,.inst-group-edit,.inst-unit-row){
  background:#111827!important;background-image:none!important;border-color:#374151!important;color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;
}
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-instituciones,#view-usuarios,#view-perfiles,#view-licencias) :is(.card,.inline-card,.profile-panel,.license-detail-panel,.inst-group-accordion,.inst-group-body,.inst-group-edit,.inst-unit-row) :is(.muted,.t,.d,label,th,td,span,div){
  color:#e5e7eb!important;-webkit-text-fill-color:#e5e7eb!important;
}
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-instituciones,#view-usuarios,#view-perfiles,#view-licencias) :is(input,textarea,select){
  background:#0b1220!important;border-color:#4b5563!important;color:#f9fafb!important;-webkit-text-fill-color:#f9fafb!important;
}
html[data-theme="dark"] body:has(.dashboard-layout) :is(#view-instituciones,#view-usuarios,#view-perfiles,#view-licencias) :is(input,textarea)::placeholder{color:#9ca3af!important;-webkit-text-fill-color:#9ca3af!important;}


/* Modo oscuro: acciones claras siempre con texto negro. */
html[data-theme="dark"] body :is(.chip,.pill,.badge,.tool-tag,.btn:not(.primary):not(.accent):not(.danger),button.small:not(.primary):not(.accent):not(.danger),a.btn:not(.primary):not(.accent):not(.danger)){background:#fff!important;background-image:none!important;border-color:#d1d5db!important;color:#111827!important;-webkit-text-fill-color:#111827!important;text-shadow:none!important;}
html[data-theme="dark"] body :is(.chip,.pill,.badge,.tool-tag,.btn:not(.primary):not(.accent):not(.danger),button.small:not(.primary):not(.accent):not(.danger),a.btn:not(.primary):not(.accent):not(.danger)) *{color:#111827!important;-webkit-text-fill-color:#111827!important;fill:currentColor!important;stroke:currentColor!important;}

html[data-theme="dark"] body button.btn.danger[data-wallet-remove-license]{background:#fff!important;background-image:none!important;border-color:#d1d5db!important;color:#111827!important;-webkit-text-fill-color:#111827!important;}
html[data-theme="dark"] body button.btn.danger[data-wallet-remove-license] *{color:#111827!important;-webkit-text-fill-color:#111827!important;}

.profile-inline-editable{outline:none!important;border:2px solid #ef4444!important;border-radius:8px!important;padding:6px 8px!important;min-height:32px;background:rgba(239,68,68,.08)!important;cursor:text!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important;}
html:not([data-theme="dark"]) .profile-inline-editable{background:#fff7f7!important;}
.profile-inline-editable:hover{border-color:#dc2626!important;background:rgba(239,68,68,.12)!important;}
.profile-inline-editable:focus{border-color:#b91c1c!important;box-shadow:0 0 0 4px rgba(239,68,68,.22)!important;background:rgba(239,68,68,.14)!important;}
.profile-inline-editable:empty::before{content:"Escribe aquí";color:#9ca3af;-webkit-text-fill-color:#9ca3af;font-style:italic;}


/* El perfil se edita sobre la ficha visible; se elimina el formulario acordeón legado. */
#profileEditCard{display:none!important;}


/* Regla final: todo botón blanco del dashboard oscuro usa texto e iconos negros. */
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout :is(button,.btn,a.btn):not(.primary):not(.accent),html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout :is(.chip,.pill,.badge,.tool-tag){background:#fff!important;background-image:none!important;border-color:#d1d5db!important;color:#111827!important;-webkit-text-fill-color:#111827!important;text-shadow:none!important;}
html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout :is(button,.btn,a.btn):not(.primary):not(.accent) *,html[data-theme="dark"] body:has(.dashboard-layout) .dashboard-layout :is(.chip,.pill,.badge,.tool-tag) *{color:#111827!important;-webkit-text-fill-color:#111827!important;fill:currentColor!important;stroke:currentColor!important;}


/* Contraste global automático: toda superficie clara mantiene texto negro en modo oscuro. */
html[data-theme="dark"] body .dashboard-layout .jg-light-surface-dark-text{color:#111827!important;-webkit-text-fill-color:#111827!important;}
html[data-theme="dark"] body .dashboard-layout .jg-light-surface-dark-text :not(.primary):not(.primary *):not(.accent):not(.accent *){color:#111827!important;-webkit-text-fill-color:#111827!important;}
html[data-theme="dark"] body .dashboard-layout :is(button,.btn,.chip,.pill,.badge,.tool-tag).jg-light-surface-dark-text,html[data-theme="dark"] body .dashboard-layout :is(button,.btn,.chip,.pill,.badge,.tool-tag).jg-light-surface-dark-text *{color:#111827!important;-webkit-text-fill-color:#111827!important;fill:currentColor!important;stroke:currentColor!important;text-shadow:none!important;}
