/* NEXEI 3.1.2 - alinhamento de ações, avatar assíncrono, Assistant e recuperação de senha */

/* Barra de ações: uma linha estável, sem rolagem ou deslocamento */
body.page-view .details .actions{
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:0 0 12px 0!important;
  padding:4px 2px!important;
  overflow:hidden!important;
  scrollbar-width:none!important;
  transform:none!important;
  left:auto!important;
}
body.page-view .details .actions::-webkit-scrollbar{display:none!important}
body.page-view .details .actions>*{
  flex:0 0 33px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:33px!important;
  min-width:33px!important;
  max-width:33px!important;
  height:33px!important;
  min-height:33px!important;
  max-height:33px!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
  vertical-align:middle!important;
  box-sizing:border-box!important;
  position:static!important;
  transform:none!important;
}
body.page-view .details .actions>form{display:flex!important;align-items:center!important;justify-content:center!important;border:0!important;background:transparent!important}
body.page-view .details .actions a,
body.page-view .details .actions button,
body.page-view .details .actions .icon-btn,
body.page-view .details .actions form button{
  flex:0 0 33px!important;
  width:33px!important;
  min-width:33px!important;
  max-width:33px!important;
  height:33px!important;
  min-height:33px!important;
  max-height:33px!important;
  margin:0!important;
  padding:0!important;
  border-radius:10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  box-sizing:border-box!important;
  position:static!important;
  transform:none!important;
}
body.page-view .details .actions img,
body.page-view .details .actions svg,
body.page-view .details .actions .action-icon-img,
body.page-view .details .actions .nexei-icon-real,
body.page-view .details .actions .nexei-icon-lite{
  display:block!important;
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  min-height:19px!important;
  max-width:19px!important;
  max-height:19px!important;
  margin:auto!important;
  object-fit:contain!important;
  vertical-align:middle!important;
}

/* Upload assíncrono do avatar */
.profile-avatar-upload-status-v312{min-height:20px;font-size:12px;font-weight:700;color:#64748b;padding:2px 4px}
.profile-avatar-upload-status-v312.loading{color:#4338ca}
.profile-avatar-upload-status-v312.success{color:#15803d}
.profile-avatar-upload-status-v312.error{color:#b91c1c}
.profile-crop-actions-v311 button:disabled{opacity:.65;cursor:wait}
.sidebar-avatar{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;flex:0 0 38px!important}

/* Assistant: ações adicionais e rolagem consistente */
.assistant-head-actions{display:flex!important;align-items:center!important;gap:6px!important}
.assistant-head-actions button{flex:0 0 32px!important;width:32px!important;height:32px!important;min-width:32px!important;padding:0!important;font-size:16px!important;line-height:1!important}
.assistant-history{scrollbar-gutter:stable!important;overflow-anchor:auto!important}
.assistant-msg p{white-space:pre-wrap!important;margin:0!important}
.assistant-msg p strong{font-weight:850;color:inherit}

/* Login e recuperação de senha */
.login-options-v312{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 4px}
.login-options-v312 a,.password-back-link-v312{font-size:13px;font-weight:750;color:#4338ca;text-decoration:none}
.password-recovery-wrap-v312 .login-card{max-width:470px}
.password-recovery-card-v312 h1{margin:10px 0 8px;font-size:25px}
.password-recovery-card-v312>p{color:#64748b;line-height:1.55;margin:0 0 16px}
.password-recovery-card-v312 label{display:grid;gap:7px;text-align:left;font-weight:750;color:#334155}
.password-recovery-card-v312 .password-back-link-v312{display:block;text-align:center;margin-top:14px}
.password-recovery-button-v312{display:block;text-align:center;text-decoration:none;padding:13px 16px;border-radius:12px;margin-top:16px}
.password-reset-form-v312{display:grid;gap:14px}
.password-field-v312{position:relative;display:flex;align-items:center}
.password-field-v312 input{width:100%!important;padding-right:46px!important}
.password-field-v312 button{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:36px!important;height:36px!important;min-width:36px!important;padding:0!important;border-radius:9px!important;background:#f1f5f9!important;color:#475569!important;border:1px solid #e2e8f0!important}
.password-field-v312 button.is-visible{background:#e0e7ff!important;color:#4338ca!important}
.password-rules-v312{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:13px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
.password-rules-v312 span{position:relative;padding-left:20px;font-size:11px;color:#64748b;line-height:1.35}
.password-rules-v312 span::before{content:'×';position:absolute;left:0;top:-1px;width:14px;height:14px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fee2e2;color:#b91c1c;font-size:10px;font-weight:900}
.password-rules-v312 span.ok{color:#166534}
.password-rules-v312 span.ok::before{content:'✓';background:#dcfce7;color:#15803d}
.password-reset-form-v312 button[type=submit]:disabled{opacity:.52;cursor:not-allowed}

@media(max-width:520px){
  body.page-view .details .actions{gap:5px!important;padding-left:1px!important;padding-right:1px!important}
  body.page-view .details .actions>*,body.page-view .details .actions a,body.page-view .details .actions button,body.page-view .details .actions .icon-btn,body.page-view .details .actions form button{flex-basis:31px!important;width:31px!important;min-width:31px!important;max-width:31px!important;height:31px!important;min-height:31px!important;max-height:31px!important}
  body.page-view .details .actions img,body.page-view .details .actions svg,body.page-view .details .actions .action-icon-img{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important}
  .assistant-head-actions{gap:4px!important}.assistant-head-actions button{width:29px!important;height:29px!important;min-width:29px!important;flex-basis:29px!important;font-size:14px!important}
  .password-rules-v312{grid-template-columns:1fr}
}

/* Padronização das ações nas tabelas administrativas */
.admin-table .row-actions,.table-actions,.list-actions{
  display:flex!important;
  flex-flow:row wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
}
.admin-table .row-actions>form,.table-actions>form,.list-actions>form{
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
}
