@font-face {
  font-family: "condensed";
  src: url('./fonts/Inter-Medium.ttf');
  font-weight: 400;
}
@font-face {
  font-family: "condensedBold";
  src: url('./fonts/BarlowSemiCondensed-Bold.ttf');
}

html, body {
  
  --ghost: hsla(0, 0%, 100%, 0.1);
  --ghost-stronger: hsla(0, 0%, 100%, 0.5);
  --grabber: hsla(0, 0%, 100%, 0.737);
  --debug: 'true';
  --border: .2rem solid rgba(255, 255, 255, 0.189);
  --webby-gradient: linear-gradient(to right, 
  rgb(255, 61, 61), #f3e353, #6bf67b, #5ccef0, #67a0ef, #b567f4);
  --tool: var(--dark);
  --scrollGrabberWidth: 0rem;
  --minPanelWidth: 8rem;
  --button-blur: 5rem;
  /* --accent: rgb(69, 245, 157); */
  --accent: rgba(255, 255, 255, 0.289);
  --accent2: hsl(330, 90%, 62%);
  --cancel: hsl(330, 90%, 62%);
  --cancelHover: rgb(216, 61, 167);
  --accent3: #4f54e2;
  --accent3Hover: #5e63ff;
  --avatarImage: url('');
  --accentActive:#a8f4c5;
  --accentHover:#64d690;
  --proceduralTextureSize: 256px;
  --buttonHeight: 7rem;
  --buttonMargin: .5rem;
  --outlineSoft: .1rem solid rgba(255, 255, 255, 0.199);
  --hover: #ffffff1e;
  --dark: #0000003e;
  --darkLess: #00000035;
  --valueGradient: linear-gradient(to right, rgb(0, 0, 0), rgb(255, 254, 253));
  --hueGradient: linear-gradient(to right, rgb(0, 0, 0), rgb(255, 254, 253));
  --shadowSize: 2.5rem;
  /* --uiCol : #4d4b50; */
  --uiCol : rgb(47, 55, 71,1);
  --uiWidth: 60rem;
  --toolButtonFontSize: 5rem;
  --uiColTint: rgb(47, 55, 71,.5);
  --toggled: #eb3d7a;
  --font-inverted: black;
  --font: rgba(255, 255, 255, 0.8);
  --button-transition: 0.2s ease;
  --button-radius: 0.3rem;
  --button-tool-width: 5rem;
  --buttonHighlighted: red;
  --button-font-size: 1.7rem;
  --button-font-size-big: 2rem;
  --font-size-medium: 2rem;
  --font-size-large: 3.5rem;
  --font-size-small: 1.7rem;
  --flexDirection: column;
  --flexDirection2: row;
  --dropdown-color: #525562;
  --submit: #5ff1a3b7;
  --menu-radius: 1.5rem;
  --cssCol: #f2f2f2;
  --canvasCol: #9c9c9c;
  --prevCol: #ffffff6e;
  --saturation: 100%;
  --saturationInverted: 0%;
  --inventoryGridDirection: ltr;
  --linearGradient: linear-gradient(to top, #6be7c8, #d98ae7, #5addef, #d1c4e9);
  --lightness: 50%;
  --hue: 0;
  --red: 10%;
  --green: 20%;
  --blue: 30%;
  --alpha: 100%;
  --dropShadow: 2rem 2rem 3rem 0rem rgba(0, 0, 0, 0.185);
  --dropShadowDark: 2rem 2rem 3rem 0rem rgba(0, 0, 0, 0.401);
  --dropShadowBig: 2rem 0rem 10rem 5rem rgba(0, 0, 0, 0.688);
  --radiusSmall: .5rem;
  --radiusMedium: 1rem;
  --radiusLarge: 1.5rem;

  --uiSize: 5.5px;

  touch-action: none;

  padding: 0;
  height: 100%;
  width: 100%;

  position: fixed;

  font-size:var(--uiSize);
  /* font-size:calc(3px + .5vmax); */
  display: flex;
  flex-direction: column;
  align-items: center;
  /* background-color: var(--uiCol); */
  font-family: sans-serif;
  color:aliceblue;
  margin: 0;
  overflow: hidden;
  /* -webkit-overflow-scrolling: touch; */
  overscroll-behavior-x: contain;
  /* overscroll-behavior-y: contain; */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -webkit-app-region: no-drag;
  user-select: none;
  
}

body {
  /* -webkit-overflow-scrolling: none; */
  /* background: url('assets/toolIcons/fadedGrid.svg'); */
  background-color: var(--uiCol);

}


select {
  background:var(--dark);
  color:currentColor;
  border:none;
  border-radius:.5rem;
  font-size:1.85rem;
  pointer-events:all;
  padding-left:.5rem;
  touch-action: auto;
  pointer-events: all;
  /* -webkit-user-select: auto; */
  /* background:orange; */
}



select:hover {
  background:var(--ghost);
}
/* * {
  box-sizing: border-box;
} */
.hoverBorder:hover {
  box-shadow: inset 0 0 2px #ffffffed;
  /* border: 1px solid rgba(255, 255, 255, 0.169); */
}
.hoverGhost:hover {
  background-color: rgba(255, 255, 255, 0.2);
}
.hoverGhost:active {
  background-color: var(--accent);
}
.hoverGhostStronger:hover {
  background: rgba(255, 255, 255, 0.409);
}
.buttonColor {
  pointer-events: all;
  background-color:var(--dark);
}
.buttonColor:hover {
  background-color:var(--hover);
}
.buttonColorLighter {
  pointer-events: all;
  background-color:var(--ghost);
}
.buttonColorLighter:hover {
  background-color:var(--hover);
}
.buttonColorDarker {
  pointer-events: all;
  background-color:var(--darkLess);
}
.buttonColorDarker:hover {
  background-color:var(--hover);
}
.toolButtonSelected {
  background:red;
}

.selecterOption {
  font-size:2rem;
}
.selecterOption:hover {
  background:var(--hover);
}
/* body::before,
body::after {
  position:absolute;
  content: '';
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index: 100;
  opacity:30%
}
body::after {
  background: #000000;
  filter: url(#grainy);
} */
.br1 {
  border-radius:.5rem;
}
.br2 {
  border-radius:1rem;
}
.title {
  font-weight: bold;
  align-items: center;
  text-transform: uppercase;
  font-size:3.5rem;
  align-self:center;
  position:relative;
  /* background:orange; */
  /* width:fit-content;  */
}
.subtitle {
  font-size:2.5rem;
  align-self:center;
  /* position:relative; */
}

*, *::after, *::before {
  text-transform: uppercase;
  /* font-size: var(--button-font-size); */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  /* box-sizing:border-box; */

}
*:focus {
  outline: none;
}

[x-cloak] {
  display: none;
}
#uiPanelsContainer {
  position:relative;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:0;
  /* background:rgb(245, 125, 125); */
}

.sideGrabber {
  position: absolute;
  width: 1rem;
  height: 100%;
  /* background: red; */
  /* z-index: 100; */
  pointer-events: all;
  top:0;
  right:-1rem;
  cursor: ew-resize;
}
.cornerGrabber {
  z-index:1;
  position: absolute;
  width: 3rem;
  height: 3rem;
  background: rgba(0, 0, 0, 0.108);
  /* z-index: 100; */
  pointer-events: all;
  right:0;
  bottom: 0;
  /* clip-path: polygon(100% 0, 0 100%, 100% 100%); */
  cursor: nwse-resize;
  border-top-left-radius: 3rem;
  border-bottom-right-radius: 1.5rem;
}
.cornerGrabber:hover {
  background: var(--ghost-stronger);
}

.fullBG {
  /* background:red; */
  overflow-y:auto;
  padding-top:4rem;

  pointer-events:all;
  visibility:hidden;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  width:100%;
  height: 100%;
  position:absolute;
}

.message { 
  background:var(--uiCol);
  width:90%;
  position:relative;
  flex-direction: column;
  align-self:center;
  padding:5rem;
  border-radius: 1rem;
  outline:.1rem solid rgba(255, 255, 255, 0.32);
  /* outline:.7rem solid rgba(69, 245, 157,0.8); */
  box-shadow: var(--dropShadow);
}

#panels {
  /* background:red; */
  pointer-events: none;
  position:absolute;
  width:100%;
  height: 100%;
}
.layerThumb {
  position:relative;
  border-radius: var(--radiusSmall);
  min-width:7rem;
  min-height:7rem;
  background:var(--canvasCol);
  overflow:hidden;
  justify-content: center;

}
.layerThumb.selected {
  /* outline:.2rem solid var(--accent); */
  /* background-color: red; */

}
.layerThumb:hover {
  /* background-color: var(--ghost-stronger); */
}


.clipped {
  left: 1.75rem;
  /* background:white; */
}

.clippedTo {
  background:rgba(0, 0, 0, 0.381);
}

.layerHidden {
  opacity:.5;
}
.layerThumbImage {
  width: 100%;
  height: auto;
  object-fit: contain; /* This makes sure the image is scaled to maintain its aspect ratio while fitting within the element's content box */
  object-position: center;
}
/* transform: scaleY(-1); */
.panel { 
  position:absolute;
  flex-direction: column;
  height:max-content;
  padding:.5rem;
  gap:.5rem;
  border-radius: 1rem;
  box-shadow: var(--dropShadow);
  -webkit-backdrop-filter: blur(7rem);
  backdrop-filter: blur(7rem);
  background-color: var(--dark);
}
.borderGradient {
  position: relative;
  background: var(--linearGradient);
}
.originalPrice {
  text-decoration: line-through;
  text-decoration-color: #ffffff84;
  font-size:large;
  text-align: center;
  padding-right:1rem;
  align-self:center;
  margin-top:.51rem;
  color: rgba(253, 253, 253, 0.701); /* You can adjust the color as needed */
}
input[type="checkbox"] {
  background:red;
  width:5rem;
  border:none;
  outline:none;
}


input[type="range"] {
  -webkit-appearance: none;
  appearance: none; 
  width: 100%;
  cursor: pointer;
  outline: none;
  border-radius: 15px;
  min-height: 5rem;
  background:transparent;
  /* background: #f06666; */
  /* max-height:1rem; */
}

/* Thumb: webkit */
input[type="range"]::-webkit-slider-thumb {
  /* removing default appearance */
  -webkit-appearance: none;
  appearance: none; 
  /* creating a custom design */
  height: 0;
  width: 0;
  /* background-color: #f50; */
  border-radius: 50%;
  border: none;

  /* box-shadow: -407px 0 0 400px #f50; emove this line */
  /* transition: .2s ease-in-out; */
}

/* Thumb: Firefox */
input[type="range"]::-moz-range-thumb {
  height: 0;
  width: 0;
  /* background-color: #f50; */
  border-radius: 50%;
  border: none;
  
  /* box-shadow: -407px 0 0 400px #f50; emove this line */
  /* transition: .2s ease-in-out; */
}
.fill {
  width:100%;
  height:100%;
}

span {
  font-size:4.5rem;

}
span.sub {
  /* background:red; */
  font-size:2rem;
  align-self: flex-end;
  margin-bottom:.45rem;
  margin-left:.45rem;
}
.borderGradient::before {
  content: '';
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: -1;
  margin: 1rem;
  border-radius: .5rem; /* !importanté */
  background:var(--uiCol);
  /* background: linear-gradient(to right, red, orange); */
}

.accentOutline {
  outline:.7rem solid var(--accent);
}

.dragOver {
  opacity:.5;
  outline: 2px dashed var(--accent);

}

.dragoverHighlight {
  opacity:.5;
  /* background:rgba(0, 0, 0, 0.515); */
  outline: 2px dashed var(--accent);
  /* padding-left:5rem; */
}
.dropTargetBorder {
  outline: 2px dashed #ccc;
  /* outline-offset: .5rem; */
  border-radius:.5rem;
  background:rgba(255, 255, 255, 0.042);
  /* width: 200px;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center; */
}

.swappable::after {
  /* content: ''; */
  position:absolute;
  right:1rem;
  background:rgba(0, 0, 0, 0.515);
  outline: 2px dashed var(--accent);

}

.disabled {
  opacity: 0.5;
  /* background:rgba(255, 255, 255, 0.123); */
  /* color:#ffffff4d; */
}
.optionButton {

  color:white;
  pointer-events: all;
  z-index: 500;
}

.flatRight {
  border-top-right-radius:0rem;
  border-bottom-right-radius:0rem;
}
.flatLeft {
  border-top-left-radius:0rem;
  border-bottom-left-radius:0rem;
}
@keyframes loading-spin {
  to {
    transform: translate(-50%, -50%) rotate(1turn);
  }
}
.shadow {
  border-radius: 2rem;
  box-shadow: -1rem 0 8.5rem .5rem #0000001b;
}
.galleryThumbLabel {
  pointer-events: none;
  position:absolute;
  bottom:0;
  color:hsla(0, 0%, 100%, 0.582);
  z-index: 2;
  font-size: 2.5rem;
}
.debug * {
  outline: 1px solid red;
  box-sizing: border-box;
}

.debug *:hover {
  outline-color: blue;
}
/* Add styles that apply to all devices */
#debugStats {
  text-decoration: none;
  pointer-events:none;
  visibility:hidden;
  position:absolute;
  bottom:1rem;
  right: 1rem;
  font-size:1.6rem;
  width:auto;
  padding:2rem;
  border-radius:1rem;
  height:20rem;
  touch-action: none;
  
  background-color: #000000ad;
  pointer-events: none;
  backdrop-filter: blur(5rem);
  -webkit-backdrop-filter: blur(5rem);
}
#debugStats > * {
  pointer-events: none;
  touch-action: none;
}
.iconButton {
  font-size:small;
  width: 5rem;
}
.icon {
  width:100%;
  height:100%;
  min-width:5rem;
  min-height:5rem;
  background-size:85%;
  background-position:center;
  background-repeat: no-repeat;
}

::-webkit-scrollbar {
  width: var(--scrollGrabberWidth);
  /* pointer-events: none; */

  /* min-width: 8px;
  background-color: #f5f5f5; */
}

::-webkit-scrollbar-track {
  background: #ffffff08; 
  pointer-events: none;
  /* background:red; */
}

::-webkit-scrollbar-thumb {
  background: #ffffff36; 
  pointer-events: none;

  border-radius: 6px;
  max-width:1px;
  min-width:1px;
  /* padding:.5rem; */
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.467); /* Color of the thumb on hover */
}



video {
  pointer-events: none;
  background:red;
  /* padding-top:7rem; */
  width:50vw;
  height:min-content;
  position:absolute;
  left:50%;
  top:5rem;
  transform: translate(-50%);
  /* background: rgb(0, 0, 0); */
  border-radius: 1rem;
  box-shadow: 0 5rem 8.5rem .5rem #000000a5;

}

p {
  /* background:red; */
  position:relative;
  list-style: none;
  text-transform: none;
  font-size:var(--font-size-medium);
  font-family: condensed;
  text-align: center;
}
.textContainer {
  position:relative;
  /* padding-left:4rem; */
  list-style: none;
  font-size:small;
}
ul {
  align-self:center;
  list-style:none;
  margin-bottom:5rem;
  gap:1rem;
  font-size:1.7rem;
  /* background:green; */
  width:max-content;
}
li {
  position:relative;
  left:-4rem;
  line-height:1.5;
  padding-left:4rem;
}
li::before {
  content:""; 
  position:absolute;
  left:0;
  top:-.05rem;
  background-image:url(./assets/toolIcons/check.svg);
  background-size: contain;
  width:2.5rem;
  height:2.5rem;
}

br {
  font-size:1.9rem;
}

.link {
  font-size: 2rem;
  text-transform: none;
  text-align: center;
  text-decoration: none;
  font-weight:600;
  line-height:5rem;
  pointer-events: all;
  font-family: condensed;

  /* color:rgb(255, 255, 255); */
  color: rgba(79, 255, 173, 0.883);
}
.link:hover {
  text-decoration: underline;
}
a {
  cursor:pointer;
  font-size: 2rem;
  text-transform: none;
  text-align: center;
  text-decoration: none;
  font-weight:600;
  font-family: condensed;

  line-height:5rem;
  pointer-events: all;
  /* touch-action: all; */
  /* color:rgb(255, 255, 255); */
  color: rgba(79, 255, 173, 0.883);
}
a:hover {
  text-decoration: underline;
}
.separater {
  width: 100%;
  height: 0.1rem;
  background-color: #ffffff50;
  margin: 1.3rem 0;
}
.hbox {
  /* width:100%; */
  /* background:red; */
  display: flex;
  flex-direction: row;
  gap: .5rem;
  justify-content: center;
}

.vbox {
  display: flex;
  width: 100%;
  /* height:-content; */
  flex-direction: column;
  /* background-color: green; */
}
.vboxSmall {
  display: flex;
  /* width: 100%; */
  flex-direction: column;
  /* background-color: green; */
  width:min-content;
  gap:.2rem;
}
.vboxSmall > * {
  margin:0;
  width:20rem;
}
.flexbox {
  /* background:red; */
  /* justify-content: center;
  align-items: center; */
  display:flex;
  max-width: 100%;
  flex-wrap: wrap;
  /* gap:.2rem; */

}
.flexbox * {
  /* margin:0rem; */
  /* max-width: calc(100%/5.04); */
  box-sizing: border-box;
  flex: 1 0 19%; /* grow, shrink, basis */
  margin: .1rem;
  /* min-width: calc(100%/5.03); */
}

.gap {
  gap: 1rem;
}
.grid {
  display: grid;
  /* background-color: red; */
  width:100%;
  grid-template-columns: repeat(auto-fill, 31rem);
  grid-gap: 1rem;
}


/* .dropdownButton:hover .dropdown {
  display: flex;
  visibility: visible;
} */
.smoky {
  background: #000000be;

}
.dropdown {
  z-index: 999 ;
  pointer-events: all;
  margin-top:1.5rem;
  flex-direction: column;
  gap:.1rem;
  position:absolute;
  right:0;
  top:5rem;

}
.dropdown .label {
  width: 100%;
  height:4rem;
  /* height:10rem; */
  /* background:red; */
  z-index: 99;
  font-size: small;
}

.dropdown > p {
  
  text-align: start;
  justify-content: start;
}

.dropdown::before {
  content: '';
  width:100%;
  height:100%;
  top:0;
  right:0;
  border-radius: .5rem;
  position: absolute;
  background: var(--dropdown-color);
  box-shadow :0 2rem 2.5rem .2rem #000000ab;
  pointer-events:all;
}

.dark {
  background-color: var(--darkLess);
}
.two {
  flex-grow: 1;
  grid-template-columns: repeat(2,1fr);
  /* grid-template-rows: max-content;  */
  grid-auto-flow: row;
}
.fadeIn {
  opacity: 1;
  transition: opacity 0s ease-in, opacity 0.0s ease-out;
}

.fadeOut {
  opacity: 0;
  transition: opacity 0s ease-in, opacity 0.0s ease-out;

}
.colorJitterButton {

width: 250px;
height: 250px;
filter: contrast(100%) saturate(1000%) brightness(110%);
background: 
linear-gradient(0deg, rgba(255, 85, 0, 0), rgba(245, 0, 0, 0)),
url(./assets/toolIcons/fractalNoise.svg);
  
}
.marginsX {
  margin-left:auto;
  margin-right: auto;
}
.marginsY {
  margin-top:auto;
  margin-bottom:auto;
}
.topbarToggle {
  overflow: hidden;
  max-width: 6rem;
  height: 100%;
  aspect-ratio: 1/1;
}


.multiButton:hover {
  background:var(--accent3Hover);
}
.multiButton {
  max-width: 9.9rem;
  min-width:9.9rem !important;
  background:var(--accent3);

  /* margin-right: auto;  */
  padding:.0rem;
}


#homeButton {
  min-width:9rem;
  max-width:9rem;
}
.grid2 {
  display: grid;
  /* background-color: red; */
  /* width:10rem; */
  grid-template-columns: '1fr 1fr';
  grid-gap: .3rem;
}
.grid2 > * {
  width:100%;
  min-width:0;
  /* margin:0; */
}


.hovering {
  animation: hovering .65s ease-in-out infinite alternate;
}

.glowing {
  animation: glowing .75s ease-in-out infinite alternate;
}


#canvasLabel {
  /* transition: opacity .2s ease-out; */
  pointer-events: none; 
  touch-action: none;
  position: absolute;
  /* background-color: var(--cssCol);  */
  width: 15rem;
  height: 15rem;
  border-radius: 50%;
  text-align: center;
  font-size:3rem;
  font-family: condensedBold;
  border: 2rem solid var(--prevCol);
  font-weight: bold;
  justify-content: center;
  align-items: center;
  vertical-align: middle;
  color: rgb(255, 255, 255); /* Set text color to orange */
}



.modal {
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
  pointer-events: all; /* Capture all clicks */
}


.selected {
  outline: .2rem solid #ffffffd1;
}

.selectedSolid {
  background:var(--accent);
  color:var(--font-inverted);
}
.selectedSolid:hover {
  background:var(--accent);
}
.selectedSolid:active {
  background:var(--accentActive);
}
.dropShadow {
  box-shadow: var(--dropShadow);
}

.dropShadowShallow {
  box-shadow: .5rem .5rem 2rem 0rem #0000003d;
}
#editUsernameButton {
  max-width:min-content;
}

.modalContent {
  border-radius: 1rem;
  position:absolute;
  gap:2rem;
  left:50%;
  top:50%;
  flex-direction: column;
  /* background:orange; */
  transform:translate(-50%,-50%);
  backdrop-filter: blur(10.5rem);
  -webkit-backdrop-filter: blur(6.5rem);
  box-shadow: 0 5rem 100rem 15rem #0000009e;
  border: .2rem solid rgb(95, 95, 95);
  min-width: 30rem;
  width:min-content;
  height:min-content;
  max-width:80%;
  padding:8rem;
}
.sizeMode {
  border:.2rem solid rgba(0, 0, 0, 0.978) !important;
  outline:.2rem solid rgba(255, 255, 255, 0.781) !important;
}

#canvasLabel > * {
  pointer-events:none;
  touch-action: none;
  display: flex;

}

.errorText {
  color: rgb(255, 100, 100);
  font-size: 2.2rem;
  text-transform: none;
  min-height:0;
}
.opaque {
  opacity: 1;
}
.transparent {
  opacity: 0;
}

.restoreButton {
  background: rgba(1, 1, 1, 0.453);
  width: 100%;
  height: 100%;
  text-align: center;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  overflow:hidden;
}
.restoreButton:hover {
  background:rgba(0, 216, 0, 0.735);
  color:black;
}
#uiTopSpacer {
  min-height:2rem;
}
#canvasContainer {
  border-radius: 0rem;
  overflow: hidden;
  box-shadow: var(--dropShadow);
  position:relative;
  width:100%;
  height:100%;
}
@keyframes flyIn {
  0% {
    transform:  rotateZ(-30deg) scale(.1);
  }
}
@keyframes glowing {
  0% {
    opacity: 1;
    /* outline-color:hsl(0, 0%, 100%) */
  }
  100% {
    opacity:.2;
    /* outline-color:hsl(0, 0%, 60%) */
  }
} 
@keyframes hovering {
  0% {
    box-shadow: 0 2rem 2.1rem .1rem #00000067;
    transform: translateY(0);
  }
  100% {
    box-shadow: 0 0rem 0rem .1rem #00000067;
    transform: translateY(2.5rem);
  }
} 

#asdfgh {
  display:flex;
  position:relative;
  align-items:center;
  justify-content:center;
  /* z-index: -1; */
  /* flex:1.5; */
  pointer-events:none;
  /* width:100%; */
  height:100%;
  /* margin-left:5rem; */
  /* background:rgba(255, 166, 0, 0.236); */
}
#filterOverlay {
  position:absolute;
  width:100%;
  height:100%;
  /* background:rgba(1, 1, 1, 1.5); */
  pointer-events:none;
  /* filter: url(assets/toolTextures/grainy.svg#grainy) brightness(5) opacity(0.15); */

  /* background:rgba(255, 166, 0, 0.236); */

}
#adaptive {
  z-index:-1;
  display: flex;
  position:absolute;
  align-self:stretch;
  flex-direction: column;
  width:100%;
  height:100%;
}

.centeredAbsolute {
  left:50%;
  top:50%;
  transform: translate(-50%, -50%);
  position:absolute;
}
.centeredAbsoluteH {
  left:50%;
  transform: translate(-50%, 0%);
  position:absolute;
}
.rightAbsolute {
  top:0%;
  transform: translate(-100%, 0%);
  position:absolute;
}
#pageBG {
  position:absolute;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow-y:auto;
  background-color: #00000050;
}
.page {
  position:absolute;
  flex-direction: column;
}

#emailVerification {
  font-size:3.5rem;
  font-weight:600;
  padding:7rem;
  gap:4rem;
  background-color: #0000001b;
  border-radius:1rem;
  text-align: center;
}
#emailVerification::after {
  font-size:3.5rem;
  font-weight:600;
  padding:5rem;
  border-radius:7rem;
  text-align: center;

}
#loginUI {
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  position:absolute;
  /* background:red; */
  pointer-events:all;
  
}
#loginForm {
  display:flex;
  width:38rem;
  padding:5rem;
  padding-top:4rem;
  border-radius:1rem;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  position:absolute;
  flex:1;
  top: calc(min(5%, 20rem));
  backdrop-filter: blur(6.5rem);
  -webkit-backdrop-filter: blur(6.5rem);
  background-color:rgba(0, 0, 0, 0.408);
}
.addButton {
  opacity:.8;
  border:.2rem solid rgba(255, 255, 255, 0.237);
  outline-offset:-.2rem;
}
.events {
  pointer-events:all;
}
.horizontal-layout {
  background-color: #5ff197;
  flex-direction: row;
}
.vertical-layout {
  flex-direction: column;
}

button.highlight {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(111, 92, 92);
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  display: flex;
  flex: 1;
  background-color: #5ff197;
}
h1 {
  font-weight: 600;
  font-family: condensedBold;
  font-size: 6rem;
  text-align: center;
}

h2 {
  text-align: center;
  font-size: 3rem;
  /* align-self:center; */
  /* width:100%;   */
  font-weight: 500;
  /* background:red; */
  margin:2rem;
  padding:0;
}
img {
  opacity:85%;
  pointer-events: none;
  justify-content: center;
  align-items: center;
}

div {
  display: flex;
}

label {
  font-size: 2rem;
  display:flex;
  align-self: flex-start;
}



nav {
  position: relative;
  outline: none;
  flex-wrap: wrap;
  display: flex;
  justify-items: center;
  flex-direction: column;
}


.menuLabel{
  pointer-events:none;
  font-size: var(--button-font-size);
  min-height: 2em;
  margin-bottom:1rem;
  align-items: center;
  z-index:1;
}
.hideIcon {
  background: red;
}

.inventory {
  position: absolute;
  bottom: 100%;
  width: 100%;
  display:flex;
  background: var(--uiCol);
  padding: 0;
  margin: 0;
}

.pinButton {
  /* background:rgba(255, 255, 255, 0.182); */
  position: absolute;
  border-radius: 50%;
  top: 6.3rem;
  right: 1.3rem;
  /* outline:2rem solid rgba(255, 255, 255, 0.1); */
  width:3.5rem;
  height:3.5rem;
  background-image: url(./assets/toolIcons/pin.svg);
  background-size: contain;
  font-size: 2rem;
  line-height: 3.5rem;
  justify-content: center;
}

.closeButton {
  opacity:.8;
  width:3.9rem;
  height:3.9rem;
  background-image: url(./assets/toolIcons/close.svg);
  /* font-size: 3rem; */
  /* background-color: hsla(0, 0%, 100%, 0.722); */
  background-size: contain;
  pointer-events: all;
  border-radius:1rem;
  background-position: 50% 50%;
  background-size: 80%;
  height:5rem;
  width:5rem;
  /* z-index: 1; */
  /* background-color:blue; */
}
.closeButton.absoluteRight {
  margin-top:-.5rem;
}

.closeButton:hover {
  opacity:.6;
  /* background-color: var(--ghost); */
}

.closeButtonSmall {
  min-width: 2rem;
  min-height:2rem;
  top: 0.2rem;
  right: 0.2rem;
}


.wide {
  width: 100%;
}
.tall {
  height: 100%;
}
.clicked {
  background-color: #5ff197;
}
.uiMenuMenuContents {
  background-color: red;
  width:100%;
  height:100%;
}
.checkmark {
  box-sizing: border-box;
  background-image: url(./assets/toolIcons/check.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width:5rem;
  height:3.8rem;
  margin:.3rem;
  /* background-color:red; */
}
table { 
  border: 1px solid #ddd;
  border-collapse: separate;
  border-radius: 4px;
  border-spacing: 0px;
  /* padding:2rem; */
}
thead {
  display: table-header-group;
  vertical-align: middle;
  border-color: inherit;
  border-collapse: separate;
}
tr {
  display: table-row;
  vertical-align: inherit;
  /* border-color: inherit; */
  border: 1px solid #ddd; 
}
th, td {
  padding: 5px 4px 6px 4px; 
  text-align: left;
  vertical-align: top;
  /* border-left: 1px solid #ddd;    */
  border: 1px solid #ddd; 
}
td {
  border: 1px solid #ddd;    
}
thead:first-child tr:first-child th:first-child, tbody:first-child tr:first-child td:first-child {
  border-radius: 4px 0 0 0;
}
thead:last-child tr:last-child th:first-child, tbody:last-child tr:last-child td:first-child {
  border-radius: 0 0 0 4px;
}
.PeriodSelecter {
  /* position:relative; */
  pointer-events:all;
  gap:2rem;
  /* background:var(--uiCol); */
  border-radius: 10rem;
  padding:1rem;
  min-width:max-content;

  
}

.PeriodSelecter > * {
  font-size:2.1rem;
  pointer-events: all;
  touch-action: all;
  border-radius: 10rem;
  flex-direction:row;
  width:max-content;
}
.PeriodSelecter .selected {
  background:rgba(0, 0, 0, 0.366);
}
.table {
  outline: 1px solid #ddd;
  border-radius: 1rem;
  flex-direction: column;
  width:120rem;
  color: rgba(255, 255, 255, 0.843);
  height:max-content;

}
.table-column {
  /* box-sizing: border-box; */

  display: flex;
  flex-direction: column;
  /* gap: 1rem; */
  align-items: center;
  /* justify-content: center; */
  width: 100%;
  height: 100%;
  padding: 1rem;
  border-radius: 1rem;
  height:calc(max-content - 4rem);
}

.table-cell {
  min-height:3.5rem;
  max-height:3.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size:2rem;
  width: 100%;
  height: 100%;
  padding: 1.5rem;
  border:.5px solid rgba(255, 255, 255, 0.375);

}

.input {
  pointer-events:all;
}
.noInput {
  pointer-events:none;
}
.inputBlocker {
  position:fixed;
  cursor: default;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0, 0, 0, 0.518);
  z-index: 1;
}
.uiMenu {
  transition: opacity 3s ease-in-out;
  display:flex; 
  /* position:relative; */
  position:absolute;
  border-radius: 1rem;
  flex-direction:column;
  /* background:rgba(0, 0, 0, 0.215); */
  height: min-content;
  max-height:min-content;
  width: 100%;
  max-width: min(60rem, calc(100% - 12rem));
  padding: 2rem;
  
  align-items: center;
  align-self:center;

}
.webbypaint {
  background: var(--webby-gradient);
  /* font-size:5rem; */
  font-weight:500;
  font-family: condensedBold;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.customSlider {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 5.2rem;
  /* border-radius: 0rem; */
  /* background: #01ff7381; */
  outline: none;
  opacity: 1;
  appearance: none;
  -webkit-appearance: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: all;

}
.customSliderTrack {
  width: 100%;
  height: 1rem;
  border-radius: .5rem;
  background: #00000069;
  outline: none;
  opacity: 1;
  -webkit-transition: .2s;
  transition: opacity .2s;
  /* margin-top: 1rem; */
  /* margin-bottom:1rem; */
  pointer-events: none;
}
.transformHandle {
  /* min-width:5rem;
  min-height:5rem; */
  border-radius:100rem;
  background:rgba(255, 255, 255, 0.58);
}
.transformHandle:hover {
  background:rgba(255, 255, 255, 0.852);

}
.rainbowGradient {
  background: linear-gradient(to right, 
  hsl(0, 100%, 50%),  /* Red */
  hsl(60, 100%, 50%), /* Yellow */
  hsl(120, 100%, 50%), /* Green */
  hsl(180, 100%, 50%), /* Cyan */
  hsl(240, 100%, 50%), /* Blue */
  hsl(300, 100%, 50%), /* Magenta */
  hsl(360, 100%, 50%) /* Red */
);
}
.valueGradient {
  background: linear-gradient(to top, rgb(0, 0, 0), rgb(255, 254, 253));
}
.sliderProgress {
  /* -webkit-appearance: none; */
  /* padding-left:1rem;
  padding-right:-1rem; */
  position:relative;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.555);
  outline: none;
  opacity: 1;
  pointer-events: none;
}


#loadingUI {
  pointer-events: none;
  transition: opacity .1s ease-in-out;
  display:flex;
  justify-content: center;
  align-items: center;
  color:#ffffffb5;
  opacity:0;
  font-size:1.5rem;
  text-align: center;
  background:transparent;
  /* display:none; */
  width:100%;
  height:100%;
  position:absolute;
}
#newCanvasButtonContainer {
  flex-direction:column;
  width:100%; 
  max-width:30rem; 
  padding:.5rem;
  background:rgba(0, 0, 0, 0.519); 
  border-radius:1rem;
  align-items: center;
  justify-content: center;
  justify-items: center;
  align-content: center;
  /* height:min-content; */
  /* align-self:flex-end; */
}


#newCanvasText{
  font-size: 1.5rem;
  padding-bottom:2rem;
  color:var(--accent);
  /* color: #ffffff; */
  font-weight: 600;
}
#newCanvasIcon {
  /* position:absolute;
  top:50%;
  left:50%; */
  /* transform:translate(-50%, -50%); */
  width: 6rem;
  height: 6rem;
  /* background: red; */
  mask-image: url('./assets/toolIcons/add_circle.svg');
  mask-size: contain;
  -webkit-mask-image: url('./assets/toolIcons/add_circle.svg');
  -webkit-mask-size: contain;
}

#galleryUI {
  display:flex;
  position:absolute;
  width:100%;
  height:100%;
  overflow-y:auto;
  pointer-events: auto;
}
#newCanvas::before {
  content: 'NEW';
  position: absolute;
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
}
#newCanvas {
  /* position:absolute; */
  border-radius: .5rem;
  padding-top:20%;
  position:relative;
  min-width:20rem;
  height:100%rem;
  background-color:rgba(0, 0, 0, 0.411);
  /* align-items: center; */
  justify-content: center;
  opacity:.7;
}
#newCanvas::after {
  content: '';
  position: absolute;
  transform:translate(0, 50%);
  width: 10rem;
  height: 10rem;
  background: url('./assets/toolIcons/add_circle.svg');
  background-size: contain;
}

#galleryStats {
  position:relative;
  box-sizing: border-box;
  width:100%;
  height:100%;
  display:flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap:1rem;
  padding:1rem;
  background:rgba(0, 0, 0, 0.411);
  border-radius: 1rem;
  pointer-events: none;

}
#galleryControls {
  padding:1rem;
  padding-top:5rem;
  box-sizing: border-box;
  gap:1rem;
  justify-items: start;
  align-self: start;
  max-width:100rem;
  justify-self: center;
  align-self: center;
  width:90%;
  /* max-width:80rem; */
  /* background:rgba(184, 48, 48, 0.552); */
  /* width:100%; */
  /* max-height:15rem; */
  position:relative;

}
#galleryGridContainer {
  box-sizing: border-box;
  position:relative;
  width:100%;
  height:100%;
  display:flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow-y:auto;
}
#galleryGrid {
  box-sizing: border-box;
  position:relative;
  pointer-events: all;
  display:grid;
  width:100%;
  height:100%;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(50, 1fr);
  touch-action: auto;
  padding: .6rem;
  gap: .6rem;
  background-color: rgba(0, 0, 0, 0.307);
}

/* @media (min-width: 50rem) {
  #galleryGrid {
    grid-template-columns: repeat(4, 1fr);
  }
} */
@media (min-width: 50rem) {
  #galleryGrid {
    /* grid-template-columns: repeat(auto-fit, max(25rem)); */
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (min-width: 90rem) {
  #galleryGrid {
    /* grid-template-columns: repeat(auto-fit, max(25rem)); */
    grid-template-columns: repeat(7, 1fr);
  }
}
.topSpacer {
  min-height:2rem;
  width:5rem;
  position:relative;
  pointer-events: none;
  /* background:red; */
}
.topSpacer2 {
  min-height:4rem;
  width:5rem;
  position:relative;
  pointer-events: none;
  /* background:red; */
}
.popup {
  background:var(--uiCol);
  border-radius: 1rem;
  flex-direction: column;
  font-size: medium;
  position:absolute;
  left:50%;
  top:50%;
  gap:2rem;
  transform:translate(-50%, -50%);
  width:max-content;
  height:max-content;
  padding:5rem;
}
#galleryThumbuiMenu{
  
  position:absolute;
  width:40rem;
  height:40rem;
  border-radius:1rem;
}
.galleryThumb {
  box-sizing: border-box;
  position:relative;
  padding:0;
  border-radius: 1rem;
  overflow:hidden;
  padding-bottom:100%
}
.galleryThumb:hover {
  outline: .5rem solid #ffffff9b;
}
.galleryThumb.selected {
  outline: .5rem solid #ffffffd1;

}
.primary {
  background:var(--accent);
  color:var(--font-inverted);
  /* font-size:2.2rem;
  padding:4.5rem; */
}
.primary:hover {
  background:var(--accentHover);
}
.pageUI {
  position:relative;
  width:100%;
  height:100%;
  display:flex;
  /* justify-content: center; */
  align-items: center;
  flex-direction: column;
  padding:7rem;
  box-sizing: border-box;
  overflow-y:auto;
  gap: 2rem;
  font-size:2.5rem;
  /* background-color: var(--uiCol); */
  /* box-shadow: var(--dropShadowBig); */
  /* backdrop-filter: blur(5rem); */

}
.awaitingInput {
  outline: .5rem solid #ffffff4a;
  color:var(--accent);
  /* animation: glowing 1s ease-in-out infinite alternate; */
  background-color: rgba(255, 255, 255, 0.1);
}

/* .selected.layerThumb{
  outline: .35rem solid var(--accent);
} */

.layerThumb.lockAlpha::after {
  content: '';
  background: url('./assets/toolIcons/lock.svg') center/contain no-repeat;
  width: 30%;
  height: 30%;
  display: block;
  position: absolute;
  padding:.5rem;
  right: 0;
  bottom: 0;
}

.hidden {
  /* transition: background-color 2s, min-height 2s ease-in-out, height 2s ease-in-out !important; */
  height:0rem;
  background-color:red;
  min-height:0rem;
  visibility: hidden !important;
  display:none !important;
}
.noDisplay {
  display:none;
}
.galleryThumbImage {
  position:absolute;
  height:100%;
  width:100%;
  top:0;
  object-fit: cover;
  background: var(--canvasCol);
}



.playButton {
  position: absolute;
  /* right: -2rem;
  bottom: -2rem; */
  border-radius:50%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  padding:0;
  margin:0;
  width: 6.5rem;
  min-height: 6.5rem;
  background: url('./assets/toolIcons/play.svg');
  /* background-color: var(--accent); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: .15rem center; /* Adjust as needed */
  opacity:.6;
  background-color: rgba(0, 0, 0, 0.735);
  
}

.playButton:focus,
.playButton:hover {
  background-color: rgba(0, 0, 0, 0.235);
  /* background-color: transparent; */
  opacity: 1;
  filter: contrast(0) sepia(100%) hue-rotate(116deg) brightness(1.4) saturate(0.88);
}

.deleteButton { 
  background-color:rgba(255, 0, 93, 0.812);
  /* color:#ffffffe2; */
  position:absolute;
  right:.5rem;
  top:.5rem;
  width:6.5rem;
  height:6.5rem;
  border-radius: .75rem;
  
  background-size: 80%;
  background-position: center;
  background-image: url(./assets/toolIcons/trash.svg);
  /* filter: brightness(0%) invert(100%); */
}
.deleteButton:hover {
  background-color:rgb(255, 0, 93);
}


input {

  transition: background-color var(--button-transition), color var(--button-transition), box-shadow var(--button-transition);
  -webkit-user-select: text;
  user-select:text;
  display: flex;
  background:red;
  text-transform: none;
  justify-content: center;
  text-align: start;
  line-height:1.5rem;
  vertical-align: middle;
  padding:2rem;
  /* min-height: 5.5rem; */
  /* max-height: 5.5rem; */
  flex:1;
  flex-grow: 1;
  padding-left: 2rem;
  background-color: var(--dark);
  
  border: none;
  margin:.1rem;
  border-radius: var(--button-radius);
  color: rgba(255, 255, 255, 0.728);
  outline: rgba(255, 255, 255, 0.441) solid .3rem;
  font-size: 2.5rem;
  font-weight: 300;
  /* z-index: 10; */
  border-color: var(--focus-color);
}

input::placeholder {
  color:rgb(255, 255, 255, .6);
  opacity:.7;
  pointer-events: none;
}
input[type=tel] {
  text-align: center;
  padding-left:0rem;

}
input:focus {
  outline: 2px solid var(--accent);
}
input::selection {
  background-color: rgba(250, 250, 250, 0.138);
  color: rgba(255, 255, 255, 0.962);
}
input[type=number] {
  text-align: center;
  padding-left:.5rem;

}
button[type=submit] {
  margin-top:1rem;
}
button:hover, .button:hover {
  background-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 0 0 2px var(--focus-color);
  border-color: var(--focus-color);
}

button, .button {
  pointer-events: all;
  cursor: pointer;
  transition: background-color var(--button-transition), color var(--button-transition), box-shadow var(--button-transition);
  display: flex;
  flex-direction: column-reverse;
  align-items:center;
  justify-content: center;
  text-align: center;
  min-height: 2rem;
  max-height: 7rem;
  background-color: var(--dark);
  border: none;
  margin:.1rem;
  border-radius: .5rem;
  color: var(--font);
  font-size: var(--button-font-size);
  font-family: condensed;
  position:relative;
  flex-grow: 1;
  padding: 2rem;
  /* backdrop-filter: blur(var(--button-blur));
  -webkit-backdrop-filter: blur(var(--button-blur)); */
  
}

button:active, .button:active {
  background-color: var(--accent);
  color: var(--font-inverted);
  box-shadow: 0 0 0 2px var(--focus-color);
  border-color: var(--focus-color);
}



.toolTexturesGrid {
  display: flex;
  flex-wrap: wrap;
}
.toolTexture {
  background-color:rgba(0, 0, 0, 0.205);
  border-color:red;
  max-height:6rem;
  flex-direction:column-reverse;
  transition: borderColor, 0.1s ease-in-out;
}
#toolTexturesInventory {
  display: grid;
  width:100%;
  grid-template-columns: repeat(auto-fit, minmax(6rem, 1fr));
  grid-template-rows: repeat(auto-fit, minmax(6rem, 1fr));
  background-color:rgba(0, 0, 0, 0.205);
}
.inventoryGrid {
  gap:0px;
  display:grid;
}

.inventorySlot {
  overflow: hidden;
  box-sizing:border-box;
  margin:.8px;
  background:rgba(0, 0, 0, 0.181);
  border-radius:.4rem;
}
/* .toolButtonb {
  max-height:5rem;
  min-width:1rem;

  display: 'flex';
  align-items: 'flex-start';
  justify-content: 'center';
  font-family: condensed;
  order: 1;
} */
.rotateBG {
  pointer-events:all;
  background:var(--dark);
  /* width:6rem;
  height:6rem; */
  /* box-sizing: border-box; */
  margin:.1rem;
  border-radius: .6rem;
  align-items: center;
  justify-content: center;
}
.rotateControl {
  box-sizing: border-box;
  pointer-events: all;
  /* background:blue; */
  border: .5rem solid var(--grabber);
  border-radius: 50%;
  width: 5.5rem;
  height: 5.5rem;
}
.rotateControl .div {
  pointer-events: none;

  background:blue;
  border-radius: 50%;
  width: 5.5rem;
  height: 5.5rem;

}
.inventoryGridb {
  position: relative;
  /* background:red; */
  pointer-events:all;
  width:100%;
  display: grid;
  grid-auto-flow: dense;
  direction: 'rtl';
  direction: var(--inventoryGridDirection);
}
.proceduralTexture {
  /* width:256px; */
  /* height:256px; */
  max-height: var(--proceduralTextureSize);
  min-height: var(--proceduralTextureSize);
  min-width: var(--proceduralTextureSize);
  max-width: var(--proceduralTextureSize);
  background:red;
}

.expand {
  width:100%;
  height:100%;
}
#toolBarContainer {
  width:100%;
  /* height: 100%; */
  position:relative;
  box-sizing:border-box;
  pointer-events: all;
  background:rgb(164, 150, 173);
}

.toolsGrid {

  pointer-events: all;
  width:100%;
  height:min-content;
  display:grid;
  padding:0;
  box-sizing: border-box;
  grid-template-columns:repeat(auto-fit,minmax(var(--minPanelWidth), 1fr));
}

#toolsInventory {
  position:absolute;
  display: 'flex';

  /* min-height:5rem; */
  min-height: 50rem;
  min-width:50rem;
  width:100%;
  height:100%;
  /* background:rgba(247, 247, 247, 0.059); */
  margin-top:2rem;
  border-radius:1rem;
  outline:2px solid rgba(254, 254, 254, 0.144);
  /* transition: height 2s !important; */
  /* background-color:rgba(255, 166, 0, 0.856); */
}


.toolButton {
  overflow: hidden;
  min-height: 6.5rem;
  max-height:10.5rem;
  box-sizing:border-box;
  padding:1rem;
  margin:.8px;
  gap:0rem;
  cursor:default;
}
.toolButton:active {
  background:var(--darker);
  color:white;
}
.toolButton:focus {
  background:var(--darker);
}
.toolButton:hover {
  background:var(--darker);
}
.buttonLabel{
  /* background:red; */
  pointer-events:none;
  font-size:1.7rem;
  min-height: 4rem;
  align-items: center;
}
.col {
  flex-direction:column;
}
.row { 
  flex-direction:row;
}
.noWrap {flex-wrap:nowrap;white-space: nowrap;}
#mainSliders {
  gap:3rem;
  margin-top:-1rem;
  flex-direction: row;
  flex-wrap:wrap;
  row-gap: 0rem;
  width: 100%;
}
#mainSliders > * {
  /* background:red; */
  /* flex-grow:1; */
  width:auto;
  /* height:2rem; */
}

#slidersz {
  flex-grow:1.75;
}
#paintUI {
  position:relative;
  pointer-events:none;
  gap:.3rem;
  box-sizing: border-box;
  width:var(--uiWidth);
  display: flex;
  touch-action: none;
  flex-direction: column;
}
#rgbSliders {
  box-sizing:border-box;
  min-height:19rem;
}

#toolsAndColors {
  /* background:purple; */
  flex-direction:column;
  gap:.5rem;
  width:auto;
  height:100%;
  flex-grow:1.5;
  min-height:max-content;
  overflow: none;
  transition: transform .2s ease-in-out;
  /* transform-origin: top right;
  transform: scale(1); */
}
#toolsAndColors.minimize {
  /* visibility: hidden; */
  transform: scale(0);
}

#colorControls {
  position:relative;
  flex-direction: column;
  gap:1rem;
  width:auto;
  /* height:100%; */
  /* min-height:max-content; */
  /* height:100rem; */
  /* width:4rem; */
  /* width:70rem; */
  background:rgba(178, 91, 91, 0.636);
}

#colorSliders {
  gap:1rem;
  flex-direction: column;
}
.fontMid {
  font-size:2rem;
}

.toolButton:last-child {
  order: 0;
}

.componentPlaceholder {
  /* width: 10rem;
  height:10rem; */
  /* overflow:visible; */
}
.component {
  /* background:red; */
  width: 100%;
  height: 100%;
}
.angleControl {
  pointer-events:all;
  position:relative;
  min-width:15rem;
  min-height:15rem;
  justify-self: center;
  align-self:center;
  background:red !important;
  z-index: 1;
}
.angleControl::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
  height: 80%;
  border-radius: 50%;
  border: 1px solid var(--grabber);
  transform: translate(-50%, -50%);
  z-index: -1;
}
.prevColor {
  background: var(--prevCol) !important;
}

.highlighted {
  background-color: var(--buttonHighlighted);
  color:black;
}
.highlighted:hover {
  background-color: var(--buttonHighlighted2);
  color:black;
}
.highlighted.subtle {
  background:var(--ghost);
}
.highlighted:focus {
  background-color: var(--buttonHighlighted);
  color:black;  
}

.card-tall {
  grid-row: span 2 / auto;
}

.card-wide {
  grid-column: span 2 / auto;
}

.buttonIcon {
  align-items:center;
  justify-content: center;
  height:4rem;
  pointer-events: none;
  filter: invert(100%);
}
.transformControl {
  /* background:red; */
  width:12rem;
  min-height:10rem;
  padding-bottom:3rem;
}
.transformControl img {
  pointer-events:none;
  padding:1rem;
  min-height:7rem;
  /* min-height:7rem; */
}
.expandIcon {
  position: absolute;
  width: 3.5rem;
  bottom: -.70rem;
  right: -.40rem;
}



.dot {
  width: 10rem;
  position:absolute;
  border-radius:100%;
  height:10rem;
  /* background-color: rgb(255, 255, 255); */
  pointer-events: none;
}
.toggleButton,
.toggleButton:focus {
  background-color: var(--tool);
}
.toggleButton.toggled,
.toggleButton.toggled:focus {
  background-color: var(--toggled);
}

.colorJitter .sliderProgress {
  background: linear-gradient(
    90deg, 
    rgba(255,0,0,1), 
    rgba(255,154,0,1), 
    rgba(208,222,33,1),
     rgba(79,220,74,1),
      rgba(63,218,216,1), 
      rgba(47,201,226,1), 
      rgba(28,127,238,1), 
      rgba(95,21,242,1),
       rgba(186,12,248,1), 
       rgba(251,7,217,1),
        rgba(255,0,0,1));
}

.hotkey {
  position: relative;
  padding: .5rem;
  border-radius: .5rem;
  margin: .5rem;
  width: 10rem;
  pointer-events: none;
  
}

.hotkeyAction {
  width:50%;
  background-color: transparent;
  padding: .5rem;
  border-radius: .5rem;
  margin: .5rem;
  pointer-events: none;
  /* background:red; */
  font-family: condensed;
  color: font;

}

.top {
  z-index: 99;
}


.sliderGrabber {
  pointer-events: all;
  position: absolute;
  bottom: 50%;
  box-sizing:border-box;
  right: 0%;
  transform: translate(50%, 50%);
  background: rgb(189, 189, 189);
  /* background:red; */
  width: 3rem;
  height: 3rem;
  border-radius: 100%;
  transition: width .1s, height .1s;  

}

.sliderGrabber::before {
  content: "";
  pointer-events: all;
  position: absolute;
  top: -1rem;
  left: -1rem;
  right: -1rem;
  bottom: -1rem;
  pointer-events: none;
  /* background-color: red; */
}

pre {

  flex-direction: row;
}
.touchScroll {
  /* -webkit-overflow-scrolling: touch; */
  /* overflow-y: auto; */
}
li.customBullets {
  list-style: none;
  padding-left: 0;
}

li.customBullets::before {
  content: "✓";
  color: rgb(0, 194, 0);
  font-weight: bold;
  display: inline-block;
  width: 1.5em;
  margin-left: -1.5em;
}
#pricing {
  width:100%;
  height:100%;
  justify-content: center;
}
.gridFade {
  background-image:url('./assets/toolIcons/fadedGrid.svg');
  background-size:cover;
  background-position:center;
}
.lineV {
  width:1px;
  height:100%;
  background:rgba(255, 255, 255, 0.409);
}
.lineH {
  width:100%;
  height:1px;
  background:rgba(255, 255, 255, 0.409);
}
.pricingCards {
  display:flex;
  flex-direction: row;
  flex-wrap: wrap;
  width:100%;
  /* height:max-content; */
  /* background:rgb(157, 255, 0); */
  gap: 1.5rem;
  row-gap: 7rem;
  justify-content: center;
  align-items: center;
}
.pricingCard {
  position:relative;
  border-radius: 1.8rem;
  background:rgb(59, 65, 75);
  /* background:rgb(49, 54, 62); */
  /* background:var(--uiCol); */
  display: flex;
  padding:3.8rem;
  gap: 1rem;
  flex-direction: column;
  /* align-items: center; */
  /* justify-content: center; */
  width:40rem;
  transition: box-shadow .1s ease-in-out;
}
.pricingCard > * {
  pointer-events: none;
}
.pricingCardPrimary {
  /* background:var(--accent); */
  /* color:var(--font-inverted); */
  color:white;
  z-index:1;
  /* padding:6rem; */
}
.discount {
  position:absolute;
  right:50%;
  transform:translate(50%, -3.2rem);
  width:max-content;
  text-align: center;
  justify-content: center;
  align-items: center;
  /* padding-bottom:5rem; */
  height:2.5rem;
  top:.3rem;
  /* margin-top:-.5rem; */
  font-size:2rem;
  background:rgb(81, 104, 251);
  /* background:rgb(209, 115, 0); */
  border-radius: 3.5rem;
  /* border-top-left-radius: 1.5rem; */
  padding:1.5rem 4rem;
}
.discountWide {
  position:absolute;
  right:50%;
  transform:translate(50%, -5.7rem);
  width:101.5%;
  justify-content: center;
  align-items: center;
  padding-bottom:2.1rem;
  height:7.5rem;
  top:.3rem;
  margin-top:-1.7rem;
  font-size:2.5rem;
  background:rgb(81, 104, 251);
  z-index:-1;
  border-radius: 2rem;
}
.miniDiscount {
  background:rgb(81, 104, 251);
  border-radius: .5rem;
  padding:1rem;
  margin-left:1rem;
  margin-right:-1rem;
  color:white;
}

.line {
  width:26rem;
  max-height:.1rem;
  background:rgba(255, 255, 255, 0.256);
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.crossThrough {
  position: absolute;
  display: inline-block;
}
.crossThrough::before {
  content: '';
  position: absolute;
  top: 50%;
  left: -10%;
  right: 0;
  bottom: 0;
  /* opacity:0; */
  background: rgba(255, 255, 255, 0.941); /* Line color */
  height: 1px; /* Line thickness */
  width: 120%;
  transform: rotate(20deg);
  transform-origin: center;
}
.enlarge {
  transition: transform .08s ease-in-out;
  transform:translate(-50%,-50%) scale(1.5) !important;
  transform-origin: center !important;
}
.grow {
  width: 5rem;
  height: 5rem;
  z-index: 10;
}
.sliderBg {
  min-height: 6rem;
  width: 100%;
  position:relative;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  pointer-events: all;
  /* background:red; */
}

.sliderTrack {
  align-self: center;
  border-radius: 3rem;
  background-color: #00000068;
  height: 1rem;
  width: 100%;
  display:flex;
  pointer-events: none;
}
.sliderTrackProgress {
  position:relative;
  border-radius: 3rem;
  height: 100%;
  display:flex;
  background:var(--ghost-stronger);
}
.settingsContainer {
  pointer-events: none;
  flex-direction: column;
  background:none;
}
#label {
  position:absolute;
  font-size: 1.7rem;
}

.polygonPoint {
  box-sizing: border-box;
  position:absolute;
  background:red;
  outline: 2px solid hsl(0, 0%, 100%);
  border-radius: 2rem;
  min-width: 1.5rem;
  min-height:1.5rem;
  transform: translate(-50%, -50%);
}
.highlightOutline {
  /* padding:5rem; */
  border: .15rem solid rgba(255, 255, 255, 0.122);
}
.pref {
  justify-self:flex-end;
  padding:0rem;
  min-height:1rem;
  max-width:10rem;
}
.priceDisplayYearly {
  /* background:red; */
  font-size:2.5rem;
  /* place-items: center; */
  text-align: center;
  align-content: center;
  justify-content: center;
  padding:1rem;
  /* align-items: ; */
}
.popover {
  z-index: 100;
  background: var(--uiCol);
  flex-direction: column;
  position: absolute;
  top: 100%;
  left: 0;
  gap:.5rem;
  border-radius: 1rem;
  width: calc(max-content + 2rem);
  height: max-content;
  padding:1rem;
  box-sizing: border-box;
  box-shadow: var(--dropShadowDark);
}
#popoverBG {
  pointer-events: all;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  /* background: rgba(0, 0, 0, 0.768); */
  z-index: 1; /* Below popover but above other content */
}
.dragging {
  opacity:.5;
  /* transition: transform 0.1s ease-in-out; */
}
.dragClone {
  /* transform:scale(1.1); */
  z-index: 100;
  /* padding:5rem; */
  /* min-width:min-content; */

  /* outline: .5rem solid var(--accent); */
  box-shadow: var(--dropShadowDark) !important;

}

.confirm {
  background: var(--accent);
  color: var(--font-inverted);
  font-size: var(--font-size-medium);
  padding:3.5rem;
  font-size:1.8rem;
  /* font-family: sans-serif; */
  /* max-width:50rem; */
  align-self:center;
  font-weight:400;
/* font-size:x-large; */
}
.confirm:hover {
  background-color: var(--accentHover);
  /* box-shadow: var(--dropShadow); */
}
.confirm:active {
  
  background-color: var(--accentActive);
  /* box-shadow: var(--dropShadow); */
}
.cancel {
  background: var(--cancel);
  color: var(--font-inverted);
  font-size: var(--font-size-medium);
  padding:3.5rem;
  font-size:1.8rem;
  /* max-width:50rem; */
  align-self:center;
  font-weight:400;
/* font-size:x-large; */
}
.cancel:hover {
  background: var(--cancelHover);
}
.readableText {
  font-family:sans-serif; 

}

.centeredH {
  transform: translateX(50%);
  font-size:10rem;
  outline:red solid 1rem;
  /* align-items: center; */
}
.centered {
  align-items: center;
}

.cText {
  text-align: center !important;

}
.f1 {
  font-size:2rem;
}
.f2 {
  font-size:1.75rem;
}
.cA {justify-content: center;}
.cJ {align-items: center;}
.cA {text-align:center;}
.cSelf {align-self:center; justify-self:center; justify-items: center;}

.c {align-items:center; justify-content:center;}
button.loading {
  color:transparent;
  /* content: 'LOADING'; */
}
button.loading::before {
  content: '';
  box-sizing: border-box;
  /* position: 30%; */
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 5rem;
  height: 5rem;
  transform: translate(-50%, -50%);
  border-radius: 100%;
  border: .4rem solid rgba(110, 110, 110, 0.664);
  border-top-color: rgba(255, 255, 255, 1);
  /* margin-left:20%; */
  animation: loading-spin 1s linear infinite;
}
.pricingSelecter { 
  background:var(--uiCol);
  width:90%;
  min-width:50rem;
  position:relative;
  flex-direction: row;
  align-self:center;
  gap:1rem;
  padding:1rem;
  border-radius: 1rem;
  outline:.1rem solid rgba(245, 55, 55, 0.32);
  /* outline:.7rem solid rgba(69, 245, 157,0.8); */
  box-shadow: var(--dropShadow);
}
.pricingSelecter button {
  flex:1;
}

.blurry {
  backdrop-filter: blur(10rem);
  -webkit-backdrop-filter: blur(10rem);
}
.blurryLow {
  backdrop-filter: blur(1rem);
  -webkit-backdrop-filter: blur(1rem);
}
.buttonSize {
  min-height:6rem;
  /* box-sizing:border-box; */
  /* margin:.5rem; */
  border: none;
  margin:.1rem;
}
.autosaveItem {
  box-sizing: border-box;
  padding:0rem;
  margin:0rem;
  height: 8rem;
}
.conflictItem {
  background:var(--dark);
  flex-direction: column;
  margin:1rem;
  border-radius: 1rem;
  min-height:45rem;
  max-height:90rem;
  max-width:25rem;

}
.conflictThumbnail {
  background:var(--canvasCol);
  border-radius:.5rem;
  overflow:hidden;
}
.autosaveThumbnail {
  max-width:5rem;
  margin-left:.3rem;
  min-width:6.2rem;
  min-height:6.2rem;
  max-height:6.2rem;
  background:var(--canvasCol);
  border-radius:.5rem;
  overflow:hidden;
}

.loadingStatic::before {
  content: '';
  box-sizing: border-box;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 10rem;
  height: 10rem;
  transform: translate(-50%, -50%);
  border-radius: 100%;
  border: .4rem solid rgba(255, 255, 255, 0.664);
  border-top-color: rgba(255, 255, 255, 1);
  /* animation: loading-spin 1s linear infinite; */
}

.loading::before {
  content: '';
  box-sizing: border-box;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 10rem;
  height: 10rem;
  transform: translate(-50%, -50%);
  border-radius: 100%;
  border: .4rem solid rgba(255, 255, 255, 0.664);
  border-top-color: rgba(255, 255, 255, 1);
  animation: loading-spin 1s linear infinite;
}

.bg {
  background: var(--uiCol);
}

.left {
  justify-content: flex-start;
}

.red {
  background: red;
}

.resetButton {
  width:3rem;
  height:3rem;
  background:var(--dark);
}

.resetButton:hover {
  background:rgba(254, 254, 254, 0.167);
}
.resetButton:active {
  background:var(--accent);
}

.inputOverlay {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  /* background:rgba(0, 0, 0, 0.567); */
  pointer-events: all;
}

.show {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.1s ease-in-out; /* Fade in transition */
}

/* This class will be used to hide the element */
.hide {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 1.5s, opacity 0.5s ease-in-out; /* Fade out transition */
}

.fadeOut {
  opacity: 0 !important;
  /* outline: 2px solid green; */
  transition: opacity 0.5s ease-in-out; 
}

.menuTopBar {
  height:5rem;
  align-items: center;
  gap:1rem;
  justify-items: center;
  justify-content: center;
  position:relative;
  /* background:red; */
}

.menuTopBar .optionsButton {
  right:0%;
  position:relative; 
  height:min-content;
  width:min-content;
}
.svgIcon {
  stroke: red; /* Change the stroke color */
}
.optionsButtonMinimal {
  position:relative;
  margin-left:auto;
  right:0;
  top:-.16rem;
  width:2rem;
  /* min-height:3rem; */
  background:'transparent';
  background-color:'transparent';
  border-radius: 1rem;
  /* border-top-right-radius: 1rem; */
  padding:1.5rem;
  z-index:1;
  /* margin:1rem; */
  pointer-events: all;
  background-image: url('./assets/toolIcons/threeDotsHorizontal.svg');
  background-position:center;
  background-repeat: no-repeat;
  /* opacity:.7; */
  background-size: contain;
  /* background-color:red; */


}
.miniControls > * {
  pointer-events:all;
  cursor:pointer;
}
.optionsButtonMinimal:hover {
  background-color:var(--hover);
}
.optionsButton {
  position:absolute;
  right:0;
  top:0;
  min-width:3rem;
  min-height:3rem;
  background:'transparent';
  background-color:'transparent';
  border-radius: .5rem;
  padding:1rem;
  margin:1rem;
  pointer-events: all;
  background-image: url('./assets/toolIcons/hamburger.svg');
  /* opacity:.7; */
  background-size: contain;
}
.optionsButton:hover {
  background-color:var(--hover);
}

.topRight {
  position:absolute;
  right:0;
  top:0;
}

.noPadding {
  padding:0;
}

.container {
  box-sizing:border-box;
  position:relative;
  width:100%;
  flex-direction:column;
  justify-items: start;
  background:var(--dark);
  padding:.5rem;
  border-radius: .5rem;
  /* font-size:2.5rem; */
}

.subtleHighlight {
  background:red;
}

.noInputWhileDrawing {
  pointer-events: none !important;
  touch-action: none !important;
}

.collapseButton{
  position:absolute;
  right:0rem;
  top:0rem;
  width:5rem;
  height:5rem;
  background:var(--dark);
  border-radius: 100%;
  padding:1rem;
  margin:1rem;
  pointer-events: all;
  background-image: url('./assets/toolIcons/down.svg');
  background-size: contain;
}
.collapseButton:hover {
  background-color:var(--hover);
}
.collapsed {
  height:0rem;
  min-height:1rem;
  min-width: 1rem;
  width:0rem;
  padding:0rem;
  margin:0rem;
  transition: height 0.5s, min-height 0.5s, padding 0.5s, margin 0.5s, visibility 0.5s, opacity 0.5s;
}
.colorSwatch {
  width:100%;
  height:100%;
  min-width:5rem;
  min-height:5rem;
  border-radius:.5rem;
  /* max-height:20rem; */
}

.moveGrabber {
  pointer-events:all;
  top:0rem;
  left:0;
  position:absolute;
  max-width:4rem;
  height:7rem;
  min-width:3rem;
  cursor: grab;
  /* background:red; */
}
.moveGrabber::after {
  content: '';
  position: absolute;
  top: 2rem;
  left: 50%;
  top:50%;
  width:1rem;
  height:5.8rem;
  transform: translate(-50%, -50%);
  background: var(--dark);
  border-radius: 1rem;
  pointer-events: none;
}
.centerGrabber {
  height: 3rem;
  left:0%;
  border-radius: .5rem !important;
  pointer-events: all;
  cursor: grab;
  position:absolute;
  width:100%;
  /* background:red; */
}
.centerGrabber.relative {
  position:relative;
  top:0;
  height: 3.5rem;
}
.centeredTop {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);

}
.centerGrabber::after {
  content: '';
  position: absolute;
  top: 2rem;
  left: 50%;
  top:50%;
  height:1rem;
  width:5.8rem;
  transform: translate(-50%, -50%);
  background: var(--dark);
  border-radius: 1rem;
  pointer-events: none;
}

/* .centerGrabber:hover {
  background: var(--ghost);
} */

.verticalSlider {
  width: 7rem;
  height: 10rem;
  background:red;
}

.absolute {
  position:absolute;
}
.absolute.centered {
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  text-align: center;
}
.absoluteRight {
  position:absolute;
  bottom:0rem;
  width:max-content;
  right:0rem;
  text-align:center;
  justify-content: center;
  /* background:red; */
  /* right:10rem; */
}

.ripout {
  max-width:1rem !important;
  position:relative;
  border-radius: 1rem;
  padding:0rem;
  min-width:4rem;
  margin:0rem;
  /* background:var(--dark); */
}
.ripout::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  height: 100%;
  transform: translate(-50%, -50%);
  border-radius: 1rem;
  width:1rem;
  background:var(--darkLess);
  pointer-events: none;
}

.red {
  background:red !important;
}
.green {
  background:rgb(30, 233, 30) !important;
}
.headerButton {
  width:6rem;
  height:6rem;
  max-height:6rem;
  max-width:6rem;
  min-height:6rem;
  min-width:6rem;
  background-color:var(--darkLess);
  border-radius: 5rem;
  /* background:red; */
  backdrop-filter: blur(6rem);
  -webkit-backdrop-filter: blur(6rem);
  /* backdrop-filter: blur(5rem); */

  
}
.headerButton.icon {
  background-size:65%;
}

.accent2 { background-color: var(--accent2)}
.accent3 { background-color: var(--accent3)}
.fillX {width:100%;}
.fillY {height:100%;}