/* width */
::-webkit-scrollbar {
  width: 5px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #cfd8dc;
  border-radius: 5px;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #b0bec5;
  border-radius: 5px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #90a4ae;
}

:root {
  --base-color: white;
  --base-variant: #E6E6E6;
  --text-color: #111528;
  --secondary-text: #232738;
  --primary-color: #3a435d;
  --accent-color: #0071ff;
  --base-blockquote: rgb(249 250 251);
  --blockquote-border: rgb(209 213 219);
}

.darkmode {
  --base-color: #070b1d;
  --base-variant: #101425;
  --text-color: #ffffff;
  --secondary-text: #a4a5b8;
  --primary-color: #3a435d;
  --accent-color: #0071ff;
  --base-blockquote: rgb(31 41 55);
  --blockquote-border: rgb(107 114 128);
}

html {
  font-family: Poppins;
}

body {
  height: 100vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background-color: var(--base-color);
  color: var(--text-color);
  line-height: 1.6;
}

img {
  margin: auto;
}

.navigation {
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
  padding: 0px 0 60px 0px;
}

#bottomBar {
  display: flex;
  justify-content: space-between;
  background-color: var(--base-variant);
  /* bottom: 0px; */
  /* position: fixed; */
  flex-shrink: 0;
}

header,
section {
  padding: 30px min(30px, 5%);
}

section {
  background-color: var(--base-variant);
}

p {
  margin: 10px 0 20px 0;
  color: var(--text-color);
}

.button-round {
  border: 2px solid var(--base-variant);
  ;
  padding: .4em 2em;
  background-color: transparent;
  color: var(--secondary-text);
  border-radius: 100px;
  font: inherit;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 500;
  cursor: pointer;
}

button {
  border: none;
  padding: .8em 2em;
  background-color: var(--primary-color);
  color: white;
  border-radius: 4px;
  font: inherit;
  text-transform: uppercase;
  font-weight: 500;
  cursor: pointer;
}

button:disabled {
  cursor: not-allowed;
  display: none;
}

.button-round:disabled {
  cursor: not-allowed;
  display: none;
}

blockquote {
  background-color: var(--base-blockquote);
  border-left: 4px solid var(--blockquote-border);
  text-align: left;
  padding: 4px 8px;
  font-style: italic;
}

#pageTitle {
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

#theme-switch {
  height: 32px;
  width: 32px;
  padding: 0;
  border-radius: 50%;
  background-color: var(--base-variant);
  display: flex;
  justify-content: center;
  align-items: center;
  /* position: fixed;
    top: 20px;
    right: 20px; */
}

#notes-toggle {
  height: 32px;
  width: 32px;
  padding: 0;
  border-radius: 50%;
  background-color: var(--base-variant);
  display: flex;
  justify-content: center;
  align-items: center;
  /* position: fixed;
    top: 20px;
    right: 100px; */
}

#addNoteButton {
  height: 32px;
  /* width: 32px; */
  padding: 0;
  border-radius: 50%;
  background-color: var(--base-variant);
  display: flex;
  justify-content: center;
  align-items: center;
  /* position: fixed;
    top: 20px;
    right: 100px; */
}

#fullscreen-switch {
  height: 32px;
  width: 32px;
  padding: 0;
  border-radius: 50%;
  background-color: var(--base-variant);
  display: flex;
  justify-content: center;
  align-items: center;
  /* position: fixed;
    top: 20px;
    right: 60px; */
}

#theme-switch svg {
  fill: var(--primary-color);
}

#fullscreen-switch svg {
  stroke: var(--primary-color);
}

#notes-toggle svg {
  fill: var(--primary-color);
}

#addNoteButton svg {
  fill: var(--primary-color);
}

#theme-switch svg:last-child {
  display: none;
}

.darkmode #theme-switch svg:first-child {
  display: none;
}

.darkmode #theme-switch svg:last-child {
  display: block;
}

.toc {
  margin-bottom: 20px;
}

.toc a {
  display: flex;
  align-items: baseline;
  margin: 5px 0;
  text-decoration: none;
  color: rgb(37 99 235) !important;
  cursor: pointer;
}

.toc a:hover {
  text-decoration: underline;
}

.toc a .title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.toc a .dots {
  flex-grow: 1;
  border-bottom: 1px dotted #ccc;
  margin: 0 10px;
  align-self: flex-end;
}

.toc a .count {
  color: gray;
  white-space: nowrap;
}

.files {
  margin-top: 20px;
}

.files ul {
  list-style-type: none;
  padding: 0;
}

.files li {
  margin: 5px 0;
}

.files a {
  color: #007BFF;
  text-decoration: none;
}

.files a:hover {
  text-decoration: underline;
}

.bg-cyan-50,
.hover\:bg-cyan-50:hover {
  background-color: #e0f7fa;
}

.bg-cyan-100,
.hover\:bg-cyan-100:hover {
  background-color: #b2ebf2;
}

.bg-cyan-200,
.hover\:bg-cyan-200:hover {
  background-color: #80deea;
}

.bg-cyan-300,
.hover\:bg-cyan-300:hover {
  background-color: #4dd0e1;
}

.bg-cyan-400,
.hover\:bg-cyan-400:hover {
  background-color: #26c6da;
}

.bg-cyan-500,
.hover\:bg-cyan-500:hover {
  background-color: #00bcd4;
}

.bg-cyan-600,
.hover\:bg-cyan-600:hover {
  background-color: #00acc1;
}

.bg-cyan-700,
.hover\:bg-cyan-700:hover {
  background-color: #0097a7;
}

.bg-cyan-800,
.hover\:bg-cyan-800:hover {
  background-color: #00838f;
}

.bg-cyan-900,
.hover\:bg-cyan-900:hover {
  background-color: #006064;
}


.text-cyan-50,
.hover\:text-cyan-50:hover {
  color: #e0f7fa;
}

.text-cyan-100,
.hover\:text-cyan-100:hover {
  color: #b2ebf2;
}

.text-cyan-200,
.hover\:text-cyan-200:hover {
  color: #80deea;
}

.text-cyan-300,
.hover\:text-cyan-300:hover {
  color: #4dd0e1;
}

.text-cyan-400,
.hover\:text-cyan-400:hover {
  color: #26c6da;
}

.text-cyan-500,
.hover\:text-cyan-500:hover {
  color: #00bcd4;
}

.text-cyan-600,
.hover\:text-cyan-600:hover {
  color: #00acc1;
}

.text-cyan-700,
.hover\:text-cyan-700:hover {
  color: #0097a7;
}

.text-cyan-800,
.hover\:text-cyan-800:hover {
  color: #00838f;
}

.text-cyan-900,
.hover\:text-cyan-900:hover {
  color: #006064;
}

.bg-blue-gray-50,
.hover\:bg-blue-gray-50:hover {
  background-color: #eceff1;
}

.bg-blue-gray-100,
.hover\:bg-blue-gray-100:hover {
  background-color: #cfd8dc;
}

.bg-blue-gray-200,
.hover\:bg-blue-gray-200:hover {
  background-color: #b0bec5;
}

.bg-blue-gray-300,
.hover\:bg-blue-gray-300:hover {
  background-color: #90a4ae;
}

.bg-blue-gray-400,
.hover\:bg-blue-gray-400:hover {
  background-color: #78909c;
}

.bg-blue-gray-500,
.hover\:bg-blue-gray-500:hover {
  background-color: #607d8b;
}

.bg-blue-gray-600,
.hover\:bg-blue-gray-600:hover {
  background-color: #546e7a;
}

.bg-blue-gray-700,
.hover\:bg-blue-gray-700:hover {
  background-color: #455a64;
}

.bg-blue-gray-800,
.hover\:bg-blue-gray-800:hover {
  background-color: #37474f;
}

.bg-blue-gray-900,
.hover\:bg-blue-gray-900:hover {
  background-color: #263238;
}

.text-blue-gray-50,
.hover\:text-blue-gray-50:hover {
  color: #eceff1;
}

.text-blue-gray-100,
.hover\:text-blue-gray-100:hover {
  color: #cfd8dc;
}

.text-blue-gray-200,
.hover\:text-blue-gray-200:hover {
  color: #b0bec5;
}

.text-blue-gray-300,
.hover\:text-blue-gray-300:hover {
  color: #90a4ae;
}

.text-blue-gray-400,
.hover\:text-blue-gray-400:hover {
  color: #78909c;
}

.text-blue-gray-500,
.hover\:text-blue-gray-500:hover {
  color: #607d8b;
}

.text-blue-gray-600,
.hover\:text-blue-gray-600:hover {
  color: #546e7a;
}

.text-blue-gray-700,
.hover\:text-blue-gray-700:hover {
  color: #455a64;
}

.text-blue-gray-800,
.hover\:text-blue-gray-800:hover {
  color: #37474f;
}

.text-blue-gray-900,
.hover\:text-blue-gray-900:hover {
  color: #263238;
}

.bg-teal-50,
.hover\:bg-teal-50:hover {
  background-color: #e0f2f1;
}

.bg-teal-100,
.hover\:bg-teal-100:hover {
  background-color: #b2dfdb;
}

.bg-teal-200,
.hover\:bg-teal-200:hover {
  background-color: #80cbc4;
}

.bg-teal-300,
.hover\:bg-teal-300:hover {
  background-color: #4db6ac;
}

.bg-teal-400,
.hover\:bg-teal-400:hover {
  background-color: #26a69a;
}

.bg-teal-500,
.hover\:bg-teal-500:hover {
  background-color: #009688;
}

.bg-teal-600,
.hover\:bg-teal-600:hover {
  background-color: #00897b;
}

.bg-teal-700,
.hover\:bg-teal-700:hover {
  background-color: #00796b;
}

.bg-teal-800,
.hover\:bg-teal-800:hover {
  background-color: #00695c;
}

.bg-teal-900,
.hover\:bg-teal-900:hover {
  background-color: #004d40;
}

.text-teal-50,
.hover\:text-teal-50:hover {
  color: #e0f2f1;
}

.text-teal-100,
.hover\:text-teal-100:hover {
  color: #b2dfdb;
}

.text-teal-200,
.hover\:text-teal-200:hover {
  color: #80cbc4;
}

.text-teal-300,
.hover\:text-teal-300:hover {
  color: #4db6ac;
}

.text-teal-400,
.hover\:text-teal-400:hover {
  color: #26a69a;
}

.text-teal-500,
.hover\:text-teal-500:hover {
  color: #009688;
}

.text-teal-600,
.hover\:text-teal-600:hover {
  color: #00897b;
}

.text-teal-700,
.hover\:text-teal-700:hover {
  color: #00796b;
}

.text-teal-800,
.hover\:text-teal-800:hover {
  color: #00695c;
}

.text-teal-900,
.hover\:text-teal-900:hover {
  color: #004d40;
}

.nowrap {
  white-space: nowrap;
}

.glass {
  background-color: rgba(100, 120, 130, .6);
  backdrop-filter: blur(10px);
}

table td {
  vertical-align: top;
}

#receipt-content {
  max-height: 70vh;
}

@media print {
  .hide-print {
    display: none !important;
  }

  .print-area {
    display: block;
  }
}

/* #addNoteContent {
  border: 1px solid #000;
} */

#notes {
  position: fixed;
  bottom: 80px;
  left: 20px;
  width: 90vw;
  max-height: 80vh;
  overflow-y: auto;
  background-color: var(--base-variant);
  padding: 10px;
  border-radius: 8px;
  white-space: pre-wrap;
}

#notes h3 {
  margin-bottom: 10px;
}

#notes ul {
  list-style-type: none;
  padding: 0;
}

#notes li {
  margin-bottom: 10px;
}

.grow-wrap {
  /* easy way to plop the elements on top of each other and have them both sized based on the tallest one's height */
  display: grid;
}

.grow-wrap::after {
  /* Note the weird space! Needed to preventy jumpy behavior */
  content: attr(data-replicated-value) " ";

  /* This is how textarea text behaves */
  white-space: pre-wrap;

  /* Hidden from view, clicks, and screen readers */
  visibility: hidden;
}

.grow-wrap>textarea {
  /* You could leave this, but after a user resizes, then it ruins the auto sizing */
  resize: none;

  /* Firefox shows scrollbar on growth, you can hide like this. */
  overflow: hidden;
}

.grow-wrap>textarea,
.grow-wrap::after {
  /* Identical styling required!! */
  border: 1px solid black;
  padding: 0.5rem;
  font: inherit;

  /* Place on top of each other */
  grid-area: 1 / 1 / 2 / 2;
}

/* Hide scrollbar for content area */
#mainScrollContainer::-webkit-scrollbar {
  display: none;
}

#mainScrollContainer {
  -ms-overflow-style: none;
  /* IE and Edge */
  scrollbar-width: none;
  /* Firefox */
}