@import "tailwindcss";

@theme {
  --color-*: initial;
  --color-bg: var(--bg-color);
  --color-main: var(--main-color);
  --color-caret: var(--caret-color);
  --color-sub: var(--sub-color);
  --color-sub-alt: var(--sub-alt-color);
  --color-text: var(--text-color);
  --color-error: var(--error-color);
  --color-error-extra: var(--error-extra-color);
  --color-colorful-error: var(--colorful-error-color);
  --color-colorful-error-extra: var(--colorful-error-extra-color);

  /* decide on rem or em */
  --spacing: 0.25rem;
  --em-spacing: 0.25em;

  --breakpoint-*: initial;
  --breakpoint-2xl: 1617px;
  --breakpoint-xl: 1361px;
  --breakpoint-lg: 1105px;
  --breakpoint-md: 849px;
  --breakpoint-sm: 721px;
  --breakpoint-xs: 426px;
  --breakpoint-xxs: 331px;

  --default-transition-duration: 0.25s;
  --duration-half: 0.125s;

  --radius: var(--roundness);

  @keyframes loader {
    0% {
      transform: translateX(-100%) scaleX(0);
    }
    50% {
      transform: translateX(0) scaleX(1);
    }
    100% {
      transform: translateX(100%) scaleX(0);
    }
  }
}

@utility rounded-double {
  border-radius: calc(var(--roundness) * 2);
}

@utility rounded-half {
  border-radius: calc(var(--roundness) / 2);
}

@utility debug {
  border: 1px dashed hotpink !important;
}

@utility text-em-xs {
  font-size: 0.75em;
  line-height: var(--text-xs--line-height);
}

@utility text-em-sm {
  font-size: 0.875em;
  line-height: var(--text-sm--line-height);
}

@utility text-em-base {
  font-size: 1em;
  line-height: var(--text-base--line-height);
}

@utility text-em-lg {
  font-size: 1.125em;
  line-height: var(--text-lg--line-height);
}

@utility text-em-xl {
  font-size: 1.25em;
  line-height: var(--text-xl--line-height);
}

@utility text-em-2xl {
  font-size: 1.5em;
  line-height: var(--text-2xl--line-height);
}

@layer utilities {
  .has-button\:p-0:has(button) {
    padding: 0;
  }
}

@layer utilities {
  .autofill-fix:-webkit-autofill,
  .autofill-fix:-webkit-autofill:hover,
  .autofill-fix:-webkit-autofill:focus {
    @apply border-none  font-(--font) caret-(--text-color) font-[inherit];
    outline: 0.15em solid var(--main-color);
    -webkit-text-fill-color: var(--text-color);
    -webkit-box-shadow: 0 0 0 1000000px var(--sub-alt-color) inset;
  }
}
