/* Spirit Void - Anime theme for the user panel */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700&family=Manrope:wght@400;600;700&display=swap');

body[data-theme="spirit-void"] {
  --t-bg: #06040f;
  --t-bg2: #110c22;
  --t-card: #0d0919;
  --t-line: #2a1f4d;
  --t-ink: #eae4ff;
  --t-muted: #a196c9;
  --t-acc: #8b5cf6;
  --t-acc2: #3ddad7;
  --t-radius: 18px;
  --bs-primary: #8b5cf6;
  --bs-primary-rgb: 139, 92, 246;
  --bs-link-color: #8b5cf6;
  --bs-link-hover-color: #3ddad7;
  --bs-body-bg: #06040f;
  --bs-body-color: #eae4ff;
  --bs-border-color: #2a1f4d;
  --bs-emphasis-color: #eae4ff;
  --bs-secondary-color: #a196c9;
  font-family: 'Manrope', system-ui, sans-serif;
  color: var(--t-ink);
  background: var(--t-bg);
  background-image: radial-gradient(900px 600px at 70% -10%, rgba(139,92,246,.28), transparent 60%), radial-gradient(600px 400px at 5% 80%, rgba(61,218,215,.16), transparent 60%);
  background-attachment: scroll;
}

body[data-theme="spirit-void"] h1,
body[data-theme="spirit-void"] h2,
body[data-theme="spirit-void"] h3,
body[data-theme="spirit-void"] h4,
body[data-theme="spirit-void"] h5,
body[data-theme="spirit-void"] h6,
body[data-theme="spirit-void"] .navbar-brand,
body[data-theme="spirit-void"] .btn { font-family: 'Cinzel', Georgia, serif; letter-spacing: .02em; }

/* surfaces */
body[data-theme="spirit-void"] .card,
body[data-theme="spirit-void"] .panel-card,
body[data-theme="spirit-void"] .stat-card,
body[data-theme="spirit-void"] .pricing-card,
body[data-theme="spirit-void"] .feature-card,
body[data-theme="spirit-void"] .testimonial,
body[data-theme="spirit-void"] .accordion-item,
body[data-theme="spirit-void"] .list-group-item,
body[data-theme="spirit-void"] .table {
  background: var(--t-card);
  color: var(--t-ink);
  border-color: var(--t-line);
  border-radius: var(--t-radius);
}
body[data-theme="spirit-void"] .card-header,
body[data-theme="spirit-void"] .card-footer,
body[data-theme="spirit-void"] .accordion-button { background: var(--t-bg2); color: var(--t-ink); border-color: var(--t-line); }
body[data-theme="spirit-void"] .accordion-button:not(.collapsed) { background: var(--t-bg2); color: var(--t-acc); box-shadow: none; }
body[data-theme="spirit-void"] .accordion-button::after { filter: invert(1) grayscale(1) brightness(2); }
body[data-theme="spirit-void"] .bg-light-soft,
body[data-theme="spirit-void"] .bg-light,
body[data-theme="spirit-void"] .bg-white { background: var(--t-bg2) !important; color: var(--t-ink); }
body[data-theme="spirit-void"] .text-muted,
body[data-theme="spirit-void"] .text-secondary,
body[data-theme="spirit-void"] .footer-text { color: var(--t-muted) !important; }
body[data-theme="spirit-void"] .text-dark,
body[data-theme="spirit-void"] .text-body { color: var(--t-ink) !important; }
body[data-theme="spirit-void"] .text-primary { color: var(--t-acc) !important; }
body[data-theme="spirit-void"] hr,
body[data-theme="spirit-void"] .footer-rule { border-color: var(--t-line); opacity: 1; }

/* tables */
body[data-theme="spirit-void"] .table { --bs-table-bg: transparent; --bs-table-color: var(--t-ink); --bs-table-border-color: var(--t-line); --bs-table-striped-color: var(--t-ink); --bs-table-striped-bg: rgba(139,92,246,.08); --bs-table-hover-color: var(--t-ink); --bs-table-hover-bg: rgba(139,92,246,.08); }
body[data-theme="spirit-void"] .table > thead { color: var(--t-acc); text-transform: uppercase; font-size: .74rem; letter-spacing: .08em; }

/* nav */
body[data-theme="spirit-void"] .site-nav { background: rgba(6,4,15,.8); border-bottom: 1px solid rgba(139,92,246,.3); backdrop-filter: blur(12px); }
body[data-theme="spirit-void"] .site-nav .nav-link { color: var(--t-muted); font-weight: 600; }
body[data-theme="spirit-void"] .site-nav .nav-link:hover,
body[data-theme="spirit-void"] .site-nav .nav-link.active { color: var(--t-acc); }
body[data-theme="spirit-void"] .navbar-brand,
body[data-theme="spirit-void"] .navbar-brand span { color: var(--t-ink) !important; }
body[data-theme="spirit-void"] .brand-mark { background: linear-gradient(135deg, var(--t-acc), var(--t-acc2)); color: #0a0616; border-radius: var(--t-radius); }
body[data-theme="spirit-void"] .navbar-toggler { border-color: var(--t-line); color: var(--t-ink); }
body[data-theme="spirit-void"] .navbar-toggler-icon { filter: invert(1) brightness(1.6); }
body[data-theme="spirit-void"] .nav-balance { background: rgba(139,92,246,.16); color: var(--t-acc); border: 1px solid var(--t-line); border-radius: 999px; padding: .25rem .7rem; font-weight: 700; }

/* buttons + forms */
body[data-theme="spirit-void"] .btn-primary { --bs-btn-bg: var(--t-acc); --bs-btn-border-color: var(--t-acc); --bs-btn-color: #0a0616; --bs-btn-hover-bg: var(--t-acc2); --bs-btn-hover-border-color: var(--t-acc2); --bs-btn-hover-color: #0a0616; --bs-btn-active-bg: var(--t-acc2); --bs-btn-active-color: #0a0616; }
body[data-theme="spirit-void"] .btn-outline-primary { --bs-btn-color: var(--t-acc); --bs-btn-border-color: var(--t-acc); --bs-btn-hover-bg: var(--t-acc); --bs-btn-hover-color: #0a0616; }
body[data-theme="spirit-void"] .btn-light,
body[data-theme="spirit-void"] .btn-outline-secondary { --bs-btn-bg: var(--t-bg2); --bs-btn-color: var(--t-ink); --bs-btn-border-color: var(--t-line); --bs-btn-hover-bg: var(--t-line); --bs-btn-hover-color: var(--t-ink); }
body[data-theme="spirit-void"] .btn { border-radius: var(--t-radius); font-weight: 700; }
body[data-theme="spirit-void"] .form-control,
body[data-theme="spirit-void"] .form-select,
body[data-theme="spirit-void"] .input-group-text { background: #110c22; color: var(--t-ink); border-color: var(--t-line); border-radius: var(--t-radius); }
body[data-theme="spirit-void"] .form-control::placeholder { color: var(--t-muted); }
body[data-theme="spirit-void"] .form-control:focus,
body[data-theme="spirit-void"] .form-select:focus { background: #110c22; color: var(--t-ink); border-color: var(--t-acc); box-shadow: 0 0 0 .2rem rgba(139, 92, 246, .25); }
body[data-theme="spirit-void"] .form-select option { background: var(--t-bg2); color: var(--t-ink); }
body[data-theme="spirit-void"] .form-label,
body[data-theme="spirit-void"] label { color: var(--t-ink); }
body[data-theme="spirit-void"] .badge.bg-light,
body[data-theme="spirit-void"] .badge.text-bg-light { background: var(--t-bg2) !important; color: var(--t-ink) !important; }
body[data-theme="spirit-void"] .modal-content,
body[data-theme="spirit-void"] .offcanvas,
body[data-theme="spirit-void"] .dropdown-menu { background: var(--t-card); color: var(--t-ink); border-color: var(--t-line); }
body[data-theme="spirit-void"] .dropdown-item { color: var(--t-ink); }
body[data-theme="spirit-void"] .dropdown-item:hover { background: var(--t-bg2); color: var(--t-acc); }
body[data-theme="spirit-void"] .alert { border-radius: var(--t-radius); border-color: var(--t-line); background: var(--t-bg2); color: var(--t-ink); }
body[data-theme="spirit-void"] .nav-tabs .nav-link { color: var(--t-muted); }
body[data-theme="spirit-void"] .nav-tabs .nav-link.active { background: var(--t-card); color: var(--t-acc); border-color: var(--t-line) var(--t-line) var(--t-card); }

/* hero + footer */
body[data-theme="spirit-void"] .hero,
body[data-theme="spirit-void"] .hero-section { background: linear-gradient(160deg,#0a0620,#04121a); color: var(--t-ink); }
body[data-theme="spirit-void"] .site-footer { background: #07050f; color: var(--t-muted); border-top: 1px solid var(--t-line); }
body[data-theme="spirit-void"] .site-footer a { color: var(--t-muted); }
body[data-theme="spirit-void"] .site-footer a:hover { color: var(--t-acc); }
body[data-theme="spirit-void"] .footer-head { color: var(--t-ink); }
body[data-theme="spirit-void"] .social { border: 1px solid var(--t-line); color: var(--t-ink); }
body[data-theme="spirit-void"] .to-top { background: var(--t-acc); color: #0a0616; }

/* theme signature */

body[data-theme="spirit-void"] .card { position: relative; background: linear-gradient(160deg, rgba(139,92,246,.10), rgba(13,9,25,.9)); backdrop-filter: blur(6px); }
body[data-theme="spirit-void"] .card::after { content: ""; position: absolute; inset: -1px; border-radius: inherit; padding: 1px; background: linear-gradient(140deg, rgba(139,92,246,.7), rgba(61,218,215,.35), transparent); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }
body[data-theme="spirit-void"] .btn-primary { background: linear-gradient(120deg,#8b5cf6,#3ddad7); border: 0; color: #0a0616; }
body[data-theme="spirit-void"] h1, body[data-theme="spirit-void"] h2 { background: linear-gradient(90deg,#eae4ff,#8b5cf6,#3ddad7); -webkit-background-clip: text; background-clip: text; color: transparent; }



/* ---- Theme artwork (spirit-void) ---- */
body[data-theme="spirit-void"]::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: url("../../img/themes/spirit-void.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  opacity: .42;
  mix-blend-mode: normal;
  filter: saturate(1);
  -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,.85) 45%, rgba(0,0,0,.35) 80%, rgba(0,0,0,.12) 100%);
  mask-image: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,.85) 45%, rgba(0,0,0,.35) 80%, rgba(0,0,0,.12) 100%);
}
body[data-theme="spirit-void"] { position: relative; }
body[data-theme="spirit-void"] .theme-hero-art {
  background-image: url("../../img/themes/spirit-void.jpg");
  display: block;
}
@media (max-width: 767.98px) {
  body[data-theme="spirit-void"]::before { opacity: .38; }
}
