body {
    background: url('img/bg.png');
    background-color: white;
    background-position: top center;
    background-repeat: repeat-x;
    font-family: 'Fira Sans', 'Segoe UI', sans-serif;
    font-size: 12pt;
    z-index: 0;
}

body>.container {
    background-color: rgba(255, 255, 255, 0.5);
    background-position: bottom right;
    border: 2px solid #D4D4D4;
    border-radius: 10px;
    box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
    padding: 50px 50px 30px 50px;
}

.btn, input {
    font-family: 'Fira Sans', 'Segoe UI', sans-serif;
}

h1 {
    text-transform: uppercase;
    text-shadow: 0 1px 0 #FFFFFF;
}

h2 {
    margin-top: 50px;
}

.footer {
    text-align: center;
    font-size: 10pt;
    color: #a0a0a0;
    margin-top: 10px;
    margin-bottom: 40px;
}

.navbar .brand {
    font-weight: 400;
}

textarea {
    font-family: 'Fira Code', 'Fira Mono', monospace;
}

.scoreboard-table {
    overflow-x: auto;
}

.scoreboard-table thead {
    height: 140px;
    white-space: nowrap;
}

.scoreboard-table thead > tr > th > div {
    transform: translate(25px, 51px) rotate(-45deg);
    width: 30px;
}

.scoreboard-table thead > tr > th > div > span {
    padding: 5px 10px;
}

.problem-statement h2 {
    margin-top: 36px;
}

.problem-statement h3 {
    margin-top: 24px;
}

.problem-statement h4 {
    margin-top: 18px;
}

.problem-statement .problem-meta {
    color: #666;
    font-style: italic;
}

.problem-statement .formula {
    overflow-x: auto;
}

