/* Some custom css variables */
:root {
    --background-back: #18191a;
    --background-mid: #242526;
    --background-front: #3a3b3c;

    --text-default: #eeeeee;
    --text-muted: #9c9c9c;

    --border-radius: 0.25rem;

    --sidebar-width: 180px;
}

/* Some reset styling */
html,
body {
    width: 100%;
    height: 100vh;
    overflow-x: hidden;
    background-color: var(--background-back);
}

/* Make emoji's fit inline with text */
img.emoji {
    height: 1.5em;
    width: 1.5em;
    margin: 0 0.05em 0 0.1em;
    vertical-align: -0.35em;
}

/* Custom background colours */
.background-middle {
    background-color: var(--background-mid);
}

.background-front {
    background-color: var(--background-front);
}

.rounded-surface {
    border-radius: var(--border-radius);
}

.text-default {
    color: var(--text-default);
}

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

.border-default {
    border: 1px solid var(--background-front);
}

/* Form styles */
.custom-field {
    color: var(--text-default);
    background-color: var(--background-front);
    border: 1px solid var(--background-front);
}

.custom-field:focus {
    color: var(--text-default);
    background-color: var(--background-front);
    border: 1px solid var(--background-front);
}

.visibility-select {
    width: 120px;
}

.select-light-chevron {
    /* replaced bg image with the same svg but modified the stroke colour */
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23eeeeee' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.form-check-dark {
    background-color: var(--background-front);
    border: none;
}

/* Due to navbar and sidebar being position:fixed, we need to position the main element differently */
main {
    width: calc(100% - var(--sidebar-width));
    position: absolute;
    top: 64px;
    left: var(--sidebar-width);
}

@media (max-width: 576px) {
    main {
        width: 100%;
        left: 0;
        padding-bottom: 5rem;
    }
}

/* Sidebar */
.sidebar {
    height: 100%;
    width: var(--sidebar-width);
    min-width: var(--sidebar-width);
    position: fixed;
    left: 0;
    top: 0;
    padding-top: 64px;
}

.sidebar-item {
    display: block;
    color: var(--text-default);
    margin: 0.25rem 1rem;
    border-radius: var(--border-radius);
}

.sidebar-item:hover {
    background-color: var(--background-front);
    color: var(--text-muted);
}

.sidebar-item i {
    margin-right: 0.5rem;
}

.appbar-item {
    flex: 1 1 0;
    padding: 1.25rem 0.5rem;
    border-radius: var(--border-radius);
}

.appbar-item span {
    font-weight: lighter;
    font-size: 14px;
}

.appbar-item.active,
.appbar-item.active span,
.sidebar-item.active {
    font-weight: bold;
    background-color: var(--background-front);
}

/* Button extras */
.btn-circle {
    border-radius: 50%;
}

/* profile */
.profile {
    border-radius: 50%;
    overflow: hidden;
    display: block;
}

/* Trending component */
.trending-container {
    min-width: 250px;
}

.trending-items {
    overflow-x: hidden;
}

.trending-items::-webkit-scrollbar {
    width: 0.5rem;
    height: 0.5rem;
    background-color: var(--background-back);
    border-radius: var(--border-radius);
}

.trending-items::-webkit-scrollbar-thumb {
    background-color: var(--background-front);
    border-radius: var(--border-radius);
    cursor: pointer;
}

@media (max-width: 992px) {
    .trending-items {
        overflow-x: scroll;
    }

    .trending-items div {
        margin-right: 0.5rem;
    }
}

/* Add tags dropdown */
.add-tag-dropdown {
    min-width: 400px;
}

@media (max-width: 576px) {
    .add-tag-dropdown {
        width: 97.5vw;
    }
}

/* Post */
.post-button-group a:hover {
    color: var(--text-muted);
}

.like-reaction,
.dislike-reaction {
    cursor: pointer;
}

.like-reaction:hover,
.dislike-reaction:hover {
    color: var(--text-muted);
}
