@media only screen {
    .ui.ui.ui.container.fluid {
        padding: 0px 30px;
        margin-left: auto;
    }
}

/* Header settings */
.banner {
    height: 400px;
    background-position: center;
}

.banner div {
    padding-top: 160px;
}

.banner .header {
    color: white!important;
    margin: 10px;
}

.ui.nav.container {
    font-size: 1.2em;
}

.ui.sticky {
    margin-top: 0!important;
}

.main.menu {
    margin-top: 4em;
    border-radius: 0;
    border: none;
    box-shadow: none;
    transition:
        box-shadow 0.5s ease,
        padding 0.5s ease
    ;
}
.main.menu .item img.logo {
    margin-right: 1.5em!important;
}

.overlay {
    float: left;
    margin: 0em 3em 1em 0em;
}

.overlay .menu {
    position: relative;
    left: 0;
    transition: left 0.5s ease;
}

.main.menu.fixed {
    background-color: #FFFFFF;
    border: 1px solid #DDD;
    box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.2);
}

/* Page definitions */
p, li, th, td {
    font-size: medium;
    line-height: 1.5em;
}

.ui.container h1 {
    margin-top: 30px!important;
}

.checkbox {
    margin-right: 20px;
}

footer {
    height: 100px;
}

i.cci_green {
    color: #00965c!important;
}

.ui.button.cci_green {
    background-color: #00965c!important;
    color: white;
}

.ui.button.cci_green:hover {
    background-color: #00574f!important;
    color: white;
}

/* Terms of Use Styling */

.terms {
    display: inline-flex;
    margin-bottom: 1em;
}

.terms img {
    margin-right: 1em;
}

.terms i {
    width: 50px;
    height: 100%;
}

.actions .ui.form .inline.field>input {
    width: calc(100% - 100px) !important;
}

.actions .ui.form .inline.field>label {
    width: 80px !important;
    text-align: right;
}

.vertical-center {
    display: flex;
    align-items: center;
}

.buttons.field button {
    margin-bottom: 1em !important;
}

td .columns {
    margin-left: 38px;
    padding-bottom: 10px;
}

td .columns p {
    font-size: 0.95em;
    margin: 0px !important ;
}

/* ClinVar Display box */
.clinvar {
    border: 1px #878787 solid;
    border-radius: 6px;
    width: 150px;
    padding: 5px;
}

.clinvar h5 {
    text-align: center;
    margin: 0px !important;
    font-size: 0.9em !important;
}

/* Stars for ClinVar*/
:root {
    --star-size: 30px;
    --star-color: white;
    --star-background: gold;
}

.clinvar-star {
    --percent: calc(var(--rating) / 4 * 100%);
    display: block;
    font-size: var(--star-size);
    font-family: Times;
    line-height: 1;
    margin: 0 auto;
    width: 129px;
}

.clinvar-star::before {
    content: '★★★★';
    letter-spacing: 3px;
    background: linear-gradient(90deg, var(--star-background) var(--percent), var(--star-color) var(--percent));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.column p, .column h5, .column ul {
    margin: 0;
}

.column li {
    line-height: 1em;
}

.igv-container {
    background-color: white;
    padding-top: 0 !important;
    border-radius: 10px;
}

.igv-navbar {
    margin-top: 0 !important;
}

.igv-gear-menu-column > div {
    background-color: rgba(0,0,0,0) !important;
}

/* Table Header Styling */
.dataTables_filter {
    margin-bottom: 1em;
    float: right;
    display: inline-block;
}

#filters {
    display: inline-block;
    min-width: calc(100% - 280px);
}

.filter label {
    display: inline-block;
    width: 120px;
    margin: 0 10px 1em 0;
}

.filter .selection.dropdown {
    min-width: calc(100% - 130px) !important;
}

.filter.italic .dropdown a, .filter.italic .dropdown .item {
    font-style: italic;
}

.float.right {
    float: right;
}

#removeFilter, #runFilter {
    margin: 0 0 1em 1em;
}

.dtsb-search {
    margin: 0 !important;
    position: absolute;
    right: 0;
    bottom: 0;
}

.dtsb-searchBuilder {
    display: none !important
}

/* Table Styling */
#DataTables_Table_0 {
    width: 100% !important;
}

/* Table Footer Styling */
.dataTables_paginate {
    display: inline-flex;
    float: right;
    margin-top: 1em;
}

.dataTables_info {
    display: inline-flex;
    padding: 0;
    margin-top: 1em;
}

.dt-buttons {
    display: block !important;
    clear: both;
}

.dt-buttons button {
    margin-right: 0.5em !important;
}

.ui.grid .row {
    padding-bottom: 0 !important;
}

.column p, .column h5, .column ul {
    margin: 0;
}

.column li {
    line-height: 1em;
}

.igv-container {
    background-color: white;
    padding-top: 0 !important;
    border-radius: 10px;
}

.igv-navbar {
    margin-top: 0 !important;
}

.igv-gear-menu-column > div {
    background-color: rgba(0,0,0,0) !important;
}

/* SAVVY */

/* Requirements table */
#requirements td,  #requirements th {
    line-height: 1em;
}

#requirements>tbody>tr>td {
    padding: .5em .5em;
}

#varInfo>div {
    margin: 10px;
}

/* Sequence viewer */
.sequence {
    display: flex; /* Prevents spans from wrapping */
    flex-wrap: nowrap; /* Ensures they stay on one line */
    overflow: hidden; /* Prevents overflowing content */
    justify-content: center;
    align-items: center;
    padding: 20px 0 70px 0;
    white-space: nowrap;
    pointer-events: auto;  
}

#output span {
    width: auto !important;
    display: inline-block;
    position: relative;
    transition: font-size 0.2s ease;
    font-size: var(--font-size, 25px);
    box-sizing: content-box;
    white-space: nowrap;
    margin: 0;
    padding: 0;
    font-family: monospace;
    border: none;
    z-index: 10;
    pointer-events: auto;
}

.nucleotide::before {
    content: '';
    display: block;
    position: absolute;
    top: 40px; /* Position the line below the text */
    left: 0;
    width: 100%;
    height: 2px; /* Line height for introns */
    background-color: black; /* Line color */
    z-index: 1;    
}

.nucleotide.chevron::after {
    content: '\276F';
    display: block;
    color: black;
    position: absolute;
    top: 31px; /* Position the line below the text */
    font-size: 14px;
    left: 0;
    z-index: 1;
}

.nucleotide.exon::before {
    content: '';
    display: block;
    position: absolute;
    top: 35px; /* Position the line below the text */
    left: 0;
    width: 100%;
    height: 12px; /* Line height for introns */
    background-color: black; /* Line color */
    z-index: 1;
}

/* Base styles for the bar */
.nucleotide.with-bar::after {
    content: '';
    top: 29px;
    position: absolute;
    left: 0;
    width: 100%;
    height: 24px; /* Thickness of the bar */
}

/* Role-specific colors */
.nucleotide.donor.with-bar::after {
    background-color: #feaa92; /* Donor color */
}

.nucleotide.branchpoint.with-bar::after {
    background-color: #ace2f5; /* Branchpoint color */
}

.nucleotide.acceptor.with-bar::after {
    background-color: #eceaae; /* Acceptor color */
}

.nucleotide.variant.with-bar::after {
    background-color: red; /* Variant color */
    opacity: 1;
}

.reduced-opacity::after {
    opacity: 0.4;
}

td.variant {
    color: red; /* Variant color */
    border-bottom: 5px solid red !important;
}
	
.A {
    color: green;
}

.T {
    color: red;
}

.G {
    color: blue;
}

.C {
    color: orange;
}

.ui.attached.segment {
    padding: 1em 0.5em;
}


/* Motif zoom boxes*/
.motif.table tr td {
    padding: 0 !important;
    overflow: visible !important;
}

.motif.table tr:nth-child(2) {
    color: grey;
}

.motif.table tr:nth-child(1) td {
    cursor: pointer;
    font-size: x-large;
    transform: scaleY(1.5); /* Scale height to 200% */
    transform-origin: center; /* Ensure scaling happens from the center */
}

.motif.table tr:nth-child(2) td {
    border-bottom: 5px solid white;
}

.motif.table {
    border: none !important;
}

/* Heuristics display */
.heuristic {
    margin-top: 10px;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #f9f9f9;
}

.heuristic img {
    max-width: 1000px;
    display: block;
    margin: 10px 0;
}
