* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  /* OLD COLORS */
  --c-text: hsl(0, 0%, 33%);
  --c-text-inverse: hsl(0, 0%, 50%);
  --c-border: hsl(0, 0%, 80%);

  /* FIXED COLORS	*/
  --cf-text: hsl(0, 0%, 25%);
  --cf-text-light: hsl(0, 0%, 90%);
  --cf-link: rgb(0, 100, 200);
  --cf-link-visited: rgb(0, 80, 160);

  /* TRANSITIONS */
  --transition-duration: 0.5s;
  --transition-duration-fast: 0.2s;
  --transition-timing-function: cubic-bezier(0.65, 0.05, 0.36, 1);
  --transition-props: var(--transition-duration) var(--transition-timing-function);

  /* ENTRY SIZING */
  --e-attachment-max-height: 300px;
  --e-spacing: 1.6rem;

  /* GRADIENT CONTROLS */
    --radial-gradient-width: 600%;
}

/* DAY THEME COLORS	*/
body:not(.night) {
  --c-outerspace: hsl(0, 0%, 96%);
  --c-space-bg: hsl(210, 10%, 94%);
  --c-marketing-place-bg: #F3EFE8;
  --c-space-gradient: linear-gradient(0deg,
    hsla(0, 0%, 0%, 0.05) 0%,
    hsla(0, 0%, 0%, 0.10) 5%,
    hsla(0, 0%, 0%, 0.17) 20%,
    hsla(0, 0%, 0%, 0.20) 22%,
    hsla(0, 0%, 0%, 0.16) 50%,
    hsla(0, 0%, 0%, 0.05) 75%,
    hsla(0, 0%, 0%, 0.02) 100%);
  --c-space-gradient-radial: radial-gradient(var(--radial-gradient-width) 100% at 50% 100%,
    hsla(0, 0%, 0%, 0.05) 0%,
    hsla(0, 0%, 0%, 0.10) 5%,
    hsla(0, 0%, 0%, 0.17) 20%,
    hsla(0, 0%, 0%, 0.20) 22%,
    hsla(0, 0%, 0%, 0.16) 50%,
    hsla(0, 0%, 0%, 0.05) 75%,
    hsla(0, 0%, 0%, 0.02) 100%);
  --c-space-hover: hsl(0, 0%, 88%);
  --c-card: hsl(0, 0%, 99%);
  --c-card-fader: hsla(0, 0%, 0%, 0.04);
  --c-book-bg: hsl(0, 0%, 97%);
  --c-book-stream-bg: hsl(0, 0%, 94%);
  --c-button-bg: hsl(0, 0%, 5%);
  --c-button-bg-hover: hsl(0, 0%, 10%);
  --c-text: hsl(0, 0%, 25%);
  --c-text-hover: hsl(0, 0%, 15%);
  --c-text-faded: hsl(0, 0%, 55%);
  --c-text-strong: hsl(0, 0%, 10%);
  --c-textfield: hsl(0, 0%, 97%);
  --c-text-inverse: hsl(0, 0%, 85%);
  --c-text-inverse-hover: hsl(0, 0%, 95%);
  --c-text-accent: hsl(150, 45%, 60%);
  --c-border: hsla(0, 0%, 0%, 0.075);
  --c-border-dark: hsla(0, 0%, 0%, 0.2);
  --c-bubble-mine: linear-gradient(hsl(0, 0%, 100%), hsl(0, 0%, 95%) 3rem);
  --c-bubble-theirs: linear-gradient(
    var(--bubbleColorLight, hsl(0, 0%, 88%)), 
    var(--bubbleColorDark, hsl(0, 0%, 90%)) 3rem
    );
  --c-bubble-mine-selection-bg: hsl(0, 0%, 85.5%);
  --c-bubble-theirs-selection-bg: hsl(0, 0%, 97.5%);
  --c-window-gradient: linear-gradient(180deg, hsla(0, 0%, 100%, 0.2) 0 25%, hsla(0, 0%, 0%, 0.05));
  --c-window-border: hsla(0, 0%, 0%, 0.075);
  --c-danger: hsl(0deg 100% 60%);
  --c-text-danger: hsl(0deg 80% 50%);
  --c-accent: hsl(230deg 70% 65%);
  --box-shadow: 0 0.75rem 1rem 0 var(--c-border);
}

/* NIGHT THEME COLORS	*/
body.night {
  --c-outerspace: hsl(0, 0%, 0%);
  --c-space-bg: hsl(210, 30%, 10%);
  --c-marketing-place-bg: #161109;
  --c-space-gradient: linear-gradient(0deg,
      hsla(0, 0%, 0%, 0.10) 0%,
      hsla(0, 0%, 0%, 0.16) 5%,
      hsla(0, 0%, 0%, 0.32) 20%,
      hsla(0, 0%, 0%, 0.48) 25%,
      hsla(0, 0%, 0%, 0.32) 50%,
      hsla(0, 0%, 0%, 0.16) 75%,
      hsla(0, 0%, 0%, 0.05) 100%);
  --c-space-gradient-radial: radial-gradient(var(--radial-gradient-width) 100% at 50% 100%,
        hsla(0, 0%, 0%, 0.05) 0%,
        hsla(0, 0%, 0%, 0.10) 10%,
        hsla(0, 0%, 0%, 0.20) 20%,
        hsla(0, 0%, 0%, 0.25) 22%,
        hsla(0, 0%, 0%, 0.20) 50%,
        hsla(0, 0%, 0%, 0.05) 75%,
        hsla(0, 0%, 0%, 0.02) 100%);
  --c-space-hover: hsl(0, 0%, 12%);
  --c-card:hsl(0, 0%, 1%);
  --c-card-fader: hsla(0, 0%, 100%, 0.04);
  --c-book-bg: hsl(0, 0%, 5%);
  --c-book-stream-bg: hsl(0, 0%, 7%);
  --c-button-bg: hsl(0, 0%, 85%);
  --c-button-bg-hover: hsl(0, 0%, 95%);
  --c-text: hsl(0, 0%, 75%);
  --c-text-hover: hsl(0, 0%, 85%);
  --c-text-faded: hsl(0, 0%, 45%);
  --c-text-strong: hsl(0, 0%, 90%);
  --c-text-inverse: hsl(0, 0%, 20%);
  --c-text-inverse-hover: hsl(0, 0%, 5%);
  --c-textfield: hsla(0, 0%, 8%, 0.8);
  --c-border: hsla(0, 0%, 100%, 0.1);
  --c-border-dark: hsla(0, 0%, 100%, 0.2);
  --c-bubble-mine: linear-gradient(hsl(0, 0%, 18%), hsl(0, 0%, 0%) 5rem);
  --c-bubble-theirs: linear-gradient(
    var(--bubbleColorLight, hsl(0, 0%, 25%)), 
    var(--bubbleColorDark, hsl(0, 0%, 20%)) 3rem);
  --c-bubble-mine-selection-bg: hsl(0, 0%, 21.5%);
  --c-bubble-theirs-selection-bg: hsl(0, 0%, 3.75%);
  --c-window-gradient: linear-gradient(180deg, hsla(0, 0%, 100%, 0.075) 0 25%, hsla(0, 0%, 100%, 0.025));
  --c-window-border: hsla(0, 0%, 0%, 0.5);
  --c-danger: hsl(344deg, 80%, 50%);
  --c-text-danger: hsl(0deg 80% 50%);
  --c-accent: hsl(235deg 80% 75%);
}

html, body {
  position: relative;
  width: 100%;
  height: 100%;
  height: -webkit-fill-available;
  font-size: 62.5%;
  /* Disables two finger swipe back gesture */
  overscroll-behavior: contain !important;
  overscroll-behavior-x: contain !important;
}

body {
  height: 100%;
  height: -webkit-fill-available;
  font-family: 'Helvetica Neue', BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 400;
  color: var(--c-text);
  background-color: var(--c-outerspace);
  touch-action: none;
  -webkit-font-smoothing: antialiased;
}

/* Cant remember why we put that but it breaks the marketing page sticky elements */
/* #app {
  overflow-y: scroll;
} */

a {
  color: var(--cf-link);
  text-decoration: none;
}

h1 {
  font-size: 2.1rem;
  font-weight: 500;
}

h2 {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.025rem;
}

h1,
h3 {
  letter-spacing: 0.025rem;
}

a:hover {
  text-decoration: underline;
}

a:visited {
  color: var(--cf-link-visited);
}

label {
  display: block;
}

input, button, select, textarea {
  font-family: inherit;
  font-size: inherit;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.hide {
  display: none;
}