/**
* @name Nocturnal
* @version 3.0.1
* @description For when default discord just isn't dark enough, a theme for those who live a night
* @author Spectra
* @invite PZdnCVD
* @source https://github.com/xcruxiex/themes
* @website https://betterdiscord.app/theme/Nocturnal
*/

/*
* very handy tool https://syndishanx.github.io/Website/Update_Classes.html
*/

@import url("https://xcruxiex.github.io/themes/themes-cores/nocturnal.css");

@import url("https://xcruxiex.github.io/themes/core/badges.css");
@import url("https://xcruxiex.github.io/themes/core/custom-font.css");
@import url("https://discordstyles.github.io/RadialStatus/dist/RadialStatus.css"); /* Radial Status */
@import url("https://discordstyles.github.io/HorizontalServerList/dist/HorizontalServerList.css"); /* Horizontal Server List */

:root {
    --backgroundColor01: #1f1d2e;
    --backgroundColor02: #191724;
    --backgroundColor03: #1f1d2e;
    --backgroundColor04: #26233a;
    --mainColor: #ebbcba;
    --gradientColor01: #ebbcba;
    --gradientColor02: #ea9a97;

    --textColor01: #e0def4;
    --textColor02: #908caa;
    --textColor03: #6e6a86;

    /* Better Hljs */
    --backgroundCode: #191724;
    --backgroundName: rgba(0, 0, 0, 0.2);

    /* Radial Status */
    --rs-small-spacing: 2px;
    --rs-large-spacing: 3px;
    --rs-width: 2px;
    --rs-avatar-shape: 20%;
    --rs-online-color: #9ccfd8;
    --rs-idle-color: #f6c177;
    --rs-dnd-color: #eb6f92;
    --rs-offline-color: #6e6a86;
    --rs-streaming-color: #c4a7e7;
    --rs-invisible-color: #6e6a86;
    --rs-phone-visible: block;
    --rs-phone-color: var(--rs-online-color);

    --customFont: "gg sans", sans-serif;
}

:root {
    --HSL-server-icon-size: 20px;
    --HSL-server-spacing: 20px;
    --HSL-server-direction: column;
}

/* fix */
/* more consistent colors */
:root,
.theme-dark {
    --background-primary: var(--backgroundColor02);
    --background-secondary: var(--backgroundColor02);
    --background-floating: var(--backgroundColor02);
    --background-accent: var(--backgroundColor01);
    --background-modifier-hover: var(--backgroundColor01);
    --background-modifier-selected: var(--backgroundColor04);
    --background-modifier-active: var(--backgroundColor04);
    --text-normal: var(--textColor01);
    --header-primary: var(--textColor01);
    --interactive-active: var(--textColor01);
    --header-secondary: var(--textColor02);
    --channels-default: var(--textColor02);
    --interactive-normal: var(--textColor02);
    --text-muted: var(--textColor03);
    --interactive-muted: var(--textColor03);
    --divider-color: var(--rs-dnd-color);
    --status-danger: var(--rs-dnd-color);
    --text-positive: var(--rs-online-color);
    --scrollbar-auto-scrollbar-color-thumb: var(--backgroundColor03);
    --scrollbar-auto-scrollbar-color-track: var(--backgroundColor02);
    --scrollbar-auto-thumb: var(--backgroundColor03);
    --scrollbar-auto-track: var(--backgroundColor02);
    --scrollbar-thin-thumb: var(--backgroundColor03);
    --scrollbar-thin-track: hsl(var(--backgroundColor02));
}
::selection {
    background: var(--mainColor);
    color: var(--backgroundColor01);
}

/* titlebar removal */
div[class*="titleBar-"] {
    display: none !important;
}

/* dividers instead of folder icons + expanded folders background removal */
.expandedFolderIconWrapper_bc7085 {
    transform: scale(0.1, 2);
}
#app-mount .guilds_a4d4d9 [class*="expandedFolderBackground"] {
    background: transparent !important;
}

/* server icon badges adjustment */
.lowerBadge_c5f96a {
    transform: translate(5px, 2px) !important;
}
.base__5ed84 {
    min-width: calc(var(--HSL-server-icon-size) / 2) !important;
    min-height: calc(var(--HSL-server-icon-size) / 2) !important;
    line-height: calc(var(--HSL-server-icon-size) / 2) !important;
    font-size: calc(var(--HSL-server-icon-size) / 3) !important;
    width: unset !important;
    height: unset;
}
.upperBadge_c5f96a {
    transform: translate(5px, -2px) !important;
}
.iconBadge__0c126 {
    width: unset !important;
}
.upperBadge_c5f96a svg.icon__62c73 {
    width: calc(var(--HSL-server-icon-size) / 3) !important;
    height: calc(var(--HSL-server-icon-size) / 3) !important;
}

/* custom active server pill */
#app-mount .guilds_a4d4d9 [class*="pill"] {
    top: calc(var(--server-size) / -2 + var(--server-size) + 8px) !important;
}
.item_c4cd66 {
    background-color: var(--mainColor);
}
#app-mount .guilds_a4d4d9 [class*="pill"] span {
    width: 2px !important;
}

/* top bar removal + hoverable channel description and search bar */
#app-mount .container_fc4f04.themed_fc4f04 {
    background: unset !important;
    background-image: linear-gradient(
        var(--backgroundColor02) 30%,
        70%,
        transparent
    ) !important;
}
.container_fc4f04 {
    position: absolute !important;
}
.children_fc4f04 > *:not(.topic_bf3bbb.expandable_bf3bbb, .topPill_a0) {
    display: none;
}
.topic_bf3bbb.expandable_bf3bbb,
.topPill_a0,
.search_a46bef {
    opacity: 0;
    transition: opacity 0.2s;
}
.toolbar_fc4f04 > *:not(.search_ff5f90) {
    visibility: hidden;
    width: 0;
    margin: 0;
}
.topic_bf3bbb.expandable_bf3bbb:hover,
.topPill_a0:hover,
.search_a46bef.open_a46bef {
    opacity: 1;
}
.searchBar_a46bef,
.resizeHandle_d1c246 {
    background: transparent;
}

/* custom unread bar + clickable elements adjustment */
#app-mount .newMessagesBar_cf58b5,
.barButtonBase_cf58b5 {
    background-color: var(--backgroundColor03);
    color: var(--mainColor);
}
.newMessagesBar_cf58b5.barBase_cf58b5 {
    padding-top: 40px;
}
.tabBody_c2739c,
.searchResultsWrap_c2b47d {
    margin-top: 40px;
}

/* cleaner floating boxes, cards */
#app-mount .emptyCard_f02fcf .inset_c0f6a6,
#app-mount .emptyCard_f02fcf .section_cd82a7,
#app-mount .wrapper_cd82a7 .inset_c0f6a6,
#app-mount .wrapper_cd82a7 .section_cd82a7 {
    box-shadow: none;
}

/* consistent avatar corner rounding */
.avatar_f9f2ca,
.avatar_cdc675 {
    border-radius: var(--rs-avatar-shape);
}
.svg_d48241.avatarHint_f89da9 foreignObject {
    mask: none !important;
}
.avatarHintInner_f89da9 {
    border-radius: var(--rs-avatar-shape);
    transform: scale(0.9);
}

/* better readability of user mentions */
#app-mount .wrapper_d4fa29 {
    color: var(--backgroundColor02);
    text-shadow: none;
}

/* custom unread divider */
.isUnread_c2654d .content_c2654d {
    border: 1px solid var(--divider-color);
}
.unreadPill_c2654d {
    color: var(--backgroundColor02);
}

/* message input field with borders + lesser buttons + consistent emoji picker colors */
.channelTextArea_a7d72e.channelTextArea_d0696b {
    border: 3px solid var(--backgroundColor04) !important;
}
.channelTextArea_a7d72e.channelTextArea_d0696b:hover {
    border: 3px solid var(--mainColor) !important;
}
.channelTextArea_a7d72e.channelTextArea_d0696b:focus-within {
    border: 3px solid var(--backgroundColor03) !important;
}
.buttons_d0696b > *:not(:last-child) {
    display: none;
}
.sprite_af14ca {
    filter: sepia(1) brightness(0.8) hue-rotate(300deg) !important;
}
.inner_d0696b > div:nth-child(2) {
    order: 2;
}
.inner_d0696b > div:nth-child(3) {
    order: 1;
}
.inner_d0696b > div:nth-child(4) {
    order: 3;
}
