/*Scroll to top button */
#scrollTopBtn {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 99;
  border: none;
  outline: none;
  background-color: #018bb0;
  color: white;
  cursor: pointer;
  padding: 5px 16px;
  border-radius: 10px;
  font-size: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);

  /*Transition for smooth fade */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

#scrollTopBtn.show {
  opacity: 1;
  visibility: visible;
}

#scrollTopBtn:hover {
  background-color: #0055aa;
}


/* Notice */
.notice-card {
        background: #fff;
        border-radius: 12px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
        margin-bottom: 1.2rem;
        padding: 1.5rem 2rem;
        transition: 0.3s ease;
      }

      .notice-card:hover {
        transform: translateY(-3px);
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
      }

      .notice-title {
        font-size: 1.4rem;
        font-weight: 600;
      }

      .notice-date {
        font-size: 0.95rem;
        color: #666;
      }

      .category-badge {
        font-size: 0.8rem;
      }

      /* Mobile adjustments */
      @media (max-width: 576px) {
        .notice-card {
          padding: 1rem 1.2rem;
        }
        .notice-title {
          font-size: 1.25rem;
        }
        .notice-date {
          font-size: 0.9rem;
        }
      }