/* ── GameStudio Global Theme Override ── */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;600;700;900&family=Inter:wght@300;400;500;600&display=swap');

/* ── Base ── */
html, body { font-family: 'Inter', sans-serif !important; }
body { background-color: #f4f5f9 !important; }

/* ── Primary color swap: pink → purple ── */
.bg_gradient,
.btn_primary,
.btn_primary:focus { background: linear-gradient(135deg, #6c3ce1, #4f46e5) !important; }
.btn_primary:hover { background: linear-gradient(135deg, #7c4ff0, #5b56f5) !important; }
.text-main { color: #6c3ce1 !important; }

/* Input focus + valid states */
input:not([type]):focus:not([readonly]),
input[type=text]:not(.browser-default):focus:not([readonly]),
input[type=password]:not(.browser-default):focus:not([readonly]),
input[type=email]:not(.browser-default):focus:not([readonly]),
input[type=tel]:not(.browser-default):focus:not([readonly]),
input[type=number]:not(.browser-default):focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]),
input.valid:not([type]), input.valid[type=text]:not(.browser-default),
input.valid[type=password]:not(.browser-default),
input.valid[type=email]:not(.browser-default) {
  border-bottom: 1px solid #6c3ce1 !important;
  box-shadow: 0 1px 0 0 #6c3ce1 !important;
}
input:not([type]):focus:not([readonly])+label,
input[type=text]:not(.browser-default):focus:not([readonly])+label,
input[type=password]:not(.browser-default):focus:not([readonly])+label,
input[type=email]:not(.browser-default):focus:not([readonly])+label,
textarea.materialize-textarea:focus:not([readonly])+label { color: #6c3ce1 !important; }

.switch label input[type=checkbox]:checked+.lever { background-color: rgba(108,60,220,.35) !important; }
.switch label input[type=checkbox]:checked+.lever:after { background-color: #6c3ce1 !important; }
.select-wrapper input.select-dropdown:focus { border-color: #6c3ce1 !important; }

/* ── Nav ── */
nav {
  background: #0d0e1a !important;
  box-shadow: 0 1px 0 rgba(255,255,255,0.06) !important;
}
nav ul a,
nav .header_home_link li a { color: rgba(255,255,255,0.75) !important; }
nav .header_home_link li a:hover { color: #a78bfa !important; box-shadow: inset 0 -2px #6c3ce1 !important; }
nav .brand-logo img { filter: brightness(0) invert(1); }
nav .header_credits > a.btn-flat { color: #a78bfa !important; background-color: rgba(108,60,220,0.15) !important; }
nav .header_credits > a.btn-flat:hover,
nav .header_notifications > a.btn-flat:hover,
nav .header_msg > a.btn-flat:hover { color: #a78bfa !important; }
nav .header_notifications > a.btn-flat,
nav .header_msg > a.btn-flat { color: rgba(255,255,255,0.6) !important; }
nav .header_user .dropdown-content,
nav .header_notifications .dropdown-content {
  background: #1a1b2e !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.4) !important;
}
nav .header_user .dropdown-content:before { border-bottom-color: #1a1b2e !important; }
nav .header_user .dropdown-content li a { color: rgba(255,255,255,0.8) !important; }
nav .header_user .dropdown-content li a:hover { background: rgba(108,60,220,0.15) !important; color: #a78bfa !important; }

/* sidenav */
.sidenav { background: #0d0e1a !important; }
.sidenav li a { color: rgba(255,255,255,0.75) !important; }
.sidenav li a:hover { background: rgba(108,60,220,0.15) !important; color: #a78bfa !important; }
.sidenav-overlay { background: rgba(13,14,26,0.7) !important; }

/* ── Cards / sections ── */
.dt_sections {
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.08), 0 4px 16px rgba(0,0,0,0.04) !important;
  border: 1px solid rgba(0,0,0,0.05) !important;
}

/* ── Headings ── */
h1, h2, h3 { font-family: 'Orbitron', monospace !important; font-weight: 700 !important; letter-spacing: 0.5px; }
h4, h5, h6 { font-family: 'Inter', sans-serif !important; font-weight: 600 !important; }

/* ── Buttons ── */
.btn, .btn-large {
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  border-radius: 10px !important;
  letter-spacing: 0.5px !important;
}
.btn_round { border-radius: 2em !important; }
.btn-main { background: linear-gradient(135deg, #6c3ce1, #4f46e5) !important; color: #fff !important; }

/* ── Progress bar ── */
.ajax-progress { background-color: rgba(108,60,220,0.25) !important; }
.ajax-progress .indeterminate { background-color: #6c3ce1 !important; }

/* ── Toast ── */
.toast {
  background: #1a1b2e !important;
  color: rgba(255,255,255,0.85) !important;
  border: 1px solid rgba(108,60,220,0.3) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3) !important;
}

/* ── Tabs ── */
.tabs .tab a { color: rgba(108,60,220,0.7) !important; }
.tabs .tab a:hover, .tabs .tab a.active { color: #6c3ce1 !important; }
.tabs .indicator { background-color: #6c3ce1 !important; }

/* ── Alerts ── */
.alert-success { background: #f0fdf4 !important; border-color: #bbf7d0 !important; color: #166534 !important; border-radius: 10px !important; }
.alert-danger  { background: #fef2f2 !important; border-color: #fecaca !important; color: #991b1b !important; border-radius: 10px !important; }
.alert-warning { background: #fffbeb !important; border-color: #fde68a !important; color: #92400e !important; border-radius: 10px !important; }

/* ── Profile cards ── */
.dt_usr_img { border: 3px solid #6c3ce1 !important; }
.dt_usr_prf_cover { background: linear-gradient(135deg, #0d0e1a, #1a103a) !important; }

/* ── Terms / about / content pages ── */
.dt_terms_sidebar ul li.active a,
.dt_terms_sidebar ul li a:hover { color: #6c3ce1 !important; }
.dt_terms_sidebar ul li.active { border-left: 3px solid #6c3ce1 !important; }

/* ── Scroll to top ── */
.btn-floating.dt_to_top { background: linear-gradient(135deg,#6c3ce1,#4f46e5) !important; }

/* ── Modal ── */
.modal { border-radius: 16px !important; }
.modal .modal-header { border-bottom: 1px solid rgba(0,0,0,0.06) !important; }

/* ── Chips ── */
.chip { background: rgba(108,60,220,0.1) !important; color: #6c3ce1 !important; }

/* ── Steps / onboarding ── */
.dt_steps_active { background: linear-gradient(135deg,#6c3ce1,#4f46e5) !important; }

/* ── Page footer ── */
.page-footer { background: #0d0e1a !important; }
.page-footer a, .page-footer span, .page-footer p { color: rgba(255,255,255,0.5) !important; }
.page-footer a:hover { color: #a78bfa !important; }
