@tailwind base;
@tailwind components;
@tailwind utilities;

@import url("https://cdn.jsdelivr.net/gh/devicons/devicon@v2.15.1/devicon.min.css");
 
@layer base {
  :root {
    --background: 0 0% 100%;
    --foreground: 222.2 84% 4.9%;

    --card: 0 0% 100%;
    --card-foreground: 222.2 84% 4.9%;
 
    --popover: 0 0% 100%;
    --popover-foreground: 222.2 84% 4.9%;
 
    --primary: 222.2 47.4% 11.2%;
    --primary-foreground: 210 40% 98%;
 
    --secondary: 210 40% 96.1%;
    --secondary-foreground: 222.2 47.4% 11.2%;
 
    --muted: 210 40% 96.1%;
    --muted-foreground: 215.4 16.3% 46.9%;
 
    --accent: 210 40% 96.1%;
    --accent-foreground: 222.2 47.4% 11.2%;
 
    --destructive: 0 84.2% 60.2%;
    --destructive-foreground: 210 40% 98%;

    --border: 214.3 31.8% 91.4%;
    --input: 214.3 31.8% 91.4%;
    --ring: 222.2 84% 4.9%;
 
    --radius: 0.5rem;
  }
  
  .dark {
    --background: 224 71.4% 4.1%;
    --foreground: 210 20% 98%;
    --card: 224 71.4% 4.1%;
    --card-foreground: 210 20% 98%;
    --popover: 224 71.4% 4.1%;
    --popover-foreground: 210 20% 98%;
    --primary: 263.4 70% 50.4%;
    --primary-foreground: 210 20% 98%;
    --secondary: 215 27.9% 16.9%;
    --secondary-foreground: 210 20% 98%;
    --muted: 215 27.9% 16.9%;
    --muted-foreground: 217.9 10.6% 64.9%;
    --accent: 215 27.9% 16.9%;
    --accent-foreground: 210 20% 98%;
    --destructive: 0 62.8% 30.6%;
    --destructive-foreground: 210 20% 98%;
    --border: 215 27.9% 16.9%;
    --input: 215 27.9% 16.9%;
    --ring: 263.4 70% 50.4%;
  }
}
 
@layer base {
  * {
    @apply border-border;
  }
  body {
    @apply bg-background text-foreground;
  }
}

body, .react-terminal {
  scrollbar-width: 0;
  overflow-x: hidden;
}

body::-webkit-scrollbar, .react-terminal::-webkit-scrollbar {
  display: none;
}

.overflow-y-none {
  overflow-y: none;
}

.text-gradient {
  background: linear-gradient(to right, #ff8a00, #e52e71);
  -webkit-background-clip: text;
  background-clip: text; 
  color: transparent;
}

.border-gradient {
  border-image: linear-gradient(100deg, #7f7fff, #7fff7f);
  border-image-slice: 1;
}

.background-gradient {
  background: linear-gradient(100deg, hsla(240, 100%, 75%, 0.1), hsl(120, 100%, 75%, 0.1));
}

.icon-javascript, .icon-typescript {
  margin-right: 1px;
}

.icon-javascript::before {
  content: "____";
  width: 16px;
  height: 16px;
  background-image: url(/icon/3d/javascript.3d.svg);
  background-size: 16px;
  background-position: center;
  background-repeat: no-repeat;
  color: transparent;
  margin-top: 12.5px;
  margin-right: -1px;
}

.icon-typescript::before {
  content: "____";
  width: 16px;
  height: 16px;
  background-image: url(/icon/3d/typescript.3d.svg);
  background-size: 16px;
  background-position: center;
  background-repeat: no-repeat;
  color: transparent;
  margin-top: 12.5px;
  margin-right: -1px;
}

@media (max-width: 428px) {
  .icon-javascript::before, .icon-typescript::before {
    width: 13px;
    height: 13px;
    background-size: 13px;
    background-position: bottom;
  }
}

@media screen and (min-width: 1024px) {
  .icon-javascript::before, .icon-typescript::before {
    width: 20px;
    height: 20px;
    background-size: 20px;
    background-position: bottom;
  }
}

.dropshadow-white {
  filter: drop-shadow(0 0 0.1rem white);
}