/* Fonts */
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/poppins-v23-latin-300.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/poppins-v23-latin-500.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/poppins-v23-latin-700.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/poppins-v23-latin-900.woff2") format("woff2");
}
/* Accent var color */
:root {
  --accent-color: #F8D1C9;
}

html,
body {
  font-size: 0.96rem;
  min-height: 100vh;
  background: radial-gradient(circle at 8% 8%, rgba(238, 225, 207, 0.18), transparent 12%), linear-gradient(135deg, #ffffff 0%, #f9f9f9 60%);
  background-attachment: fixed;
}

main {
  font-size: 0.9rem;
}

a {
  text-decoration: none;
}

.text-accent {
  color: var(--accent-color) !important;
}

.container {
  max-width: 1900px;
}

header.navbar {
  height: 50px;
  z-index: 1041;
}

.logo {
  max-width: 120px;
  max-height: 45px;
}

.offcanvas-backdrop {
  z-index: 1041;
}

.offcanvas-header {
  background-color: #ffffff;
}

.offcanvas-header .btn-close {
  filter: invert(0);
}

.nav-link {
  border-radius: var(--bs-border-radius) !important;
  padding: 0.5rem;
}

.nav-link.active {
  background-color: var(--accent-color);
  color: #603140 !important;
}

.logged-user {
  width: 30px;
  height: 30px;
  font-size: 0.8rem;
  border-radius: 50%;
  background-color: var(--bs-body-color) !important;
  color: var(--accent-color) !important;
  transition: all 0.18s ease-in-out;
}

.logged-user::after {
  display: none !important;
}

.suggestions-block {
  z-index: 1000;
  max-height: 200px;
  overflow-y: auto;
}

.suggestion-item {
  cursor: pointer;
  padding: 0.2rem 0.5rem;
  border-radius: var(--bs-border-radius);
}

.suggestion-item:hover {
  background-color: var(--bs-light);
}

.suggestion-item.active {
  background-color: var(--bs-primary);
  color: #ffffff;
}

.table:not(.specs-table) {
  border-collapse: separate;
  border-spacing: 0;
  min-width: 576px;
}

.table-actions {
  font-size: 0.9rem;
  padding: 0.2rem 0.5rem;
  font-weight: bolder;
}

.table thead tr:first-child th:first-child {
  border-top-left-radius: 0.5rem;
}

.table thead tr:first-child th:last-child {
  border-top-right-radius: 0.5rem;
}

.table tbody tr:last-child td:first-child,
.table tbody:last-child tr:last-child td:first-child {
  border-bottom-left-radius: 0.5rem;
}

.table tbody tr:last-child td:last-child,
.table tbody:last-child tr:last-child td:last-child {
  border-bottom-right-radius: 0.5rem;
}

.table th {
  padding: 0.5rem 1rem !important;
}

.table td {
  padding: 0.2rem 1rem !important;
}

.specs-table td {
  align-content: center;
  background-color: var(--bs-light);
}

.table-responsive {
  overflow-x: auto;
  position: relative;
}

.sticky-col {
  position: sticky;
  left: 0;
  z-index: 2;
  border-right: 1px solid #BFBFBF !important;
}

.sticky-col-end {
  position: sticky;
  right: 0;
  z-index: 2;
  border-left: 1px solid #BFBFBF !important;
}

.tile-card {
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  border: 0;
}

.tile-card:hover {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.nav-icon-pill {
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.65rem;
}

.nav-icon-circle {
  width: 1.5rem;
  height: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.icon-pill {
  width: 3.25rem;
  height: 3.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.85rem;
}

.tone-primary, .tone-blue, .tone-purple {
  background: linear-gradient(135deg, rgb(236.4982758621, 218.7517241379, 224.4155172414), rgb(227.864137931, 201.835862069, 210.1427586207));
  color: #603140;
}

.tone-accent, .tone-yellow, .tone-orange {
  background: linear-gradient(135deg, #f8d1c9, rgb(245.4237704918, 192.0704918033, 181.1262295082));
  color: #603140;
}

.tone-secondary {
  background: linear-gradient(135deg, rgb(232.32, 232.32, 232.32), rgb(217.2, 217.2, 217.2));
  color: #424242;
}

.tone-neutral {
  background: linear-gradient(135deg, #f0f0f0, #e7e7e7);
  color: #424242;
}

.tone-neutral-solid {
  background-color: #6c757d;
  color: #ffffff;
}

.tone-success, .tone-green {
  background: rgba(var(--bs-success-rgb), 0.12);
  color: rgb(var(--bs-success-rgb));
}

.tone-warning {
  background: rgba(var(--bs-warning-rgb), 0.16);
  color: rgb(var(--bs-warning-rgb));
}

.tone-danger, .tone-red {
  background: rgba(var(--bs-danger-rgb), 0.12);
  color: rgb(var(--bs-danger-rgb));
}

.tone-info {
  background: rgba(var(--bs-info-rgb), 0.12);
  color: rgb(var(--bs-info-rgb));
}

.status-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.1rem 0.3rem;
  border: 1px solid currentColor;
  border-radius: 10px;
  font-size: 0.75rem;
  font-weight: 500;
  cursor: default;
}

.modal {
  backdrop-filter: blur(5px);
}

.cursor-pointer, .form-select {
  cursor: pointer;
}

input:disabled, textarea:disabled, select:disabled {
  cursor: not-allowed;
}

.form-label.required::after,
.form-label:has(+ input[required])::after,
.form-label:has(+ select[required])::after,
.form-label:has(+ textarea[required])::after,
.form-label:has(+ .input-group input[required])::after,
.form-label:has(+ .input-group select[required])::after,
.form-label:has(+ .input-group textarea[required])::after {
  content: " *";
  color: var(--bs-danger, #dc3545);
  font-weight: 600;
}

.hero-section {
  background: linear-gradient(135deg, rgb(242.6655172414, 230.8344827586, 234.6103448276), #f8d1c9);
}

.course-type-toggle {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 0.85rem;
  letter-spacing: 0.02em;
}

.course-view {
  display: none;
}

.course-view.active {
  display: block;
}

.day-filter {
  border-radius: 50rem;
  font-weight: 600;
  font-size: 0.8rem;
  padding: 0.25rem 0.75rem;
  background-color: transparent;
  border: 1px solid var(--bs-primary);
  color: var(--bs-primary);
  transition: all 0.15s ease;
}
.day-filter.active {
  background-color: var(--bs-primary);
  color: #fff;
}
.day-filter:not(.active) {
  opacity: 0.5;
}
.day-filter:not(.active):hover {
  opacity: 0.8;
}

.course-card {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 0.5rem;
  padding: 0.6rem;
}

.cta-button {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 0.7rem;
  letter-spacing: 0.03em;
}

.day-column h6 {
  border-bottom: 2px solid var(--bs-primary);
  padding-bottom: 0.35rem;
}

/* Docs search highlight */
.doc-hit {
  background: #ffea70;
  padding: 0 0.15em;
  border-radius: 0.15rem;
}

/* GitHub-markdown container tables tweaks */
.markdown-body table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1rem;
}

.markdown-body table th,
.markdown-body table td {
  border: 1px solid var(--bs-border-color, #dee2e6);
  padding: 0.5rem 0.75rem;
}

.markdown-body table thead th {
  background-color: var(--bs-light, #f8f9fa);
  font-weight: 600;
  font-size: 1.05em;
}

.markdown-body table tbody tr:nth-child(odd) {
  background-color: var(--bs-table-striped-bg, #f9fafb);
}

.ql-editor p {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor h1 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor h2 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor h3 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor h4 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor h5 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor h6 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor ul {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor ol {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor dl {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor blockquote {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor pre {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor figure {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor table {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor fieldset {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor hr {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor address {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor summary {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.ql-editor ul, .ql-editor ol {
  padding-left: 1.5rem;
}

.card-text p,
#detail-description p {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text h1,
#detail-description h1 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text h2,
#detail-description h2 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text h3,
#detail-description h3 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text h4,
#detail-description h4 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text h5,
#detail-description h5 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text h6,
#detail-description h6 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text ul,
#detail-description ul {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text ol,
#detail-description ol {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text dl,
#detail-description dl {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text blockquote,
#detail-description blockquote {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text pre,
#detail-description pre {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text figure,
#detail-description figure {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text table,
#detail-description table {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text fieldset,
#detail-description fieldset {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text hr,
#detail-description hr {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text address,
#detail-description address {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text summary,
#detail-description summary {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.card-text ul, .card-text ol,
#detail-description ul,
#detail-description ol {
  padding-left: 1.25rem;
}

.ql-toolbar {
  border-radius: 0.375rem 0.375rem 0 0;
  background-color: #f8f9fa;
}

.ql-container {
  border-radius: 0 0 0.375rem 0.375rem;
}

#quill-editor.form-control {
  padding: 0;
  height: auto;
}

#quill-editor.form-control .ql-editor {
  min-height: 120px;
}

.page-centered {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.text-shadow {
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
}

.nav-link-label {
  margin-left: 0.5rem;
}

code {
  color: unset;
  font-size: unset;
}

.textarea {
  white-space: pre-wrap;
  word-wrap: break-word;
}

@keyframes fadeInBlur {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.table-responsive {
  animation: fadeInBlur 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.fade-in {
  animation: fadeInBlur 1s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.bg-accent {
  background-color: var(--accent-color) !important;
}

.border-accent {
  border-color: var(--accent-color) !important;
}

.text-on-accent {
  color: #603140 !important;
}

@media screen and (max-width: 576px) {
  .searchform {
    width: 100%;
  }
  .brand .h5 {
    font-size: 1rem;
  }
  .brand .h6 {
    font-size: 0.75rem;
    font-weight: normal;
  }
  .nav-menu-btn {
    font-size: 1rem !important;
    padding-top: 0.15rem !important;
  }
}
@media screen and (min-width: 577px) {
  .searchform #query {
    min-width: 270px;
  }
  .logged-user {
    width: 40px;
    height: 40px;
    font-size: 0.9rem;
  }
}

/*# sourceMappingURL=style.css.map */
