body {
    margin: 0;
    background-color: #2e2e2e;
    font-family: 'Nanum Gothic', sans-serif;
}

*, *::after, *::before {
    box-sizing: border-box;
}

button, input {
    font-family: inherit;
}

/* Common classes */

.col-white {
    color: white;
}

.col-grey {
    color: rgb(173, 173, 173);
}

.col-darkgrey {
    color: #5e5e5e;
}

.col-green {
    color: #28a745;
}

.col-red {
    color: #dc3545;
}

.bg-white {
    background-color: white;
}

.bg-darkblue {
    background-color: #1f2037;
}

.bg-green {
    background-color: #296d63;
}

.image-sm {
    height: 30px;
}

.title {
    font-size: 32px;
}

.text {
    font-size: 20px;
    line-height: 30px;
}

.text-sm {
    font-size: 16px;
    line-height: 24px;
}

.text-center {
    width: 100%;
    text-align: center;
}

.text-cut {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    max-width: 150px;
}

.container {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 576px) {
    .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}

.jumbotron {
    padding: 50px 50px 60px 50px;
}

.flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.column {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    max-width: 100%;
}

.base-0 {
    flex-basis: 0;
}

.base-50 {
    flex-basis: 50%;
}

.minw-300 {
    min-width: 300px;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.my-auto {
    margin-top: auto;
    margin-bottom: auto;
}

.my-10 {
    margin-top: 10px;
    margin-bottom: 10px;
}

/* Custom classes */

.my-navbar {
    padding: 10px;
    background-color: #343a40;
}

.brand img {
    margin: 6px;
}

.geo-image {
    background-image: url(Images/picture.svg);
    background-size: 100%;
}

input {
    padding: 15px;
    border-width: 0;
    font-size: 16px;
    color: #495057;
    width: 100%;
}

input:focus {
    outline: none;
}

button {
    padding: 15px;
    border-width: 0;
    font-size: 16px;
    color: white;
    background-color: #c85d31;
}

button:hover:enabled {
    background-color: #b85128;
}

button:active:enabled {
    background-color: #9e431f;
}

button:focus:enabled {
    outline: none;
}

button:disabled {
    background-color: #642e15;
    color: #888888;
}

.active {
    background-color: white !important;
    color: black;
    z-index: 1;
    box-shadow: 0 0 5px 0 white;
}

.field-navigator {
    max-width: 100%;
}

.leaderboards-title {
    margin-bottom: 40px;
}

.leaderboards-title p {
    margin-bottom: 0;
}

.table-responsive {
    overflow-x: auto;
}

table {
    width: 100%;
    max-width: 100%;
}

table td {
    padding: 15px;
}

/* Field classes */

.node {
    position: absolute;
    border-radius: 50%;
    background-size: 100% !important;
    border-width: 0;
}

.segment {
    position: absolute;
}

.grid {
    position: absolute;
}

.field {
    position: relative;
    background: #fffefe;
}
