@tailwind base;
@tailwind components;
@tailwind utilities;
html,
body {
  min-width: 280px;
  width: 100%;
  height: 100%;
  overflow: auto;
}
.cart-image {
  width: 26px;
  height: 26px;
}
#counts-main-div {
  position: relative;
  margin-right: 1rem;
}
.gap-2 {
  gap: 2rem;
}
.justify-space-between {
  justify-content: space-between;
}
#counts-container {
  display: flex;
  position: absolute;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}

.cart-header-counts {
  background-color: #faa077;
  border-radius: 100%;
  width: 22px;
  position: absolute;
  right: -2.8rem;
  height: 22px;
  font-size: 13px;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

#root {
  width: inherit;
  height: inherit;
}

.main-div {
  width: inherit;
  height: inherit;
}

.logo-searchbar-sign {
  display: flex;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 36px;
  padding-right: 36px;
  justify-content: space-evenly;
  align-items: center;
}

#search-bar-submit {
  outline: none;
  color: #f1641e;
  border: none;
  background-color: transparent;
  position: absolute;
  right: 1vw;
  top: 13%;
  cursor: pointer;
}

#search-bar-form {
  display: flex;
  position: relative;
  margin: 0 2vw 0 2vw;
}

.font-size-lg {
  font-size: 2.5rem;
}

.font-size-md {
  font-size: 2rem;
}

.font-size-sm {
  font-size: 1.5rem;
}
.header {
  padding-bottom: 1rem;
  top: 50px;
  position: sticky;
  margin-bottom: 1.5rem;
  z-index: 9;
  background: white;
}
.header-logo {
  font-family: "Love Ya Like A Sister", cursive;
  color: #f1641e;
  transform: rotate(-5deg);
  transition: transform 0.15s;
}
.header-logo:hover {
  cursor: pointer;
  transform: scale(1.05);
}
.header-logo:active {
  transform: scale(0.9);
}
textarea:focus,
input:focus {
  outline: none;
}

.header-searchbar {
  width: clamp(1rem, 37vw, 60vw);
  height: 43px;
  border: 2.2px solid #f1641e;
  border-radius: 100px;
  padding-left: 15px;
  background-color: white;
}

.greeting-component {
  width: 10%;
}

.show-main-container {
  margin: 0px 5vw 0px 5vw;
}

.margin3 {
  margin: 3rem;
}

.margin6vw {
  margin: 0 6vw 0 6vw;
}

.relative {
  display: relative;
}

.right-2_8 {
  right: -3.1rem;
}

.align-items-center {
  align-items: center;
}
.cart-show-item-container-info {
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
  align-items: flex-start;
  border-bottom: 2px solid #22222220;
  margin-bottom: 13px;
}

@media only screen and (max-width: 675px) {
  .cart-show-item-container-info {
    display: grid;
    grid-template: repeat(4, 25%) / repeat(7, calc(100% / 7));
  }
  .cart-show-item-container {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
  }
  #hello {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    grid-row: 1 / 5;
    grid-column: 1 / 4;
  }

  #cart-item-title {
    grid-row: 1 / 2;
    grid-column: 4 / 7;
  }

  .right-15px {
    right: 15px;
  }
  #cart-item-quantity {
    display: flex;
    margin-top: 1rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    grid-row: 2 / 5;
    grid-column: 4 / 6;
  }

  #cart-item-quantity > button {
    min-width: 80px;
    font-size: 13px;
    background-color: white;
    border: none;
    border-radius: 8px;
  }

  #cart-item-price {
    margin-left: 20px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 150px;
    grid-row: 2 / 5;
    grid-column: 6 / 8;
  }
}

@media only screen and (min-width: 675px) {
  .cart-show-item-container-info {
    display: grid;
    grid-template: repeat(3, 33.3%) / repeat(8, calc(100% / 8));
  }
  .cart-show-item-container {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
  }
  #hello {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    grid-row: 1 / 4;
    grid-column: 1 / 4;
  }

  #cart-item-title {
    grid-row: 1 / 2;
    grid-column: 4 / 6;
  }

  #cart-item-quantity {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    grid-row: 2 / 4;
    grid-column: 4 / 6;
  }

  #cart-item-quantity > button {
    min-width: 80px;
    font-size: 13px;
    background-color: white;
    border: none;
    border-radius: 8px;
  }

  #cart-item-price {
    margin-left: 20px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 150px;
    grid-row: 1 / 4;
    grid-column: 8 / 9;
  }
}
#counts-main-div {
  transition: 0.1s;
}

#counts-main-div:hover {
  cursor: pointer;
  transform: scale(1.1);
}

#counts-main-div:active {
  transform: scale(0.9);
}
#update-cartItem {
  background: none;
  border-radius: 1rem;
}
#update-cartItem:hover {
  cursor: pointer;
  transform: scale(1.05);
  transition: 0.1s;
}
#update-cartItem:active {
  transform: scale(1.05);
  transition: 0.1s;
}

.cart-show-container {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  margin: 0.8rem 4vw 0.8rem 4vw;
}
#cart-show-price {
  height: fit-content;
}
#cart-item-price > p {
  font-weight: bolder;
}

#cart-item-price > h1 {
  color: #a61a2e !important;
}
#cart-item-price > h2 {
  color: #258635 !important;
}

#items-in-your-cart > h1 {
  font-size: 30px;
  font-weight: 100;
}

#items-in-your-cart > p {
  font-weight: bolder;
}

#cart-show-price-div > div {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 2rem;
}
#cart-show-price-div > div:last-child {
  border-top: 2px solid #22222270;
  padding-top: 1rem;
}
#cart-show-price-div > div > h2 {
  height: fit-content;
  padding-bottom: 14px;
}
#cart-show-price-div > div > p {
  padding-bottom: 14px;
}
#cart-show-price {
  box-shadow: 0 4px 20px rgba(34, 34, 34, 0.15);
  border-radius: 18px;
  padding: 20px 12px 20px 12px;
  margin-left: 20px;
}

@media only screen and (min-width: 1000px) {
  #cart-items-and-total {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    margin-left: 20px;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 1000px) {
  #cart-items-and-total {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    margin-left: 20px;
    margin-top: 20px;
  }
  #hello {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
}

#items-in-your-cart {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 0px 36px 0px 36px;
}
#cart-item-description {
  padding: 0px 15px 0px 15px;
  text-decoration: none;
  color: #222222;
  display: flex;
  gap: 0.2rem;
  width: 300px;
  height: 95px;
  flex-direction: column;
}

#cart-item-quantity {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#cart-item-quantity > button {
  min-width: 80px;
  font-size: 13px;
  background-color: white;
  border: none;
  border-radius: 8px;
}

.cart-show-image-thumnails {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  text-decoration: none;
  color: #222222;
  margin-bottom: 17px;
  text-overflow: ellipsis;
}
.cart-show-image-thumnail {
  width: 300px;
  height: 200px;
  border-radius: 10px;
  margin: 0px 14px 0px 14px;
  object-fit: cover;
  border: 1px solid #22222260;
}
.update-quantity-input {
  border-radius: 0.2rem;
  border: 0.5px solid;
  width: 2.5rem;
}
#quantity-update-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
  align-items: center;
}
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

body {
  font-family: "Recursive", sans-serif;
  font-weight: bold;
}
body {
  font-family: "Recursive", sans-serif;
  font-weight: bold;
}

.or {
  padding-left: 5px;
  padding-right: 5px;
}

.signup,
.log-button {
  padding: 0;
  background: none;
  /* color: inherit; */
  border: none;
  font: inherit;
  cursor: pointer;
  outline: inherit;
  width: clamp(75px, 100px, 150px);
  padding: 0.5rem 1rem 0.5rem 1rem;
  transition: 0.15s;
  border-bottom-style: solid;
  border-bottom-width: 1px;

  background-color: #565656; /* dark gray */
  color: white;
  /* padding: 4px 13px; */
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  border-radius: 15px;
}

.signup:hover,
.log-button:hover {
  cursor: pointer;
  font-weight: bold;
  transform: scale(1.025);
}
/* .signup:active,
.log-button:active {
  transform: scale(1);
} */
.products-index-container {
  background-color: #ddebe3;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  align-items: center;
  padding-left: 36px;
  padding-right: 36px;
  /* box-sizing: content-box; */
}
.custom-shape-divider-top-1669523967 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    z-index: -56;
    line-height: 0;
}

.custom-shape-divider-top-1669523967 svg {
    position: relative;
    display: block;
    width: calc(115% + 1.3px);
    height: 115px;
}

.custom-shape-divider-top-1669523967 .shape-fill {
    fill: #DDEBE3;
}

.index-container-logo {
  font-size: 33px;
  font-weight: 100;
  padding-top: 27px;
}

.best-selling-items {
  font-size: 20px;
  font-weight: bold;
  padding-top: 18px;
}

.products-index-container-ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  margin-bottom: 30px;
}

img {
  max-width: 100%;
  max-height: 100%;
}

element.style {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
/* 
.products-hot-items{

    width: 14vmax;
    height: 12vmax;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    text-overflow: ellipsis;
}
 */

.products-hot-items a {
  text-decoration: none;
  text-align: center;
}

.products-hot-items {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

.products-hot-items a span {
  color: #222222;
  width: 14vmax;
}
.products-hot-items a img {
  flex-grow: 1;
}

.hot-items-image-thumnails {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-overflow: ellipsis;
}
.hot-items-image-thumnail {
  width: 12vmax;
  height: 12vmax;
  border-radius: 50%;
  margin: 10px;
  transition: .2s;
  object-fit: cover;
}
.hot-items-image-thumnail-lg {
  width: 25vmax;
  height: 25vmax;
  transition: .2s;
  border-radius: 50%;
  margin: 10px;
  object-fit: cover;
}

.thumnail-p {
  text-decoration: none;
}

.hot-items-image-thumnail > p {
  text-decoration: none;
  display: inline-block;
}

.shadow-bottom {
  box-shadow: #22222230 0px 10px 10px -10px;
}

#thumnail-span:hover {
  transform: scale(1.05);
  transition: 0.1s;
}

a {
  text-decoration: none;
  color: #22222290;
  cursor: pointer;
}

.link:hover {
  transition: 0.1s;
  transform: scale(1.05);
  text-decoration:underline;
}
.modal-background {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 10;
  /* animation: fade-in 0.2s ease-in-out; */
  /* opacity:0 */
}

.fade-in {
  animation: fade-in 0.2s ease-in-out;
}

.fade-out {
  animation: fade-out 3.2s ease-in-out;
}

.modal-child {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /* height: 500px; */
  width: 400px;
  display: flex;
  justify-content: center;
  align-items: center;
  /* animation: slide-from-right 0.2s ease-in-out; */
}

@keyframes slide-from-right {
  0% {
    transform: translate(100%, 0%);
  }
  100% {
    transform: translate(0%, 0%);
  }
}

@keyframes slide-to-right {
  0% {
    transform: translate(0%, 0%);
  }
  100% {
    transform: translate(100%, 0%);
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.nav-horizontal {
  display: flex;
  justify-content: space-evenly;
  margin: 0.3rem 0 0.3rem 0;
  padding: 0px 5vw 0px 5vw;
  font-size: 1.2rem;
}

.nav-item {
  padding: 8px 12px 8px 12px;
  text-align: center;

  font-weight: 100;
}

.nav-vertical {
  width: 210px;
  margin-left: 0.5rem;
  display: flex;
  gap: 0.5rem;
  flex-direction: column;
  justify-content: space-evenly;
  position: absolute;
  background: white;
  padding: 1rem;
  border-radius: 1rem;
  right: 1vw;
  box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
  z-index: 9999;
}

.menu-bar-background {
  position: fixed;
  z-index: 9999;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.nav-bar-tag {
  transition: transform 0.2s;
  text-align: center;
  margin: 0.2rem;
  padding: 0 0.2rem 0 0.2rem;
}

.nav-bar-tag:hover {
  box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px,
    rgba(0, 0, 0, 0.22) 0px 15px 12px;
  transform: scale(1.1);
  background-color: #22222205;
  font-size: 1.2rem;
  border-radius: 0.5rem;
}

.right-1vw {
  right: 1vw;
}

.right-1rem {
  right: 1rem;
}

.right-2rem {
  right: -2rem;
}
.right-2vw {
  right: 2vw;
}
.top-3_5 {
  top: 3.5rem;
}

.nav-vertical > a,
.nav-horizontal > a {
  text-decoration: none;
  color: #222222;
}

.menu-bar-container {
  position: relative;
}
.picks-for-you {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  align-items: center;
}

.picks-for-you > p {
  padding-top: 30px;
  font-size: 37px;
}
.recently-view-item {
  object-fit: contain;
  border-radius: 30px;
}

.recently-viewed-container > p {
  font-size: 19px;
}
#recently-words {
  display: flex;
  justify-content: space-between;
}

#recently-words p {
  padding: 5px 36px 10px 36px;
}
#show-more-from {
  font-size: 12px;
}

.recently-view-item > span > a {
  font-size: 15px;
  color: #258635 !important;
  font-weight: bold;
  text-decoration: none;
}

.remove-button {
  color: rgb(170, 21, 21);
  border: none;
  font-size: 13px;
  background-color: transparent;
  padding: 4px 8px 4px 8px;
  transition: 0.1s;
}

.remove-button:hover {
  cursor: pointer;
  transform: scale(1.1);
}

.remove-button:active {
  transform: scale(0.95);
}

.recently-view-item link img {
  display: block;
  margin-top: auto;
  margin-bottom: auto;
  width: 250px;

  height: 180px;
}

.recently-view-item a span {
  position: absolute;
  top: -39px;
  right: 19px;
  background-color: rgb(245, 245, 245);
  border-radius: 15px;
  border: 0.6px #258635;
  color: #258635;
  display: inline-block;
  word-break: break-word;
  line-height: 1;
  font-size: 13px;
  font-weight: normal;
  padding-top: 6px;
  padding-bottom: 6px;
  padding-left: 9px;
  padding-right: 9px;
  min-width: 25px;
}

#recently-view-item {
  display: flex;
  flex-direction: row;
  font-size: 15px;
  color: #258635 !important;
  font-weight: bold;
  width: 270px;
  height: 230px;
  object-fit: contain;
  border-radius: 30px;
  margin-bottom: 50px;
  text-decoration: none;
}
#recently-view-item a img {
  width: 350px;
  height: 350px;
  border-radius: 20px;
  object-fit: cover;
  border: 1px solid #22222240;
  transition: 0.2s;
}

#recently-view-item link img {
  display: block;
  margin-top: auto;
  margin-bottom: auto;
}

.nav-container {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-bottom: 10px;
}

.nav-container > a {
  text-decoration: none;
  color: black;
  border-radius: 1rem;
  line-height: 1.2;
  font-size: 1.2rem;
  transition: 0.2sec;
}

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

.nav-container > a:hover {
  box-shadow: #22222280 -2px 14px 13px -10px;
  transform: scale(1.1);
  font-weight: bold;
}
.nav-static {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  gap: 1.5rem;
  margin: 0 4vw 0 4vw;
}

.recently-view-image {
  text-decoration: none;
  font-weight: bolder;
  position: relative;
  transition: 0.2s;
}

#recently-view-item a span {
  display: flex;
  flex-direction: column;
  /* position: absolute; */
  /* background-color: rgb(245, 245, 245); */
  /* border-radius: 15px; */
  /* border: .6px #258635; */
  color: #222222;
  word-break: break-word;
  line-height: 1;
  font-weight: bold;
  font-size: 14px;
  font-weight: bold;
  padding-top: 3px;
  padding-bottom: 3px;
  padding-left: 9px;
  padding-right: 9px;
  min-width: 25px;
}
#recently-view-item a span:hover {
  transform: scale(1.05);
  transition: 0.1s;
}

.recently-view-item link img {
  display: block;
  margin-top: auto;
  margin-bottom: auto;
  width: 250px;
  height: 180px;
}

.recently-viewed-container {
  padding: 12px 36px 12px 36px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
  align-items: center;
  gap: 0.5rem;
}

.recently-viewed-items {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
}

.recently-viewed-items li img {
  width: 300px;
  height: 300px;
  border-radius: 20px;
  transition: .2s;
  object-fit: cover;
  border: 1px solid #22222240;
}

.hover-enlarge {
  transform: scale(1.1);
  transition: 0.15s;
}

.recently-viewed-items li img:active {
  transform: scale(1);
}
/* session form submit buttons styling */
.session-form-buttons {
  /* width: 100%px; */
  margin-bottom: 1%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  flex-direction: column;
  box-sizing: inherit;
  width: inherit;
}
.session-container {
  background-color: white;
  border-radius: 24px;
  box-sizing: border-box;
  border: #565656;
  box-shadow: 1px 5px 5px rgb(104, 102, 102);
  padding: 20px;
  /* padding-bottom: 40px; */
  width: 350px;
  /* height: 410px; */
}

.session-form-submit {
  background-color: #565656; /* dark gray */
  border: none;
  color: white;

  text-align: center;
  text-decoration: none;
  display: inline-block;
  width: 100%;
  height: 38px;
  border-radius: 24px;
  font-size: 13px;
  box-shadow: 3px 3px 3px rgb(99, 96, 91);
}

.demo-button {
  background-color: #565656; /* dark gray */
  border: none;
  color: white;
  text-align: center;
  border-radius: 24px;
  text-decoration: none;
  width: 100%;
  height: 38px;
  margin: 7px;
  display: inline-block;
  font-size: 13px;
  box-shadow: 3px 3px 3px rgb(99, 96, 91);
}
.session-forms {
  height: 390px;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}

#session-forms:focus {
  border: 2px solid #c09f80;
}
#session-forms {
  padding-top: 9px;
  padding-bottom: 9px;
  padding-right: 12px;
  padding-left: 12px;
  border-width: 1px;
  width: 90%;
  height: inherit;
  font-size: 14px;
  outline: none;
  display: inline-table;
  border-radius: 6px;
  border-color: #565656;
}

.session-form-submit {
  transition: 0.15s;
}

.session-form-submit:hover {
  cursor: pointer;
  box-shadow: 2px 2px 2px rgb(121, 119, 117);
  transform: scale(1.1);
}

.session-form-submit:active {
  transform: scale(1);
}

.menu-bar-logout-container {
  border-top: 2px solid #22222260;
  padding-top: 0.6rem;
}

.logout-button:hover {
  cursor: pointer;
  transform: scale(1.1);
}
.logout-button:active {
  transform: scale(1);
}

.input-sections {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  gap: 1rem;
}

/* messages */

.form-type-message {
  font-size: 1rem;
  font-weight: bold;
  color: #c09f80;
}

.furnitsy-logo {
  top: 5px;
  font-size: 1rem;
  font-weight: bold;
  color: #c09f80;
}

/* error styling */

.errors-container {
  display: flex;
  width: 100%;
  color: red;
}
.error {
  font-size: 11px;
  margin: 4px;
  width: inherit;
}

/* x-closing button */
.x-closing-button {
  position: absolute;
  top: -45px;
  right: 32px;
  font-size: 30px;
  line-height: 2;
  color: white;
  text-decoration: none;
}

.x-closing-button:hover {
  cursor: pointer;
  color: red;
  transform: scale(1.1);
  transition: 0.15s;
}
.x-closing-button:active {
  transform: scale(1);
}

.labels {
  font-size: 1rem;
}

.button {
  background-color: #565656; /* dark gray */
  border: none;
  color: white;
  text-align: center;
  border-radius: 24px;
  text-decoration: none;
  width: 100%;
  height: 38px;
  margin: 7px;
  display: inline-block;
  font-size: 13px;
  box-shadow: 3px 3px 3px rgb(99, 96, 91);
  transition: 0.15s;
}
.button:hover {
  cursor: pointer;
  box-shadow: 2px 2px 2px rgb(121, 119, 117);
  transform: scale(1.1);
}

.button:active {
  transform: scale(1);
}

.form-row {

}
.quantity-container {
  position: relative;
  height: 4rem;
}

.quantity-container > label {
  position: absolute;
  left: 0rem;
  font-size: 0.8rem;
}

#show-quantity {
  position: absolute;
  top: 1rem;
  box-shadow: 0 1px 6px 0 rgba(34, 34, 34, 0.15);
  display: flex;
  font-family: inherit;
  font-size: 17px;
  height: 48px;
  padding: 0.5rem;
  border-radius: 6px;
  background: #ffffff;
  border-color: rgba(34, 34, 34, 0.15);
  color: #222222;
  text-overflow: "";
  cursor: pointer;
}

#add-to-cart {
  min-width: 190px;
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(60% - 2em);
  height: 44px;
  background-color: #222222;
  border-radius: 30px;
  color: white;
  font-size: 17px;
  transition: 0.15s;
  cursor: pointer;
}

#add-to-cart-container {
  width: 100%;
  height: 44px;
}

@media only screen and (max-width: 340px) {
  #price-container {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    align-items: center;
  }
}

@media only screen and (min-width: 340px) {
  #price-container {
    display: flex;
    flex-direction: row;
    gap: 5rem;
    align-items: center;
  }
}

.gap-05 {
  gap: 0.5rem;
}
.gap-1 {
  gap: 1rem;
}

.gap-5 {
  gap: 5rem;
}

.show-price {
  font-size: 25px;
  font-weight: bolder;
}

#price-svg {
  width: 18px;
  height: 18px;
}
#price-in-stock {
  font-size: 14px;
  margin-left: 2px;
  color: green;
}

@media only screen and (max-width: 450px) {
  .product-show-container {
    display: flex;
    flex-direction: column;
  }
}

@media only screen and (max-width: 850px) {
  .product-show-container {
    display: flex;
    flex-direction: column;
  }
  .product-show-container > div:nth-child(2) {
    margin-top: 2rem;
    order: 3;
  }

  .cart-image {
    width: 2rem !important;
    max-width: 3rem;
  }
}

@media only screen and (min-width: 850px) {
  .product-show-container {
    display: grid;
    grid-template-columns: 51vh 1fr;
    grid-template-rows: repeat(auto-fill, 380px);
    column-gap: 2rem;
  }

  .product-show-container > div:nth-child(1) {
    grid-row: 1;
    grid-column: 1;
  }
  .product-show-container > div:nth-child(2) {
    grid-row: 0 / 1;
    grid-column: 1;
  }
  .product-show-container > div:nth-child(3) {
    grid-row: 1 / 3;
    grid-column: 2;
  }
}

@media only screen and (min-width: 1400px) {
  .product-show-container {
    display: grid;
    grid-template-columns: 700px 1fr;
    grid-template-rows: "max(420px, 26vw) 1fr";
    column-gap: 2rem;
  }

  .product-show-container > div:nth-child(1) {
    grid-row: 1;
    grid-column: 1;
  }
  .product-show-container > div:nth-child(2) {
    grid-row: 0 / 1;
    grid-column: 1;
  }
  .product-show-container > div:nth-child(3) {
    grid-row: 1 / 3;
    grid-column: 2;
  }
}
.product-show-picture-container-inner {
  width: clamp(200px, 100%, "max(500px, 33vw)");
  display: grid;
  grid-template: repeat(6, 1fr) / repeat(6, 1fr);
}

.svg-button {
  border-radius: 50%;
  border: none;
  background-color: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
}

.svg-button svg {
  background-color: #ffffff30;
  border-radius: 10rem;
}

.main-picture-container > .svg-button > svg {
  color: #7b7a7a;
  width: 34px;
  transition: 0.15s;
  height: 34px;
}

.main-picture-container > .svg-button > svg:hover {
  background-color: rgba(237, 231, 231, 0.351);
  transform: scale(1.2);
}

#right-svg-button {
  position: absolute;
  right: 1%;
  top: 47%;
  cursor: pointer;
}

#left-svg-button {
  position: absolute;
  left: 1%;
  z-index: 2;
  top: 47%;
  cursor: pointer;
}

#show-page-footer {
  background-image: url(https://furnitsy-furniture-images.s3.us-east-2.amazonaws.com/show_page_background.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  width: 100%;
  height: 300px;
  margin-top: 10px;
  object-fit: cover;
  display: flex;
  flex-direction: column;

  align-items: center;
  padding: 12px 36px 12px 36px;
}

#footer-1st-p {
  margin-top: 50px;
}
#show-page-footer :nth-child(3) {
  margin-top: 100px;
  color: white;
  text-decoration-style: dotted;
  font-size: 14px;
}
#show-page-footer form input {
  /* border: 1px solid #222222; */
  outline: none;
  border: none;
  border-radius: 30px;
  width: 300px;
  font-size: 20px;
  /* margin: 10px 0 36px 0; */
  padding: 12px 20px 12px 20px;
  border: 1px solid #22222260;

  color: #222222;
  background-color: white;
}

.picture-container-main {
  border-radius: 0.5rem;
  margin: 0 auto 0 auto;
}

.nav-menu {
  background: white;
  color: #f1641e;
  border-color: #f1641e;
  border-radius: 0.3rem;
}
@media only screen and (max-width: 450px) {
  .main-picture-container {
    grid-row: 1 / 6;
    grid-column: 1 / 7;
    position: relative;
    display: block;
    object-fit: contain;
    margin: auto;
  }
  .picture-container-list {
    grid-row: 6 / 7;
    grid-column: 1 / 7;
    margin-right: 1rem;
    overflow: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  .picture-container-list-item {
    min-width: 100px;
    width: 95%;
    border: 5px rgb(139, 129, 129);
    border-radius: 8px !important;
    padding: -1px;
    transition: 0.1s;
  }
}

@media only screen and (min-width: 450px) {
  .main-picture-container {
    grid-row: 1 / 7;
    grid-column: 2 / 7;
    position: relative;
    display: block;
    object-fit: contain;
    margin: auto;
    height: 100%;
  }
  .picture-container-list {
    grid-row: 1 / 7;
    grid-column: 1;
    height: 24rem;
    margin-right: 1rem;
    overflow: auto;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .picture-container-list-item {
    min-width: 100px;
    width: 95%;
    height: 80%;
    border: 5px rgb(139, 129, 129);
    border-radius: 8px !important;
    padding: -1px;
    transition: 0.15s;
  }
}

.picture-container-list-item:hover {
  cursor: pointer;
  border: 1px solid #22222260;
  border-radius: 18px !important;
  transform: scale(1.1);
}
.picture-container-list-item:active {
  transform: scale(1);
}

.picture-container-list-item-container {
  border: 1px rgb(153, 153, 153);
}

@media screen and (max-device-width: 640px), screen and (max-width: 640px) {
  .product-show-info {
    /* width: 30%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding-top: 20px; */
  }
}

.product-show-info > * {
  padding-top: 20px;
  font-size: 18px;
}

.highlight-item {
  padding: 5px;
  font-size: 18px;
  line-height: 1.6;
}

.text-align-center {
  text-align: center;
}
.flex-col {
  flex-direction: column;
}
.flex-center-center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.margin-top-1 {
  margin-top: 1rem;
}
.margin-top-05 {
  margin-top: 0.5rem;
}
.flex {
  display: flex;
}

.justify-center {
  justify-content: center;
}

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

.show-description {
  line-height: 1.6;
  font-size: 18px;
  border: 1rem;
}

.description {
  width: 100%;
  /* background-color: #22222220; */
  border-radius: 2rem;
  height: 40px;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 3px;
  border-bottom: 4px solid #22222220;
}

.buttons {
  width: 100%;
  height: 40px;
  font-size: 18px;
  font-weight: 100;
  letter-spacing: 3px;
  outline: none;
  border: none;
  background-color: white;
  transition: 0.1s;
}

.buttons:hover {
  background-color: rgb(244, 244, 244);
  cursor: pointer;
  border-radius: 15px;
  transform: scale(1.1);
  border: 0.2px rgb(179, 179, 179);
}
.buttons:active {
  transform: scale(1);
}

.highlights-button {
  width: 100%;
  height: 40px;
  font-size: 18px;
  font-weight: 100;
  letter-spacing: 3px;
  outline: none;
  border: none;
  background-color: white;
  transition: 0.1s;
}
.highlights-button:hover {
  background-color: rgb(244, 244, 244);
  cursor: pointer;
  border-radius: 15px;
  transform: scale(1.1);
  border: 0.2px rgb(179, 179, 179);
}
.highlights-button:active {
  transform: scale(1);
}


#add-to-cart:hover {
  transform: scale(1.05);
}

#add-to-cart:active {
  transform: scale(1);
}

/* rating! */
.rating {
  float: left;
  height: 46px;
}
.rating:not(:checked) > input {
  position: absolute;
  top: -9999px;
}
.rating:not(:checked) > label {
  float: right;
  width: 1em;
  overflow: hidden;
  white-space: nowrap;
  cursor: pointer;
  font-size: 30px;
  color: #ccc;
}
.rating:not(:checked) > label:before {
  content: "★ ";
}
#review-submit {
  position: relative;
  left: 50%;
  margin-top: 20px;
  width: 50%;
  height: 44px;
  background-color: black;
  border-radius: 30px;
  color: white;
  font-size: 17px;
  cursor: pointer;
  transition: 0.1s;
}
#review-submit:hover {
  transform: scale(1.025);
}
#review-login {
  padding: 5px 8px 5px 8px;
  border-radius: 2rem;
  transition: 0.1s;
}
#review-login:hover {
  cursor: pointer;
  transform: scale(1.1);
}
#review-login:active {
  transform: scale(0.9);
}

.rating > input:checked ~ label {
  color: #ffc700;
}
.rating:not(:checked) > label:hover,
.rating:not(:checked) > label:hover ~ label {
  color: #deb217;
}
.rating > input:checked + label:hover,
.rating > input:checked + label:hover ~ label,
.rating > input:checked ~ label:hover,
.rating > input:checked ~ label:hover ~ label,
.rating > label:hover ~ input:checked ~ label {
  color: #c59b08;
}

.rating {
  display: flex;
  justify-content: flex-end;
  flex-direction: row-reverse;
}

#reviews-main-container {
  margin-top: 4rem;
  display: flex;
  flex-direction: column;
}

#create-review {
  display: flex;
  flex-direction: column;
}

#create-review > h1,
#create-review > h3 {
  margin: 10px 0px 7px 0px;
  font-size: 20px;
}

#create-review-form {
  display: flex;
  flex-direction: column;
}

#create-review-form-input {
  padding-top: 10px;
  height: 200px;
  -webkit-appearance: none;
  -ms-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: 0 1px 6px 0 rgba(34, 34, 34, 0.15);
  font-family: inherit;
  font-size: 15px;
  padding-left: 12px;
  padding-right: 12px;
  border-radius: 6px;
  background: #ffffff;
  border-color: rgba(34, 34, 34, 0.15);
  border-style: solid;
  border-width: 1px;
  color: #222222;
  text-indent: 0.01px;
}

#reviews {
  margin-top: 10px;
  margin-bottom: 25px;
}
#reviews * {
  margin-top: 3px;
}

#create-review-reviews {
  margin-top: 20px;
  display: flex;
  justify-content: flex-start;
}

#create-review p {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 2px solid #22222220;
}

#create-review-reviews h1 {
  font-size: 25px;
  position: relative;
  top: -1px;
}

#create-review-reviews h2 {
  margin-left: 15px;
}

#reviews h2 {
  font-size: 20px;
}

#delete-review {
  outline: none;
  border: none;
  background-color: white;
  margin-left: 20px;
  margin-top: 0;
  padding: 0%;
}
#delete-review:hover {
  cursor: pointer;
  background-color: #22222220;
}

.totalRating {
  height: 46px;
}
.totalRating:not(:checked) > input {
  position: absolute;
  top: -9999px;
}
.totalRating:not(:checked) > label {
  float: right;
  width: 1em;
  overflow: hidden;
  white-space: nowrap;
  font-size: 25px;
  color: #ccc;
  pointer-events: none;
}
.totalRating:not(:checked) > label:before {
  content: "★ ";
}

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

#reviews section {
  display: flex;
  flex-direction: row;
  position: relative;
  top: 26px;
  font-size: 12px;
}

#reviews section h4 {
  margin-left: 10px;
}

#reviews section h3 {
  text-decoration: underline;
}
.what_is_furnitsy {
  width: 100%;
  margin-top: 30px;
  object-fit: cover;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.custom-shape-divider-bottom-1669524354 {
  z-index: -5;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.custom-shape-divider-bottom-1669524354 svg {
  position: relative;
  display: block;
  width: calc(115% + 1.3px);
  height: 413px;
}

.custom-shape-divider-bottom-1669524354 .shape-fill {
  fill: #eeb16155;
}

#what_is_furnitsy_inner-horizontal {
  display: grid;
  grid-template-rows: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  padding: 2rem 1rem 2rem 1rem;
}
#what_is_furnitsy_inner-vertical {
  display: grid;
  grid-template-rows: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  padding: 2rem 6vw 2rem 6vw;
}

#what_is_furnitsy_inner-horizontal #furnitsy_inner_div:nth-child(1) {
  grid-row: 1;
  grid-column: 1 / 4;
}
#what_is_furnitsy_inner-horizontal #furnitsy_inner_div:nth-child(2) {
  grid-row: 2;
  grid-column: 1 / 4;
}
#what_is_furnitsy_inner-horizontal #furnitsy_inner_div:nth-child(3) {
  grid-row: 3;
  grid-column: 1 / 4;
}

#what_is_furnitsy_inner-vertical #furnitsy_inner_div:nth-child(1) {
  grid-row: 1 / 4;
  grid-column: 1;
}
#what_is_furnitsy_inner-vertical #furnitsy_inner_div:nth-child(2) {
  grid-row: 1 / 4;
  grid-column: 2;
}
#what_is_furnitsy_inner-vertical #furnitsy_inner_div:nth-child(3) {
  grid-row: 1 / 4;
  grid-column: 3;
}

/* #furnitsy_inner_div {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;

  width: 26%;
  text-align: center;
} */

#furnitsy_inner_div p {
  padding-top: 13px;
}

.what_is_furnitsy h1 {
  font-size: 38px;
  padding-top: 20px;
}

.what_is_furnitsy h2 {
  font-size: 25px;
}
.what_is_furnitsy p {
  font-size: 17px;
}

#contact-me {
  padding-top: 30px;
  display: flex;
  flex-direction: column;
  text-align: center;
}

#contact-me h3 {
  font-size: 30px;
  font-weight: bolder;
  padding-bottom: 13px;
}

.submit_to_email {
  outline: none;
  border: none;
  border-radius: 15px;
  font-size: 20px;
  padding: 6px 9px 6px 9px;
  margin-bottom: 36px;
  margin-top: 10px;
  color: #222222;
  background-color: #eeb161;
  transition: 0.15s;
}

.submit_to_email:hover {
  cursor: pointer;
  background-color: #f37c40;
  color: #e9dac7;
  transform: scale(1.1);

}
.submit_to_email:active {
  transform: scale(1);
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */

/* main font Family */
/*













 */
.about-photo {
  border-radius: 10px;
  width: 100%;
  max-height: 420px;
  object-fit: cover;
  object-position: top;
}

.resume-content { margin-top: 40px; }

/* Same bullet-restoration issue as the project detail pages (a reset
   bundled elsewhere via require_tree sets list-style:none globally). */
.resume-content ul {
  list-style: disc;
  padding-left: 1.5em;
  margin-bottom: 15px;
}
.resume-content li { list-style: inherit; }

.resume-contact { margin-bottom: 30px; }

.resume-tags { margin-bottom: 20px; }
.resume-tag {
  display: inline-block;
  border: 1px solid #000;
  border-radius: 20px;
  padding: 3px 12px;
  margin: 0 6px 8px 0;
  font-size: 12px;
}

.resume-job-title { margin-bottom: 2px; }
.resume-job-subtitle {
  color: #999;
  margin-bottom: 6px;
}
.resume-tech-line {
  font-style: italic;
  color: #999;
  font-size: 12.5px;
  margin-bottom: 10px;
}
.contact-list {
  list-style: none;
  padding: 0;
  margin: 30px 0 0;
  display: inline-block;
  text-align: left;
}
.contact-list li {
  display: flex;
  align-items: baseline;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid #eee;
  font-size: 15px;
}
.contact-list li:last-child { border-bottom: none; }

.contact-label {
  font-weight: 700;
  width: 90px;
  flex-shrink: 0;
}
/* Dark mode overrides for the main portfolio pages (home/projects/about/contact).
   Everything here is additive and scoped under html.dark-mode — light mode
   (the default, no class) is completely untouched. */

html.dark-mode body {
  background-color: #121212;
  color: #e6e6e6;
}

html.dark-mode h1,
html.dark-mode h2,
html.dark-mode h3,
html.dark-mode h4,
html.dark-mode h5,
html.dark-mode h6 {
  color: #f2f2f2;
}

html.dark-mode a {
  color: #7aa2ff;
}
html.dark-mode a:hover,
html.dark-mode a:focus {
  color: #a8c4ff;
}

html.dark-mode .project-section-heading {
  border-left-color: #e6e6e6;
  border-right-color: #e6e6e6;
}

/* Cards (project listing/detail, resume) */
html.dark-mode .card-container {
  background-color: #1c1c1e;
  color: #e6e6e6;
  box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.6);
}

html.dark-mode .btn-default {
  color: #e6e6e6;
  border-color: #e6e6e6;
  background-color: transparent;
}
html.dark-mode .btn-default:hover,
html.dark-mode .btn-default:focus {
  background-color: #e6e6e6;
  color: #121212;
}

html.dark-mode .project-live-link {
  color: #7aa2ff;
  border-bottom-color: #7aa2ff;
}
html.dark-mode .project-live-link:hover,
html.dark-mode .project-live-link:focus {
  color: #a8c4ff;
  border-bottom-color: #a8c4ff;
}

html.dark-mode .project-image-placeholder {
  background: repeating-linear-gradient(45deg, #1c1c1c, #1c1c1c 12px, #262626 12px, #262626 24px);
  color: #888;
}

/* About page */
html.dark-mode .resume-tag {
  border-color: #e6e6e6;
  color: #e6e6e6;
}
html.dark-mode .resume-job-subtitle,
html.dark-mode .resume-tech-line {
  color: #aaa;
}

/* Contact page */
html.dark-mode .contact-list li {
  border-bottom-color: #333;
}

/* Nav: white in light mode (the default, see portfolio_home.css) so toggling
   dark mode is obviously visible even at the very top of the page. */
html.dark-mode .site-navbar.navbar-inverse {
  background-color: #1a1a1a;
  border-color: #2a2a2a;
}
html.dark-mode .site-navbar.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}
html.dark-mode .site-navbar.navbar-inverse .navbar-nav > li > a:hover,
html.dark-mode .site-navbar.navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: #262626;
}
html.dark-mode .site-navbar.navbar-inverse .navbar-nav > .active > a,
html.dark-mode .site-navbar.navbar-inverse .navbar-nav > .active > a:hover,
html.dark-mode .site-navbar.navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #262626;
}
html.dark-mode .site-navbar.navbar-inverse .navbar-toggle { border-color: #9d9d9d; }
html.dark-mode .site-navbar.navbar-inverse .navbar-toggle .icon-bar { background-color: #e6e6e6; }

html.dark-mode .theme-toggle { border-color: #9d9d9d; }
html.dark-mode .theme-toggle:hover,
html.dark-mode .theme-toggle:focus { background-color: rgba(255, 255, 255, 0.1); }
html.dark-mode .theme-toggle-icon { color: #e6e6e6; }

/* Nav theme toggle button: a proper circular icon button rather than bare text. */
.theme-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 7px 15px;
  padding: 0;
  border-radius: 50%;
  border: 1.5px solid #333;
  background: none;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}
.theme-toggle:hover,
.theme-toggle:focus {
  background-color: rgba(0, 0, 0, 0.06);
  outline: none;
  transform: scale(1.06);
}
.theme-toggle:active { transform: scale(0.94); }

.theme-toggle-icon {
  width: 18px;
  height: 18px;
  color: #333;
}

/* Only one icon shows at a time. */
.theme-toggle .sun-icon { display: none; }
html.dark-mode .theme-toggle .moon-icon { display: none; }
html.dark-mode .theme-toggle .sun-icon { display: block; }
/* Site border decorations */
#site-border-bottom, #site-border-left, #site-border-right, #site-border-top {
  background: #000;
  position: fixed;
  z-index: 1;
}
#site-border-left, #site-border-right {
  top: 0;
  bottom: 0;
  width: 10px;
}
#site-border-left { left: 0; }
#site-border-right { right: 0; }
#site-border-bottom, #site-border-top {
  left: 0;
  right: 0;
  height: 10px;
}
#site-border-top { top: 0; }
#site-border-bottom { bottom: 0; }

/* Furnitsy's own CSS (bundled into this same file via require_tree) sets
   html/body to height:100%; overflow:auto for its own SPA — that makes body
   its own internal scroll container on every page instead of the normal
   page/viewport scroll. Restore normal scrolling on the portfolio layout. */
body.minimal {
  border: none;
  padding: 0;
  height: auto;
  overflow: visible;
}

/* Typography (matches the original portfolio template).
   Explicit sizes/margins here because Furnitsy's CSS reset (bundled into this
   same file via require_tree) sets font-size:inherit on every heading. */
body {
  font-family: "Roboto Mono", Helvetica, Arial, sans-serif;
}
.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6 {
  font-family: "Roboto Mono", Helvetica, Arial, sans-serif;
  font-weight: 700;
  margin-top: 20px;
  margin-bottom: 10px;
}
.h1, h1 { font-size: 36px; }
.h2, h2 { font-size: 30px; }
.h3, h3 { font-size: 24px; }
.h4, h4 { font-size: 18px; }
.h5, h5 { font-size: 14px; }
.h6, h6 { font-size: 12px; }

/* Hero section */
.hero-full-container { height: 100vh; }
.hero-full-container h1 {
  font-family: Roboto, Helvetica, Arial, sans-serif;
  font-weight: 900;
}
.hero-full-container .hero-full-wrapper {
  display: table;
  width: 100%;
  height: 100vh;
  min-height: 100vh;
}
.hero-full-container .hero-full-wrapper .text-content {
  vertical-align: middle;
  display: table-cell;
}

/* Background image container */
.background-image-container {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
}

/* White text overlay */
.white-text-container h1,
.white-text-container h2,
.white-text-container h3,
.white-text-container h4,
.white-text-container h5,
.white-text-container p {
  text-shadow: 0 1px 3px #000;
  color: #fff;
}
.white-text-container a { color: #fff; }

/* The typed.js strings render inside #typed/#typed-strings spans. A universal
   `* { color }` reset bundled elsewhere in this asset pipeline (via
   require_tree) directly targets those spans and wins over the inherited
   white from .white-text-container h1 above, since a directly-matching rule
   always beats an inherited value regardless of specificity. */
.white-text-container #typed,
.white-text-container #typed-strings,
.white-text-container #typed-strings span {
  color: #fff;
}

/* Nav: white by default (light mode) instead of Bootstrap's default dark
   navbar-inverse, so toggling dark mode is visible right at the top of the
   page. Dark-mode override lives in portfolio_dark_mode.css. */
.site-navbar.navbar-inverse {
  background-color: #fff;
  border-color: #eee;
}
.site-navbar.navbar-inverse .navbar-nav > li > a {
  color: #333;
}
.site-navbar.navbar-inverse .navbar-nav > li > a:hover,
.site-navbar.navbar-inverse .navbar-nav > li > a:focus {
  color: #000;
  background-color: #f5f5f5;
}
.site-navbar.navbar-inverse .navbar-nav > .active > a,
.site-navbar.navbar-inverse .navbar-nav > .active > a:hover,
.site-navbar.navbar-inverse .navbar-nav > .active > a:focus {
  color: #000;
  background-color: #f0f0f0;
}
.site-navbar.navbar-inverse .navbar-toggle { border-color: #333; }
.site-navbar.navbar-inverse .navbar-toggle .icon-bar { background-color: #333; }
.site-navbar.navbar-inverse .navbar-toggle:hover,
.site-navbar.navbar-inverse .navbar-toggle:focus { background-color: #f5f5f5; }
/* Section spacing (matches the original portfolio template) */
.section-container { padding: 60px 0; }
@media (min-width: 1200px) {
  .section-container { padding: 80px 0; }
}

.section-container-spacer { margin-bottom: 30px; }
@media (min-width: 1200px) {
  .section-container-spacer { margin-bottom: 40px; }
}

.project-section-heading {
  display: inline-block;
  padding: 0 20px;
  border-left: 2px solid #000;
  border-right: 2px solid #000;
}

/* Project listing grid: Bootstrap's .col-sm-4 are float-based, and floats
   with unequal heights (cards vary in height depending on description
   length) "pack" into leftover space from the row above instead of
   starting a clean new row, producing a staggered/misaligned layout at
   narrower widths. Flexbox lays out each row cleanly regardless of item
   height. */
.projects-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  width: 100%;
}
.projects-grid > .col-sm-4 {
  float: none;
}

/* Project cards: white rounded card floating over the project screenshot/hero */
.card-container {
  border-radius: 30px;
  box-shadow: 0px 10px 30px 0px rgba(24, 24, 24, 0.2);
  background-color: #fff;
  padding: 1.75rem 2.5rem;
  position: relative;
  width: 80%;
  margin: -90px auto 20px;
}
@media (max-width: 992px) {
  .card-container { padding: 1.5rem; margin-top: -60px; }
  .card-container.card-container-lg { width: 95%; padding: 1.5rem 2rem; margin-top: -70px; }
}

/* Listing cards: fixed height so every project card in the grid matches,
   regardless of how long its description is. The button is pinned to the
   bottom via margin-top:auto, so shorter descriptions just leave more
   breathing room above the button instead of the button crowding the text. */
.card-container.card-container-lg {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: 380px;
  overflow: hidden;
}
.card-container.card-container-lg .btn {
  margin-top: auto;
  flex-shrink: 0;
}
@media (max-width: 992px) {
  .card-container.card-container-lg { height: auto; min-height: 340px; }
}

.black-image-project-hover { display: block; }
.black-image-project-hover img {
  display: block;
  width: 100%;
  object-fit: cover;
  filter: none;
}

/* Listing thumbnail: taller, and the card overlaps it less, so more of the
   screenshot stays visible above the card. */
.project-thumb { height: 280px; border-radius: 10px; }

/* Detail page hero banner */
.project-hero-image {
  width: 100%;
  height: 460px;
  object-fit: cover;
  border-radius: 10px;
}

.project-live-link-wrap { margin-top: 20px; }
.project-live-link {
  display: inline-block;
  font-size: 17px;
  font-weight: 700;
  color: #001aff;
  border-bottom: 2px solid #001aff;
  padding-bottom: 2px;
}
.project-live-link:hover,
.project-live-link:focus {
  color: #0012b3;
  border-bottom-color: #0012b3;
  text-decoration: none;
}
.project-live-link span { display: inline-block; transition: transform 0.15s ease-in-out; }
.project-live-link:hover span { transform: translate(2px, -2px); }

/* Feature GIFs on the project detail page: always fill the column width
   (Bootstrap's .img-responsive only caps at 100%, it won't scale a smaller
   native image up to fill the container). */
.project-feature-image {
  display: block;
  width: 100%;
  height: auto;
}

/* Restore bullets: a reset bundled elsewhere in this asset pipeline
   (require_tree pulls in every stylesheet) sets list-style:none globally. */
.card-container ul {
  list-style: disc;
  padding-left: 1.5em;
  margin-bottom: 15px;
}
.card-container li { list-style: inherit; }

/* Project detail page (/projects/:slug): wider container and larger content
   than the default Bootstrap max-width, so the hero/feature images (which
   are width:100% of their column) and text read bigger. */
.project-detail-container {
  width: 100%;
  max-width: 1400px;
}
.project-detail-container .card-container h3 { font-size: 22px; }
.project-detail-container .card-container li,
.project-detail-container .card-container p {
  font-size: 16px;
  line-height: 1.6;
}
.project-detail-container .project-feature-image + h4 {
  font-size: 20px;
  margin-top: 15px;
}

/* Placeholder shown in place of an image that hasn't been added yet. */
.project-image-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: repeating-linear-gradient(45deg, #f4f4f4, #f4f4f4 12px, #eaeaea 12px, #eaeaea 24px);
  color: #999;
  font-size: 13px;
  text-align: center;
  border-radius: 10px;
}
/* Scroll fade: elements marked with [data-scroll-fade] fade in as they enter
   the viewport and fade back out as they leave it, in either scroll
   direction (toggled via IntersectionObserver in application.html.erb).

   Gated behind html.js-scroll-fade (added only when IntersectionObserver is
   available) so content never gets stuck invisible without JS. */
html.js-scroll-fade [data-scroll-fade] {
  opacity: 0;
  transition: opacity 0.6s ease;
}
html.js-scroll-fade [data-scroll-fade].is-visible {
  opacity: 1;
}
@tailwind base;
@tailwind components;
@tailwind utilities;

@import "simple_calendar";
/* line 3, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading.month {
  width: 95dvw;
}

/* line 7, app/assets/stylesheets/shift_manager/calendar/header.scss */
.claendar-heading.week {
  width: 95dvw;
}

/* line 10, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 0.5rem;
  z-index: 3;
  width: 95dvw;
  margin-bottom: 0.25rem;
  background-color: #ffffff;
}

/* line 22, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .hamburger-background {
  width: 100dvw;
  z-index: 3;
  height: 100dvh;
  position: absolute;
  inset: 0;
}

/* line 30, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu {
  background-color: #bfbdbd;
  position: absolute;
  width: 10rem;
  border-radius: 0.75rem;
  z-index: 3;
  text-align: center;
}

/* line 38, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button {
  color: #002e4f90;
}

/* line 40, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button:hover {
  color: #002e4f;
}

/* line 46, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .calendar-title {
  color: #3c4043;
  font-size: 22px;
}

@media (min-width: 0px) and (max-width: 768px) {
  /* line 53, app/assets/stylesheets/shift_manager/calendar/header.scss */
  body {
    width: 98dvw;
  }
  /* line 62, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar .calendar-heading.week #hamburger-menu {
    top: 47px;
    right: 9px;
  }
  /* line 69, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .user-name,
.today-btn {
    display: none;
  }
  /* line 75, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .calendar-heading.month #hamburger-menu {
    top: 40px;
    right: 9px;
  }
}

@media (min-width: 768px) {
  /* line 83, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 87, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 91, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 61px;
    padding: 3px;
  }
}

@media (min-width: 1450px) {
  /* line 99, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 103, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 107, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 110px;
    padding: 3px;
  }
}
/* line 1, app/assets/stylesheets/shift_manager/meetings/meeting.scss */
li {
  list-style: none;
}

/* line 5, app/assets/stylesheets/shift_manager/meetings/meeting.scss */
.event {
  margin: 0.5rem;
}
/* line 3, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading.month {
  width: 95dvw;
}

/* line 7, app/assets/stylesheets/shift_manager/calendar/header.scss */
.claendar-heading.week {
  width: 95dvw;
}

/* line 10, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 0.5rem;
  z-index: 3;
  width: 95dvw;
  margin-bottom: 0.25rem;
  background-color: #ffffff;
}

/* line 22, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .hamburger-background {
  width: 100dvw;
  z-index: 3;
  height: 100dvh;
  position: absolute;
  inset: 0;
}

/* line 30, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu {
  background-color: #bfbdbd;
  position: absolute;
  width: 10rem;
  border-radius: 0.75rem;
  z-index: 3;
  text-align: center;
}

/* line 38, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button {
  color: #002e4f90;
}

/* line 40, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button:hover {
  color: #002e4f;
}

/* line 46, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .calendar-title {
  color: #3c4043;
  font-size: 22px;
}

@media (min-width: 0px) and (max-width: 768px) {
  /* line 53, app/assets/stylesheets/shift_manager/calendar/header.scss */
  body {
    width: 98dvw;
  }
  /* line 62, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar .calendar-heading.week #hamburger-menu {
    top: 47px;
    right: 9px;
  }
  /* line 69, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .user-name,
.today-btn {
    display: none;
  }
  /* line 75, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .calendar-heading.month #hamburger-menu {
    top: 40px;
    right: 9px;
  }
}

@media (min-width: 768px) {
  /* line 83, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 87, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 91, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 61px;
    padding: 3px;
  }
}

@media (min-width: 1450px) {
  /* line 99, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 103, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 107, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 110px;
    padding: 3px;
  }
}

/* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.day-off {
  border-radius: 0.5rem;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
  outline: 3px solid #7c47b2;
  border: 2px solid white;
  text-align: center;
  height: 100%;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
  .day-off {
    width: 100%;
    white-space: normal;
  }
}

@media (min-width: 768px) {
  /* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
  .day-off {
    white-space: normal;
  }
}

/* line 23, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.day-off-monthly {
  overflow: visible;
}

/* line 27, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.monthly-shifts > * {
  min-width: 82px;
}

/* line 31, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.monthly-shifts {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 9px;
}

/* line 39, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift {
  border-radius: 0.5rem;
  outline: 2px solid #fca31190;
  border: 1px solid white;
}

/* line 44, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li {
  position: relative;
  text-align: center;
  color: #3c4043;
}

/* line 49, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li a {
  color: #3c4043;
}

/* line 53, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #002e4f90;
}

/* line 59, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 62, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 71, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 76, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 89, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts {
  border-radius: 0.5rem;
  outline: 2px solid #002e4f90;
  border: 1px solid white;
}

/* line 94, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li {
  position: relative;
  text-align: center;
  color: #ffffff;
}

/* line 99, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li a {
  color: #ffffff;
}

/* line 103, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ffffff;
}

/* line 109, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 113, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 122, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 127, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 140, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts::after {
  content: "";
  position: absolute;
  top: -2.5px;
  /* Adjust based on the desired thickness of the border */
  left: -2.5px;
  /* Adjust based on the desired thickness of the border */
  right: -2.5px;
  /* Adjust based on the desired thickness of the border */
  bottom: -2.5px;
  /* Adjust based on the desired thickness of the border */
  z-index: -1;
  background: linear-gradient(90deg, #fca31156, #002e4f56);
  border-radius: inherit;
  /* If the main element has rounded corners */
}

/* line 152, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-outline {
  outline: 2px solid #fca31190;
  border: 1px solid white;
}

/* line 157, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts {
  position: relative;
  border-radius: 0.5rem;
  border: 1px solid white;
}

/* line 164, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li {
  position: relative;
  color: #ffffff;
  text-align: center;
}

/* line 168, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li a {
  color: #ffffff;
}

/* line 172, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ffffff;
}

/* line 178, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 182, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 191, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 196, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 209, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > tbody {
  z-index: -2;
}

/* line 213, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > tbody > tr[class^="week-"]:hover {
  outline: 2px solid #002e4f90 !important;
}

/* line 223, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > thead {
  position: sticky;
  top: 90px;
  /* 50px portfolio nav + ~40px calendar heading */
  z-index: 2;
}

/* line 229, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.current-user-day-off {
  position: relative;
  font-weight: bold;
  text-align: center;
}

/* line 236, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.current-user-day-off-monthly::before {
  content: "OFF";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -10px;
}
/* line 3, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading.month {
  width: 95dvw;
}

/* line 7, app/assets/stylesheets/shift_manager/calendar/header.scss */
.claendar-heading.week {
  width: 95dvw;
}

/* line 10, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 0.5rem;
  z-index: 3;
  width: 95dvw;
  margin-bottom: 0.25rem;
  background-color: #ffffff;
}

/* line 22, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .hamburger-background {
  width: 100dvw;
  z-index: 3;
  height: 100dvh;
  position: absolute;
  inset: 0;
}

/* line 30, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu {
  background-color: #bfbdbd;
  position: absolute;
  width: 10rem;
  border-radius: 0.75rem;
  z-index: 3;
  text-align: center;
}

/* line 38, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button {
  color: #002e4f90;
}

/* line 40, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button:hover {
  color: #002e4f;
}

/* line 46, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .calendar-title {
  color: #3c4043;
  font-size: 22px;
}

@media (min-width: 0px) and (max-width: 768px) {
  /* line 53, app/assets/stylesheets/shift_manager/calendar/header.scss */
  body {
    width: 98dvw;
  }
  /* line 62, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar .calendar-heading.week #hamburger-menu {
    top: 47px;
    right: 9px;
  }
  /* line 69, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .user-name,
.today-btn {
    display: none;
  }
  /* line 75, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .calendar-heading.month #hamburger-menu {
    top: 40px;
    right: 9px;
  }
}

@media (min-width: 768px) {
  /* line 83, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 87, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 91, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 61px;
    padding: 3px;
  }
}

@media (min-width: 1450px) {
  /* line 99, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 103, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 107, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 110px;
    padding: 3px;
  }
}

/* line 19, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
#dragElement {
  width: 100px;
  height: 100px;
  background-color: red;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  cursor: grab;
  transition: top 0.3s ease-in-out;
  /* Transition for smooth movement */
}

/* line 30, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.line-height-50 {
  line-height: 50px;
}

@media (min-width: 768px) {
  /* line 37, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .my-sticky-offset {
    top: 90px !important;
    /* 50px portfolio nav + ~40px calendar heading */
  }
}

/* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .empty-tr {
  cursor: pointer;
  height: 90px;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .empty-tr {
    width: 47px;
  }
}

@media (min-width: 768px) {
  /* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .empty-tr {
    width: 69px;
  }
}

/* line 53, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .your-day-off:hover {
  color: #70757a;
}

/* line 58, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .day-off-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  max-width: 100%;
  gap: 0.5rem;
  height: 51px;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 58, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .day-off-container {
    height: 60px;
  }
}

/* line 71, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .request-day-off-btn {
  color: #0b57d0;
  background: transparent;
}

/* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours {
  border-right: 1px solid #dadce0;
  padding-right: 8px;
  position: relative;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours {
    width: calc(47px + 1px);
  }
}

@media (min-width: 768px) {
  /* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours {
    width: calc(69px + 1px);
  }
}

/* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours .hour-cell {
  height: 50px;
  text-align: center;
  position: absolute;
}

/* line 96, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours .hour-cell:nth-child(1) {
  border-top: 1px solid #dadce0;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours .hour-cell {
    width: 47px;
    padding: 0;
  }
}

@media (min-width: 768px) {
  /* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours .hour-cell {
    width: 69px;
  }
}

/* line 111, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .employee-hours {
  font-size: 12px;
  border-radius: 10px;
  padding: 0;
  text-align: center;
}

/* line 118, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  background-color: #ffffff;
  z-index: 2;
  width: 95dvw;
}

/* line 127, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .date {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  border: none;
}

/* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .weekly-date {
  border-bottom: 1px solid #dadce0;
  padding: 3px;
  gap: 0.25rem;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-header .weekly-date {
    width: calc( (95dvw - 47px) / 7);
  }
}

@media (min-width: 768px) {
  /* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-header .weekly-date {
    width: calc( (95dvw - 69px) / 7);
  }
}

/* line 159, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .weekly-date * {
  border: none;
  padding: 0 0.25rem 0 0.25rem;
  margin-bottom: 0;
}

/* line 166, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .today-date {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10rem;
  padding: 9px;
  background-color: #0b57d0;
  color: #ffffff;
  cursor: pointer;
}

/* line 176, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .today-date:hover {
  background-color: #054ec4;
}

/* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body {
  display: flex;
  border-bottom: 1px solid #dadce0;
  width: 95dvw;
  position: relative;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body {
    width: 95dvw;
  }
}

@media (min-width: 768px) {
  /* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body {
    width: 95dvw;
  }
}

/* line 195, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .hours {
  height: calc(16 * 50px);
  display: flex;
  flex-direction: column;
}

/* line 201, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time {
  border-top: 1px solid #9d0208;
}

/* line 205, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner {
  border-bottom: none;
  border-top: 2px solid red;
  position: relative;
  z-index: 1;
  background-color: transparent;
}

/* line 211, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner::before {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  background-color: #f4511e;
  left: -12px;
  top: -8px;
  border-radius: 50%;
}

/* line 221, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner::after {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  background-color: #f4511e;
  right: -12px;
  top: -8px;
  border-radius: 50%;
}

/* line 233, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .hour-cell-row-separator {
  padding: none !important;
  position: absolute;
  width: 95dvw;
  border-bottom: 1px solid #dadce0;
  z-index: -3;
}

/* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings {
  display: flex;
  flex-direction: column;
  position: relative;
  border-right: 1px solid #dadce0;
  height: calc(16 * 50px);
}

/* line 248, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings .weekly-meeting {
  position: absolute;
  border: 3px solid white;
  border-radius: 10px;
  text-decoration: transparent;
  writing-mode: vertical-rl;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  outline: 1px solid #bfbdbd;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

/* line 261, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings .weekly-meeting:hover {
  outline: 2px solid blue;
  overflow: visible;
  z-index: 1;
  cursor: pointer;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body .meetings {
    width: calc( (95dvw - 47px) / 7);
    padding: 2px;
  }
}

@media (min-width: 768px) {
  /* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body .meetings {
    padding: 8px;
    width: calc( (95dvw - 69px) / 7);
  }
}

/* line 279, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .prev-month {
  background-color: #22222230;
  border-right: 1px solid white;
}

/* line 284, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .next-month {
  background-color: #22222230;
  border-left: 1px solid white;
}

/* line 291, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .day-off.link {
  cursor: pointer;
}
/* line 1, app/assets/stylesheets/shift_manager/shared/dropdown.scss */
select.select-dropdown {
  border-radius: 0.5rem;
  border-color: #22222240;
}
/* line 3, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip {
  position: relative;
  display: flex;
  font-size: inherit;
  align-items: center;
  justify-content: center;
  border-radius: 10rem;
  font-size: 1.5rem;
  width: 2rem;
  height: 2rem;
  transition: 0.15s ease-in-out;
  z-index: 10;
}

/* line 16, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip div,
.tool-tip a {
  color: #5f6368;
}

/* line 21, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:hover {
  background-color: #22222210;
}

/* line 24, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:hover .tool-tip-text {
  visibility: visible;
}

/* line 29, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:active {
  background-color: #22222230;
}

/* line 32, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip .tool-tip-text {
  visibility: hidden;
  max-width: 150px;
  min-width: 80px;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  font-size: 12px;
  color: #e8eaed;
  background-color: #3c4043;
  position: absolute;
  z-index: 1;
  top: 100%;
  left: 50%;
  margin-left: -60px;
}
/* line 1, app/assets/stylesheets/shift_manager/meetings/meeting.scss */
li {
  list-style: none;
}

/* line 5, app/assets/stylesheets/shift_manager/meetings/meeting.scss */
.event {
  margin: 0.5rem;
}

/* line 3, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading.month {
  width: 95dvw;
}

/* line 7, app/assets/stylesheets/shift_manager/calendar/header.scss */
.claendar-heading.week {
  width: 95dvw;
}

/* line 10, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 0.5rem;
  z-index: 3;
  width: 95dvw;
  margin-bottom: 0.25rem;
  background-color: #ffffff;
}

/* line 22, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .hamburger-background {
  width: 100dvw;
  z-index: 3;
  height: 100dvh;
  position: absolute;
  inset: 0;
}

/* line 30, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu {
  background-color: #bfbdbd;
  position: absolute;
  width: 10rem;
  border-radius: 0.75rem;
  z-index: 3;
  text-align: center;
}

/* line 38, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button {
  color: #002e4f90;
}

/* line 40, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button:hover {
  color: #002e4f;
}

/* line 46, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .calendar-title {
  color: #3c4043;
  font-size: 22px;
}

@media (min-width: 0px) and (max-width: 768px) {
  /* line 53, app/assets/stylesheets/shift_manager/calendar/header.scss */
  body {
    width: 98dvw;
  }
  /* line 62, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar .calendar-heading.week #hamburger-menu {
    top: 47px;
    right: 9px;
  }
  /* line 69, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .user-name,
.today-btn {
    display: none;
  }
  /* line 75, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .calendar-heading.month #hamburger-menu {
    top: 40px;
    right: 9px;
  }
}

@media (min-width: 768px) {
  /* line 83, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 87, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 91, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 61px;
    padding: 3px;
  }
}

@media (min-width: 1450px) {
  /* line 99, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 103, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 107, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 110px;
    padding: 3px;
  }
}

/* line 19, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
#dragElement {
  width: 100px;
  height: 100px;
  background-color: red;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  cursor: grab;
  transition: top 0.3s ease-in-out;
  /* Transition for smooth movement */
}

/* line 30, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.line-height-50 {
  line-height: 50px;
}

@media (min-width: 768px) {
  /* line 37, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .my-sticky-offset {
    top: 90px !important;
    /* 50px portfolio nav + ~40px calendar heading */
  }
}

/* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .empty-tr {
  cursor: pointer;
  height: 90px;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .empty-tr {
    width: 47px;
  }
}

@media (min-width: 768px) {
  /* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .empty-tr {
    width: 69px;
  }
}

/* line 53, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .your-day-off:hover {
  color: #70757a;
}

/* line 58, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .day-off-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  max-width: 100%;
  gap: 0.5rem;
  height: 51px;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 58, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .day-off-container {
    height: 60px;
  }
}

/* line 71, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .request-day-off-btn {
  color: #0b57d0;
  background: transparent;
}

/* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours {
  border-right: 1px solid #dadce0;
  padding-right: 8px;
  position: relative;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours {
    width: calc(47px + 1px);
  }
}

@media (min-width: 768px) {
  /* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours {
    width: calc(69px + 1px);
  }
}

/* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours .hour-cell {
  height: 50px;
  text-align: center;
  position: absolute;
}

/* line 96, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours .hour-cell:nth-child(1) {
  border-top: 1px solid #dadce0;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours .hour-cell {
    width: 47px;
    padding: 0;
  }
}

@media (min-width: 768px) {
  /* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours .hour-cell {
    width: 69px;
  }
}

/* line 111, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .employee-hours {
  font-size: 12px;
  border-radius: 10px;
  padding: 0;
  text-align: center;
}

/* line 118, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  background-color: #ffffff;
  z-index: 2;
  width: 95dvw;
}

/* line 127, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .date {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  border: none;
}

/* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .weekly-date {
  border-bottom: 1px solid #dadce0;
  padding: 3px;
  gap: 0.25rem;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-header .weekly-date {
    width: calc( (95dvw - 47px) / 7);
  }
}

@media (min-width: 768px) {
  /* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-header .weekly-date {
    width: calc( (95dvw - 69px) / 7);
  }
}

/* line 159, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .weekly-date * {
  border: none;
  padding: 0 0.25rem 0 0.25rem;
  margin-bottom: 0;
}

/* line 166, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .today-date {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10rem;
  padding: 9px;
  background-color: #0b57d0;
  color: #ffffff;
  cursor: pointer;
}

/* line 176, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .today-date:hover {
  background-color: #054ec4;
}

/* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body {
  display: flex;
  border-bottom: 1px solid #dadce0;
  width: 95dvw;
  position: relative;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body {
    width: 95dvw;
  }
}

@media (min-width: 768px) {
  /* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body {
    width: 95dvw;
  }
}

/* line 195, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .hours {
  height: calc(16 * 50px);
  display: flex;
  flex-direction: column;
}

/* line 201, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time {
  border-top: 1px solid #9d0208;
}

/* line 205, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner {
  border-bottom: none;
  border-top: 2px solid red;
  position: relative;
  z-index: 1;
  background-color: transparent;
}

/* line 211, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner::before {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  background-color: #f4511e;
  left: -12px;
  top: -8px;
  border-radius: 50%;
}

/* line 221, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner::after {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  background-color: #f4511e;
  right: -12px;
  top: -8px;
  border-radius: 50%;
}

/* line 233, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .hour-cell-row-separator {
  padding: none !important;
  position: absolute;
  width: 95dvw;
  border-bottom: 1px solid #dadce0;
  z-index: -3;
}

/* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings {
  display: flex;
  flex-direction: column;
  position: relative;
  border-right: 1px solid #dadce0;
  height: calc(16 * 50px);
}

/* line 248, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings .weekly-meeting {
  position: absolute;
  border: 3px solid white;
  border-radius: 10px;
  text-decoration: transparent;
  writing-mode: vertical-rl;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  outline: 1px solid #bfbdbd;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

/* line 261, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings .weekly-meeting:hover {
  outline: 2px solid blue;
  overflow: visible;
  z-index: 1;
  cursor: pointer;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body .meetings {
    width: calc( (95dvw - 47px) / 7);
    padding: 2px;
  }
}

@media (min-width: 768px) {
  /* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body .meetings {
    padding: 8px;
    width: calc( (95dvw - 69px) / 7);
  }
}

/* line 279, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .prev-month {
  background-color: #22222230;
  border-right: 1px solid white;
}

/* line 284, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .next-month {
  background-color: #22222230;
  border-left: 1px solid white;
}

/* line 291, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .day-off.link {
  cursor: pointer;
}

/* line 3, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading.month {
  width: 95dvw;
}

/* line 7, app/assets/stylesheets/shift_manager/calendar/header.scss */
.claendar-heading.week {
  width: 95dvw;
}

/* line 10, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 0.5rem;
  z-index: 3;
  width: 95dvw;
  margin-bottom: 0.25rem;
  background-color: #ffffff;
}

/* line 22, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .hamburger-background {
  width: 100dvw;
  z-index: 3;
  height: 100dvh;
  position: absolute;
  inset: 0;
}

/* line 30, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu {
  background-color: #bfbdbd;
  position: absolute;
  width: 10rem;
  border-radius: 0.75rem;
  z-index: 3;
  text-align: center;
}

/* line 38, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button {
  color: #002e4f90;
}

/* line 40, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button:hover {
  color: #002e4f;
}

/* line 46, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .calendar-title {
  color: #3c4043;
  font-size: 22px;
}

@media (min-width: 0px) and (max-width: 768px) {
  /* line 53, app/assets/stylesheets/shift_manager/calendar/header.scss */
  body {
    width: 98dvw;
  }
  /* line 62, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar .calendar-heading.week #hamburger-menu {
    top: 47px;
    right: 9px;
  }
  /* line 69, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .user-name,
.today-btn {
    display: none;
  }
  /* line 75, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .calendar-heading.month #hamburger-menu {
    top: 40px;
    right: 9px;
  }
}

@media (min-width: 768px) {
  /* line 83, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 87, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 91, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 61px;
    padding: 3px;
  }
}

@media (min-width: 1450px) {
  /* line 99, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 103, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 107, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 110px;
    padding: 3px;
  }
}

/* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.day-off {
  border-radius: 0.5rem;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
  outline: 3px solid #7c47b2;
  border: 2px solid white;
  text-align: center;
  height: 100%;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
  .day-off {
    width: 100%;
    white-space: normal;
  }
}

@media (min-width: 768px) {
  /* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
  .day-off {
    white-space: normal;
  }
}

/* line 23, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.day-off-monthly {
  overflow: visible;
}

/* line 27, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.monthly-shifts > * {
  min-width: 82px;
}

/* line 31, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.monthly-shifts {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 9px;
}

/* line 39, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift {
  border-radius: 0.5rem;
  outline: 2px solid #fca31190;
  border: 1px solid white;
}

/* line 44, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li {
  position: relative;
  text-align: center;
  color: #3c4043;
}

/* line 49, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li a {
  color: #3c4043;
}

/* line 53, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #002e4f90;
}

/* line 59, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 62, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 71, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 76, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 89, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts {
  border-radius: 0.5rem;
  outline: 2px solid #002e4f90;
  border: 1px solid white;
}

/* line 94, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li {
  position: relative;
  text-align: center;
  color: #ffffff;
}

/* line 99, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li a {
  color: #ffffff;
}

/* line 103, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ffffff;
}

/* line 109, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 113, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 122, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 127, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 140, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts::after {
  content: "";
  position: absolute;
  top: -2.5px;
  /* Adjust based on the desired thickness of the border */
  left: -2.5px;
  /* Adjust based on the desired thickness of the border */
  right: -2.5px;
  /* Adjust based on the desired thickness of the border */
  bottom: -2.5px;
  /* Adjust based on the desired thickness of the border */
  z-index: -1;
  background: linear-gradient(90deg, #fca31156, #002e4f56);
  border-radius: inherit;
  /* If the main element has rounded corners */
}

/* line 152, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-outline {
  outline: 2px solid #fca31190;
  border: 1px solid white;
}

/* line 157, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts {
  position: relative;
  border-radius: 0.5rem;
  border: 1px solid white;
}

/* line 164, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li {
  position: relative;
  color: #ffffff;
  text-align: center;
}

/* line 168, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li a {
  color: #ffffff;
}

/* line 172, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ffffff;
}

/* line 178, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 182, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 191, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 196, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 209, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > tbody {
  z-index: -2;
}

/* line 213, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > tbody > tr[class^="week-"]:hover {
  outline: 2px solid #002e4f90 !important;
}

/* line 223, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > thead {
  position: sticky;
  top: 90px;
  /* 50px portfolio nav + ~40px calendar heading */
  z-index: 2;
}

/* line 229, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.current-user-day-off {
  position: relative;
  font-weight: bold;
  text-align: center;
}

/* line 236, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.current-user-day-off-monthly::before {
  content: "OFF";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -10px;
}

/* line 3, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip {
  position: relative;
  display: flex;
  font-size: inherit;
  align-items: center;
  justify-content: center;
  border-radius: 10rem;
  font-size: 1.5rem;
  width: 2rem;
  height: 2rem;
  transition: 0.15s ease-in-out;
  z-index: 10;
}

/* line 16, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip div,
.tool-tip a {
  color: #5f6368;
}

/* line 21, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:hover {
  background-color: #22222210;
}

/* line 24, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:hover .tool-tip-text {
  visibility: visible;
}

/* line 29, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:active {
  background-color: #22222230;
}

/* line 32, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip .tool-tip-text {
  visibility: hidden;
  max-width: 150px;
  min-width: 80px;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  font-size: 12px;
  color: #e8eaed;
  background-color: #3c4043;
  position: absolute;
  z-index: 1;
  top: 100%;
  left: 50%;
  margin-left: -60px;
}

/* line 1, app/assets/stylesheets/shift_manager/shared/dropdown.scss */
select.select-dropdown {
  border-radius: 0.5rem;
  border-color: #22222240;
}

/* line 8, app/assets/stylesheets/shift_manager/simple_calendar.scss */
* {
  color: #70757a;
}

/* line 12, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.shadow {
  box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

/* line 16, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.morning-color {
  background: #fca31190 !important;
  color: #00000090;
}

/* line 20, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.evening-color {
  background: #002e4f90 !important;
  color: #ffffff;
}

/* line 25, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.all-color {
  background: linear-gradient(90deg, #fca31190, #002e4f90) !important;
  color: #ffffff;
}

/* line 30, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.center-body {
  display: flex;
  justify-content: center;
  overflow-x: auto;
}

/* line 39, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar table.table-header {
  width: 95dvw;
}

/* line 43, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .day-name-container {
  background-color: #ffffff;
}

/* line 47, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .day {
  vertical-align: top;
  color: #70757a;
  height: 8rem;
  border: 1px solid #22222260;
  width: calc(100% / 7);
  padding: 12px;
  transition: all 0.15s ease-in-out;
}

/* line 57, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .day a:hover {
  cursor: pointer;
}

/* line 65, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .day-name {
  color: #70757a;
  font-size: 20px;
  width: calc(100% / 7);
  text-align: center;
}

/* line 72, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .wday-0 {
  color: #9d0208;
}

/* line 85, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .wday-6 {
  color: #9d0208;
}

/* line 89, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .monthly-date {
  text-align: center;
}

/* line 93, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .today > div.monthly-date {
  border-radius: 10rem;
  background-color: #0b57d0;
  color: #ffffff;
  width: 21px;
  align-self: center;
  margin: auto;
  text-align: center;
}

/* line 102, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .today > div.monthly-date:hover span {
  background-color: #054ec4;
}

/* line 108, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .date {
  border-radius: 10rem;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* line 116, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .date:hover {
  background-color: #22222210;
}

/* line 121, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .today-date {
  background-color: #0b57d0;
  color: #ffffff;
}

/* line 125, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .today-date:hover {
  background-color: #054ec4;
}

/* line 137, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .prev-month {
  background-color: #22222230;
}

/* line 140, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .next-month {
  background-color: #22222230;
}

/* line 151, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .event :hover {
  text-decoration: underline;
}

/* line 157, app/assets/stylesheets/shift_manager/simple_calendar.scss */
a {
  text-decoration: none;
}
/* line 1, app/assets/stylesheets/shift_manager/meetings/meeting.scss */
li {
  list-style: none;
}

/* line 5, app/assets/stylesheets/shift_manager/meetings/meeting.scss */
.event {
  margin: 0.5rem;
}

/* line 3, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading.month {
  width: 95dvw;
}

/* line 7, app/assets/stylesheets/shift_manager/calendar/header.scss */
.claendar-heading.week {
  width: 95dvw;
}

/* line 10, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 0.5rem;
  z-index: 3;
  width: 95dvw;
  margin-bottom: 0.25rem;
  background-color: #ffffff;
}

/* line 22, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .hamburger-background {
  width: 100dvw;
  z-index: 3;
  height: 100dvh;
  position: absolute;
  inset: 0;
}

/* line 30, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu {
  background-color: #bfbdbd;
  position: absolute;
  width: 10rem;
  border-radius: 0.75rem;
  z-index: 3;
  text-align: center;
}

/* line 38, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button {
  color: #002e4f90;
}

/* line 40, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button:hover {
  color: #002e4f;
}

/* line 46, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .calendar-title {
  color: #3c4043;
  font-size: 22px;
}

@media (min-width: 0px) and (max-width: 768px) {
  /* line 53, app/assets/stylesheets/shift_manager/calendar/header.scss */
  body {
    width: 98dvw;
  }
  /* line 62, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar .calendar-heading.week #hamburger-menu {
    top: 47px;
    right: 9px;
  }
  /* line 69, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .user-name,
.today-btn {
    display: none;
  }
  /* line 75, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .calendar-heading.month #hamburger-menu {
    top: 40px;
    right: 9px;
  }
}

@media (min-width: 768px) {
  /* line 83, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 87, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 91, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 61px;
    padding: 3px;
  }
}

@media (min-width: 1450px) {
  /* line 99, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 103, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 107, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 110px;
    padding: 3px;
  }
}

/* line 19, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
#dragElement {
  width: 100px;
  height: 100px;
  background-color: red;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  cursor: grab;
  transition: top 0.3s ease-in-out;
  /* Transition for smooth movement */
}

/* line 30, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.line-height-50 {
  line-height: 50px;
}

@media (min-width: 768px) {
  /* line 37, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .my-sticky-offset {
    top: 90px !important;
    /* 50px portfolio nav + ~40px calendar heading */
  }
}

/* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .empty-tr {
  cursor: pointer;
  height: 90px;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .empty-tr {
    width: 47px;
  }
}

@media (min-width: 768px) {
  /* line 41, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .empty-tr {
    width: 69px;
  }
}

/* line 53, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .your-day-off:hover {
  color: #70757a;
}

/* line 58, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .day-off-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  max-width: 100%;
  gap: 0.5rem;
  height: 51px;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 58, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .day-off-container {
    height: 60px;
  }
}

/* line 71, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .request-day-off-btn {
  color: #0b57d0;
  background: transparent;
}

/* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours {
  border-right: 1px solid #dadce0;
  padding-right: 8px;
  position: relative;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours {
    width: calc(47px + 1px);
  }
}

@media (min-width: 768px) {
  /* line 78, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours {
    width: calc(69px + 1px);
  }
}

/* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours .hour-cell {
  height: 50px;
  text-align: center;
  position: absolute;
}

/* line 96, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .hours .hour-cell:nth-child(1) {
  border-top: 1px solid #dadce0;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours .hour-cell {
    width: 47px;
    padding: 0;
  }
}

@media (min-width: 768px) {
  /* line 91, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .hours .hour-cell {
    width: 69px;
  }
}

/* line 111, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .employee-hours {
  font-size: 12px;
  border-radius: 10px;
  padding: 0;
  text-align: center;
}

/* line 118, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  background-color: #ffffff;
  z-index: 2;
  width: 95dvw;
}

/* line 127, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .date {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  border: none;
}

/* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .weekly-date {
  border-bottom: 1px solid #dadce0;
  padding: 3px;
  gap: 0.25rem;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-header .weekly-date {
    width: calc( (95dvw - 47px) / 7);
  }
}

@media (min-width: 768px) {
  /* line 136, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-header .weekly-date {
    width: calc( (95dvw - 69px) / 7);
  }
}

/* line 159, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .weekly-date * {
  border: none;
  padding: 0 0.25rem 0 0.25rem;
  margin-bottom: 0;
}

/* line 166, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .today-date {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10rem;
  padding: 9px;
  background-color: #0b57d0;
  color: #ffffff;
  cursor: pointer;
}

/* line 176, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-header .today-date:hover {
  background-color: #054ec4;
}

/* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body {
  display: flex;
  border-bottom: 1px solid #dadce0;
  width: 95dvw;
  position: relative;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body {
    width: 95dvw;
  }
}

@media (min-width: 768px) {
  /* line 181, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body {
    width: 95dvw;
  }
}

/* line 195, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .hours {
  height: calc(16 * 50px);
  display: flex;
  flex-direction: column;
}

/* line 201, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time {
  border-top: 1px solid #9d0208;
}

/* line 205, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner {
  border-bottom: none;
  border-top: 2px solid red;
  position: relative;
  z-index: 1;
  background-color: transparent;
}

/* line 211, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner::before {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  background-color: #f4511e;
  left: -12px;
  top: -8px;
  border-radius: 50%;
}

/* line 221, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .current-time-liner::after {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  background-color: #f4511e;
  right: -12px;
  top: -8px;
  border-radius: 50%;
}

/* line 233, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .hour-cell-row-separator {
  padding: none !important;
  position: absolute;
  width: 95dvw;
  border-bottom: 1px solid #dadce0;
  z-index: -3;
}

/* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings {
  display: flex;
  flex-direction: column;
  position: relative;
  border-right: 1px solid #dadce0;
  height: calc(16 * 50px);
}

/* line 248, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings .weekly-meeting {
  position: absolute;
  border: 3px solid white;
  border-radius: 10px;
  text-decoration: transparent;
  writing-mode: vertical-rl;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  outline: 1px solid #bfbdbd;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

/* line 261, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .meetings .weekly-meeting:hover {
  outline: 2px solid blue;
  overflow: visible;
  z-index: 1;
  cursor: pointer;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body .meetings {
    width: calc( (95dvw - 47px) / 7);
    padding: 2px;
  }
}

@media (min-width: 768px) {
  /* line 241, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
  .weekly-calendar .table .table-body .meetings {
    padding: 8px;
    width: calc( (95dvw - 69px) / 7);
  }
}

/* line 279, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .prev-month {
  background-color: #22222230;
  border-right: 1px solid white;
}

/* line 284, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .table .table-body .next-month {
  background-color: #22222230;
  border-left: 1px solid white;
}

/* line 291, app/assets/stylesheets/shift_manager/meetings/weekly.scss */
.weekly-calendar .day-off.link {
  cursor: pointer;
}

/* line 3, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading.month {
  width: 95dvw;
}

/* line 7, app/assets/stylesheets/shift_manager/calendar/header.scss */
.claendar-heading.week {
  width: 95dvw;
}

/* line 10, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 0.5rem;
  z-index: 3;
  width: 95dvw;
  margin-bottom: 0.25rem;
  background-color: #ffffff;
}

/* line 22, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .hamburger-background {
  width: 100dvw;
  z-index: 3;
  height: 100dvh;
  position: absolute;
  inset: 0;
}

/* line 30, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu {
  background-color: #bfbdbd;
  position: absolute;
  width: 10rem;
  border-radius: 0.75rem;
  z-index: 3;
  text-align: center;
}

/* line 38, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button {
  color: #002e4f90;
}

/* line 40, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading #hamburger-menu button:hover {
  color: #002e4f;
}

/* line 46, app/assets/stylesheets/shift_manager/calendar/header.scss */
.calendar-heading .calendar-title {
  color: #3c4043;
  font-size: 22px;
}

@media (min-width: 0px) and (max-width: 768px) {
  /* line 53, app/assets/stylesheets/shift_manager/calendar/header.scss */
  body {
    width: 98dvw;
  }
  /* line 62, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar .calendar-heading.week #hamburger-menu {
    top: 47px;
    right: 9px;
  }
  /* line 69, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .user-name,
.today-btn {
    display: none;
  }
  /* line 75, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .calendar-heading.month #hamburger-menu {
    top: 40px;
    right: 9px;
  }
}

@media (min-width: 768px) {
  /* line 83, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 87, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 91, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 61px;
    padding: 3px;
  }
}

@media (min-width: 1450px) {
  /* line 99, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .monthly-calendar {
    margin: auto;
  }
  /* line 103, app/assets/stylesheets/shift_manager/calendar/header.scss */
  .weekly-calendar {
    margin: auto;
  }
  /* line 107, app/assets/stylesheets/shift_manager/calendar/header.scss */
  #hamburger-menu {
    top: 45px;
    right: 110px;
    padding: 3px;
  }
}

/* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.day-off {
  border-radius: 0.5rem;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
  outline: 3px solid #7c47b2;
  border: 2px solid white;
  text-align: center;
  height: 100%;
}

@media (min-width: 368px) and (max-width: 768px) {
  /* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
  .day-off {
    width: 100%;
    white-space: normal;
  }
}

@media (min-width: 768px) {
  /* line 4, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
  .day-off {
    white-space: normal;
  }
}

/* line 23, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.day-off-monthly {
  overflow: visible;
}

/* line 27, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.monthly-shifts > * {
  min-width: 82px;
}

/* line 31, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.monthly-shifts {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 9px;
}

/* line 39, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift {
  border-radius: 0.5rem;
  outline: 2px solid #fca31190;
  border: 1px solid white;
}

/* line 44, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li {
  position: relative;
  text-align: center;
  color: #3c4043;
}

/* line 49, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li a {
  color: #3c4043;
}

/* line 53, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #002e4f90;
}

/* line 59, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 62, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 71, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 76, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.morning-shift li.current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 89, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts {
  border-radius: 0.5rem;
  outline: 2px solid #002e4f90;
  border: 1px solid white;
}

/* line 94, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li {
  position: relative;
  text-align: center;
  color: #ffffff;
}

/* line 99, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li a {
  color: #ffffff;
}

/* line 103, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ffffff;
}

/* line 109, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 113, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 122, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 127, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.evening-shifts li.current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 140, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts::after {
  content: "";
  position: absolute;
  top: -2.5px;
  /* Adjust based on the desired thickness of the border */
  left: -2.5px;
  /* Adjust based on the desired thickness of the border */
  right: -2.5px;
  /* Adjust based on the desired thickness of the border */
  bottom: -2.5px;
  /* Adjust based on the desired thickness of the border */
  z-index: -1;
  background: linear-gradient(90deg, #fca31156, #002e4f56);
  border-radius: inherit;
  /* If the main element has rounded corners */
}

/* line 152, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-outline {
  outline: 2px solid #fca31190;
  border: 1px solid white;
}

/* line 157, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts {
  position: relative;
  border-radius: 0.5rem;
  border: 1px solid white;
}

/* line 164, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li {
  position: relative;
  color: #ffffff;
  text-align: center;
}

/* line 168, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li a {
  color: #ffffff;
}

/* line 172, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts li:not(:last-child) {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ffffff;
}

/* line 178, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift {
  font-weight: bold;
  text-align: center;
}

/* line 182, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 191, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift a {
  font-weight: bold;
  text-align: center;
}

/* line 196, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.all-day-shifts .current-user-shift a::before {
  content: "Shift";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -18px;
}

/* line 209, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > tbody {
  z-index: -2;
}

/* line 213, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > tbody > tr[class^="week-"]:hover {
  outline: 2px solid #002e4f90 !important;
}

/* line 223, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
table > thead {
  position: sticky;
  top: 90px;
  /* 50px portfolio nav + ~40px calendar heading */
  z-index: 2;
}

/* line 229, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.current-user-day-off {
  position: relative;
  font-weight: bold;
  text-align: center;
}

/* line 236, app/assets/stylesheets/shift_manager/meetings/monthly.scss */
.current-user-day-off-monthly::before {
  content: "OFF";
  color: #f4511e;
  display: block;
  position: absolute;
  transform: rotate(-45deg);
  top: -6px;
  left: -10px;
}

/* line 3, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip {
  position: relative;
  display: flex;
  font-size: inherit;
  align-items: center;
  justify-content: center;
  border-radius: 10rem;
  font-size: 1.5rem;
  width: 2rem;
  height: 2rem;
  transition: 0.15s ease-in-out;
  z-index: 10;
}

/* line 16, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip div,
.tool-tip a {
  color: #5f6368;
}

/* line 21, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:hover {
  background-color: #22222210;
}

/* line 24, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:hover .tool-tip-text {
  visibility: visible;
}

/* line 29, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip:active {
  background-color: #22222230;
}

/* line 32, app/assets/stylesheets/shift_manager/shared/tooltip.scss */
.tool-tip .tool-tip-text {
  visibility: hidden;
  max-width: 150px;
  min-width: 80px;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  font-size: 12px;
  color: #e8eaed;
  background-color: #3c4043;
  position: absolute;
  z-index: 1;
  top: 100%;
  left: 50%;
  margin-left: -60px;
}

/* line 1, app/assets/stylesheets/shift_manager/shared/dropdown.scss */
select.select-dropdown {
  border-radius: 0.5rem;
  border-color: #22222240;
}

/* line 8, app/assets/stylesheets/shift_manager/simple_calendar.scss */
* {
  color: #70757a;
}

/* line 12, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.shadow {
  box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

/* line 16, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.morning-color {
  background: #fca31190 !important;
  color: #00000090;
}

/* line 20, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.evening-color {
  background: #002e4f90 !important;
  color: #ffffff;
}

/* line 25, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.all-color {
  background: linear-gradient(90deg, #fca31190, #002e4f90) !important;
  color: #ffffff;
}

/* line 30, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.center-body {
  display: flex;
  justify-content: center;
  overflow-x: auto;
}

/* line 39, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar table.table-header {
  width: 95dvw;
}

/* line 43, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .day-name-container {
  background-color: #ffffff;
}

/* line 47, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .day {
  vertical-align: top;
  color: #70757a;
  height: 8rem;
  border: 1px solid #22222260;
  width: calc(100% / 7);
  padding: 12px;
  transition: all 0.15s ease-in-out;
}

/* line 57, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .day a:hover {
  cursor: pointer;
}

/* line 65, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .day-name {
  color: #70757a;
  font-size: 20px;
  width: calc(100% / 7);
  text-align: center;
}

/* line 72, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .wday-0 {
  color: #9d0208;
}

/* line 85, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .wday-6 {
  color: #9d0208;
}

/* line 89, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .monthly-date {
  text-align: center;
}

/* line 93, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .today > div.monthly-date {
  border-radius: 10rem;
  background-color: #0b57d0;
  color: #ffffff;
  width: 21px;
  align-self: center;
  margin: auto;
  text-align: center;
}

/* line 102, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .today > div.monthly-date:hover span {
  background-color: #054ec4;
}

/* line 108, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .date {
  border-radius: 10rem;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* line 116, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .date:hover {
  background-color: #22222210;
}

/* line 121, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .today-date {
  background-color: #0b57d0;
  color: #ffffff;
}

/* line 125, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .today-date:hover {
  background-color: #054ec4;
}

/* line 137, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .prev-month {
  background-color: #22222230;
}

/* line 140, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .next-month {
  background-color: #22222230;
}

/* line 151, app/assets/stylesheets/shift_manager/simple_calendar.scss */
.monthly-calendar .event :hover {
  text-decoration: underline;
}

/* line 157, app/assets/stylesheets/shift_manager/simple_calendar.scss */
a {
  text-decoration: none;
}
/*


 */
