@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap");

    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
      font-family: "Poppins", sans-serif;
    }

    body {
      background: #0a192f;
      color: #ccd6f6;
      min-height: 100vh;
      padding: 2rem;
    }

    .container {
      max-width: 1200px;
      margin: 0 auto;
    }

    .header {
      text-align: center;
      margin-bottom: 3rem;
    }

    h1 {
      font-size: 2.5rem;
      margin-bottom: 1rem;
      background: linear-gradient(45deg, #64ffda, #00b4d8);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .search-container {
      display: flex;
      gap: 1rem;
      max-width: 600px;
      margin: 0 auto 3rem;
      position: relative;
    }

    .input-wrapper {
      position: relative;
      flex: 1;
    }

    .input-icon {
      position: absolute;
      left: 1rem;
      top: 50%;
      transform: translateY(-50%);
      color: #64ffda;
    }

    #Input {
      width: 100%;
      padding: 1rem 1rem 1rem 3rem;
      background: #172a45;
      border: 2px solid #233554;
      border-radius: 8px;
      color: #ccd6f6;
      font-size: 1rem;
      transition: all 0.3s ease;
    }

    #Input:focus {
      outline: none;
      border-color: #64ffda;
      box-shadow: 0 0 15px rgba(100, 255, 218, 0.2);
    }

    button {
      padding: 1rem 2rem;
      background: linear-gradient(45deg, #64ffda, #00b4d8);
      border: none;
      border-radius: 8px;
      color: #0a192f;
      font-weight: 600;
      cursor: pointer;
      transition: transform 0.3s ease;
    }

    button:hover {
      transform: translateY(-2px);
      box-shadow: 0 5px 15px rgba(100, 255, 218, 0.3);
    }

    .list-container {
      background: #172a45;
      border-radius: 12px;
      padding: 2rem;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    }

    #list {
      list-style: none;
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
      gap: 1.5rem;
      margin-top: 2rem;
    }

    .university-card {
      background: #233554;
      padding: 1.5rem;
      border-radius: 8px;
      border: 1px solid #303c55;
      transition: transform 0.3s ease;
      position: relative;
      overflow: hidden;
    }

    .university-card:hover {
      transform: translateY(-5px);
    }

    .university-card::before {
      content: "";
      position: absolute;
      top: -50%;
      left: -50%;
      width: 200%;
      height: 200%;
      background: linear-gradient(
        45deg,
        transparent,
        rgba(100, 255, 218, 0.1),
        transparent
      );
      transform: rotate(45deg);
      transition: all 0.5s;
    }

    .university-card:hover::before {
      animation: shine 1.5s;
    }

    @keyframes shine {
      0% {
        left: -50%;
      }
      100% {
        left: 150%;
      }
    }

    .university-name {
      font-size: 1.1rem;
      margin-bottom: 0.5rem;
      color: #64ffda;
    }

    .university-details {
      font-size: 0.9rem;
      color: #8892b0;
    }

    .website-link {
      display: inline-block;
      margin-top: 1rem;
      color: #00b4d8;
      text-decoration: none;
      transition: color 0.3s ease;
    }

    .website-link:hover {
      color: #64ffda;
    }

    .loading {
      display: none;
      text-align: center;
      font-size: 1.2rem;
      color: #64ffda;
      margin: 2rem 0;
    }

    .error {
      color: #ff6363;
      text-align: center;
      padding: 2rem;
      border: 1px solid #ff6363;
      border-radius: 8px;
      margin: 2rem 0;
    }

    @media (max-width: 768px) {
      .search-container {
        flex-direction: column;
      }

      button {
        width: 100%;
      }

      h1 {
        font-size: 2rem;
      }
    }

    /* Skeleton Loading Animation */
.skeleton-loading {
  animation: skeleton-loading 1.5s infinite ease-in-out;
}

@keyframes skeleton-loading {
  0% { background-color: #233554; }
  50% { background-color: #1a2a40; }
  100% { background-color: #233554; }
}

.skeleton-card {
  background: #172a45;
  border-radius: 8px;
  padding: 1.5rem;
  margin-bottom: 1rem;
}

.skeleton-text {
  height: 1rem;
  width: 80%;
  margin-bottom: 0.5rem;
  border-radius: 4px;
}

.skeleton-text-sm {
  height: 0.8rem;
  width: 60%;
}

/* Search History Styles */
#search-history {
  margin: 2rem 0.5rem 1rem;

}

#history-items {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.history-item {
  display: flex;
  align-items: center;
  background: #233554;
  padding: 0.5rem 1rem;
  border-radius: 20px;
  cursor: pointer;
  transition: background 0.3s ease;
  max-width: fit-content;
  margin-top: 0.5rem;
  white-space: nowrap;
}

.history-item .remove-history {
  margin-left: 0.5rem;
  color: #ff6b6b;
  cursor: pointer;
  font-weight: bold;
}

.history-item:hover {
  background: #1a2a40;
}

.autocomplete-container {
  position: absolute;
  top: 105%;
  left: 0;
  width: 100%;
  max-height: 250px;
  overflow-y: auto;
  z-index: 1000;
  background: #233554;
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.autocomplete-container::-webkit-scrollbar {
  width: 8px;
}

.autocomplete-container::-webkit-scrollbar-track {
  background: #1a2a40;
  border-radius: 10px;
}

.autocomplete-container::-webkit-scrollbar-thumb {
  background: #64ffda;
  border-radius: 10px;
}

.autocomplete-container::-webkit-scrollbar-thumb:hover {
  background: #00b4d8;
}

.autocomplete-item {
  background: #233554;
  padding: 0.75rem 1rem;
  cursor: pointer;
  transition: background 0.3s ease;
  color: #ccd6f6;
}

.autocomplete-item:hover {
  background: #1a2a40;
}

.autocomplete-item:active {
  background: #64ffda;
  color: #0a192f;
}

