@font-face {
  font-family: "temp";
  src: url("temp.ttf") format("truetype");
}

@font-face {
  font-family: "dots";
  src: url("dots.ttf") format("truetype");
}

* {
  font-family: "Garamond";
  font-size: 18px;
}

.italic {
  font-style: italic;
}

.bold {
  font-weight: bold;
}

.normal {
  font-weight: normal !important;
}

.middle {
  text-align: center;
}

.title {
   font-size: 24px;
}

.subtitle {
   font-size: 18px;
   font-family: "temp";
   text-align: center;
   font-weight: bold;
}

.popover-text {
  font-size: 14px;
  text-align: center;
}

li {
  list-style-type: none
}

.temp {
  font-family: "temp";
}

.red-temp {
  font-family: "temp";
  color: #BD0404 !important;
}

.dotsrowcol {
  font-family: "temp";
  text-align: center;
  font-size: 14px;
}

#AppContainer, {
  overflow-x: hidden;
}

p, th, td {
  text-align: center;
}

#PerformanceBar {
  width: 100%;
  border-radius: 0.25rem;
  border: 1px solid #00000030;
  overflow: hidden;
}

#PerformanceBar button {
  font-size: 14px;
}

#UserIdInput, #UserPasswordInput {
  font-size: 16px;
  margin-top: 1px;
  width: 100%;
  text-align: center;
  border-radius: 0.25rem;
  border: 1px solid #00000030;
}

#ValueText{
  position: absolute;
  top: 20px;
  left: 270px;
  font-size: 18px;
}

#PercentText{
  position: absolute;
  top: 56px;
  left: 270px;
  font-size: 18px;
}

.equal-width-table {
  table-layout: fixed;
  width: 100%;
}

.equal-width-columns th, .equal-width-columns td {
  width: 1%;
  white-space: nowrap;
}

.update-text {
   font-size: 12px;
}

.table {
  border-color: transparent;
}

.header {
  font-family: "Garamond";
  font-weight: normal;
  font-style: italic;
}

#FooterHomeButton {
  color: black;
  font-size: 18px;
  font-family: "temp";
  border: 1px solid #00000030;
  background: #FFF;
  position: relative;
  left: -168px;
}

._dash-loading {
  margin: auto;
  color: #000;
  width: 100vw;
  height: 100vh;
  font-family: "temp";
  color: #BC0909;
  font-size: 12px;

  text-align: center;
  position: absolute;

  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.row {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
}

#NavBarTabs {
    border-radius: 0.25rem;
    border: 1px solid #00000030;
    overflow-x: auto;
    white-space: nowrap;
    display: flex;
}

#TabContentCol {
  border: 1px solid #00000030;
  border-radius: 0.25rem;
}

.nav-tabs {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
}

.nav-item {
  flex-grow: 1;
  text-align: center;
  font-size: 16px;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  margin-right: 0px;
}

.nav-link {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0;
    font-family: "temp";
}

.nav-tabs .nav-link.active {
    color: #BD0404;
    border: 1px solid #BD0404;
    border-radius: 0.2rem;
}

.nav-tabs .nav-link:focus {
    border-radius: 0.2rem;
}

.nav-tabs .nav-link:hover {
    border-radius: 0.2rem;
}

.nav-tabs .nav-link {
    background-color: white;
    color: black;
}

.nav-tabs .nav-link {
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
  border-bottom-left-radius: var(--bs-nav-tabs-border-radius);
  border-bottom-right-radius: var(--bs-nav-tabs-border-radius);

  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  margin-right: 0px;
}

.nav-tabs {
    display: flex;
    flex-direction: row;
    white-space: nowrap;
}

.nav-item {
    flex-shrink: 0;
}

.nav-link {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0;
    font-family: "temp";
    margin: 0;
}

.navbar {
    display: flex;
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
}

#NavBar::-webkit-scrollbar {
    height: 8px;
}

#NavBar::-webkit-scrollbar-thumb {
    background-color: #BD0404CF;
    border-radius: 10px;
}

#NavBar::-webkit-scrollbar-track {
    background: #f1f1f1;
}

#ArchitectureTab, #ScheduleTab {
    display: flex;
    justify-content: center;
    align-items: center;
}

@keyframes scrollText {
  0% { transform: translateX(0%); }
  100% { transform: translateX(-50%); }
}

.scrolling-text {
  font-family: "dots";   
  display: inline-block;
  animation: scrollText 2800s linear infinite;
}

#DeltaScreen {
  border-radius: 0.25rem;
  border: 1px solid #00000030;
  overflow-x: hidden; 
  overflow-y: hidden; 
  white-space: nowrap;
  display: flex;
  height: 30px;         
}

.architecture-container {
  border-radius: 0.2rem;
  padding: 10px;
  position: relative;
  background-color:rgba(0, 0, 0, 0.05);
}

.architecture-label {
  position: absolute;
  bottom: 0px;
  right: -5px;
  font-size: 14px;
  font-style: italic;
  font-family: "EB Garamond, serif";
}

.aws-container {
  height: 200px;
  padding: 15px;
  margin: 10px;
  border-radius: 0.2rem;
  background-color: rgba(255, 153, 0, 0.5);
  position: relative;
}

.render-container {
  height: 200px;
  padding: 20px;
  margin: 10px;
  border-radius: 0.2rem;
  background-color: rgba(138, 5, 255, 0.5);
  position: relative;
}

.service-label {
  position: absolute;
  bottom: 0px;
  left: 10px;
  font-size: 16px;
  font-style: italic;
  font-family: "EB Garamond, serif";
  color: white;
}

.service-box {
  height: 70px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 0.2rem;
  font-family: "EB Garamond, serif";
  text-align: center;
  background-color: white;
}

.service-title {
  font-weight: bold;
}

.service-desc {
  font-size: 14px;
}

.service-url {
  font-size: 12px;
  font-style: italic;
  color: #8B0000;
}

.render-box {
  height: 153px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 0.2rem;
  font-family: "EB Garamond, serif";
  text-align: center;
  background-color: white;
  transform: translate(0px, -4px);
}

.render-desc {
  font-size: 16px;
  margin-top: 5px;
}

.col-padding-5 {
  padding: 5px;
}

#first-row {
  margin-bottom: 20px;
  border-radius: 0.2rem;
  padding: 10px;
  position: relative;
  background-color:rgba(0, 0, 0, 0.05);
}

#backend-column, #frontend-column {
  height: 100px;
  padding: 20px;
  margin: 10px;
  border-radius: 0.2rem;
  background-color: white;
}

#backend-repo-container, #frontend-repo-container {
  font-family: "EB Garamond", serif;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-align: center;
}

#backend-repo-title, #frontend-repo-title {
  font-weight: bold;
}

#backend-repo-desc, #frontend-repo-desc {
  font-size: 16px;
  margin-top: 5px;
}

#render-container {
  font-family: "EB Garamond", serif;
  height: 100%;
  text-align: center;
}

#FreezeTitle {
  font-size: 12px;
  color: #C22C22;
  margin-top: 10px;
}

.note {
  font-size: 14px;
  color: grey;
  margin-top: -15px;
  margin-bottom: 5px;
  font-style: italic;
}
