
/* =========================================================
   MARTINS SELECT — PADRÃO PRETO/BRANCO + EFEITOS AMARELOS
   Mensagens verdes / alertas e erros vermelhos.
   Aplicação global em todo o site.
   ========================================================= */
:root{
  --ms-black:#000!important;
  --ms-black-2:#050505!important;
  --ms-white:#fff!important;
  --ms-muted:rgba(255,255,255,.66)!important;
  --ms-line:rgba(255,255,255,.12)!important;

  --ms-yellow:#f5c542!important;
  --ms-yellow-2:#ffe08a!important;
  --ms-yellow-3:#b98a16!important;
  --ms-yellow-soft:rgba(245,197,66,.13)!important;
  --ms-yellow-line:rgba(245,197,66,.46)!important;

  --ms-success:#22c55e!important;
  --ms-success-2:#86efac!important;
  --ms-success-bg:rgba(34,197,94,.12)!important;
  --ms-success-line:rgba(34,197,94,.44)!important;

  --ms-error:#ef4444!important;
  --ms-error-2:#fecaca!important;
  --ms-error-bg:rgba(239,68,68,.13)!important;
  --ms-error-line:rgba(239,68,68,.48)!important;

  --gold:var(--ms-yellow)!important;
  --gold2:var(--ms-yellow-2)!important;
  --ms-gold:var(--ms-yellow)!important;
  --ms-gold-2:var(--ms-yellow-2)!important;
  --ms-gold-line:var(--ms-yellow-line)!important;
  --perfil-gold:var(--ms-yellow)!important;
  --perfil-gold-2:var(--ms-yellow-2)!important;
}

html,
body{
  background:
    radial-gradient(circle at 50% -18%,rgba(255,255,255,.065),transparent 36%),
    linear-gradient(180deg,#000 0%,#050505 52%,#000 100%)!important;
  color:#fff!important;
  overflow-x:hidden!important;
}

body *,
body *::before,
body *::after{
  box-shadow:none!important;
}

/* Fundo/cards sempre preto, branco e cinza */
body .ms-card,
body .ms-premium-panel,
body .ms-service-card,
body .ms-cta,
body .ms-side-box,
body .panel,
body .card,
body .form-card,
body .table-card,
body .reports-card,
body .ticket-card,
body .profile-card,
body .perfil-card,
body .perfil-hero,
body .login-card,
body .login-panel,
body .side,
body .side-item,
body .info-item,
body .perfil-info-item,
body .client-block,
body .service-card,
body .plan-card,
body .process-card,
body .feature-card{
  border-color:rgba(255,255,255,.12)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.055),transparent 42%),
    linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.014))!important;
}

/* Efeitos amarelos: links, detalhes, badges e destaques */
body a{
  color:var(--ms-yellow)!important;
  transition:color .22s ease, background .22s ease, border-color .22s ease, transform .22s ease!important;
}

body a:hover{
  color:var(--ms-yellow-2)!important;
}

/* Menu superior continua limpo no padrão preto/branco, com hover amarelo suave */
body header a,
body .admin-clean-topbar a,
body .admin-clean-nav a,
body .ms-final-header a,
body .ms-final-nav a,
body .site-topbar a,
body .site-nav a,
body .ref-topbar a,
body .ref-nav a,
body .lux-nav a,
body .ms-site-header a,
body .ms-site-nav a,
body .cadastro-menu-ok-nav a,
body nav[aria-label="Menu principal"] a{
  color:#fff!important;
}

body header a:hover,
body header a.active,
body .admin-clean-nav a:hover,
body .admin-clean-nav a.active,
body .ms-final-nav a:hover,
body .ms-final-nav a.active,
body .site-nav a:hover,
body .site-nav a.active,
body .ref-nav a:hover,
body .ref-nav a.active,
body .lux-nav a:hover,
body .lux-nav a.active,
body .ms-site-nav a:hover,
body .ms-site-nav a.active,
body .cadastro-menu-ok-nav a:hover,
body .cadastro-menu-ok-nav a.active{
  color:var(--ms-yellow-2)!important;
}

/* Botões amarelos com efeito */
body .ms-btn,
body .btn,
body button,
body input[type="submit"],
body .profile-btn,
body .perfil-btn,
body .login-btn,
body .blue-access-btn{
  background:linear-gradient(180deg,var(--ms-yellow-2) 0%,var(--ms-yellow) 52%,var(--ms-yellow-3) 100%)!important;
  color:#050505!important;
  border:1px solid var(--ms-yellow-line)!important;
  font-weight:950!important;
  box-shadow:0 10px 28px rgba(245,197,66,.14)!important;
  transition:background .22s ease, color .22s ease, border-color .22s ease, transform .22s ease!important;
}

body .ms-btn:hover,
body .btn:hover,
body button:hover,
body input[type="submit"]:hover,
body .profile-btn:hover,
body .perfil-btn:hover,
body .login-btn:hover,
body .blue-access-btn:hover{
  background:linear-gradient(180deg,#fff0ae 0%,var(--ms-yellow) 54%,#c79012 100%)!important;
  color:#050505!important;
  border-color:rgba(255,224,138,.80)!important;
  transform:translateY(-1px)!important;
}

/* Botões secundários */
body .ms-btn.ghost,
body .btn.ghost,
body .btn.secondary,
body .profile-btn.ghost,
body .perfil-btn.ghost,
body .login-btn.ghost,
body .ms-footer-admin-link{
  background:rgba(245,197,66,.075)!important;
  color:var(--ms-yellow-2)!important;
  border:1px solid var(--ms-yellow-line)!important;
}

body .ms-btn.ghost:hover,
body .btn.ghost:hover,
body .btn.secondary:hover,
body .profile-btn.ghost:hover,
body .perfil-btn.ghost:hover,
body .login-btn.ghost:hover,
body .ms-footer-admin-link:hover{
  background:linear-gradient(180deg,var(--ms-yellow-2),var(--ms-yellow))!important;
  color:#050505!important;
}

/* Títulos pequenos, linhas e detalhes amarelos */
body .ms-kicker,
body .kicker,
body .perfil-kicker,
body .profile-kicker,
body .login-kicker,
body .card-title span,
body .perfil-card-head span,
body .badge,
body .ms-plan-badge,
body .ms-plan-meta,
body .ms-plan-meta strong{
  color:var(--ms-yellow)!important;
}

body .ms-kicker::before,
body .kicker::before,
body .perfil-kicker::before,
body .profile-kicker::before,
body .login-kicker::before,
body .ms-list li::before,
body .ms-detail-list li::before,
body .ms-service-card li::before,
body .ms-plan-foot span::before{
  background:var(--ms-yellow)!important;
  border-color:var(--ms-yellow)!important;
}

body .highlight,
body .destaque,
body .perfil-info-item.destaque,
body .info-item.highlight,
body .side-item.green,
body .featured{
  border-color:var(--ms-yellow-line)!important;
  background:rgba(245,197,66,.055)!important;
}

/* Campos com foco amarelo */
body input,
body select,
body textarea{
  background:rgba(0,0,0,.44)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.14)!important;
}

body input:focus,
body select:focus,
body textarea:focus{
  border-color:var(--ms-yellow-line)!important;
  outline:none!important;
}

/* Ícones sociais amarelos */
body .ms-social-link{
  color:var(--ms-yellow-2)!important;
  border-color:var(--ms-yellow-line)!important;
  background:rgba(245,197,66,.075)!important;
}

body .ms-social-link:hover{
  color:#050505!important;
  background:linear-gradient(180deg,var(--ms-yellow-2),var(--ms-yellow))!important;
}

/* Mensagens de alteração/modificação/sucesso: VERDE */
body .success,
body .sucesso,
body .mensagem,
body .message.success,
body .alert.success,
body .alert.green,
body .notice.success,
body .perfil-alert.success,
body .profile-alert.success,
body .login-note.success,
body .flash.success,
body .status-success,
body [class*="success"],
body [class*="sucesso"]{
  color:var(--ms-success-2)!important;
  background:var(--ms-success-bg)!important;
  border-color:var(--ms-success-line)!important;
}

/* Alertas e erros: VERMELHO */
body .error,
body .erro,
body .danger,
body .alert.error,
body .alert.danger,
body .notice.error,
body .perfil-alert.error,
body .profile-alert.error,
body .login-note.error,
body .flash.error,
body .status-error,
body .senha-aviso.show,
body [class*="error"],
body [class*="erro"],
body [class*="danger"]{
  color:var(--ms-error-2)!important;
  background:var(--ms-error-bg)!important;
  border-color:var(--ms-error-line)!important;
}

/* Campos com erro */
body input.field-error,
body select.field-error,
body textarea.field-error,
body .field-error{
  border-color:var(--ms-error-line)!important;
}

/* Botão hamburguer: preto/branco com detalhe amarelo no hover */
body header .admin-menu-toggle,
body header .ms-final-menu-btn,
body header .menu-toggle,
body header button[aria-label*="menu" i],
body header button[aria-label*="abrir" i]{
  background:rgba(255,255,255,.06)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.18)!important;
}

body header .admin-menu-toggle:hover,
body header .ms-final-menu-btn:hover,
body header .menu-toggle:hover{
  background:var(--ms-yellow-soft)!important;
  color:var(--ms-yellow-2)!important;
  border-color:var(--ms-yellow-line)!important;
  transform:none!important;
}

/* Footer */
body .ms-footer,
body .ms-footer-clean,
body .ms-footer-global{
  background:rgba(0,0,0,.98)!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
}


/* =========================================================
   LOGIN COM SUCESSO — MENSAGEM VERDE
   ========================================================= */
.ms-login-success-flash{
  width:min(1120px,calc(100% - 44px))!important;
  margin:18px auto 0!important;
  padding:14px 16px!important;
  border-radius:18px!important;
  border:1px solid rgba(34,197,94,.48)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,197,94,.18),transparent 44%),
    rgba(34,197,94,.12)!important;
  color:#86efac!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:950!important;
  text-align:center!important;
  letter-spacing:.01em!important;
  box-shadow:none!important;
}

@media(max-width:760px){
  .ms-login-success-flash{
    width:calc(100% - 18px)!important;
    max-width:560px!important;
    margin-top:14px!important;
    border-radius:16px!important;
    padding:13px 14px!important;
  }
}


/* =========================================================
   SERVIÇOS — MENSAGENS VERDES / ERROS VERMELHOS
   Padrão para /admin/servicos/ e histórico.
   ========================================================= */
body.services-page .alert,
body.services-page .mensagem,
body.services-page .message,
body.services-page .notice,
body.history-page .alert,
body.history-page .mensagem,
body.history-page .message,
body.history-page .notice,
body.admin-view .alert.green,
body.partner-view .alert.green{
  color:#86efac!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,197,94,.18),transparent 44%),
    rgba(34,197,94,.12)!important;
  border:1px solid rgba(34,197,94,.48)!important;
  border-radius:16px!important;
  font-weight:850!important;
  box-shadow:none!important;
}

body.services-page .alert.green,
body.history-page .alert.green{
  color:#86efac!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,197,94,.18),transparent 44%),
    rgba(34,197,94,.12)!important;
  border-color:rgba(34,197,94,.48)!important;
}

body.services-page .alert.error,
body.services-page .alert.danger,
body.services-page .erro,
body.services-page .error,
body.services-page [class*="erro"],
body.services-page [class*="error"],
body.services-page [class*="danger"],
body.history-page .alert.error,
body.history-page .alert.danger,
body.history-page .erro,
body.history-page .error,
body.history-page [class*="erro"],
body.history-page [class*="error"],
body.history-page [class*="danger"]{
  color:#fecaca!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(239,68,68,.16),transparent 44%),
    rgba(239,68,68,.13)!important;
  border:1px solid rgba(239,68,68,.48)!important;
  border-radius:16px!important;
  font-weight:850!important;
  box-shadow:none!important;
}

body.services-page .alert,
body.history-page .alert{
  padding:13px 15px!important;
  line-height:1.5!important;
  margin-bottom:15px!important;
  text-align:center!important;
}

@media(max-width:760px){
  body.services-page .alert,
  body.history-page .alert{
    text-align:center!important;
    padding:13px 14px!important;
  }
}


/* =========================================================
   MARTINS SELECT — STATUS ONLINE E ÚLTIMO ACESSO VERDE
   Aplica verde em todas as páginas do sistema.
   ========================================================= */
:root{
  --ms-status-green:#22c55e!important;
  --ms-status-green-2:#86efac!important;
  --ms-status-green-bg:rgba(34,197,94,.12)!important;
  --ms-status-green-bg-2:rgba(34,197,94,.075)!important;
  --ms-status-green-line:rgba(34,197,94,.48)!important;
}

/* Cards de status */
.status-online-card,
.status-access-card,
.side-item.status-online-card,
.side-item.status-access-card,
.side-item.green,
.info-item.status-online-card,
.info-item.status-access-card,
.perfil-mini-status,
.profile-mini-status,
.login-status,
.online-status,
.status-online,
.ultimo-acesso,
.last-access{
  border-color:var(--ms-status-green-line)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,197,94,.18),transparent 44%),
    var(--ms-status-green-bg)!important;
  color:var(--ms-status-green-2)!important;
  box-shadow:none!important;
}

/* Textos dentro dos cards */
.status-online-card span,
.status-online-card small,
.status-online-card strong,
.status-access-card span,
.status-access-card small,
.status-access-card strong,
.side-item.green span,
.side-item.green strong,
.perfil-mini-status span,
.perfil-mini-status strong,
.profile-mini-status span,
.profile-mini-status strong,
.login-status span,
.login-status strong,
.online-status span,
.online-status strong,
.status-online span,
.status-online strong,
.ultimo-acesso span,
.ultimo-acesso strong,
.last-access span,
.last-access strong{
  color:var(--ms-status-green-2)!important;
}

/* Palavra Online, quando aparece como etiqueta/badge */
.online,
.badge-online,
.status-badge.online,
.status-pill.online,
.pill-online{
  color:var(--ms-status-green-2)!important;
  background:var(--ms-status-green-bg)!important;
  border-color:var(--ms-status-green-line)!important;
}

/* Pontinho de status */
.status-dot,
.online-dot,
.dot-online,
.status-online-card::before,
.online-status::before{
  background:var(--ms-status-green)!important;
  border-color:var(--ms-status-green)!important;
}

/* Alertas positivos continuam verdes */
.alert.green,
.alert.success,
.mensagem,
.message.success,
.notice.success,
.perfil-alert.success,
.profile-alert.success,
.ms-login-success-flash{
  color:var(--ms-status-green-2)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,197,94,.18),transparent 44%),
    var(--ms-status-green-bg)!important;
  border-color:var(--ms-status-green-line)!important;
}

/* Reforço específico dos cards laterais do admin/serviços */
body.services-page .side-item.status-online-card,
body.services-page .side-item.status-access-card,
body.services-page .side-item.green,
body.history-page .side-item.status-online-card,
body.history-page .side-item.status-access-card,
body.history-page .side-item.green,
body.admin-view .side-item.status-online-card,
body.admin-view .side-item.status-access-card,
body.partner-view .side-item.status-online-card,
body.partner-view .side-item.status-access-card{
  border-color:var(--ms-status-green-line)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,197,94,.18),transparent 44%),
    var(--ms-status-green-bg)!important;
}

body.services-page .side-item.status-online-card span,
body.services-page .side-item.status-online-card strong,
body.services-page .side-item.status-access-card span,
body.services-page .side-item.status-access-card strong,
body.services-page .side-item.green span,
body.services-page .side-item.green strong{
  color:var(--ms-status-green-2)!important;
}

/* Último acesso no perfil */
body.perfil-final-page .perfil-mini-status{
  border-color:var(--ms-status-green-line)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,197,94,.18),transparent 44%),
    var(--ms-status-green-bg)!important;
}

body.perfil-final-page .perfil-mini-status span,
body.perfil-final-page .perfil-mini-status strong{
  color:var(--ms-status-green-2)!important;
}


/* =========================================================
   SERVIÇOS — TIPO DE SERVIÇO
   ========================================================= */
body.services-page select[name="tipo_servico"],
body.services-page select#tipo_servico{
  font-weight:850!important;
}

body.services-page select[name="tipo_servico"] option,
body.services-page select#tipo_servico option{
  color:#000!important;
  background:#fff!important;
}
