/* ImportTech — Administração | identidade cromática harmonizada
 * Exclusivo ao painel #aba-admin. Sem alterações em dados, autenticação ou regras.
 * Marinho + azul-petróleo como base; verde reservado ao sucesso; vermelho ao risco.
 */
body.itw-app #aba-admin{
  --adm-canvas:#f6f9fc;
  --adm-card:#ffffff;
  --adm-raised:#f0f6fa;
  --adm-soft:#f9fbfd;
  --adm-border:#d8e4ee;
  --adm-border-active:#80b7c7;
  --adm-heading:#213a50;
  --adm-text:#344e64;
  --adm-muted:#647d91;
  --adm-subtle:#8296a8;
  --adm-accent:#126a88;
  --adm-accent-strong:#105a79;
  --adm-accent-soft:#e7f3f7;
  --adm-accent-stroke:#aed5df;
  --adm-affirm-bg:#edf8f3;
  --adm-affirm-border:#bfe5d4;
  --adm-affirm-text:#216c53;
  --adm-danger:#a94452;
  --adm-danger-bg:#fff4f5;
  --adm-danger-border:#edc8ce;
  --adm-shadow:0 9px 27px rgba(21,55,83,.055);
  --adm-focus:rgba(25,135,160,.16);
  color:var(--adm-text)!important;
  background:var(--adm-canvas)!important;
  border-color:var(--adm-border)!important;
  color-scheme:light;
}
body.itw-app.itw-dark #aba-admin{
  --adm-canvas:#101e2f;
  --adm-card:#192c41;
  --adm-raised:#223a51;
  --adm-soft:#1c3148;
  --adm-border:#365069;
  --adm-border-active:#669bad;
  --adm-heading:#edf6ff;
  --adm-text:#d5e6f4;
  --adm-muted:#acc1d5;
  --adm-subtle:#93acc4;
  --adm-accent:#8cdaec;
  --adm-accent-strong:#0d6582;
  --adm-accent-soft:#20445c;
  --adm-accent-stroke:#497e98;
  --adm-affirm-bg:#1b413a;
  --adm-affirm-border:#3a7864;
  --adm-affirm-text:#b2f0d8;
  --adm-danger:#ffb0b9;
  --adm-danger-bg:#462c39;
  --adm-danger-border:#85515b;
  --adm-shadow:0 12px 28px rgba(1,10,22,.18);
  --adm-focus:rgba(103,201,226,.20);
  color-scheme:dark;
}
/* Cabeçalho e total de empresas: hierarquia clara sem excesso de cores. */
body.itw-app #aba-admin .admin-page-head{
  background:transparent!important;
  border-bottom:1px solid var(--adm-border)!important;
  color:var(--adm-heading)!important;
}
body.itw-app #aba-admin .admin-kicker,
body.itw-app #aba-admin .admin-panel-head>div>span{
  color:var(--adm-accent)!important;
  font-weight:800!important;
}
body.itw-app #aba-admin .admin-page-head h1,
body.itw-app #aba-admin .admin-panel-head h2,
body.itw-app #aba-admin .it-current-admin strong{
  color:var(--adm-heading)!important;
}
body.itw-app #aba-admin .admin-page-head p,
body.itw-app #aba-admin .admin-panel-head span:not(.admin-edit-badge){
  color:var(--adm-muted)!important;
}
body.itw-app #aba-admin .admin-count-card{
  border:1px solid var(--adm-accent-stroke)!important;
  background:linear-gradient(145deg,var(--adm-accent-soft),var(--adm-card))!important;
  box-shadow:var(--adm-shadow)!important;
  color:var(--adm-text)!important;
}
body.itw-app #aba-admin .admin-count-card strong{color:var(--adm-accent)!important}
body.itw-app #aba-admin .admin-count-card span{color:var(--adm-muted)!important}
/* Cartões, divisórias e área do administrador logado. */
body.itw-app #aba-admin .admin-panel{
  background:var(--adm-card)!important;
  border:1px solid var(--adm-border)!important;
  box-shadow:var(--adm-shadow)!important;
  color:var(--adm-text)!important;
}
body.itw-app #aba-admin .admin-panel-head{
  border-bottom:1px solid var(--adm-border)!important;
}
body.itw-app #aba-admin :is(.it-current-admin,.it-access-box,.it-access-limit){
  background:var(--adm-raised)!important;
  border:1px solid var(--adm-border)!important;
  color:var(--adm-text)!important;
}
body.itw-app #aba-admin :is(.it-current-admin span,.it-current-admin small,.it-panel-help,.it-access-title,.admin-field-help){
  color:var(--adm-muted)!important;
}
body.itw-app #aba-admin .it-access-title{font-weight:800!important}
body.itw-app #aba-admin :is(.admin-edit-badge,.it-role-pill){
  background:var(--adm-accent-soft)!important;
  color:var(--adm-accent)!important;
  border:1px solid var(--adm-accent-stroke)!important;
}
/* Controle de permissões — estados selecionados inequívocos. */
body.itw-app #aba-admin :is(.it-access-types label,.it-permissions-grid label){
  background:var(--adm-card)!important;
  border:1px solid var(--adm-border)!important;
  color:var(--adm-text)!important;
  transition:background .18s ease,border-color .18s ease!important;
}
body.itw-app #aba-admin :is(.it-access-types label,.it-permissions-grid label):hover{
  background:var(--adm-soft)!important;
  border-color:var(--adm-border-active)!important;
}
body.itw-app #aba-admin :is(.it-access-types label,.it-permissions-grid label):has(input:checked){
  background:var(--adm-accent-soft)!important;
  border-color:var(--adm-accent-stroke)!important;
  color:var(--adm-heading)!important;
}
body.itw-app #aba-admin :is(input[type=checkbox],input[type=radio]){
  accent-color:var(--adm-accent-strong)!important;
}
/* Empresas, usuários, permissões expandidas e limites de acesso. */
body.itw-app #aba-admin :is(.admin-company-card,.it-user-row){
  background:var(--adm-soft)!important;
  border:1px solid var(--adm-border)!important;
  box-shadow:none!important;
  color:var(--adm-text)!important;
}
body.itw-app #aba-admin :is(.admin-company-card,.it-user-row):hover{
  border-color:var(--adm-border-active)!important;
  background:var(--adm-raised)!important;
}
body.itw-app #aba-admin :is(.it-user-perm-editor,.it-company-users){
  border-top-color:var(--adm-border)!important;
  background:transparent!important;
}
body.itw-app #aba-admin .admin-company-name,
body.itw-app #aba-admin .it-user-login code,
body.itw-app #aba-admin .it-user-security strong,
body.itw-app #aba-admin .it-access-limit-copy strong,
body.itw-app #aba-admin .it-company-users-title,
body.itw-app #aba-admin .it-user-perm-editor label{
  color:var(--adm-heading)!important;
}
body.itw-app #aba-admin :is(.admin-company-meta,.admin-company-meta strong,.admin-company-aliases,
  .it-user-login span,.it-user-security,.it-access-limit-copy span,.it-company-users-title span,
  .it-user-perm-editor label,.it-no-access,.admin-empty){
  color:var(--adm-muted)!important;
}
body.itw-app #aba-admin .admin-company-code{
  color:var(--adm-accent)!important;
  background:var(--adm-accent-soft)!important;
  border-color:var(--adm-accent-stroke)!important;
}
body.itw-app #aba-admin .it-user-row .it-role-pill{
  margin-top:5px!important;
  border-radius:999px!important;
}
body.itw-app #aba-admin .it-user-perm-editor input{accent-color:var(--adm-accent-strong)!important}
body.itw-app #aba-admin .it-access-limit-form input{
  background:var(--adm-card)!important;
  border-color:var(--adm-border)!important;
  color:var(--adm-heading)!important;
}
/* Campos de formulário: superfícies coerentes e indicação de foco acessível. */
body.itw-app #aba-admin :is(.form-group label,.admin-search-wrap label){
  color:var(--adm-muted)!important;
}
body.itw-app #aba-admin :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){
  background:var(--adm-card)!important;
  color:var(--adm-heading)!important;
  -webkit-text-fill-color:var(--adm-heading)!important;
  border:1px solid var(--adm-border)!important;
  box-shadow:none!important;
  color-scheme:inherit!important;
}
body.itw-app.itw-dark #aba-admin :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){
  background:var(--adm-soft)!important;
}
body.itw-app #aba-admin :is(input,textarea)::placeholder{
  color:var(--adm-subtle)!important;
  -webkit-text-fill-color:var(--adm-subtle)!important;
  opacity:1;
}
body.itw-app #aba-admin :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus-visible{
  outline:2px solid var(--adm-accent)!important;
  outline-offset:1px!important;
  border-color:var(--adm-border-active)!important;
  box-shadow:0 0 0 3px var(--adm-focus)!important;
}
/* Botões: ações principais em azul-petróleo, neutros discretos, remoção em vermelho. */
body.itw-app #aba-admin :is(.admin-save-btn,.it-create-access){
  background:linear-gradient(135deg,#176b88,#0d5979)!important;
  color:#fff!important;
  border:1px solid #155b78!important;
  box-shadow:0 6px 16px rgba(17,89,120,.16)!important;
}
body.itw-app #aba-admin :is(.admin-save-btn,.it-create-access):hover:not(:disabled){
  background:linear-gradient(135deg,#197b9a,#116787)!important;
  box-shadow:0 8px 20px rgba(17,89,120,.22)!important;
}
body.itw-app #aba-admin .admin-cancel-btn{
  background:var(--adm-raised)!important;
  border:1px solid var(--adm-border)!important;
  color:var(--adm-text)!important;
  box-shadow:none!important;
}
body.itw-app #aba-admin .admin-mini-btn{
  background:var(--adm-card)!important;
  color:var(--adm-text)!important;
  border:1px solid var(--adm-border)!important;
}
body.itw-app #aba-admin .admin-mini-btn:hover:not(:disabled){
  background:var(--adm-accent-soft)!important;
  border-color:var(--adm-accent-stroke)!important;
  color:var(--adm-accent)!important;
}
body.itw-app #aba-admin .admin-mini-btn.users{
  color:var(--adm-accent)!important;
}
body.itw-app #aba-admin .admin-mini-btn.save{
  color:var(--adm-affirm-text)!important;
  background:var(--adm-affirm-bg)!important;
  border-color:var(--adm-affirm-border)!important;
}
body.itw-app #aba-admin .admin-mini-btn.danger{
  color:var(--adm-danger)!important;
  background:var(--adm-danger-bg)!important;
  border-color:var(--adm-danger-border)!important;
}
body.itw-app #aba-admin .admin-mini-btn.danger:hover{
  filter:brightness(.96);
}
body.itw-app #aba-admin button:disabled{opacity:.5!important;cursor:not-allowed!important}
body.itw-app #aba-admin :is(button,label:has(input)):focus-within{outline-offset:2px}
/* Mensagens administrativas: significado preservado em ambas as paletas. */
body.itw-app #aba-admin .admin-notice{
  background:var(--adm-affirm-bg)!important;
  border:1px solid var(--adm-affirm-border)!important;
  color:var(--adm-affirm-text)!important;
}
body.itw-app #aba-admin .admin-notice-icon{
  color:#fff!important;
  background:#178668!important;
  box-shadow:none!important;
}
body.itw-app #aba-admin .admin-notice :is(strong,p){
  color:var(--adm-affirm-text)!important;
}
body.itw-app #aba-admin .admin-form-message.error{
  background:var(--adm-danger-bg)!important;
  border-color:var(--adm-danger-border)!important;
  color:var(--adm-danger)!important;
}
body.itw-app #aba-admin .admin-form-message.success{
  background:var(--adm-affirm-bg)!important;
  border-color:var(--adm-affirm-border)!important;
  color:var(--adm-affirm-text)!important;
}
body.itw-app #aba-admin .admin-form-message.info{
  background:var(--adm-accent-soft)!important;
  border-color:var(--adm-accent-stroke)!important;
  color:var(--adm-accent)!important;
}
body.itw-app #aba-admin .it-permission-denied{
  color:var(--adm-danger)!important;
  background:var(--adm-danger-bg)!important;
  border-color:var(--adm-danger-border)!important;
}
@media(prefers-reduced-motion:reduce){
  body.itw-app #aba-admin :is(.it-access-types label,.it-permissions-grid label){transition:none!important}
}

/* Precedência do tema escuro: as regras anteriores de workspace usam maior
   especificidade. Estes seletores garantem que a paleta ADM seja a aplicada. */
body.itw-app.itw-dark #aba-admin .admin-page-head{
  background:transparent!important;
  border-bottom-color:var(--adm-border)!important;
}
body.itw-app.itw-dark #aba-admin :is(.admin-panel,.it-current-admin){
  background:var(--adm-card)!important;
  color:var(--adm-text)!important;
  border-color:var(--adm-border)!important;
}
body.itw-app.itw-dark #aba-admin .it-current-admin{
  background:var(--adm-raised)!important;
}
body.itw-app.itw-dark #aba-admin .admin-count-card{
  background:linear-gradient(145deg,var(--adm-accent-soft),var(--adm-card))!important;
  border-color:var(--adm-accent-stroke)!important;
}
body.itw-app.itw-dark #aba-admin .admin-count-card strong,
body.itw-app.itw-dark #aba-admin .admin-kicker,
body.itw-app.itw-dark #aba-admin .admin-panel-head>div>span{
  color:var(--adm-accent)!important;
}
body.itw-app.itw-dark #aba-admin :is(.admin-panel-head h2,.admin-page-head h1){
  color:var(--adm-heading)!important;
}
body.itw-app.itw-dark #aba-admin :is(.admin-page-head p,.admin-count-card span,.admin-field-help,.it-access-title,.it-current-admin span,.it-current-admin small){
  color:var(--adm-muted)!important;
}
body.itw-app.itw-dark #aba-admin :is(.it-access-box,.it-user-row,.it-user-perm-editor,.it-permissions-grid label,.it-access-types label){
  border-color:var(--adm-border)!important;
  color:var(--adm-text)!important;
}
body.itw-app.itw-dark #aba-admin .it-access-box{background:var(--adm-raised)!important}
body.itw-app.itw-dark #aba-admin :is(.it-user-row,.it-access-types label,.it-permissions-grid label){
  background:var(--adm-soft)!important;
}
body.itw-app.itw-dark #aba-admin :is(.it-permissions-grid label,.it-access-types label):has(input:checked){
  background:var(--adm-accent-soft)!important;
  border-color:var(--adm-accent-stroke)!important;
  color:var(--adm-heading)!important;
}
body.itw-app.itw-dark #aba-admin :is(.admin-edit-badge,.it-role-pill){
  background:var(--adm-accent-soft)!important;
  border-color:var(--adm-accent-stroke)!important;
  color:var(--adm-accent)!important;
}
body.itw-app.itw-dark #aba-admin .admin-notice{
  background:var(--adm-affirm-bg)!important;
  color:var(--adm-affirm-text)!important;
  border-color:var(--adm-affirm-border)!important;
}
body.itw-app.itw-dark #aba-admin .admin-notice :is(strong,p){
  color:var(--adm-affirm-text)!important;
}
