/* file: css/override-darkneon.css */

:root{
  --neon-blue: #00e5ff;
  --neon-blue-2: #00bfff;
  --neon-blue-3: #009dff;
  --dark-0: #050816;
  --dark-1: #0a1024;
  --dark-2: #11182d;
  --dark-3: #16213a;
  --text-main: #d9f6ff;
  --text-soft: #8fbfd4;
  --border-glow: rgba(0, 229, 255, 0.28);
  --shadow-glow: 0 0 12px rgba(0, 229, 255, 0.25), 0 0 24px rgba(0, 191, 255, 0.12);
}

/* base */
html,
body{
  background-color: var(--dark-0) !important;
  color: var(--text-main) !important;
}

body{
  font-family: "Nunito", sans-serif;
}

a{
  color: var(--neon-blue) !important;
}

a:hover{
  color: #7ff6ff !important;
  text-decoration: none;
}

/* wrapper / content */
#wrapper #content-wrapper{
  background:
    radial-gradient(circle at top right, rgba(0, 229, 255, 0.08), transparent 25%),
    linear-gradient(180deg, var(--dark-1) 0%, var(--dark-0) 100%) !important;
}

#wrapper #content-wrapper #content{
  background: transparent !important;
}

/* sidebar */
.sidebar{
  background:
    linear-gradient(180deg, #081120 0%, #0b1730 45%, #07101f 100%) !important;
  border-right: 1px solid var(--border-glow);
  box-shadow: inset -1px 0 0 rgba(0, 229, 255, 0.08);
}

.sidebar .sidebar-brand,
.sidebar-dark .sidebar-brand{
  color: #ffffff !important;
  text-shadow: 0 0 10px rgba(0, 229, 255, 0.35);
}

.sidebar-dark .nav-item .nav-link{
  color: rgba(217, 246, 255, 0.82) !important;
}

.sidebar-dark .nav-item .nav-link i{
  color: rgba(0, 229, 255, 0.75) !important;
}

.sidebar-dark .nav-item .nav-link:hover,
.sidebar-dark .nav-item.active .nav-link{
  color: #ffffff !important;
  background: linear-gradient(90deg, rgba(0, 229, 255, 0.12), transparent);
  border-left: 3px solid var(--neon-blue);
  box-shadow: inset 0 0 12px rgba(0, 229, 255, 0.08);
}

.sidebar-dark .nav-item .nav-link:hover i,
.sidebar-dark .nav-item.active .nav-link i{
  color: var(--neon-blue) !important;
  text-shadow: 0 0 8px rgba(0, 229, 255, 0.45);
}

.sidebar hr.sidebar-divider{
  border-top: 1px solid rgba(0, 229, 255, 0.14) !important;
}

.sidebar-dark #sidebarToggle{
  background-color: rgba(0, 229, 255, 0.12) !important;
}

.sidebar-dark #sidebarToggle:hover{
  background-color: rgba(0, 229, 255, 0.22) !important;
}

/* topbar */
.topbar{
  background: rgba(8, 17, 32, 0.92) !important;
  border-bottom: 1px solid var(--border-glow);
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35);
}

.topbar .nav-item .nav-link{
  color: var(--text-main) !important;
}

.topbar .nav-item .nav-link:hover{
  color: var(--neon-blue) !important;
}

/* cards */
.card{
  background: linear-gradient(180deg, rgba(17, 24, 45, 0.96), rgba(10, 16, 36, 0.98)) !important;
  border: 1px solid rgba(0, 229, 255, 0.12) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.card-header{
  background: rgba(0, 229, 255, 0.06) !important;
  color: var(--text-main) !important;
  border-bottom: 1px solid rgba(0, 229, 255, 0.10) !important;
}

.card,
.card-header,
.card-body,
.card-footer{
  color: var(--text-main) !important;
}

/* borders */
.border-left-primary,
.border-bottom-primary{
  border-color: var(--neon-blue) !important;
  box-shadow: var(--shadow-glow);
}

/* buttons */
.btn-primary{
  color: #031019 !important;
  background: linear-gradient(135deg, var(--neon-blue), var(--neon-blue-2)) !important;
  border-color: var(--neon-blue) !important;
  box-shadow: 0 0 14px rgba(0, 229, 255, 0.25);
}

.btn-primary:hover,
.btn-primary:focus{
  color: #031019 !important;
  background: linear-gradient(135deg, #5ff6ff, #35ccff) !important;
  border-color: #5ff6ff !important;
  box-shadow: 0 0 18px rgba(0, 229, 255, 0.4);
}

.btn-outline-primary{
  color: var(--neon-blue) !important;
  border-color: var(--neon-blue) !important;
}

.btn-outline-primary:hover{
  color: #031019 !important;
  background: var(--neon-blue) !important;
  border-color: var(--neon-blue) !important;
  box-shadow: 0 0 18px rgba(0, 229, 255, 0.35);
}

/* forms */
.form-control,
.custom-select,
.input-group-text{
  background-color: var(--dark-2) !important;
  color: var(--text-main) !important;
  border: 1px solid rgba(0, 229, 255, 0.16) !important;
}

.form-control:focus,
.custom-select:focus{
  background-color: var(--dark-2) !important;
  color: #ffffff !important;
  border-color: var(--neon-blue) !important;
  box-shadow: 0 0 0 .2rem rgba(0, 229, 255, 0.16) !important;
}

.form-control::placeholder{
  color: var(--text-soft) !important;
}

/* dropdown */
.dropdown-menu{
  background-color: var(--dark-2) !important;
  border: 1px solid rgba(0, 229, 255, 0.14) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.35);
}

.dropdown-item{
  color: var(--text-main) !important;
}

.dropdown-item:hover,
.dropdown-item:focus{
  background-color: rgba(0, 229, 255, 0.08) !important;
  color: #ffffff !important;
}

/* tables */
.table{
  color: var(--text-main) !important;
}

.table td,
.table th,
.table thead th{
  border-color: rgba(0, 229, 255, 0.10) !important;
}

.table-hover tbody tr:hover{
  background-color: rgba(0, 229, 255, 0.05) !important;
  color: #ffffff !important;
}

/* text helpers */
.text-primary{
  color: var(--neon-blue) !important;
}

.text-gray-800,
.text-gray-900,
.text-dark{
  color: var(--text-main) !important;
}

.text-gray-600,
.text-muted{
  color: var(--text-soft) !important;
}

/* bg helpers */
.bg-white,
.bg-light{
  background-color: var(--dark-2) !important;
}

.bg-gradient-primary{
  background:
    linear-gradient(180deg, #071225 0%, #0d2d57 45%, #00bfff 100%) !important;
}

/* scroll to top */
.scroll-to-top{
  background: rgba(0, 229, 255, 0.18) !important;
  border: 1px solid rgba(0, 229, 255, 0.25);
}

.scroll-to-top:hover{
  background: rgba(0, 229, 255, 0.32) !important;
}

/* file: css/override-darkneon.css */

/* =========================
   DARK NEON BLUE - MODALS
   ========================= */

.modal-content{
  background:
    linear-gradient(180deg, rgba(10, 16, 36, 0.98) 0%, rgba(7, 14, 28, 0.99) 100%) !important;
  color: var(--text-main) !important;
  border: 1px solid rgba(0, 229, 255, 0.18) !important;
  box-shadow:
    0 0 0 1px rgba(0, 229, 255, 0.06),
    0 18px 48px rgba(0, 0, 0, 0.55),
    0 0 28px rgba(0, 191, 255, 0.10) !important;
}

.modal-header{
  background:
    linear-gradient(90deg, rgba(0, 229, 255, 0.08), rgba(0, 191, 255, 0.03)) !important;
  border-bottom: 1px solid rgba(0, 229, 255, 0.14) !important;
}

.modal-title{
  color: #ffffff !important;
  text-shadow: 0 0 10px rgba(0, 229, 255, 0.20);
}

.modal-body{
  background: transparent !important;
  color: var(--text-main) !important;
}

.modal-footer{
  background: rgba(0, 229, 255, 0.03) !important;
  border-top: 1px solid rgba(0, 229, 255, 0.12) !important;
}

.modal-backdrop.show{
  opacity: .78 !important;
}

.modal-backdrop{
  background:
    radial-gradient(circle at center, rgba(0, 191, 255, 0.10) 0%, rgba(0, 0, 0, 0.92) 72%) !important;
}

/* close button */
.modal-header .close{
  color: var(--neon-blue) !important;
  text-shadow: none !important;
  opacity: .95 !important;
  transition: all .2s ease;
}

.modal-header .close:hover{
  color: #ffffff !important;
  opacity: 1 !important;
  transform: scale(1.06);
  text-shadow: 0 0 10px rgba(0, 229, 255, 0.45);
}

/* labels dentro dos modals */
.modal label{
  color: #bfefff !important;
  font-weight: 700;
  letter-spacing: .02em;
}

/* inputs/selects/textarea dentro dos modals */
.modal .form-control,
.modal .custom-select,
.modal textarea.form-control,
.modal .input-group-text{
  background: rgba(17, 24, 45, 0.95) !important;
  color: var(--text-main) !important;
  border: 1px solid rgba(0, 229, 255, 0.16) !important;
}

.modal .form-control:hover,
.modal .custom-select:hover{
  border-color: rgba(0, 229, 255, 0.28) !important;
}

.modal .form-control:focus,
.modal .custom-select:focus,
.modal textarea.form-control:focus{
  background: rgba(17, 24, 45, 1) !important;
  color: #ffffff !important;
  border-color: var(--neon-blue) !important;
  box-shadow:
    0 0 0 .2rem rgba(0, 229, 255, 0.14),
    0 0 14px rgba(0, 191, 255, 0.12) !important;
}

.modal .form-control::placeholder{
  color: rgba(191, 239, 255, 0.52) !important;
}

/* custom switch */
.modal .custom-control-label{
  color: var(--text-main) !important;
}

.modal .custom-control-label::before{
  background-color: #0f1a31 !important;
  border: 1px solid rgba(0, 229, 255, 0.22) !important;
}

.modal .custom-switch .custom-control-label::after{
  background-color: rgba(0, 229, 255, 0.55) !important;
}

.modal .custom-control-input:checked ~ .custom-control-label::before{
  background-color: rgba(0, 229, 255, 0.20) !important;
  border-color: var(--neon-blue) !important;
}

.modal .custom-control-input:checked ~ .custom-control-label::after{
  background-color: #ffffff !important;
  box-shadow: 0 0 10px rgba(0, 229, 255, 0.30);
}

/* alerts dentro dos modals */
.modal .alert{
  border-radius: .45rem !important;
  border-width: 1px !important;
}

.modal .alert-light{
  background: rgba(0, 229, 255, 0.06) !important;
  color: var(--text-main) !important;
  border-color: rgba(0, 229, 255, 0.14) !important;
}

.modal .alert-info{
  background: rgba(0, 191, 255, 0.08) !important;
  color: #dffbff !important;
  border-color: rgba(0, 229, 255, 0.16) !important;
}

.modal .alert-success{
  background: rgba(28, 200, 138, 0.10) !important;
  color: #d8fff0 !important;
  border-color: rgba(28, 200, 138, 0.22) !important;
}

.modal .alert-danger{
  background: rgba(231, 74, 59, 0.12) !important;
  color: #ffd9d6 !important;
  border-color: rgba(231, 74, 59, 0.24) !important;
}

/* reward builder / cards dentro do modal */
.modal .reward-card,
.modal .reward-pool-item{
  background:
    linear-gradient(180deg, rgba(18, 27, 48, 0.96), rgba(10, 16, 35, 0.98)) !important;
  border: 1px solid rgba(0, 229, 255, 0.12) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.30) !important;
}

.modal .reward-card .card-body{
  color: var(--text-main) !important;
}

.modal .reward-card .text-primary,
.modal .reward-pool-item .text-primary{
  color: var(--neon-blue) !important;
}

/* bordas arredondadas consistentes */
.modal-content,
.modal-header,
.modal-footer,
.modal .alert,
.modal .reward-card,
.modal .reward-pool-item{
  border-radius: .45rem !important;
}

/* botões secundários nos modals */
.modal .btn-secondary{
  background: #1a2640 !important;
  border-color: rgba(0, 229, 255, 0.14) !important;
  color: #dff7ff !important;
}

.modal .btn-secondary:hover,
.modal .btn-secondary:focus{
  background: #223154 !important;
  border-color: rgba(0, 229, 255, 0.28) !important;
  color: #ffffff !important;
  box-shadow: 0 0 12px rgba(0, 191, 255, 0.12) !important;
}

/* botões info/success/danger usados nos modals */
.modal .btn-info{
  color: #031019 !important;
  background: linear-gradient(135deg, #1cecff, #00bfff) !important;
  border-color: #00dfff !important;
}

.modal .btn-info:hover,
.modal .btn-info:focus{
  color: #031019 !important;
  box-shadow: 0 0 18px rgba(0, 229, 255, 0.28) !important;
}

.modal .btn-success{
  background: linear-gradient(135deg, #19d7a0, #0fbf87) !important;
  border-color: #19d7a0 !important;
  color: #03150f !important;
}

.modal .btn-success:hover,
.modal .btn-success:focus{
  box-shadow: 0 0 18px rgba(25, 215, 160, 0.24) !important;
}

.modal .btn-danger{
  background: linear-gradient(135deg, #ff5b73, #ff3f5e) !important;
  border-color: #ff5870 !important;
  color: #fff !important;
}

.modal .btn-danger:hover,
.modal .btn-danger:focus{
  box-shadow: 0 0 18px rgba(255, 63, 94, 0.22) !important;
}

/* outline buttons dentro dos modals */
.modal .btn-outline-danger{
  color: #ff7f93 !important;
  border-color: rgba(255, 90, 115, 0.45) !important;
  background: transparent !important;
}

.modal .btn-outline-danger:hover{
  color: #fff !important;
  background: rgba(255, 63, 94, 0.16) !important;
  border-color: #ff5b73 !important;
}

.modal .btn-outline-success{
  color: #6ef0c3 !important;
  border-color: rgba(25, 215, 160, 0.40) !important;
  background: transparent !important;
}

.modal .btn-outline-success:hover{
  color: #03150f !important;
  background: rgba(25, 215, 160, 0.90) !important;
  border-color: #19d7a0 !important;
}

/* textos muted dentro do modal */
.modal .text-muted,
.modal small,
.modal .form-text{
  color: var(--text-soft) !important;
}

/* bordas utilitárias dentro dos modals */
.modal .border{
  border-color: rgba(0, 229, 255, 0.14) !important;
}

/* scroll interno do modal */
.modal-body::-webkit-scrollbar{
  width: 10px;
  height: 10px;
}

.modal-body::-webkit-scrollbar-track{
  background: rgba(8, 14, 28, 0.90);
}

.modal-body::-webkit-scrollbar-thumb{
  background: rgba(0, 191, 255, 0.28);
  border-radius: 999px;
}

.modal-body::-webkit-scrollbar-thumb:hover{
  background: rgba(0, 229, 255, 0.42);
}

.sidebar .sidebar-brand .sidebar-brand-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.sidebar .sidebar-brand .sidebar-brand-icon .sidebar-logo {
    width: 42px;
    height: 42px;
    object-fit: contain;
    display: block;
}