#resultContainer {
    display: flex;
    flex-direction: column;
    width: 100vw;
    height: 100vh;
    background-color: white;
    overflow: hidden;
}

body.mobile #resultContainer {
    overflow: auto;
}

/* Row that holds graph and visual side by side */
#resultsRow {
    display: flex;
    flex: 1; /* take remaining vertical space */
    min-height: 0; /* allows flex children to shrink properly */
}

body.mobile #resultsRow {
    flex-direction: column;
}

/* Left half */
#resultGraph {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 5px;
    overflow-y: auto; /* scroll if table gets tall */
    box-sizing: border-box;
    width: 100%;
}

/* Right half */
#resultVisual {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 5px;
    overflow-y: auto;
    box-sizing: border-box;
}

body.mobile #resultVisual, body.mobile #resultGraph {
    flex: none;
    height: auto;
    width: 100%;
}

#resultLegend {
    padding: 10px;
}

body.mobile #jsonDropdown {
    font-size: 1rem;
    width: 66vw;
    padding: 12px;
    border-radius: 12px;
}

#completionTable td, th {
    border: none;
    padding-left: 10px;
    padding-right: 10px;
}

#completionTable {
    border: none;
    margin: 20px 0;
    width: 95vw;
}

body.desktop #completionTable {
    max-width: 45vw;
}

body.mobile #completionTable {
    font-size: 1rem;
}

#completionTable th {
    border-bottom: 1px solid #ccc;
}

#completionTable .tableName {
    text-align: left;
}

#completionTable .tableTime {
    text-align: right;
}

.userCheckbox {
    padding-left: 0px;
    padding-right: 0px;
    vertical-align: middle;
}

#completionTable td:first-child,
#completionTable th:first-child {
    white-space: nowrap;
    width: 1%;
}

.text-right {
    text-align: right;
}

#resultMapCanvas {
    width: 400px;
    height: 600px;
}

.controlButtons {
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s;
    white-space: nowrap;
    text-align: center;
    padding: 5px;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
}

#OLchart {
    width: 95vw;
}

body.desktop #OLchart {
    max-width: 45vw;
}

body.mobile #resultContent {
    flex-direction: column;
}

body.mobile #resultLegend {
    margin-bottom: 50px;
}