/* Aligned with static/pages/Summary/js/App/config/colors.js + Browse Dynamic */
:root {
    --discanvis-disorder-ordered: cornflowerblue;
    --discanvis-disorder-disordered: red;
    --discanvis-pfam-layer: #32c023;
    --discanvis-elm-layer: #c77e11;
    --discanvis-phasepro-layer: orange;
    --discanvis-pem-layer: #ca8a04;
    --discanvis-scansite-layer: #1ec8c8;
    --discanvis-mfib-layer: #c77e11;
    --discanvis-dibs-layer: #c7112c;
    --discanvis-experimental-disorder: red;
    --discanvis-tcga: #c0392b;
    --discanvis-cosmic: #9b59b6;
    --discanvis-cbioportal: #3498db;
    --discanvis-omim: #f39c12;
    --discanvis-clinvar-source: #e67e22;
    --discanvis-clinvar-pathogenic: rgba(255, 0, 0, 0.5);
    --discanvis-clinvar-benign: rgba(0, 0, 255, 0.5);
    --discanvis-clinvar-uncertain: #808080;
    --discanvis-mutation-fallback: #95a5a6;
    /* Structure model types (legend badges: AlphaFold vs experimental PDB) */
    --discanvis-alphafold-structure: #5b47d6;
    --discanvis-pdb-structure: #2a6ebb;
    /* Aliases for templates / older references */
    --discanvis-elm: var(--discanvis-elm-layer);
    --discanvis-pfam: var(--discanvis-pfam-layer);
    --discanvis-phasepro: var(--discanvis-phasepro-layer);
}

/* --- CARD (Modernizált) --- */
    .card {
        /* Keret: Alkalmazkodó szürke */
        border: 1px solid var(--bs-border-color);
        border-radius: 10px;

        /* Háttér: Világosban marad a te #fafafa színed, sötétben a bootstrap kártya háttere */
        background-color: var(--bs-body-bg);
        /* VAGY ha ragaszkodsz a #fafafa-hoz világosban: */
        /* background-color: #fafafa; */
    }

    /* Ha a fenti #fafafa-t használod, sötét módban felül kell írni: */
    [data-bs-theme="dark"] .card {
        background-color: var(--bs-card-bg);
    }

    /* --- CARD HEADER --- */
    .card-header {
        background-color: var(--bs-primary-bg-subtle);

        border-bottom: 1px solid var(--bs-border-color);
        color: var(--bs-body-color);

        font-weight: 500;
        font-size: 1.05rem;
    }

    [data-bs-theme="dark"] .card-header {
        background-color: rgba(var(--bs-primary-rgb), 0.18);
        color: var(--bs-body-color);
    }

    .card-body {
        font-size: 0.9rem;
        /* A szöveg színe automatikusan jó lesz a body beállítás miatt */
    }

    /* --- GOMBOK --- */
    /* A zöld gomb maradhat fix színű, ha a kontraszt jó (fehér szöveggel) */
    .btn-success {
        background-color: #2a8d60;
        border: none;
        color: #ffffff; /* Fontos: fix fehér szöveg, hogy sötétben is látszódjon a gombon */
    }

    .btn-success:hover {
        background-color: #237650;
        color: #ffffff;
    }

/* --- Doc pages: sidebar + one scroll column (Help, Access Data, Statistics) ---
   Bootstrap .row as flex child defaults to flex-basis:auto → row grows with content
   and the inner column never scrolls. Fix: flex 1 1 0% + min-height 0 through the chain;
   main overflow:hidden bounds the row to the viewport band under header/footer. */
body.discanvis-doc-stretch {
    min-height: 100vh;
    min-height: 100dvh;
}

main.discanvis-doc-layout-main {
    flex: 1 1 0% !important;
    min-height: 0 !important;
    overflow: hidden;
    display: flex !important;
    flex-direction: column !important;
}

.discanvis-doc-layout-row.row {
    flex: 1 1 0% !important;
    min-height: 0 !important;
    max-height: 100%;
}

.discanvis-doc-layout-row.row > [class*="col-"] {
    min-height: 0;
}

.discanvis-doc-layout-right {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    height: 100%;
    max-height: 100%;
}

.discanvis-doc-scroll {
    flex: 1 1 0% !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    position: relative;
}

/*
 * Doc pages (Downloads, Help, Statistics, API, …): scroll the window instead of a fixed-height
 * main column so the footer sits after content — not pinned to the viewport bottom.
 */
body.discanvis-doc-page-flow {
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
}

body.discanvis-doc-page-flow main.discanvis-doc-layout-main {
    flex: 0 1 auto !important;
    overflow: visible !important;
    min-height: 0 !important;
}

body.discanvis-doc-page-flow .discanvis-doc-layout-row.row {
    flex: 0 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

body.discanvis-doc-page-flow .discanvis-doc-layout-right {
    height: auto !important;
    max-height: none !important;
}

body.discanvis-doc-page-flow .discanvis-doc-scroll {
    flex: none !important;
    overflow: visible !important;
    min-height: 0;
}

/* Simple container main (API, About, Use cases): do not stretch to fill viewport */
body.discanvis-doc-page-flow main.container {
    flex: 0 1 auto !important;
}

body.discanvis-doc-page-flow footer.discanvis-footer.mt-auto {
    margin-top: 2.5rem !important;
}

/* Browse (and other) dropdowns: avoid clipping menus inside expanded navbar on desktop */
@media (min-width: 992px) {
    #main-header-navbar .navbar-collapse {
        overflow: visible;
    }
}

/* Header stacking vs doc sidebars: see templates/DisCanVis/Elements/Header.html (header.discanvis-site-header). */

/* ---------------------------------------------------------------------------
   Mutation / source labels (ClinVar, TCGA, …) — one visual system site-wide.
   Use with Bootstrap .badge .rounded-pill — colours from :root in this file.
   --------------------------------------------------------------------------- */
.badge.discanvis-src-badge--clinvar {
    background: var(--discanvis-clinvar-source) !important;
    color: #fff !important;
}
.badge.discanvis-src-badge--tcga {
    background: var(--discanvis-tcga) !important;
    color: #fff !important;
}
.badge.discanvis-src-badge--cosmic {
    background: var(--discanvis-cosmic) !important;
    color: #fff !important;
}
.badge.discanvis-src-badge--cbioportal {
    background: var(--discanvis-cbioportal) !important;
    color: #fff !important;
}
.badge.discanvis-src-badge--omim {
    background: var(--discanvis-omim) !important;
    color: #111 !important;
}
/* Text links with source accent bar (home “data sources” strip) */
.discanvis-src-line--clinvar {
    border-left: 3px solid var(--discanvis-clinvar-source);
    padding-left: 0.35rem;
}
.discanvis-src-line--tcga {
    border-left: 3px solid var(--discanvis-tcga);
    padding-left: 0.35rem;
}
.discanvis-src-line--cosmic {
    border-left: 3px solid var(--discanvis-cosmic);
    padding-left: 0.35rem;
}
.discanvis-src-line--cbioportal {
    border-left: 3px solid var(--discanvis-cbioportal);
    padding-left: 0.35rem;
}
.discanvis-src-line--omim {
    border-left: 3px solid var(--discanvis-omim);
    padding-left: 0.35rem;
}
.badge.discanvis-structure-badge--alphafold {
    background: var(--discanvis-alphafold-structure) !important;
    color: #fff !important;
}
.badge.discanvis-structure-badge--pdb {
    background: var(--discanvis-pdb-structure) !important;
    color: #fff !important;
}