:root {
  --color-primary: #fff;
  --background-main: #000;
  --accent-color: #B3E6FF;
  --black-text: #000000;
  --gray-text: #A9A9A9;
  --border-color: #FFFFFF0D;
  --card-background: #FFFFFF08;
  --error-text: #FE7C7C;
  --error-notification-bg: #281717;
  --success-text: #BDFE7C;
  --warning-color: #ffdd55;
  --accent-icon: #B3E6FF;
  --gray-icon: rgb(255, 255, 255, 0.6);
}

/* Dark mode variables */
.dark {
  --color-primary: #fff;
  --background-main: #000;
  --accent-color: #B3E6FF;
  --black-text: #000000;
  --gray-text: #A9A9A9;
  --border-color: #FFFFFF0D;
  --card-background: #FFFFFF08;
  --input-background: #FFFFFF03;
  --error-text: #FE7C7C;
  --error-notification-bg: #281717;
  --success-text: #BDFE7C;
  --warning-color: #ffdd55;
  --accent-icon: #B3E6FF;
  --gray-icon: rgb(255, 255, 255, 0.6);
}

.light{
  --color-primary: #000;
  --background-main: #F7FAFF;
  --accent-color: #B3E6FF;
  --black-text: #000000;
  --gray-text: #A9A9A9;
  --border-color: #00000015;
  --card-background: #fff;
  --input-background: #FCFCFC;
  --error-text: #FE7C7C;
  --error-notification-bg: #ff343438;
  --success-text: #209d1b;  
  --warning-color: #ffdd55;
  --accent-icon: #70AAC7;
  --gray-icon: rgb(0, 0, 0, 0.7);
}

html{
  overflow-x: hidden;
}

::webkit-scrollbar{
  display: none;
}

::-webkit-scrollbar {
	width: 4px;
	height: 4px;
	background-color: transparent;
}

::-webkit-scrollbar-thumb {
	background-color: #9DA6B5;
	border-radius: 4px;
}


.transition_all{
  transition: all 0.3s ease-in-out;
}


.texture_image {
  width: 100%;
  height: 100%;
  object-fit: none;
  background-image: url('@/assets/images/hero_texture.png');
  background-repeat: repeat;
  background-size: var(--texture-width, 200px) var(--texture-height, 200px);
  background-position: center;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 0;
  pointer-events: none;
}


.horizontal_box_shadow{
  .light &{
      box-shadow: 0px 12px 8px rgba(0, 0, 0, 0.05);
  }
  .dark &{
      box-shadow: none;
  }
}

.box_shadow{
  .light &{
      box-shadow: 0px 4px 6px 2px rgba(0, 0, 0, 0.05);
  }
  .dark &{
      box-shadow: none;
  }
}

input{
  outline: none;
}

textarea{
  outline: none;
  resize: none;
}

textarea:focus{
  outline: 1px solid var(--color-primary);
}

body{
    background: var(--background-main);
    color: var(--color-primary);
    font-family: "Onest";
}

button{
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  &:hover{
    opacity: 0.8;
  }
}

@supports (height: 100dvh) {
  .h-screen {
    height: 100dvh;
  }

  .min-h-screen {
    min-height: 100dvh;
  }
}


.primary_button{
    @apply h-[40px] text-[14px] font-[700] px-[24px] bg-[var(--accent-color)] rounded-[20px] border-white/5 text-[var(--black-text)];
}

.secondary_button{
    @apply h-[40px] text-[14px] font-[500] px-[24px] bg-[#00000008] dark:bg-[#FFFFFF0D] backdrop-blur-[10px] rounded-[20px] border-[var(--border-color)] border;
}

.width_container{
    width: 100%;
    /* max-width: 1024px; */
    margin-left: auto;
    margin-right: auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.center_width_container{
  width: 100%;
  max-width: 1424px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.page_wrapper{
    width: 100%;
    background: var(--background-main);
    min-height: 100vh;
    height: fit-content;
    display: flex;
    flex-direction: column;
    overflow-y:auto;
    /* padding-bottom: 9rem; */
}

.invisible_scroll{
  scrollbar-width: none;
}
.invisible_scroll::-webkit-scrollbar{
  display: none;
}
.invisible_scroll {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.container_background{
  @apply dark:bg-[#060606] bg-[white];
}

.card_wrapper{
  @apply border border-[var(--border-color)] rounded-[16px] backdrop-blur-md box_shadow dark:bg-[#060606] bg-[white];
}

.invisible_scroll * {
  pointer-events: auto;
}

.invisible_scroll button {
  pointer-events: auto;
}

@media (max-width: 1024px) {
  .width_container {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .center_width_container {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}


@font-face {
  font-family: "Onest";
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Onest-Variable.ttf");
}

@font-face {
  font-family: "Unbounded";
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Unbounded-Variable.ttf");
}

@font-face { font-family: "Consolas"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/Consolas.ttf") format("truetype"); }
@font-face { font-family: "Consolas"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/Consolas-Bold.ttf") format("truetype"); }

@font-face { font-family: "Dewi"; font-style: normal; font-weight: 100; font-display: swap; src: url("../fonts/RFDewiExpanded-Thin.ttf") format("truetype"); }
@font-face { font-family: "Dewi"; font-style: normal; font-weight: 200; font-display: swap; src: url("../fonts/RFDewiExpanded-Ultralight.ttf") format("truetype"); }
@font-face { font-family: "Dewi"; font-style: normal; font-weight: 300; font-display: swap; src: url("../fonts/RFDewiExpanded-Light.ttf") format("truetype"); }
@font-face { font-family: "Dewi"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/RFDewiExpanded-Regular.ttf") format("truetype"); }
@font-face { font-family: "Dewi"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/RFDewiExpanded-Medium.ttf") format("truetype"); }
@font-face { font-family: "Dewi"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/RFDewiExpanded-Semibold.ttf") format("truetype"); }
@font-face { font-family: "Dewi"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/RFDewiExpanded-Bold.ttf") format("truetype"); }
@font-face { font-family: "Dewi"; font-style: normal; font-weight: 800; font-display: swap; src: url("../fonts/RFDewiExpanded-Ultrabold.ttf") format("truetype"); }