/* Bootstrap 5 Custom Variables and Overrides */
/* Based on local bootstrap.css customizations */

:root {
  /* Custom Colors */
  --bs-primary: #D4223E;
  --bs-danger: #D4223E;
  --bs-red: #D4223E;
  --bs-light: #576071;
  --bs-body-color: #1e1e1e;
  --bs-body-bg: #F3F3F3;
  
  /* Border Radius */
  --bs-border-radius: 2rem;
  --bs-border-radius-sm: 0.5rem;
  --bs-border-radius-lg: 2rem;
  --bs-border-radius-xl: 2rem;
  --bs-border-radius-2xl: 2rem;
  --bs-border-radius-pill: 2rem;
  
  /* Font Family */
  --bs-font-sans-serif: Poppins, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  
  /* Focus Colors */
  --bs-primary-rgb: 212, 34, 62;
  --bs-danger-rgb: 212, 34, 62;

}

/* Body Overrides */
body {
  font-family: Poppins, sans-serif;
  color: #1e1e1e;
  background-color: #F3F3F3;
}

/* Links */
a {
  color: #D4223E;
  text-decoration: none;
}

a:hover {
  color: #92172b;
}

/* Buttons - Border Radius */
button {
  border-radius: 0;
}

.btn {
  border-radius: 2rem;
  --bs-btn-padding-x: 1.75rem;
  --bs-btn-padding-y: 0.375rem;

}

.btn-sm,
.btn-group-sm > .btn {
  border-radius: 2rem;
}

.btn-lg,
.btn-group-lg > .btn {
  border-radius: 2rem;
}

/* Button Primary/Danger Colors */
.btn-primary,
.btn-danger {
  color: #fff;
  background-color: #D4223E;
  border-color: #D4223E;
}

.btn-primary:hover,
.btn-danger:hover {
  color: #fff;
  background-color: #b31d34;
  border-color: #a81b31;
}

.btn-primary:focus,
.btn-primary.focus,
.btn-danger:focus,
.btn-danger.focus {
  color: #fff;
  background-color: #b31d34;
  border-color: #a81b31;
  box-shadow: 0 0 0 0.2rem rgba(218, 67, 91, 0.5);
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle,
.btn-danger:not(:disabled):not(.disabled):active,
.btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #a81b31;
  border-color: #9d192e;
}

.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus,
.btn-danger:not(:disabled):not(.disabled):active:focus,
.btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(218, 67, 91, 0.5);
}

.btn-primary.disabled,
.btn-primary:disabled,
.btn-danger.disabled,
.btn-danger:disabled {
  color: #fff;
  background-color: #D4223E;
  border-color: #D4223E;
}

/* Button Focus */
.btn:focus,
.btn.focus {
  box-shadow: 0 0 0 0.2rem rgba(212, 34, 62, 0.25);
}

/* Form Controls */
.form-control {
  border-radius: 2rem;
}

.form-control:focus {
  border-color: #ec8999;
  box-shadow: 0 0 0 0.2rem rgba(212, 34, 62, 0.25);
}

.form-control-sm {
  border-radius: 2rem;
}

.form-control-lg {
  border-radius: 2rem;
}

/* Input Group */
.input-group > .form-control,
.input-group > .form-select {
  border-radius: 2rem;
}

.input-group > .input-group-text {
  border-radius: 2rem;
}

.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  border-radius: 0 2rem 2rem 0;
}

.input-group > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) {
  border-radius: 2rem 0 0 2rem;
}

/* Select */
.form-select {
  border-radius: 2rem;
}

.form-select-sm {
  border-radius: 2rem;
}

.form-select-lg {
  border-radius: 2rem;
}

/* Checkbox and Radio */
.form-check-input {
  border-radius: 0.25rem;
}

/* Images */
.img-thumbnail {
  border-radius: 2rem;
}

/* Code */
kbd {
  color: #fff;
  background-color: #1e1e1e;
  border-radius: 2rem;
}

pre {
  color: #1e1e1e;
}

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

.alert-primary {
  color: #fff;
  background-color: rgba(212, 34, 62, 0.9);
  border-color: #D4223E;
  border-radius: 2rem;
}

.alert-danger {
  color: #fff;
  background-color: rgba(212, 34, 62, 0.9);
  border-color: #D4223E;
  border-radius: 2rem;
}

/* Badges */
.badge {
  border-radius: 2rem;
}

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

.card-img,
.card-img-top,
.card-img-bottom {
  border-radius: 2rem 2rem 0 0;
}

/* Dropdown */
.dropdown-menu {
  border-radius: 2rem;
}

/* Nav Pills */
.nav-pills .nav-link {
  border-radius: 2rem;
}

.nav-pills .nav-link.active {
  color: #fff;
  background-color: #D4223E;
  border-radius: 2rem;
}

/* Pagination */
.page-link {
  border-radius: 2rem;
}

.page-item:first-child .page-link {
  border-radius: 2rem;
}

.page-item:last-child .page-link {
  border-radius: 2rem;
}

/* Progress */
.progress {
  border-radius: 2rem;
}

/* List Group */
.list-group-item:first-child {
  border-radius: 2rem 2rem 0 0;
}

.list-group-item:last-child {
  border-radius: 0 0 2rem 2rem;
}

.list-group-item:only-child {
  border-radius: 2rem;
}

/* Modal */
.modal-content {
  border-radius: 2rem;
}

.modal-header {
  border-radius: 2rem 2rem 0 0;
}

.modal-footer {
  border-radius: 0 0 2rem 2rem;
}

/* Popover */
.popover {
  border-radius: 2rem;
}

/* Tooltip */
.tooltip-inner {
  border-radius: 2rem;
}

/* Toast */
.toast {
  border-radius: 2rem;
}

/* Offcanvas */
.offcanvas {
  border-radius: 0;
}

.offcanvas-header {
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

/* Breadcrumb */
.breadcrumb {
  border-radius: 2rem;
}

/* Carousel */
.carousel-item {
  border-radius: 2rem;
}

/* Close Button */
.btn-close {
  border-radius: 0;
}

/* Spinner */
.spinner-border,
.spinner-grow {
  border-radius: 2rem;
}

/* Utilities - Override border-radius utilities if needed */
.rounded {
  border-radius: 2rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

/* Form Control Plaintext */
.form-control-plaintext {
  color: #1e1e1e;
}

/* Button Light */
.btn-light {
  color: #fff;
  background-color: #576071;
}

/* Width Utilities */
@media (min-width: 768px) {
  .w-md-auto {
    width: auto !important;
  }
}
