/**
 * Cloud Win / Rackon — tela de login (glass escuro, neon)
 * Carregar DEPOIS dos estilos inline de login.tpl
 */

body.rackon-client.login {
  background: var(--rk-bg) !important;
  color: var(--rk-text) !important;
}

body.rackon-client.login #wrapper,
body.rackon-client.login .primary-content.loginpage-with-sidebar {
  background: var(--rk-bg) !important;
  min-height: 100vh;
}

/* ——— Fundo / decoração ——— */
body.rackon-client.login .cap-login-page.cap-products--modern {
  font-family: var(--rk-font-body) !important;
  color: var(--rk-text) !important;
  background: var(--rk-bg) !important;
}

body.rackon-client.login .cap-login-page__orb--1 {
  background: radial-gradient(circle, rgba(0, 229, 255, 0.16), transparent 70%) !important;
}

body.rackon-client.login .cap-login-page__orb--2 {
  background: radial-gradient(circle, rgba(124, 77, 255, 0.14), transparent 70%) !important;
}

body.rackon-client.login .cap-login-page__orb--3 {
  background: radial-gradient(circle, rgba(45, 212, 191, 0.1), transparent 70%) !important;
}

body.rackon-client.login .cap-login-page__grid {
  background-image:
    linear-gradient(var(--rk-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--rk-grid) 1px, transparent 1px) !important;
  background-size: 24px 24px !important;
  mask-image: radial-gradient(ellipse 85% 65% at 50% 45%, black 15%, transparent 100%) !important;
  opacity: 0.55 !important;
}

/* Painel direito — fumaça + ícones */
body.rackon-client.login .rk-login-panel-deco {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0;
}

body.rackon-client.login .rk-login-panel-deco__grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(var(--rk-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--rk-grid) 1px, transparent 1px);
  background-size: 22px 22px;
  opacity: 0.45;
}

body.rackon-client.login .rk-login-panel-deco__smoke {
  position: absolute;
  inset: -15%;
  background:
    radial-gradient(ellipse 55% 60% at 20% 30%, rgba(0, 229, 255, 0.12), transparent 55%),
    radial-gradient(ellipse 50% 50% at 80% 20%, rgba(124, 77, 255, 0.1), transparent 50%),
    radial-gradient(ellipse 45% 45% at 60% 85%, rgba(45, 212, 191, 0.07), transparent 55%);
  animation: rk-login-smoke 14s ease-in-out infinite alternate;
}

@keyframes rk-login-smoke {
  0% { transform: translate(0, 0) scale(1); opacity: 0.8; }
  100% { transform: translate(-2%, 2%) scale(1.04); opacity: 1; }
}

body.rackon-client.login .rk-login-panel-deco__icons {
  position: absolute;
  inset: 0;
}

body.rackon-client.login .rk-login-panel-deco .rk-float-icon {
  position: absolute;
  font-family: var(--rk-font-mono);
  font-size: 0.62rem;
  color: rgba(0, 229, 255, 0.32);
  padding: 0.18rem 0.42rem;
  border: 1px solid rgba(0, 229, 255, 0.1);
  border-radius: 6px;
  background: rgba(0, 229, 255, 0.03);
  animation: rk-float 9s ease-in-out infinite;
}

body.rackon-client.login .cap-login-center,
body.rackon-client.login .center-container {
  position: relative !important;
  background: transparent !important;
}

body.rackon-client.login .cap-login-center .login-container,
body.rackon-client.login .center-container .login-container {
  position: relative;
  z-index: 2;
}

/* ——— Sidebar (notícias) ——— */
body.rackon-client.login .cap-login-page--sidebar .sidebar-container.cap-login-sidebar {
  background: rgba(8, 14, 26, 0.94) !important;
  border-right: 1px solid var(--rk-border) !important;
  box-shadow: inset -1px 0 0 rgba(0, 229, 255, 0.06) !important;
}

body.rackon-client.login .cap-login-sidebar .login-header a span {
  color: var(--rk-text) !important;
}

body.rackon-client.login .cap-news-section__badge {
  background: var(--rk-grad-soft) !important;
  border: 1px solid var(--rk-border) !important;
  color: var(--rk-cyan) !important;
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.1) !important;
}

body.rackon-client.login .cap-news-section__title {
  color: var(--rk-text) !important;
  font-family: var(--rk-font-display);
}

body.rackon-client.login .cap-news-card {
  background: var(--rk-glass) !important;
  border: 1px solid var(--rk-border) !important;
  box-shadow: var(--rk-glow) !important;
}

body.rackon-client.login .cap-news-card__shine {
  background: linear-gradient(
    125deg,
    transparent 40%,
    rgba(0, 229, 255, 0.08) 48%,
    rgba(124, 77, 255, 0.06) 52%,
    transparent 60%
  ) !important;
  opacity: 0.7 !important;
}

body.rackon-client.login .cap-news-card__date {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-news-card__headline a {
  color: var(--rk-text) !important;
}

body.rackon-client.login .cap-news-card__headline a:hover {
  color: var(--rk-cyan) !important;
}

body.rackon-client.login .cap-news-card__excerpt {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-news-card__cta {
  color: var(--rk-cyan) !important;
}

body.rackon-client.login .cap-news-swiper__pagination .swiper-pagination-bullet {
  background: rgba(0, 229, 255, 0.25) !important;
}

body.rackon-client.login .cap-news-swiper__pagination .swiper-pagination-bullet-active {
  background: var(--rk-cyan) !important;
}

body.rackon-client.login .cap-login-page--sidebar .user_lock_icon.cap-login-sidebar__lock {
  color: var(--rk-cyan) !important;
  opacity: 0.25 !important;
}

/* ——— Showcase (layout sem sidebar) ——— */
body.rackon-client.login .cap-login-showcase__ring {
  background: var(--rk-grad-soft) !important;
  border: 1px solid var(--rk-border) !important;
  color: var(--rk-cyan) !important;
  box-shadow: 0 0 28px rgba(0, 229, 255, 0.15) !important;
}

body.rackon-client.login .cap-login-showcase__title {
  font-family: var(--rk-font-display) !important;
  color: var(--rk-text) !important;
}

body.rackon-client.login .cap-login-showcase__kicker,
body.rackon-client.login .cap-login-showcase__sub,
body.rackon-client.login .cap-login-showcase__bullets {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-login-showcase__bullets li i {
  color: var(--rk-cyan) !important;
}

/* ——— Card de login ——— */
body.rackon-client.login .cap-login-card,
body.rackon-client.login .login-box {
  background: rgba(12, 20, 36, 0.82) !important;
  backdrop-filter: blur(20px) saturate(1.15) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.15) !important;
  border: 1px solid var(--rk-border) !important;
  border-radius: var(--rk-radius) !important;
  box-shadow: var(--rk-glow), var(--rk-shadow) !important;
  color: var(--rk-text) !important;
}

body.rackon-client.login .cap-login-card__head-icon {
  background: var(--rk-grad-soft) !important;
  border: 1px solid var(--rk-border) !important;
  color: var(--rk-cyan) !important;
}

body.rackon-client.login .cap-login-card__kicker {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-login-card__title {
  font-family: var(--rk-font-display) !important;
  color: var(--rk-text) !important;
  background: var(--rk-grad) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

body.rackon-client.login .cap-login-card__lead {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-login-card__divider {
  background: linear-gradient(90deg, transparent, var(--rk-border), transparent) !important;
}

body.rackon-client.login .form-control-label {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-login-field .form-control {
  background: rgba(6, 10, 18, 0.72) !important;
  border: 1px solid var(--rk-border) !important;
  color: var(--rk-text) !important;
}

body.rackon-client.login .cap-login-field .form-control::placeholder {
  color: #5f7389 !important;
}

body.rackon-client.login .cap-login-field .form-control:focus {
  border-color: rgba(0, 229, 255, 0.45) !important;
  box-shadow: 0 0 0 3px rgba(0, 229, 255, 0.12) !important;
}

body.rackon-client.login .cap-login-reveal {
  background: rgba(6, 10, 18, 0.55) !important;
  border-color: var(--rk-border) !important;
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-login-forgot {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-login-forgot:hover {
  color: var(--rk-cyan) !important;
}

body.rackon-client.login .cap-login-remember .labels {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .cap-btn-primary,
body.rackon-client.login .btn-login.btn-primary,
body.rackon-client.login input.btn-primary[type="submit"] {
  background: var(--rk-grad-warm) !important;
  border: none !important;
  color: #060a12 !important;
  font-weight: 700 !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 32px rgba(251, 146, 60, 0.22) !important;
  letter-spacing: 0.04em;
}

body.rackon-client.login .cap-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(251, 146, 60, 0.28) !important;
  color: #060a12 !important;
}

body.rackon-client.login .cap-login-notice,
body.rackon-client.login .alert-info {
  background: rgba(0, 229, 255, 0.08) !important;
  border: 1px solid rgba(0, 229, 255, 0.2) !important;
  border-left: 4px solid var(--rk-cyan) !important;
  color: var(--rk-text) !important;
  border-radius: 12px !important;
}

body.rackon-client.login .cap-login-social-hr::before,
body.rackon-client.login .cap-login-social-hr::after,
body.rackon-client.login .social-or-login::before {
  background: var(--rk-border) !important;
  border-color: var(--rk-border) !important;
}

body.rackon-client.login .cap-login-social-hr span,
body.rackon-client.login .social-or-login span {
  color: var(--rk-muted) !important;
  background: rgba(12, 20, 36, 0.9) !important;
}

body.rackon-client.login .cap-login-register,
body.rackon-client.login .login-container-register {
  color: var(--rk-muted) !important;
  border-top-color: var(--rk-border) !important;
}

body.rackon-client.login .cap-login-register a {
  color: var(--rk-cyan) !important;
}

body.rackon-client.login .cap-login-lang .btn,
body.rackon-client.login .lang-btn .btn {
  background: var(--rk-glass) !important;
  border: 1px solid var(--rk-border) !important;
  color: var(--rk-text) !important;
  border-radius: 999px !important;
}

body.rackon-client.login .cap-login-page__logo img,
body.rackon-client.login .login-header img {
  display: block;
  max-width: min(180px, 70vw);
  max-height: 52px;
  width: auto;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
}

/* Logo branca */
body.rackon-client.login .logo img.logo-light {
  filter: brightness(0) invert(1) drop-shadow(0 0 12px rgba(0, 229, 255, 0.3));
}

body.rackon-client.login .logo .logo-dark,
body.rackon-client.login .login-header .logo-dark {
  display: none !important;
}

body.rackon-client.login .logo .logo-light {
  display: inline-block !important;
}

/* 2FA / boxes legados */
body.rackon-client.login .logincontainer {
  background: transparent !important;
  color: var(--rk-text) !important;
}

body.rackon-client.login .login-box h1,
body.rackon-client.login .login-box .h6 {
  color: var(--rk-text) !important;
}

body.rackon-client.login .panel-info {
  background: var(--rk-glass) !important;
  border: 1px solid var(--rk-border) !important;
}

body.rackon-client.login .panel-info > .panel-heading {
  background: rgba(0, 229, 255, 0.06) !important;
  border-color: var(--rk-border) !important;
  color: var(--rk-text) !important;
}

body.rackon-client.login .panel-info > .panel-body {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .panel-info a {
  color: var(--rk-cyan) !important;
}

body.rackon-client.login .sidebar-container.light {
  background: rgba(8, 14, 26, 0.94) !important;
  border-right: 1px solid var(--rk-border) !important;
}

body.rackon-client.login .sidebar-container .header,
body.rackon-client.login .sidebar-content h2.header {
  color: var(--rk-text) !important;
  font-family: var(--rk-font-display);
  border-bottom-color: var(--rk-cyan) !important;
}

body.rackon-client.login .sidebar-content .swiper-slide span.text-muted {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .sidebar-content .swiper-slide h2,
body.rackon-client.login .sidebar-content .swiper-slide h3,
body.rackon-client.login .sidebar-content .swiper-slide a {
  color: var(--rk-text) !important;
}

body.rackon-client.login .sidebar-content .swiper-slide p {
  color: var(--rk-muted) !important;
}

body.rackon-client.login .user_lock_icon {
  color: var(--rk-cyan) !important;
  opacity: 0.25 !important;
}

body.rackon-client.login .login-box .btn-primary {
  background: var(--rk-grad-warm) !important;
  border: none !important;
  color: #060a12 !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
}

@media (prefers-reduced-motion: reduce) {
  body.rackon-client.login .rk-login-panel-deco__smoke,
  body.rackon-client.login .rk-login-panel-deco .rk-float-icon {
    animation: none !important;
  }

  body.rackon-client.login .cap-btn-primary:hover {
    transform: none !important;
  }
}
