$primary: #0059f7;
$danger: #e63946;
$secondary: #ecf0f1;
$success: #32ed4b;
$info: #689eff;
$feed-border-radius: 12px;

@import 'variables.scss';
@import 'app/theme/themes/index';
@import '../node_modules/@angular/material/prebuilt-themes/indigo-pink.css';

// regular style toast
@import '~ngx-toastr/toastr';

// New themeing class
.main {
  background: var(
    --background
  ) !important; // TODO: remove all !important, this is a platform to extend
  color: var(
    --text
  ) !important; // TODO: remove all !important, this is a platform to extend
}

html {
  overflow-y: scroll;
  overscroll-behavior-y: none;

  // removes 300ms click delay on mobile browsers
  touch-action: manipulation;
}

html,
body {
  font-family: 'Roboto Mono';
  min-height: 100%; // allows for scrolling
}

// Fix any random overflow from causing weird
// white bars at the bottom of pages by hiding bars.
//
// This works because body has a min-height not a fixed height
body {
  overflow: hidden;
}

h1 {
  margin: 0;
  color: var(--text);
}

h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
  color: var(--text);
  font-family: 'Roboto Mono';
  font-weight: normal;
}

a {
  cursor: pointer; // for anchors without hrefs
  color: var(--link);
  &:hover,
  &:active,
  &:focus {
    text-decoration: inherit; // I prefer no underline when you hover over links
    color: var(--hover);
  }
}

.link--unstyled {
  color: inherit;
  text-decoration: inherit;
  &:hover,
  &:active,
  &:focus {
    text-decoration: inherit;
    color: inherit;
    outline: none;
  }
}

pre,
code {
  white-space: normal;
}

.countdown-timer {
  text-align: center;
  color: #252b37;
  animation: textColor 4s ease infinite;

  @keyframes textColor {
    0% {
      color: #d6b6fc;
    }
    50% {
      color: #0fffc1;
    }
    100% {
      color: #d6b6fc;
    }
  }
}

.countdown-timer-emoji-left {
  animation: leftToRight 4s linear infinite;

  @keyframes leftToRight {
    0% {
      margin-left: 0px;
    }
    50% {
      margin-left: 40px;
    }
    100% {
      margin-left: 0px;
    }
  }
}

.countdown-timer-emoji-right {
  animation: rightToLeft 4s linear infinite;

  @keyframes rightToLeft {
    0% {
      margin-right: 0px;
    }
    50% {
      margin-right: 40px;
    }
    100% {
      margin-right: 0px;
    }
  }
}

//
// v0 styles (start)
//

$global__top-bar__height: 60px;
$global__top-bar__desktop-height: 80px;
$global__nav__width: 245px;
$global__center__width: 600px;
$global__sidebar__width: 375px;
$global__content__width: $global__center__width + $global__sidebar__width;

$border-grey: #e5e5e5;
$staking-grey: #f0f0f0;
$light-grey-for-divider: #f8f8f8;
$light-grey-for-divider-2: #fafafa;
$buy-button-blue: var(--button);
// Font colors.
$light-font-color: #777777;
$normal-font-color: #222222;
$red-font-color: #fe3537;
$green-font-color: #19b028;

// For when you want a finger instead of an arrow.
.cursor-pointer {
  cursor: pointer;
}

.cursor-auto {
  cursor: auto;
}

.cursor-inherit {
  cursor: inherit;
}

.center-col-width {
  width: 600px;
}

// Grey text colors
.text-black {
  color: #000000;
}
.text-grey1 {
  color: #111111;
}
.text-grey2 {
  color: #222222;
} // mocks call this G0
.text-grey3 {
  color: #333333;
}
.text-grey4 {
  color: #444444;
}
.text-grey5 {
  color: var(--grey);
} // mocks call this G1
.text-grey6 {
  color: #666666;
}
.text-grey7 {
  color: #777777;
}
.text-grey8 {
  color: #888888;
}
.text-grey9 {
  color: #999999;
}
.text-greyA {
  color: #aaaaaa;
}
.text-greyB {
  color: #bbbbbb;
}
.text-greyC {
  color: #cccccc;
}
.text-greyD {
  color: #dddddd;
}
.text-greyE {
  color: #eeeeee;
}
.text-greyF {
  color: #ffffff;
}

.text-grey8A {
  color: #8a8a8a;
} // mocks call this G2
.text-greyE5 {
  color: #e5e5e5;
} // mocks call this G3
.text-greyF5 {
  color: #f5f5f5;
} // mocks call this G4

.text-grey-loading {
  color: var(--loading);
}
// Set toast-info to use system blue
.toast-info {
  background-color: $buy-button-blue;
}

// font weights
// font-weight-light: 300
// font-weight-normal: 400
.font-weight-semibold {
  font-weight: 500;
}
.font-weight-normal {
  font-weight: 400;
}
// font-weight-bold: 700

// Widths
.w-10 {
  width: 10%;
}
.w-20 {
  width: 20%;
}
.w-30 {
  width: 10%;
}
.w-40 {
  width: 40%;
}
.w-50 {
  width: 50%;
}
.w-60 {
  width: 60%;
}
.w-70 {
  width: 70%;
}
.w-80 {
  width: 80%;
}
.w-90 {
  width: 90%;
}
.w-100 {
  width: 100%;
}

.max-width-420px {
  max-width: 420px;
}

// Custom font classes.
.fc-default {
  color: var(--norm);
}
.fc-muted {
  color: var(--textalt);
}
.fc-blue {
  color: var(--cblue);
}
.fc-red {
  color: var(--cred);
}
.fc-green {
  color: var(--cgreen);
}
.fc-gold {
  color: var(--cgold);
}

.font-weight-500 {
  font-weight: 500;
}

.fs-1 {
  font-size: 2.5rem;
}
.fs-2 {
  font-size: 2rem;
}
.fs-3 {
  font-size: 1.75rem;
}

.fs-35px {
  font-size: 35px;
}
.fs-32px {
  font-size: 32px;
}
.fs-25px {
  font-size: 25px;
}
.fs-24px {
  font-size: 24px;
}
.fs-22px {
  font-size: 22px;
}
.fs-20px {
  font-size: 20px;
}
.fs-18px {
  font-size: 18px;
}
.fs-16px {
  font-size: 16px;
}
.fs-15px {
  font-size: 15px;
}
.fs-15px-important {
  font-size: 15px !important;
}
.fs-14px {
  font-size: 14px;
}
.fs-13px {
  font-size: 13px;
}
.fs-12px {
  font-size: 12px !important;
}
.fs-10px {
  font-size: 10px !important;
}
// line heights
.lh-24px {
  line-height: 24px;
}
.lh-20px {
  line-height: 20px;
}
.lh-18px {
  line-height: 18px;
}
.lh-16px {
  line-height: 16px;
}
.lh-15px {
  line-height: 15px;
}
.lh-14px {
  line-height: 14px;
}
.lh-13px {
  line-height: 13px;
}
.lh-12px {
  line-height: 12px;
}
.roboto-regular {
  font-family: 'Roboto';
}
.roboto-mono {
  font-family: 'Roboto Mono';
}

// Custom border classes.
.border-color-grey {
  border-color: var(--border) !important;
}
.border-color-blue {
  border-color: $buy-button-blue;
}
.tab-underline-active {
  border-bottom: solid $buy-button-blue 3px;
}
.tab-underline-inactive {
  border-bottom: solid rgba(0, 0, 0, 0) 3px;
}

.background-color-grey {
  background-color: var(--border);
} // mocks call this G4
.background-color-light-grey {
  background-color: var(--secondary);
}
.background-color-light-grey-important {
  background-color: var(--secondary) !important;
}
.background-color-light-pink {
  background-color: lightpink;
}
.background-color-lemon-chiffon {
  background-color: lemonchiffon;
}
.background-color-white {
  background-color: var(--background);
}

// Custom padding classes.
.p-35px {
  padding: 35px;
}
.pt-35px {
  padding-top: 35px;
}
.pr-35px {
  padding-right: 35px;
}
.pb-35px {
  padding-bottom: 35px;
}
.pl-35px {
  padding-left: 35px;
}
.py-35px {
  padding-top: 35px;
  padding-bottom: 35px;
}
.px-35px {
  padding-left: 35px;
  padding-right: 35px;
}

.p-30px {
  padding: 30px;
}
.pt-30px {
  padding-top: 30px;
}
.pr-30px {
  padding-right: 30px;
}
.pb-30px {
  padding-bottom: 30px;
}
.pl-30px {
  padding-left: 30px;
}
.py-30px {
  padding-top: 30px;
  padding-bottom: 30px;
}
.px-30px {
  padding-left: 30px;
  padding-right: 30px;
}

.p-30px {
  padding: 30px;
}
.pt-30px {
  padding-top: 30px;
}
.pr-30px {
  padding-right: 30px;
}
.pb-30px {
  padding-bottom: 30px;
}
.pl-30px {
  padding-left: 30px;
}
.py-30px {
  padding-top: 30px;
  padding-bottom: 30px;
}
.px-30px {
  padding-left: 30px;
  padding-right: 30px;
}

.p-25px {
  padding: 25px;
}
.pt-25px {
  padding-top: 25px;
}
.pr-25px {
  padding-right: 25px;
}
.pb-25px {
  padding-bottom: 25px;
}
.pl-25px {
  padding-left: 25px;
}
.py-25px {
  padding-top: 25px;
  padding-bottom: 25px;
}
.px-25px {
  padding-left: 25px;
  padding-right: 25px;
}

.p-20px {
  padding: 20px;
}
.pt-20px {
  padding-top: 20px;
}
.pr-20px {
  padding-right: 20px;
}
.pb-20px {
  padding-bottom: 20px;
}
.pl-20px {
  padding-left: 20px;
}
.py-20px {
  padding-top: 20px;
  padding-bottom: 20px;
}
.px-20px {
  padding-left: 20px;
  padding-right: 20px;
}

.p-15px {
  padding: 15px;
}
.pt-15px {
  padding-top: 15px;
}
.pr-15px {
  padding-right: 15px;
}
.pb-15px {
  padding-bottom: 15px;
}
.pl-15px {
  padding-left: 15px;
}
.py-15px {
  padding-top: 15px;
  padding-bottom: 15px;
}
.px-15px {
  padding-left: 15px;
  padding-right: 15px;
}

.p-10px {
  padding: 10px;
}
.pt-10px {
  padding-top: 10px;
}
.pr-10px {
  padding-right: 10px;
}
.pb-10px {
  padding-bottom: 10px;
}
.pl-10px {
  padding-left: 10px;
}
.py-10px {
  padding-top: 10px;
  padding-bottom: 10px;
}
.px-10px {
  padding-left: 10px;
  padding-right: 10px;
}

.p-5px {
  padding: 5px;
}
.pt-5px {
  padding-top: 5px;
}
.pr-5px {
  padding-right: 5px;
}
.pb-5px {
  padding-bottom: 5px;
}
.pl-5px {
  padding-left: 5px;
}
.py-5px {
  padding-top: 5px;
  padding-bottom: 5px;
}
.px-5px {
  padding-left: 5px;
  padding-right: 5px;
}

.p-2px {
  padding: 2px;
}
.pt-2px {
  padding-top: 2px;
}
.pr-2px {
  padding-right: 2px;
}
.pb-2px {
  padding-bottom: 2px;
}
.pl-2px {
  padding-left: 5px;
}
.py-2px {
  padding-top: 2px;
  padding-bottom: 2px;
}
.px-2px {
  padding-left: 2px;
  padding-right: 2px;
}

// Zero padding classes are useful for things like bootstrap columns that have padding added.
.p-0px {
  padding: 0px;
}
.pt-0px {
  padding-top: 0px;
}
.pr-0px {
  padding-right: 0px;
}
.pb-0px {
  padding-bottom: 0px;
}
.pl-0px {
  padding-left: 0px;
}
.py-0px {
  padding-top: 0px;
  padding-bottom: 0px;
}
.px-0px {
  padding-left: 0px;
  padding-right: 0px;
}

// Custom margin classes.
.m-0px {
  margin: 0px !important;
}
.mt-0px {
  margin-top: 0px;
}
.mr-0px {
  margin-right: 0px;
}
.mb-0px {
  margin-bottom: 0px !important;
}
.ml-0px {
  margin-left: 0px;
}

.mt-2px {
  margin-top: 2px;
}

.m-5px {
  margin: 5px;
}
.mt-5px {
  margin-top: 5px;
}
.mr-5px {
  margin-right: 5px;
}
.mb-5px {
  margin-bottom: 5px;
}
.ml-5px {
  margin-left: 5px;
}

.m-10px {
  margin: 10px;
}
.mt-10px {
  margin-top: 10px;
}
.mr-10px {
  margin-right: 10px;
}
.mb-10px {
  margin-bottom: 10px;
}
.ml-10px {
  margin-left: 10px;
}

.m-15px {
  margin: 15px;
}
.mt-15px {
  margin-top: 15px;
}
.mr-15px {
  margin-right: 15px;
}
.mb-15px {
  margin-bottom: 15px;
}
.ml-15px {
  margin-left: 15px;
}
.mx-15px {
  margin-left: 15px;
  margin-right: 15px;
}
.my-15px {
  margin-top: 15px;
  margin-bottom: 15px;
}

.m-20px {
  margin: 20px;
}
.mt-20px {
  margin-top: 20px;
}
.mr-20px {
  margin-right: 20px;
}
.mb-20px {
  margin-bottom: 20px;
}
.ml-20px {
  margin-left: 20px;
}
.mx-20px {
  margin-left: 20px;
  margin-right: 20px;
}
.my-20px {
  margin-top: 20px;
  margin-bottom: 20px;
}

.m-25px {
  margin: 25px;
}
.mt-25px {
  margin-top: 25px;
}
.mr-25px {
  margin-right: 25px;
}
.mb-25px {
  margin-bottom: 25px;
}
.ml-25px {
  margin-left: 25px;
}
.mx-25px {
  margin-left: 25px;
  margin-right: 25px;
}
.my-25px {
  margin-top: 25px;
  margin-bottom: 25px;
}

.m-30px {
  margin: 30px;
}
.mt-30px {
  margin-top: 30px;
}
.mr-30px {
  margin-right: 30px;
}
.mb-30px {
  margin-bottom: 30px;
}
.ml-30px {
  margin-left: 30px;
}
.mx-30px {
  margin-left: 30px;
  margin-right: 30px;
}
.my-30px {
  margin-top: 30px;
  margin-bottom: 30px;
}

.br-3px {
  border-radius: 3px;
}
.br-4px {
  border-radius: 4px;
}
.br-5px {
  border-radius: 5px;
}
.br-8px {
  border-radius: 8px;
}
.br-12px {
  border-radius: $feed-border-radius;
}

.vh-100 {
  height: 100vh !important;
}

.position-fixed {
  position: fixed;
}

.global__container {
  min-height: 100vh;
  display: flex;
}

.global__import {
  height: 100vh;
  width: 100vw;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  flex-direction: column;
}

.global__iframe {
  height: 100vh;
  width: 100vw;
}

// first child is router-outlet
// last child is a Page component
.global__container > *:last-child {
  width: 100%;
}

.global__desktop {
  width: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  margin: 0;
  padding: 0;
}

@media (min-width: 992px) {
  .global__desktop {
    display: flex;
  }

  .global__mobile {
    display: none !important;
  }
}

@media (max-width: 991.98px) {
  .global__desktop {
    display: none !important;
  }

  .global__mobile {
    display: flex;
  }
}

.diamond-popover-container {
  max-width: 100% !important;
  width: 400px;
  margin-right: 10px;
  margin-left: 10px;
  border-top-color: var(--border);
  background-color: var(--formbg);
}

.diamond-popover-container .arrow::after,
.diamond-popover-container .arrow::before {
  border-top-color: var(--formbg);
}

.diamond-popover-container-mobile {
  width: auto;
}

#diamond-popover {
  color: var(--text);
}

.fixed-top-bar {
  position: fixed;
  background-color: var(--background);
  z-index: 10;
}

.global__mobile-scrollable-section {
  height: -webkit-fill-available;
  flex-grow: 1;
  overflow-y: scroll;
}

// For the space covered by the bottom bar
.global__bottom-bar-mobile-height {
  height: 60px; // current height of the bottom bar
}

.global__bottom-bar-mobile {
  z-index: 2;
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: var(--background);
  height: 60px;
}

.global__tooltip-icon {
  cursor: pointer;
}

.global__mat-tooltip {
  cursor: pointer;
  background-color: #343a40 !important;
  white-space: pre-line;
}

.global__mat-tooltip-font-size {
  font-size: 15px !important;
}

input.bs-timepicker-field {
  font-size: 15px;
}

.btn-default {
  font-size: 15px;
  border-color: var(--border) !important;
}

//
// Top-level css for the feed.
//

// This removes the scrollbar on the feed.
.disable-scrollbars::-webkit-scrollbar {
  width: 0px;
  background: transparent; /* Chrome/Safari/Webkit */
}

.disable-scrollbars {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE 10+ */
}

.light-grey-divider {
  background-color: var(--secondary);
}

.top-bar-mobile__avatar {
  height: 40px;
  width: 40px;
  border-radius: 3px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.top-bar-mobile-navigation-control__dark-color {
  color: #8a8a8a;
}

.top-bar-mobile-navigation-control__light-color {
  color: white;
}

.bottom-bar-mobile__holder-div {
  width: 100%;
  height: 100%;
}

.bottom-bar__message-notifications-bubble {
  position: absolute;
  top: 5px;
  font-style: normal;
  margin-left: 15px;
  font-size: 14px;
  padding: 1px 7px;
  border-radius: 100%;
  color: white;
  background-color: $buy-button-blue;
}

// flex -> width -> fixed -> inner
// content can fit center + sidebar

.global__nav__flex {
  flex-grow: 1;
  align-items: flex-end;
  flex-direction: column;
  display: flex;
}

.global__nav__width {
  width: $global__nav__width;
}

.global__nav__fixed {
  top: 0;
  height: 100%;
  position: fixed;
}

.global__nav__inner {
  width: $global__nav__width;
  overflow-y: auto;
  height: 100%;
  padding: 0 10px;
}

.global__content__flex {
  flex-grow: 1;
  align-items: flex-start;
  flex-shrink: 1;
  display: flex;
}

// Set a fixed width on desktop
.global__desktop .global__content__width {
  width: $global__content__width;
}

// Set a relative width on mobile
.global__mobile .global__content__width {
  width: 100vw;
}

// Set a width, height, and border on desktop
.global__desktop .global__content__inner {
  min-height: 100vh;
  width: $global__content__width;
  border-left: var(--border) solid 1px;
  border-right: var(--border) solid 1px;
}

.global__sidebar__width {
  width: $global__sidebar__width;
}

.global__sidebar__fixed {
  top: 0;
  height: 100%;
  position: fixed;
}

.global__sidebar__inner {
  width: $global__sidebar__width;
  overflow-y: auto;
  height: 100%;
  padding-left: 25px;
}

.global__center__width {
  width: $global__center__width;
}

.global__center__inner {
  min-height: 100vh;
  width: $global__center__width;
  border-left: var(--border) solid 1px;
  border-right: var(--border) solid 1px;
}

.global__top-bar {
  position: fixed;
  background: var(--background);
  z-index: 30;
  width: $global__center__width - 2; // subtract 2 for borders

  @media (min-width: 992px) {
    height: $global__top-bar__desktop-height;
  }

  @media (max-width: 991.98px) {
    width: 100%;
    height: $global__top-bar__height;
  }
}

.feed-create-post__character-counter {
  margin-top: 2px;
}

.feed-create-post__image-icon {
  margin-top: 2px;
}

.global__top-bar__height {
  @media (min-width: 992px) {
    height: $global__top-bar__desktop-height;
  }

  @media (max-width: 991.98px) {
    height: $global__top-bar__height;
  }
}

.left-bar-mobile__translucent-background {
  z-index: 99 !important; // Needs to be higher than the bottom bar and staked posts.
  position: fixed;
  top: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.4);
}

.left-bar-mobile__flyout-div {
  z-index: 100; // Needs to be higher than the bottom bar and staked posts.
  position: fixed;
  top: 0;
  width: 75vw;
  max-width: 280px;
  min-width: 245px;
  height: 100vh;
  background-color: var(--background);
}

.right-bar-select-box {
  border: none;
  background: none;
  outline: none;
  border-bottom: solid 1px;
}

.update-profile__image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;

  height: 100px;
  width: 100px;
  border: 1px solid $light-color;
  background-color: transparent;
  position: relative;
  border-radius: 100%;

  .update-profile__image-delete {
    width: 2rem;
    height: 2rem;
    position: absolute;
    right: -1rem;
    top: -1rem;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: $light-color;
    border: 2px solid $light-color;
    cursor: pointer;
    font-weight: bold;
    font-size: 1.25rem;
    vertical-align: middle;
    padding-bottom: 0.15rem;
    background-color: $x-color;
  }
}

.holdings__creator-coin-name {
  @media (max-width: 992px) {
    padding-top: 15px;
  }

  @media (min-width: 993px) {
    padding-top: 0px;
  }
}

.holdings__creator-coin-total {
  @media (max-width: 992px) {
    padding-top: 15px;
  }

  @media (min-width: 993px) {
    padding-top: 20px;
  }
}

.holdings__divider {
  height: 66px;
  background-color: var(--secondary);
}

.holdings__avatar {
  height: 28px;
  width: 28px;
  min-width: 28px;
  margin-right: 15px;
  border-radius: 3px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.holdings__name {
  max-width: 200px;
}

.holdings__pub-key {
  overflow: hidden;

  overflow-wrap: anywhere;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;

  cursor: pointer;
}

.holdings__copy:active {
  color: $buy-button-blue;
}

.update-profile__pub-key {
  padding-left: 0;
  overflow: hidden;
  cursor: pointer;

  overflow-wrap: anywhere;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
}

.update-profile__copy:active {
  color: $buy-button-blue;
}

.sign-up__grey-background {
  background-color: $light-grey-for-divider;
}

.sign-up__cp-button-override {
  background-color: white;
}

.sign-up__advanced {
  cursor: pointer;
}

.sign-up__advanced:hover {
  font-weight: bold;
}

.sign-up__phone-input {
  font-size: 15px !important;
}

// Overrides for phone number input defaults.
.iti {
  width: 100% !important;
}

.iti__country {
  font-size: 15px;
}

#country-search-box {
  font-size: 15px !important;
}

.feed-create-post__avatar.change-account-selector__account-image {
  width: 24px;
  height: 24px;
  min-width: 24px;
  margin-right: 10px;
  border-radius: 3px;
}

.change-account-selector {
  position: relative;
  z-index: 30;
  background-color: var(--secondary);
  width: 100%;
  padding-top: 8px;
  padding-bottom: 8px;
  border: 1px solid var(--border);
}

.change-account-selector_list__inner {
  border-bottom: 1px solid var(--border);
}

.change-account-selector__down-arrow {
  margin-top: 2px;
  margin-left: 2px;
}

.change-account-selector__hover:hover {
  box-shadow: 1px 1px 2px rgba(101, 119, 134, 0.1);
}

.change-account-selector_list {
  background-color: var(--secondary);
  padding: 0px 0px 10px;
  margin-top: 10px;
  width: 100%;
  z-index: 99;
  border: 1px solid var(--border);
}

.change-account-selector_list-item {
  overflow: hidden;
}

.change-account-selector_list__inner:hover {
  background-color: var(--formbg);
}

.change-account-selector__shadow {
  box-shadow: rgba(101, 119, 134, 0) 0px 0px 15px,
    rgba(101, 119, 134, 0) 0px 0px 3px 1px;
}

.change-account-selector__ellipsis-restriction {
  max-width: 150px;
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.change-account-selector__trash {
  opacity: 0;
}

.text-link_hover:hover {
  color: var(--hover);
}

.search-bar__icon {
  padding: 2px;
  padding-left: 5px;
  font-size: 19px;
  border-top-left-radius: 12px;
  border-bottom-left-radius: 12px;
  background-color: var(--formbg);
  border-color: var(--border);
  border-right-color: rgba(0, 0, 0, 0);
}

.search-bar__results-dropdown {
  box-shadow: rgba(101, 119, 134, 0.2) 0px 0px 15px,
    rgba(101, 119, 134, 0.15) 0px 0px 3px 1px;
  border-radius: 0px 0px 3px 3px;
  cursor: pointer;
  background-color: var(--background);
  position: relative;
  top: -22px;
  border: solid 1px var(--border);
  z-index: 5; // the input has a z-index of 3 at one point.
  max-height: 600px;
  overflow-y: scroll;
}

.search-bar__avatar {
  height: 35px;
  width: 35px;
  border-radius: 3px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.search-bar__selected-color {
  background-color: var(--border);
}

.search-bar__fix-active {
  border-color: var(--secondary);
  border-left: 0px;
}

.search-bar__fix-active:active,
.search-bar__fix-active:focus {
  border-color: var(--secondary);
  border-left: 0px;
}

.post-thread__comment-container {
  border-top: 4px solid var(--secondary);
  flex-grow: 1;
}

.post-thread__subcomment-container {
  margin-left: 65px;
}

.post-thread__container {
  display: flex;
  flex-flow: column;
}

.interaction-modal__header {
  height: 25px;
}

.interaction-modal__close-button {
  margin: 0;
  padding: 0;
  float: none;
}

.feed-create-comment-form__reply-container {
  margin-left: 80px;
}

.feed-create-comment-form__avatar {
  height: 50px;
  width: 56px; // TODO: figure out why chrome doesn't render this as 50px
  margin-right: 15px;
  border-radius: $feed-border-radius;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.feed-create-post__avatar {
  height: 50px;
  width: 50px;
  margin-right: 15px;
  border-radius: $feed-border-radius;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.modal-header .feed-create-comment-form__close {
  margin: 0;
  padding: 0;
  float: none;
  color: var(--text);
  text-shadow: 0 1px 0 #fff;
}

.feed-create-post__avatar_default {
  background-image: url('/assets/img/default_profile_pic.png');
}

.feed-create-comment__textarea {
  min-height: 55px;
}

.feed-create-post__textarea:focus {
  border: none;
  box-shadow: none;
}

.js-feed-post-hover:hover {
  background-color: var(--secondary);
}

.feed-post__quoted-content:hover {
  background-color: var(--secalt) !important;
}

.feed-post__dropdown-menu-item {
  background-color: var(--secondary);
  color: var(--gray);
  &:hover {
    background-color: var(--secalt);
    color: var(--gray);
  }
}

.feed-post__embed-container {
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  max-height: 700px;
  border-radius: 20px;
  margin-top: 10px;
  margin-bottom: 5px;
}

.feed-post__image-container {
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  max-height: 450px;
  border-radius: 20px;
  margin-top: 10px;
  margin-bottom: 5px;
}

.feed-post__image {
  flex-shrink: 0;
  width: 100%;
}

.feed-post__video-container {
  position: relative;
  padding-top: 56.25%;
  width: 100%;
  overflow: hidden;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 5px;
}

.feed-post__video {
  border: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  border-radius: 12px;
}

.feed-post__blue-border {
  border-left: 5px solid $buy-button-blue;
}

.feed-post__image-delete {
  position: absolute;
  top: 9px;
  left: 9px;
  cursor: pointer;
  color: white;
  font-size: 19px;
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 20px;
}

.feed-post-icon-row__icon {
  font-size: 25px;
  border-radius: 50%;
  margin-right: 2px;
  &:hover {
    background-color: var(--secondary);
  }
}

.feed-post-icon-row__icon.icon-reply {
  margin-left: -6px;
  &:hover {
    background-color: $comment-hover;
    color: $comment-color;
  }
}

/* repost hover animation */
.feed-post-icon-row__icon.icon-repost {
  &:hover {
    background-color: $repost-hover;
    color: $repost-color;
  }
}
/* like button hover animation */
.feed-post-icon-row__icon.icon-heart,
.feed-post-icon-row__icon.icon-heart-fill {
  &:hover {
    background-color: $like-hover;
    color: $like-color;
  }
}

/* diamond button hover animation */
.feed-post-icon-row__icon.icon-diamond {
  &:hover {
    background-color: $diamond-hover;
    color: $diamond-color;
  }
}

/* copy link button hover animation */
.feed-post-icon-row__icon.icon-link {
  &:hover {
    background-color: $link-btn-hover;
    color: $link-btn-color;
  }
}

.feed-post__icon-row-holder {
}

.feed-post__container {
  font-size: 15px;
}

.feed-post__container.feed-post__parent-post-font-size {
  font-size: 17px !important;
}

.feed-post__coin-price-holder {
  background-color: var(--secalt);
}

.feed-post__avatar {
  display: block;
  height: 50px;
  width: 50px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.feed-post__avatar-container {
  width: 56px; // TODO: figure out why chrome doesn't render this as 50px
  margin-right: 15px;
}

.feed-post__parent-thread-connector {
  height: 100%;
  border-right: 2px solid var(--secondary);
  border-color: var(--secondary);
  width: 55%;
}

.left-bar__dot-active {
  font-size: 50px;
  line-height: 18px;
  color: $buy-button-blue !important;
}

.left-bar__dot-unread {
  font-size: 50px;
  line-height: 18px;
  color: $red-font-color !important;
}

.left-bar__dot-inactive {
  font-size: 50px;
  line-height: 18px;
  color: rgba(0, 0, 0, 0);
}

.right-bar-creators-leaderboard__creator-avatar {
  height: 28px;
  width: 28px;
  margin-right: 10px;
  border-radius: 3px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.right-bar-creators__balance-box {
  background-color: var(--secondary);
  color: var(--text);
}

.creator-leaderboard__load-more:hover {
  background-color: var(--secondary);
}

.feed__light-grey-divider {
  width: 100%;
  min-height: 10px;
  border-bottom: var(--border) 1px solid;
  background-color: $light-grey-for-divider;
}

.creator-profile__top-bar {
  background-color: var(--topbar);
  @media (max-width: 992px) {
    height: 100px;
    min-height: 100px;
  }

  @media (min-width: 993px) {
    height: 80px;
    min-height: 80px;
  }
}

.creator-profile__avatar {
  // mobile
  @media (max-width: 992px) {
    top: 62px;
  }
  // desktop
  @media (min-width: 993px) {
    top: 37px;
  }

  position: absolute;
  height: 86px;
  width: 86px;
  border-radius: 3px;
  border: 3px solid white;
  margin-left: 15px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.creator-profile-details__hodler-avatar {
  display: inline-block;
  height: 30px;
  width: 30px;
  padding-right: 5px;
  border-radius: 5px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.creator-profile__reserved-tag {
  font-weight: normal;
  background-color: #f3f3f3;
  border-radius: 10px;
  height: fit-content;
}

.creator-profile__ellipsis-restriction {
  max-width: 150px;
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.buy-deso__copy-button {
  display: flex;
  align-items: center;
  justify-content: middle;
  border: solid 1px $buy-button-blue;
  color: $buy-button-blue;
  cursor: pointer;
  border-radius: 3px;
  padding: 5px;
}

.buy-deso__copy-button:hover {
  background-color: $buy-button-blue;
  color: white;
}

.buy-deso__title-holder {
  position: relative;
  top: 20px;
}

.buy-deso__amount-background {
  background-color: var(--background);
}

.buy-deso__box-label-adjustment {
  position: relative;
  width: fit-content;
  background-color: var(--background) !important;
  top: -13px;
}

.messages-header-icon-row__icon {
  font-size: 20px;
  border-radius: 25%;
  margin-right: 2px;
  &:hover {
    background-color: var(--secondary);
  }
}

.messages-inbox__desktop-column {
  width: 100%;
  max-width: 380px;
  border-left: solid 1px var(--border);
  border-right: solid 1px var(--border);
}

.messages-inbox__selected-thread {
  border-right: solid 3px $buy-button-blue;
}

.messages-inbox__threads {
  overflow-y: scroll;
  // Subtract the height of the search and header
  height: calc(100% - 160px);
}

.messages-filter-menu__checkbox {
  margin: 0;
  float: left;
}

.messages-thread__avatar {
  height: 45px;
  width: 45px;
  min-width: 45px;
  border-radius: 12px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.messages-thread__desktop-column {
  width: 100%;
  max-width: 600px;
  border-right: solid 1px var(--secondary);
}

.messages-thread__border-radius {
  border-radius: 12px;
}

.messages-thread__ellipsis-restriction {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.message__min-height {
  min-height: 40px;
}

.message__avatar {
  height: 40px;
  width: 40px;
  min-width: 40px;
  border-radius: 12px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.message__avatar-placeholder {
  width: 40px;
  min-width: 40px;
  border-radius: 12px;
}

.message__sender-bubble-color {
  background-color: #005bff;
  color: white;
}

.message__non-sender-bubble-color {
  background-color: #f8f8f8;
}

.message-thread__unread-light-blue {
  background-color: var(--unread);
}

.admin__get-user-admin-data-line {
  display: flex;
  justify-content: space-between;
  margin-left: 5px;
  margin-right: 5px;
}

.admin__add-to-feed-button {
  border: 1px solid lightgrey;
  border-radius: 3px;
  width: fit-conteNt;
  cursor: pointer;
}

.admin__add-to-feed-button:hover {
  color: green;
  border-color: green;
}

.admin__remove-from-feed-button {
  color: green;
  border: 1px solid green;
  border-radius: 3px;
  width: fit-content;
  cursor: pointer;
}

.admin__remove-from-feed-button:hover {
  color: red;
  border-color: red;
}

//
// Bottom bar (mobile)
//
.bottom-bar-mobile__create-post-circle {
  z-index: 3;
  position: absolute;
  top: -70px;
  right: 22px;
  font-size: 44px;
  padding-top: 10px;
  height: 55px;
  width: 58px;
  text-align: center;
  border: 2px solid #3498db;
  color: white;
  line-height: 0.65;
}

//
// Creators leaderboard
//

.creators-leaderboard__avatar {
  height: 2.5rem;
  width: 2.5rem;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.creators-leaderboard__width {
  width: 100%;
  max-width: 980px;
}

.creators-leaderboard__controls-column {
  min-width: 185px;
  max-width: 185px;
}

//
// Buy creator coin
//
.trade-creator-form__currency-select {
  background-color: #fafafa;
  border: none;
  font-size: 14px;
  width: 110px;
}

.trade-creator-form__buy-sell-toggle {
  margin-top: 3px;
}

.trade-creator__avatar {
  height: 45px;
  width: 45px;
  min-width: 45px;
  border-radius: 5px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

//
// Not found page
//
.not-found__content-container {
  margin-top: 100px;
}

// Notifications
.notifications__avatar {
  height: 28px;
  width: 28px;
  border-radius: 3px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.notifications__action {
  margin-left: 14px;
  font-size: 14px;
}

.notifications__icon {
  margin-right: 14px;
  width: 20px;
  text-align: center;
}

// Landing page
.landing__ticker {
  padding: 20px;
  background-color: var(--background);
}

.landing__header {
  padding: 30px 20px;
}

.landing__logo {
  height: 28px;
  flex: 0 0 130px;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  text-indent: -9999px;

  @media (max-width: 992px) {
    flex: 0 0 100px;
  }
}

.landing__nav-link {
  color: var(--text);
  margin-left: 25px;
  font-size: 13px;
}

.landing__nav-link:first-child {
  margin-left: 0;
}

.landing__nav-link.btn {
  color: #fff;
}

.landing__nav-buy {
  height: 30px;
  font-size: 13px;
  border-radius: 10px;
  padding-left: 15px;
  padding-right: 15px;
  background-color: var(--secondary);
  color: var(--text);
  border-color: var(--border);
}

.landing__hero {
  padding: 100px 0;
  border-left: 1px solid var(--secondary) !important;
  border-right: 1px solid var(--secondary) !important;
  color: var(--text);
}

.landing__sign-up {
  margin-top: 30px;
  width: 225px;
  border-radius: 10px;
  padding: 10px;
}

.landing__log-in {
  margin-top: 10px;
  font-size: 13px;
  color: #777;
}

.landing__buy {
  padding: 7px 20px;
  border-radius: 10px;
}

.landing__prop {
  margin-top: 100px;
  background: #c4c4c426;
  border-radius: 25px;
  padding-top: 50px;
}

.landing__prop-header {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 20px;
}

.landing__prop-desc {
  color: #777;
  font-size: 14px;
  margin-bottom: 30px;
  padding: 0 20px;
  font-family: Roboto;
}

.landing__example {
  padding: 30px 50px;
  padding-bottom: 0px;
  background-color: var(--background);
  border-top-left-radius: 25px;
  border-top-right-radius: 25px;
}

// fade to white
.landing__example:after {
  content: '';
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  pointer-events: none;
  background-image: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0),
    var(--secondary) 90%
  );
  width: 100%;
  height: 4em;
}

.landing__btn-cta {
  margin-top: 30px;
  padding: 7px 30px;
  border-radius: 10px;
}

.landing__platform {
  padding: 100px 0;
  border-top: 1px solid var(--secondary) !important;
  border-right: 1px solid var(--secondary) !important;
  border-left: 1px solid var(--secondary) !important;
}

.landing__platform-header {
  font-weight: bold;
  font-size: 35px;
  color: var(--text);
  padding: 0 20px;
}

.landing__platform-desc {
  font-size: 18px;
  margin-top: 30px;
  padding: 0 20px;
}

.landing__echo {
  background-color: var(--background);
  border-top: 1px solid var(--secondary);
  padding: 50px 0;
}

.landing__footer {
  padding: 50px 80px;
}

.landing__footer-links {
  display: flex;
  flex-direction: column;
}

.landing__footer-links a {
  font-size: 12px;
  color: #222;
  margin-bottom: 7px;
}

.landing__footer-links hr {
  border-top: 1px solid black;
  width: 200px;
  padding: 0;
  margin-left: 0;
}

.landing__board {
  margin-bottom: 0;
}

.landing__board img {
  height: 50px;
  width: 50px;
  border-radius: 5px;
}

.landing__board th {
  padding: 10px 0;
}

.landing__board td {
  vertical-align: middle;
  padding: 10px 0;
}

.landing__board tr {
  border-bottom: 1px solid #ddd;
}

.landing__post-img {
  height: 50px;
  width: 50px;
  border-radius: 5px;
}

//
// Manage follows page
//

.manage-follows__avatar {
  display: block;
  height: 50px;
  width: 50px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.manage-follows__avatar-container {
  width: 56px; // TODO: figure out why chrome doesn't render this as 50px
  margin-right: 15px;
}

//
// Simple profile card (for likes, reposts, diamonds modal)
//

.simple-profile-card__avatar {
  display: block;
  height: 50px;
  width: 50px;

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.simple-profile-card__avatar-container {
  width: 50px;
  margin-right: 15px;
}

//
// (end) v0 styles
//

@media (min-width: 992px) {
  .info-tooltip {
    position: relative;
    cursor: pointer;
  }
}
@media (max-width: 992px) {
  // TODO: Fix tooltips on mobile. Consider just
  // making them all use sweetalert2 with "question."
  .info-tooltip {
    display: none !important;
    //position: relative;
    //cursor: pointer;
    //color: $tooltip-color;
    //font-weight: bold;
  }
}
/* Apply only to screen sizes >= sm */
.info-tooltip-contents {
  position: absolute;
  text-align: left;
  top: -0.5rem;
  left: 1.5rem;
  background-color: $light-color;
  cursor: pointer;
  border: 1px solid $dark-in-between-color;
  padding: 0.5rem;
  color: $dark-color;
  width: 15rem;
  z-index: 1;
  font-size: 1rem;
  font-weight: bold;
}

.btn.disabled {
  // I don't think bootstrap's button opacity makes buttons look sufficiently disabled,
  // so I'm overriding bootstrap here.
  opacity: 0.4;
}

.btn.btn-light {
  cursor: pointer;
  font-size: $button-font-size;
  min-height: $button-height;

  transition: 0s;
  background-color: $button-color-default;
  color: $button-text-color-default !important;
  border-radius: 5px;
  border: none;
  box-shadow: 3px 3px 8px 0 rgba(0, 0, 0, 0.1);
  font-weight: 700;

  display: inline-flex;
  width: fit-content;
  align-items: center;
  justify-content: center;

  &:hover {
    background-color: $button-hover-color-default;
  }
  &:active {
    background-color: $button-color-pressed-default !important;
  }
}

.btn-default {
  cursor: pointer;
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.divtext {
  display: flex;
  align-items: center;
  justify-content: center;
}
.separating-line {
  height: 1px;
  width: 100%;
  background-color: $border-color;
}
.title {
  display: inline-block;
  color: $important-text-color;
  font-size: $big-text-size;
  font-weight: bold;
}
.subtitle {
  display: inline-block;
  color: $light-color;
  text-decoration: underline;
  font-size: $big-text-size;
}
.form-label {
  color: $important-text-color;
  font-size: $normal-text-size;
}
.form-control {
  color: var(--text) !important;
  background: var(--formbg) !important;
  border-color: var(--border) !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.normal-text {
  color: $text-color;
  font-size: $normal-text-size;
}
.warning-text {
  color: $error-color;
  font-weight: bold;
  font-size: $normal-text-size;
}
input {
  background-color: transparent;
  border: 1px solid $border-color;
  color: $important-text-color;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  &:focus {
    outline: none;
  }
}
::placeholder {
  color: $placeholder-color;
}
textarea {
  background-color: transparent;
  border: 1px solid var(--border);
  color: var(--text);
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  max-width: 100%;
  &:focus {
    outline: none;
  }
}
.emph {
  color: $important-text-color;
  display: contents;
}
.btn.btn-light.yes {
  color: $good-color;
  border-color: $good-color;
  font-weight: bold;
  background-color: $separating-line-color;
}
.btn.btn-light.no {
  color: $bad-color;
  border-color: $bad-color;
  font-weight: bold;
  background-color: $separating-line-color;
}
em {
  color: $important-text-color;
  font-style: normal;
}
.needs-basic-form {
  .subtitle {
    margin-top: 1rem;
  }
  .form-label {
    display: inline-block;
    width: 12rem;
    vertical-align: top;
  }
  .input-container {
    margin-top: 1rem;
    .random-username {
      margin-left: 1rem;
    }
  }
}
.next-back-container {
  margin-top: 1rem;
  .btn.btn-light {
    width: 7.5rem;
    margin-right: 1rem;
  }
}
.help-text {
  margin-top: 1rem;
}
.action-items-badge {
  width: auto;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  background-color: $error-color;
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: $button-text-color-default;
  font-weight: bold;
}
.minus {
  color: $light-color;
  display: inline-block;
  margin-right: 0.5rem;
  cursor: pointer;
}
.link {
  color: $light-color;
  text-decoration: underline;
  cursor: pointer;
  display: inline;
}
.file-upload-button::-webkit-file-upload-button {
  cursor: pointer;
}

@media (min-width: 992px) {
  /* Apply only to screen sizes >= sm */
  div.hide-on-desktop {
    display: none !important;
  }
}

@media (max-width: 992px) {
  /* Apply only to screen sizes >= sm */
  div.hide-on-mobile {
    display: none !important;
  }
  .reverse-columns-on-mobile {
    flex-direction: column-reverse;
  }
  [class*='col-'] {
    margin-bottom: 15px;
  }
}

/*Begin DeSo config*/
.flex-center {
  display: flex;
  align-items: center;
}
input {
  color: var(--text);
  width: 100%;
}
.red {
  color: $error-color;
}
.btn.green {
  background-color: $important-button;
}
.btn.orange {
  background-color: $profile-button;
}
.btn-primary {
  background-color: $buy-button-blue;
  border-color: $buy-button-blue;
  color: #fff;
}

.btn-primary:hover {
  color: #fff;
  background-color: var(--hover);
  border-color: var(--hover);
}

.btn-primary.disabled,
.btn-primary:disabled {
  color: #fff;
  background-color: $buy-button-blue;
  border-color: $buy-button-blue;
}

.btn-secondary {
  background-color: #ffffff;
  border-color: var(--border);
}
#foobarxyz p {
  margin: 0;
}
#foobarabc p {
  margin: 0;
}
.post-submitted p {
  margin: 0;
}
.grey {
  color: $grey;
}

// Animations
.slide-up,
.slide-up-1,
.slide-up-2,
.slide-up-3 {
  animation: slide-up 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  visibility: visible !important;
}

.slide-up-1 {
  animation-delay: 0.1s;
}

.slide-up-2 {
  animation-delay: 0.2s;
}

.slide-up-3 {
  animation-delay: 0.3s;
}

@keyframes slide-up {
  0% {
    transform: translateY(100px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

// Added BootStrap and Custom CSS for Themeing
.border-bottom {
  border-bottom: 1px solid var(--border) !important;
}

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

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

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

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

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

.deso {
  filter: var(--filter);
}

.selector {
  background: var(--secondary);
  outline: none;
  border-radius: 5px;
  padding: 5px;
  color: var(--text);
}

.selector option:active,
.selector option:hover {
  outline-color: blue;
}

.notification {
  border-radius: 3px;
  background-color: var(--background);
  color: #fe3537;
  border: 1px #fe3537 solid;
  text-align: center;
  line-height: 18px;
  height: 20px;
  padding: 0px 5px;
}

.bg-light {
  background-color: var(--secondary) !important;
}

// Animations by Carsen Klock @carsenk

.is_animating {
  animation: pulse-red 2s;
}

.is_animating_ice {
  animation: pulse-blue 2s;
}

@keyframes pulse-red {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 82, 82, 0.7);
  }

  70% {
    box-shadow: 0 0 0 10px rgba(255, 82, 82, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(255, 82, 82, 0);
  }
}

@keyframes pulse-blue {
  0% {
    box-shadow: 0 0 0 0 rgba(52, 172, 224, 0.7);
  }

  70% {
    box-shadow: 0 0 0 10px rgba(52, 172, 224, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(52, 172, 224, 0);
  }
}

.modalinput {
  border-color: var(--mborder) !important;
}

.comment-modal {
  color: var(--text);
  border: 1px solid var(--mborder);
  background-color: var(--secondary);
  background-clip: padding-box;
  opacity: 1;
  flex-direction: column;
  width: 100%;
  display: flex;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
  outline: 0;
  position: relative;
}

.ddropdown {
  background: var(--background);
  color: var(--text);
  border-bottom: 1px solid var(--border);
}

.ddropdown option {
  background: var(--background);
  color: var(--text);
  border-bottom: 1px solid var(--border);
}

.secalt-bg {
  background-color: var(--secalt);
}

.formbg {
  background-color: var(--formbg) !important;
}

.modal-content {
  position: relative;
  background-color: var(--secalt);
  color: var(--text);
  border: 1px solid var(--mborder);
  background-clip: padding-box;
  opacity: 1;
  flex-direction: column;
  width: 100%;
  display: flex;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
  outline: 0;
}

.modal-header {
  border-bottom: 1px solid var(--mborder) !important;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.likes-modal-container,
.quote-reposts-modal-container,
.reposts-modal-container,
.diamonds-modal-container {
  background-color: var(--background);
  color: var(--text);
  border: var(--mborder);
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.lockup-dao-coin-modal.cdk-overlay-container {
  z-index: 2000;
}

.lockup-date-picker {
  width: 150px;
  height: 30px;
}

.lockup-time-picker {
  width: 190px;
  height: 30px;
}

.nft-modal-container {
  color: var(--text);
  border: 1px solid var(--mborder);
  background-color: var(--secondary);
  background-clip: padding-box;
  flex-direction: column;
  width: 100%;
  display: flex;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
  outline: 0;
  position: relative;
}

.nft-modal-radio-size {
  height: 15px;
  width: 15px;
}

.nft-modal-separator {
  border-bottom: #aaaaaa solid 1px;
}

.nft-modal-separator-2 {
  border-bottom: #dddddd solid 1px;
}

.create-nft-auction-row-border {
  border-bottom: #eeeeee solid 1px;
}

.interaction-detail {
  &:hover,
  &:active,
  &:focus {
    text-decoration: inherit; // I prefer no underline when you hover over links
    color: var(--grey);
  }
}

[class*='mat-select'],
[class*='mat-option-'],
.mat-form-field-label,
select {
  color: var(--text);
}

.mat-option,
option {
  background-color: var(--formbg);
  color: var(--text);
}

.mat-option:hover:not(.mat-option-disabled),
.mat-option:focus:not(.mat-option-disabled) {
  background-color: var(--secondary);
}

.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple) {
  background-color: var(--unread);
}

.mat-form-field-appearance-fill .mat-form-field-underline::before {
  background-color: var(--border);
}

.mat-form-field-ripple {
  background-color: var(--link);
}

.mat-form-field.mat-focused .mat-form-field-ripple {
  background-color: var(--hover);
}

.swal2-popup {
  background-color: var(--background) !important;
  color: var(--text);
}

//
// Bootstrap switch custom styling
//

// Add class `.custom-switch-lg` to a `custom-switch`
.custom-switch.custom-switch-lg {
  padding-bottom: 1rem;
  padding-left: 2.25rem;

  & .custom-control-label {
    padding-left: 0.75rem;
    padding-top: 0.15rem;

    &::before {
      border-radius: 1rem;
      height: 1.5rem;
      width: 2.5rem;
    }

    &::after {
      border-radius: 0.65rem;
      height: calc(1.5rem - 4px);
      width: calc(1.5rem - 4px);
    }
  }

  .custom-control-input:checked ~ .custom-control-label::after {
    transform: translateX(1rem);
  }
}

// Add class `.custom-switch-xl` to a `custom-switch`
.custom-switch.custom-switch-xl {
  padding-bottom: 1rem;
  padding-left: 2.25rem;

  & .custom-control-label {
    padding-left: 2rem;
    padding-top: 0.5rem;

    &::before {
      border-radius: 1rem;
      height: 2rem;
      width: 3.5rem;
    }

    &::after {
      border-radius: 2rem;
      height: calc(2rem - 4px);
      width: calc(2rem - 4px);
    }
  }

  .custom-control-input:checked ~ .custom-control-label::after {
    transform: translateX(1.5rem);
  }
}

.text-align-center {
  text-align: center;
}

.borderbg {
  background-color: var(--border);
}

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

.buy-deso-modal {
  max-width: 630px;
}

.cloutavista-button {
  position: sticky;
  bottom: 0px;
  a {
    display: flex;
    flex-direction: column;
    align-items: center;
    div {
      height: 1px;
      position: absolute;
      top: 0px;
      width: 100%;
    }
    p {
      color: var(--text) !important;
      margin: 15px 0 15px 0;
      font-size: 15px;
    }
  }
}

.feed-reaction {
  position: relative;

  i {
    position: relative;
    font-size: 22px;
  }

  // Contains the button which triggers diamond pop ups
  .diamond-btn {
    width: 44px;
    height: 30px;
    position: absolute;
    left: -4px;
    cursor: pointer;
    &::before {
      display: none;
    }
    // Contains box which contains all of the selectable diamond levels
    .reaction-box {
      // This creates an invisible, hoverable space for our pointer to use without losing hover focus
      // Basically, a bridge between the diamond button and the diamond row
      &::after {
        content: '.';
        opacity: 0;
        display: block;
        width: 340px;
        // On desktop, move the diamond bar higher to prevent accidental clicking
        @media (max-width: 991.98px) {
          height: 10px;
          top: 50px;
          left: 0px;
        }
        height: 30px;
        position: absolute;
        top: 50px;
        left: 0px;
      }

      // Need to position box above top bar when explainer is triggered
      z-index: 30;
      position: absolute;
      width: 340px;
      height: 55px;
      background: var(--background);
      border: 1px solid var(--border);
      border-radius: 20px;
      // On mobile, need to position this box further left so it doesn't leave the screen
      @media (max-width: 991.98px) {
        left: -300px;
        bottom: 35px;
      }
      left: -125px;
      bottom: 50px;
      display: none;

      // Each selectable diamond level in the diamond pop-up
      .reaction-icon {
        // Enables "pop-up" animation
        transition: all 0.3s cubic-bezier(0.09, 1.22, 0.5, 1.04);
        opacity: 0;
        transform: translate(0, 50px) scale(0);
        width: 47px;
        height: 20px;
        display: inline-block;
        background: var(--secondary);
        background-color: transparent;
        content: '\f219';
        border-radius: 15px;
        margin: 8px 0 0 0;
        text-align: center;

        .diamond-reaction {
          font-size: 25px;
          top: -30px;
          left: -2px;
          position: relative;
          transition: color 0.3s;
        }

        .diamond-help {
          color: var(--grey);
        }

        label {
          padding: 3px 5px 3px 5px;
          position: relative;
          top: -24px;
          border-radius: 10px;
          font-size: 11px;
          color: #fff;
          background: #333;
          visibility: visible;
        }

        // Make selectable area smaller, to prevent accidental selections
        .reaction-icon-display {
          height: 14px;
        }
      }
    }

    // Don't show the diamond selector when it's the user's own post
    &.hide-diamonds {
      .reaction-box {
        display: none !important;
      }
    }

    // We want to disable phone-sized devices from showing the selector on hover.
    @media (max-width: 600px) {
      &.dragged-like {
        .reaction-box {
          display: block;
        }
      }
    }
    // Show the selector on hover for tablets and desktop machines
    @media (min-width: 601px) {
      &:hover {
        .reaction-box {
          display: block;
        }
      }
    }

    // If a diamond is either hovered over or selected via the drag interface, grow it and animate it
    &.dragged-like,
    &:hover {
      .reaction-box {
        .reaction-icon {
          // Skip the "show" trigger on tablets, the on-hover property can be touchy
          @media (min-width: 601px) and (pointer: coarse) {
            opacity: 1;
            transform: translate(0, 0) scale(1);
          }
          // Show the reaction icon once it gets the "show" class (this is triggered by a timer in JS to achieve the animation)
          &.show {
            opacity: 1;
            transform: translate(0, 0) scale(1);
          }

          // For those elements we want to grow, scale them up when they're hovered
          &.transformable {
            // Prevent hover effects on mobile, we use the drag interface for that
            @media (pointer: fine) {
              &.dragged-icon,
              &:hover {
                transform: scale(1.3);
                transform-origin: bottom;
              }
            }
            // Scale up icons on mobile when they're dragged across
            @media (pointer: coarse) {
              &.dragged-icon {
                transform: scale(1.3);
                transform-origin: bottom;
              }
            }
          }
        }
      }
    }
  }
}

.diamond-mobile-drag-container {
  display: none;
}

.diamond-mobile-drag-instructions {
  display: none;

  p {
    display: none;
  }
}

.diamond-mobile-drag-grab {
  display: none;
}

// Only enable drag controls for smaller screens i.e. phones not tablets
@media (max-width: 600px) {
  .diamond-mobile-drag-container {
    height: 120px;
    position: absolute;
    left: 0;
    right: 0;
    display: block;
    pointer-events: none;
  }

  .diamond-mobile-drag-instructions {
    display: block;
    height: 48px;
    position: absolute;
    top: 45px;
    left: 0;
    right: 0;
    background: var(--norm);
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s linear 300ms, opacity 300ms,
      background-color 300ms ease;

    &.show {
      visibility: visible;
      opacity: 1;
      transition: visibility 0s linear 0s, opacity 300ms,
        background-color 300ms ease;
    }

    p {
      display: block;
      top: 15px;
      text-align: center;
      position: relative;
      display: table-cell;
      color: var(--secalt);
    }
  }

  .diamond-mobile-drag-grab {
    display: block;
    height: 45px;
    width: 45px;
    position: absolute;
    z-index: 1;
    background: transparent;
    pointer-events: all;
  }
}

.hide-diamonds {
  &.diamond-mobile-drag-grab {
    display: none;
  }
  &.diamond-mobile-drag-container {
    display: none;
    .diamond-mobile-drag-instructions {
      display: none;
      .p {
        display: none;
      }
    }
  }
}

.follow-on-buy {
  *,
  *:after,
  *:before {
    box-sizing: border-box;
  }

  body {
    background: whitesmoke;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
  }

  input#check {
    position: absolute;
    opacity: 0;

    &:checked + label svg path {
      stroke-dashoffset: 0;
    }

    &:focus + label {
      transform: scale(1.03);
    }
  }

  #check + label {
    display: block;
    border: 2px solid var(--grey);
    width: var(--d);
    height: var(--d);
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.2s ease;

    svg {
      pointer-events: none;
      vertical-align: top;
      path {
        fill: none;
        stroke: var(--grey);
        stroke-width: 11px;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-dasharray: 100;
        stroke-dashoffset: 101;
        transition: all 350ms cubic-bezier(1, 0, 0.37, 0.91);
      }
    }
  }

  .follow-check {
    margin-top: 4px;
    margin-right: 10px;
  }
}

// Prevent text highlighting on mobile long press
.unselectable {
  user-select: none; /* supported by Chrome and Opera */
  -webkit-user-select: none; /* Safari */
  -khtml-user-select: none; /* Konqueror HTML */
  -moz-user-select: none; /* Firefox */
  -ms-user-select: none; /* Internet Explorer/Edge */
}

.desktop-creator-coin-info {
  @media (max-width: 992px) {
    display: none;
  }
  display: inline;
}

.mobile-creator-coin-info {
  @media (max-width: 992px) {
    display: inline;
    margin-left: 0px;
    padding-left: 0px;
  }
  display: none;
}

.creator-coin-info {
  @media (max-width: 992px) {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
    margin-left: 0rem !important;
  }
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.referral-link-info__blue-border {
  border-left: 5px solid $buy-button-blue !important;
}

.checkbox-circle {
  i {
    display: none;
    position: relative;
    top: -5px;
  }
  padding: 3px;
  width: 22px;
  height: 22px;
  border: 1px solid var(--border);
  border-radius: 100%;
  background: none;
  transition: background-color 0.5s;
  &.radio {
    transition: background-color 0s;
  }
  &.checked {
    background: var(--highlight);
    i {
      display: inline;
      color: var(--tile-bg);
    }
    &.radio {
      transition: background-color 0.5s;
    }
  }
}
