/*==========================
        DEFAULTS
==========================*/

body {
    background-color: rgb(51,51,51);
    background-image: radial-gradient(rgba(100, 50, 0, 0.75), black 120%), repeating-linear-gradient(
        rgba(0,0,0,0.75),
        rgba(0,0,0,0.75) 2px,
        transparent 2px,
        transparent 4px
    );
    height: 100vh;
}

nav {
    background: rgb(7,7,7);
}

h1, h2, h3, h4, h5 {
    color: #e5a00d;
}

.card {
    background-color: rgba(25,25,25,0.85);
}

small {
    color: rgb(190,190,190);
}

.titleNavBar .titleImage {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 3em;
}

.titleNavBar small {
    color: rgb(190,190,190);
    font-size: 0.7em;
    font-variant: small-caps;
}

a {
    color: #F39C12;
    text-decoration: none;
    background-color: transparent;
}

a:hover {
    color: rgb(240,240,240);
    text-decoration: none;
    background-color: transparent;
}

.text-muted {
    color: rgb(190,190,190) !important;
}

label, p {
    color: rgb(240,240,240);
}

#insecureWarning {
    display: none;
}

#loginInfoAlert {
    display: none;
}

#new-pin-container {
    display: none;
}

#waitOnPinAuth {
    display: none;
}

/*==========================
        MODALS
==========================*/

#progressModalTitle {
    width: 100%;
}

.modal-content {
    background-color: rgba(25,25,25,1);
    color: rgb(240,240,240);
}

.modal-content .modal-body strong {
    color: #e5a00d;
}

.modal-content .close {
    color: rgb(240,240,240);
    opacity: 1;
}

.modal-header {
    border-bottom: 1px solid #aaa;
}

.modal-footer {
    border-top: 1px solid #aaa;
}

/*==========================
        FORM CONTROLS
==========================*/

.form-control {
    background: rgba(240, 240, 240, 0.7);
    border: 1px solid #aaa;
}

.form-control:focus {
    background: rgba(240, 240, 240, 0.95);
    border-color: rgb(192, 118, 0.8);
    box-shadow: 0 0 0 0.2rem rgba(243,156,18,.25);
    color: #222;
}

.form-control.is-valid {
    background-color: rgba(239, 255, 243, 0.7);
}

.form-control.is-valid:focus {
    background-color: rgba(239, 255, 243, 0.95);
    color: #222;
}

.form-control.is-invalid {
    background-color: rgba(255, 239, 243, 0.7);
}

.form-control.is-invalid:focus {
    background-color: rgba(255, 239, 243, 0.95);
    color: #222;
}

#confirmForget {
    margin-left: 0.25em;
    display: none;
}

#forgetDivider, #forgetDetailsSection {
    display: none;
}

#url-auth-over-container {
    display: none;
}

#authed-pin-container {
    display: none;
}

#confirmForgetPin {
    margin-left: 0.25em;
    display: none;
}

/*==========================
        ALERTS
==========================*/

.alert-warning a:hover {
    color: #856404
}

#successToast {
    position: fixed;
    top: 5%;
    left: 0;
    right: 0;
    max-width: fit-content;
    margin: auto;
    z-index: 999;
}

.toast.show {
    opacity: 0.9;
}

/*==========================
        NAV TABS
==========================*/

.nav-tabs {
    border-bottom: 1px solid #aaa;
}

.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
    color: rgb(240,240,240);
    background-color: rgba(25,25,25,0.85);
    border-color: #aaa #aaa rgba(25,25,25,0.85);
}

/*==========================
        BUTTONS
==========================*/

.btn-secondary {
    color: #fff;
    background-color: #F39C12;
    border-color: #F39C12;
}

.btn-secondary:hover {
    color: #fff;
    background-color: #d4860b;
    border-color: #c87f0a;
}

.btn-secondary:focus {
    box-shadow: 0 0 0 0.2rem rgba(243,156,18,.25);
}

.btn-secondary:not(:disabled):not(.disabled):active {
    color: #fff;
    background-color: #c87f0a;
    border-color: #bc770a;
}

.btn-secondary.disabled, .btn-secondary:disabled {
    color: #fff;
    background-color: #F39C12;
    border-color: #F39C12;
}

#episodeOrSeriesBtns label, #pinOrAuthBtns label {
    cursor: pointer;
}

#episodeOrSeriesBtns label.active, #pinOrAuthBtns label.active {
    cursor: default;
}

#alphabetGroup {
    border-radius: 0.25rem;
    overflow: hidden;
}

#alphabetGroup.btn-group{
    display: block;
}

#alphabetGroup button {
    border-radius: 10px;
    margin: 3px;
    width: 30px;
    height: 30px;
    padding: 0;
}

#alphabetGroup .btn-outline-dark {
    color: rgb(240,240,240);
    background-color: #444;
    border-color: #444;
}

#alphabetGroup .btn-outline-dark:hover {
    color: rgb(240,240,240);
    background-color: #333;
    border-color: #2c2c2c;
}

#alphabetGroup .btn-outline-dark.disabled, #alphabetGroup .btn-outline-dark:disabled {
    color: rgb(240,240,240);
    background-color: #444;
    border-color: #444;
    opacity: 0.45;
}

#alphabetGroup .btn-dark {
    color: rgb(240,240,240);
    background-color: #222;
    border-color: #222;
}

#alphabetGroup .btn-dark:hover {
    color: rgb(240,240,240);
    background-color: #2c2c2c;
    border-color: #252525;
}

#alphabetGroup .btn-dark.focus, #alphabetGroup .btn-dark:focus {
    box-shadow: 0 0 0 0.2rem rgba(82,82,82,.5);
}

#episodeOrSeriesBtns .btn-secondary, #pinOrAuthBtns .btn-secondary {
    color: rgb(240,240,240);
    background-color: #444;
    border-color: #444;
}

#episodeOrSeriesBtns .btn-secondary:hover, #pinOrAuthBtns .btn-secondary:hover {
    color: rgb(240,240,240);
    background-color: #333;
    border-color: #2c2c2c;
}

#episodeOrSeriesBtns .btn-secondary.active, #pinOrAuthBtns .btn-secondary.active {
    color: #fff;
    background-color: #F39C12;
    border-color: #F39C12;
}

#episodeOrSeriesBtns .btn-secondary.active.focus, #pinOrAuthBtns .btn-secondary.active.focus {
    box-shadow: 0 0 0 0.2rem rgba(243,156,18,.25);
}

#episodeOrSeriesBtns .btn-secondary.active:hover, #pinOrAuthBtns .btn-secondary.active:hover {
    color: #fff;
    background-color: #d4860b;
    border-color: #c87f0a;
}

/*==========================
        TABLES
==========================*/

table, td, tr, th {
    color: rgb(240,240,240);
}

.table td, .table th {
    border-top: 1px solid #aaa;
}

.table thead th {
    border-bottom: 2px solid #aaa;
}

.table-active>td, .table-active>th {
    background-color: transparent;
}

#serverTable tbody tr {
    cursor: pointer;
}

#libraryTable tbody tr {
    cursor: pointer;
}

#tvShowsTable tbody tr {
    cursor: pointer;
}

#seasonsTable tbody tr {
    cursor: pointer;
}

#episodesTable tbody tr {
    cursor: pointer;
}

#audioTable tbody tr {
    cursor: pointer;
}

#subtitleTable tbody tr {
    cursor: pointer;
}

.table-active {
    background-color: rgba(192, 118, 0.8,.20);
}

.table-hover tbody tr:hover {
    background-color: rgba(255,255,255,.1);
    transition: none;
}

.table-hover .table-active:hover {
    background-color: rgba(192, 118, 0.8,.4);
    transition: none;
}

@keyframes successFadeOut {
    0%   { background-color: rgba(0,188,140,0.4); }
    15%  { background-color: rgba(0,188,140,0.4); }
    100% { background-color: rgba(192, 118, 0.8,.20); }
}

#audioTable tbody tr.success-transition {
    color: #fff;
    animation: successFadeOut 1.75s ease-out;
}

#subtitleTable tbody tr.success-transition {
    color: #fff;
    animation: successFadeOut 1.75s ease-out;
}

/*==========================
        MEDIA QUERIES
==========================*/

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 768px) {
    .titleNavBar .titleImage {
        max-height: 2em;
    }
}

@media only screen and (max-width: 1199px) {
    /*#alphabetGroup.btn-group .btn:not(:last-child):not(.dropdown-toggle) {
        border-bottom-left-radius: 0;
    }

    #alphabetGroup.btn-group .btn:not(:first-child) {
        border-top-right-radius: 0;
    }*/
}

@media only screen and (min-width: 1400px){
    .container {
        max-width: 1215px;
    }
}