:root {
  --reverse-bg: #03070d;
  --reverse-surface: #07101b;
  --reverse-surface-2: #0a1522;
  --reverse-blue: #139cff;
  --reverse-cyan: #38c2ff;
  --reverse-line: rgba(115, 221, 255, .12);
}

html,
body {
  min-height: 100%;
  background: var(--reverse-bg) !important;
}

body {
  position: relative;
  isolation: isolate;
  color-scheme: dark;
  background-image:
    radial-gradient(circle at 8% -8%, rgba(19, 156, 255, .14), transparent 31rem),
    radial-gradient(circle at 94% 42%, rgba(56, 194, 255, .07), transparent 36rem),
    linear-gradient(rgba(80, 180, 255, .022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(80, 180, 255, .022) 1px, transparent 1px) !important;
  background-size: auto, auto, 80px 80px, 80px 80px !important;
  background-attachment: fixed !important;
}

::selection { background: rgba(19, 156, 255, .36); color: #fff; }

* { scrollbar-width: thin; scrollbar-color: rgba(56, 194, 255, .3) rgba(255,255,255,.035); }
*::-webkit-scrollbar { width: 9px; height: 9px; }
*::-webkit-scrollbar-track { background: rgba(255,255,255,.025); }
*::-webkit-scrollbar-thumb { border: 2px solid #03070d; border-radius: 999px; background: rgba(56,194,255,.26); }

.reverse-admin-header {
  border-color: var(--reverse-line) !important;
  background: rgba(3, 7, 13, .86) !important;
  box-shadow: 0 18px 55px rgba(0, 0, 0, .2);
}

.reverse-admin-logo {
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.62));
}

.reverse-admin-nav-active {
  border: 1px solid rgba(56,194,255,.34) !important;
  background: linear-gradient(135deg, #139cff, #0875e1) !important;
  color: #fff !important;
  box-shadow: 0 10px 30px rgba(19,156,255,.2);
}

.reverse-admin-nav-link:hover {
  border-color: rgba(56,194,255,.24) !important;
  background: rgba(19,156,255,.08) !important;
}

.reverse-mobile-menu {
  border-color: var(--reverse-line) !important;
  background: rgba(3,7,13,.97) !important;
  box-shadow: 0 26px 65px rgba(0,0,0,.55);
}

main > section,
main > article {
  position: relative;
}

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
  border-color: rgba(255,255,255,.1) !important;
  background-color: rgba(2,8,15,.74) !important;
}

input:not([type="checkbox"]):not([type="radio"]):focus,
select:focus,
textarea:focus {
  border-color: rgba(56,194,255,.58) !important;
  box-shadow: 0 0 0 3px rgba(19,156,255,.1) !important;
}

input[type="checkbox"],
input[type="radio"] { accent-color: var(--reverse-blue) !important; }

table thead,
thead[class*="bg-"] {
  background: rgba(5,16,28,.96) !important;
}

tbody tr { transition: background-color .2s ease, border-color .2s ease; }
tbody tr:hover { background: rgba(19,156,255,.035); }

.swal2-popup {
  border: 1px solid rgba(56,194,255,.16) !important;
  background: #07101b !important;
  box-shadow: 0 30px 90px rgba(0,0,0,.62), 0 0 55px rgba(19,156,255,.1) !important;
}

.swal2-confirm:not([style*="background-color: rgb(34, 197, 94)"]):not([style*="background-color: rgb(239, 68, 68)"]) {
  background: var(--reverse-blue) !important;
}

a,
button { -webkit-tap-highlight-color: transparent; }

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid rgba(56,194,255,.58);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
