@import "lib/ibmplexsans";

:root {
    --light: #fff;
    --dark: #000;
    --body-bg: rgba(243,244,246,1);
    --body-color: #212529;
    --nav-bg: #fff;
    --bg-light: #f8f9fa;

    --primary: #3B82F6;
    --light-gray: #f8f9fa;
    --text-lighter: #94a3b8;

    --card-bg: #fff;
    --light-hover-bg: #f9fafb;
    --btn-light-border: #fff;
    --input-border: #e2e8f0;
    --comment-bg: #eff2f5;
    --border-color: #dee2e6;
    --card-header-accent: #f9fafb;

    --dropdown-item-hover-bg: #e9ecef;
    --dropdown-item-hover-color: #16181b;
    --dropdown-item-color: #64748b;
    --dropdown-item-active-color: #334155;
}

@media (prefers-color-scheme: dark) {
    :root {
        --light: #000;
        --dark: #fff;
        --body-bg: #000;
        --body-color: #9ca3af;
        --nav-bg: #000;
        --bg-light: #212124;

        --light-gray: #212124;
        --text-lighter: #818181;

        --card-bg: #161618;
        --light-hover-bg: #212124;
        --btn-light-border: #161618;
        --input-border: #161618;
        --comment-bg: #212124;
        --border-color: #212124;
        --card-header-accent: #212124;

        --dropdown-item-hover-bg: #000;
        --dropdown-item-hover-color: #818181;
        --dropdown-item-color: #64748b;
        --dropdown-item-active-color: #fff;
    }
}

.force-light-mode {
    --light: #fff;
    --dark: #000;
    --body-bg: rgba(243,244,246,1);
    --body-color: #212529;
    --nav-bg: #fff;
    --bg-light: #f8f9fa;

    --primary: #3B82F6;
    --light-gray: #f8f9fa;
    --text-lighter: #94a3b8;

    --card-bg: #fff;
    --light-hover-bg: #f9fafb;
    --btn-light-border: #fff;
    --input-border: #e2e8f0;
    --comment-bg: #eff2f5;
    --border-color: #dee2e6;
    --card-header-accent: #f9fafb;

    --dropdown-item-hover-bg: #e9ecef;
    --dropdown-item-hover-color: #16181b;
    --dropdown-item-color: #64748b;
    --dropdown-item-active-color: #334155;
}

.force-dark-mode {
    --light: #000;
    --dark: #fff;
    --body-bg: #000;
    --body-color: #9ca3af;
    --nav-bg: #000;
    --bg-light: #212124;

    --light-gray: #212124;
    --text-lighter: #818181;

    --card-bg: #161618;
    --light-hover-bg: #212124;
    --btn-light-border: #161618;
    --input-border: #161618;
    --comment-bg: #212124;
    --border-color: #212124;
    --card-header-accent: #212124;

    --dropdown-item-hover-bg: #000;
    --dropdown-item-hover-color: #818181;
    --dropdown-item-color: #64748b;
    --dropdown-item-active-color: #b3b3b3;
}

body {
    background: var(--body-bg);
    font-family: 'IBM Plex Sans', sans-serif;
    color: var(--body-color);
}

.web-wrapper {
    margin-bottom: 10rem;
}

.container-fluid {
    max-width: 1440px !important;
}

.jumbotron {
    border-radius: 18px;
}

.rounded-px {
    border-radius: 18px;
}

.doc-body {
    p:last-child {
        margin-bottom: 0;
    }
}

.navbar-laravel {
    background-color: var(--nav-bg);
}

.sticky-top {
    z-index: 2;
}

.fw-bold {
    font-weight: bold;
}

.navbar-light .navbar-brand {
    color: var(--dark);

    &:hover {
        color: var(--dark);
    }
}

.primary {
    color: var(--primary);
}

.bg-g-amin {
    background: #8E2DE2;
    background: -webkit-linear-gradient(to right, #4A00E0, #8E2DE2);
    background: linear-gradient(to left, #4A00E0, #8E2DE2);
}

.text-lighter {
    color: var(--text-lighter) !important;
}

.text-dark {
    color: var(--body-color) !important;

    &:hover {
        color: var(--dark) !important;
    }
}

a.text-dark:hover {
    color: var(--dark) !important;
}

.badge-primary {
    background-color: var(--primary);
}

.btn-primary {
    background-color: var(--primary);
    color: #fff !important;
}

.btn-outline-light {
    border-color: var(--light-gray);
}

.border {
    border: 1px solid var(--border-color) !important;

    &-right {
        border-color: var(--border-color) !important;
    }
}

.bg-white,
.bg-light {
    background-color: var(--bg-light) !important;
    border-color: var(--bg-light) !important;
}

.btn-light {
    background-color: var(--light-gray);
    border-color: var(--btn-light-border);
    color: var(--body-color);

    &:hover {
        color: var(--body-color);
        background-color: var(--card-bg);
        border-color: var(--btn-light-border);
    }
}

.autocomplete-input {
    border: 1px solid var(--light-gray) !important;
    color: var(--body-color);
}

.autocomplete-result-list {
    background: var(--light) !important;
    z-index: 2 !important;
}

.dropdown-menu,
span.twitter-typeahead .tt-menu,
.form-control {
    border: 1px solid var(--border-color) !important;
    color: var(--body-color);
    background-color: var(--card-bg);
}

.tribute-container li,
.dropdown-item,
span.twitter-typeahead .tt-suggestion {
    color: var(--body-color);
}

.dropdown-item:hover,
span.twitter-typeahead .tt-suggestion:hover,
.dropdown-item:focus,
span.twitter-typeahead .tt-suggestion:focus {
    color: var(--dropdown-item-hover-color);
    background-color: var(--dropdown-item-hover-bg);
    text-decoration: none;
}

.popover,
.modal-content,
.form-control:focus,
.tribute-container ul,
.list-group-item,
.card,
.card-header,
.card-footer,
.ph-item {
    background-color: var(--card-bg);
}

.badge-light,
.breadcrumb,
.ph-avatar,
.ph-picture,
.ph-row div {
    background-color: var(--light-gray);
}

.card-header,
.border-top,
.border-bottom {
    border-color: var(--border-color) !important;
}

.modal-header,
.modal-footer {
    border-color: var(--border-color);
}

.compose-action:hover {
    background-color: var(--light-gray) !important;
}

.dropdown-divider {
    border-color: var(--dropdown-item-hover-bg);
}

.metro-nav {
    &.flex-column {
        background-color: var(--card-bg);

        .nav-item {
            .nav-link:hover {
                background-color: var(--light-hover-bg);
            }
        }
    }
}

.child-reply-form {
    .form-control {
        border-color: var(--input-border);
        color: var(--body-color);
    }
}

.ui-menu {
    .btn-group {
        .btn:first-child {
            border-top-left-radius: 50rem;
            border-bottom-left-radius: 50rem;
        }

        .btn:last-child {
            border-top-right-radius: 50rem;
            border-bottom-right-radius: 50rem;
        }

        .btn-primary {
            font-weight: bold;
        }
    }

    .b-custom-control-lg {
        padding-bottom: 8px;
    }
}

.content-label {
    &-wrapper {
        div:not(.content-label) {
            height: 100%;
        }
    }

    &-text {
        width: 80%;
        @media (min-width: 768px) {
            width: 50%;
        }
    }
}

.compose-modal-component {
    .form-control:focus {
        color: var(--body-color);
    }
}

.modal-body {
    .nav-tabs .nav-link.active,
    .nav-tabs .nav-item.show .nav-link {
        background-color: transparent;
        border-color: var(--border-color);
    }

    .nav-tabs .nav-link:hover,
    .nav-tabs .nav-link:focus {
        border-color: var(--border-color);
    }

    .form-control:focus {
        color: var(--body-color);
    }
}

.tribute-container {
    border: 0;

    ul {
        margin-top: 0;
        border-color: var(--border-color);
    }

    li {
        padding: 0.5rem 1rem;
        border-top: 0;
        border-left: 0;
        border-right: 0;
        font-size: 13px;

        &:not(:last-child) {
            border-bottom: 1px solid var(--border-color);
        }

        &.highlight,
        &:hover {
            color: var(--body-color);
            font-weight: bold;
            background: rgba(44, 120, 191, 0.25);
        }
    }
}

.ft-std {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.timestamp-overlay-badge {
    color: var(--dark);
}

.modal-backdrop {
    opacity: 0.8;
}

.timeline-status-component {
    .username {
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
        margin-bottom: -3px;
        word-break: break-word;

        @media (min-width: 768px) {
            font-size: 17px;
        }
    }
}
