/* ==========================================================================
   FlowTime UI - ponte com o legado
   Aplica os tokens do design system as classes ja usadas nas paginas
   (Bootstrap 3.3, INSPINIA 2.4, jQuery UI, DataTables, SweetAlert2 7,
   toastr, blockUI, hint.css, select2, chosen, pickers).
   So estilo: nenhum seletor aqui muda comportamento.
   Carregar DEPOIS das folhas do tema e ANTES dos <style> de cada pagina.
   ========================================================================== */

/* 1. Base e tipografia ---------------------------------------------------- */
html { -webkit-text-size-adjust: 100%; }
body {
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 20px;
  color: var(--text);
  background-color: var(--bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: var(--font-sans); font-weight: 600; color: var(--text); letter-spacing: 0; }
h1, .h1 { font-size: 24px; line-height: 32px; letter-spacing: -0.01em; }
h2, .h2 { font-size: 20px; line-height: 28px; }
h3, .h3 { font-size: 16px; line-height: 24px; }
h4, .h4 { font-size: 15px; line-height: 22px; }
h5, .h5 { font-size: 14px; line-height: 20px; }
h6, .h6 { font-size: 12px; line-height: 16px; }
b, strong { font-weight: 600; }
small, .small { font-size: 12px; }
a { color: var(--primary-text); }
a:hover, a:focus { color: var(--primary-hover); }
hr { border-top-color: var(--border); }
.text-muted { color: var(--text-muted); }
.text-primary { color: var(--primary-text); }
.text-success { color: var(--success); }
.text-warning { color: var(--warning); }
.text-danger { color: var(--danger); }
.text-info { color: var(--info); }
code, kbd, pre, samp { font-family: var(--font-mono); }
input[type="checkbox"], input[type="radio"] { accent-color: var(--primary); }
.tit_secao { font-size: 16px; line-height: 24px; font-weight: 600; color: var(--text); }

/* 2. Superficies do tema (INSPINIA) -------------------------------------- */
.gray-bg, .bg-muted { background-color: var(--bg); }
.white-bg { background-color: var(--surface); }
.border-bottom { border-bottom-color: var(--border) !important; }
.border-top { border-top-color: var(--border) !important; }
.border-left { border-left-color: var(--border) !important; }
.border-right { border-right-color: var(--border) !important; }
.panel-right { border-left-color: var(--border); }
.footer {
  background: var(--surface);
  border-top: 1px solid var(--border);
  color: var(--text-muted);
  font-size: 12px;
  line-height: 16px;
}
.footer img { opacity: .8; }

/* 3. Botoes ---------------------------------------------------------------- */
.btn {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  padding: 7px 14px;
  border-radius: var(--radius-md);
  border-width: 1px;
  box-shadow: none;
  text-shadow: none;
  transition: background-color .12s ease-out, border-color .12s ease-out, color .12s ease-out;
}
/* Anel de foco so na navegacao por teclado; no clique, nenhum contorno */
.btn:focus, .btn.focus, .btn:active:focus, .btn.active:focus { outline: 0; }
.btn:focus-visible, .btn.focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.btn:active, .btn.active { box-shadow: none; }
.btn:not(:disabled):not(.disabled):active { transform: translateY(1px); }
.btn .fa, .btn .fas, .btn .far, .btn .fab, .btn .fam, .btn .glyphicon { margin-right: 2px; }
.btn-lg, .btn-group-lg > .btn { font-size: 15px; line-height: 20px; padding: 11px 20px; border-radius: var(--radius-md); }
.btn-sm, .btn-group-sm > .btn { font-size: 13px; line-height: 18px; padding: 6px 12px; border-radius: var(--radius-md); }
.btn-xs, .btn-group-xs > .btn { font-size: 12px; line-height: 16px; padding: 3px 8px; border-radius: var(--radius-sm); }

/* secundario */
.btn-default, .btn-white {
  color: var(--text); background-color: var(--surface); border-color: var(--border-strong); box-shadow: var(--shadow-xs);
}
.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default,
.btn-white:hover, .btn-white:focus, .btn-white:active, .btn-white.active, .open > .dropdown-toggle.btn-white {
  color: var(--text); background-color: var(--surface-hover); border-color: var(--border-strong);
}

/* primario */
.btn-primary { color: var(--on-primary); background-color: var(--primary); border-color: var(--primary); }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary,
.btn-primary:active:focus, .btn-primary:active:hover, .btn-primary.active:hover, .btn-primary.active:focus {
  color: var(--on-primary); background-color: var(--primary-hover); border-color: var(--primary-hover);
}

/* sucesso (no INSPINIA era azul) */
.btn-success { color: var(--on-success); background-color: var(--success); border-color: var(--success); }
.btn-success:hover, .btn-success:focus, .btn-success:active, .btn-success.active, .open > .dropdown-toggle.btn-success,
.btn-success:active:focus, .btn-success:active:hover, .btn-success.active:hover, .btn-success.active:focus {
  color: var(--on-success); background-color: var(--success); border-color: var(--success); filter: brightness(.9);
}

/* destrutivo */
.btn-danger { color: var(--on-danger); background-color: var(--danger); border-color: var(--danger); }
.btn-danger:hover, .btn-danger:focus, .btn-danger:active, .btn-danger.active, .open > .dropdown-toggle.btn-danger,
.btn-danger:active:focus, .btn-danger:active:hover, .btn-danger.active:hover, .btn-danger.active:focus {
  color: var(--on-danger); background-color: var(--danger-hover); border-color: var(--danger-hover);
}

/* atencao e informativo: versoes suaves, para nao competir com o primario */
.btn-warning { color: var(--warning); background-color: var(--warning-soft); border-color: var(--warning-soft); }
.btn-warning:hover, .btn-warning:focus, .btn-warning:active, .btn-warning.active, .open > .dropdown-toggle.btn-warning,
.btn-warning:active:focus, .btn-warning:active:hover, .btn-warning.active:hover, .btn-warning.active:focus {
  color: var(--warning); background-color: var(--warning-soft); border-color: var(--warning-fill);
}
.btn-info { color: var(--info); background-color: var(--info-soft); border-color: var(--info-soft); }
.btn-info:hover, .btn-info:focus, .btn-info:active, .btn-info.active, .open > .dropdown-toggle.btn-info,
.btn-info:active:focus, .btn-info:active:hover, .btn-info.active:hover, .btn-info.active:focus {
  color: var(--info); background-color: var(--info-soft); border-color: var(--primary);
}

.btn-link { color: var(--primary-text); font-weight: 500; }
.btn-link:hover, .btn-link:focus { color: var(--primary-hover); }

/* outline (INSPINIA) */
.btn-outline { background-color: transparent; }
.btn-primary.btn-outline { color: var(--primary-text); }
.btn-success.btn-outline { color: var(--success); }
.btn-danger.btn-outline { color: var(--danger); }
.btn-warning.btn-outline { color: var(--warning); }
.btn-info.btn-outline { color: var(--info); }
.btn-primary.btn-outline:hover { color: var(--on-primary); }
.btn-success.btn-outline:hover { color: var(--on-success); }
.btn-danger.btn-outline:hover { color: var(--on-danger); }

/* desabilitado */
.btn.disabled, .btn[disabled], fieldset[disabled] .btn { opacity: .5; box-shadow: none; }

/* 4. Formularios ----------------------------------------------------------- */
label { font-weight: 500; color: var(--text); }
.control-label { font-weight: 500; }
.form-control {
  height: var(--control-md);
  padding: 7px 12px;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 20px;
  color: var(--text);
  background-color: var(--surface);
  border: 1px solid var(--border-input);
  border-radius: var(--radius-md);
  box-shadow: none;
  transition: border-color .12s ease-out, box-shadow .12s ease-out;
}
.form-control::placeholder { color: var(--text-muted); opacity: 1; }
.form-control:hover { border-color: var(--text-muted); }
.form-control:focus {
  border-color: var(--focus) !important;
  box-shadow: 0 0 0 1px var(--focus);
  outline: 0;
}
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
  background-color: var(--surface-sunken);
  color: var(--text-secondary);
  border-color: var(--border-strong);
}
textarea.form-control { height: auto; }
select.form-control { padding-top: 0; padding-bottom: 0; }
select[multiple].form-control, select[size].form-control { height: auto; padding: 4px 8px; }
.input-sm, .form-group-sm .form-control, .input-group-sm > .form-control {
  height: var(--control-sm); padding: 5px 10px; font-size: 13px; line-height: 20px; border-radius: var(--radius-md);
}
select.input-sm { height: var(--control-sm); line-height: normal; padding-top: 0; padding-bottom: 0; }
.input-lg, .input-group-lg > .form-control {
  height: var(--control-lg); padding: 10px 14px; font-size: 16px; line-height: 22px; border-radius: var(--radius-md);
}
.input-group-addon {
  color: var(--text-secondary);
  background-color: var(--surface-sunken);
  border-color: var(--border-input);
  border-radius: var(--radius-md);
  font-size: 14px;
}
.help-block { color: var(--text-muted); font-size: 12px; line-height: 16px; }
.has-error .form-control, .form-control.error { border-color: var(--danger) !important; }
.has-error .form-control:focus { box-shadow: 0 0 0 1px var(--danger); }
.has-error .help-block, .has-error .control-label, .has-error .checkbox, .has-error .radio { color: var(--danger); }
.has-warning .form-control { border-color: var(--warning-fill); }
.has-success .form-control { border-color: var(--success); }

/* Evita zoom automatico do iOS ao focar campos com fonte < 16px */
@media (pointer: coarse) {
  .form-control, .input-sm, .input-lg { font-size: 16px; }
}

/* 5. Tabelas --------------------------------------------------------------- */
.table { color: var(--text); }
.table:not(.borderless):not(.no-borders) > thead > tr > th,
.table:not(.borderless):not(.no-borders) > thead > tr > td {
  background-color: var(--surface-sunken);
  color: var(--text-secondary);
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  border-top: 0;
  border-bottom: 1px solid var(--border);
  padding: 10px 12px;
  vertical-align: middle;
}
.table:not(.borderless):not(.no-borders) > tbody > tr > td,
.table:not(.borderless):not(.no-borders) > tbody > tr > th,
.table:not(.borderless):not(.no-borders) > tfoot > tr > td,
.table:not(.borderless):not(.no-borders) > tfoot > tr > th {
  border-top: 1px solid var(--border);
  padding: 8px 12px;
  vertical-align: middle;
}
.table:not(.borderless):not(.no-borders) > tfoot > tr > td,
.table:not(.borderless):not(.no-borders) > tfoot > tr > th { background-color: var(--surface-sunken); font-weight: 600; }
.table-condensed:not(.borderless) > thead > tr > th,
.table-condensed:not(.borderless) > tbody > tr > td { padding: 6px 8px; }
.table-bordered, .table-bordered > thead > tr > th, .table-bordered > tbody > tr > td,
.table-bordered > thead > tr > td, .table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > td, .table-bordered > tfoot > tr > th { border-color: var(--border); }
.table-striped > tbody > tr:nth-of-type(odd) { background-color: var(--bg); }
.table-hover > tbody > tr:hover { background-color: var(--surface-hover); }
.table > tbody > tr.active > td, .table > tbody > tr.active > th, .table > tbody > tr > td.active { background-color: var(--primary-soft); }
.table > tbody > tr.success > td, .table > tbody > tr > td.success { background-color: var(--success-soft); }
.table > tbody > tr.warning > td, .table > tbody > tr > td.warning { background-color: var(--warning-soft); }
.table > tbody > tr.danger > td, .table > tbody > tr > td.danger { background-color: var(--danger-soft); }
.table > tbody > tr.info > td, .table > tbody > tr > td.info { background-color: var(--info-soft); }
.table-responsive { border-color: var(--border); -webkit-overflow-scrolling: touch; }
/* Bootstrap pinta tabela aninhada de #fff (.table .table): segue a superficie */
.table .table { background-color: var(--surface); }

/* DataTables */
.dataTables_wrapper { font-size: 13px; color: var(--text-secondary); }
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select {
  height: var(--control-sm);
  padding: 4px 10px;
  font-size: 13px;
  color: var(--text);
  background-color: var(--surface);
  border: 1px solid var(--border-input);
  border-radius: var(--radius-md);
  box-shadow: none;
}
.dataTables_wrapper .dataTables_filter input:focus { border-color: var(--focus); box-shadow: 0 0 0 1px var(--focus); outline: 0; }
.dataTables_wrapper .dataTables_info { color: var(--text-muted); font-size: 13px; padding-top: 12px; }
.dataTables_wrapper .dataTables_empty { color: var(--text-muted); padding: 32px 16px !important; text-align: center; }
table.dataTable thead th { color: var(--text-secondary); }
.dataTables_processing {
  background: var(--surface) !important;
  color: var(--text-secondary);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
}

/* 6. Paineis, wells, ibox --------------------------------------------------- */
.panel { border-color: var(--border); border-radius: var(--radius-lg); box-shadow: none; background-color: var(--surface); }
.panel > .panel-heading { border-top-left-radius: var(--radius-lg); border-top-right-radius: var(--radius-lg);  font-weight: 600; }
.panel-default > .panel-heading { color: var(--text); background-color: var(--surface); border-color: var(--border); }
.panel-primary { border-color: var(--primary); }
.panel-primary > .panel-heading { background-color: var(--primary); border-color: var(--primary); color: var(--on-primary); }
.panel-title { font-size: 15px; line-height: 22px; font-weight: 600; }
.panel-body { padding: 16px; }
.panel-footer { background-color: var(--surface-sunken); border-top-color: var(--border); border-bottom-left-radius: var(--radius-lg); border-bottom-right-radius: var(--radius-lg); }
.well { background-color: var(--surface-sunken); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: none; }
.ibox-title { border-color: var(--border); background-color: var(--surface); color: var(--text); }
.ibox-content { border-color: var(--border); background-color: var(--surface); color: var(--text); }
.ibox-footer { border-color: var(--border); background-color: var(--surface-sunken); color: var(--text-secondary); }

/* 7. Abas ------------------------------------------------------------------ */
.nav-tabs { border-bottom: 1px solid var(--border); }
.nav-tabs > li > a {
  margin-right: 0;
  margin-bottom: -1px;
  padding: 10px 14px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: var(--text-secondary);
  font-weight: 500;
  background: transparent;
}
.nav-tabs > li > a:hover, .nav-tabs > li > a:focus { color: var(--text); background: transparent; border-bottom-color: var(--border-strong); }
.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  color: var(--text); background: transparent; border: 0; border-bottom: 2px solid var(--primary);
}
.nav-pills > li > a { border-radius: var(--radius-md); color: var(--text-secondary); font-weight: 500; }
.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus { background-color: var(--primary-soft); color: var(--primary-text); }

/* 8. Dropdown -------------------------------------------------------------- */
.dropdown-menu {
  padding: var(--space-1);
  font-size: 14px;
  color: var(--text);
  background-color: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  min-width: 200px;
}
.dropdown-menu > li > a {
  margin: 0;
  padding: 7px 10px;
  line-height: 20px;
  color: var(--text);
  border-radius: var(--radius-sm);
  font-weight: 400;
}
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus { background-color: var(--surface-hover); color: var(--text); }
.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus { background-color: var(--primary-soft); color: var(--primary-text); }
.dropdown-menu .divider { margin: var(--space-1) calc(var(--space-1) * -1) !important; background-color: var(--border); }
.dropdown-header { font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }

/* 9. Labels e badges ------------------------------------------------------- */
.label {
  display: inline-block;
  padding: 3px 8px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
  border-radius: var(--radius-sm);
  text-shadow: none;
  background-color: var(--surface-sunken);
  color: var(--text-secondary);
}
.label-primary, .label-info { background-color: var(--info-soft); color: var(--info); }
.label-success { background-color: var(--success-soft); color: var(--success); }
.label-warning { background-color: var(--warning-soft); color: var(--warning); }
.label-danger { background-color: var(--danger-soft); color: var(--danger); }
.badge {
  min-width: 20px;
  padding: 2px 7px;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  border-radius: var(--radius-full);
  background-color: var(--surface-sunken);
  color: var(--text-secondary);
  text-shadow: none;
  font-variant-numeric: tabular-nums;
}
.badge-primary, .badge-info { background-color: var(--primary); color: var(--on-primary); }
.badge-success { background-color: var(--success); color: var(--on-success); }
.badge-warning { background-color: var(--warning-soft); color: var(--warning); }
.badge-danger { background-color: var(--danger); color: var(--on-danger); }

/* 10. Alertas -------------------------------------------------------------- */
.alert { border: 0; border-radius: var(--radius-md); padding: 12px 16px; font-size: 14px; line-height: 20px; color: var(--text); }
.alert-success { background-color: var(--success-soft); }
.alert-info { background-color: var(--info-soft); }
.alert-warning { background-color: var(--warning-soft); }
.alert-danger { background-color: var(--danger-soft); }
.alert .alert-link { color: inherit; font-weight: 600; text-decoration: underline; }

/* 11. Paginacao ------------------------------------------------------------ */
.pagination > li > a, .pagination > li > span {
  min-width: 32px;
  margin: 0 2px;
  padding: 6px 10px;
  text-align: center;
  color: var(--text-secondary);
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: var(--radius-md) !important;
  font-variant-numeric: tabular-nums;
}
.pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus { background-color: var(--surface-hover); color: var(--text); border-color: transparent; }
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > a:focus {
  background-color: var(--surface); color: var(--text); border-color: var(--border-strong); font-weight: 600;
}
.pagination > .disabled > a, .pagination > .disabled > span { color: var(--text-muted); background: transparent; border-color: transparent; }

/* 12. Modal (Bootstrap) ---------------------------------------------------- */
.modal-backdrop { background-color: var(--overlay); }
.modal-backdrop.in { opacity: 1; }
.modal-content { border: 0; border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); background-color: var(--surface); }
.modal-header { padding: 18px 24px 14px; border-bottom: 1px solid var(--border); }
.modal-title { font-size: 18px; line-height: 26px; font-weight: 600; color: var(--text); }
.modal-body { padding: 16px 24px; }
.modal-footer { padding: 14px 24px; border-top: 1px solid var(--border); }
.modal-header .close, .close { opacity: .6; text-shadow: none; color: var(--text-secondary); font-weight: 400; }
.modal-header .close:hover, .close:hover { opacity: 1; color: var(--text); }
@media (max-width: 599px) {
  .modal-dialog { margin: 8px; }
}

/* 13. jQuery UI ------------------------------------------------------------ */
.ui-widget, .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: var(--font-sans); font-size: 14px; }
.ui-widget-content { color: var(--text); border-color: var(--border); }
.ui-widget-overlay { background: var(--overlay); opacity: 1; }
.ui-dialog {
  padding: 0;
  border: 0 !important;
  border-radius: var(--radius-lg);
  background: var(--surface);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
}
.ui-dialog .ui-dialog-titlebar {
  padding: 14px 20px;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  background: var(--surface);
  color: var(--text);
  font-size: 16px;
  line-height: 24px;
  font-weight: 600;
}
.ui-dialog .ui-dialog-title { font-weight: 600; text-transform: none; }
.ui-dialog .ui-dialog-titlebar-close,
.ui-dialog .ui-dialog-titlebar-buttonpane a { border: 0; background: transparent; border-radius: var(--radius-sm); }
/* O JS 1.10 com o CSS 1.12 deixa o botao de fechar vazio: desenhamos o X */
.ui-dialog .ui-dialog-titlebar-close { width: 28px; height: 28px; margin-top: -14px; right: 12px; padding: 0; cursor: pointer; }
.ui-dialog .ui-dialog-titlebar-close .ui-icon,
.ui-dialog .ui-dialog-titlebar-close .ui-button-text { display: none; }
.ui-dialog .ui-dialog-titlebar-close::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 16px;
  height: 16px;
  background-color: var(--text-secondary);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center / 16px no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center / 16px no-repeat;
}
.ui-dialog .ui-dialog-titlebar-close:hover,
.ui-dialog .ui-dialog-titlebar-buttonpane a:hover { background: var(--surface-hover); }
.ui-dialog .ui-dialog-content { padding: 16px 20px; color: var(--text); }
.ui-dialog .ui-dialog-buttonpane { margin: 0; padding: 12px 20px; border-top: 1px solid var(--border); background: var(--surface); }
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button {
  margin: 0 0 0 8px;
  padding: 7px 14px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  color: var(--text);
  background: var(--surface);
  border: 1px solid var(--border-strong);
  border-radius: var(--radius-md);
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:hover { background: var(--surface-hover); }
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:last-child { color: var(--on-primary); background: var(--primary); border-color: var(--primary); }

.ui-datepicker {
  padding: 8px;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg);
  background: var(--surface);
  box-shadow: var(--shadow-md);
  /* !important: o jQuery UI grava z-index inline (conteiner do campo + 1, quase sempre 1) */
  z-index: var(--z-popover) !important;
}
.ui-datepicker .ui-datepicker-header { border: 0; background: transparent; color: var(--text); font-weight: 600; padding: 4px 0 8px; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { border: 0 !important; background: transparent !important; cursor: pointer; top: 4px; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { background: var(--surface-hover) !important; border-radius: var(--radius-sm); }
.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year { border: 1px solid var(--border-input); border-radius: var(--radius-sm); padding: 2px 4px; }
.ui-datepicker th { color: var(--text-muted); font-size: 12px; font-weight: 600; }
.ui-datepicker td a.ui-state-default, .ui-datepicker td span.ui-state-default {
  text-align: center;
  padding: 6px 0;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  background: transparent;
  color: var(--text);
  font-variant-numeric: tabular-nums;
}
.ui-datepicker td a.ui-state-default:hover { background: var(--surface-hover); }
.ui-datepicker td a.ui-state-highlight { border-color: var(--primary); color: var(--primary-text); background: transparent; }
.ui-datepicker td a.ui-state-active { background: var(--primary); border-color: var(--primary); color: var(--on-primary); }
.ui-datepicker .ui-datepicker-buttonpane button { border-radius: var(--radius-md); border-color: var(--border-strong); background: var(--surface); color: var(--text); }

.ui-autocomplete.ui-menu {
  padding: var(--space-1);
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-md);
  background: var(--surface);
  box-shadow: var(--shadow-md);
  /* acima de modais e janelas (usado dentro deles), abaixo do loading: ver --z-popover */
  z-index: var(--z-popover) !important;
}
.ui-menu .ui-menu-item-wrapper, .ui-menu .ui-menu-item a { padding: 6px 8px; border-radius: var(--radius-sm); border: 0 !important; }
.ui-menu .ui-state-active, .ui-menu .ui-state-focus { margin: 0 !important; background: var(--surface-hover) !important; color: var(--text) !important; }

/* 14. SweetAlert2 7.x ------------------------------------------------------ */
.swal2-container.swal2-shown { background-color: var(--overlay) !important; }
.swal2-popup { padding: 24px !important; border-radius: var(--radius-lg) !important; font-family: var(--font-sans) !important; box-shadow: var(--shadow-lg); width: 28em; }
.swal2-popup .swal2-title { margin: 8px 0 4px; font-size: 18px !important; line-height: 26px; font-weight: 600 !important; color: var(--text) !important; }
.swal2-popup .swal2-content { font-size: 14px !important; line-height: 20px; color: var(--text-secondary) !important; font-weight: 400; }
/* 7.3 usa .swal2-buttonswrapper; versoes posteriores, .swal2-actions */
.swal2-popup .swal2-actions, .swal2-popup .swal2-buttonswrapper { flex-direction: row-reverse; gap: var(--space-2); margin-top: 20px; }
.swal2-popup .swal2-styled {
  margin: 0 !important;
  padding: 8px 16px !important;
  font-size: 14px !important;
  font-weight: 500;
  line-height: 20px;
  border-radius: var(--radius-md) !important;
  box-shadow: none !important;
}
.swal2-popup .swal2-styled:focus { outline: 2px solid var(--focus); outline-offset: 2px; }
.swal2-popup .swal2-styled.swal2-confirm { background-color: var(--primary) !important; border: 1px solid var(--primary) !important; color: var(--on-primary) !important; }
/* confirmButtonColor "#DD6B55" (usado nas exclusoes) vira o vermelho destrutivo do sistema */
.swal2-popup .swal2-styled.swal2-confirm[style*="221, 107, 85"],
.swal2-popup .swal2-styled.swal2-confirm[style*="221,107,85"],
.swal2-popup .swal2-styled.swal2-confirm[style*="DD6B55"],
.swal2-popup .swal2-styled.swal2-confirm[style*="dd6b55"] { background-color: var(--danger) !important; border-color: var(--danger) !important; color: var(--on-danger) !important; }
.swal2-popup .swal2-styled.swal2-cancel { background-color: var(--surface) !important; border: 1px solid var(--border-strong) !important; color: var(--text) !important; }
.swal2-popup .swal2-styled.swal2-cancel:hover { background-color: var(--surface-hover) !important; background-image: none !important; }
.swal2-popup .swal2-input, .swal2-popup .swal2-textarea, .swal2-popup .swal2-select {
  font-size: 14px; border: 1px solid var(--border-input); border-radius: var(--radius-md); box-shadow: none; color: var(--text);
}
.swal2-popup .swal2-input { height: var(--control-md); }
.swal2-popup .swal2-input:focus, .swal2-popup .swal2-textarea:focus { border-color: var(--focus); box-shadow: 0 0 0 1px var(--focus); }
.swal2-popup .swal2-validation-message, .swal2-popup .swal2-validationerror { background: var(--danger-soft); color: var(--danger); font-size: 13px; }
.swal2-icon.swal2-warning { border-color: var(--warning-fill) !important; color: var(--warning-fill) !important; }
.swal2-icon.swal2-error { border-color: var(--danger) !important; }
.swal2-icon.swal2-error [class^="swal2-x-mark-line"] { background-color: var(--danger) !important; }
.swal2-icon.swal2-info, .swal2-icon.swal2-question { border-color: var(--primary) !important; color: var(--primary) !important; }
.swal2-icon.swal2-success { border-color: var(--success) !important; }
.swal2-icon.swal2-success [class^="swal2-success-line"] { background-color: var(--success) !important; }
.swal2-icon.swal2-success .swal2-success-ring { border-color: var(--success-soft) !important; }
/* O 7.3.1 grava o fundo padrao ("#fff") inline no popup e nas pecas que mascaram a
   animacao do icone de sucesso (popup.style.background = params.background).
   So o branco padrao e trocado: um background proprio passado a swal() e mantido. */
:root .swal2-popup[style*="background: rgb(255, 255, 255)"],
:root .swal2-popup[style*="background: white"],
:root .swal2-popup:not([style*="background"]) { background: var(--surface) !important; }
:root .swal2-popup [class^="swal2-success-circular-line"][style*="rgb(255, 255, 255)"],
:root .swal2-popup .swal2-success-fix[style*="rgb(255, 255, 255)"],
:root .swal2-popup [class^="swal2-success-circular-line"][style*="white"],
:root .swal2-popup .swal2-success-fix[style*="white"] { background: var(--surface) !important; }
.swal2-popup .swal2-input, .swal2-popup .swal2-textarea, .swal2-popup .swal2-select, .swal2-popup .swal2-file { background-color: var(--surface); }
.swal2-popup .swal2-checkbox, .swal2-popup .swal2-radio { background: transparent; color: var(--text-secondary); }
.swal2-popup .swal2-close { color: var(--text-muted); }
.swal2-popup .swal2-close:hover { color: var(--danger); }
.swal2-popup .swal2-footer { border-top-color: var(--border); color: var(--text-muted); }
.swal2-popup .swal2-image { border-radius: var(--radius-md); }
.swal2-icon.swal2-warning, .swal2-icon.swal2-info, .swal2-icon.swal2-question { background: transparent; }
.swal2-progresssteps .swal2-progresscircle, .swal2-progresssteps .swal2-progressline { background: var(--primary); color: var(--on-primary); }
.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep ~ .swal2-progresscircle,
.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep ~ .swal2-progressline { background: var(--primary-soft); color: var(--primary-text); }

/* 15. toastr --------------------------------------------------------------- */
#toast-container > div {
  width: 340px;
  padding: 12px 16px 12px 48px;
  opacity: 1;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 20px;
  background-position: 16px center;
}
#toast-container > div:hover { box-shadow: var(--shadow-lg); opacity: 1; }
#toast-container .toast-title { font-weight: 600; }
#toast-container .toast-message { font-weight: 400; }
#toast-container .toast-close-button { opacity: .7; text-shadow: none; font-weight: 400; }
#toast-container > .toast-success { background-color: var(--success); }
#toast-container > .toast-error { background-color: var(--danger); }
#toast-container > .toast-warning { background-color: var(--warning); }
#toast-container > .toast-info { background-color: var(--primary); }
#toast-container { z-index: var(--z-toast); }
@media (max-width: 599px) {
  #toast-container > div { width: auto; }
}

/* 16. blockUI ("Processando! Aguarde...") ---------------------------------- */
.blockUI.blockOverlay { background-color: var(--overlay) !important; opacity: 1 !important; }
.blockUI.blockMsg {
  left: 50% !important;
  width: auto !important;
  min-width: 220px;
  max-width: calc(100vw - 32px);
  transform: translateX(-50%);
  padding: 20px 24px !important;
  border: 0 !important;
  border-radius: var(--radius-lg) !important;
  background-color: var(--surface) !important;
  color: var(--text) !important;
  opacity: 1 !important;
  box-shadow: var(--shadow-lg);
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}
.blockUI.blockMsg::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin: 0 auto 10px;
  border: 2px solid var(--primary);
  border-right-color: transparent;
  border-radius: 50%;
  animation: ft-spin .7s linear infinite;
}
.blockUI.blockMsg h1, .blockUI.blockMsg h2, .blockUI.blockMsg h3 { font-size: 14px; line-height: 20px; margin: 0; }

/* 17. hint.css ------------------------------------------------------------- */
[class*="hint--"]::after, [class*="hint--"]:after {
  background: var(--tooltip-bg);
  color: var(--tooltip-text);
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
  padding: 6px 8px;
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-md);
  text-shadow: none;
}
.hint--top::before, .hint--top-left::before, .hint--top-right::before { border-top-color: var(--tooltip-bg); }
.hint--bottom::before, .hint--bottom-left::before, .hint--bottom-right::before { border-bottom-color: var(--tooltip-bg); }
.hint--left::before { border-left-color: var(--tooltip-bg); }
.hint--right::before { border-right-color: var(--tooltip-bg); }

/* 18. select2 / chosen -----------------------------------------------------
   Prefixo :root: as paginas carregam select2.min.css / chosen.css DEPOIS
   desta folha; com a mesma especificidade o plugin venceria.               */
:root .select2-container { font-family: var(--font-sans); font-size: 14px; }
:root .select2-container--default .select2-selection--single,
:root .select2-container--bootstrap .select2-selection--single {
  height: var(--control-md);
  border: 1px solid var(--border-input);
  border-radius: var(--radius-md);
  background-color: var(--surface);
}
:root .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: calc(var(--control-md) - 2px); padding-left: 12px; padding-right: 28px; color: var(--text); }
:root .select2-container--default .select2-selection--single .select2-selection__arrow { height: calc(var(--control-md) - 2px); top: 0; right: 6px; }
:root .select2-container--default .select2-selection--single .select2-selection__arrow b { border-top-color: var(--text-muted); }
:root .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b { border-color: transparent transparent var(--text-muted) transparent; }
:root .select2-container--default .select2-selection--single .select2-selection__placeholder,
:root .select2-container--default .select2-selection--multiple .select2-selection__placeholder { color: var(--text-muted); }
:root .select2-container--default .select2-selection--single .select2-selection__clear { color: var(--text-muted); }
:root .select2-container--default .select2-selection--multiple {
  min-height: var(--control-md);
  border: 1px solid var(--border-input);
  border-radius: var(--radius-md);
  background-color: var(--surface);
}
:root .select2-container--default .select2-selection--multiple .select2-selection__choice {
  border: 0; border-radius: var(--radius-sm); background: var(--surface-sunken); color: var(--text); font-size: 13px; padding: 1px 8px;
}
:root .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { color: var(--text-muted); }
:root .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover { color: var(--danger); }
:root .select2-container--default .select2-search--inline .select2-search__field { color: var(--text); background: transparent; }
:root .select2-container--default.select2-container--focus .select2-selection--multiple,
:root .select2-container--default.select2-container--open .select2-selection--single,
:root .select2-container--default.select2-container--focus .select2-selection--single { border-color: var(--focus); box-shadow: 0 0 0 1px var(--focus); outline: 0; }
:root .select2-container--default.select2-container--disabled .select2-selection--single,
:root .select2-container--default.select2-container--disabled .select2-selection--multiple { background-color: var(--surface-sunken); opacity: .7; }
/* lista aberta: vai para o fim do <body>, fora da pagina */
:root .select2-dropdown { background-color: var(--surface); color: var(--text); border: 1px solid var(--border); border-radius: var(--radius-md); box-shadow: var(--shadow-md); overflow: hidden; }
:root .select2-container--open .select2-dropdown--below { margin-top: 4px; border-top: 1px solid var(--border); border-radius: var(--radius-md); }
:root .select2-container--open .select2-dropdown--above { margin-top: -4px; border-bottom: 1px solid var(--border); border-radius: var(--radius-md); }
:root .select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
:root .select2-container--default.select2-container--open.select2-container--above .select2-selection--single { border-radius: var(--radius-md); }
:root .select2-search--dropdown { padding: 8px; }
:root .select2-container--default .select2-search--dropdown .select2-search__field {
  height: var(--control-sm); padding: 4px 10px;
  border: 1px solid var(--border-input); border-radius: var(--radius-md);
  background-color: var(--surface); color: var(--text); font-size: 14px; outline: 0;
}
:root .select2-container--default .select2-search--dropdown .select2-search__field:focus { border-color: var(--focus); box-shadow: 0 0 0 1px var(--focus); }
:root .select2-container--default .select2-results > .select2-results__options { max-height: 280px; }
:root .select2-results__option { padding: 8px 12px; color: var(--text); line-height: 20px; }
:root .select2-container--default .select2-results__option[aria-selected="true"] { background-color: var(--primary-soft); color: var(--primary-text); }
:root .select2-container--default .select2-results__option--highlighted[aria-selected],
:root .select2-container--default .select2-results__option--highlighted { background-color: var(--surface-hover); color: var(--text); }
:root .select2-container--default .select2-results__option[aria-disabled="true"] { color: var(--text-muted); }
:root .select2-container--default .select2-results__group { color: var(--text-muted); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
:root .select2-results__message { color: var(--text-muted); }

:root .chosen-container { font-family: var(--font-sans); font-size: 14px; }
:root .chosen-container-single .chosen-single {
  height: var(--control-md);
  line-height: calc(var(--control-md) - 2px);
  border: 1px solid var(--border-input);
  border-radius: var(--radius-md);
  background: var(--surface);
  box-shadow: none;
  color: var(--text);
}
:root .chosen-container-multi .chosen-choices { min-height: var(--control-md); border: 1px solid var(--border-input); border-radius: var(--radius-md); background: var(--surface); box-shadow: none; }
:root .chosen-container-multi .chosen-choices li.search-choice { background: var(--surface-sunken); border-color: var(--border); box-shadow: none; color: var(--text); }
:root .chosen-container-multi .chosen-choices li.search-field input[type="text"] { color: var(--text); }
:root .chosen-container-active .chosen-single, :root .chosen-container-active .chosen-choices { border-color: var(--focus); box-shadow: 0 0 0 1px var(--focus); }
:root .chosen-container .chosen-drop { background: var(--surface); color: var(--text); border-color: var(--border); border-radius: 0 0 var(--radius-md) var(--radius-md); box-shadow: var(--shadow-md); }
:root .chosen-container .chosen-search input[type="text"] { background-color: var(--surface); color: var(--text); border-color: var(--border-input); border-radius: var(--radius-sm); }
:root .chosen-container .chosen-results li { color: var(--text); }
:root .chosen-container .chosen-results li.highlighted { background: var(--surface-hover); color: var(--text); }
:root .chosen-container .chosen-results li.disabled-result, :root .chosen-container .chosen-results li.no-results { color: var(--text-muted); background: transparent; }

/* 19. Pickers (daterangepicker, bootstrap-datetimepicker) ------------------ */
.daterangepicker { font-family: var(--font-sans); border-color: var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); z-index: var(--z-popover); }
.daterangepicker td.active, .daterangepicker td.active:hover,
.daterangepicker .ranges li.active { background-color: var(--primary); border-color: var(--primary); color: var(--on-primary); }
.daterangepicker td.in-range { background-color: var(--primary-soft); color: var(--text); }
.daterangepicker .ranges li { border-radius: var(--radius-sm); color: var(--text); }
.bootstrap-datetimepicker-widget { font-family: var(--font-sans); }
.bootstrap-datetimepicker-widget.dropdown-menu { padding: 8px; }
.bootstrap-datetimepicker-widget table td.active, .bootstrap-datetimepicker-widget table td.active:hover,
.bootstrap-datetimepicker-widget table td span.active { background-color: var(--primary); color: var(--on-primary); }
.bootstrap-datetimepicker-widget table td.today::before { border-bottom-color: var(--primary); }
.bootstrap-datetimepicker-widget table td.day, .bootstrap-datetimepicker-widget table td span { border-radius: var(--radius-sm); }

/* jQuery datetimepicker (xdsoft) - carregado pelas paginas depois desta folha: prefixo :root */
:root .xdsoft_datetimepicker { background: var(--surface); color: var(--text); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); font-family: var(--font-sans); padding: 8px; }
:root .xdsoft_datetimepicker .xdsoft_label { background-color: transparent; color: var(--text); font-weight: 600; }
:root .xdsoft_datetimepicker .xdsoft_label > .xdsoft_select { background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-md); }
:root .xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option { color: var(--text); }
:root .xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover { background: var(--surface-hover); color: var(--text); }
:root .xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option.xdsoft_current { background: var(--primary); color: var(--on-primary); box-shadow: none; }
:root .xdsoft_datetimepicker .xdsoft_calendar td,
:root .xdsoft_datetimepicker .xdsoft_calendar th { background: var(--surface); border-color: var(--border); color: var(--text); }
:root .xdsoft_datetimepicker .xdsoft_calendar th { background: var(--surface-sunken); color: var(--text-secondary); font-weight: 600; }
:root .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today { color: var(--primary-text); font-weight: 600; }
:root .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month,
:root .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled,
:root .xdsoft_datetimepicker .xdsoft_time_box > div > div.xdsoft_disabled { color: var(--text-muted); opacity: .6; }
:root .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
:root .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
:root .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div.xdsoft_current { background: var(--primary); color: var(--on-primary); box-shadow: none; font-weight: 600; }
:root .xdsoft_datetimepicker .xdsoft_calendar td:hover,
:root .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div:hover { background: var(--surface-hover) !important; color: var(--text) !important; box-shadow: none !important; }
:root .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box { border: 1px solid var(--border); border-radius: var(--radius-md); }
:root .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div { background: var(--surface); border-top-color: var(--border); color: var(--text); }
:root[data-theme="dark"] .xdsoft_datetimepicker .xdsoft_prev,
:root[data-theme="dark"] .xdsoft_datetimepicker .xdsoft_next,
:root[data-theme="dark"] .xdsoft_datetimepicker .xdsoft_today_button,
:root[data-theme="dark"] .xdsoft_datetimepicker .xdsoft_label i { filter: invert(1); }

/* ==========================================================================
   20. Segunda passada: layout das paginas, densidade e acabamento
   ========================================================================== */

/* Faixas da pagina (cabecalho, filtros, conteudo) no mesmo gutter da topbar */
.ft-has-shell .panel-container > .row:not(.ft-topbar-host) {
  padding-left: var(--space-6) !important;
  padding-right: var(--space-6) !important;
}
.ft-has-shell .panel-container > .row:not(.ft-topbar-host):has(> [class*="col-"]) {
  padding-left: calc(var(--space-6) - 15px) !important;
  padding-right: calc(var(--space-6) - 15px) !important;
}
/* Cabecalho da pagina: altura regular */
.ft-has-shell .panel-container > .row.white-bg.border-bottom:not(.panel-bottom):not(.ft-topbar-host) {
  padding-top: var(--space-2) !important;
  padding-bottom: var(--space-2) !important;
}
/* Barra de filtros na mesma superficie do cabecalho: uma linha divide, nao uma faixa cinza */
.ft-has-shell .panel-container > .row.border-bottom:not(.white-bg):not(.panel-bottom):not(.ft-topbar-host) {
  background-color: var(--surface);
  padding-top: var(--space-2) !important;
  padding-bottom: var(--space-2) !important;
}
.ft-has-shell .panel-container > .row.panel-bottom { padding-top: var(--space-4) !important; background-color: var(--surface); }
@media (max-width: 767px) {
  .ft-has-shell .panel-container > .row:not(.ft-topbar-host) { padding-left: var(--space-4) !important; padding-right: var(--space-4) !important; }
  .ft-has-shell .panel-container > .row:not(.ft-topbar-host):has(> [class*="col-"]) { padding-left: 1px !important; padding-right: 1px !important; }
}

/* Titulo de pagina montado em tabela: alinhado ao centro e empilhado no celular */
table.borderless:has(.tit_secao) { margin-bottom: 0; }
table.borderless:has(.tit_secao) > tbody > tr > td { vertical-align: middle; }
table.borderless:has(.tit_secao) .btn + .btn { margin-left: var(--space-2); }
@media (max-width: 767px) {
  table.borderless:has(.tit_secao),
  table.borderless:has(.tit_secao) > tbody,
  table.borderless:has(.tit_secao) > tbody > tr { display: block; width: 100% !important; }
  table.borderless:has(.tit_secao) > tbody > tr > td { display: block; width: auto !important; text-align: left !important; padding: 4px 0 !important; }
  /* celulas so com botoes ficam lado a lado */
  table.borderless:has(.tit_secao) > tbody > tr > td:has(> .btn):not(:has(input, select, h2)) { display: inline-block; margin-right: var(--space-2); }
}

/* Paineis laterais (lista + detalhe) empilham no celular */
@media (max-width: 767px) {
  .panel-container-vertical { flex-direction: column; overflow-y: auto; }
  .panel-container-vertical > .panel-left { width: 100% !important; height: auto !important; white-space: normal; }
  .panel-container-vertical > .panel-right { border-left: 0; border-top: 1px solid var(--border); }
}

/* Tabelas: numeros alinhados, cabecalho fixo em areas com rolagem, links discretos */
.table:not(.borderless) > tbody > tr > td,
.table:not(.borderless) > tfoot > tr > td { font-variant-numeric: tabular-nums; }
.panel-bottom .table:not(.borderless):not(.dataTable) > thead > tr > th {
  position: sticky;
  top: -1px;
  z-index: 2;
  box-shadow: inset 0 -1px 0 var(--border);
}
.table > tbody > tr { transition: background-color .12s ease-out; }
.table:not(.borderless) > tbody > tr > td > a:not(.btn) { text-decoration: none; }
.table:not(.borderless) > tbody > tr > td > a:not(.btn):hover { text-decoration: underline; text-underline-offset: 3px; }
.table:not(.borderless) > tbody > tr > td .fa-edit,
.table:not(.borderless) > tbody > tr > td .fa-trash,
.table:not(.borderless) > tbody > tr > td .fa-trash-alt,
.table:not(.borderless) > tbody > tr > td .fa-times { opacity: .72; transition: opacity .12s ease-out; }
.table:not(.borderless) > tbody > tr:hover > td .fa-edit,
.table:not(.borderless) > tbody > tr:hover > td .fa-trash,
.table:not(.borderless) > tbody > tr:hover > td .fa-trash-alt,
.table:not(.borderless) > tbody > tr:hover > td .fa-times { opacity: 1; }

/* Links, foco e selecao */
a { transition: color .12s ease-out; text-underline-offset: 3px; }
a:focus { outline: 0; }
a:focus-visible, .nav-tabs > li > a:focus-visible, .dropdown-menu > li > a:focus-visible, .pagination > li > a:focus-visible {
  outline: 2px solid var(--focus); outline-offset: 2px; border-radius: var(--radius-sm);
}
input[type="checkbox"]:focus-visible, input[type="radio"]:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.form-control:disabled, .form-control[disabled] { cursor: not-allowed; }
::selection { background: var(--primary-soft); color: var(--text); }

/* Scrollbars discretas */
* { scrollbar-width: thin; scrollbar-color: var(--border-strong) transparent; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background-color: var(--border-strong); border-radius: var(--radius-full); border: 3px solid transparent; background-clip: content-box; }
::-webkit-scrollbar-thumb:hover { background-color: var(--text-muted); }

/* Rodape: presente, mas sem competir com o conteudo */
.footer { padding: 8px var(--space-6); height: auto; display: flex; align-items: center; justify-content: space-between; }
.footer > .pull-right { order: 2; }
.footer strong { font-weight: 400; }
.footer img { height: 16px; width: auto !important; opacity: .55; vertical-align: middle; }
.footer .pull-right { float: none !important; }

/* Microinteracoes: modal e dropdown entram sem salto */
.modal.fade .modal-dialog { transform: translate(0, 8px) scale(.98); transition: transform .18s ease-out; }
.modal.in .modal-dialog { transform: none; }
.modal-backdrop.fade { transition: opacity .15s linear; }
.open > .dropdown-menu { animation: ft-pop .12s ease-out; }
@keyframes ft-pop { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

/* Componentes Bootstrap ainda sem acabamento */
legend { font-size: 15px; line-height: 22px; font-weight: 600; color: var(--text); border-bottom-color: var(--border); padding-bottom: 8px; margin-bottom: 16px; }
.list-group-item { border-color: var(--border); color: var(--text); }
.list-group-item:first-child { border-top-left-radius: var(--radius-lg); border-top-right-radius: var(--radius-lg); }
.list-group-item:last-child { border-bottom-left-radius: var(--radius-lg); border-bottom-right-radius: var(--radius-lg); }
a.list-group-item:hover, a.list-group-item:focus { background-color: var(--surface-hover); }
.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus { background-color: var(--primary-soft); color: var(--primary-text); border-color: var(--border); }
.progress { height: 8px; border-radius: var(--radius-full); background-color: var(--surface-sunken); box-shadow: none; }
.progress-bar { background-color: var(--primary); box-shadow: none; font-size: 11px; line-height: 8px; }
.progress-bar-success { background-color: var(--success); }
.progress-bar-warning { background-color: var(--warning-fill); }
.progress-bar-danger { background-color: var(--danger); }
.panel-group .panel + .panel { margin-top: var(--space-2); }
.panel-group .panel-heading + .panel-collapse > .panel-body { border-top-color: var(--border); }
.panel-heading a[data-toggle="collapse"] { color: var(--text); text-decoration: none; display: block; }
.popover { border-color: var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); font-family: var(--font-sans); }
.popover-title { background: var(--surface); border-bottom-color: var(--border); font-size: 14px; font-weight: 600; }
.tooltip-inner { background: var(--tooltip-bg); color: var(--tooltip-text); border-radius: var(--radius-sm); font-size: 12px; padding: 6px 8px; }
.tooltip.top .tooltip-arrow { border-top-color: var(--tooltip-bg); }
.tooltip.bottom .tooltip-arrow { border-bottom-color: var(--tooltip-bg); }
.tooltip.left .tooltip-arrow { border-left-color: var(--tooltip-bg); }
.tooltip.right .tooltip-arrow { border-right-color: var(--tooltip-bg); }
.btn-xs { min-height: 24px; }
.btn-group > .btn:not(:first-child):not(:last-child) { border-radius: 0; }

@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog, .open > .dropdown-menu, .table > tbody > tr, a { transition: none; animation: none; }
  .btn:not(:disabled):not(.disabled):active { transform: none; }
}

/* Estado vazio das tabelas CRUD (<span data-i18n="msg.norecord">), sem editar as paginas */
td > span[data-i18n="msg.norecord"] {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-6) 0;
  font-size: 15px;
  line-height: 22px;
  font-weight: 600;
  color: var(--text);
}
td > span[data-i18n="msg.norecord"]::before {
  content: "";
  width: 40px;
  height: 40px;
  border-radius: var(--radius-md);
  background-color: var(--surface-sunken);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23465563' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 12h-6l-2 3h-4l-2-3H2'/%3E%3Cpath d='M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z'/%3E%3C/svg%3E");
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
}
.table > tbody > tr:has(> td > span[data-i18n="msg.norecord"]):hover { background: transparent; }
.table > tbody > tr > td:has(> span[data-i18n="msg.norecord"]) { height: auto !important; }

/* Linhas de skeleton (ftUI.skeletonRows) */
.table > tbody > tr.ft-skeleton-row > td { padding-top: 14px; padding-bottom: 14px; }
.table > tbody > tr.ft-skeleton-row:hover { background: transparent; }

/* Texto inline de 10-11px (179 ocorrencias em 72 paginas) sobe para o minimo do sistema, 12px.
   Pesos 800/900/bold inline ja caem para 600: so 400-600 da IBM Plex sao carregados. */
[style*="font-size:10px"], [style*="font-size: 10px"],
[style*="font-size:11px"], [style*="font-size: 11px"] { font-size: 12px !important; }

/* ==========================================================================
   21. CRUDs (fin/, rh/ e cadastros do sistema): mesmo padrao, tratado aqui
   ========================================================================== */

/* "Adicionar" (.newreg) e a acao principal da tela: primario, nao verde */
.btn.newreg.btn-success { color: var(--on-primary); background-color: var(--primary); border-color: var(--primary); }
.btn.newreg.btn-success:hover, .btn.newreg.btn-success:focus, .btn.newreg.btn-success:active {
  color: var(--on-primary); background-color: var(--primary-hover); border-color: var(--primary-hover); filter: none;
}

/* Estado vazio das listas montadas em JS (mesmo formato do msg.norecord) */
td.centralizado[style*="height:100px"] > span:only-child {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-6) 0;
  font-size: 15px;
  line-height: 22px;
  font-weight: 600;
  color: var(--text);
}
td.centralizado[style*="height:100px"] > span:only-child::before {
  content: "";
  width: 40px;
  height: 40px;
  border-radius: var(--radius-md);
  background-color: var(--surface-sunken);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23465563' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 12h-6l-2 3h-4l-2-3H2'/%3E%3Cpath d='M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z'/%3E%3C/svg%3E");
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
}
.table > tbody > tr:has(> td.centralizado[style*="height:100px"]),
.table > tbody > tr:has(> td.centralizado[style*="height:100px"]):hover { background: transparent !important; }
td.centralizado[style*="height:100px"] { height: auto !important; text-align: center; }

/* Acoes de linha (icone + tooltip): alvo de 28px com hover, no lugar de um icone solto de 14px */
.table td > a:not(.btn):has(> span[class*="hint--"] > i.fa) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: var(--radius-md);
  color: var(--text-secondary);
  text-decoration: none;
  transition: background-color .12s ease-out, color .12s ease-out;
}
.table td > a:not(.btn):has(> span[class*="hint--"] > i.fa):hover { background: var(--surface-hover); color: var(--primary-text); text-decoration: none; }
.table td > a:not(.btn):has(> span[class*="hint--"] > i.fa-trash, > span[class*="hint--"] > i.fa-trash-alt, > span[class*="hint--"] > i.fa-times):hover { background: var(--danger-soft); color: var(--danger); }
.table td > a:not(.btn) > span[class*="hint--"] > i.fa { color: inherit; opacity: 1; }
.text-navy { color: var(--primary-text); }
.table .text-navy { color: inherit; }

/* Formularios de cadastro nas janelas: coluna de rotulo como label */
.ui-dialog-content table.borderless > tbody > tr > td,
.modal-body table.borderless > tbody > tr > td { vertical-align: middle; padding-top: 6px !important; padding-bottom: 6px !important; }
.ui-dialog-content table.borderless > tbody > tr > td:not(:has(input, select, textarea, button, .btn, img)),
.modal-body table.borderless > tbody > tr > td:not(:has(input, select, textarea, button, .btn, img)) {
  font-size: 13px;
  line-height: 18px;
  font-weight: 500;
  color: var(--text-secondary);
  white-space: nowrap;
}

/* ==========================================================================
   22. Telas de integracao (config_cv, config_hbox, config_teamer)
   O JS monta cada campo como <h2>; aqui eles viram rotulo (campos) ou titulo (secoes).
   ========================================================================== */
.ft-cfg-int { padding: var(--space-4) 0 var(--space-8); }
.ft-cfg-int > table { margin-bottom: 0; }
.ft-cfg-int table.borderless > tbody > tr > td { vertical-align: middle; padding-top: 8px !important; padding-bottom: 8px !important; border-bottom: 1px solid var(--border); }
.ft-cfg-int table.borderless h2 { margin: 0; font-size: 14px; line-height: 20px; font-weight: 500; color: var(--text); }
.ft-cfg-int table.table:not(.borderless) { margin-top: var(--space-6); }
.ft-cfg-int table.table:not(.borderless) > tbody > tr:first-child > td { border-top: 0; padding: 0 0 var(--space-2) !important; background: transparent; }
.ft-cfg-int table.table:not(.borderless) h2 { margin: 0; font-size: 15px; line-height: 22px; font-weight: 600; color: var(--text); }
.ft-cfg-int .form-control.inline { display: inline-block; max-width: 100%; }
.ft-cfg-int .btn { margin-left: var(--space-2); }
@media (max-width: 767px) {
  .ft-cfg-int { overflow-x: auto; }
  .ft-cfg-int table.borderless > tbody > tr > td { display: block; width: 100% !important; max-width: none !important; text-align: left !important; border-bottom: 0; }
  .ft-cfg-int table.borderless > tbody > tr { display: block; border-bottom: 1px solid var(--border); padding: 4px 0; }
  .ft-cfg-int .form-control.inline { width: 100% !important; }
}

/* Titulo de pagina com acao dentro do proprio <h2> (float inline): alinha titulo e botao */
h2.tit_secao:has(> .btn) { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
h2.tit_secao > .btn { float: none !important; margin: 0; font-size: 14px; line-height: 20px; }

/* ==========================================================================
   23. Roleta: lista por periodo (roleta/roleta.php e recepcao/roleta.php)
   Escopo #result, acima dos <style> locais (.barra, .ord). Sem display !important:
   o JS usa .show()/.hide() em .btprint/.btxls.
   ========================================================================== */
#result .barra {
  background: var(--surface-sunken);
  color: var(--text-secondary);
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-align: center;
  padding: 6px 8px;
  border-top: 1px dashed var(--border-strong);
  border-bottom: 1px dashed var(--border-strong);
  cursor: pointer;
}
#result .ord {
  width: 28px;
  height: 28px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  background: var(--primary-soft);
  color: var(--primary-text);
  font-size: 13px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
#result h2.tit_secao .btprint,
#result h2.tit_secao .btxls {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin-left: 4px !important;
  border-radius: var(--radius-md);
  color: var(--text-secondary) !important;
  font-size: 14px;
  vertical-align: middle;
  text-decoration: none;
}
#result h2.tit_secao .btprint:hover,
#result h2.tit_secao .btxls:hover { background: var(--surface-hover); color: var(--primary-text) !important; }
#result h2.tit_secao .btprint { margin-left: var(--space-2) !important; }
#result h2.tit_secao .btxls { margin-left: -2px !important; }
#result h2.tit_secao > a.btn { float: none !important; margin-left: var(--space-2); }
/* tabela externa que so envolve a lista: sem bordas nem padding duplicados */
#result table.table.padding2 > tbody > tr > td:has(> table.lista) { padding: 0 !important; border: 0 !important; }
#result table.lista { width: 100%; margin-left: 0; }
#result table.lista > tbody > tr > td { vertical-align: middle; }

/* 22. Tema escuro ------------------------------------------------------------
   Ativado por <html data-theme="dark"> (botao da topbar, ft-ui.js). Os
   componentes acima ja seguem os tokens; aqui ficam so os pontos do legado
   que usam cor literal. Nada disto vale no tema claro, exceto a 22.1.        */

/* 22.1 INSPINIA pinta a aba ativa de branco (#fff) em body.top-navigation */
.top-navigation .nav > li.active { background: var(--surface); }

/* 22.2 Base */
:root[data-theme="dark"] { background-color: var(--bg); }
:root[data-theme="dark"] .footer img:not(.ft-theme-dark-only) { filter: brightness(0) invert(1); opacity: .55; }
:root[data-theme="dark"] .breadcrumb { background-color: var(--surface-sunken); }
:root[data-theme="dark"] .breadcrumb > .active { color: var(--text-muted); }
:root[data-theme="dark"] .jumbotron { background-color: var(--surface-sunken); color: var(--text); }
:root[data-theme="dark"] .label-default { background-color: var(--surface-sunken); color: var(--text-secondary); }
:root[data-theme="dark"] .note-editor, :root[data-theme="dark"] .note-editor .note-toolbar, :root[data-theme="dark"] .note-editor .note-editing-area .note-editable { background-color: var(--surface); color: var(--text); border-color: var(--border); }
:root[data-theme="dark"] .note-editor .note-toolbar { background-color: var(--surface-sunken); }

/* 22.3 Graficos Morris (Raphael): cores padrao de grade e rotulos */
:root[data-theme="dark"] svg text[fill="#888888"] { fill: var(--text-muted); }
:root[data-theme="dark"] svg path[stroke="#aaaaaa"] { stroke: var(--border-strong); }
:root[data-theme="dark"] .morris-hover.morris-default-style { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-md); color: var(--text-secondary); box-shadow: var(--shadow-md); font-family: var(--font-sans); }

/* 22.4 Rede de seguranca para cores inline mais comuns nas paginas
   (style="background:#fff", "color:#000", "border:#ccc solid 1px"...).
   Cores com significado (vermelho, verde, marca) ficam como estao.       */
:root[data-theme="dark"] [style*="background:#fff;" i],
:root[data-theme="dark"] [style*="background:#fff " i],
:root[data-theme="dark"] [style$="background:#fff" i],
:root[data-theme="dark"] [style*="background: #fff;" i],
:root[data-theme="dark"] [style*="background: #fff " i],
:root[data-theme="dark"] [style$="background: #fff" i],
:root[data-theme="dark"] [style*="background:#ffffff;" i],
:root[data-theme="dark"] [style*="background:#ffffff " i],
:root[data-theme="dark"] [style$="background:#ffffff" i],
:root[data-theme="dark"] [style*="background: #ffffff;" i],
:root[data-theme="dark"] [style*="background: #ffffff " i],
:root[data-theme="dark"] [style$="background: #ffffff" i],
:root[data-theme="dark"] [style*="background:white;" i],
:root[data-theme="dark"] [style*="background:white " i],
:root[data-theme="dark"] [style$="background:white" i],
:root[data-theme="dark"] [style*="background: white;" i],
:root[data-theme="dark"] [style*="background: white " i],
:root[data-theme="dark"] [style$="background: white" i],
:root[data-theme="dark"] [style*="background-color:#fff;" i],
:root[data-theme="dark"] [style*="background-color:#fff " i],
:root[data-theme="dark"] [style$="background-color:#fff" i],
:root[data-theme="dark"] [style*="background-color: #fff;" i],
:root[data-theme="dark"] [style*="background-color: #fff " i],
:root[data-theme="dark"] [style$="background-color: #fff" i],
:root[data-theme="dark"] [style*="background-color:#ffffff;" i],
:root[data-theme="dark"] [style*="background-color:#ffffff " i],
:root[data-theme="dark"] [style$="background-color:#ffffff" i],
:root[data-theme="dark"] [style*="background-color: #ffffff;" i],
:root[data-theme="dark"] [style*="background-color: #ffffff " i],
:root[data-theme="dark"] [style$="background-color: #ffffff" i],
:root[data-theme="dark"] [style*="background-color:white;" i],
:root[data-theme="dark"] [style*="background-color:white " i],
:root[data-theme="dark"] [style$="background-color:white" i],
:root[data-theme="dark"] [style*="background-color: white;" i],
:root[data-theme="dark"] [style*="background-color: white " i],
:root[data-theme="dark"] [style$="background-color: white" i] { background-color: var(--surface) !important; }
:root[data-theme="dark"] [style*="background:#f9f9f9;" i],
:root[data-theme="dark"] [style*="background:#f9f9f9 " i],
:root[data-theme="dark"] [style$="background:#f9f9f9" i],
:root[data-theme="dark"] [style*="background: #f9f9f9;" i],
:root[data-theme="dark"] [style*="background: #f9f9f9 " i],
:root[data-theme="dark"] [style$="background: #f9f9f9" i],
:root[data-theme="dark"] [style*="background:#f4f4f4;" i],
:root[data-theme="dark"] [style*="background:#f4f4f4 " i],
:root[data-theme="dark"] [style$="background:#f4f4f4" i],
:root[data-theme="dark"] [style*="background: #f4f4f4;" i],
:root[data-theme="dark"] [style*="background: #f4f4f4 " i],
:root[data-theme="dark"] [style$="background: #f4f4f4" i],
:root[data-theme="dark"] [style*="background:#f5f5f5;" i],
:root[data-theme="dark"] [style*="background:#f5f5f5 " i],
:root[data-theme="dark"] [style$="background:#f5f5f5" i],
:root[data-theme="dark"] [style*="background: #f5f5f5;" i],
:root[data-theme="dark"] [style*="background: #f5f5f5 " i],
:root[data-theme="dark"] [style$="background: #f5f5f5" i],
:root[data-theme="dark"] [style*="background:#eee;" i],
:root[data-theme="dark"] [style*="background:#eee " i],
:root[data-theme="dark"] [style$="background:#eee" i],
:root[data-theme="dark"] [style*="background: #eee;" i],
:root[data-theme="dark"] [style*="background: #eee " i],
:root[data-theme="dark"] [style$="background: #eee" i],
:root[data-theme="dark"] [style*="background:#eeeeee;" i],
:root[data-theme="dark"] [style*="background:#eeeeee " i],
:root[data-theme="dark"] [style$="background:#eeeeee" i],
:root[data-theme="dark"] [style*="background: #eeeeee;" i],
:root[data-theme="dark"] [style*="background: #eeeeee " i],
:root[data-theme="dark"] [style$="background: #eeeeee" i],
:root[data-theme="dark"] [style*="background:#ececec;" i],
:root[data-theme="dark"] [style*="background:#ececec " i],
:root[data-theme="dark"] [style$="background:#ececec" i],
:root[data-theme="dark"] [style*="background: #ececec;" i],
:root[data-theme="dark"] [style*="background: #ececec " i],
:root[data-theme="dark"] [style$="background: #ececec" i],
:root[data-theme="dark"] [style*="background:#ecebeb;" i],
:root[data-theme="dark"] [style*="background:#ecebeb " i],
:root[data-theme="dark"] [style$="background:#ecebeb" i],
:root[data-theme="dark"] [style*="background: #ecebeb;" i],
:root[data-theme="dark"] [style*="background: #ecebeb " i],
:root[data-theme="dark"] [style$="background: #ecebeb" i],
:root[data-theme="dark"] [style*="background:#e4e4e4;" i],
:root[data-theme="dark"] [style*="background:#e4e4e4 " i],
:root[data-theme="dark"] [style$="background:#e4e4e4" i],
:root[data-theme="dark"] [style*="background: #e4e4e4;" i],
:root[data-theme="dark"] [style*="background: #e4e4e4 " i],
:root[data-theme="dark"] [style$="background: #e4e4e4" i],
:root[data-theme="dark"] [style*="background:#d2d2d2;" i],
:root[data-theme="dark"] [style*="background:#d2d2d2 " i],
:root[data-theme="dark"] [style$="background:#d2d2d2" i],
:root[data-theme="dark"] [style*="background: #d2d2d2;" i],
:root[data-theme="dark"] [style*="background: #d2d2d2 " i],
:root[data-theme="dark"] [style$="background: #d2d2d2" i],
:root[data-theme="dark"] [style*="background-color:#f9f9f9;" i],
:root[data-theme="dark"] [style*="background-color:#f9f9f9 " i],
:root[data-theme="dark"] [style$="background-color:#f9f9f9" i],
:root[data-theme="dark"] [style*="background-color: #f9f9f9;" i],
:root[data-theme="dark"] [style*="background-color: #f9f9f9 " i],
:root[data-theme="dark"] [style$="background-color: #f9f9f9" i],
:root[data-theme="dark"] [style*="background-color:#f4f4f4;" i],
:root[data-theme="dark"] [style*="background-color:#f4f4f4 " i],
:root[data-theme="dark"] [style$="background-color:#f4f4f4" i],
:root[data-theme="dark"] [style*="background-color: #f4f4f4;" i],
:root[data-theme="dark"] [style*="background-color: #f4f4f4 " i],
:root[data-theme="dark"] [style$="background-color: #f4f4f4" i],
:root[data-theme="dark"] [style*="background-color:#f5f5f5;" i],
:root[data-theme="dark"] [style*="background-color:#f5f5f5 " i],
:root[data-theme="dark"] [style$="background-color:#f5f5f5" i],
:root[data-theme="dark"] [style*="background-color: #f5f5f5;" i],
:root[data-theme="dark"] [style*="background-color: #f5f5f5 " i],
:root[data-theme="dark"] [style$="background-color: #f5f5f5" i],
:root[data-theme="dark"] [style*="background-color:#eee;" i],
:root[data-theme="dark"] [style*="background-color:#eee " i],
:root[data-theme="dark"] [style$="background-color:#eee" i],
:root[data-theme="dark"] [style*="background-color: #eee;" i],
:root[data-theme="dark"] [style*="background-color: #eee " i],
:root[data-theme="dark"] [style$="background-color: #eee" i],
:root[data-theme="dark"] [style*="background-color:#eeeeee;" i],
:root[data-theme="dark"] [style*="background-color:#eeeeee " i],
:root[data-theme="dark"] [style$="background-color:#eeeeee" i],
:root[data-theme="dark"] [style*="background-color: #eeeeee;" i],
:root[data-theme="dark"] [style*="background-color: #eeeeee " i],
:root[data-theme="dark"] [style$="background-color: #eeeeee" i],
:root[data-theme="dark"] [style*="background-color:#ececec;" i],
:root[data-theme="dark"] [style*="background-color:#ececec " i],
:root[data-theme="dark"] [style$="background-color:#ececec" i],
:root[data-theme="dark"] [style*="background-color: #ececec;" i],
:root[data-theme="dark"] [style*="background-color: #ececec " i],
:root[data-theme="dark"] [style$="background-color: #ececec" i],
:root[data-theme="dark"] [style*="background-color:#ecebeb;" i],
:root[data-theme="dark"] [style*="background-color:#ecebeb " i],
:root[data-theme="dark"] [style$="background-color:#ecebeb" i],
:root[data-theme="dark"] [style*="background-color: #ecebeb;" i],
:root[data-theme="dark"] [style*="background-color: #ecebeb " i],
:root[data-theme="dark"] [style$="background-color: #ecebeb" i],
:root[data-theme="dark"] [style*="background-color:#e4e4e4;" i],
:root[data-theme="dark"] [style*="background-color:#e4e4e4 " i],
:root[data-theme="dark"] [style$="background-color:#e4e4e4" i],
:root[data-theme="dark"] [style*="background-color: #e4e4e4;" i],
:root[data-theme="dark"] [style*="background-color: #e4e4e4 " i],
:root[data-theme="dark"] [style$="background-color: #e4e4e4" i],
:root[data-theme="dark"] [style*="background-color:#d2d2d2;" i],
:root[data-theme="dark"] [style*="background-color:#d2d2d2 " i],
:root[data-theme="dark"] [style$="background-color:#d2d2d2" i],
:root[data-theme="dark"] [style*="background-color: #d2d2d2;" i],
:root[data-theme="dark"] [style*="background-color: #d2d2d2 " i],
:root[data-theme="dark"] [style$="background-color: #d2d2d2" i] { background-color: var(--surface-sunken) !important; }
:root[data-theme="dark"] [style*="color:#000;" i],
:root[data-theme="dark"] [style*="color:#000 " i],
:root[data-theme="dark"] [style$="color:#000" i],
:root[data-theme="dark"] [style*="color: #000;" i],
:root[data-theme="dark"] [style*="color: #000 " i],
:root[data-theme="dark"] [style$="color: #000" i],
:root[data-theme="dark"] [style*="color:#000000;" i],
:root[data-theme="dark"] [style*="color:#000000 " i],
:root[data-theme="dark"] [style$="color:#000000" i],
:root[data-theme="dark"] [style*="color: #000000;" i],
:root[data-theme="dark"] [style*="color: #000000 " i],
:root[data-theme="dark"] [style$="color: #000000" i],
:root[data-theme="dark"] [style*="color:black;" i],
:root[data-theme="dark"] [style*="color:black " i],
:root[data-theme="dark"] [style$="color:black" i],
:root[data-theme="dark"] [style*="color: black;" i],
:root[data-theme="dark"] [style*="color: black " i],
:root[data-theme="dark"] [style$="color: black" i],
:root[data-theme="dark"] [style*="color:#333;" i],
:root[data-theme="dark"] [style*="color:#333 " i],
:root[data-theme="dark"] [style$="color:#333" i],
:root[data-theme="dark"] [style*="color: #333;" i],
:root[data-theme="dark"] [style*="color: #333 " i],
:root[data-theme="dark"] [style$="color: #333" i],
:root[data-theme="dark"] [style*="color:#333333;" i],
:root[data-theme="dark"] [style*="color:#333333 " i],
:root[data-theme="dark"] [style$="color:#333333" i],
:root[data-theme="dark"] [style*="color: #333333;" i],
:root[data-theme="dark"] [style*="color: #333333 " i],
:root[data-theme="dark"] [style$="color: #333333" i],
:root[data-theme="dark"] [style*="color:#444;" i],
:root[data-theme="dark"] [style*="color:#444 " i],
:root[data-theme="dark"] [style$="color:#444" i],
:root[data-theme="dark"] [style*="color: #444;" i],
:root[data-theme="dark"] [style*="color: #444 " i],
:root[data-theme="dark"] [style$="color: #444" i],
:root[data-theme="dark"] [style*="color:#555;" i],
:root[data-theme="dark"] [style*="color:#555 " i],
:root[data-theme="dark"] [style$="color:#555" i],
:root[data-theme="dark"] [style*="color: #555;" i],
:root[data-theme="dark"] [style*="color: #555 " i],
:root[data-theme="dark"] [style$="color: #555" i],
:root[data-theme="dark"] [style*="color:#676a6c;" i],
:root[data-theme="dark"] [style*="color:#676a6c " i],
:root[data-theme="dark"] [style$="color:#676a6c" i],
:root[data-theme="dark"] [style*="color: #676a6c;" i],
:root[data-theme="dark"] [style*="color: #676a6c " i],
:root[data-theme="dark"] [style$="color: #676a6c" i] { color: var(--text) !important; }
:root[data-theme="dark"] [style*="border:#ccc;" i],
:root[data-theme="dark"] [style*="border:#ccc " i],
:root[data-theme="dark"] [style$="border:#ccc" i],
:root[data-theme="dark"] [style*="border: #ccc;" i],
:root[data-theme="dark"] [style*="border: #ccc " i],
:root[data-theme="dark"] [style$="border: #ccc" i],
:root[data-theme="dark"] [style*="border:#cccccc;" i],
:root[data-theme="dark"] [style*="border:#cccccc " i],
:root[data-theme="dark"] [style$="border:#cccccc" i],
:root[data-theme="dark"] [style*="border: #cccccc;" i],
:root[data-theme="dark"] [style*="border: #cccccc " i],
:root[data-theme="dark"] [style$="border: #cccccc" i],
:root[data-theme="dark"] [style*="border:#ddd;" i],
:root[data-theme="dark"] [style*="border:#ddd " i],
:root[data-theme="dark"] [style$="border:#ddd" i],
:root[data-theme="dark"] [style*="border: #ddd;" i],
:root[data-theme="dark"] [style*="border: #ddd " i],
:root[data-theme="dark"] [style$="border: #ddd" i],
:root[data-theme="dark"] [style*="border:#dddddd;" i],
:root[data-theme="dark"] [style*="border:#dddddd " i],
:root[data-theme="dark"] [style$="border:#dddddd" i],
:root[data-theme="dark"] [style*="border: #dddddd;" i],
:root[data-theme="dark"] [style*="border: #dddddd " i],
:root[data-theme="dark"] [style$="border: #dddddd" i],
:root[data-theme="dark"] [style*="border:#e4e4e4;" i],
:root[data-theme="dark"] [style*="border:#e4e4e4 " i],
:root[data-theme="dark"] [style$="border:#e4e4e4" i],
:root[data-theme="dark"] [style*="border: #e4e4e4;" i],
:root[data-theme="dark"] [style*="border: #e4e4e4 " i],
:root[data-theme="dark"] [style$="border: #e4e4e4" i],
:root[data-theme="dark"] [style*="border:#000;" i],
:root[data-theme="dark"] [style*="border:#000 " i],
:root[data-theme="dark"] [style$="border:#000" i],
:root[data-theme="dark"] [style*="border: #000;" i],
:root[data-theme="dark"] [style*="border: #000 " i],
:root[data-theme="dark"] [style$="border: #000" i],
:root[data-theme="dark"] [style*="border-color:#ccc;" i],
:root[data-theme="dark"] [style*="border-color:#ccc " i],
:root[data-theme="dark"] [style$="border-color:#ccc" i],
:root[data-theme="dark"] [style*="border-color: #ccc;" i],
:root[data-theme="dark"] [style*="border-color: #ccc " i],
:root[data-theme="dark"] [style$="border-color: #ccc" i],
:root[data-theme="dark"] [style*="border-color:#cccccc;" i],
:root[data-theme="dark"] [style*="border-color:#cccccc " i],
:root[data-theme="dark"] [style$="border-color:#cccccc" i],
:root[data-theme="dark"] [style*="border-color: #cccccc;" i],
:root[data-theme="dark"] [style*="border-color: #cccccc " i],
:root[data-theme="dark"] [style$="border-color: #cccccc" i],
:root[data-theme="dark"] [style*="border-color:#ddd;" i],
:root[data-theme="dark"] [style*="border-color:#ddd " i],
:root[data-theme="dark"] [style$="border-color:#ddd" i],
:root[data-theme="dark"] [style*="border-color: #ddd;" i],
:root[data-theme="dark"] [style*="border-color: #ddd " i],
:root[data-theme="dark"] [style$="border-color: #ddd" i],
:root[data-theme="dark"] [style*="border-color:#dddddd;" i],
:root[data-theme="dark"] [style*="border-color:#dddddd " i],
:root[data-theme="dark"] [style$="border-color:#dddddd" i],
:root[data-theme="dark"] [style*="border-color: #dddddd;" i],
:root[data-theme="dark"] [style*="border-color: #dddddd " i],
:root[data-theme="dark"] [style$="border-color: #dddddd" i],
:root[data-theme="dark"] [style*="border-color:#e4e4e4;" i],
:root[data-theme="dark"] [style*="border-color:#e4e4e4 " i],
:root[data-theme="dark"] [style$="border-color:#e4e4e4" i],
:root[data-theme="dark"] [style*="border-color: #e4e4e4;" i],
:root[data-theme="dark"] [style*="border-color: #e4e4e4 " i],
:root[data-theme="dark"] [style$="border-color: #e4e4e4" i],
:root[data-theme="dark"] [style*="border-color:#000;" i],
:root[data-theme="dark"] [style*="border-color:#000 " i],
:root[data-theme="dark"] [style$="border-color:#000" i],
:root[data-theme="dark"] [style*="border-color: #000;" i],
:root[data-theme="dark"] [style*="border-color: #000 " i],
:root[data-theme="dark"] [style$="border-color: #000" i],
:root[data-theme="dark"] [style*="border-bottom:#ccc;" i],
:root[data-theme="dark"] [style*="border-bottom:#ccc " i],
:root[data-theme="dark"] [style$="border-bottom:#ccc" i],
:root[data-theme="dark"] [style*="border-bottom: #ccc;" i],
:root[data-theme="dark"] [style*="border-bottom: #ccc " i],
:root[data-theme="dark"] [style$="border-bottom: #ccc" i],
:root[data-theme="dark"] [style*="border-bottom:#cccccc;" i],
:root[data-theme="dark"] [style*="border-bottom:#cccccc " i],
:root[data-theme="dark"] [style$="border-bottom:#cccccc" i],
:root[data-theme="dark"] [style*="border-bottom: #cccccc;" i],
:root[data-theme="dark"] [style*="border-bottom: #cccccc " i],
:root[data-theme="dark"] [style$="border-bottom: #cccccc" i],
:root[data-theme="dark"] [style*="border-bottom:#ddd;" i],
:root[data-theme="dark"] [style*="border-bottom:#ddd " i],
:root[data-theme="dark"] [style$="border-bottom:#ddd" i],
:root[data-theme="dark"] [style*="border-bottom: #ddd;" i],
:root[data-theme="dark"] [style*="border-bottom: #ddd " i],
:root[data-theme="dark"] [style$="border-bottom: #ddd" i],
:root[data-theme="dark"] [style*="border-bottom:#dddddd;" i],
:root[data-theme="dark"] [style*="border-bottom:#dddddd " i],
:root[data-theme="dark"] [style$="border-bottom:#dddddd" i],
:root[data-theme="dark"] [style*="border-bottom: #dddddd;" i],
:root[data-theme="dark"] [style*="border-bottom: #dddddd " i],
:root[data-theme="dark"] [style$="border-bottom: #dddddd" i],
:root[data-theme="dark"] [style*="border-bottom:#e4e4e4;" i],
:root[data-theme="dark"] [style*="border-bottom:#e4e4e4 " i],
:root[data-theme="dark"] [style$="border-bottom:#e4e4e4" i],
:root[data-theme="dark"] [style*="border-bottom: #e4e4e4;" i],
:root[data-theme="dark"] [style*="border-bottom: #e4e4e4 " i],
:root[data-theme="dark"] [style$="border-bottom: #e4e4e4" i],
:root[data-theme="dark"] [style*="border-bottom:#000;" i],
:root[data-theme="dark"] [style*="border-bottom:#000 " i],
:root[data-theme="dark"] [style$="border-bottom:#000" i],
:root[data-theme="dark"] [style*="border-bottom: #000;" i],
:root[data-theme="dark"] [style*="border-bottom: #000 " i],
:root[data-theme="dark"] [style$="border-bottom: #000" i],
:root[data-theme="dark"] [style*="border-top:#ccc;" i],
:root[data-theme="dark"] [style*="border-top:#ccc " i],
:root[data-theme="dark"] [style$="border-top:#ccc" i],
:root[data-theme="dark"] [style*="border-top: #ccc;" i],
:root[data-theme="dark"] [style*="border-top: #ccc " i],
:root[data-theme="dark"] [style$="border-top: #ccc" i],
:root[data-theme="dark"] [style*="border-top:#cccccc;" i],
:root[data-theme="dark"] [style*="border-top:#cccccc " i],
:root[data-theme="dark"] [style$="border-top:#cccccc" i],
:root[data-theme="dark"] [style*="border-top: #cccccc;" i],
:root[data-theme="dark"] [style*="border-top: #cccccc " i],
:root[data-theme="dark"] [style$="border-top: #cccccc" i],
:root[data-theme="dark"] [style*="border-top:#ddd;" i],
:root[data-theme="dark"] [style*="border-top:#ddd " i],
:root[data-theme="dark"] [style$="border-top:#ddd" i],
:root[data-theme="dark"] [style*="border-top: #ddd;" i],
:root[data-theme="dark"] [style*="border-top: #ddd " i],
:root[data-theme="dark"] [style$="border-top: #ddd" i],
:root[data-theme="dark"] [style*="border-top:#dddddd;" i],
:root[data-theme="dark"] [style*="border-top:#dddddd " i],
:root[data-theme="dark"] [style$="border-top:#dddddd" i],
:root[data-theme="dark"] [style*="border-top: #dddddd;" i],
:root[data-theme="dark"] [style*="border-top: #dddddd " i],
:root[data-theme="dark"] [style$="border-top: #dddddd" i],
:root[data-theme="dark"] [style*="border-top:#e4e4e4;" i],
:root[data-theme="dark"] [style*="border-top:#e4e4e4 " i],
:root[data-theme="dark"] [style$="border-top:#e4e4e4" i],
:root[data-theme="dark"] [style*="border-top: #e4e4e4;" i],
:root[data-theme="dark"] [style*="border-top: #e4e4e4 " i],
:root[data-theme="dark"] [style$="border-top: #e4e4e4" i],
:root[data-theme="dark"] [style*="border-top:#000;" i],
:root[data-theme="dark"] [style*="border-top:#000 " i],
:root[data-theme="dark"] [style$="border-top:#000" i],
:root[data-theme="dark"] [style*="border-top: #000;" i],
:root[data-theme="dark"] [style*="border-top: #000 " i],
:root[data-theme="dark"] [style$="border-top: #000" i],
:root[data-theme="dark"] [style*="border-left:#ccc;" i],
:root[data-theme="dark"] [style*="border-left:#ccc " i],
:root[data-theme="dark"] [style$="border-left:#ccc" i],
:root[data-theme="dark"] [style*="border-left: #ccc;" i],
:root[data-theme="dark"] [style*="border-left: #ccc " i],
:root[data-theme="dark"] [style$="border-left: #ccc" i],
:root[data-theme="dark"] [style*="border-left:#cccccc;" i],
:root[data-theme="dark"] [style*="border-left:#cccccc " i],
:root[data-theme="dark"] [style$="border-left:#cccccc" i],
:root[data-theme="dark"] [style*="border-left: #cccccc;" i],
:root[data-theme="dark"] [style*="border-left: #cccccc " i],
:root[data-theme="dark"] [style$="border-left: #cccccc" i],
:root[data-theme="dark"] [style*="border-left:#ddd;" i],
:root[data-theme="dark"] [style*="border-left:#ddd " i],
:root[data-theme="dark"] [style$="border-left:#ddd" i],
:root[data-theme="dark"] [style*="border-left: #ddd;" i],
:root[data-theme="dark"] [style*="border-left: #ddd " i],
:root[data-theme="dark"] [style$="border-left: #ddd" i],
:root[data-theme="dark"] [style*="border-left:#dddddd;" i],
:root[data-theme="dark"] [style*="border-left:#dddddd " i],
:root[data-theme="dark"] [style$="border-left:#dddddd" i],
:root[data-theme="dark"] [style*="border-left: #dddddd;" i],
:root[data-theme="dark"] [style*="border-left: #dddddd " i],
:root[data-theme="dark"] [style$="border-left: #dddddd" i],
:root[data-theme="dark"] [style*="border-left:#e4e4e4;" i],
:root[data-theme="dark"] [style*="border-left:#e4e4e4 " i],
:root[data-theme="dark"] [style$="border-left:#e4e4e4" i],
:root[data-theme="dark"] [style*="border-left: #e4e4e4;" i],
:root[data-theme="dark"] [style*="border-left: #e4e4e4 " i],
:root[data-theme="dark"] [style$="border-left: #e4e4e4" i],
:root[data-theme="dark"] [style*="border-left:#000;" i],
:root[data-theme="dark"] [style*="border-left:#000 " i],
:root[data-theme="dark"] [style$="border-left:#000" i],
:root[data-theme="dark"] [style*="border-left: #000;" i],
:root[data-theme="dark"] [style*="border-left: #000 " i],
:root[data-theme="dark"] [style$="border-left: #000" i],
:root[data-theme="dark"] [style*="border-right:#ccc;" i],
:root[data-theme="dark"] [style*="border-right:#ccc " i],
:root[data-theme="dark"] [style$="border-right:#ccc" i],
:root[data-theme="dark"] [style*="border-right: #ccc;" i],
:root[data-theme="dark"] [style*="border-right: #ccc " i],
:root[data-theme="dark"] [style$="border-right: #ccc" i],
:root[data-theme="dark"] [style*="border-right:#cccccc;" i],
:root[data-theme="dark"] [style*="border-right:#cccccc " i],
:root[data-theme="dark"] [style$="border-right:#cccccc" i],
:root[data-theme="dark"] [style*="border-right: #cccccc;" i],
:root[data-theme="dark"] [style*="border-right: #cccccc " i],
:root[data-theme="dark"] [style$="border-right: #cccccc" i],
:root[data-theme="dark"] [style*="border-right:#ddd;" i],
:root[data-theme="dark"] [style*="border-right:#ddd " i],
:root[data-theme="dark"] [style$="border-right:#ddd" i],
:root[data-theme="dark"] [style*="border-right: #ddd;" i],
:root[data-theme="dark"] [style*="border-right: #ddd " i],
:root[data-theme="dark"] [style$="border-right: #ddd" i],
:root[data-theme="dark"] [style*="border-right:#dddddd;" i],
:root[data-theme="dark"] [style*="border-right:#dddddd " i],
:root[data-theme="dark"] [style$="border-right:#dddddd" i],
:root[data-theme="dark"] [style*="border-right: #dddddd;" i],
:root[data-theme="dark"] [style*="border-right: #dddddd " i],
:root[data-theme="dark"] [style$="border-right: #dddddd" i],
:root[data-theme="dark"] [style*="border-right:#e4e4e4;" i],
:root[data-theme="dark"] [style*="border-right:#e4e4e4 " i],
:root[data-theme="dark"] [style$="border-right:#e4e4e4" i],
:root[data-theme="dark"] [style*="border-right: #e4e4e4;" i],
:root[data-theme="dark"] [style*="border-right: #e4e4e4 " i],
:root[data-theme="dark"] [style$="border-right: #e4e4e4" i],
:root[data-theme="dark"] [style*="border-right:#000;" i],
:root[data-theme="dark"] [style*="border-right:#000 " i],
:root[data-theme="dark"] [style$="border-right:#000" i],
:root[data-theme="dark"] [style*="border-right: #000;" i],
:root[data-theme="dark"] [style*="border-right: #000 " i],
:root[data-theme="dark"] [style$="border-right: #000" i] { border-color: var(--border) !important; }
:root[data-theme="dark"] [style*="solid #ccc" i],
:root[data-theme="dark"] [style*="solid #cccccc" i],
:root[data-theme="dark"] [style*="solid #ddd" i],
:root[data-theme="dark"] [style*="solid #dddddd" i],
:root[data-theme="dark"] [style*="solid #e4e4e4" i],
:root[data-theme="dark"] [style*="solid #eee" i],
:root[data-theme="dark"] [style*="solid #000" i] { border-color: var(--border) !important; }

/* 22.5 Abas em body.top-navigation: o INSPINIA pinta a aba em hover/foco de
   branco (.top-navigation .nav > li a:hover), o que no tablet fica "preso"
   depois do toque. Mesma especificidade, carregada depois: vence.          */
.top-navigation .nav-tabs > li > a:hover,
.top-navigation .nav-tabs > li > a:focus { background: transparent; color: var(--text); }
.top-navigation .nav-tabs > li.active > a,
.top-navigation .nav-tabs > li.active > a:hover,
.top-navigation .nav-tabs > li.active > a:focus { background: transparent; color: var(--primary-text); }

/* 22.6 Linha do tempo de atendimentos (recepcao/css/timeline.css) */
:root[data-theme="dark"] .timeline:before { background-color: var(--border-strong); }
:root[data-theme="dark"] .timeline:after { border-bottom-color: var(--border-strong); }
:root[data-theme="dark"] .timeline > li > .timeline-panel { background: var(--surface); border-color: var(--border); box-shadow: var(--shadow-xs); border-radius: var(--radius-lg); }
:root[data-theme="dark"] .timeline > li > .timeline-panel:before { border-right-color: var(--border); }
:root[data-theme="dark"] .timeline > li > .timeline-panel:after { border-right-color: var(--surface); }
:root[data-theme="dark"] .timeline > li > .timeline-badge { background-color: var(--surface-sunken); color: var(--text-secondary); box-shadow: 0 0 0 3px var(--surface); }
:root[data-theme="dark"] .timeline-badge.info { background-color: var(--primary) !important; color: var(--on-primary); }
:root[data-theme="dark"] .timeline-badge.success { background-color: var(--success) !important; color: var(--on-success); }
:root[data-theme="dark"] .timeline-badge.primary { background-color: var(--primary) !important; color: var(--on-primary); }
:root[data-theme="dark"] .timeline-badge.warning { background-color: var(--warning-fill) !important; color: #1a1204; }
:root[data-theme="dark"] .timeline-badge.danger { background-color: var(--danger) !important; color: var(--on-danger); }

/* 22.7 Roleta: corretor fora da elegibilidade (.noeleg usa #bbb, que no escuro
   fica MAIS claro que o texto normal e inverte o sentido) */
:root[data-theme="dark"] .noeleg td,
:root[data-theme="dark"] .noeleg .text-success { color: var(--text-muted) !important; opacity: .6; }

/* 22.8 Rede de seguranca, segunda passada (varredura de /roleta e /recepcao):
   cinzas claros de fundo e cinzas medios de texto que faltavam em 22.4      */
:root[data-theme="dark"] [style*="background:#ccc;" i],
:root[data-theme="dark"] [style*="background:#ccc " i],
:root[data-theme="dark"] [style$="background:#ccc" i],
:root[data-theme="dark"] [style*="background: #ccc;" i],
:root[data-theme="dark"] [style*="background: #ccc " i],
:root[data-theme="dark"] [style$="background: #ccc" i],
:root[data-theme="dark"] [style*="background:#cccccc;" i],
:root[data-theme="dark"] [style*="background:#cccccc " i],
:root[data-theme="dark"] [style$="background:#cccccc" i],
:root[data-theme="dark"] [style*="background: #cccccc;" i],
:root[data-theme="dark"] [style*="background: #cccccc " i],
:root[data-theme="dark"] [style$="background: #cccccc" i],
:root[data-theme="dark"] [style*="background:#ddd;" i],
:root[data-theme="dark"] [style*="background:#ddd " i],
:root[data-theme="dark"] [style$="background:#ddd" i],
:root[data-theme="dark"] [style*="background: #ddd;" i],
:root[data-theme="dark"] [style*="background: #ddd " i],
:root[data-theme="dark"] [style$="background: #ddd" i],
:root[data-theme="dark"] [style*="background:#dddddd;" i],
:root[data-theme="dark"] [style*="background:#dddddd " i],
:root[data-theme="dark"] [style$="background:#dddddd" i],
:root[data-theme="dark"] [style*="background: #dddddd;" i],
:root[data-theme="dark"] [style*="background: #dddddd " i],
:root[data-theme="dark"] [style$="background: #dddddd" i],
:root[data-theme="dark"] [style*="background:#dedede;" i],
:root[data-theme="dark"] [style*="background:#dedede " i],
:root[data-theme="dark"] [style$="background:#dedede" i],
:root[data-theme="dark"] [style*="background: #dedede;" i],
:root[data-theme="dark"] [style*="background: #dedede " i],
:root[data-theme="dark"] [style$="background: #dedede" i],
:root[data-theme="dark"] [style*="background:#d5d5d5;" i],
:root[data-theme="dark"] [style*="background:#d5d5d5 " i],
:root[data-theme="dark"] [style$="background:#d5d5d5" i],
:root[data-theme="dark"] [style*="background: #d5d5d5;" i],
:root[data-theme="dark"] [style*="background: #d5d5d5 " i],
:root[data-theme="dark"] [style$="background: #d5d5d5" i],
:root[data-theme="dark"] [style*="background:#cacaca;" i],
:root[data-theme="dark"] [style*="background:#cacaca " i],
:root[data-theme="dark"] [style$="background:#cacaca" i],
:root[data-theme="dark"] [style*="background: #cacaca;" i],
:root[data-theme="dark"] [style*="background: #cacaca " i],
:root[data-theme="dark"] [style$="background: #cacaca" i],
:root[data-theme="dark"] [style*="background:#f1f1f1;" i],
:root[data-theme="dark"] [style*="background:#f1f1f1 " i],
:root[data-theme="dark"] [style$="background:#f1f1f1" i],
:root[data-theme="dark"] [style*="background: #f1f1f1;" i],
:root[data-theme="dark"] [style*="background: #f1f1f1 " i],
:root[data-theme="dark"] [style$="background: #f1f1f1" i],
:root[data-theme="dark"] [style*="background:#f3f3f4;" i],
:root[data-theme="dark"] [style*="background:#f3f3f4 " i],
:root[data-theme="dark"] [style$="background:#f3f3f4" i],
:root[data-theme="dark"] [style*="background: #f3f3f4;" i],
:root[data-theme="dark"] [style*="background: #f3f3f4 " i],
:root[data-theme="dark"] [style$="background: #f3f3f4" i],
:root[data-theme="dark"] [style*="background:#f7f7f7;" i],
:root[data-theme="dark"] [style*="background:#f7f7f7 " i],
:root[data-theme="dark"] [style$="background:#f7f7f7" i],
:root[data-theme="dark"] [style*="background: #f7f7f7;" i],
:root[data-theme="dark"] [style*="background: #f7f7f7 " i],
:root[data-theme="dark"] [style$="background: #f7f7f7" i],
:root[data-theme="dark"] [style*="background:#efefef;" i],
:root[data-theme="dark"] [style*="background:#efefef " i],
:root[data-theme="dark"] [style$="background:#efefef" i],
:root[data-theme="dark"] [style*="background: #efefef;" i],
:root[data-theme="dark"] [style*="background: #efefef " i],
:root[data-theme="dark"] [style$="background: #efefef" i],
:root[data-theme="dark"] [style*="background:#e5e5e5;" i],
:root[data-theme="dark"] [style*="background:#e5e5e5 " i],
:root[data-theme="dark"] [style$="background:#e5e5e5" i],
:root[data-theme="dark"] [style*="background: #e5e5e5;" i],
:root[data-theme="dark"] [style*="background: #e5e5e5 " i],
:root[data-theme="dark"] [style$="background: #e5e5e5" i],
:root[data-theme="dark"] [style*="background:#e6e6e6;" i],
:root[data-theme="dark"] [style*="background:#e6e6e6 " i],
:root[data-theme="dark"] [style$="background:#e6e6e6" i],
:root[data-theme="dark"] [style*="background: #e6e6e6;" i],
:root[data-theme="dark"] [style*="background: #e6e6e6 " i],
:root[data-theme="dark"] [style$="background: #e6e6e6" i],
:root[data-theme="dark"] [style*="background:#e7eaec;" i],
:root[data-theme="dark"] [style*="background:#e7eaec " i],
:root[data-theme="dark"] [style$="background:#e7eaec" i],
:root[data-theme="dark"] [style*="background: #e7eaec;" i],
:root[data-theme="dark"] [style*="background: #e7eaec " i],
:root[data-theme="dark"] [style$="background: #e7eaec" i],
:root[data-theme="dark"] [style*="background-color:#ccc;" i],
:root[data-theme="dark"] [style*="background-color:#ccc " i],
:root[data-theme="dark"] [style$="background-color:#ccc" i],
:root[data-theme="dark"] [style*="background-color: #ccc;" i],
:root[data-theme="dark"] [style*="background-color: #ccc " i],
:root[data-theme="dark"] [style$="background-color: #ccc" i],
:root[data-theme="dark"] [style*="background-color:#cccccc;" i],
:root[data-theme="dark"] [style*="background-color:#cccccc " i],
:root[data-theme="dark"] [style$="background-color:#cccccc" i],
:root[data-theme="dark"] [style*="background-color: #cccccc;" i],
:root[data-theme="dark"] [style*="background-color: #cccccc " i],
:root[data-theme="dark"] [style$="background-color: #cccccc" i],
:root[data-theme="dark"] [style*="background-color:#ddd;" i],
:root[data-theme="dark"] [style*="background-color:#ddd " i],
:root[data-theme="dark"] [style$="background-color:#ddd" i],
:root[data-theme="dark"] [style*="background-color: #ddd;" i],
:root[data-theme="dark"] [style*="background-color: #ddd " i],
:root[data-theme="dark"] [style$="background-color: #ddd" i],
:root[data-theme="dark"] [style*="background-color:#dddddd;" i],
:root[data-theme="dark"] [style*="background-color:#dddddd " i],
:root[data-theme="dark"] [style$="background-color:#dddddd" i],
:root[data-theme="dark"] [style*="background-color: #dddddd;" i],
:root[data-theme="dark"] [style*="background-color: #dddddd " i],
:root[data-theme="dark"] [style$="background-color: #dddddd" i],
:root[data-theme="dark"] [style*="background-color:#dedede;" i],
:root[data-theme="dark"] [style*="background-color:#dedede " i],
:root[data-theme="dark"] [style$="background-color:#dedede" i],
:root[data-theme="dark"] [style*="background-color: #dedede;" i],
:root[data-theme="dark"] [style*="background-color: #dedede " i],
:root[data-theme="dark"] [style$="background-color: #dedede" i],
:root[data-theme="dark"] [style*="background-color:#d5d5d5;" i],
:root[data-theme="dark"] [style*="background-color:#d5d5d5 " i],
:root[data-theme="dark"] [style$="background-color:#d5d5d5" i],
:root[data-theme="dark"] [style*="background-color: #d5d5d5;" i],
:root[data-theme="dark"] [style*="background-color: #d5d5d5 " i],
:root[data-theme="dark"] [style$="background-color: #d5d5d5" i],
:root[data-theme="dark"] [style*="background-color:#cacaca;" i],
:root[data-theme="dark"] [style*="background-color:#cacaca " i],
:root[data-theme="dark"] [style$="background-color:#cacaca" i],
:root[data-theme="dark"] [style*="background-color: #cacaca;" i],
:root[data-theme="dark"] [style*="background-color: #cacaca " i],
:root[data-theme="dark"] [style$="background-color: #cacaca" i],
:root[data-theme="dark"] [style*="background-color:#f1f1f1;" i],
:root[data-theme="dark"] [style*="background-color:#f1f1f1 " i],
:root[data-theme="dark"] [style$="background-color:#f1f1f1" i],
:root[data-theme="dark"] [style*="background-color: #f1f1f1;" i],
:root[data-theme="dark"] [style*="background-color: #f1f1f1 " i],
:root[data-theme="dark"] [style$="background-color: #f1f1f1" i],
:root[data-theme="dark"] [style*="background-color:#f3f3f4;" i],
:root[data-theme="dark"] [style*="background-color:#f3f3f4 " i],
:root[data-theme="dark"] [style$="background-color:#f3f3f4" i],
:root[data-theme="dark"] [style*="background-color: #f3f3f4;" i],
:root[data-theme="dark"] [style*="background-color: #f3f3f4 " i],
:root[data-theme="dark"] [style$="background-color: #f3f3f4" i],
:root[data-theme="dark"] [style*="background-color:#f7f7f7;" i],
:root[data-theme="dark"] [style*="background-color:#f7f7f7 " i],
:root[data-theme="dark"] [style$="background-color:#f7f7f7" i],
:root[data-theme="dark"] [style*="background-color: #f7f7f7;" i],
:root[data-theme="dark"] [style*="background-color: #f7f7f7 " i],
:root[data-theme="dark"] [style$="background-color: #f7f7f7" i],
:root[data-theme="dark"] [style*="background-color:#efefef;" i],
:root[data-theme="dark"] [style*="background-color:#efefef " i],
:root[data-theme="dark"] [style$="background-color:#efefef" i],
:root[data-theme="dark"] [style*="background-color: #efefef;" i],
:root[data-theme="dark"] [style*="background-color: #efefef " i],
:root[data-theme="dark"] [style$="background-color: #efefef" i],
:root[data-theme="dark"] [style*="background-color:#e5e5e5;" i],
:root[data-theme="dark"] [style*="background-color:#e5e5e5 " i],
:root[data-theme="dark"] [style$="background-color:#e5e5e5" i],
:root[data-theme="dark"] [style*="background-color: #e5e5e5;" i],
:root[data-theme="dark"] [style*="background-color: #e5e5e5 " i],
:root[data-theme="dark"] [style$="background-color: #e5e5e5" i],
:root[data-theme="dark"] [style*="background-color:#e6e6e6;" i],
:root[data-theme="dark"] [style*="background-color:#e6e6e6 " i],
:root[data-theme="dark"] [style$="background-color:#e6e6e6" i],
:root[data-theme="dark"] [style*="background-color: #e6e6e6;" i],
:root[data-theme="dark"] [style*="background-color: #e6e6e6 " i],
:root[data-theme="dark"] [style$="background-color: #e6e6e6" i],
:root[data-theme="dark"] [style*="background-color:#e7eaec;" i],
:root[data-theme="dark"] [style*="background-color:#e7eaec " i],
:root[data-theme="dark"] [style$="background-color:#e7eaec" i],
:root[data-theme="dark"] [style*="background-color: #e7eaec;" i],
:root[data-theme="dark"] [style*="background-color: #e7eaec " i],
:root[data-theme="dark"] [style$="background-color: #e7eaec" i] { background-color: var(--surface-sunken) !important; }
:root[data-theme="dark"] [style*="color:#666;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#666 " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color:#666" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #666;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #666 " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color: #666" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#666666;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#666666 " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color:#666666" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #666666;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #666666 " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color: #666666" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#646464;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#646464 " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color:#646464" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #646464;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #646464 " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color: #646464" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#5e5e5e;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#5e5e5e " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color:#5e5e5e" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #5e5e5e;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #5e5e5e " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color: #5e5e5e" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#1f2a3c;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color:#1f2a3c " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color:#1f2a3c" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #1f2a3c;" i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style*="color: #1f2a3c " i]:not([style*="background-color" i]),
:root[data-theme="dark"] [style$="color: #1f2a3c" i]:not([style*="background-color" i]) { color: var(--text-secondary) !important; }
