/* Space Gate Nova+ — Anime/Wrestling exact reference inheritance
   All geometry below is copied from existing production controls:
   - NativeCatalogHeader.razor.css
   - nova-catalog-professional-header.css / nova-final-polish-v2.css
   - Details.razor.css episode-season-filter
   - AnimeHomeExperience.razor.css studio rail
   HomeHeroSlider keeps its own isolated production CSS unchanged. */

/* Canvas rule requested for Anime/Wrestling: no solid surface other than black. */
.sg-anime-pro-home, .sg-anime-catalog, .sg-anime-schedule,
.sg-wrestling-home, .sg-wrestling-catalog, .sg-wrestling-schedule {
    background:#000000 !important;
    background-color:#000000 !important;
}

/* Exact NativeCatalogHeader clearance: no extra invented offset. */
.sg-anime-pro-home, .sg-anime-catalog, .sg-anime-schedule,
.sg-wrestling-home, .sg-wrestling-catalog, .sg-wrestling-schedule {
    padding-top:calc(var(--nova-app-header-h,58px) + var(--safe-top, env(safe-area-inset-top,0px))) !important;
}

/* Keep NativeCatalogHeader untouched by section-level black button locks.
   Geometry still comes from the same global header rules used by Movies/Series. */
.sg-anime-pro-home .nova-native-catalog-header .catalog-landing-toolbar-button,
.sg-anime-catalog .nova-native-catalog-header .catalog-landing-toolbar-button,
.sg-anime-schedule .nova-native-catalog-header .catalog-landing-toolbar-button,
.sg-wrestling-home .nova-native-catalog-header .catalog-landing-toolbar-button,
.sg-wrestling-catalog .nova-native-catalog-header .catalog-landing-toolbar-button,
.sg-wrestling-schedule .nova-native-catalog-header .catalog-landing-toolbar-button {
    background:transparent !important;
    background-image:none !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}

/* Anime hero is the real HomeHeroSlider. Make only this section full-bleed; its
   height, typography and action sizes remain owned by HomeHeroSlider.razor.css. */
.sg-anime-pro-home .target-home-hero-shell {
    width:100vw !important;
    max-width:none !important;
    margin-inline:calc(50% - 50vw) !important;
    background:#000000 !important;
}

/* Search field: same component/class and computed mobile geometry as All Movies.
   It is permanently visible in these dedicated catalogs; the interior remains black.
   The active outline is the existing NOVA gradient from nova-final-polish-v2.css. */
.sg-anime-catalog .sg-reference-search,
.sg-wrestling-catalog .sg-reference-search {
    display:flex !important;
    opacity:1 !important;
    transform:none !important;
    pointer-events:auto !important;
    border:1px solid transparent !important;
    background:
        linear-gradient(#000000,#000000) padding-box,
        var(--nova-active-gradient) border-box !important;
    box-shadow:0 0 0 1px rgba(155,77,255,.06),0 8px 24px rgba(0,0,0,.22) !important;
}
.sg-anime-catalog .sg-reference-search:focus-within,
.sg-wrestling-catalog .sg-reference-search:focus-within {
    border:1px solid transparent !important;
    background:
        linear-gradient(#000000,#000000) padding-box,
        var(--nova-active-gradient) border-box !important;
    box-shadow:0 0 0 1px rgba(155,77,255,.06),0 8px 24px rgba(0,0,0,.22) !important;
}
.sg-anime-catalog .sg-reference-search > button,
.sg-wrestling-catalog .sg-reference-search > button { background:#000000 !important; }

/* Filter strip + schedule day navigation: exact Details season selector geometry. */
.sg-anime-catalog .reference-filter-strip,
.sg-wrestling-catalog .reference-filter-strip,
.sg-anime-pro-home .schedule-days,
.sg-anime-schedule .schedule-days,
.sg-wrestling-schedule .day-strip,
.sg-wrestling-home .year-strip {
    display:flex !important;
    align-items:center !important;
    gap:7px !important;
    padding:0 0 8px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:none !important;
    background:transparent !important;
    border:0 !important;
}
.sg-anime-catalog .reference-filter-strip::-webkit-scrollbar,
.sg-wrestling-catalog .reference-filter-strip::-webkit-scrollbar,
.sg-anime-pro-home .schedule-days::-webkit-scrollbar,
.sg-anime-schedule .schedule-days::-webkit-scrollbar,
.sg-wrestling-schedule .day-strip::-webkit-scrollbar,
.sg-wrestling-home .year-strip::-webkit-scrollbar { display:none !important; }

.sg-anime-catalog .nova-catalog-select-card,
.sg-wrestling-catalog .nova-catalog-select-card,
.sg-anime-pro-home .schedule-day-control,
.sg-anime-schedule .schedule-day-control,
.sg-wrestling-schedule .schedule-day-control,
.sg-wrestling-home .archive-year-control {
    position:relative !important;
    flex:0 0 auto !important;
    height:var(--nova-catalog-control-h,42px) !important;
    min-height:var(--nova-catalog-control-h,42px) !important;
    min-width:118px !important;
    max-width:178px !important;
    margin:0 !important;
    padding:0 10px !important;
    display:grid !important;
    grid-template-columns:18px auto minmax(38px,auto) 14px !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    border:1px solid var(--nova-catalog-line,rgba(132,145,176,.20)) !important;
    border-radius:8px !important;
    background:#000000 !important;
    color:rgba(255,255,255,.72) !important;
    box-shadow:none !important;
    direction:rtl !important;
    box-sizing:border-box !important;
    font-family:inherit !important;
}
.sg-anime-catalog .nova-catalog-select-card.active,
.sg-wrestling-catalog .nova-catalog-select-card.active,
.sg-anime-pro-home .schedule-day-control.active,
.sg-anime-schedule .schedule-day-control.active,
.sg-wrestling-schedule .schedule-day-control.active,
.sg-wrestling-home .archive-year-control.active {
    color:#fff !important;
    border-color:transparent !important;
    background:
        linear-gradient(#000000,#000000) padding-box,
        var(--nova-catalog-active-border) border-box !important;
    box-shadow:0 0 0 1px rgba(155,77,255,.08),0 6px 18px rgba(45,111,219,.10) !important;
}
.sg-anime-pro-home .schedule-day-control > span,
.sg-anime-schedule .schedule-day-control > span,
.sg-wrestling-schedule .schedule-day-control > span,
.sg-wrestling-home .archive-year-control > span {
    color:rgba(255,255,255,.42) !important;
    font-size:.66rem !important;
    font-weight:650 !important;
    white-space:nowrap !important;
}
.sg-anime-pro-home .schedule-day-control > strong,
.sg-anime-schedule .schedule-day-control > strong,
.sg-wrestling-schedule .schedule-day-control > strong,
.sg-wrestling-home .archive-year-control > strong {
    min-width:0 !important;
    overflow:hidden !important;
    color:rgba(255,255,255,.82) !important;
    font-size:.73rem !important;
    font-weight:760 !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
}

/* Studio rail: keep the original Anime layout geometry from AnimeHomeExperience,
   but remove the tile chrome to match the supplied old Anime screenshot. */
.sg-anime-pro-home .studio-rail { gap:10px !important; background:transparent !important; }
.sg-anime-pro-home .studio-rail > button {
    flex:0 0 clamp(126px,13vw,176px) !important;
    min-width:0 !important;
    min-height:70px !important;
    padding:7px 10px 6px !important;
    display:grid !important;
    grid-template-rows:36px auto !important;
    place-items:center !important;
    gap:4px !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:var(--oscar-text) !important;
}
.sg-anime-pro-home .studio-logo {
    width:100% !important;
    height:36px !important;
    display:grid !important;
    place-items:center !important;
    overflow:visible !important;
    background:transparent !important;
}
.sg-anime-pro-home .studio-logo img,
.sg-anime-pro-home .studio-logo .nova-fast-image {
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    background:transparent !important;
    filter:none !important;
}
.sg-anime-pro-home .studio-rail small {
    width:100% !important;
    overflow:hidden !important;
    color:var(--oscar-muted) !important;
    font-size:.58rem !important;
    text-align:center !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
}

/* Catalog studio rail uses the same open-logo treatment while retaining its
   original catalog width values. */
.sg-anime-catalog .studio-strip { gap:9px !important; background:transparent !important; }
.sg-anime-catalog .studio-tile {
    flex:0 0 116px !important;
    min-width:0 !important;
    padding:8px 8px 7px !important;
    display:grid !important;
    gap:6px !important;
    justify-items:center !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:var(--oscar-muted) !important;
}
.sg-anime-catalog .studio-logo {
    width:100% !important;
    height:40px !important;
    display:grid !important;
    place-items:center !important;
    overflow:visible !important;
    background:transparent !important;
}
.sg-anime-catalog .studio-logo img,
.sg-anime-catalog .studio-logo .nova-fast-image {
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    background:transparent !important;
    filter:none !important;
}
.sg-anime-catalog .studio-tile small {
    width:100% !important;
    overflow:hidden !important;
    text-align:center !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
    font-size:.61rem !important;
}

/* Timeline/list cards: preserve original grids and dimensions; remove table-like
   separators and reuse the existing rounded-card treatment already present in
   the Wrestling timeline. Dates remain first-class and visible. */
.sg-anime-schedule .schedule-panel,
.sg-anime-schedule .schedule-item,
.sg-anime-pro-home .schedule-item,
.sg-wrestling-schedule .timeline-row,
.sg-wrestling-schedule .table-row,
.sg-wrestling-catalog .date-node {
    background:#000000 !important;
    background-image:none !important;
    border-color:var(--oscar-border) !important;
    box-shadow:none !important;
}
.sg-wrestling-schedule .date-table { display:grid !important; gap:7px !important; }
.sg-wrestling-schedule .table-head { display:none !important; }
.sg-wrestling-schedule .table-row {
    border:1px solid var(--oscar-border) !important;
    border-radius:10px !important;
}
.sg-wrestling-card .date-badge {
    background:rgba(0,0,0,.88) !important;
    color:var(--oscar-text) !important;
    border-color:var(--oscar-border) !important;
}
.sg-wrestling-card .card-facts .date {
    color:var(--oscar-text) !important;
    font-weight:900 !important;
}

@media(max-width:1000px) {
    /* This is the exact mobile selector geometry in Details + final catalog polish. */
    .sg-anime-catalog .nova-catalog-select-card,
    .sg-wrestling-catalog .nova-catalog-select-card,
    .sg-anime-pro-home .schedule-day-control,
    .sg-anime-schedule .schedule-day-control,
    .sg-wrestling-schedule .schedule-day-control,
.sg-wrestling-home .archive-year-control {
        height:34px !important;
        min-height:34px !important;
        min-width:84px !important;
        max-width:126px !important;
        padding-inline:7px !important;
        grid-template-columns:15px minmax(38px,auto) 13px !important;
        gap:4px !important;
        border-radius:7px !important;
    }
    .sg-anime-catalog .nova-catalog-select-card > span,
    .sg-wrestling-catalog .nova-catalog-select-card > span,
    .sg-anime-pro-home .schedule-day-control > span,
    .sg-anime-schedule .schedule-day-control > span,
    .sg-wrestling-schedule .schedule-day-control > span,
.sg-wrestling-home .archive-year-control > span { display:none !important; }
    .sg-anime-catalog .nova-catalog-select-card > strong,
    .sg-wrestling-catalog .nova-catalog-select-card > strong,
    .sg-anime-pro-home .schedule-day-control > strong,
    .sg-anime-schedule .schedule-day-control > strong,
    .sg-wrestling-schedule .schedule-day-control > strong,
.sg-wrestling-home .archive-year-control > strong { font-size:.68rem !important; }
}

@media(max-width:720px) {
    /* Original phone studio geometry: ~5.5 logos visible, as in the supplied reference. */
    .sg-anime-pro-home .studio-rail { gap:6px !important; }
    .sg-anime-pro-home .studio-rail > button {
        flex-basis:calc((100vw - 57px) / 5.5) !important;
        min-height:58px !important;
        padding:5px 4px 4px !important;
        grid-template-rows:31px auto !important;
        border-radius:0 !important;
    }
    .sg-anime-pro-home .studio-logo { height:31px !important; }
    .sg-anime-pro-home .studio-rail small { font-size:.47rem !important; }

    .sg-anime-catalog .studio-tile { flex-basis:102px !important; }
}

@media(max-width:560px) {
    .sg-anime-catalog .studio-strip { gap:7px !important; }
    .sg-anime-catalog .studio-tile {
        flex-basis:89px !important;
        padding:6px !important;
        border-radius:0 !important;
    }
    .sg-anime-catalog .studio-logo { height:33px !important; }
}

@media(max-width:390px) {
    .sg-anime-pro-home .studio-rail > button {
        flex-basis:calc((100vw - 48px) / 4.7) !important;
    }
}
