/**
 * @name DIALOGUE.386
 * @description A late 80s to early 90s TUI-style theme with Atkinson Hyperlegible Mono based on System-Glass (system24) Theme by Deer ♡
 * @basetheme dark
 * @author jce:2492
 * @invite https://fluxer.gg/themes
 */

body {
    container-name: body;

    /* ----------------------------------------------------------------------- */
    /* Toggles
    /* ----------------------------------------------------------------------- */

    /* decide if you want square or rounded avatars. | Options: off, on | Recommended: on */
    --SquareAvatars: on;
    /* set the user online status appearance. outlines look better with square avatars, but only in the desktop client. | Options: off, on | Recommended: on */
    --OutlineOnlineStatus: on;
    /* decide if you want bubbles to highlight message groups. | Options: off, on | Currently broken
    /* see also: --ThemeMessageBubbleColor */
    --MessageBubbles: off;
    /* decide if you want panel labels. looks better without a background image | Options: off, on | Currently broken */
    --ThemePanelLabels: off;
    /* overwrites fluxer's panel rounding in most places | Options: off, on | Recommended: off
    /* see also: --ThemeRoundingMultiplier */
    --UseDefaultRounding: off;
    /* decide if you want to disable some additional animations added by the theme | Options: off, on | Recommended: off */
    --ExtraAnimations: off;
    /* set a custom app icon in the top left corner | Options: off, on */
    --CustomAppIcon: off;
    /* link to your custom icon. currently it HAS to be hosted on fluxer's servers */
    --ThemeCustomIconUrl: url('');
    /* [Experimental] Controls the server list position, only works in the desktop client for now. | Options: off | on */
    --Horizontal-Serverlist: off;
    /* Controls the server list alignment. only works with horizontal serverlist enabled | Options: left | center | right */
    --Serverlist-Alignment: left;
}

:root {
    /* ----------------------------------------------------------------------- */
    /* Colors & default theme overrides
    /* ----------------------------------------------------------------------- */

    --brand-primary: #00ff00;
    --brand-secondary: #00aa00;

    --ThemeMessageBubbleColor: #cacaca;

    --ThemeFlatPrimary: #000071;
    --ThemeFlatLighter: #5500ff;
    --ThemeFlatDarker: black;

    --ThemeDarkenLight: #000071;
    --ThemeDarkenMedium: #c0c0c088;
    --ThemeBrightenLight: rgba(255, 255, 255, .06);
    --ThemeBrightenMedium: rgba(255, 255, 255, .15);

    /* color overrides */
    --background-primary: var(--ThemeFlatDarker);
    --background-secondary: var(--ThemeFlatPrimary);
    --background-secondary-alt: var(--ThemeFlatLighter); /* mainly used in for mobile view*/
    --background-tertiary: var(--ThemeFlatLighter); /* mainly used in for mobile view*/
    --background-textarea: var(--ThemeDarkenLight); /* used in search bars */
    --status-danger: #ff0055; /* notification badges */

    /* ----------------------------------------------------------------------- */
    /* Fonts & Text
    /* ----------------------------------------------------------------------- */

    /* change to '' for Fluxer's default font */
    --font-sans: 'Atkinson Hyperlegible Mono', monospace;
    /* change to '' for fluxer's default font */
    --font-mono: 'Atkinson Hyperlegible Mono';
    /* 300 is light, 400 is normal. DOES NOT AFFECT BOLD TEXT */
    font-weight: 500;
    /* decreases letter spacing for better readability. recommended on monospace fonts.*/
    letter-spacing: -0.03ch;

    /* ----------------------------------------------------------------------- */
    /* Background
    /* ----------------------------------------------------------------------- */

    /* Background Image | fluxer currently only allows using images hosted on their own servers.
    /* theres a list of presets further below, named --bg-1 to --bg-5. of course, you can also use your own images. */
    --background-image: var(--bg-2);
    /* fallback color behind the background image. can be used to give your bg image a tint */
    --ThemeBackgroundColor: #b8b8b8;
    /* Image position | center, left, right, bottom, top */
    --backgroundPosition: top;
    /* To cover the entire app, set to "cover". You can also set it to "100% 100%" but the image will be stretched. Set to "contain" to see the entire image */
    --backgroundSize: cover;
    /* if you want the image to repeat */
    --backgroundRepeat: no-repeat;
    /* Set to 0 to remove blur. i recommend leaving this off and tweaking --ThemePanelBlur instead */
    --backgroundBlur: 0px;
    /* 0 is fully transparent, 1 is fully opaque */
    --backgroundOpacity: 0;

    /* ----------------------------------------------------------------------- */
    /* panels
    /* ----------------------------------------------------------------------- */

    /* gap between panels */
    --ThemePanelMargin: 16px;
    /* panel */
    --ThemePanelBGColor: var(--ThemeDarkenLight);
    /* panel hovered */
    /* --ThemePanelBGColorHovered: hsl(0, 0%, 10%); */
    /* background color for tooltips, context panels etc */
    --ThemePanelContextBGColor: #5500aa;
    /* background color for media picker, notification inbox, search filters, pins etc */
    --ThemePanelModalBGColor: #aa00aa;
    /* panel border thickness */
    --ThemePanelBorderThickness: 6px;
    /* panel border rounding */
    --ThemePanelBorderRounding: 0px;
    /* panel border color (not hovered) */
    --ThemePanelBorderColor: white;
    /* panel border color (hovered) */
    /* --ThemePanelBorderColorHovered: var(--brand-primary); */
    /* panel shadows */
    --ThemePanelShadow: 10px 10px rgb(0, 0, 0, 0.8);

    /* you can ignore these */
    --ThemePanelBorder: var(--ThemePanelBorderThickness) double var(--ThemePanelBorderColor);
    --ThemePanelBorderHovered: var(--ThemePanelBorderThickness) solid var(--ThemePanelBorderColorHovered);

    /* ----------------------------------------------------------------------- */
    /* rounding
    /* ----------------------------------------------------------------------- */

    /* change this value to control the ui's overall rounding strength
    * 1 is the default, 0 removes most rounding. */
    --ThemeRoundingMultiplier: 0;

    /* leave these alone unless you know what youre doing */
    --radius-sm: calc(0.25rem * var(--ThemeRoundingMultiplier));
    --radius-md: calc(0.375rem * var(--ThemeRoundingMultiplier));
    --radius-lg: calc(0.5rem * var(--ThemeRoundingMultiplier));
    --radius-xl: calc(0.75rem * var(--ThemeRoundingMultiplier));
    --radius-2xl: calc(1rem * var(--ThemeRoundingMultiplier));
    --radius-full: calc(9999px * var(--ThemeRoundingMultiplier));
    --media-border-radius: calc(4px * var(--ThemeRoundingMultiplier));
    --message-reply-spine-radius: calc(6px * var(--ThemeRoundingMultiplier));

    /* set universal border rounding */
    /* * { border-radius: var(--ThemePanelBorderRounding) !important; } */

    /* ----------------------------------------------------------------------- */
    /* background presets (credits to ThaSilentArtist)
    /* ----------------------------------------------------------------------- */
    --bg-1: url("https://fluxerusercontent.com/attachments/1474610319297830991/1481279988511911959/41511cd77e70.png");
    --bg-2: url("https://fluxerusercontent.com/attachments/1474610319297830991/1481670714326512122/a8082672504ec71.gif");
    --bg-3: url("https://fluxerusercontent.com/attachments/1474610319297830991/1481671197485134759/rocket_thasilentartist.png");
}


/* ################################################################################################# */
/* ################################################################################################# */
/* ################################################################################################# */

/* ---------------------------------------------------------------- */
/* basic setup */
/* ---------------------------------------------------------------- */

html {
    background: var(--ThemeBackgroundColor);
    opacity: 1;
    background-image:  radial-gradient(var(--ThemeFlatPrimary) 2px, var(--ThemeBackgroundColor) 2px);
    background-size: 4px 4px;
}

/* prevent background turning black in mobile view */
body {
    background: transparent!important;
}

/* this holds the background image */
body::before {
    content: "";
    position: fixed;
    inset: 0;
    background: var(--background-image);
    background-size: var(--backgroundSize);
    background-position: var(--backgroundPosition);
    background-repeat: var(--backgroundRepeat);
    filter: blur(var(--backgroundBlur));
    opacity: var(--backgroundOpacity);
    z-index: -1;
}


/* remove backgrounds. this is safer than overwriting the color variables directly */
html:not(.auth-page) [class*="App.module__appContainer_"],
[class*="App.module__appContainer_"],
[class*="GuildsLayout.module__guildsLayoutContainer_"],
[class*="GuildsLayout.module__guildListScrollContainer_"],
[class*="GuildsLayout.module__contentContainer_"],
[class*="UserArea.module__userAreaInnerWrapper_"],
[class*="OutlineFrame.module__frame_"],
[class*="GuildsLayout.module__contentInner_"],
[class*="GuildLayout.module__guildLayoutContainer_"],
[class*="ChannelListContent.module__channelListScroller_"],
[class*="GuildLayout.module__guildMainContent_"],
[class*="ChannelLayout.module__channelLayoutContainer_"],
[class*="ChannelIndexPage.module__channelGrid_"],
[class*="ChannelHeader.module__headerContainer_"],
[class*="ChannelChatLayout.module__container_"],
[class*="InputWrapper.module__box_"],
[class*="GuildHeader.module__headerContainer_"],
[class*="DMLayout.module__dmLayoutContainer_"],
[class*="DMList.module__dmListContainer_"],
[class*="DMList.module__dmListHeader_"],
[class*="DMList.module__desktopScroller_"],
[class*="DMList.module__dmChannelList_"],
[class*="DMLayout.module__contentColumn_"],
[class*="DMLayout.module__contentInner_"],
[class*="DMFriendsView.module__container_"],
[class*="UserProfileModal.module__modalContainer_"],
[class*="Divider.module__text_"],
[class*="Divider.module__dateWithUnreadText_"],
[class*="SplashScreen.module__splashOverlay_"],
[class*="MobileTextareaLayout.module__mobilePlusButton_"],
[class*="MobileTextareaLayout.module__mobileInputContainer_"],
[class*="MobileTextareaLayout.module__mobileVoiceButton_"],
[class*="ChannelHeader.module__iconButtonMobile_"],
[class*="NotificationsPage.module__container_"],
[class*="SelectBottomSheet.module__trigger_"],
[class*="NotificationsPage.module__bookmarkButton_"],
[class*="YouPage.module__profile_"],
[class*="YouPage.module__noteIconWrapper_"],
[class*="DMList.module__mobileContainer_"],
[class*="DMList.module__mobileScroller_"],
[class*="DMList.module__mobileHeaderButton_"],
[class*="DMList.module__mobileAddFriendButton_"],
[class*="MemberListContainer.module__memberListScroller_"],
[class*="ChannelSearchResults.module__container_"],
[class*="GuildNavbarSkeleton.module__skeletonHeader_"]
{
    background: transparent;
}

/* ---------------------------------------------------------------- */
/* panel scaling fixes | setup to ensure proper scaling with custom area margins
/* ---------------------------------------------------------------- */

/* server list container */
[class*="GuildsLayout.module__guildListScrollerWrapper_"],
/* server channel list */
[class*="GuildNavbar.module__guildNavbarContainer_"],
/* server channel list skeleton */
[class*="GuildNavbarSkeleton.module__skeletonContainer_"],
/* dm list container */
[class*="DMLayout.module__dmListColumn_"]
{
    width: -webkit-fill-available;
    height: calc(100% - var(--layout-user-area-reserved-height) - var(--layout-mobile-bottom-nav-reserved-height) - var(--ThemePanelMargin) - var(--ThemePanelBorderThickness) * 2);
}
/* self status */
[class*="GuildsLayout.module__userAreaWrapper_"]
{
    width: calc(var(--layout-guild-list-width) + var(--layout-sidebar-width) + var(--ThemePanelMargin));
}

/* channel header to message list */
[class*="ChannelIndexPage.module__channelGrid_"]
{
    display: flex;
    flex-direction: column;
}
/* typing users list
[class*="ChannelChatLayout.module__typingArea_"]
{
    height: fit-content;
    transition-property: height;
    transition-duration: 0.3s;
} */

/* self profile popout */
[class*="UserAreaPopout.module__container_"]
{
    width: inherit;
}


/* ---------------------------------------------------------------- */
/* panel gaps/margins
/* ---------------------------------------------------------------- */

/* whole ui app layout container */
[class*="AppLayout.module__appLayout_"]
{
    padding: var(--ThemePanelMargin);
    gap: var(--ThemePanelMargin);
}

/* whole ui layout container */
[class*="GuildsLayout.module__guildsLayoutContainer_"],
/* whole ui content container */
[class*="GuildsLayout.module__contentContainer_"],
/* dm area container */
[class*="DMLayout.module__dmLayoutContainer_"],
/*  channel header to message list */
[class*="ChannelIndexPage.module__channelGrid_"],
/*  messages to text input */
[class*="ChannelChatLayout.module__container_"],
/* server area container */
[class*="GuildLayout.module__guildLayoutContent_"],
/* friendslist to active panel */
[class*="DMFriendsView.module__container_"],
/* friendslist header & friendslist */
[class*="DMFriendsView.module__mainColumn_"],
/* mobile notifications page header to notifs */
[class*="NotificationsPage.module__container_"]
{
    gap: var(--ThemePanelMargin);
}

/*  messages to text input | correcting for the typing members section */
[class*="ChannelChatLayout.module__container_"] {
    gap: calc(var(--ThemePanelMargin) / 2);
}


/* these require a margin because using gap leaves a gap even when those panels are hidden. */
/*  message list to member list */
[class*="MemberListContainer.module__memberListContainer_"],
/*  message list to search results */
[class*="ChannelIndexPage.module__searchPanel_"]
{
    margin-left: var(--ThemePanelMargin);
    margin-right: var(--ThemePanelMargin);
    width: calc(100% - var(--ThemePanelMargin));
}

/* server list */
[class*="GuildsLayout.module__guildListScrollContainer_"] {
    padding-top: var(--spacing-2);
}


/* ordered list fix */
[class*="Markup.module__markup_"] ol {
    -webkit-margin-start: calc(1.4em + var(--totalCharacters, 1) * 0.6em);
    margin-inline-start: calc(1.4em + var(--totalCharacters, 1) * 0.6em);
}
/* unordered list fix */
[class*="Markup.module__markup_"] ul {
    -webkit-margin-start: calc(0.8em + var(--totalCharacters, 1) * 0.6em);
    margin-inline-start: calc(0.8em + var(--totalCharacters, 1) * 0.6em);
}

/* ---------------------------------------------------------------- */
/* panel borders
/* ---------------------------------------------------------------- */

/* remove default panel dividers */
[class*="UserArea.module__separator_"],
[class*="OutlineFrame.module__divider_"],
[class*="ChannelIndexPage.module__memberListDivider_"]
{
    display: none;
}
/* remove default panel borders */
[class*="ActiveNowSidebar.module__sidebar_"],
[class*="OutlineFrame.module__frame_"] {
    border: none;
}



/* loading splashscreen */
[class*='SplashScreen.module__splashContent_'],
/* server sidebar */
[class*="GuildsLayout.module__guildListScroller"],
/* dm list */
[class*="DMLayout.module__dmListColumn_"],
/* server channel list */
[class*="GuildNavbar.module__guildNavbarContainer_"],
/* self status */
[class*="GuildsLayout.module__userAreaWrapper_"],
/* channel header */
[class*="ChannelHeader.module__headerWrapper_"],
/* channel member list */
[class*="MemberListContainer.module__memberListContainer_"],
/* friendslist */
[class*='DMFriendsView.module__content_'],
/* friendslist active now panel */
[class*="ActiveNowSidebar.module__sidebar_"],
/* search results */
[class*="ChannelIndexPage.module__searchPanel_"],
/* settings panel */
[class*="Modal.module__root_"],
/* VC panel */
[class*="VoiceCallView.module__root_"],
/* VC panel empty */
[class*="ChannelIndexPage.module__emptyStateContent_"],
/* server member page */
[class*="GuildMembersPage.module__pageContainer_"],
/* mobile bottom nav */
[class*="MobileBottomNav.module__container_"],
/* mobile notifications page header */
[class*="NotificationsPage.module__header_"],
/* mobile notifications page content */
[class*="NotificationsPage.module__content_"],
/* mobile own profile page */
[class*="YouPage.module__container_"],
/* server discovery explore page */
[class*="DiscoveryPage.module__container_"],
/* auth page */
[class*="AuthLayout.module__card_"],
/* server unavailable */
[class*="GuildLayout.module__guildUnavailableContainer_"],
/* server unavailable channels skeleton */
[class*="GuildNavbarSkeleton.module__skeletonContainer_"]
{
    border: var(--ThemePanelBorder)!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
    backdrop-filter: blur(var(--ThemePanelBlur)) !important;
    -webkit-backdrop-filter: blur(var(--ThemePanelBlur)) !important;
    background: var(--ThemePanelBGColor)!important;
    transition: var(--transition-slow);
    box-shadow: var(--ThemePanelShadow)!important;
}


/* channel message container */
[class*="ChannelChatLayout.module__messagesArea_"],
/* chat input area */
[class*='ChannelChatLayout\.module__textareaArea_'] {
    border: var(--ThemePanelBorder)!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
    backdrop-filter: blur(var(--ThemePanelBlur))!important;
    -webkit-backdrop-filter: blur(var(--ThemePanelBlur))!important;
    background: var(--ThemeFlatDarker)!important;
    transition: var(--transition-slow);
    box-shadow: none !important;
}

[class*="ChannelChatLayout.module__messagesArea___"] {
    background: var(--ThemeFlatDarker);
}

[class*='ChannelChatLayout\.module__textareaArea_'],
[class*="TextareaInput.module__textarea___"],
[class*="TextareaButton.module__button___"] {
    background: #aa0000 !important;
    color: #ffff00 !important;
}



/* area borders hovered */
/* loading splashscreen */
[class*='SplashScreen.module__splashContent_']:hover,
/* server sidebar */
[class*="GuildsLayout.module__guildListScroller"]:hover,
/* dm list */
[class*="DMLayout.module__dmListColumn_"]:hover,
/* server channel list */
[class*="GuildNavbar.module__guildNavbarContainer_"]:hover,
/* self status */
[class*="GuildsLayout.module__userAreaWrapper_"]:hover,
/* channel header */
[class*="ChannelHeader.module__headerWrapper_"]:hover,
/* channel member list */
[class*="MemberListContainer.module__memberListContainer_"]:hover,
/* channel message container */
[class*="ChannelChatLayout.module__messagesArea_"]:hover,
/* chat input area */
[class*='ChannelChatLayout\.module__textareaArea_']:hover,
/* friendslist */
[class*='DMFriendsView.module__content_']:hover,
/* friendslist active now panel */
[class*="ActiveNowSidebar.module__sidebar_"]:hover,
/* search results */
[class*="ChannelIndexPage.module__searchPanel_"]:hover,
/* settings panel */
[class*="Modal.module__root_"]:hover,
/* VC panel */
[class*="VoiceCallView.module__root_"]:hover,
/* VC panel empty */
[class*="ChannelIndexPage.module__emptyStateContent_"]:hover,
/* server member page */
[class*="GuildMembersPage.module__pageContainer_"]:hover,
/* mobile bottom nav */
[class*="MobileBottomNav.module__container_"]:hover,
/* mobile notifications page header */
[class*="NotificationsPage.module__header_"]:hover,
/* mobile notifications page content */
[class*="NotificationsPage.module__content_"]:hover,
/* mobile own profile page */
[class*="YouPage.module__container_"]:hover,
/* server discovery explore page */
[class*="DiscoveryPage.module__container_"]:hover,
/* auth page */
[class*="AuthLayout.module__card_"]:hover,
/* server unavailable */
[class*="GuildLayout.module__guildUnavailableContainer_"]:hover,
/* server unavailable channels skeleton */
[class*="GuildNavbarSkeleton.module__skeletonContainer_"]:hover
{
    background: var(--ThemePanelBGColor);
    border: var(--ThemePanelBorder)!important;
    transition: var(--transition-fast);
}


/* channel message container */
[class*="ChannelChatLayout.module__messagesArea_"]:hover,
/* chat input area */
[class*='ChannelChatLayout\.module__textareaArea_']:hover {
    border: double yellow 6px !important;
}


/* hide Fluxer logo pulse */
[class*="iconPulse___"] {
    display: none !important;
}



/* ---------------------------------------------------------------- */
/* settings menu
/* ---------------------------------------------------------------- */
/* settings menu backdrop */
[class*="Modal.module__modalBackdrop_"] {
    backdrop-filter: blur(var(--ThemePanelBlur));
    opacity: 1!important;
    background: var(--ThemeDarkenMedium);
}

/* settings menu panel */
[class*="Modal.module__root_"] {
    background-color: var(--ThemeDarkenMedium);
    background-color: var(--ThemeFlatPrimary)!important;
}



/* ---------------------------------------------------------------- */
/* dm list
/* ---------------------------------------------------------------- */
/* dm list users */
[class*='DMList.module__dmItem_'] {
    background: rgba(var(--brand-secondary), 0.8)!important;
    transition: var(--transition-normal);
    margin: 0px 6px 6px -2px !important;
    width: calc(100% - 8px) !important;
}
/* dm list users hover*/
[class*='DMList.module__dmItem_']:hover {
    background: var(--brand-primary)!important;
    color: black !important;
    transition-duration: 0.0s;
}

/* dm list active user */
[class*='DMList.module__dmItemSelected_'] {
    background: var(--brand-primary)!important;
    background: #ffffff21!important;
    color: black !important;
}

[class*='DMList.module__dmItemSelected_']:hover {
    filter: brightness(1.2);
}


/* ---------------------------------------------------------------- */
/* markup
/* ---------------------------------------------------------------- */

/*block quote & markup alert panels */
[class*="Markup.module__blockquoteContainer_"],
[class*="Markup.module__alert_"]
{
    background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--brand-secondary) 50%, transparent),
        transparent
    )!important;
}
/* alert divider line */
[class*="Markup.module__alert_"]::before
{
    border-radius: calc(4px * var(--ThemeRoundingMultiplier))!important;
}
/* blockquote divider line */
[class*="Markup.module__blockquoteDivider_"] {
    background-color: var(--brand-primary) !important;
}


/* ---------------------------------------------------------------- */
/* modals
/* ---------------------------------------------------------------- */

/* NOTE: backdrop filter doesnt work on these panels. might reconsider re-adding backdropfilter to their parent Popout.module__popout_ */
/* media picker*/
[class*='ExpressionPickerPopout.module__container_'],
/* channel pins*/
[class*='ChannelPinsPopout.module__container_'],
/* right click side subpanel | its inconsistent whether or not backdrop-filter works on these */
[class*='ContextMenu.module__submenuPopover_'],
/* searchbar filter list */
[class*="MessageSearchBar.module__popoutContainer_"],
/* settings profile profile type dropdown */
.css-206gj2-menu,
/* notifications inbox */
[class*='InboxPopout.module__container_'],
/* profile card */
[class*='ProfileCardLayout.module__profileCard_'],
/* server options context panel */
[class*='GuildHeaderPopout.module__container_'] {
    background-color: var(--ThemePanelModalBGColor)!important;
    border: var(--ThemePanelBorder)!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
    box-shadow: var(--ThemePanelShadow)!important;
}

/* ---------------------------------------------------------------- */
/* context panels
/* ---------------------------------------------------------------- */

/* emoji tooltip */
[class*="EmojiTooltipContent.module__container_"],
/* tooltip panels */
[class*="Tooltip.module__tooltip_"] {
    backdrop-filter: blur(var(--ThemePanelBlurSmall));
    background: var(--ThemePanelContextBGColor)!important;
    box-shadow: var(--ThemePanelShadow)!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
}

/* emoji autocomplete */
[class*="Autocomplete.module__container_"] {
    border-left: unset!important;
    border-right: unset!important;
    border-bottom: unset!important;
    border-radius: calc(var(--ThemePanelBorderRounding) - var(--ThemePanelBorderThickness))!important;
    top: calc(0px - var(--ThemePanelMargin) - var(--ThemePanelBorderThickness)*2)!important;

    backdrop-filter: blur(var(--ThemePanelBlurSmall));
    background: var(--ThemePanelContextBGColor);
}


/* right click context menu */
[class*='module__contextMenu_'],
/* vc stats info panel */
[class*='VoiceStatsOverlay.module__overlay_'],
/* media buttons */
[class*='module__mediaHoverAction_'] > button {
    backdrop-filter: blur(var(--ThemePanelBlurSmall));
    background-color: var(--ThemePanelContextBGColor);
    box-shadow: var(--ThemePanelShadow)!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
}

/* message hover reaction suggestions. blur effect doesnt seem to work correctly. */
[class*='MessageActionBar.module__actionBar_'] {
    background-color: var(--ThemePanelContextBGColor);
    box-shadow: var(--ThemePanelShadow)!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
}

/* ---------------------------------------------------------------- */
/* user profile poputs
/* ---------------------------------------------------------------- */

/* full user profile */
[class*='UserProfileModal.module__modalRoot_'] {
    height: unset;
}

/* small user profile popouts */
[class*='ProfileCardLayout.module__profileCard_'],
/* big user profile popouts */
[class*='UserProfileModal.module__modalContainer_'] {
    border-width: var(--ThemePanelBorderWidth)!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
}

/* pfp button */
[class*="ProfileCardBanner.module__avatarButton_"],
[class*="UserProfileModal.module__avatarContainer_"]
{
    anchor-name: --anchor-userstatus;
    background-color: var(--ThemePanelPrimary);
    border-color:  var(--ThemeFlatPrimary);
}

/* "display name, username, pronouns */
[class*="ProfileCardUserInfo.module__userInfoContainer_"],
[class*="UserProfileModal.module__userInfoContent_"]
{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
/* display name */
[class*="ProfileCardUserInfo.module__nameRow_"],
[class*="UserProfileModal.module__nameRow_"]
{
    width: 100%;
}
/* username */
[class*="ProfileCardUserInfo.module__usernameRow_"],
[class*="UserProfileModal.module__usernameRow_"]
{
    gap: unset;
    color: var(--text-secondary);
}
/* username pronouns separator */
[class*="ProfileCardUserInfo.module__pronouns_"]::before,
[class*="UserProfileModal.module__pronouns_"]::before
{
    content: "";
    width: 4px!important;
    height: 4px!important;
    margin: 0rem 0.5rem;
    background-color: var(--text-tertiary);
    border-radius: var(--radius-full);
}

/* pronouns */
[class*="ProfileCardUserInfo.module__pronouns_"],
[class*="UserProfileModal.module__pronouns_"]
{
    font-size: 14px;
    margin-top: unset;
    color: var(--text-secondary);
    display: inline-flex;
    align-items: center;
}

/* custom profile status */
[class*="UserProfilePopout.module__profileCustomStatus_"],
/* custom profile status (user area) */
[class*="UserAreaPopout.module__customStatusRow_"],
[class*="UserProfileModal.module__customStatusRow_"],
/* profile preview custom status */
[class*="ProfilePreview.module__profileCustomStatus_"]
{
    align-items: flex-start;

    position: absolute;
    position-anchor: --anchor-userstatus;
    position-area: right span-all;
    position-visibility: always;


    margin-left: 0.75rem;

    width: max-content;
    max-width: 175px;
    max-height: 3.7rem;

    overflow: hidden;

    background: var(--ThemeFlatLighter);
    /* border: 1px solid var(--background-header-secondary); */
    border-radius: calc(4px * var(--ThemeRoundingMultiplier));
    box-shadow: var(--shadow-md);

    transition: var(--transition-normal);
}

/* custom profile status */
[class*="UserProfilePopout.module__profileCustomStatus_"]:hover,
/* custom profile status (user area) */
[class*="UserAreaPopout.module__customStatusRow_"]:hover,
[class*="UserProfileModal.module__customStatusRow_"]:hover,
/* profile preview custom status */
[class*="ProfilePreview.module__profileCustomStatus_"]:hover {
    max-height: 10rem;
}

/* custom profile status inner */
[class*="CustomStatusDisplay"] > [class*="CustomStatusDisplay.module__content_"],
[class*="UserProfilePopout"] > [class*="CustomStatusDisplay.module__content_"],
[class*="UserProfileModal"] > [class*="CustomStatusDisplay.module__content_"],
[class*="ProfilePreview"] > [class*="CustomStatusDisplay.module__content_"] {
    margin: 0.25rem 0.5rem;
}

[class*="UserProfileModal.module__profileContentWrapper_"] {
    background: var(--ThemeFlatDarker);
}
/* mobile view personal page bio section */
[class*="YouPage.module__section_"],
/* mobile view personal page note section */
[class*="YouPage.module__noteButton_"],
/* mobile view personal page settings button */
    [class*="YouPage.module__settingsButton_"] {
    background: var(--ThemeDarkenLight);
}

/* bio join date notes etc container */
[class*="UserProfileModal.module__profileContent_"] {
    padding-top: 16px!important;
}


/* ---------------------------------------------------------------- */
/* server member list panel
/* ---------------------------------------------------------------- */

/* sever member list tab table */
[class*="GuildMembersPage.module__tableWrapper_"],
/* sever member list tab rows per page dropdown */
.css-185nao-control {
    background-color: var(--ThemeDarkenLight)!important;
}
.css-185nao-control:focus {
    background-color: var(--ThemeDarkenLight)!important;
}

/* sever member list tab */
[class*="GuildMembersPage.module__table_"]
{
    margin-top: 0;
}

/* ---------------------------------------------------------------- */
/* forwarded messages
/* ---------------------------------------------------------------- */

/* forwarded message link button */
[class*="MessageAttachments.module__forwardedSourceButton_"]
{
    background-color: color-mix(in srgb, var(--markup-mention-fill) 70%, transparent);
    border-color: color-mix(in srgb, var(--markup-mention-border) 65%, transparent);
    color: var(--markup-mention-text);
}
/* forwarded message link button hover */
[class*="MessageAttachments.module__forwardedSourceButton_"]:hover
{
    background-color: var(--markup-mention-fill);
    border-color: var(--markup-mention-border);
}
/* "forwarded from" label */
[class*="MessageAttachments.module__forwardedSourceLabel_"]
{
    color: var(--markup-mention-text);
}

/* forwarded message link source & destination label*/
[class*="MessageAttachments.module__forwardedSourceName_"]
{
    color: var(--markup-mention-text);
}
/* forwarded message link channel symbol */
[class*="MessageAttachments.module__forwardedSourceButton_"] svg
{
    fill: var(--markup-mention-text);
}

/* ---------------------------------------------------------------- */
/* titlebar
 /** ---------------------------------------------------------------- */

 /* window titlebar */
 [class*="NativeTitlebar.module__titlebar_"] {
     background: var(--ThemeBackgroundColor)!important;
 }
 /* Fluxer wordmark inside titlebar */
 [class*="NativeTitlebar"][class*="module__wordmark"] {
     color: var(--ThemeFlatPrimary) !important;
 }
 /* window control buttons (min/max/close) */
 [class*="NativeTitlebar"][class*="module__controlButton"] {
     background: var(--brand-primary)!important;
     border-radius: var(--ThemePanelBorderRounding)!important;
     margin: 2px 1px !important;
     color: var(--ThemeFlatDarker) !important;
     box-shadow: 3px 3px rgb(0, 0, 0, 0.8)!important;
 }

 [class*="NativeTitlebar"][class*="module__controlButton"]:hover {
     background: var(--brand-secondary)!important;
     box-shadow: 3px 3px rgb(0, 0, 0, 0.8)!important;
     color: white !important;
 }

 [class*="NativeTitlebar"][class*="module__controlButton"]:active {
     background: var(--ThemeFlatDarker) !important;
     color: white !important;
     margin: 3px 0 2px 0 !important;
     box-shadow: none important;
 }

/* ---------------------------------------------------------------- */
/* misc panels
/* ---------------------------------------------------------------- */

/* most buttons */
[class*="Button.module__button___"],
[class="Button.module__button___Yzg1Yz Button.module__inverted___Yzg1Yz Button.module__superCompact___Yzg1Yz Button.module__fitContent___Yzg1Yz"] {
    border-radius: var(--ThemePanelBorderRounding)!important;
}

/*  member list */
[class*="MemberListContainer.module__memberListContainer_"] {
    min-width: 10rem;
    max-width: 20rem;
}
[class*="DMList.module__dmItemUserTag___"],
[class*="DMFriendsView.module__tabButton___"] {
    background: var(--brand-primary);
    color: var(--ThemeFlatDarker);
}

/* generic button primary */
[class*="Button.module__primary_"] {
    background: var(--brand-primary)!important;
    color: black !important;
}
[class*="Button.module__primary_"]:hover {
    background: var(--brand-secondary)!important;
    color: white !important;
}

/* generic button secondary */
[class*="Button.module__secondary_"] {
    background: var(--ThemeFlatLighter)!important;
    color: white !important;
}
[class*="Button.module__secondary_"]:hover {
    background: var(--ThemeFlatDarker)!important;
}

/* keyboard hints */
[class*="KeybindHint.module__key___"] {
    background: var(--brand-primary);
    color: var(--ThemeFlatDarker);
    border-radius: var(--ThemePanelRounding);
}

/* scroll indicator */
[class*="ScrollIndicatorOverlay.module__indicator___"] {
    background: var(--ThemePanelContextBGColor);
    color: yellow !important;
    border-radius: var(--ThemePanelBorderRounding);
    box-shadow: var(--ThemePanelShadow);
}

/* embed cards */
[class*="EmbedCard.module__"],
[class*="ThemeEmbed.module__iconCircleActive___"] {
    border-radius: var(--ThemePanelBorderRounding);
}
[class*="ThemeEmbed.module__iconOnBrand___"] {
    background: var(--brand-primary);
    color: var(--ThemeFlatDarker);
}

/* Plutonium-related elements */

[class*="ToggleButton.module__active___"] {
    background: var(--brand-primary)!important;
    color: black !important;
    border-radius: var(--ThemePanelBorderRounding);
}

[class*="PricingCard.module__cardPopular___"],
[class*="PricingCard.module__cardTitlePopular___YmJhOD PricingCard.module__cardTitle___YmJhOD"],
[class*="PricingCard.module__cardPricePopular___YmJhOD PricingCard.module__cardPrice___YmJhOD"],
[class*="PricingCard.module__cardPeriodPopular___YmJhOD PricingCard.module__cardPeriod___YmJhOD"],
[class*="PlutoniumUpsell.module__text___"],
[class*="PlutoniumUpsell.module__icon___"]{
    background: var(--brand-primary)!important;
    color: black;
}

[class*="PricingCard.module__card___"] {
    border-radius: var(--ThemePanelBorderRounding)!important;
}

[class*="PricingCard.module__popularBadge___"] {
    color: black !important;
    border-radius: var(--ThemePanelBorderRounding)!important;
}


/* user mentioned */
[class*="Message\.module__messageMentioned_"]
{
    background: #aa0000 !important;
}
[class*="Markup.module__mention___"] {
    background: var(--ThemeFlatLighter)!important;
    color: yellow !important;
}

/* embed backgrounds */
[class*="EmbedCard.module__wrapper_"],
[class*="Embed.module__embedFull_"],
[class*="AttachmentFile.module__attachmentContainer_"],
[class*="InlineAudioPlayer.module__container_"] {
    background: var(--ThemeDarkenLight);
}

/* Codeblocks */
[class*="ThemeAcceptModal.module__codeContainer___"] pre,
[class*="Markup.module__codeContainer___"] pre {
    background: var(--ThemeFlatDarker);
}

/* attachment uploads */
[class*="ChannelAttachmentArea.module__upload_"] {
    background: var(--ThemeDarkenLight);
}

/* video controls */
[class*="VideoPlayer.module__controlsRow_"] {
    background: var(--ThemeDarkenLight);
}

/* message preview (like in bookmarks for example) */
[class*="MessagePreview.module__previewCard_"]
{
    overflow: hidden;
    background: var(--ThemeDarkenLight);
}

/* vc header gradient */
[class*='VoiceCallView.module__voiceHeader_']::before {
    border-radius: var(--ThemePanelBorderRounding) var(--ThemePanelBorderRounding) 0 0;
}
/* vc buttons gradient */
[class*='VoiceCallView\.module__controlBarContainer_']::before {
    display: none;
}


/* user typing status user container thingy */
[class*='ChannelChatLayout.module__typingContent_'] {
    /* these were from a test, it was kinda irritating to have the messages window shift whenever someone typed.
    height: fit-content;
    position: inherit;
    left: unset;
    right: unset;
    bottom: unset;
    */
    transition-property: height;
    transition-duration: 0.3s;
}

/* user typing status user pills */
[class*='Message.module__typingPill_'] {
    backdrop-filter: blur(var(--ThemePanelBlurSmall));
    -webkit-backdrop-filter: blur(var(--ThemePanelBlurSmall))!important;
    background-color: var(--ThemePanelBGColor);
    box-shadow: var(--ThemePanelShadow);
    /* transform: none!important; */
}

/* guild panel buttons */

[class*="GuildsLayout.module__fluxerButtonIcon___"] {
    background: var(--brand-primary);
    color: var(--ThemeFlatDarker)!important;
}


/* "X new messages since Date" panel */
[class*='Messages.module__newMessagesBar_'] {
    padding-top: 0px;
    top: 0.5rem;
    border-radius: var(--ThemePanelBorderRounding)!important;
}
[class*="Messages.module__newMessagesBarText___"],
[class*="Messages.module__newMessagesBarAction___"] {
    color: black !important;
}
/* "youre viewing older messages" panel */
[aria-busy="false"][class*='Messages.module__newMessagesBar_'] {
    padding-top: 0px;
    bottom: 0.5rem!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
}


/* emoji reactions */
[class*='MessageReactions.module__reactionButton_'] {
    background: var(--ThemeDarkenLight);
    border: 1px solid var(--background-modifier-accent);
}

/* profile role badge */
[class*='RoleManagement.module__roleBadge_'] {
    background: var(--ThemeDarkenLight);
}


/* discovery explore page top banner */
[class*="DiscoveryPage.module__hero_"]
{
    border-radius: calc(var(--ThemePanelBorderRounding) - var(--spacing-5) / 2);
    margin: var(--spacing-5);
    margin-bottom: unset;
}


/* discovery explore page search bar */
[class*="DiscoveryPage.module__searchInput_"]
{
    background-color: var(--ThemeDarkenMedium);
}
/* search/input bars */
[class*="Input.module__input_"] {
    background-color: var(--ThemeDarkenLight);
}

/* search results container inner */
[class*="ChannelSearchResults.module__container_"] {
    border: unset;
    border-radius: var(--ThemePanelBorderRounding);
    overflow: hidden;
}
/* search results */
[class*="ChannelSearchResults.module__messageItem_"] {
    border-radius: calc(var(--ThemePanelBorderRounding) - 0.5rem);
    background-color: var(--ThemeDarkenLight);
}

/* toasts */
[class*="Toast.module__toast_"]
{
    border-radius: var(--radius-full)!important;
    background-color: var(--ThemeFlatPrimary)!important;
}

/* unread divider with date */
[class*="Divider.module__dateWithUnreadText_"] {
    position: static;
    transform: none;
}

/* server folder expanded */
[class*="GuildFolderItem.module__expandedFolderBackground_"] {
    border-radius: calc(var(--guild-icon-size)/100*30 + var(--guild-list-item-inset)); /* focused server icon border-radius (30%) + padding */
}
/* server folder items container */
[class*="GuildFolderItem.module__expandedGuilds_"] {
    padding-bottom: 0px;
    overflow: visible!important;
}

/* make theme input field resizable */
textarea.FormSurface\.module__surface___XzQ4ZT.Input\.module__input___ZGQ3MT.Scroller\.module__scroller___ZTgyZD {
    resize: vertical !important;
    max-height: 900px !important;
}


/* ---------------------------------------------------------------- */
/* splashscreen
/* ---------------------------------------------------------------- */
[class*='SplashScreen.module__splashContent_'] {
    padding: 10px;
    background: var(--ThemePanelBGColor);
    aspect-ratio: 1 / 1;
    justify-content: center;
}

@media (min-width: 1024px) {
    [class*='SplashScreen.module__splashContent_'] {
        width: 30rem;
        height: 30rem;
    }
}
@media (min-width: 768px) {
    [class*='SplashScreen.module__splashContent_'] {
        width: 30rem;
        height: 30rem;
    }
}
/* Loading screen message
[class*='ChannelHeader.module__headerWrapper_']::after,
[class*='SplashScreen.module__connectionStatus_']::after */
[class*='SplashScreen.module__splashContent_']::after {

    border: var(--ThemePanelBorder)!important;
    border-radius: var(--ThemePanelBorderRounding)!important;
    backdrop-filter: blur(var(--ThemePanelBlur))!important;
    -webkit-backdrop-filter: blur(var(--ThemePanelBlur))!important;

    transition: var(--transition-slow);


    position: absolute;
    bottom: calc(-64px - var(--ThemePanelMargin));

    /* margin-top: calc(120px + var(--ThemePanelMargin)); */
    height: 40px;
    width: fit-content;
    padding: 0.3rem 0.5rem;
    line-height: 18px;


    content: "░▒▓ DIALOGUE.386 ▓▒░";
    background: var(--ThemePanelBGColor);
    color: var(--brand-primary);
    box-shadow: var(--ThemePanelShadow);

    font-weight: bold;
    z-index: 100;
}

/* ---------------------------------------------------------------- */
/* fluxer ui fixes | things that should be fixed on fluxer's end
/* ---------------------------------------------------------------- */

[class*='ScreenShareSettingsModal.module__audioToggleRow_'] {
    padding: 12px;
}

/* unread messages "NEW" divider */
[class*='Divider.module__unreadBadge_'] {
    height: unset;
}

/* profile role badge name */
[class*='RoleManagement.module__roleName_'] {
    line-height: inherit;
}

/* ################################################################################################# */
/* ################################################################################################# */
/* ################################################################################################# */

/* ---------------------------------------------------------------- */
/* Customization: Panel labels */
/* ---------------------------------------------------------------- */
@property --ThemePanelLabels {
    syntax: 'off | on';
    inherits: false;
    initial-value: on;
}

@container body style(--ThemePanelLabels: on) {

    /* prevent clipping off panel labels */

    [class*="GuildNavbar.module__guildNavbarContainer_"],
    [class*="ChannelChatLayout.module__messagesArea_"],
    [class*="ChannelChatLayout.module__container_"],
    [class*="ChannelIndexPage.module__channelGrid_"],
    [class*="GuildLayout.module__guildMainContent_"],
    [class*="ChannelLayout.module__channelLayoutContainer_"],
    [class*="ChannelHeader.module__headerWrapper_"],
    [class*="ChannelIndexPage.module__contentGrid_"],
    [class*="OutlineFrame.module__frame_"],
    [class*="OutlineFrame.module__body_"],
    [class*="MemberListContainer.module__memberListContainer_"],
    [class*='ChannelChatLayout.module__textareaArea_'],
    [class*="NotificationsPage.module__content_"],
    [class*="GuildNavbarSkeleton.module__skeletonContainer_"] {
        overflow: visible!important;
    }

    [class*="OutlineFrame.module__frame_"] {
        min-height: 0; /* magic memberlist overflow fix */
    }

    /* server sidebar */
    [class*="GuildsLayout.module__guildListScroller"],
    /* dm list */
    [class*="DMLayout.module__dmListColumn_"],
    /* server channel list */
    [class*="GuildNavbar.module__guildNavbarContainer_"],
    /* self status */
    [class*="GuildsLayout.module__userAreaWrapper_"],
    /* channel header */
    [class*="ChannelHeader.module__headerWrapper_"],
    /* channel member list */
    [class*="MemberListContainer.module__memberListContainer_"],
    /* channel message container */
    [class*="ChannelChatLayout.module__messagesArea_"],
    /* chat input area */
    [class*='ChannelChatLayout\.module__textareaArea_'],
    /* friendslist */
    [class*='DMFriendsView.module__content_'],
    /* friendslist active now panel */
    [class*="ActiveNowSidebar.module__sidebar_"],
    /* search results */
    [class*="ChannelIndexPage.module__searchPanel_"],
    [class*="ChannelChatLayout.module__messagesArea_"],
    [class*="ChannelHeader.module__headerWrapper_"],
    [class*="MemberListContainer.module__memberListContainer_"],
    [class*='ChannelChatLayout.module__textareaArea_'],
    /* vc panel */
    [class*="VoiceCallView.module__root_"],
    /* vc panel empty */
    [class*="ChannelIndexPage.module__emptyStateContent_"],
    /* server member page */
    [class*="GuildMembersPage.module__pageContainer_"],
    /* mobile nav bar */
    [class*="MobileBottomNav.module__container_"],
    /* mobile notifications page list */
    [class*="NotificationsPage.module__content_"],
    /* server discovery explore page */
    [class*="DiscoveryPage.module__container_"],
    /* server unavailable channels skeleton */
    [class*="GuildNavbarSkeleton.module__skeletonContainer_"],
    /* server unavailable server area */
    [class*="GuildLayout.module__guildUnavailableContainer_"] {
        &::after {
            display: block;
            position: absolute;
            top: -11px;
            left: 8px;
            line-height: 14px;
            padding: 2px 4px;
            z-index: 100;
            font-size: 16px;
            font-weight: bold;
            background: var(--ThemePanelBGColor);
            color: var(--ThemePanelBorderColor);

            transition: var(--transition-slow);
        }

        &:hover::after {
            color: var(--brand-primary);
            transition: var(--transition-fast);
        }
    }


    /* chat input area */
    [class*='ChannelChatLayout.module__textareaArea_']::after {
        content: "input";
    }
    /* server member page */
    [class*="GuildMembersPage.module__pageContainer_"]::after,
    /* server member list */
    [class*="MemberListContainer.module__memberListContainer_"]::after {
        content: "members";
    }
    /* server channel list */
    [class*="ChannelHeader.module__headerWrapper_"]::after {
        content: "channel";
    }
    /* dm list */
    [class*="DMLayout.module__dmListColumn_"]::after {
        content: "users";
    }
    /* server channel list */
    [class*="GuildNavbar.module__guildNavbarContainer_"]::after,
    /* server unavailable channels skeleton */
    [class*="GuildNavbarSkeleton.module__skeletonContainer_"]::after {
        content: "channels";
    }
    /* search results */
    [class*="ChannelIndexPage.module__searchPanel_"]::after {
        content: "search";
    }
    /* server sidebar */
    [class*="GuildsLayout.module__guildListScroller"]::after,
    [class*="MobileBottomNav.module__container_"]::after {
        content: "nav";
    }
    /* self status */
    [class*="GuildsLayout.module__userAreaWrapper_"]::after {
        content: "user";
    }
    /* friendslist */
    [class*='DMFriendsView.module__content_']::after {
        content: "friends";
    }
    /* friendslist active now panel */
    [class*="ActiveNowSidebar.module__sidebar_"]::after {
        content: "activity";
    }
    /* vc panel */
    [class*="VoiceCallView.module__root_"]::after,
    [class*="ChannelIndexPage.module__emptyStateContent_"]::after {
        content: "voice";
    }

    /* mobile notifications page list */
    [class*="NotificationsPage.module__content_"]::after {
        content: "messages";
    }

    /* server discovery explore page */
    [class*="DiscoveryPage.module__container_"]::after {
        content: "servers";
    }

    /* server unavailable server area */
    [class*="GuildLayout.module__guildUnavailableContainer_"]::after {
        content: "server";
    }
    /* cant get this one to work without clipping.
    [class*="ChannelChatLayout.module__messagesArea_"]::after {
        content: "chat";
    }
    */
}

/* ---------------------------------------------------------------- */
/* Customization: Avatar Shape */
/* ---------------------------------------------------------------- */

@property --SquareAvatars {
    syntax: 'off | on';
    inherits: false;
    initial-value: on;
}

@container body style(--SquareAvatars: off) {
    [class*="BaseAvatar"] {
        border-radius: 0px!important;
    }
}

@container body style(--SquareAvatars: on) {
    [class*="BaseAvatar"] {
        border-radius: 0px!important;
    }

    [class*="BaseAvatar"] > image {
        mask: none;
    }
}


/* ---------------------------------------------------------------- */
/* Customization: border online status */
/* ---------------------------------------------------------------- */

@property --OutlineOnlineStatus {
    syntax: 'off | on';
    inherits: false;
    initial-value: on;
}


@container body style(--OutlineOnlineStatus: on) {
    /* hide original status indicator */
    [class*="BaseAvatar.module__statusContainer_"] {
        display: none!important;
    }

    [class*="BaseAvatar"] > image {
        mask: none;
        border-radius: var(--radius-full)!important;
    }

    [class*="BaseAvatar.module__container_"] {
        border-radius: var(--radius-full)!important;
        overflow: hidden;
    }


    [class*="BaseAvatar.module__container_"][aria-label*="Offline"],
    [class*="BaseAvatar.module__container_"][aria-label*="Do Not Disturb"],
    [class*="BaseAvatar.module__container_"][aria-label*="Idle"],
    [class*="BaseAvatar.module__container_"][aria-label*="Online"] {
        border-width: 0.15rem;
        border-style: solid;
    }

    [class*="BaseAvatar.module__container_"][aria-label*="Offline"] {
        border-color: var(--status-offline);
    }
    [class*="BaseAvatar.module__container_"][aria-label*="Do Not Disturb"] {
        border-color: var(--status-dnd);
    }
    [class*="BaseAvatar.module__container_"][aria-label*="Idle"] {
        border-color: var(--status-idle);
    }
    [class*="BaseAvatar.module__container_"][aria-label*="Online"] {
        border-color: var(--status-online);
    }

    /* pfp view outline medium */
    [class*="UserProfileModal"] [class*="BaseAvatar.module__container_"],
    [class*="ProfileCardBanner"] [class*="BaseAvatar.module__container_"],
    [class*="YouPage"] [class*="BaseAvatar.module__container_"]{
        border-width: 4px;
    }
}


/* ---------------------------------------------------------------- */
/* Customization: App Icon */
/* ---------------------------------------------------------------- */

@property --CustomAppIcon {
    syntax: 'off | on';
    inherits: false;
    initial-value: on;
}

@container body style(--CustomAppIcon: on) {
    /* replace appicon with custom image */
    [class*="GuildsLayout.module__fluxerSymbolIcon_"]
    {
        background: var(--ThemeCustomIconUrl) no-repeat;
        background-size: contain;
    }
    /* hide original svg path */
    [class*="GuildsLayout.module__fluxerSymbolIcon_"] > path {
        display: none;
    }
}


/* ---------------------------------------------------------------- */
/* Customization: Rounding */
/* ---------------------------------------------------------------- */

@property --UseDefaultRounding {
    syntax: 'off | on';
    inherits: false;
    initial-value: on;
}

@container body style(--UseDefaultRounding: off) {
    /* get rid of all panel rounding */
    * {
        border-radius: 0px!important;
    }

    [class*="Markup.module__markup_"] ul {
        list-style-type: square;
    }

    /* user popout banner pfp mask */
    [class*="ProfileCardBanner.module__bannerMask_"] > mask > circle,
    [class*="UserProfileModal.module__bannerMask_"] > mask > circle{
        display: none;
    }
}
/* ---------------------------------------------------------------- */
/* Customization: Message Bubbles */
/* ---------------------------------------------------------------- */

@property --MessageBubbles {
    syntax: 'off | on';
    inherits: false;
    initial-value: on;
}

@container body style(--MessageBubbles: on) {

    /*
    [aria-label="Message group"] {
        background: var(--ThemeMessageBubbleColor);
        border-radius: calc(var(--ThemePanelBorderRounding) - var(--chat-horizontal-padding)/2);
        border-radius: calc(var(--ThemePanelBorderRounding) * var(--ThemeRoundingMultiplier));
        padding-left: 0.3rem;
    } */

    [class*="messageContent"] {
        /* display: block !important;   restore proper layout */
        width: fit-content;          /* shrink to content */
        margin-top: 4px;
        padding: 8px 14px;
        background: var(--ThemeMessageBubbleColor)!important;
        border-radius: 12px !important;
    }
}



/* ---------------------------------------------------------------- */
/* Customization: Animations */
/* ---------------------------------------------------------------- */

@property --ExtraAnimations {
    syntax: 'off | on';
    inherits: false;
    initial-value: on;
}

@container body style(--ExtraAnimations: on) {

    /* channel select flash */
    [class*="ChannelItemSurface\.module__channelItemSurfaceSelected_"] {
        background-color: var(--background-modifier-selected);
        animation-name: ChannelSelectAnim;
        animation-duration: 1s;
    }

    @keyframes ChannelSelectAnim {
        from {background-color: var(--brand-primary);}
        to {background-color: var(--background-modifier-selected);}
    }

    /* server list favorites icon */
    [class*="GuildsLayout.module__favoritesIcon_"] {
        transition: transform 0.5s;
    }
    [class*="GuildsLayout.module__guildListItem_"]:hover [class*="GuildsLayout.module__favoritesIcon_"] {
        transform: rotate(216deg);
    }

    [class*="ChannelSearchResults.module__messageItem_"] {
        transition: var(--transition-fast);
    }

    [class*="ChannelSearchResults.module__messageItem_"]:hover {
        border-color: var(--ThemePanelBorderColorHovered);
        background-color: var(--background-modifier-hover);
    }
}


/* ---------------------------------------------------------------- */
/* Customization: horizontal server list */
/* ---------------------------------------------------------------- */

/* setting property setup */
@property --Horizontal-Serverlist {
    syntax: 'off | on';
    inherits: false;
    initial-value: left;
}

@property --Serverlist-Alignment {
    syntax: 'left | center | right';
    inherits: false;
    initial-value: left;
}


@container body style(--Horizontal-Serverlist: on) {

    /* doesnt have any effect placed here. need to find a workaround. */
    :root {
        --layout-guild-list-width: 4.4rem; /* more compact */
        --layout-sidebar-width: calc(16.875rem + var(--layout-guild-list-width))!important; /* make sidebar wider to compensate for extra space */
    }

    /* only show on desktop */
    @media (min-width: 650px) {


        /* container for server list & rest */
        [class*="GuildsLayout.module__guildsLayoutContainer_"] {
            display: flex;
            flex-direction: column;
        }

        /* make channel list etc wider to match user area */
        [class*="GuildsLayout.module__userAreaWrapper_"] {
            width: var(--layout-sidebar-width);
        }

        /* scroller wrapper */
        [class*="GuildsLayout.module__guildListScrollerWrapper_"] {
            height: var(--layout-guild-list-width);
            width: 100%;
        }
        /* scroller wrap | changed to fix hover region while allowing panel labels */
        [class*="GuildsLayout.module__guildListScrollerWrapper_"] [class*="Scroller.module__scrollerWrap_"] {
            overflow: hidden;
        }

        /* rotate scroller */
        [class*="GuildsLayout.module__guildListScrollContainer_"] {
            padding: var(--spacing-2) 0px;
            width: var(--layout-guild-list-width);
            height: calc(100vw - var(--ThemePanelMargin)*2 - var(--ThemePanelBorderThickness) * 2);

            transform: rotateZ(-90deg);
        }

        /* scroller child container*/
        [class*="GuildsLayout.module__guildListScrollContainer_"] [class*="Scroller.module__scrollerChildren_"] {
            align-items: flex-end;
        }

        /* serverlist section container */
        [class*="GuildsLayout.module__guildListContent_"] {
            align-items: flex-end;
            width: var(--layout-guild-list-width);
        }

        /* serverlist top & lower section */
        [class*="GuildsLayout.module__guildListTopSection_"],
        [class*="GuildsLayout.module__guildListGuildsSection_"] {
            width: unset;
        }

        /* unrotate server button & misc buttons */
        [class*="GuildsLayout.module__guildListItem_"],
        [class*="GuildFolderItem.module__folderHeader_"] {
            width: 3.7rem;
            transform: rotateZ(-180deg);
        }
        /* unrotate server image & extra buttons */
        [class*="GuildListDMItem.module__relative_"],
        [class*="GuildsLayout.module__relative_"],
        [class*="GuildFolderItem.module__relative_"],
        [class*="GuildsLayout.module__addGuildButtonIcon_"]
        {
            transform: rotateZ(-90deg);
        }


        @container body style(--Serverlist-Alignment: left) {
            [class*="GuildsLayout.module__guildListScrollContainer_"] [class*="Scroller.module__scrollerChildren_"] {
                justify-content: start;
            }
        }

        @container body style(--Serverlist-Alignment: center) {
            [class*="GuildsLayout.module__guildListScrollContainer_"] [class*="Scroller.module__scrollerChildren_"] {
                justify-content: center;
            }
        }

        @container body style(--Serverlist-Alignment: right) {

            /* reverse server list */
            [class*="GuildsLayout.module__guildListContent_"],
            [class*="GuildsLayout.module__guildListTopSection_"],
            [class*="GuildsLayout.module__guildListGuildsSection_"] {
                flex-direction: column-reverse;
            }

            [class*="GuildsLayout.module__guildListScrollContainer_"] [class*="Scroller.module__scrollerChildren_"] {
                justify-content: end;
            }
        }
    }
}



/* ################################################################################################# */
/* ################################################################################################# */
/* ################################################################################################# */


/* ---------------------------------------------------------------- */
/* mobile tweaks
/* ---------------------------------------------------------------- */

@media (max-width: 840px) {

    /* mobile bottom nav */
    [class*="MobileBottomNav.module__container_"] {
        margin: var(--ThemePanelMargin);
        margin-top: 0px;
    }


    /* mobile sheets */
    [class*="Sheet.module__root_"]
    /* mobile user profile popout
    [class*="UserProfileMobileSheet.module__profileContent_"]*/
    {
        background: var(--ThemeFlatDarker);
    }
    /* mobile sheets */
    [class*="Sheet.module__container_"]
    {
        border-radius: unset!important;
    }


    /* settings modal backdrop */
    [class*="Modal.module__modalBackdrop_"] {
        backdrop-filter: unset;
    }

    /* add friend button */
    [class*="DMList.module__mobileAddFriendButton_"] {
        width: 2rem;
        height: 2rem;
        padding: unset;
        align-items: center;
        justify-content: center;
    }
    [class*="DMList.module__mobileAddFriendButton_"] > svg {
        width: 1.25rem;
        height: 1.25rem;
    }
    [class*="DMList.module__mobileAddFriendButton_"] > span {
        display: none;
    }


    /* notifications page content alignment */
    [class*="NotificationsPage.module__content_"] {
        justify-content: center;
    }

    /* notifications page content alignment */
    [class*="DMList.module__dmItemMobile_"] {
        height: 2.7rem;
    }

    /* notifications page X button */
    [class*="InboxMessageHeader\.module__headerIconButton_"] {
        background: var(--ThemeDarkenLight);
        background: transparent;
    }

    /* server list container */
    [class*="GuildsLayout.module__guildListScrollerWrapper_"],
    /* server channel list */
    [class*="GuildNavbar.module__guildNavbarContainer_"],
    /* dm list container */
    [class*="DMLayout.module__dmListColumn_"]
    {
        width: -webkit-fill-available;
        /* idk why it doesnt need to multiply the themepanelborderthickness on mobile*/
        height: calc(100% - var(--layout-user-area-reserved-height) - var(--layout-mobile-bottom-nav-reserved-height) - var(--ThemePanelMargin) - var(--ThemePanelBorderThickness));
    }


    /* mobile notifications page */
    [class*="NotificationsPage.module__container_"],
    /* mobile notifications page */
    [class*="NotificationsPage.module__content_"],
    /* mobile self profile */
    [class*="YouPage.module__container_"] {
        height: calc(100% - var(--layout-user-area-reserved-height) - var(--layout-mobile-bottom-nav-reserved-height) - var(--ThemePanelMargin) - var(--ThemePanelBorderThickness) * 2);
        /* NOTE: currently need to hardcode var(--layout-mobile-bottom-nav-reserved-height) here since its wrongly set to 0 on the you page. */
        height: calc(100% - var(--layout-user-area-reserved-height) - 60px - var(--ThemePanelMargin) - var(--ThemePanelBorderThickness));
        overflow: hidden auto;
    }

    /* mobile user profile banner */
    [class*="UserProfileMobileSheet.module__bannerContainer_"] {
        border-radius: unset;
    }
}


/* ################################################################################################# */
/* ################################################################################################# */
/* ################################################################################################# */

/* these are base64 encoded fonts to bypass fluxer's import restrictions
 * credits to https://amio.github.io/embedded-google-fonts/ */

/* latin-ext */
@font-face {
    font-family: 'Atkinson Hyperlegible Mono';
    font-style: normal;
    font-weight: 400;
    src: url(data:font/woff2;base64,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) format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Atkinson Hyperlegible Mono';
    font-style: normal;
    font-weight: 400;
    src: url(data:font/woff2;base64,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) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


