
.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-filter: blur(50px);
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

/* Cube slide shadows start */
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden;
}

/* Cube slide shadows end */
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active, .swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center;
}
.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  transform: rotate(180deg);
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-lock {
  display: none;
}

/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}

/* Navigation font end */
/**
 * Swiper 11.2.8
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 23, 2025
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
/*! Pickr 1.9.1 MIT | https://github.com/Simonwep/pickr */
.pickr {
  position: relative;
  overflow: visible;
  transform: translateY(0);
}

.pickr * {
  box-sizing: border-box;
  outline: none;
  border: none;
  -webkit-appearance: none;
}

.pickr .pcr-button {
  position: relative;
  height: 2em;
  width: 2em;
  padding: 0.5em;
  cursor: pointer;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
  border-radius: 0.15em;
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" stroke="%2342445A" stroke-width="5px" stroke-linecap="round"><path d="M45,45L5,5"></path><path d="M45,5L5,45"></path></svg>') no-repeat center;
  background-size: 0;
  transition: all 0.3s;
}

.pickr .pcr-button::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
  background-size: 0.5em;
  border-radius: 0.15em;
  z-index: -1;
}

.pickr .pcr-button::before {
  z-index: initial;
}

.pickr .pcr-button::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  transition: background 0.3s;
  background: var(--pcr-color);
  border-radius: 0.15em;
}

.pickr .pcr-button.clear {
  background-size: 70%;
}

.pickr .pcr-button.clear::before {
  opacity: 0;
}

.pickr .pcr-button.clear:focus {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px var(--pcr-color);
}

.pickr .pcr-button.disabled {
  cursor: not-allowed;
}

.pickr *, .pcr-app * {
  box-sizing: border-box;
  outline: none;
  border: none;
  -webkit-appearance: none;
}

.pickr input:focus, .pickr input.pcr-active, .pickr button:focus, .pickr button.pcr-active, .pcr-app input:focus, .pcr-app input.pcr-active, .pcr-app button:focus, .pcr-app button.pcr-active {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px var(--pcr-color);
}

.pickr .pcr-palette, .pickr .pcr-slider, .pcr-app .pcr-palette, .pcr-app .pcr-slider {
  transition: box-shadow 0.3s;
}

.pickr .pcr-palette:focus, .pickr .pcr-slider:focus, .pcr-app .pcr-palette:focus, .pcr-app .pcr-slider:focus {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(0, 0, 0, 0.25);
}

.pcr-app {
  position: fixed;
  display: flex;
  flex-direction: column;
  z-index: 10000;
  border-radius: 0.1em;
  background: #fff;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0s 0.3s;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
  box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.1), 0 0 1em 0 rgba(0, 0, 0, 0.03);
  left: 0;
  top: 0;
}

.pcr-app.visible {
  transition: opacity 0.3s;
  visibility: visible;
  opacity: 1;
}

.pcr-app .pcr-swatches {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0.75em;
}

.pcr-app .pcr-swatches.pcr-last {
  margin: 0;
}

@supports (display: grid) {
  .pcr-app .pcr-swatches {
    display: grid;
    align-items: center;
    grid-template-columns: repeat(auto-fit, 1.75em);
  }
}
.pcr-app .pcr-swatches > button {
  font-size: 1em;
  position: relative;
  width: calc(1.75em - 5px);
  height: calc(1.75em - 5px);
  border-radius: 0.15em;
  cursor: pointer;
  margin: 2.5px;
  flex-shrink: 0;
  justify-self: center;
  transition: all 0.15s;
  overflow: hidden;
  background: rgba(0, 0, 0, 0);
  z-index: 1;
}

.pcr-app .pcr-swatches > button::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
  background-size: 6px;
  border-radius: 0.15em;
  z-index: -1;
}

.pcr-app .pcr-swatches > button::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--pcr-color);
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: 0.15em;
  box-sizing: border-box;
}

.pcr-app .pcr-swatches > button:hover {
  filter: brightness(1.05);
}

.pcr-app .pcr-swatches > button:not(.pcr-active) {
  box-shadow: none;
}

.pcr-app .pcr-interaction {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 -0.2em 0 -0.2em;
}

.pcr-app .pcr-interaction > * {
  margin: 0 0.2em;
}

.pcr-app .pcr-interaction input {
  letter-spacing: 0.07em;
  font-size: 0.75em;
  text-align: center;
  cursor: pointer;
  color: #75797e;
  background: #f1f3f4;
  border-radius: 0.15em;
  transition: all 0.15s;
  padding: 0.45em 0.5em;
  margin-top: 0.75em;
}

.pcr-app .pcr-interaction input:hover {
  filter: brightness(0.975);
}

.pcr-app .pcr-interaction input:focus {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(66, 133, 244, 0.75);
}

.pcr-app .pcr-interaction .pcr-result {
  color: #75797e;
  text-align: left;
  flex: 1 1 8em;
  min-width: 8em;
  transition: all 0.2s;
  border-radius: 0.15em;
  background: #f1f3f4;
  cursor: text;
}

.pcr-app .pcr-interaction .pcr-result::-moz-selection {
  background: #4285f4;
  color: #fff;
}

.pcr-app .pcr-interaction .pcr-result::selection {
  background: #4285f4;
  color: #fff;
}

.pcr-app .pcr-interaction .pcr-type.active {
  color: #fff;
  background: #4285f4;
}

.pcr-app .pcr-interaction .pcr-save, .pcr-app .pcr-interaction .pcr-cancel, .pcr-app .pcr-interaction .pcr-clear {
  color: #fff;
  width: auto;
}

.pcr-app .pcr-interaction .pcr-save, .pcr-app .pcr-interaction .pcr-cancel, .pcr-app .pcr-interaction .pcr-clear {
  color: #fff;
}

.pcr-app .pcr-interaction .pcr-save:hover, .pcr-app .pcr-interaction .pcr-cancel:hover, .pcr-app .pcr-interaction .pcr-clear:hover {
  filter: brightness(0.925);
}

.pcr-app .pcr-interaction .pcr-save {
  background: #4285f4;
}

.pcr-app .pcr-interaction .pcr-clear, .pcr-app .pcr-interaction .pcr-cancel {
  background: #f44250;
}

.pcr-app .pcr-interaction .pcr-clear:focus, .pcr-app .pcr-interaction .pcr-cancel:focus {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(244, 66, 80, 0.75);
}

.pcr-app .pcr-selection .pcr-picker {
  position: absolute;
  height: 18px;
  width: 18px;
  border: 2px solid #fff;
  border-radius: 100%;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.pcr-app .pcr-selection .pcr-color-palette, .pcr-app .pcr-selection .pcr-color-chooser, .pcr-app .pcr-selection .pcr-color-opacity {
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  display: flex;
  flex-direction: column;
  cursor: grab;
  cursor: -webkit-grab;
}

.pcr-app .pcr-selection .pcr-color-palette:active, .pcr-app .pcr-selection .pcr-color-chooser:active, .pcr-app .pcr-selection .pcr-color-opacity:active {
  cursor: grabbing;
  cursor: -webkit-grabbing;
}

.pcr-app[data-theme=nano] {
  width: 14.25em;
  max-width: 95vw;
}

.pcr-app[data-theme=nano] .pcr-swatches {
  margin-top: 0.6em;
  padding: 0 0.6em;
}

.pcr-app[data-theme=nano] .pcr-interaction {
  padding: 0 0.6em 0.6em 0.6em;
}

.pcr-app[data-theme=nano] .pcr-selection {
  display: grid;
  grid-gap: 0.6em;
  grid-template-columns: 1fr 4fr;
  grid-template-rows: 5fr auto auto;
  align-items: center;
  height: 10.5em;
  width: 100%;
  align-self: flex-start;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview {
  grid-area: 2/1/4/1;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-left: 0.6em;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-last-color {
  display: none;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color {
  position: relative;
  background: var(--pcr-color);
  width: 2em;
  height: 2em;
  border-radius: 50em;
  overflow: hidden;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
  background-size: 0.5em;
  border-radius: 0.15em;
  z-index: -1;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette {
  grid-area: 1/1/2/3;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette {
  border-radius: 0.15em;
  width: 100%;
  height: 100%;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
  background-size: 0.5em;
  border-radius: 0.15em;
  z-index: -1;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser {
  grid-area: 2/2/2/2;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity {
  grid-area: 3/2/3/2;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser, .pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity {
  height: 0.5em;
  margin: 0 0.6em;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-picker, .pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-picker {
  top: 50%;
  transform: translateY(-50%);
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-slider, .pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-slider {
  flex-grow: 1;
  border-radius: 50em;
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-slider {
  background: linear-gradient(to right, hsl(0, 100%, 50%), hsl(60, 100%, 50%), hsl(120, 100%, 50%), hsl(180, 100%, 50%), hsl(240, 100%, 50%), hsl(300, 100%, 50%), hsl(0, 100%, 50%));
}

.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-slider {
  background: linear-gradient(to right, transparent, black), url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
  background-size: 100%, 0.25em;
}

:root {
  --subtext-color: #6E7278;
  --headline-color: #111111;
  --border-color: #D0D1D2;
  --black-100: #F3F4F6;
  --black-200: #E5E7EB;
  --black-300: #D0D1D2;
  --black-400: #979797;
  --black-500: #6B7280;
  --black-600: #A4A4A4;
  --black-800: #1F2937;
  --black-900: #111111;
  --dark: #030712;
  --gray-500: #667085;
  --gray-700: #344054;
  --link: #84AFE1;
  --white: #FFFFFF;
  --gradient: rgba(8,12,24,1) 0%, rgba(39,43,81,1) 25%, rgba(90,91,155,1) 50%, rgba(143,145,228,1) 75%, rgba(131,178,224,1) 100%;
  --gradient-to-white: rgba(8,12,24,1) 0%, rgba(39,43,81,1) 20%, rgba(90,91,155,1) 40%, rgba(143,145,228,1) 60%, rgba(131,178,224,1) 80%, rgba(255,255,255,1) 100%;
  --title-size: 26px;
  --active-nav-bg: #F0F0F0;
  --red: #D85454;
  --font: "Inter", sans-serif;
  --configurator-input-bg: #ECECEC;
  --swiper-button-bg: #FAFAFA;
  --image-upload-border: #ECECEC;
}

@font-face {
  font-family: "Inter";
  src: url(/fonts/inter-latin-400-normal.woff2) format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url(/fonts/inter-latin-400-italic.woff2) format("woff2");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url(/fonts/inter-latin-600-normal.woff2) format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}
body {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  letter-spacing: -0.03em;
  color: var(--subtext-color);
}

h1, h2, h3, h4, h5, h6, .title {
  font-weight: 600;
  color: var(--headline-color);
  margin: 0;
}

h1, .h1 {
  font-size: 26px;
  font-weight: 600;
  text-align: center;
}

p {
  margin: 0;
}

.d-none {
  display: none !important;
}

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

.element-center {
  margin: 0 auto;
  display: block;
}

.v-hidden {
  visibility: hidden;
  width: 0;
  height: 0;
}

*, *::before, *::after {
  font-size: 16px;
  line-height: normal;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  margin: 0;
}

.layout {
  width: 100dvw;
  height: 100dvh;
  display: grid;
  grid-template-columns: 280px 1fr;
  grid-template-rows: 1fr;
  gap: 24px 0;
}
.layout aside {
  grid-row: 1/-1;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--black-200);
}
.layout aside .brand {
  padding: 24px;
  display: flex;
  gap: 12px;
}
.layout aside .brand__logo {
  width: 36px;
  height: 36px;
  object-fit: contain;
}
.layout aside .brand__name {
  display: block;
  font-weight: 600;
  font-size: var(--title-size);
  color: var(--black-900);
  margin-bottom: 4px;
}
.layout aside .brand__slogan {
  color: var(--black-500);
}
.layout aside .navigation {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 20px 24px;
  list-style: none;
  margin: 0;
  height: 100%;
}
.layout aside .navigation .logout {
  margin-top: auto;
}
.layout aside .social-links {
  padding: 24px;
  display: flex;
  gap: 24px;
  align-items: center;
}
.layout aside .social-links a {
  display: flex;
}
.layout aside .social-links img {
  padding: 1px 0;
}
.layout main {
  overflow: auto scroll;
  display: flex;
  padding: 117px 80px 0 120px;
  height: 100%;
  position: relative;
}
.layout main turbo-frame {
  display: contents;
}
.layout main::-webkit-scrollbar {
  width: 0px;
}

.account-settings {
  padding-bottom: 80px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto 1fr;
  gap: 40px 24px;
  width: 100%;
}
.account-settings .title-container {
  grid-column: 1/-1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.account-settings .title-container h1 {
  text-align: left;
}
.account-settings .color-select {
  display: flex;
  gap: 12px;
  align-items: center;
  padding-right: 3px;
}
.account-settings .color-select .field-wrapper {
  width: 100%;
}
.account-settings .logo-upload {
  background-color: var(--black-100);
  border-radius: 8px;
  border: 1px dashed var(--black-300);
  width: 100%;
  height: 100%;
  max-width: 500px;
  max-height: 380px;
}
.account-settings .logo-upload form {
  width: 100%;
  height: 100%;
}
.account-settings .logo-upload input {
  display: none;
}
.account-settings .logo-upload label {
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  height: 100%;
}
.account-settings .logo-upload label .logo-upload-container__title {
  color: var(--black-900);
  font-size: 20px;
  font-weight: bold;
}
.account-settings .logo-upload label .logo-upload-container__title::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-image: url(/images/icons/upload.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin: 0 auto 8px;
}
.account-settings .logo-upload label .logo-upload-container__subtitle {
  color: var(--black-500);
  font-size: 16px;
}
.account-settings .logo-preview {
  display: flex;
  gap: 12px;
  align-items: center;
}
.account-settings .logo-preview img {
  width: 100%;
  max-width: 500px;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
}

.account-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

dialog {
  min-width: 480px;
  max-width: 600px;
  padding: 40px 60px;
  border: none;
  border-radius: 8px;
  background-color: white;
  position: relative;
  outline: none;
}
dialog.info-dialog {
  padding: 40px 40px;
}
dialog.info-dialog .modal-title {
  margin-bottom: 24px;
  text-align: left;
}
dialog.info-dialog .modal-content {
  color: var(--subtext-color);
  line-height: 20px;
  margin-bottom: 0;
  text-align: left;
}
dialog::backdrop {
  background: rgba(0, 0, 0, 0.25);
}
dialog.logout {
  padding: 66px 85px;
  width: 480px;
}
dialog.small {
  width: 300px;
  min-width: 300px;
  padding: 55px 40px;
}
dialog.small .modal-content {
  font-size: 14px;
}
dialog.small .modal-content p {
  font-size: 14px;
}
dialog.small .modal-cta {
  gap: 14px;
}
dialog.small .btn {
  padding: 10px;
  font-size: 14px;
}
dialog button.close {
  position: absolute;
  top: 10px;
  right: 10px;
  background-color: transparent;
  border: none;
  cursor: pointer;
  font-size: 0;
  padding: 0;
  visibility: hidden;
}
dialog button.close::before {
  visibility: visible;
  content: "";
  display: block;
  width: 35px;
  height: 35px;
  background-image: url(/images/icons/close.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
dialog .pcr-app {
  position: fixed !important;
  right: 10px;
  left: auto;
  top: 10px;
}
dialog .color-input {
  display: none;
}
dialog .modal-title {
  font-weight: 600;
  color: var(--headline-color);
  font-size: var(--title-size);
  margin-bottom: 12px;
  text-align: center;
}
dialog .modal-content {
  text-align: center;
  color: var(--black-600);
}
dialog .modal-cta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 24px;
}

button, .button {
  cursor: pointer;
  text-align: center;
  text-decoration: none;
}
button.small, .button.small {
  border: none;
  border-radius: 8px;
  padding: 8px;
  background: #F0F0F0;
  color: var(--black-500);
  font-size: 10px;
  min-width: 80px;
  font-weight: 600;
}

.btn {
  display: block;
  cursor: pointer;
  border: 1px solid var(--black-500);
  color: var(--black-900);
  background-color: white;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  border-radius: 8px;
  padding: 13px 24px;
  text-align: center;
  text-decoration: none;
}
.btn:hover {
  border-color: var(--black-900);
}
.btn.btn-block {
  width: 100%;
}
.btn.btn-dark {
  background-color: var(--black-900);
  color: white;
  border-color: transparent;
}
.btn.btn-dark:hover {
  border-color: var(--black-900);
}
.btn.btn-light {
  background-color: white;
  font-weight: normal;
  color: var(--dark);
  border-color: var(--dark);
}
.btn.btn-light:hover {
  background-color: var(--black-100);
}
.btn.btn-thin {
  font-weight: normal;
}
.btn.disabled {
  cursor: not-allowed;
}
.btn.btn-delete {
  color: white;
  background-color: var(--red);
  border-color: var(--red);
  font-weight: normal;
}
.btn.btn-gradient-border {
  font-weight: normal;
  color: #151727;
  border: double 1px transparent;
  border-radius: 16px;
  background-image: linear-gradient(white, white), linear-gradient(to right, var(--gradient));
  background-origin: border-box;
  background-clip: content-box, border-box;
  padding: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.btn.add-text-btn {
  border-color: var(--border-color);
  color: var(--subtext-color);
}

.btn-nav {
  border-radius: 8px;
  border: 1px solid transparent;
  color: var(--black-900);
  text-decoration: none;
  cursor: pointer;
}
.btn-nav:hover {
  border-color: var(--border-color);
}
.btn-nav.active {
  border-color: var(--black-900);
  background-color: var(--active-nav-bg);
  font-weight: 600;
}
.btn-nav .inner {
  display: flex;
  gap: 12px;
  padding: 10px 12px;
}
.btn-nav .inner img {
  width: 20px;
  height: 20px;
}

.btn-big {
  border-radius: 8px;
  border: 1px solid var(--black-300);
  padding: 24px;
  display: flex;
  gap: 16px;
  cursor: pointer;
}
.btn-big.active {
  background-image: linear-gradient(to right, var(--gradient));
}
.btn-big.active .icon-container {
  background: transparent;
  border-color: white;
}
.btn-big.active .icon-container img {
  filter: invert(1);
  background-color: transparent;
}
.btn-big.active .text-container .main-text {
  color: white;
}
.btn-big.active .text-container .sub-text {
  color: white;
}
.btn-big.disabled {
  cursor: not-allowed;
}
.btn-big .icon-container {
  min-width: 54px;
  height: 54px;
  display: flex;
  overflow: hidden;
  border: double 1px transparent;
  background-image: linear-gradient(white, white), linear-gradient(to right, var(--gradient));
  border-radius: 8px;
  background-origin: border-box;
  background-clip: content-box, border-box;
}
.btn-big .icon-container img {
  padding: 12px;
  background-color: #F2F6FF;
}
.btn-big .text-container {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  text-wrap: nowrap;
}
.btn-big .text-container .main-text {
  font-weight: normal;
  font-size: 22px;
  color: var(--black-900);
}
.btn-big .text-container .sub-text {
  font-size: 16px;
  color: var(--black-400);
  font-style: normal;
  text-align: left;
}

.no-button-style {
  border: none;
  background: none;
  text-decoration: none;
  padding: 0;
}

.switch {
  display: flex;
  border: 1px solid var(--black-200);
  border-radius: 8px;
  color: var(--black-300);
}
.switch input {
  display: none;
}
.switch input:checked + label {
  cursor: default;
  background-color: var(--active-nav-bg);
  color: var(--black-900);
}
.switch label {
  min-width: 105px;
  cursor: pointer;
  color: var(--black-300);
  border-radius: 8px;
  display: inline-block;
  padding: 5px 0;
  font-size: 12px;
  text-align: center;
}

.field-wrapper {
  border: 1px solid var(--border-color);
  border-radius: 8px;
  background-color: var(--white);
}
.field-wrapper:has(:focus) {
  border-color: var(--black-900);
}
.field-wrapper .field {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 4px 14px;
}
.field-wrapper .field[data-controller=password] {
  padding-right: 50px;
}
.field-wrapper .field .field-error {
  position: absolute;
  top: 4px;
  right: 14px;
  font-size: 12px;
  color: var(--gray-500);
  font-style: italic;
}
.field-wrapper .password-toggle {
  display: block;
  position: absolute;
  right: 14px;
  top: 50%;
  background-image: url(/images/icons/password-eye-close.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  cursor: pointer;
}
.field-wrapper .password-toggle.password-visible {
  background-image: url(/images/icons/password-eye-open.svg);
}
.field-wrapper label {
  color: var(--black-900);
  font-weight: 600;
  font-size: 12px;
  line-height: 20px;
}
.field-wrapper input, .field-wrapper textarea {
  border: none;
  outline: none;
  font-size: 14px;
  line-height: 24px;
  color: var(--gray-500);
  resize: vertical;
  padding: 0;
}
.field-wrapper input:-webkit-autofill,
.field-wrapper input:-webkit-autofill:hover,
.field-wrapper input:-webkit-autofill:focus,
.field-wrapper input:-webkit-autofill:active {
  -webkit-background-clip: text;
  transition: background-color 5000s ease-in-out 0s;
  box-shadow: none;
}

.field-sub {
  padding-top: 3px;
  font-size: 14px;
  color: var(--black-600);
}

.field-wrapper:has(.input-control.is-invalid) {
  border-color: red;
}
.field-wrapper:has(.input-control.is-invalid):has(:focus) {
  border-color: var(--black-900);
}

.field-wrapper:has(.input-control.is-invalid:focus) {
  border-color: var(--black-900);
}

.input-control.is-invalid {
  border-color: red;
}

.configurator-input {
  padding-block: unset;
  padding-inline: unset;
  text-align: center;
  background-color: var(--configurator-input-bg);
  border: 1px solid transparent;
  color: var(--subtext-color);
  border-radius: 8px;
  min-height: 53px;
  width: 100%;
}
.configurator-input:focus {
  border-color: var(--black-900);
}

.pcr-button {
  border: 1px solid var(--black-500);
}

.pcr-app {
  padding: 16px 16px 24px;
  border: 1px solid var(--black-200);
  border-radius: 8px;
  width: auto !important;
  box-shadow: none;
}
.pcr-app .pcr-selection {
  height: 100% !important;
  gap: 16px !important;
}
.pcr-app .pcr-interaction {
  display: grid;
  grid-template-columns: 1fr 92px 92px 92px;
  gap: 0 12px;
}
.pcr-app .pcr-interaction input {
  order: 2;
  background-color: white !important;
  border: 1px solid var(--black-200) !important;
  border-radius: 8px !important;
  padding: 8px 16px !important;
  height: 40px !important;
}
.pcr-app .pcr-interaction input::-webkit-inner-spin-button, .pcr-app .pcr-interaction input::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
  display: none;
}
.pcr-app .pcr-interaction input[type=number] {
  -moz-appearance: textfield;
}
.pcr-app .pcr-interaction span {
  font-weight: bold;
  font-size: 12px;
}
.pcr-app .pcr-color-palette {
  min-height: 240px;
}
.pcr-app .pcr-color-palette .pcr-palette {
  border-radius: 8px !important;
}
.pcr-app .pcr-color-palette .pcr-palette::before {
  border-radius: 8px !important;
}
.pcr-app .pcr-color-chooser {
  grid-column: 1/-1 !important;
}

.tooltip {
  display: none;
  width: max-content;
  position: absolute;
  top: 0;
  left: 0;
  background-color: white;
  color: white;
  z-index: 2147483647;
  padding: 10px;
  border-radius: 12px;
  box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.15), 0px 8px 16px 0px rgba(35, 23, 5, 0.1);
}

.tooltip-arrow {
  position: absolute;
  background: white;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
}

.garment-select-container {
  position: relative;
}

.garment-select-button {
  width: 200px;
  height: 54px;
  font-size: 16px;
  font-weight: normal;
  padding: 16px;
  color: var(--subtext-color);
  border: 1px solid var(--border-color);
  border-radius: 8px;
  background-color: var(--white);
}
.garment-select-button.active {
  color: var(--black-900);
  border-color: var(--black-900);
  background-color: var(--active-nav-bg);
  font-weight: 600;
}

.garment-select {
  position: absolute;
  margin-top: 9px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  width: 200px;
  z-index: 10;
}
.garment-select a {
  height: 52px;
  width: 100%;
}

.upload-tooltip {
  padding: 16px 20px;
}
.upload-tooltip p {
  color: var(--black-900);
  font-size: 13px;
}

.burger-menu-tooltip {
  padding: 0 0 10px;
}
.burger-menu-tooltip .tooltip-container .brand-container {
  display: block;
  padding: 16px 0;
  text-decoration: none;
}
.burger-menu-tooltip .tooltip-container .brand-container .brand {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.burger-menu-tooltip .tooltip-container .brand-container .brand__logo {
  width: 30px;
  margin-bottom: 8px;
}
.burger-menu-tooltip .tooltip-container .brand-container .brand__name {
  display: block;
  color: var(--black-900);
  font-weight: 600;
  font-size: 12px;
  text-align: center;
}
.burger-menu-tooltip .tooltip-container .brand-container .brand__slogan {
  display: block;
  color: var(--black-500);
  font-size: 10px;
  text-align: center;
}
.burger-menu-tooltip .tooltip-container ul {
  list-style: none;
  margin: 0 30px 0 0;
  padding: 0;
}
.burger-menu-tooltip .tooltip-container ul a {
  display: block;
  padding: 10px 16px;
  color: var(--black-400);
  text-decoration: none;
  border-left: 4px solid transparent;
}
.burger-menu-tooltip .tooltip-container ul a:hover {
  color: var(--black-900);
  border-left-color: var(--black-900);
}

.no-design {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.devise {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100dvh;
  padding: 64px 24px;
  background: linear-gradient(180deg, #FFF 0%, rgba(248, 248, 248, 0.7) 55%, rgba(217, 217, 217, 0.85) 100%, rgba(213, 213, 213, 0.95) 100%);
}
.devise .overview {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 10px 0;
}
.devise .overview .btn {
  margin-bottom: 10px;
}
.devise__logo {
  position: absolute;
  top: 61px;
  left: 72px;
  height: 42px;
}
.devise__container {
  padding: 60px;
  width: 700px;
  border-radius: 8px;
  background-color: white;
  border: 1px solid var(--border-color);
}
.devise__form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.devise__form h1 {
  line-height: 1.5;
  margin-bottom: 16px;
}
.devise__form .title-container {
  line-height: 1.5;
  text-align: center;
  margin-bottom: 16px;
  color: var(--black-900);
}
.devise__form .title-container .title {
  font-size: var(--title-size);
  line-height: 1.5;
  font-weight: 600;
}
.devise__form .title-container p {
  line-height: 1.5;
}
.devise__form .devise-text-link {
  color: var(--link);
  text-decoration: none;
  font-size: 14px;
  width: max-content;
  margin-top: -12px;
}
.devise .input-container {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.devise .input-actions {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}
.devise .input-actions__info {
  color: var(--black-900);
}
.devise .input-actions__subinfo {
  color: var(--black-400);
}
.devise .input-actions .link {
  margin-left: 12px;
  color: var(--black-400);
  text-decoration: none;
  font-weight: 600;
}

.drag-over {
  border: 3px dashed #007bff !important;
  background-color: rgba(0, 123, 255, 0.1) !important;
  transition: all 0.2s ease;
}

body.configurator-body {
  overflow: hidden;
}
body.configurator-body .burger-menu {
  cursor: pointer;
  padding: 10px;
}
body.configurator-body header {
  display: flex;
  padding: 0 24px;
  justify-content: space-between;
  align-items: end;
  height: 80px;
}
body.configurator-body header .logo {
  box-sizing: content-box;
  max-width: 100%;
  width: auto;
  height: 36px;
  padding: 10px;
}
body.configurator-body main {
  display: grid;
  grid-template-columns: 1fr 540px;
  grid-template-rows: calc(100vh - 80px);
}
body.configurator-body main .configurator {
  display: grid;
  position: relative;
}
body.configurator-body main .configurator .canvas-tools {
  position: absolute;
  top: 0;
  left: 75%;
  z-index: 1;
  display: flex;
  gap: 12px;
}
body.configurator-body main .configurator .canvas-tools .zoom {
  cursor: pointer;
}
body.configurator-body main .configurator .canvas-tools .zoom.zoom-in img, body.configurator-body main .configurator .canvas-tools .zoom:hover img {
  filter: invert(1);
}
body.configurator-body main .configurator .swiper {
  --swiper-navigation-sides-offset: 93px;
}
body.configurator-body main .configurator .swiper:hover .swiper-navigation {
  display: block;
}
body.configurator-body main .configurator .swiper .swiper-slide {
  display: flex;
  justify-content: center;
}
body.configurator-body main .configurator .swiper .swiper-navigation {
  display: none;
}
body.configurator-body main .configurator .swiper .swiper-button-next,
body.configurator-body main .configurator .swiper .swiper-button-prev {
  background-color: var(--swiper-button-bg);
  border-radius: 8px;
  height: 50px;
  width: 50px;
}
body.configurator-body main .configurator .swiper .swiper-button-next::after,
body.configurator-body main .configurator .swiper .swiper-button-prev::after {
  content: "";
  display: none;
}
body.configurator-body main .configurator .size-output {
  z-index: 1;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0px);
  padding: 16px;
  border-radius: 8px;
  border-top: 1px solid var(--black-200);
  border-left: 1px solid var(--black-200);
  border-right: 1px solid var(--black-200);
  background-color: white;
  color: var(--black-900);
}
body.configurator-body main .options {
  padding: 48px 24px 80px;
  overflow: hidden scroll;
  display: flex;
  flex-direction: column;
  gap: 225px;
  position: relative;
}
body.configurator-body main .options::-webkit-scrollbar {
  width: 0px;
}
body.configurator-body main .options .filter-container label {
  pointer-events: auto;
  cursor: pointer;
}

.select-table {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.select-table--3 {
  grid-template-columns: repeat(6, 1fr);
}
.select-table--3 .half-size + label {
  grid-column: span 3;
}
.select-table--3 label {
  grid-column: span 2;
}
.select-table--decision {
  margin-bottom: 12px;
}
.select-table .full-size {
  grid-column: 1/-1;
}
.select-table .full-size + label {
  grid-column: 1/-1;
}

.eyelets-list, .drawstring-list {
  margin-bottom: 12px;
}

.tool.complete-container {
  gap: 18px;
}

.complete-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 8px;
}

.color-container .preselect-colors {
  margin-top: 40px;
  margin-bottom: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}
.color-container .preselect-colors .preselect-color {
  position: relative;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: var(--black-200);
  cursor: pointer;
}
.color-container .preselect-colors .preselect-color.active::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-sizing: content-box;
  content: "";
  display: block;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  border: 1px solid var(--black-500);
  z-index: -1;
}

.image-upload-container {
  position: relative;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.image-upload-container.blocked {
  pointer-events: none;
}
.image-upload-container input {
  cursor: pointer;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}

.image-preview {
  display: none;
}
.image-preview:has(.image-preview-image) {
  display: block;
}
.image-preview .image-preview-list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 12px;
  margin-top: 24px;
}
.image-preview .image-preview-list:has(> :last-child:nth-child(1)) .image-preview-image {
  flex-basis: 100%;
}
.image-preview .image-preview-list:has(> :last-child:nth-child(2)) .image-preview-image {
  flex-basis: calc(50% - 6px);
}
.image-preview .image-preview-list .image-preview-image {
  position: relative;
  cursor: pointer;
  height: 53px;
  border: 1px solid var(--black-200);
  border-radius: 8px;
  flex-basis: calc(33.3333333333% - 8px);
  overflow: hidden;
  background-position: center;
  background-size: cover;
  background-image: var(--background-image);
}
.image-preview .image-preview-list .image-preview-image.active {
  border: 1px solid var(--black-900);
}
.image-preview .image-preview-list .image-preview-image.active span {
  display: block;
}
.image-preview .image-preview-list .image-preview-image.active span::after {
  content: "x";
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  margin-top: -1px;
}
.image-preview .image-preview-list .image-preview-image span {
  display: none;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 1px solid var(--subtext-color);
  background-color: var(--white);
  color: var(--subtext-color);
  position: absolute;
  top: 3px;
  right: 3px;
}

.or {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 12px 0;
}
.or::before, .or::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--black-200);
}

.configurator-button-radio {
  display: none;
}
.configurator-button-radio:checked + label {
  color: var(--black-900);
  font-weight: 600;
  border-color: var(--black-900);
  background-color: var(--active-nav-bg);
}
.configurator-button-radio + label {
  border: 1px solid var(--border-color);
  border-radius: 8px;
  padding: 16px;
  text-align: center;
  cursor: pointer;
  background-color: white;
  color: var(--subtext-color);
}

.configurator-button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  width: 100%;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  padding: 16px;
  text-align: center;
  cursor: pointer;
  background-color: white;
  color: var(--subtext-color);
}
.configurator-button:hover {
  border-color: var(--black-900);
}
.configurator-button:disabled {
  cursor: not-allowed;
}

.loader-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.7);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

.loader-spinner {
  border: 5px solid #f3f3f3;
  border-top: 5px solid #3498db;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  animation: spin 1s linear infinite;
}

.loader-text {
  margin-top: 10px;
  font-size: 16px;
  color: #333;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.techpack-body {
  display: flex;
  gap: 20px;
  flex-direction: column;
}
.techpack-body #content {
  display: contents;
}
.techpack-body .page {
  position: relative;
  height: 21cm;
  width: 29.7cm;
  background: #E9EBEF;
  overflow: hidden;
  padding: 10px 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0 auto;
}
.techpack-body .page__footnote {
  font-size: 5px;
  color: #0C0A18;
  position: absolute;
  right: 8px;
  bottom: 2px;
}
.techpack-body .page .header {
  display: flex;
  align-items: center;
  gap: 13px;
  height: 52px;
  width: 100%;
  border: 1px solid #0C0A18;
  border-radius: 8px;
  background-image: linear-gradient(to left, var(--gradient-to-white));
  background-color: white;
  background-repeat: no-repeat;
  background-size: 420px;
  background-position-x: right;
  padding: 12px 32px;
}
.techpack-body .page .header__logo {
  max-height: 100%;
  max-width: 100px;
  margin-right: 32px;
}
.techpack-body .page .header__created-date {
  margin-left: auto;
  text-align: right;
  font-size: 9px;
  color: #EAECF0;
}
.techpack-body .page .header .header__brand-name, .techpack-body .page .header .header__collection-name, .techpack-body .page .header .header__article-number, .techpack-body .page .header .header__email {
  text-decoration: none;
  position: relative;
  padding: 4px 25px;
  border-radius: 8px;
  font-size: 9px;
}
.techpack-body .page .header .header__brand-name span, .techpack-body .page .header .header__collection-name span, .techpack-body .page .header .header__article-number span, .techpack-body .page .header .header__email span {
  color: #0C0A18;
  font-size: 9px;
  max-width: 135px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: block;
}
.techpack-body .page .header .header__brand-name:hover, .techpack-body .page .header .header__collection-name:hover, .techpack-body .page .header .header__article-number:hover, .techpack-body .page .header .header__email:hover {
  background-color: #E9EBEF;
}
.techpack-body .page .header .header__brand-name::before, .techpack-body .page .header .header__collection-name::before, .techpack-body .page .header .header__article-number::before, .techpack-body .page .header .header__email::before {
  position: absolute;
  left: -6px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  display: block;
  height: 28px;
  width: 1px;
  background-color: #0C0A18;
}
.techpack-body .page .main-preview {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr auto;
  height: 100%;
  border: 1px solid #0C0A18;
  border-radius: 12px;
  background-color: white;
  padding: 10px 5px;
}
.techpack-body .page .main-preview__product-name {
  color: #0C0A18;
  text-decoration: none;
  border: 1px solid #0C0A18;
  border-radius: 8px;
  width: 260px;
  padding: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  font-size: 12px;
}
.techpack-body .page .main-preview__product-name::before {
  font-size: 12px;
  content: "„";
}
.techpack-body .page .main-preview__product-name::after {
  font-size: 12px;
  content: "“";
}
.techpack-body .page .main-preview__product-images {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
}
.techpack-body .page .main-preview__product-images img {
  width: 100%;
  height: 90%;
  object-fit: cover;
}
.techpack-body .page .main-preview__product-information {
  display: flex;
  overflow: hidden;
}
.techpack-body .page .main-preview__product-information turbo-frame {
  display: contents;
}
.techpack-body .techpack-box {
  position: relative;
  border: 1px solid #0C0A18;
  border-radius: 12px;
  height: 100%;
  background-color: white;
  width: calc(25% - 18px);
  min-width: calc(25% - 18px);
}
.techpack-body .techpack-box--elements-3 {
  width: calc(33.3333% - 16px);
  min-width: calc(33.3333% - 16px);
}
.techpack-body .separator {
  min-width: 26px;
  width: 26px;
  height: 80px;
  position: relative;
  top: 50%;
  margin: 0 -1px;
  background-color: white;
  z-index: 100;
  transform: translateY(-50%);
}
.techpack-body .separator--transparent::before, .techpack-body .separator--transparent::after {
  background-color: #E9EBEF;
}
.techpack-body .separator::before {
  z-index: 1;
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  width: 26px;
  height: 13px;
  border: 1px solid #0C0A18;
  border-top: none;
  border-bottom-left-radius: 13px;
  border-bottom-right-radius: 13px;
}
.techpack-body .separator::after {
  z-index: 1;
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 26px;
  height: 13px;
  border: 1px solid #0C0A18;
  border-bottom: none;
  border-top-left-radius: 13px;
  border-top-right-radius: 13px;
}
.techpack-body .information-box {
  color: #0C0A18;
  text-decoration: none;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 7px;
  height: 100%;
}
.techpack-body .information-box__title {
  font-family: "Video Light", sans-serif;
  font-weight: normal;
  font-size: 8px;
  text-transform: uppercase;
}
.techpack-body .information-box__content {
  font-size: 8px;
  color: #0C0A18;
  word-wrap: break-word;
}
.techpack-body .information-box:hover::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-image: url(/images/icons/edit-pencil.svg);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 10;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.techpack-body .information-box:hover::after {
  border-radius: 12px;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background-color: rgba(0, 0, 0, 0.7);
  margin: -1px;
  z-index: 1;
}
.techpack-body .barcode-box, .techpack-body .label-upload, .techpack-body .additional-file-upload {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.techpack-body .barcode-box form, .techpack-body .label-upload form, .techpack-body .additional-file-upload form {
  width: 100%;
  height: 100%;
}
.techpack-body .barcode-box .barcode-upload-container, .techpack-body .barcode-box .label-upload-container, .techpack-body .barcode-box .additional-file-upload-container, .techpack-body .label-upload .barcode-upload-container, .techpack-body .label-upload .label-upload-container, .techpack-body .label-upload .additional-file-upload-container, .techpack-body .additional-file-upload .barcode-upload-container, .techpack-body .additional-file-upload .label-upload-container, .techpack-body .additional-file-upload .additional-file-upload-container {
  position: relative;
  display: flex;
  height: 100%;
  border: 1px solid #0C0A18;
  border-radius: 8px;
  margin: 5px;
}
.techpack-body .barcode-box .barcode-upload-container__title, .techpack-body .barcode-box .label-upload-container__title, .techpack-body .barcode-box .additional-file-upload-container__title, .techpack-body .label-upload .barcode-upload-container__title, .techpack-body .label-upload .label-upload-container__title, .techpack-body .label-upload .additional-file-upload-container__title, .techpack-body .additional-file-upload .barcode-upload-container__title, .techpack-body .additional-file-upload .label-upload-container__title, .techpack-body .additional-file-upload .additional-file-upload-container__title {
  font-size: 9px;
  font-weight: bold;
}
.techpack-body .barcode-box .barcode-upload-container__title::before, .techpack-body .barcode-box .label-upload-container__title::before, .techpack-body .barcode-box .additional-file-upload-container__title::before, .techpack-body .label-upload .barcode-upload-container__title::before, .techpack-body .label-upload .label-upload-container__title::before, .techpack-body .label-upload .additional-file-upload-container__title::before, .techpack-body .additional-file-upload .barcode-upload-container__title::before, .techpack-body .additional-file-upload .label-upload-container__title::before, .techpack-body .additional-file-upload .additional-file-upload-container__title::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-image: url(/images/icons/upload.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin: 0 auto;
}
.techpack-body .barcode-box .barcode-upload-container__subtitle, .techpack-body .barcode-box .label-upload-container__subtitle, .techpack-body .barcode-box .additional-file-upload-container__subtitle, .techpack-body .label-upload .barcode-upload-container__subtitle, .techpack-body .label-upload .label-upload-container__subtitle, .techpack-body .label-upload .additional-file-upload-container__subtitle, .techpack-body .additional-file-upload .barcode-upload-container__subtitle, .techpack-body .additional-file-upload .label-upload-container__subtitle, .techpack-body .additional-file-upload .additional-file-upload-container__subtitle {
  font-size: 9px;
  margin-bottom: 4px;
}
.techpack-body .barcode-box .barcode-upload-container__information, .techpack-body .barcode-box .label-upload-container__information, .techpack-body .barcode-box .additional-file-upload-container__information, .techpack-body .label-upload .barcode-upload-container__information, .techpack-body .label-upload .label-upload-container__information, .techpack-body .label-upload .additional-file-upload-container__information, .techpack-body .additional-file-upload .barcode-upload-container__information, .techpack-body .additional-file-upload .label-upload-container__information, .techpack-body .additional-file-upload .additional-file-upload-container__information {
  font-size: 8px;
}
.techpack-body .barcode-box .barcode-upload-container label, .techpack-body .barcode-box .label-upload-container label, .techpack-body .barcode-box .additional-file-upload-container label, .techpack-body .label-upload .barcode-upload-container label, .techpack-body .label-upload .label-upload-container label, .techpack-body .label-upload .additional-file-upload-container label, .techpack-body .additional-file-upload .barcode-upload-container label, .techpack-body .additional-file-upload .label-upload-container label, .techpack-body .additional-file-upload .additional-file-upload-container label {
  cursor: pointer;
  border: 1px dashed #0C0A18;
  margin: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 10px;
  flex-grow: 2;
}
.techpack-body .barcode-box .barcode-upload-container, .techpack-body .label-upload .barcode-upload-container, .techpack-body .additional-file-upload .barcode-upload-container {
  margin: 12px;
  height: calc(100% - 24px);
}
.techpack-body .barcode-box .label-upload-container, .techpack-body .label-upload .label-upload-container, .techpack-body .additional-file-upload .label-upload-container {
  margin: 0;
  display: flex;
}
.techpack-body .barcode-box input, .techpack-body .label-upload input, .techpack-body .additional-file-upload input {
  display: none;
  position: absolute;
  visibility: hidden;
  width: 100%;
  height: 100%;
}
.techpack-body .barcode-box img, .techpack-body .label-upload img, .techpack-body .additional-file-upload img {
  display: block;
  width: auto;
  height: 100%;
  max-height: 90px;
}
.techpack-body .barcode-box a:not(.document-view), .techpack-body .label-upload a:not(.document-view), .techpack-body .additional-file-upload a:not(.document-view) {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  overflow: hidden;
}
.techpack-body .barcode-box a:not(.document-view):hover::before, .techpack-body .label-upload a:not(.document-view):hover::before, .techpack-body .additional-file-upload a:not(.document-view):hover::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-image: url(/images/icons/delete-eraser.svg);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 10;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.techpack-body .barcode-box a:not(.document-view):hover::after, .techpack-body .label-upload a:not(.document-view):hover::after, .techpack-body .additional-file-upload a:not(.document-view):hover::after {
  border-radius: 12px;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1;
}
.techpack-body .additional-file-upload {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr 2fr;
  border: 1px solid #0C0A18;
  border-radius: 12px;
  background-color: white;
  padding: 10px;
  align-items: flex-start;
  justify-content: space-between;
}
.techpack-body .additional-file-upload__title {
  color: #0C0A18;
  font-family: "Video Light", sans-serif;
  font-weight: normal;
  font-size: 8px;
  text-transform: uppercase;
}
.techpack-body .additional-file-upload .additional-file-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.techpack-body .additional-file-upload .additional-file-preview .file-preview {
  position: relative;
  padding: 5px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.techpack-body .additional-file-upload .additional-file-preview p {
  font-size: 8px;
  color: #0C0A18;
  text-align: center;
}
.techpack-body .label-upload form {
  height: 100%;
}
.techpack-body .information-list {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 7px 30px;
}
.techpack-body .information-list span {
  font-size: 8px;
}
.techpack-body .tech-pack-configurator {
  display: grid;
  grid-template-rows: 3fr 1fr;
  height: 100%;
}
.techpack-body .configurator-previews {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
}
.techpack-body .configurator-previews .configurator-preview {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.techpack-body .configurator-previews .configurator-preview__name {
  font-size: 8px;
  text-align: center;
}
.techpack-body .configurator-previews .configurator-preview .configurator {
  zoom: 51%;
}
.techpack-body .configurator-settings {
  display: flex;
  overflow: hidden;
}
.techpack-body .configurator-settings turbo-frame {
  display: contents;
}
.techpack-body .configurator-settings .configurator-setting {
  overflow: hidden;
}
.techpack-body .tech-pack-labels, .techpack-body .tech-pack-additional-files {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 8px;
  height: 100%;
}
.techpack-body .tech-pack-labels turbo-frame, .techpack-body .tech-pack-additional-files turbo-frame {
  display: contents;
}
.techpack-body .label-container, .techpack-body .additional-file-container {
  border: 1px solid #0C0A18;
  border-radius: 8px;
  background-color: white;
  padding: 8px;
  display: grid;
  gap: 6px;
  grid-template-columns: 2fr 1fr 1fr;
  grid-template-rows: 1fr auto;
}
.techpack-body .label-container--more, .techpack-body .additional-file-container--more {
  display: flex;
}
.techpack-body .label-container--more a, .techpack-body .additional-file-container--more a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  text-decoration: none;
}
.techpack-body .label-container--more a:hover span::before, .techpack-body .additional-file-container--more a:hover span::before {
  transform: scale(1.2);
}
.techpack-body .label-container--more a span, .techpack-body .additional-file-container--more a span {
  font-family: "Video Light", sans-serif;
  font-weight: normal;
  font-size: 8px;
  color: #0C0A18;
}
.techpack-body .label-container--more a span::before, .techpack-body .additional-file-container--more a span::before {
  transition: transform 0.3s;
  content: "";
  display: block;
  width: 44px;
  height: 44px;
  background-image: url(/images/icons/plus.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin: 0 auto;
}
.techpack-body .label-information-container {
  position: relative;
  border: 1px solid #0C0A18;
  border-radius: 12px;
}
.techpack-body .label-preview-container {
  grid-column: 1/-1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.techpack-body .label-preview-container .label-preview {
  position: relative;
}
.techpack-body .label-preview-container .label-preview__image {
  background-color: var(--label-color);
  width: 250px;
  height: 114px;
  border-top: 1px dashed #FF0000;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 20px;
}
.techpack-body .label-preview-container .label-preview__image::before {
  content: "";
  display: block;
  width: 100%;
  height: 22px;
  position: absolute;
  top: -22px;
  background-color: var(--label-color);
  filter: contrast(0.7);
}
.techpack-body .label-preview-container .label-preview__sewing {
  position: absolute;
  left: -70px;
  color: #FF0000;
  display: flex;
  align-items: center;
  gap: 5px;
}
.techpack-body .label-preview-container .label-preview__sewing::before {
  width: 30px;
  border-top: 1px dashed #FF0000;
  content: "";
  display: block;
}
.techpack-body .label-preview-container .label-preview__sewing span {
  font-size: 8px;
}
.techpack-body .label-preview-container .label-preview__width {
  position: absolute;
  top: -22px;
  width: 100%;
  transform: translate(0, -100%);
  text-align: center;
  font-size: 8px;
  color: #FF0000;
  border-bottom: 1px solid #FF0000;
  padding-bottom: 3px;
}
.techpack-body .label-preview-container .label-preview__height {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  transform: translate(100%, 0);
  text-align: center;
  font-size: 8px;
  color: #FF0000;
  border-left: 1px solid #FF0000;
  padding-left: 3px;
  display: flex;
  align-items: center;
}
.techpack-body .label-preview-container .label-preview__image-container {
  position: relative;
  height: 100%;
  border-right: 1px solid #FF0000;
  border-left: 1px solid #FF0000;
}
.techpack-body .label-preview-container .label-preview__image-width {
  border-top: 1px solid #FF0000;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  transform: translate(0, 100%);
  text-align: center;
  font-size: 8px;
  color: #FF0000;
  padding-top: 3px;
}
.techpack-body .label-preview-container .label-preview p {
  font-size: 12px;
}
.techpack-body .label-preview-container .label-preview img {
  max-width: 200px;
  max-height: 90%;
  display: block;
}
.techpack-body .label-preview-container .label-delete {
  position: relative;
}
.techpack-body .label-preview-container .label-delete:hover::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-image: url(/images/icons/delete-eraser.svg);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 10;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.techpack-body .label-preview-container .label-delete:hover::after {
  border-radius: 12px;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1;
}

@page {
  size: A4 landscape;
  margin: 0mm;
}
@media print {
  .techpack-body {
    gap: 0;
  }
  .page {
    zoom: normal !important;
  }
  .page:has(.tech-pack-additional-files):not(:has(.additional-file-upload)) {
    display: none;
  }
  #additional_label_add, #additional_file_add {
    display: none;
  }
}
* {
  -webkit-print-color-adjust: exact !important; /* Chrome, Safari 6 – 15.3, Edge */
  color-adjust: exact !important; /* Firefox 48 – 96 */
  print-color-adjust: exact !important; /* Firefox 97+, Safari 15.4+ */
}

.account-section__title {
  color: var(--black-900);
  font-weight: 600;
  font-size: var(--title-size);
  margin-bottom: 8px;
  font-style: normal;
}
.account-section .delete-button {
  cursor: pointer;
  display: inline-block;
  color: var(--red);
  font-weight: 600;
  text-decoration: none;
  margin-top: 16px;
}

.card-list-wrapper {
  --card-width: 433px;
  --gap: 24px;
  display: grid;
  grid-template-columns: repeat(auto-fill, var(--card-width));
  grid-template-rows: max-content;
  gap: var(--gap);
  width: fit-content;
  max-width: 100%;
  row-gap: 32px;
}

.card-list-header {
  position: relative;
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: repeat(auto-fill, var(--card-width));
  gap: 8px var(--gap);
  justify-content: space-between;
  align-items: center;
}
.card-list-header h1 {
  grid-column: 2 span;
  font-size: var(--title-size);
  color: var(--black-900);
  text-align: left;
  font-weight: 600;
}
.card-list-header h1 span {
  font-size: var(--title-size);
  text-transform: none;
}
.card-list-header p {
  grid-column: 2 span;
  grid-row: 2;
  font-size: 16px;
  color: var(--subtext-color);
}
.card-list-header .garment-select-container {
  position: absolute;
  right: 0;
}

.card-list {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: repeat(auto-fill, var(--card-width));
  gap: 60px var(--gap);
}
.card-list__loader {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 300px;
}
.card-list__loader--hidden {
  display: none;
}
.card-list__loader .spinner {
  width: 48px;
  height: 48px;
  border: 4px solid rgba(0, 0, 0, 0.1);
  border-left-color: var(--black-500, #000);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.card {
  display: none;
  flex-direction: column;
  align-items: center;
  width: 433px;
}
.card--loaded {
  display: flex;
}
.card__image {
  position: relative;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  margin-bottom: 12px;
}
.card__image:hover .card__delete {
  display: flex;
}
.card__image img {
  width: 100%;
}
.card__title {
  margin-bottom: 8px;
  color: var(--black-500);
}
.card__name {
  font-weight: 600;
  color: var(--black-900);
}
.card__name--untitled {
  font-weight: normal;
  font-style: italic;
}
.card__type {
  font-style: italic;
  color: var(--black-900);
}
.card__edited {
  color: var(--black-300);
}
.card__delete {
  display: none;
  position: absolute;
  top: 28px;
  right: 28px;
  padding: 8px;
  background-color: var(--black-200);
  border-radius: 8px;
  justify-content: center;
  align-items: center;
}
.card__delete img {
  width: 20px;
  height: 20px;
}

.tool {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.tool__title {
  display: flex;
  flex-direction: column;
  gap: 8px;
  position: relative;
}
.tool__title p.title {
  font-size: 26px;
  text-align: center;
}
.tool__title .modal-trigger {
  position: absolute;
  top: -3px;
  right: 0;
  cursor: pointer;
}
.tool__title .modal-trigger::before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  background-image: url(/images/icons/info-square.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.tool__sub-text {
  font-size: 11px;
  color: var(--subtext-color);
  font-style: normal;
  text-align: center;
}

.pcr-app {
  max-width: 450px !important;
}

.text-tools-container {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.text-tools {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: left;
  gap: 16px;
  height: 53px;
}
.text-tools .text-tool-btn {
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}
.text-tools .text-tool-btn.active {
  border: 1px solid var(--black-900);
  border-radius: 8px;
}
.text-tools .tool-font-family {
  width: 250px;
}
.text-tools .tool-font-family select {
  width: 100%;
  border: 1px solid var(--black-200);
  border-radius: 8px;
  padding: 16px 10px;
  text-align: center;
  background-color: white;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  text-overflow: ellipsis;
  overflow: hidden;
  text-wrap: revert;
}
.text-tools .text-color-picker-icon {
  --pcr-color: linear-gradient(90deg, #F00 0%, #F80 13.46%, #FFD900 25.48%, #51FF00 40.38%, #00FBCC 50.96%, #006CF9 64.42%, #8803FD 75.96%, #EA019C 87.5%, #FF0004 100%);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 30px;
  gap: 1px;
}
.text-tools .text-color-picker-icon::after {
  content: "";
  width: 100%;
  height: 10px;
  background: var(--pcr-color);
  border-radius: 4px;
  border: 0.5px solid var(--black-200);
}

.text-preview {
  display: none;
}
.text-preview:has(.text-preview-image) {
  display: block;
}
.text-preview .text-preview-list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 12px;
  margin-top: 24px;
}
.text-preview .text-preview-list:has(> :last-child:nth-child(1)) .text-preview-image {
  flex-basis: 100%;
  font-size: 26px;
  line-height: 2;
}
.text-preview .text-preview-list:has(> :last-child:nth-child(2)) .text-preview-image {
  flex-basis: calc(50% - 6px);
  font-size: 16px;
  line-height: 3;
}
.text-preview .text-preview-list .text-preview-image {
  position: relative;
  cursor: pointer;
  height: 53px;
  border: 1px solid var(--black-200);
  border-radius: 8px;
  flex-basis: calc(33.3333333333% - 8px);
  overflow: hidden;
  text-overflow: ellipsis;
  text-wrap-mode: nowrap;
  text-align: center;
  font-size: 16px;
  line-height: 3;
  background: rgba(236, 236, 236, 0.7);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}
.text-preview .text-preview-list .text-preview-image.active {
  border: 1px solid var(--black-900);
}
.text-preview .text-preview-list .text-preview-image.active span {
  display: block;
}
.text-preview .text-preview-list .text-preview-image.active span::after {
  content: "x";
  font-size: 12px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  margin-top: -1px;
  font-family: var(--font) !important;
  font-weight: 400 !important;
  text-transform: lowercase !important;
  text-decoration: none !important;
  font-style: normal !important;
}
.text-preview .text-preview-list .text-preview-image span {
  display: none;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 1px solid var(--subtext-color);
  background-color: var(--white);
  color: var(--subtext-color);
  position: absolute;
  top: 3px;
  right: 3px;
}

.color-container #colorInput, .color-container .pickr {
  display: none;
}
.color-container .pcr-app {
  max-width: 100% !important;
}

.tool.image-container .image-upload {
  border: 1px solid var(--image-upload-border);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 178px;
}
.tool.image-container .image-upload__title {
  font-size: 20px;
  color: var(--black-900);
}
.tool.image-container .image-upload__subtitle {
  font-size: 12px;
  color: var(--subtext-color);
}
