/* Kubishi Scholar - Cloudflare Edition
   Simplified styles preserving original color scheme */

/* Typography */
h1 {
  font-size: clamp(16px, 5vh, 48px);
}

body {
  background-color: white;
}

/* Navbar */
.navbar {
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  padding: 0.5rem 1rem;
}

.navbar-brand img {
  object-fit: contain;
}

/* Login/Logout buttons */
.login-button,
.logout-button {
  color: white;
  transition: background-color 0.3s ease;
}

.login-button:hover,
.logout-button:hover {
  background-color: #144091;
  color: white;
}

/* Logo styles */
.menu_logo {
  transition: transform 0.4s ease-out;
  border: 1px solid black;
}

.menu_logo:hover {
  transform: scale(1.1);
}

.main_logo {
  border: 1px solid black;
  transition: border-color 0.3s ease;
}

.main_logo:hover {
  border-radius: 1px;
}

/* Branding */
.brand-text {
  width: 100%;
}

.title_subtext {
  font-size: 10pt;
}

.conference_count {
  font-size: 15px;
  color: #7a7676;
}

.highlight-count {
  color: black;
  font-weight: bold;
}

/* Background image */
.bg-image {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.bg-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(50px);
  -webkit-user-drag: none;
  user-select: none;
}

/* Search box */
.search-box {
  background-color: rgba(255, 255, 255, 0.65);
  max-width: 1000px;
  margin: auto;
  box-shadow: 0 0 6px 0.5px lightgrey;
}

.main_search_box {
  width: 100%;
}

.text-box {
  display: flex;
  flex-direction: column;
  width: 100%;
  position: relative;
}

.text-box textarea {
  resize: none;
  height: 10vh;
  min-height: 40px;
  max-height: 100px;
  margin-bottom: 0.5rem;
}

.search-controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}

.search-controls button {
  height: 40px;
  min-width: 80px;
}

/* Input placeholder */
::placeholder {
  color: #000;
  opacity: 1;
}

/* Radio buttons */
.form-check-input:checked {
  background-color: black;
  border-color: black;
}

/* Navigation buttons */
.navigation-buttons {
  display: flex;
  justify-content: space-evenly;
}

/* Advanced Search button - Sky Blue hover */
.toggle-advanced-button {
  color: white;
}

.toggle-advanced-button:hover {
  background: #78C4EB;
  color: white;
}

/* Add Conference button - Purple hover */
.conference-add-button {
  color: white;
}

.conference-add-button:hover {
  background: #A47DCA;
  color: white;
}

/* Favorite button - Orange/Gold */
.favorite-button {
  background-color: #e19f06;
  color: white;
  transition: background-color 0.3s ease;
}

.favorite-button:hover {
  background-color: #b27a04;
  color: white;
}

/* Outlook button - Blue */
.outlook-button {
  background-color: #2563EB;
  color: white;
  transition: background-color 0.3s ease;
}

.outlook-button:hover {
  background-color: #1c48b8;
  color: white;
}

/* Google Calendar button - Green */
.google-calendar-button {
  background: #0F9D58;
  color: white;
  transition: background-color 0.3s ease;
}

.google-calendar-button:hover {
  background: #0c7a44;
  color: white;
}

/* Find Friends button - Pink hover */
.friend-button {
  color: white;
}

.friend-button:hover {
  background: #FBA1C5;
  color: white;
}

/* Saved Conferences button - Light Green hover */
.saved-conf-button {
  color: white;
}

.saved-conf-button:hover {
  background: #C3D888;
  color: white;
}

/* Admin Review button - Deep Blue */
.conference-review-button {
  background: #3e50df;
  color: white;
}

.conference-review-button:hover {
  background: #2a3db8;
  color: white;
}

/* Search results */
.search_result {
  display: flex;
  flex-direction: column;
  max-width: 950px;
  margin: 0 auto;
}

/* Result cards */
.result-card {
  border: 1px solid #000;
  padding: 1rem;
  border-radius: 1rem;
  background: white;
  margin-bottom: 1rem;
}

/* URL display */
.full-url {
  display: inline;
}

.short-url {
  display: none;
}

/* Responsive design */
@media screen and (max-width: 768px) {
  .full-url {
    display: none;
  }

  .short-url {
    display: inline;
  }

  .title_subtext {
    display: none;
  }

  .menu_logo {
    display: none;
  }

  .conference_count {
    display: none;
  }

  .friend-button,
  .toggle-advanced-button,
  .saved-conf-button,
  .conference-add-button {
    font-size: 7pt;
  }

  .navigation-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .search-controls {
    flex-direction: column;
    align-items: stretch;
  }

  .search-controls .d-flex {
    flex-wrap: wrap;
  }
}

/* Utility classes */
.count-box-setter {
  width: 100%;
}

/* Cards */
.card {
  border-radius: 0.5rem;
}

.card-header {
  background-color: rgba(0, 0, 0, 0.03);
}

/* Alerts */
.alert {
  border-radius: 0.5rem;
}

/* Forms */
.form-control:focus {
  border-color: #000;
  box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.15);
}

/* Spinner */
.spinner-border {
  width: 3rem;
  height: 3rem;
}

/* Details/Summary for rankings */
details summary {
  cursor: pointer;
  color: #666;
}

details summary:hover {
  color: #000;
}

/* Badge styles for rankings */
.badge.text-bg-secondary {
  background-color: #6c757d !important;
}

/* Table styles for rankings */
.table-sm th {
  font-weight: 600;
  color: #333;
}

.table-sm td {
  color: #666;
}
