/* Space Gate Nova+ — FINAL COLOR IDENTITY LOCK
   This file must be loaded last. It enforces the approved black + purple/magenta/blue identity. */
:root {
  color-scheme: dark;

  --nova-black: #000000;
  --nova-black-2: #050812;
  --nova-surface: #0d0d0d;
  --nova-surface-2: #141414;
  --nova-surface-3: #1a1a1a;

  --nova-purple: #9B4DFF;
  --nova-magenta: #F04AD8;
  --nova-blue: #566DFF;
  --nova-cyan: #14D7FF;

  --nova-text: #ffffff;
  --nova-text-2: rgba(255,255,255,.78);
  --nova-muted: rgba(255,255,255,.56);
  --nova-line: rgba(255,255,255,.08);
  --nova-line-strong: rgba(255,255,255,.15);

  --nova-brand-gradient: linear-gradient(135deg, #14D7FF 0%, #566DFF 34%, #9B4DFF 68%, #F04AD8 100%);
  --nova-brand-gradient-x: linear-gradient(90deg, #14D7FF 0%, #566DFF 34%, #9B4DFF 68%, #F04AD8 100%);
  --nova-brand-gradient-y: linear-gradient(180deg, #14D7FF 0%, #566DFF 34%, #9B4DFF 68%, #F04AD8 100%);
  --nova-brand-shadow: 0 14px 34px rgba(155,77,255,.30);
  --nova-blue-shadow: 0 14px 34px rgba(20,215,255,.22);

  --oscar-bg: #000000 !important;
  --oscar-bg-soft: #050505 !important;
  --oscar-surface: #0d0d0d !important;
  --oscar-surface-2: #141414 !important;
  --oscar-surface-3: #1a1a1a !important;
  --oscar-glass: rgba(13,13,13,.94) !important;
  --oscar-text: #ffffff !important;
  --oscar-text-2: rgba(255,255,255,.78) !important;
  --oscar-muted: rgba(255,255,255,.56) !important;
  --oscar-border: rgba(255,255,255,.08) !important;
  --oscar-red: #9B4DFF !important;
  --oscar-red-2: #14D7FF !important;
  --oscar-yellow: #14D7FF !important;
  --oscar-orange: #F04AD8 !important;
  --oscar-cyan: #14D7FF !important;
  --oscar-purple: #9B4DFF !important;
  --accent: #9B4DFF !important;
}

/* True black application shell */
html,
body,
#app,
.app-root,
.oscar-app,
.oscar-main,
.native-view,
.sg-app-root,
.sg-main-content,
.mc-root,
.episode-details-page,
.matches-theme,
.anime-theme,
.catalog-app,
.account-page-app,
.favorites-page-app,
.notifications-page-app {
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  color: #ffffff !important;
}

/* Approved subtle surfaces only */
.card,
.panel,
.account-card,
.settings-card,
.match-card,
.channel-card,
.media-card,
.content-card,
.detail-card,
.favorite-card,
.notification-card,
.oscar-card,
.sg-card,
.mc-card,
.empty-card,
.catalog-empty,
.catalog-loading,
.search-sheet,
.side-menu,
.sg-side-drawer,
.anime-ref-card,
.anime-ref-grid-card,
.live-channel-tile {
  background: #0d0d0d !important;
  background-image: none !important;
  border-color: rgba(255,255,255,.08) !important;
  box-shadow: none !important;
}

/* Remove old colored page glows and non-identity gradients */
.oscar-app::before,
.oscar-app::after,
.native-view::before,
.native-view::after,
.account-page-app::before,
.favorites-page-app::before,
.notifications-page-app::before {
  background: none !important;
  box-shadow: none !important;
}

/* Navigation identity */
.oscar-bottom-nav,
.original-bottom-nav,
.nova-shell-nav,
.sg-bottom-nav {
  background: rgba(0,0,0,.96) !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  box-shadow: none !important;
}

.oscar-bottom-nav button,
.original-bottom-nav button,
.nova-shell-nav button,
.sg-bottom-nav button {
  color: rgba(255,255,255,.55) !important;
}

.oscar-bottom-nav button.active,
.original-bottom-nav button.active,
.nova-shell-nav button.active,
.sg-bottom-nav button.active,
.oscar-bottom-nav button.active svg,
.original-bottom-nav button.active svg,
.nova-shell-nav button.active svg,
.sg-bottom-nav button.active svg {
  color: #9B4DFF !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.oscar-bottom-nav button.active .nav-icon,
.original-bottom-nav button.active .nav-icon,
.nova-shell-nav button.active > span,
.sg-bottom-nav button.active span {
  background: var(--nova-brand-gradient) !important;
  color: #fff !important;
  box-shadow: 0 10px 26px rgba(155,77,255,.28) !important;
}

/* Core accent controls */
.primary-action,
.secondary-action.accent,
.login-button,
.submit-button,
.save-button,
.play-button,
.hero-watch-button,
.hero-primary,
.action-primary,
.sg-primary-button,
.nova-primary,
.account-login-button,
.favorites-empty button,
.notifications-empty button,
.anime-primary-action,
.live-now,
.tab-btn.active,
.filter-pill.active,
.ref-filter-pill.active,
.live-forced-tab.active,
.live-forced-pill.active,
.anime-chip.kind,
.anime-ref-badge.kind,
.badge.active,
.quality-pill.active {
  background: var(--nova-brand-gradient) !important;
  color: #ffffff !important;
  border-color: transparent !important;
  box-shadow: 0 12px 28px rgba(155,77,255,.26) !important;
}

/* Outlined identity buttons */
.outline-action,
.secondary-action,
.hero-list-button,
.border-button,
.series-toolbar-button,
.movies-toolbar-button,
.anime-world-icon,
.anime-ref-icon,
.live-forced-icon,
.icon-button {
  border-color: rgba(155,77,255,.55) !important;
  color: #ffffff !important;
}

.hero-list-button,
.outline-action.brand-border {
  background:
    linear-gradient(#000,#000) padding-box,
    var(--nova-brand-gradient) border-box !important;
  border: 2px solid transparent !important;
}

/* Dots, indicators and separators */
.swiper-pagination-bullet-active,
.hero-dot.active,
.slider-dot.active,
.carousel-dot.active,
.home-hero-dot.active,
.pager-dot.active,
.active-dot,
.status-dot,
.anime-world-heading h2::before,
.anime-section-heading h2::before,
.anime-ref-catalog-header h1::before,
.section-title::before,
.rail-title::before,
.details-section h2::before,
.series-title::before {
  background: var(--nova-brand-gradient-y) !important;
  color: #9B4DFF !important;
}

/* Links and highlighted text */
a,
.link,
.show-all,
.view-all,
.home-rail-see-all,
.anime-world-heading button,
.anime-section-heading button,
.text-accent,
.highlight,
.accent-text {
  color: #9B4DFF !important;
}

/* Replace legacy red/orange/green/yellow badges with identity palette */
.age-badge,
.age,
.anime-chip.age,
.anime-ref-badge.age,
.quality-badge,
.translate,
.anime-chip.translate,
.anime-ref-badge.translate,
.live-badge,
.status-badge,
.source-badge,
.episode-badge,
.rating-badge,
.match-status,
.badge-danger,
.badge-warning,
.badge-success,
.badge-live {
  background: rgba(155,77,255,.94) !important;
  color: #ffffff !important;
  border-color: rgba(155,77,255,.35) !important;
}

.anime-chip.translate,
.anime-ref-badge.translate,
.translate,
.quality-badge,
.live-badge {
  background: #14D7FF !important;
}

.anime-chip.age,
.anime-ref-badge.age,
.age,
.age-badge {
  background: #F04AD8 !important;
}

/* Rating stars should not introduce yellow UI blocks; make them blue/purple text */
.rating-star,
.star,
[class*="star"],
[class*="rating"] svg {
  color: #14D7FF !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Form fields */
input,
select,
textarea,
.search-input,
.filter-input,
.account-input,
.settings-input {
  background: #0d0d0d !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.10) !important;
}

input:focus,
select:focus,
textarea:focus {
  border-color: rgba(20,215,255,.75) !important;
  box-shadow: 0 0 0 3px rgba(155,77,255,.18) !important;
}

/* Player identity */
.sg-player-main-play,
.sg-player-badge,
.sg-player-progress-fill,
.player-progress-fill,
.player-play-button,
.in-app-player .play-button {
  background: var(--nova-brand-gradient) !important;
  color: #ffffff !important;
  box-shadow: var(--nova-brand-shadow) !important;
}

.sg-player-spinner {
  border-top-color: #9B4DFF !important;
}

.sg-player-timeline input,
.sg-player-volume,
.sg-player-brightness,
input[type="range"] {
  accent-color: #9B4DFF !important;
}

/* Keep backgrounds black for previously customized sections */
.home-shell,
.home-page,
.series-landing-app,
.movies-landing-app,
.wrestling-landing-app,
.anime-world-app,
.live-forced-catalog,
.live-catalog-app,
.movies-catalog-app,
.series-catalog-app,
.wrestling-catalog-app,
.anime-ref-catalog-app {
  background: #000000 !important;
  background-image: none !important;
}

@media (min-width: 760px) {
  .media-card:hover,
  .anime-ref-card:hover,
  .anime-ref-grid-card:hover,
  .live-channel-tile:hover {
    border-color: rgba(20,215,255,.28) !important;
    box-shadow: 0 18px 36px rgba(155,77,255,.16) !important;
  }
}


/* Home screen final redesign lock */
.home-app,
.home-main,
.target-home,
.target-home-reference,
.shahid-home-reference,
.target-home-hero-shell,
.shahid-home-section {
    background: #000000 !important;
    background-image: none !important;
}

.professional-home-toolbar .icon-button.home-header-action,
.professional-home-toolbar .icon-button.home-menu-button,
.professional-home-toolbar .icon-button.home-header-action:hover,
.professional-home-toolbar .icon-button.home-menu-button:hover,
.professional-home-toolbar .icon-button.home-header-action:focus,
.professional-home-toolbar .icon-button.home-menu-button:focus {
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.target-watch-button,
.hero-watch-button {
    background: linear-gradient(100deg, #F04AD8 0%, #9B4DFF 46%, #14D7FF 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 16px 34px rgba(155,77,255,.30), 0 0 22px rgba(20,215,255,.16) !important;
}

.target-save-button,
.hero-list-button {
    background:
        linear-gradient(rgba(0,0,0,.72), rgba(0,0,0,.72)) padding-box,
        linear-gradient(100deg, #F04AD8 0%, #9B4DFF 48%, #14D7FF 100%) border-box !important;
    border: 3px solid transparent !important;
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.34), 0 0 18px rgba(155,77,255,.20) !important;
}

.shahid-home-reference .target-hero-actions {
    width: min(100%, 640px) !important;
    margin-top: 20px !important;
    gap: 16px !important;
}

.shahid-home-reference .target-watch-button,
.shahid-home-reference .target-save-button {
    height: 58px !important;
    min-height: 58px !important;
    padding: 0 24px !important;
    border-radius: 999px !important;
    font-size: .98rem !important;
    font-weight: 950 !important;
    line-height: 1 !important;
}

.shahid-home-reference .target-save-button,
.shahid-home-reference .target-save-button.saved,
.shahid-home-reference .target-save-button:hover,
.shahid-home-reference .target-save-button:focus,
.shahid-home-reference .target-save-button:active {
    border: 3px solid transparent !important;
    background:
        linear-gradient(rgba(0,0,0,.72), rgba(0,0,0,.72)) padding-box,
        linear-gradient(100deg, #F04AD8 0%, #9B4DFF 48%, #14D7FF 100%) border-box !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.34), 0 0 18px rgba(155,77,255,.20) !important;
}

.target-hero-dots button.active,
.home-hero-dot.active,
.slider-dot.active {
    background: linear-gradient(90deg, #F04AD8 0%, #9B4DFF 52%, #14D7FF 100%) !important;
}

/* Final visibility repair: remove the black transparent veil from app content. */
.target-hero-shade,
.spotlight-overlay,
.details-hero-shade,
.episode-detail-shade,
.nova-home-hero-shade,
.nova-details-shade,
.sg-notification-scrim,
.menu-backdrop,
.sg-backdrop {
    display: none !important;
    background: none !important;
    background-image: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.home-subscribe-cta {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.target-home-hero-shell::after,
.home-spotlight::after,
.details-backdrop::after,
.channel-details-hero::after,
.nova-home-hero::after,
.nova-details-hero::after,
.media-card::after,
.poster-wrap::after,
.nova-media-thumb::after,
.mc-video-thumb::after,
.mc-video-hero::after {
    display: none !important;
    content: none !important;
    background: none !important;
    background-image: none !important;
}

.safe-background-image,
.target-hero-slide .safe-background-image,
.nova-home-hero-image,
.nova-details-backdrop,
.details-backdrop img,
.media-card img,
.nova-media-image {
    opacity: 1 !important;
    filter: none !important;
}

header.oscar-toolbar.home-toolbar,
header.oscar-toolbar.professional-home-toolbar,
.oscar-toolbar.home-toolbar {
    background: transparent !important;
    background-image: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
}

@media (max-width: 600px) {
    .shahid-home-reference .target-hero-actions {
        width: 100% !important;
        margin-top: 18px !important;
        gap: 15px !important;
    }

    .shahid-home-reference .target-watch-button,
    .shahid-home-reference .target-save-button {
        height: 50px !important;
        min-height: 50px !important;
        padding: 0 15px !important;
        border-width: 3px !important;
        font-size: .88rem !important;
        gap: 10px !important;
    }

    .shahid-home-reference .target-hero-dots {
        bottom: 30px !important;
        gap: 7px !important;
    }

    .shahid-home-reference .target-hero-dots button {
        width: 27px !important;
        height: 3px !important;
    }

    .shahid-home-reference .target-hero-dots button.active {
        width: 34px !important;
    }
}

/* FIX: My List hero button stays transparent; only the frame carries the screenshot purple/blue color. */
.shahid-home-reference .target-save-button,
.shahid-home-reference .target-save-button.saved,
.shahid-home-reference .target-save-button:hover,
.shahid-home-reference .target-save-button:focus,
.shahid-home-reference .target-save-button:active,
.target-save-button,
.target-save-button.saved,
.target-save-button:hover,
.target-save-button:focus,
.target-save-button:active,
.hero-list-button,
.hero-list-button:hover,
.hero-list-button:focus,
.hero-list-button:active {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
    color: #ffffff !important;
    border: 0 !important;
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.28), 0 0 18px rgba(155,77,255,.18) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.shahid-home-reference .target-save-button::before,
.shahid-home-reference .target-save-button.saved::before,
.shahid-home-reference .target-save-button:hover::before,
.shahid-home-reference .target-save-button:focus::before,
.shahid-home-reference .target-save-button:active::before,
.target-save-button::before,
.target-save-button.saved::before,
.target-save-button:hover::before,
.target-save-button:focus::before,
.target-save-button:active::before,
.hero-list-button::before,
.hero-list-button:hover::before,
.hero-list-button:focus::before,
.hero-list-button:active::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    padding: 3px;
    pointer-events: none;
    background: linear-gradient(100deg, #F04AD8 0%, #9B4DFF 48%, #14D7FF 100%);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask-composite: exclude;
}

.shahid-home-reference .target-save-button > *,
.shahid-home-reference .target-save-button span,
.shahid-home-reference .target-save-button .oscar-icon,
.shahid-home-reference .target-save-button svg,
.target-save-button > *,
.target-save-button span,
.target-save-button .oscar-icon,
.target-save-button svg,
.hero-list-button > *,
.hero-list-button span,
.hero-list-button .oscar-icon,
.hero-list-button svg {
    position: relative;
    z-index: 1;
    background: transparent !important;
    background-image: none !important;
}

@supports not (-webkit-mask-composite: xor) {
    .shahid-home-reference .target-save-button::before,
    .shahid-home-reference .target-save-button.saved::before,
    .shahid-home-reference .target-save-button:hover::before,
    .shahid-home-reference .target-save-button:focus::before,
    .shahid-home-reference .target-save-button:active::before,
    .target-save-button::before,
    .target-save-button.saved::before,
    .target-save-button:hover::before,
    .target-save-button:focus::before,
    .target-save-button:active::before,
    .hero-list-button::before,
    .hero-list-button:hover::before,
    .hero-list-button:focus::before,
    .hero-list-button:active::before {
        padding: 0;
        border: 3px solid #8E44FF;
        background: transparent;
        -webkit-mask: none;
        mask: none;
    }
}

