@charset "UTF-8";
@import url("https://lasierra.edu/assets/css/fonts.min.css");
body {
  /*background-color: skyblue;*/
}

.turbo-progress-bar {
  height: 5px;
  background-color: #f4b824; /* La Sierra gold */
}

[data-theme=dark] .handsontable .changeType::after {
  box-shadow: 0 0 0 1px #1c3a54 !important;
  background-color: #1c3a54 !important;
}

.ht-theme-horizon .handsontable {
  --ht-icon-button-hit-area-size: 16px !important;
  --ht-cell-horizontal-border-color: #e5e7eb !important;
  /* Compact, spreadsheet-like density */
  --ht-font-size: 12px !important;
  --ht-line-height: 16px !important;
  --ht-cell-horizontal-padding: 6px !important;
  --ht-cell-vertical-padding: 3px !important;
}

/* Fixed-height rows don't wrap; clip overflowing text with an ellipsis. */
.hot-container .handsontable td {
  text-overflow: ellipsis;
}

/* Compact headers: reclaim padding/menu-button/sort-arrow space so labels
   stay readable at narrow default widths. The column menu (⋮) shows on hover. */
.hot-container .handsontable th {
  padding: 0 2px !important;
}

.hot-container .handsontable th .relative {
  padding: 3px 2px !important;
}

.hot-container .handsontable th .changeType {
  position: absolute !important;
  right: 1px;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.12s ease;
}

.hot-container .handsontable th:hover .changeType {
  opacity: 1;
}

.hot-container .handsontable span.colHeader.columnSorting {
  padding-inline-end: 2px !important;
}

.hot-container .handsontable span.colHeader.columnSorting.ascending,
.hot-container .handsontable span.colHeader.columnSorting.descending {
  padding-inline-end: 14px !important;
}

/* Handsontable zebra effect */
.ht-theme-horizon .handsontable tr.even-row td,
.ht-theme-horizon .handsontable tr.ht__row_even td,
.ht-theme-horizon .handsontable td.even-row {
  background-color: #f9f9f9 !important;
}

.ht-theme-horizon .handsontable tr.odd-row td,
.ht-theme-horizon .handsontable tr.ht__row_odd td,
.ht-theme-horizon .handsontable td.odd-row {
  background-color: #ffffff !important;
}

/* Dark mode for Handsontable - only apply to main container */
[data-theme=dark] .hot-container.ht-theme-horizon {
  color-scheme: dark !important;
  --ht-icon-button-hit-area-size: 16px !important;
  --ht-cell-horizontal-border-color: rgba(255, 255, 255, 0.15) !important;
  --ht-cell-vertical-border-color: rgba(255, 255, 255, 0.15) !important;
  --ht-row-cell-odd-background-color: #1a2e3e !important;
  --ht-row-cell-even-background-color: #162633 !important;
  --ht-border-color: rgba(255, 255, 255, 0.15) !important;
  --ht-color-border-standard: rgba(255, 255, 255, 0.15) !important;
  --ht-color-header-label: #b5cad7 !important;
  --ht-color-header-background: #1c3a54 !important;
  --ht-color-header-background-hover: #234766 !important;
  --ht-color-header-background-focus: #234766 !important;
  --ht-color-text-standard: #e8edf2 !important;
  --ht-scrollbar-track-color: #162633 !important;
  --ht-scrollbar-thumb-color: #3d5e7a !important;
  --ht-background-color: #162633 !important;
}

[data-theme=dark] .hot-container .handsontable .wtHolder {
  scrollbar-color: #3d5e7a #162633 !important;
  background-color: #162633 !important;
}

[data-theme=dark] .hot-container .handsontable .wtHolder::-webkit-scrollbar {
  width: 12px !important;
  height: 12px !important;
}

[data-theme=dark] .hot-container .handsontable .wtHolder::-webkit-scrollbar-track {
  background-color: #162633 !important;
}

[data-theme=dark] .hot-container .handsontable .wtHolder::-webkit-scrollbar-thumb {
  background-color: #3d5e7a !important;
  border: 3px solid #162633 !important;
  border-radius: 10px !important;
}

[data-theme=dark] .hot-container .handsontable .wtHolder::-webkit-scrollbar-corner {
  background: #162633 !important;
}

[data-theme=dark] .hot-container .handsontable tr.even-row td,
[data-theme=dark] .hot-container .handsontable tr.ht__row_even td,
[data-theme=dark] .hot-container .handsontable td.even-row {
  background-color: #162633 !important;
  color: #e8edf2 !important;
}

[data-theme=dark] .hot-container .handsontable tr.odd-row td,
[data-theme=dark] .hot-container .handsontable tr.ht__row_odd td,
[data-theme=dark] .hot-container .handsontable td.odd-row {
  background-color: #1a2e3e !important;
  color: #e8edf2 !important;
}

[data-theme=dark] .hot-container .handsontable th {
  background-color: #1c3a54 !important;
  color: #b5cad7 !important;
  border-color: rgba(255, 255, 255, 0.15) !important;
}

[data-theme=dark] .hot-container .handsontable td {
  border-color: rgba(255, 255, 255, 0.15) !important;
}

/* Column borders */
.handsontable td, .handsontable th {
  border-right: 1px solid #e5e7eb !important;
}

[data-theme=dark] .hot-container .handsontable td,
[data-theme=dark] .hot-container .handsontable th {
  border-right: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
}

[data-theme=dark] .hot-container .handsontable tr:first-child th,
[data-theme=dark] .hot-container .handsontable tr:first-child td {
  border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
}

/* Force Handsontable dropdown/filter menus to stay in light mode */
[data-theme=dark] .htDropdownMenu,
[data-theme=dark] .htFiltersMenu,
[data-theme=dark] .htMenu,
[data-theme=dark] .htFiltersConditions,
[data-theme=dark] .htFiltersValues,
[data-theme=dark] .htFiltersConditions .htUISelect,
[data-theme=dark] .htFiltersValues .htUIInput {
  background-color: #ffffff !important;
  color: #262624 !important;
}

[data-theme=dark] .htDropdownMenu .handsontable,
[data-theme=dark] .htDropdownMenu .handsontable td,
[data-theme=dark] .htDropdownMenu .handsontable th,
[data-theme=dark] .htFiltersMenu .handsontable,
[data-theme=dark] .htFiltersMenu .handsontable td,
[data-theme=dark] .htFiltersMenu .handsontable th {
  background-color: #ffffff !important;
  color: #262624 !important;
  border-color: #e7e7e9 !important;
}

[data-theme=dark] .htDropdownMenu input,
[data-theme=dark] .htDropdownMenu select,
[data-theme=dark] .htFiltersMenu input,
[data-theme=dark] .htFiltersMenu select,
[data-theme=dark] .htDropdownMenu .htUIInput input,
[data-theme=dark] .htFiltersMenu .htUIInput input {
  background-color: #ffffff !important;
  color: #262624 !important;
  border-color: #d1d1d4 !important;
}

[data-theme=dark] .htDropdownMenu .htUIButton,
[data-theme=dark] .htFiltersMenu .htUIButton {
  color: #262624 !important;
}

[data-theme=dark] .htDropdownMenu .htUIButton.htUIButton-primary,
[data-theme=dark] .htFiltersMenu .htUIButton.htUIButton-primary {
  color: #ffffff !important;
  background-color: #37bc6c !important; /* Default light mode green */
}

/* Ensure zebra stripes don't apply to the dropdown's internal table in dark mode */
[data-theme=dark] .htDropdownMenu .handsontable tr.even-row td,
[data-theme=dark] .htDropdownMenu .handsontable td.even-row,
[data-theme=dark] .htDropdownMenu .handsontable tr.odd-row td,
[data-theme=dark] .htDropdownMenu .handsontable td.odd-row,
[data-theme=dark] .htFiltersMenu .handsontable tr.even-row td,
[data-theme=dark] .htFiltersMenu .handsontable td.even-row,
[data-theme=dark] .htFiltersMenu .handsontable tr.odd-row td,
[data-theme=dark] .htFiltersMenu .handsontable td.odd-row {
  background-color: #ffffff !important;
  color: #262624 !important;
}

[data-theme=dark] .htDropdownMenu .htFiltersValues a,
[data-theme=dark] .htFiltersMenu .htFiltersValues a {
  color: #37bc6c !important;
}

/* Increase height of filter by value list */
.htFiltersValues {
  height: 220px !important;
}

.htUIMultipleSelectHot {
  height: 175px !important;
}

.htUIMultipleSelectHot .wtHolder {
  height: 175px !important;
}

/* Mobile course detail: prerequisite course pills get the accent-outline look
   from the approved mockups (bolder than the default .course-link style) */
.mdetail-prereqs .course-link {
  background-color: var(--card-crn-bg) !important;
  border-color: var(--card-crn-border) !important;
  font-weight: 700;
  letter-spacing: 0.05em;
}

/* View Switcher Fixes: the active segment (bg-navy on the light theme) is
   near-invisible against the dark theme's surface, so restyle it there */
[data-theme=dark] .view-switcher button.bg-white,
[data-theme=dark] .view-switcher button.bg-navy {
  background-color: var(--color-navy-tint) !important;
  color: var(--color-accent) !important;
  border: 1px solid rgba(106, 212, 255, 0.2) !important;
  box-shadow: none !important;
}

/* Search-row filter toggle: white icon on the dark theme (text-navy is
   unreadable there once the bg-white override darkens the button) */
[data-theme=dark] .filter-toggle {
  color: var(--color-text) !important;
}

/* Frozen columns background and borders - strengthened selectors */
.ht_clone_left td,
.ht_clone_left th,
.handsontable .ht_clone_left td,
.handsontable .ht_clone_left th,
.ht-theme-horizon .ht_clone_left td,
.ht-theme-horizon .ht_clone_left th {
  background-color: #f1f5f9 !important;
  border-right: 1px solid #cbd5e1 !important;
}

.ht_clone_left tr.even-row td,
.ht_clone_left td.even-row,
.handsontable .ht_clone_left tr.even-row td,
.handsontable .ht_clone_left td.even-row,
.ht-theme-horizon .ht_clone_left tr.even-row td,
.ht-theme-horizon .ht_clone_left td.even-row {
  background-color: #e2e8f0 !important;
}

[data-theme=dark] .ht_clone_left td,
[data-theme=dark] .ht_clone_left th,
[data-theme=dark] .handsontable .ht_clone_left td,
[data-theme=dark] .handsontable .ht_clone_left th,
[data-theme=dark] .ht-theme-horizon .ht_clone_left td,
[data-theme=dark] .ht-theme-horizon .ht_clone_left th {
  background-color: #1e3a5a !important;
  border-right: 1px solid rgba(255, 255, 255, 0.2) !important;
}

[data-theme=dark] .ht_clone_left tr.even-row td,
[data-theme=dark] .ht_clone_left td.even-row,
[data-theme=dark] .handsontable .ht_clone_left tr.even-row td,
[data-theme=dark] .handsontable .ht_clone_left td.even-row,
[data-theme=dark] .ht-theme-horizon .ht_clone_left tr.even-row td,
[data-theme=dark] .ht-theme-horizon .ht_clone_left td.even-row {
  background-color: #162d45 !important;
}

/* Advanced View Grid Enhancements */
/* Row highlighting on hover - strengthened */
.ht-theme-horizon .handsontable tr.highlighted-row td,
.ht-theme-horizon .handsontable tr.highlighted-row th,
.ht-theme-horizon .handsontable .ht_clone_left tr.highlighted-row td,
.ht-theme-horizon .handsontable .ht_clone_left tr.highlighted-row th {
  background-color: #e8f4fd !important;
  color: #000000 !important;
}

[data-theme=dark] .ht-theme-horizon .handsontable tr.highlighted-row td,
[data-theme=dark] .ht-theme-horizon .handsontable tr.highlighted-row th,
[data-theme=dark] .ht-theme-horizon .handsontable .ht_clone_left tr.highlighted-row td,
[data-theme=dark] .ht-theme-horizon .handsontable .ht_clone_left tr.highlighted-row th {
  background-color: rgba(59, 130, 246, 0.45) !important;
  color: #ffffff !important;
}

/* Header spacing and font - tightened */
.handsontable th,
.handsontable th .relative,
.handsontable th .colHeader,
.ht-theme-horizon th,
.ht-theme-horizon th .relative,
.ht-theme-horizon th .colHeader {
  padding-left: 5px !important;
  padding-right: 5px !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
}

.hot-container .handsontable thead tr th .relative {
  gap: 1px !important;
}

/* Dark mode filter button icon and circle - improved contrast */
.ht-theme-horizon.handsontable .changeType {
  width: 16px !important;
  height: 16px !important;
  background-color: #e2e8f0 !important;
}

/* Indicator for active filters */
.handsontable th.htFiltersActive .colHeader {
  color: #0ea5e9 !important;
  font-weight: bold !important;
}

.handsontable th.htFiltersActive .changeType {
  background-color: #0ea5e9 !important;
}

[data-theme=dark] .handsontable th.htFiltersActive .colHeader {
  color: #38bdf8 !important;
}

[data-theme=dark] .handsontable th.htFiltersActive .changeType {
  background-color: #38bdf8 !important;
}

.ht-link {
  color: #0ea5e9 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
}

[data-theme=dark] .ht-link {
  color: #38bdf8 !important;
}

.book-icon-btn {
  color: #004363; /* Navy */
  transition: color 0.2s;
}

.book-icon-btn:hover {
  color: #006b9d; /* Navy tint */
}

[data-theme=dark] .book-icon-btn {
  color: #6ad4ff !important; /* Accent light blue */
}

[data-theme=dark] .book-icon-btn:hover {
  color: #9de3ff !important;
}

[data-theme=dark] .ht-theme-horizon.handsontable .changeType {
  background-color: #0f172a !important; /* Deeper dark circle */
  color: #38bdf8 !important; /* Bright blue dots for visibility */
  filter: none !important;
  border-radius: 50%;
  border: 1px solid rgba(106, 212, 255, 0.3) !important;
}

[data-theme=dark] .ht-theme-horizon.handsontable .changeType:hover {
  background-color: #1e293b !important;
  border-color: #38bdf8 !important;
}

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