/* =========================================================
   eDoska Blue Theme Override
   Load this AFTER bootstrap-cut.css and style.css
   ========================================================= */
:root {
  --bs-primary: #2e86ff;
  --bs-primary-rgb: 46, 134, 255;
  --bs-secondary: #6c7cff;
  --bs-info: #00d4ff;
  --bs-link-color: #1f6fff;
  --bs-link-hover-color: #00aaff;
  --ed-bg-dark: #07111f;
  --ed-bg-blue: #0d2b4f;
  --ed-blue: #2e86ff;
  --ed-cyan: #00d4ff;
  --ed-purple: #6c7cff;
  --ed-pink: #ff4fa3;
  --ed-glass: rgba(255, 255, 255, 0.1);
  --ed-glass-strong: rgba(255, 255, 255, 0.18);
  --ed-border: rgba(255, 255, 255, 0.18);
  --ed-shadow: 0 18px 45px rgba(0, 40, 120, 0.35);
}
/* Page atmosphere */
body {
  background: radial-gradient(circle at top left, rgba(46, 134, 255, 0.16), transparent 34rem), radial-gradient(circle at top right, rgba(0, 212, 255, 0.12), transparent 30rem), linear-gradient(180deg, #f5f9ff 0%, #eef5ff 45%, #ffffff 100%);
}
/* Main header shell */
header[data-bs-theme="dark"] .header,
header .header {
  background: linear-gradient(135deg, rgba(7, 17, 31, 0.96), rgba(13, 43, 79, 0.96) 45%, rgba(16, 80, 145, 0.96)), radial-gradient(circle at top right, rgba(0, 212, 255, 0.35), transparent 20rem);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: var(--ed-shadow) !important;
  backdrop-filter: blur(14px);
}
/* Top navbar spacing */
header .navbar {
  min-height: 64px;
}
/* Logo */
header .logo,
header .logo:hover {
  text-decoration: none;
}
header .logo .white-text,
header .logo span {
  color: #ffffff !important;
  font-weight: 900;
  letter-spacing: -0.04em;
  text-shadow: 0 4px 20px rgba(0, 212, 255, 0.35);
}
header .logo .pink-text,
.offcanvas .logo .pink-text {
  color: var(--ed-cyan) !important;
  filter: drop-shadow(0 0 8px rgba(0, 212, 255, 0.7));
}
/* Top right small buttons: language, theme, login */
header .btn,
header .nav-link.btn,
header .language-switcher-current,
header .theme-toggle {
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  background: rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  backdrop-filter: blur(10px);
  transition: transform 0.16s ease, background 0.16s ease, box-shadow 0.16s ease;
}
header .btn:hover,
header .nav-link.btn:hover,
header .language-switcher-current:hover,
header .theme-toggle:hover {
  background: rgba(0, 212, 255, 0.18) !important;
  border-color: rgba(0, 212, 255, 0.55) !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 30px rgba(0, 132, 255, 0.32);
}
header .text-muted,
header small.text-muted {
  color: rgba(255, 255, 255, 0.68) !important;
}
header .text-default,
header .fw-bold.text-default {
  color: #ffffff !important;
}
/* Mobile hamburger */
header .header-toggler {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
/* Second navigation bar */
header nav.puh .bg-black.bg-gradient {
  background: linear-gradient(90deg, rgba(46, 134, 255, 0.22), rgba(0, 212, 255, 0.13)), rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 20px 20px 0 0 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
  overflow: hidden;
}
/* Main nav links */
header nav.puh .nav {
  gap: 0.25rem;
  padding: 0.35rem;
}
header nav.puh .nav-link {
  position: relative;
  color: rgba(255, 255, 255, 0.82) !important;
  border-radius: 14px !important;
  padding: 0.72rem 0.9rem;
  line-height: 1;
  letter-spacing: 0.02em;
  transition: color 0.16s ease, background 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}
header nav.puh .nav-link:hover {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.12) !important;
  transform: translateY(-1px);
}
/* Active nav item */
header nav.puh .nav-link.active,
header nav.puh .nav-pills .nav-link.active {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--ed-blue), var(--ed-cyan)) !important;
  box-shadow: 0 10px 26px rgba(0, 132, 255, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.35);
}
/* Small glowing underline on hover */
header nav.puh .nav-link::after {
  content: "";
  position: absolute;
  left: 16%;
  right: 16%;
  bottom: 0.25rem;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--ed-cyan), transparent);
  opacity: 0;
  transform: scaleX(0.4);
  transition: opacity 0.16s ease, transform 0.16s ease;
}
header nav.puh .nav-link:hover::after {
  opacity: 1;
  transform: scaleX(1);
}
header nav.puh .nav-link.active::after {
  display: none;
}
/* Badges in header nav */
header .badge.bg-primary,
header .badge.text-bg-primary {
  background: linear-gradient(135deg, #00d4ff, #2e86ff) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.38);
  box-shadow: 0 0 16px rgba(0, 212, 255, 0.45);
}
header .text-teal {
  color: #42ffc8 !important;
}
/* Dropdowns */
header .dropdown-menu {
  border: 1px solid rgba(46, 134, 255, 0.22);
  border-radius: 18px;
  padding: 0.45rem;
  box-shadow: 0 18px 45px rgba(7, 17, 31, 0.22);
}
header .dropdown-item {
  border-radius: 12px;
  padding: 0.65rem 0.8rem;
}
header .dropdown-item:hover,
header .dropdown-item.active {
  background: linear-gradient(135deg, rgba(46, 134, 255, 0.14), rgba(0, 212, 255, 0.12));
  color: #0d4f9e;
}
/* Mobile offcanvas menu */
.offcanvas {
  background: radial-gradient(circle at top left, rgba(46, 134, 255, 0.18), transparent 20rem), linear-gradient(180deg, #f8fbff, #edf5ff);
}
.offcanvas-header {
  background: linear-gradient(135deg, #07111f, #0d2b4f 60%, #105091);
  color: #ffffff;
  box-shadow: 0 12px 30px rgba(0, 40, 120, 0.25);
}
.offcanvas-header .logo span,
.offcanvas-header .logo {
  color: #ffffff !important;
}
.offcanvas .btn-primary {
  background: linear-gradient(135deg, var(--ed-blue), var(--ed-cyan)) !important;
  border: 0 !important;
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(46, 134, 255, 0.35);
}
.offcanvas .btn-secondary {
  background: linear-gradient(135deg, #172a46, #263b63) !important;
  border: 0 !important;
  border-radius: 14px;
}
/* Mobile list menu */
.offcanvas .list-group-item {
  margin: 0.35rem 0.65rem;
  border: 1px solid rgba(46, 134, 255, 0.1);
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 8px 22px rgba(7, 17, 31, 0.06);
}
.offcanvas .list-group-item a {
  color: #14385f;
  font-weight: 700;
}
.offcanvas .list-group-item a:hover,
.offcanvas .list-group-item a.active {
  color: #0d6efd;
}
.offcanvas .list-group-item i.fa-arrow-right {
  color: rgba(46, 134, 255, 0.55);
}
/* General buttons */
.btn-primary {
  background: linear-gradient(135deg, var(--ed-blue), var(--ed-cyan)) !important;
  border-color: transparent !important;
  box-shadow: 0 8px 22px rgba(46, 134, 255, 0.28);
}
.btn-outline-primary {
  --bs-btn-color: #1f6fff;
  --bs-btn-border-color: rgba(46, 134, 255, 0.55);
  --bs-btn-hover-bg: #2e86ff;
  --bs-btn-hover-border-color: #2e86ff;
  --bs-btn-active-bg: #1f6fff;
  --bs-btn-active-border-color: #1f6fff;
}
/* Cards / boxes, optional but makes the rest less old-looking */
.card,
.cssbox,
.modal-content {
  border: 1px solid rgba(46, 134, 255, 0.13);
  border-radius: 22px;
  box-shadow: 0 16px 40px rgba(7, 17, 31, 0.1);
}
.card-header,
.modal-header {
  background: linear-gradient(135deg, rgba(46, 134, 255, 0.1), rgba(0, 212, 255, 0.08));
  border-bottom: 1px solid rgba(46, 134, 255, 0.12);
}
/* Inputs */
.form-control,
.form-select {
  border-radius: 14px;
  border-color: rgba(46, 134, 255, 0.22);
}
.form-control:focus,
.form-select:focus {
  border-color: rgba(46, 134, 255, 0.72);
  box-shadow: 0 0 0 0.22rem rgba(46, 134, 255, 0.16);
}
/* Dark mode support */
html[data-bs-theme="dark"] body {
  background: radial-gradient(circle at top left, rgba(46, 134, 255, 0.18), transparent 34rem), linear-gradient(180deg, #07111f, #0b1728);
}
html[data-bs-theme="dark"] .card,
html[data-bs-theme="dark"] .cssbox,
html[data-bs-theme="dark"] .modal-content,
html[data-bs-theme="dark"] .offcanvas {
  background-color: #0e1b2d;
  color: #eaf4ff;
  border-color: rgba(255, 255, 255, 0.1);
}
/* Mobile nav cleanup */
@media (max-width: 767.98px) {
  header .navbar {
    min-height: 58px;
  }
  header .logo .white-text,
  header .logo span {
    font-size: 1.35rem;
  }
  header nav.puh .bg-black.bg-gradient {
    border-radius: 0 !important;
  }
  header nav.puh .nav {
    overflow-x: auto;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    scrollbar-width: none;
  }
  header nav.puh .nav::-webkit-scrollbar {
    display: none;
  }
  header nav.puh .nav-link {
    min-width: max-content;
    padding: 0.65rem 0.75rem;
    font-size: 0.82rem;
  }
}
/*# sourceMappingURL=purvs.css.map */