/* ============================================================
   SubVision — Premium Redesign Layer
   ------------------------------------------------------------
   Concept: the site is dressed the way the group's own releases
   are — like something with subtitles on. A caption-bar hero,
   timecode-styled metadata, monospace status stamps, and a
   letterboxed frame around key art. Loaded after subvision.css;
   it re-skins the existing markup without touching PHP or JS,
   so every selector, id and behaviour stays exactly as it was.
   ============================================================ */

/* ═══════════════════════════════════════════════════════════
   1. TOKENS
═══════════════════════════════════════════════════════════ */
:root {
  --sv-bg:        #110F16;
  --sv-bg-2:      #0C0A10;
  --sv-s1:        #19151F;
  --sv-s2:        #201A29;
  --sv-s3:        #281F33;
  --sv-s4:        #362A45;
  --sv-border:    #362C42;
  --sv-border-2:  #4A3B5C;
  --sv-text:      #F3EEF9;
  --sv-text-2:    #B6ABC7;
  --sv-text-3:    #7C7190;
  --sv-text-dim:  #574C68;

  --c-violet:     #8C6CF6;
  --c-violet-dp:  #6B48E0;
  --c-violet-lt:  #B5A1FF;
  --c-gold:       #F0B429;
  --c-gold-dp:    #C4870E;
  --c-gold-lt:    #FFD873;
  --c-rose:       #F2617A;
  --c-mint:       #6BDDA8;
  --c-sky:        #6FB7E8;

  --r-sm: 6px; --r-md: 10px; --r-lg: 16px; --r-xl: 22px; --r-pill: 999px;
  --sp-1:.25rem; --sp-2:.5rem; --sp-3:.75rem; --sp-4:1rem; --sp-5:1.25rem; --sp-6:1.5rem; --sp-8:2.5rem;

  --t-xs: clamp(.68rem,1.3vw,.75rem);
  --t-sm: clamp(.82rem,1.6vw,.88rem);
  --t-md: clamp(.92rem,2vw,1rem);
  --t-lg: clamp(1.02rem,2.4vw,1.15rem);
  --t-xl: clamp(1.15rem,2.8vw,1.45rem);
  --t-2xl: clamp(1.4rem,3.4vw,2rem);
  --t-3xl: clamp(1.9rem,5vw,3.4rem);

  --ease: cubic-bezier(.22,1,.36,1);
  --sh1: 0 1px 2px rgba(0,0,0,.5), 0 1px 1px rgba(0,0,0,.4);
  --sh2: 0 6px 18px rgba(0,0,0,.55), 0 2px 6px rgba(0,0,0,.4);
  --sh3: 0 14px 34px rgba(0,0,0,.6), 0 4px 12px rgba(0,0,0,.45);
  --sh-glow: 0 0 0 1px rgba(140,108,246,.18), 0 8px 30px rgba(140,108,246,.16);

  --font-display: 'Fraunces', 'Georgia', serif;
  --font-body: 'Manrope', system-ui, -apple-system, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;

  /* Remap the theme's original token names to the new palette. Several
     templates reference these directly (var(--sv-accent, #2196f3) etc.);
     redeclaring them here means every one of those references — including
     ones inside inline <style> blocks we don't otherwise touch — picks up
     the new colors instead of falling back to the old blue. */
  --sv-accent:        var(--c-violet);
  --sv-accent-dark:   var(--c-violet-dp);
  --sv-accent-light:  var(--c-violet-lt);
  --sv-accent-glow:   rgba(140,108,246,.30);
  --sv-surface-1:     var(--sv-s1);
  --sv-surface-2:     var(--sv-s2);
  --sv-surface-3:     var(--sv-s3);
  --sv-surface-4:     var(--sv-s4);
  --sv-divider:       rgba(255,255,255,.08);
  --sv-divider-2:     rgba(255,255,255,.14);
  --sv-text-primary:  var(--sv-text);
  --sv-text-muted:    var(--sv-text-2);
  --sv-radius:        var(--r-md);
  --sv-radius-sm:     var(--r-sm);
  --sv-radius-pill:   var(--r-pill);
  --sv-elev-1: var(--sh1);
  --sv-elev-2: var(--sh2);
  --sv-elev-3: var(--sh3);
  --sv-elev-4: var(--sh3);
}

/* ═══════════════════════════════════════════════════════════
   2. BASE
═══════════════════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{
  background:
    radial-gradient(ellipse 900px 500px at 12% -10%, rgba(140,108,246,.10), transparent 60%),
    radial-gradient(ellipse 700px 500px at 100% 0%, rgba(240,180,41,.06), transparent 55%),
    var(--sv-bg) !important;
  color:var(--sv-text) !important;
  font-family:var(--font-body) !important;
  font-size:var(--t-md);
  line-height:1.65;
  overflow-x:hidden;
}
/* Guards against Bootstrap's .bg-dark utility (higher selector specificity
   than a bare `body{}` rule) silently overriding the site background */
body.bg-dark, body[class*="bg-dark"]{
  background:
    radial-gradient(ellipse 900px 500px at 12% -10%, rgba(140,108,246,.10), transparent 60%),
    radial-gradient(ellipse 700px 500px at 100% 0%, rgba(240,180,41,.06), transparent 55%),
    var(--sv-bg) !important;
}
::selection{background:rgba(140,108,246,.32);color:#fff}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:var(--sv-bg)}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--c-violet),var(--c-violet-dp));border-radius:4px}

a{color:var(--c-violet-lt);text-decoration:none;transition:color .2s ease}
a:hover{color:var(--c-gold)}
h1,h2,h3,h4,h5,h6{color:var(--sv-text) !important;font-family:var(--font-display) !important;font-weight:600 !important;line-height:1.15;letter-spacing:-.01em}
p{color:var(--sv-text-2)}
strong,b{color:var(--sv-text);font-weight:700}
*:focus-visible{outline:2px solid var(--c-gold) !important;outline-offset:2px !important}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important}}

/* Timecode / eyebrow utility — the site's signature typographic device */
.sv-timecode{
  font-family:var(--font-mono) !important;
  font-size:.7rem !important;
  letter-spacing:.06em !important;
  color:var(--c-gold) !important;
}
.section-title,.sv-label-text{
  font-family:var(--font-mono) !important;
  font-size:.68rem !important; font-weight:600 !important;
  letter-spacing:.16em !important; text-transform:uppercase !important;
  color:var(--sv-text-3) !important;
  display:flex !important; align-items:center !important; gap:var(--sp-3) !important;
  padding-bottom:var(--sp-3) !important; border-bottom:1px solid var(--sv-border) !important;
  margin-bottom:var(--sp-4) !important;
}
.section-title::before{content:'▸';color:var(--c-violet);font-size:.9em}
.section-title::after{content:'';flex:1;height:1px;background:linear-gradient(to right,var(--sv-border),transparent)}
.sv-label-bar{background:linear-gradient(180deg,var(--c-violet),var(--c-gold)) !important;border-radius:2px !important}

/* ═══════════════════════════════════════════════════════════
   3. NAVBAR — desktop links + original mobile drawer, reskinned
═══════════════════════════════════════════════════════════ */
.sv-navbar{
  background:rgba(17,15,22,.92) !important;
  border-bottom:1px solid var(--sv-border) !important;
  box-shadow:0 1px 0 rgba(140,108,246,.08),0 4px 20px rgba(0,0,0,.4) !important;
  backdrop-filter:blur(10px);
}
.sv-navbar::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--c-violet) 35%,var(--c-gold) 65%,transparent);
  opacity:.4;pointer-events:none;
}
.sv-navbar>.container{max-width:1320px !important}
.sv-logo-img{filter:drop-shadow(0 0 8px rgba(140,108,246,.25));transition:filter .2s ease !important}
.navbar-brand:hover .sv-logo-img{filter:drop-shadow(0 0 16px rgba(140,108,246,.5)) brightness(1.06)}

@media(min-width:992px){
  .sv-navbar .navbar-nav .nav-link,
  .sv-nav-link{
    color:var(--sv-text-2) !important;
    font-family:var(--font-mono) !important;
    font-size:.7rem !important; font-weight:500 !important;
    letter-spacing:.14em !important; text-transform:uppercase;
    position:relative; background:transparent !important;
    transition:color .18s ease !important;
  }
  .sv-navbar .navbar-nav .nav-link::after,
  .sv-nav-link::after{
    content:'';position:absolute;bottom:0;left:50%;right:50%;height:2px;
    background:linear-gradient(90deg,var(--c-violet),var(--c-gold));
    border-radius:2px 2px 0 0;transition:left .2s ease,right .2s ease;
    box-shadow:0 0 8px rgba(140,108,246,.6);
  }
  .sv-navbar .navbar-nav .nav-link:hover::after,
  .sv-nav-link:hover::after,
  .sv-navbar .navbar-nav .nav-link.active::after,
  .sv-nav-link.active::after{left:1rem;right:1rem}
  .sv-navbar .navbar-nav .nav-item .nav-link:hover,
  .sv-nav-link:hover{color:var(--c-violet-lt) !important;background:transparent !important}
  .sv-navbar .navbar-nav .nav-link.active,
  .sv-nav-link.active{color:var(--c-gold) !important;background:rgba(240,180,41,.05) !important}
}

/* Mobile nav — no hamburger, no off-canvas drawer. The link row is always
   visible under the logo and scrolls horizontally if it doesn't fit. */
.navbar-toggler,.sv-toggler-btn,.sv-toggler-box{display:none !important}
#mainNav{
  display:flex !important;
  position:static !important;
  transform:none !important;
  box-shadow:none !important;
  width:100% !important;
  max-width:none !important;
  background:transparent !important;
  border:none !important;
  overflow:visible !important;
}
@media(max-width:991px){
  .sv-navbar>.container{flex-wrap:wrap !important;padding:.85rem 1rem !important;row-gap:.6rem}
  #mainNav{
    order:3;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    justify-content:flex-start !important;
  }
  #mainNav::-webkit-scrollbar{display:none}
  .sv-navbar .navbar-nav{flex-direction:row !important;gap:.4rem;width:max-content}
  .sv-navbar .navbar-nav .nav-item{width:auto}
  .sv-navbar .navbar-nav .nav-link,
  .sv-nav-link{
    font-family:var(--font-mono) !important;
    height:auto !important; line-height:1.3 !important;
    padding:.5rem .9rem !important;
    border:1px solid var(--sv-border) !important;
    border-radius:var(--r-pill) !important;
    white-space:nowrap;
  }
  .sv-navbar .navbar-nav .nav-link:hover,
  .sv-navbar .navbar-nav .nav-link.active,
  .sv-nav-link:hover,
  .sv-nav-link.active{
    color:var(--c-gold) !important;
    background:rgba(140,108,246,.10) !important;
    border-color:var(--c-violet) !important;
  }
}
.sv-navbar .form-control{
  background:var(--sv-s2) !important;border:1px solid var(--sv-border) !important;color:var(--sv-text) !important;
}
.sv-navbar .form-control:focus{border-color:var(--c-violet) !important;box-shadow:0 0 0 3px rgba(140,108,246,.18) !important}
.sv-search-btn{background:var(--c-violet) !important;border:1px solid var(--c-violet) !important;color:#fff !important}
.sv-search-btn:hover{background:var(--c-violet-dp) !important;border-color:var(--c-violet-dp) !important}

/* ═══════════════════════════════════════════════════════════
   4. HERO / BANNER — caption-bar treatment
   The title sits low, in a subtitle-style bar, like an actual
   video caption. Thin letterbox rules top & bottom of the art.
═══════════════════════════════════════════════════════════ */
.sv-banner-section{
  border-bottom:1px solid var(--sv-border) !important;
  position:relative;
}
.sv-banner-section::before,
.sv-banner-section::after{
  content:'';position:absolute;left:0;right:0;height:1px;z-index:3;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(240,180,41,.35) 50%,transparent);
}
.sv-banner-section::before{top:0}
.sv-banner-section::after{bottom:0}

.sv-banner-overlay{
  background:linear-gradient(to right,
    rgba(17,15,22,.97) 0%, rgba(17,15,22,.86) 38%,
    rgba(17,15,22,.48) 66%, rgba(17,15,22,.14) 100%) !important;
}
@media(max-width:767px){
  .sv-banner-overlay{background:rgba(17,15,22,.90) !important}
}

.sv-banner-heading{
  font-family:var(--font-mono) !important;
  color:var(--c-gold) !important; font-weight:600 !important;
  letter-spacing:.2em !important; text-transform:uppercase;
  font-size:.72rem !important;
}
.sv-banner-heading::before{content:'▶ '}
.sv-banner-title{
  font-family:var(--font-display) !important;
  color:var(--sv-text) !important; font-weight:600 !important;
  text-shadow:0 2px 24px rgba(0,0,0,.85) !important;
}
.sv-banner-sinopse,.sv-banner-sinopse-italic{color:var(--sv-text-2) !important}
.sv-banner-sinopse-box{
  background:rgba(12,10,16,.72) !important;
  border:1px solid var(--sv-border) !important;
  border-left:2px solid var(--c-violet) !important;
  border-radius:4px !important;
}
.sv-banner-btn{
  background:linear-gradient(135deg,rgba(140,108,246,.18),rgba(240,180,41,.10)) !important;
  border:1px solid rgba(140,108,246,.5) !important;
  color:var(--c-violet-lt) !important; border-radius:var(--r-pill) !important;
  font-weight:700 !important; letter-spacing:.06em !important;
  box-shadow:0 0 16px rgba(140,108,246,.14) !important;
  transition:all .22s var(--ease) !important;
}
.sv-banner-btn:hover{
  background:linear-gradient(135deg,var(--c-violet),var(--c-violet-dp)) !important;
  border-color:var(--c-violet) !important; color:#fff !important;
  box-shadow:0 0 26px rgba(140,108,246,.4) !important;
  transform:translateY(-2px) !important;
}
.sv-banner-dot{
  background:rgba(12,10,16,.6) !important;border:1px solid var(--sv-border) !important;color:var(--sv-text-3) !important;
}
.sv-banner-dot:hover{background:rgba(140,108,246,.16) !important;border-color:var(--c-violet) !important;color:var(--c-violet-lt) !important}
.sv-banner-thumb{border:2px solid transparent !important;border-radius:5px !important;opacity:.45 !important}
.sv-banner-thumb.sv-thumb-active{border-color:var(--c-gold) !important;opacity:1 !important}

/* ═══════════════════════════════════════════════════════════
   5. CARDS
═══════════════════════════════════════════════════════════ */
.sv-launch-card,.sv-proj-card,.card,.bg-dark-card{
  background:var(--sv-s2) !important; border:1px solid var(--sv-border) !important;
  border-radius:var(--r-lg) !important; box-shadow:var(--sh1) !important;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s var(--ease) !important;
  overflow:hidden;
}
.sv-launch-card:hover{
  border-color:rgba(140,108,246,.4) !important;
  box-shadow:var(--sh2), var(--sh-glow) !important;
  transform:translateY(-4px) !important;
}
.sv-proj-card:hover{
  border-color:rgba(240,180,41,.4) !important;
  box-shadow:var(--sh3), 0 0 24px rgba(240,180,41,.12) !important;
  transform:translateY(-4px) !important;
}
.sv-poster-wrap{border-radius:var(--r-lg) var(--r-lg) 0 0 !important;background:var(--sv-s3) !important;overflow:hidden}
.sv-poster-img{transition:transform .45s var(--ease), filter .3s ease !important}
.sv-launch-card:hover .sv-poster-img{transform:scale(1.06) !important;filter:brightness(1.05) !important}
/* Title strip stays the same surface as the card itself — no color seam
   at the bottom of the box. A hairline divider is enough separation. */
.sv-card-title{
  padding:.7rem .8rem !important; font-family:var(--font-body) !important;
  font-size:var(--t-xs) !important; color:var(--sv-text-2) !important; font-weight:600 !important;
  background:var(--sv-s2) !important; border-top:1px solid var(--sv-border) !important;
  display:flex; align-items:center; justify-content:center; text-align:center;
}
.sv-card-title a{color:var(--sv-text-2) !important}
.sv-card-title a:hover,.sv-launch-card:hover .sv-card-title a{color:var(--c-violet-lt) !important}
.sv-proj-card:hover .sv-card-title a{color:var(--c-gold) !important}
.card-header{background:var(--sv-s1) !important;border-bottom:1px solid var(--sv-border) !important;color:var(--sv-text-2) !important;font-weight:700}
.card-body{background:transparent !important}
.card-footer{background:var(--sv-s1) !important;border-top:1px solid var(--sv-border) !important}

@keyframes svFadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.sv-launch-card,.sv-proj-card,.card.bg-dark-card{animation:svFadeUp .34s var(--ease) both}
.sv-fade-in{opacity:0;transform:translateY(14px);transition:opacity .45s var(--ease),transform .45s var(--ease)}
.sv-fade-in.sv-visible{opacity:1;transform:none}

/* ═══════════════════════════════════════════════════════════
   6. STATUS STAMPS — styled like subtitle track / QC stamps
═══════════════════════════════════════════════════════════ */
.sv-status-pill,.sv-badge-status{
  font-family:var(--font-mono) !important;
  font-weight:600 !important; letter-spacing:.05em !important;
  text-transform:uppercase; border-radius:4px !important;
}
.sv-status-airing,.sv-badge-status.sv-status-airing{background:#171034 !important;color:var(--c-sky) !important;border:1px solid rgba(111,183,232,.5) !important}
.sv-status-complete,.sv-badge-status.sv-status-complete{background:#0F2419 !important;color:var(--c-mint) !important;border:1px solid rgba(107,221,168,.45) !important}
.sv-status-paused,.sv-badge-status.sv-status-paused{background:#2B2008 !important;color:var(--c-gold) !important;border:1px solid rgba(240,180,41,.45) !important}
.sv-status-dropped,.sv-badge-status.sv-status-dropped{background:#2B0F16 !important;color:var(--c-rose) !important;border:1px solid rgba(242,97,122,.45) !important}
.sv-status-upcoming,.sv-badge-status.sv-status-upcoming{background:#1D1330 !important;color:var(--c-violet-lt) !important;border:1px solid rgba(181,161,255,.45) !important}
.sv-status-default,.sv-badge-status.sv-status-default{background:var(--sv-s1) !important;color:var(--sv-text-3) !important;border:1px solid var(--sv-border) !important}

.badge{border-radius:4px !important;font-family:var(--font-mono) !important;font-weight:600 !important;letter-spacing:.04em !important}
.badge.bg-success{background:#0F2419 !important;color:var(--c-mint) !important;border:1px solid rgba(107,221,168,.3) !important}
.badge.bg-info{background:#171034 !important;color:var(--c-sky) !important;border:1px solid rgba(111,183,232,.3) !important}
.badge.bg-danger{background:#2B0F16 !important;color:var(--c-rose) !important;border:1px solid rgba(242,97,122,.3) !important}
.badge.bg-warning{background:#2B2008 !important;color:var(--c-gold) !important;border:1px solid rgba(240,180,41,.3) !important}
.badge.bg-secondary{background:var(--sv-s1) !important;color:var(--sv-text-3) !important;border:1px solid var(--sv-border) !important}

/* ═══════════════════════════════════════════════════════════
   7. BUTTONS
═══════════════════════════════════════════════════════════ */
.btn{
  border-radius:var(--r-md) !important; font-weight:700 !important;
  letter-spacing:.02em !important; transition:all .2s var(--ease) !important; box-shadow:var(--sh1) !important;
}
.btn:hover{transform:translateY(-1px) !important}
.btn:active{transform:none !important}

.btn-primary{background:linear-gradient(135deg,var(--c-violet-dp),var(--c-violet)) !important;border-color:var(--c-violet) !important;color:#fff !important}
.btn-primary:hover{background:linear-gradient(135deg,var(--c-violet),var(--c-violet-lt)) !important;box-shadow:0 0 22px rgba(140,108,246,.4) !important}
.btn-outline-info{border-color:var(--c-sky) !important;color:var(--c-sky) !important;background:rgba(111,183,232,.06) !important}
.btn-outline-info:hover{background:rgba(111,183,232,.18) !important;box-shadow:0 0 16px rgba(111,183,232,.25) !important}
.btn-outline-success{border-color:var(--c-mint) !important;color:var(--c-mint) !important;background:rgba(107,221,168,.06) !important}
.btn-outline-success:hover{background:rgba(107,221,168,.18) !important;box-shadow:0 0 16px rgba(107,221,168,.25) !important}
.btn-outline-primary{border-color:var(--c-gold) !important;color:var(--c-gold) !important;background:rgba(240,180,41,.06) !important}
.btn-outline-primary:hover{background:rgba(240,180,41,.18) !important;box-shadow:0 0 16px rgba(240,180,41,.25) !important}
.btn-outline-light{border-color:var(--sv-border) !important;color:var(--sv-text-2) !important;background:transparent !important}
.btn-outline-light:hover{background:var(--sv-s3) !important;color:var(--sv-text) !important;border-color:var(--sv-border-2) !important}
.btn-outline-warning{border-color:var(--c-gold-lt) !important;color:var(--c-gold-lt) !important;background:rgba(255,216,115,.06) !important}
.btn-outline-warning:hover{background:rgba(255,216,115,.18) !important;color:var(--c-gold-lt) !important}

.sv-dl-btn{font-family:var(--font-mono) !important;border-radius:var(--r-md) !important;font-weight:600 !important;letter-spacing:.03em !important}
.sv-dl-btn-nyaa{background:rgba(111,183,232,.12) !important;border:1px solid rgba(111,183,232,.4) !important;color:var(--c-sky) !important}
.sv-dl-btn-nyaa:hover{background:rgba(111,183,232,.22) !important;box-shadow:0 0 18px rgba(111,183,232,.25) !important;transform:translateY(-2px) !important}
.sv-dl-btn-neko{background:rgba(140,108,246,.14) !important;border:1px solid rgba(140,108,246,.4) !important;color:var(--c-violet-lt) !important}
.sv-dl-btn-neko:hover{background:rgba(140,108,246,.24) !important;box-shadow:0 0 18px rgba(140,108,246,.3) !important;transform:translateY(-2px) !important}
.sv-dl-btn-proj{background:rgba(240,180,41,.14) !important;border:1px solid rgba(240,180,41,.4) !important;color:var(--c-gold) !important}
.sv-dl-btn-proj:hover{background:rgba(240,180,41,.24) !important;box-shadow:0 0 18px rgba(240,180,41,.3) !important;transform:translateY(-2px) !important}

/* ═══════════════════════════════════════════════════════════
   8. FORMS
═══════════════════════════════════════════════════════════ */
.form-control,.form-select{
  background:var(--sv-s2) !important;border:1px solid var(--sv-border) !important;color:var(--sv-text) !important;
  border-radius:var(--r-md) !important; transition:border-color .2s, box-shadow .2s !important;
}
.form-control::placeholder{color:var(--sv-text-dim) !important}
.form-control:focus,.form-select:focus{
  background:var(--sv-s3) !important; border-color:var(--c-violet) !important;
  box-shadow:0 0 0 3px rgba(140,108,246,.16) !important; color:var(--sv-text) !important; outline:none !important;
}
.form-select option{background:var(--sv-s3) !important;color:var(--sv-text) !important}
.form-label{color:var(--sv-text-2) !important;font-weight:600 !important;font-family:var(--font-mono) !important;font-size:.72rem !important;letter-spacing:.06em !important;text-transform:uppercase}

/* ═══════════════════════════════════════════════════════════
   9. TABLES
═══════════════════════════════════════════════════════════ */
.table-dark{--bs-table-bg:transparent !important;--bs-table-border-color:var(--sv-border) !important;--bs-table-color:var(--sv-text) !important;--bs-table-hover-bg:rgba(140,108,246,.05) !important}
.table-dark th{color:var(--sv-text-3) !important;font-family:var(--font-mono) !important;font-size:.68rem !important;text-transform:uppercase;letter-spacing:.08em;background:var(--sv-s1) !important;border-color:var(--sv-border) !important}
.table-dark td{color:var(--sv-text) !important;border-color:var(--sv-border) !important}

.sv-projeto-info-table{border-collapse:collapse;width:100%}
.sv-projeto-info-table tr{border-bottom:1px solid var(--sv-border) !important}
.sv-projeto-info-table tr:hover{background:rgba(140,108,246,.04) !important}
.sv-projeto-info-table th{background:var(--sv-s1) !important;color:var(--sv-text-3) !important;font-family:var(--font-mono) !important;font-size:.66rem !important;text-transform:uppercase;letter-spacing:.08em;border-right:1px solid var(--sv-border) !important}
.sv-projeto-info-table td{color:var(--sv-text) !important;background:var(--sv-s2) !important}
.sv-th-label{color:var(--sv-text-3) !important}
.sv-td-val{color:var(--sv-text-2) !important}

/* ═══════════════════════════════════════════════════════════
   10. SINGLE PROJECT / SINGLE POST
═══════════════════════════════════════════════════════════ */
.sv-projeto-main-card,.sv-single-post-card{
  background:var(--sv-s2) !important;border:1px solid var(--sv-border) !important;
  border-radius:var(--r-xl) !important;box-shadow:var(--sh2) !important;overflow:hidden;
}
.sv-projeto-title-bar{background:var(--sv-s1) !important;border-bottom:1px solid var(--sv-border) !important}
.sv-projeto-title-bar h3,.sv-single-post-title{font-family:var(--font-display) !important;color:var(--sv-text) !important}
.sv-single-title{font-family:var(--font-display) !important;color:var(--sv-text) !important}
.sv-single-title-en{color:var(--sv-text-3) !important;font-style:italic}
.sv-single-sinopse-text,.sv-sinopse,.sv-single-content,.sv-single-content p{color:var(--sv-text-2) !important;line-height:1.8 !important}
/* the_content() can carry inline background colors left over from pasted
   text (Discord/Word/etc). Strip any background on the content block and
   everything inside it so it always reads as one surface with the card. */
.sv-single-content,
.sv-single-content *{
  background-color:transparent !important;
  background-image:none !important;
}
.sv-single-content pre,
.sv-single-content code,
.code-box{
  background:var(--sv-s1) !important;
  color:var(--c-gold-lt) !important;
  border:1px solid var(--sv-border) !important;
  border-radius:var(--r-md) !important;
  font-family:var(--font-mono) !important;
  padding:var(--sp-3) var(--sp-4) !important;
  display:block;
  white-space:pre-wrap;
  word-break:break-word;
}
.sv-single-content a{color:var(--c-violet-lt) !important;text-decoration:underline;text-underline-offset:2px}
.sv-single-content img{border-radius:var(--r-md);margin:var(--sp-3) 0}

/* ── Disqus box ── */
.sv-disqus-box{
  background:var(--sv-s2);
  border:1px solid var(--sv-border);
  border-radius:var(--r-xl);
  box-shadow:var(--sh2);
  padding:var(--sp-6);
}
.sv-disqus-box-header{
  display:flex; align-items:center; gap:.5rem;
  font-family:var(--font-mono); font-size:.75rem; font-weight:600;
  letter-spacing:.1em; text-transform:uppercase; color:var(--sv-text-3);
  padding-bottom:var(--sp-4); margin-bottom:var(--sp-4);
  border-bottom:1px solid var(--sv-border);
}
.sv-disqus-box-header i{color:var(--c-violet-lt);font-size:1rem}
.sv-single-sinopse-label{color:var(--sv-text-dim) !important;font-family:var(--font-mono) !important;letter-spacing:.1em !important;text-transform:uppercase}
.sv-single-poster-img{border-radius:var(--r-md) !important;box-shadow:var(--sh3) !important}
.sv-single-dl-area{border-top:1px solid var(--sv-border) !important}
.sv-single-post-header{border-bottom:1px solid var(--sv-border) !important}
.sv-single-post-meta{color:var(--sv-text-dim) !important;font-family:var(--font-mono) !important}
.sv-atualizacao-inline{border:1px solid rgba(107,221,168,.3) !important;background:rgba(107,221,168,.07) !important;color:var(--c-mint) !important}

/* ═══════════════════════════════════════════════════════════
   11. STAFF / PARTNERS / DISCORD
═══════════════════════════════════════════════════════════ */
.sv-staff-card,.sv-parceiros-card,.sv-static-card,.sv-no-highlight{
  background:var(--sv-s2) !important;border:1px solid var(--sv-border) !important;border-radius:var(--r-lg) !important;
}
/* Used on Contato/Equipe cards that intentionally don't lift on hover —
   keep them on the same surface tone instead of the old flat gray */
.sv-no-hover,
.sv-no-hover:hover,
.sv-static-card:hover,
.bg-dark-card.sv-no-hover:hover{
  background:var(--sv-s2) !important;
  border-color:var(--sv-border) !important;
  box-shadow:var(--sh1) !important;
  transform:none !important;
}
.sv-staff-header,.sv-parceiros-header{background:var(--sv-s1) !important;border-bottom:1px solid var(--sv-border) !important;font-family:var(--font-mono) !important;letter-spacing:.08em !important;color:var(--sv-text-3) !important}
.sv-parc-link{color:var(--sv-text-2) !important}
.sv-parc-link:hover{background:rgba(140,108,246,.08) !important;color:var(--c-violet-lt) !important}
.sv-equipe-grupo-header{border-bottom:1px solid var(--sv-border) !important}
.sv-equipe-count{background:var(--sv-s3) !important;border:1px solid var(--sv-border) !important;color:var(--sv-text-2) !important}
.sv-membro-nome{color:var(--sv-text) !important;font-weight:700 !important}
.sv-discord-widget-wrap{background:rgba(88,101,242,.06) !important;border:1px solid rgba(88,101,242,.18) !important;border-radius:var(--r-lg) !important}
.sv-discord-header{background:rgba(88,101,242,.12) !important;border-bottom:1px solid rgba(88,101,242,.18) !important;color:#b7bffc !important}

/* ═══════════════════════════════════════════════════════════
   12. PAGINATION / FILTERS
═══════════════════════════════════════════════════════════ */
.sv-pag-btn,.page-link{
  background:var(--sv-s2) !important;border:1px solid var(--sv-border) !important;color:var(--sv-text-2) !important;
  border-radius:var(--r-sm) !important;font-family:var(--font-mono) !important;
}
.sv-pag-btn:hover,.sv-pag-btn.sv-pag-active,.page-link:hover,.page-item.active .page-link{
  background:rgba(140,108,246,.14) !important;border-color:rgba(140,108,246,.5) !important;color:var(--c-violet-lt) !important;
}
.page-item.disabled .page-link{background:var(--sv-s1) !important;color:var(--sv-text-dim) !important}
.svpf-all-btn.svpf-on,.svpf-sort-btn.svpf-on{background:rgba(140,108,246,.18) !important;border-color:var(--c-violet) !important;color:#fff !important}
.svpf-alpha-btn.svpf-on:not(.svpf-alpha-off){background:rgba(240,180,41,.16) !important;border-color:var(--c-gold) !important;color:var(--c-gold) !important}
.svpf-alpha-has:hover{background:rgba(140,108,246,.08) !important;color:var(--c-violet-lt) !important}

/* ═══════════════════════════════════════════════════════════
   13. ACCORDION (FAQ)
═══════════════════════════════════════════════════════════ */
.accordion-item{background:var(--sv-s2) !important;border:1px solid var(--sv-border) !important;border-radius:var(--r-lg) !important;overflow:hidden}
.accordion-button{background:var(--sv-s1) !important;color:var(--sv-text-2) !important;font-weight:600 !important;border-radius:var(--r-lg) !important}
.accordion-button:not(.collapsed){background:rgba(140,108,246,.08) !important;color:var(--c-violet-lt) !important;box-shadow:none !important}
.accordion-button:focus{box-shadow:0 0 0 3px rgba(140,108,246,.16) !important}
.accordion-body{background:var(--sv-s2) !important;color:var(--sv-text-2) !important;line-height:1.8 !important}

/* ═══════════════════════════════════════════════════════════
   14. MISC UTILITIES
═══════════════════════════════════════════════════════════ */
.breadcrumb{background:transparent !important;font-family:var(--font-mono) !important}
.breadcrumb-item+.breadcrumb-item::before{color:var(--sv-text-dim) !important}
.breadcrumb-item a{color:var(--sv-text-3) !important}
.breadcrumb-item a:hover{color:var(--c-violet-lt) !important}
.breadcrumb-item.active{color:var(--sv-text-2) !important}
hr,.hr{border-color:var(--sv-border) !important;opacity:1}
.text-light{color:var(--sv-text) !important}
.text-secondary{color:var(--sv-text-2) !important}
.text-muted{color:var(--sv-text-3) !important}
.border-secondary{border-color:var(--sv-border) !important}
.text-warning{color:var(--c-gold) !important}
.text-info{color:var(--c-sky) !important}
.text-danger{color:var(--c-rose) !important}
.text-success{color:var(--c-mint) !important}

/* ═══════════════════════════════════════════════════════════
   15. FOOTER
═══════════════════════════════════════════════════════════ */
footer{background:var(--sv-bg-2) !important;border-top:1px solid var(--sv-border) !important}
.sv-footer{position:relative}
.sv-footer::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--c-violet) 30%,var(--c-gold) 70%,transparent);opacity:.35;
}
.sv-footer-brand-mark{
  font-family:var(--font-display) !important;font-size:1.15rem;color:var(--sv-text) !important;font-weight:600;
}
.sv-footer-tagline{font-family:var(--font-mono) !important;font-size:.72rem;color:var(--sv-text-3) !important;letter-spacing:.04em}
.sv-footer-col-title{font-family:var(--font-mono) !important;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sv-text-3) !important;margin-bottom:var(--sp-3)}
.sv-footer-link{color:var(--sv-text-2) !important;font-size:.86rem;display:block;padding:.3rem 0;transition:color .18s ease, transform .18s ease}
.sv-footer-link:hover{color:var(--c-gold) !important;transform:translateX(3px)}
.sv-footer-social{
  width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--sv-border);border-radius:var(--r-sm);color:var(--sv-text-2) !important;
  transition:all .2s ease;
}
.sv-footer-social:hover{border-color:var(--c-violet);color:var(--c-violet-lt) !important;background:rgba(140,108,246,.08)}
.sv-footer-copy{font-family:var(--font-mono) !important;font-size:.72rem !important;color:var(--sv-text-dim) !important}
.sv-footer-bottom{border-top:1px solid var(--sv-border)}
.sv-footer-legal a{color:var(--sv-text-dim) !important;font-size:.72rem}
.sv-footer-legal a:hover{color:var(--sv-text-2) !important}

/* ═══════════════════════════════════════════════════════════
   16. PADDING PASS
   The original theme runs tight, inconsistent padding in several
   spots (16px post cards, 0 28px banner, etc). Loosen it up.
═══════════════════════════════════════════════════════════ */
.sv-single-post-card{padding:1.75rem !important; gap:1.25rem !important}
.sv-projeto-main-card .card-body,
.sv-projeto-main-card > div{padding:1.5rem}
.sv-static-card .card-body,
.sv-no-highlight .card-body,
.card-body{padding:1.5rem !important}
.sv-staff-header,.sv-parceiros-header{padding:.85rem 1.25rem !important}
.sv-staff-body,.sv-parceiros-card .card-body{padding:1.25rem !important}
section.py-5{padding-top:4rem !important;padding-bottom:4rem !important}
section.py-4{padding-top:2.5rem !important;padding-bottom:2.5rem !important}
.svpf-banner-inner{padding:0 2rem !important}
.svpf-section--top{padding:1.35rem 0 1.15rem !important}
.svpf-section--bottom{padding:1.1rem 0 1.35rem !important}
.sv-spb-info{padding:1.25rem !important}
.accordion-body{padding:1.1rem 1.25rem !important}
.accordion-button{padding:1rem 1.25rem !important}
@media(max-width:767px){
  .sv-single-post-card{padding:1.15rem !important}
  .card-body{padding:1.1rem !important}
  section.py-5{padding-top:2.5rem !important;padding-bottom:2.5rem !important}
}

/* ═══════════════════════════════════════════════════════════
   17. RESPONSIVE POLISH
═══════════════════════════════════════════════════════════ */
img{max-width:100%;height:auto}
@media(max-width:575px){
  .container,.container-fluid{padding-left:.75rem !important;padding-right:.75rem !important}
}
@media(hover:none) and (pointer:coarse){
  .sv-launch-card:hover,.sv-proj-card:hover,.btn:hover,.sv-dl-btn:hover{transform:none !important}
}
#wpadminbar{display:none !important}
body.admin-bar{margin-top:0 !important}
