/* Utility classes for common styling patterns */

/* Text utilities */
.text-nowrap {
  white-space: nowrap;
}

.text-nowrap-mr-1 {
  white-space: nowrap;
  margin-right: 1rem;
}

/* Cursor utilities */
.cursor-pointer {
  cursor: pointer;
}

/* Opacity utilities */
.opacity-80 {
  opacity: 0.8;
}

/* Font size utilities */
.font-size-2rem {
  font-size: 2rem;
}

.font-size-1-25rem {
  font-size: 1.25rem;
}

.font-size-0-875rem {
  font-size: 0.875rem;
}

/* Font weight utilities */
.font-weight-bold {
  font-weight: bold;
}

/* Border utilities */
.border-top-divider {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

/* Scrollable container utilities */
.scrollable-container {
  max-height: 400px;
  overflow-y: auto;
}

/* Progress bar utilities */
.progress-thin {
  width: 100%;
  height: 6px;
}

.progress-medium {
  height: 8px;
}

.progress-bar-25 {
  width: 25%;
}

/* Form container utilities */
.form-container-narrow {
  width: 100%;
  max-width: 400px;
}

/* Responsive button sizing - btn-lg only on desktop */
.btn-lg-md {
  /* Default: no btn-lg sizing (mobile) */
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  border-radius: 0.375rem;
}

/* Apply btn-lg sizing on lg breakpoint and above (desktop) */
@media (min-width: 992px) {
  .btn-lg-md {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: 0.5rem;
  }
}
