@font-face {
    font-family: "momiage";
    src: url("fonts/MomiageMono-Regular-NerdFont.ttf") format("ttf");
}

body {
    font-family: momiage, sans-serif;
}

/* hack to fix weaver quirk */
.pagination {
    display: none !important;
}

input::placeholder {
    opacity: 50% !important;
}

thead {
    border-top: 1px solid rgba(136, 142, 168, 0.5) !important;
}

form input, form select {
    border-radius: 4px !important;
}

:focus:not(:focus-visible) {
    outline: none;
}

.form-group {
    width: 100% !important;
}

.container {
    padding: 0px !important;
}

.nav-tabs {
    display: flex !important;
    border-bottom: 0px !important;
    padding: 0px !important;
}

.nav-tabs li {
    flex: 1 !important;
    text-align: center !important;
    overflow: hidden !important;
}

.nav-tabs > li > a {
    padding: 10px 0px !important;
    margin: 0px !important;
    background-color: rgb(27, 30, 53);
    border-radius: 4px 4px 0px 0px !important;
    border-top: 1px solid rgba(136, 142, 168, 0.5) !important;
    overflow: hidden !important;
}

.nav-tabs > li:first-child > a {
    border-left: 1px solid rgba(136, 142, 168, 0.5) !important;
    /* text-overflow: "🔍" !important; */
}

.nav-tabs > li:last-child > a {
    border-right: 1px solid rgba(136, 142, 168, 0.5) !important;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    color: white !important;
}

.btn {
    border-radius: 4px !important;
}

.btn-default {
    background: #3b3f5c !important;
    border: 0px !important;
}

.btn-block {
    margin: 0px !important;
}

.btn-warning, .panel-warning > .panel-heading, div.widget.yellow-bg {
    color: #1e1e1e !important;
}

.btn-outline {
    display: block;
    width: 100% !important;
}

.panel {
    margin: 6px 0px !important;
}

.panel-heading h5 {
    margin: 0px !important;
}

.panel-body {
    border-radius: 0px 0px 4px 4px !important;
    border-bottom: 1px solid rgba(136, 142, 168, 0.5) !important;
    border-left: 1px solid rgba(136, 142, 168, 0.5) !important;
    border-right: 1px solid rgba(136, 142, 168, 0.5) !important;
}

.panel-group {
    margin-bottom: 0px !important;
}

.jumbotron {
    text-align: center !important;
    margin: 0px !important;
}

.jumbotron p {
    font-weight: bold !important;
}

.modal-content {
    background-color: #1b1e35 !important;
    border: 1px solid rgba(136, 142, 168, 0.5) !important;
}

.modal-body {
    padding: 20px 30px 20px 30px;
}

.modal-header {
    border-bottom: 1px solid rgba(136, 142, 168, 0.5) !important;
}

.modal-footer {
    border-top: 1px solid rgba(136, 142, 168, 0.5) !important;
    display: flex !important;
    gap: 6px !important;
}

.modal-footer > .btn {
    margin: 0px !important;
}

.close, .close:hover {
    color: #FFF !important;
}

.toast-green {
    background: #18a689 !important;
}

.toast-red {
    background: #ed5565 !important;
}

.toast-yellow {
    color: #1e1e1e !important;
    background: #f8ac59 !important;
}

#song-table, #history-table, #favourites-table {
    margin-top: 10px !important;
    margin-bottom: 0px !important;
    table-layout: fixed !important;
    width: 100% !important;
}

#song-table th:nth-child(1) { width: 60% !important; }
#song-table th:nth-child(2) { width: 40% !important; }

#history-table th:nth-child(1) { width: 50% !important; }
#history-table th:nth-child(2) { width: 30% !important; }
#history-table th:nth-child(3) { width: 20% !important; }

#favourites-table th:nth-child(1) { width: 60% !important; }
#favourites-table th:nth-child(2) { width: 40% !important; }

#song_search_form {
    flex-wrap: wrap !important;
}

#song_search_form .form-group {
    width: auto !important;
    flex: 1 1 auto !important;
}

#song_search_form > :last-child {
    flex: 0 0 100% !important;
}

#song_search_form div:has(.i-checks) {
    margin: 0px 6px !important;
    display: flex !important;
    gap: 14px !important;
}

.iradio_square-green {
    transform: scale(0.75) !important;
    transform-origin: top left !important;
    margin-right: -5px !important;
}

label:has(.iradio_square-green) {
    font-size: 12px !important;
    font-weight: 500 !important;
}

#search-field-group, #ecd-field-group {
    margin-bottom: 0px !important;
}

#empty-search .jumbotron {
    margin: 10px 0px 0px 0px !important;
}

#footer {
    background: #1b1e35 !important;
    margin-top: 6px !important;
    padding: 20px !important;
    border: 1px solid rgba(136, 142, 168, 0.5) !important;
    border-radius: 4px !important;
}

#scan-qr, #leave-room {
    margin: 0px !important;
}

#random-history i, #random-favourite i, #scan-qr i {
    margin-right: 4px !important;
}

#reader {
    border: 1px solid rgba(136, 142, 168, 0.5) !important;
    border-radius: 4px !important;
}

#selector-container {
    margin-top: 10px !important;
}

#song-modal-title {
    text-transform: uppercase !important;
    font-size: 15px !important;
    font-weight: bold !important;
    margin: 0px !important;
}

#song-modal-body h4, #settings h4, #info-modal-body h4 {
    font-size: 13px !important;
    font-weight: bold !important;
    margin: 6px 0px !important;
}

#song-modal-body p, #settings p, #info-modal-body p, #info-modal-body table {
    margin: 0px 20px 10px 20px !important;
}

#song-modal-body pre {
    margin-top: 10px !important;
}

#settings > :not(h4) {
    margin: 10px 20px 0px 20px !important;
}

#settings h4:first-of-type {
    margin-top: 0px !important;
}

#info {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

#info > div {
    flex: 1 1 calc(50% - 3px);
}

#info > div:first-child {
    flex: 2 1 100%;
}

#nickname_form div, #language_form div {
    margin-bottom: 6px !important;
}

/* fix when wform supports ids with - */
form, .button-container {
    display: flex !important;
    gap: 6px !important;
}

form button, .button-container button {
    display: inline-block;
    height: 34px !important;
    box-sizing: border-box;
}

#language_form .control-label {
    display: none !important;
}

#confirm_stop_form .i-checks label,
#developer_mode_form .i-checks label {
    font-size: 13px !important;
    font-weight: normal !important;
    margin-bottom: 0px !important;
}

#confirm_stop_form label div,
#developer_mode_form label div {
    margin-right: 4px !important;
}

#developer-tools-buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}
