/* =====================================================
   FILE: nui-calendar.css
   VERSION: 202604082315

   SĀKUMA KOMENTĀRI:
   - ChronoForms / NUI popup kalendāra gala stils.
   - Optimizēta versija bez vizuālām izmaiņām.
   - Iztīrīta dublēšanās, sakārtoti kopīgie noteikumi,
     ieviesti lokāli CSS mainīgie vieglākai uzturēšanai.
   - Atbalsta day view un year view vienā failā.
   - Netiek mainīta JS loģika vai HTML struktūra.
===================================================== */

.nui.popup.calendar {
  --mc-cal-width-min: 262px;
  --mc-cal-width-max: 278px;
  --mc-cal-radius: 10px;
  --mc-cal-border: #cfd4dc;
  --mc-cal-grid-border: #dfe4ea;
  --mc-cal-head-border: #d9dee6;
  --mc-cal-head-bg: linear-gradient(180deg, #f8f9fb 0%, #f1f3f6 100%);
  --mc-cal-days-bg: #f3f5f7;
  --mc-cal-text: #223047;
  --mc-cal-text-soft: #4f5d73;
  --mc-cal-text-muted: #d0d5dc;
  --mc-cal-title: #1f2a37;
  --mc-cal-hover-bg: rgba(158, 27, 52, 0.22);
  --mc-cal-hover-text: #6f1224;
  --mc-cal-hover-ring: rgba(158, 27, 52, 0.22);
  --mc-cal-selected-bg: rgba(158, 27, 52, 0.84);
  --mc-cal-selected-bg-hover: rgba(138, 22, 45, 0.9);
  --mc-cal-selected-ring: rgba(122, 20, 40, 0.9);
  --mc-cal-selected-ring-hover: rgba(110, 17, 33, 0.9);
  --mc-cal-disabled-bg: #fbfbfc;
  --mc-cal-scroll-track: #f3f5f7;
  --mc-cal-scroll-thumb: #9a9a9a;
  --mc-cal-scroll-thumb-hover: #7f7f7f;
  --mc-cal-shadow:
    0 14px 30px rgba(21, 27, 38, 0.12),
    0 4px 10px rgba(21, 27, 38, 0.08);
  --mc-cal-focus: rgba(88, 98, 115, 0.30);

  min-width: var(--mc-cal-width-min) !important;
  max-width: var(--mc-cal-width-max) !important;
  padding: 0 !important;
  border: 1px solid var(--mc-cal-border) !important;
  border-radius: var(--mc-cal-radius) !important;
  background: #ffffff !important;
  box-shadow: var(--mc-cal-shadow) !important;
  overflow: hidden !important;
  z-index: 9999;
  box-sizing: border-box !important;
}

/* =========================================
   DAY VIEW TABULA
========================================= */

.nui.popup.calendar table.nui.table {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: var(--mc-cal-radius) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  table-layout: fixed !important;
  background: #ffffff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.nui.popup.calendar table.nui.table th,
.nui.popup.calendar table.nui.table td {
  font-family: var(--fs-font-menu);
  vertical-align: middle !important;
  border-color: var(--mc-cal-grid-border) !important;
  box-sizing: border-box !important;
}

/* =========================================
   HEADER AUGŠĒJĀ RINDA
========================================= */

.nui.popup.calendar thead tr:first-child th {
  padding: 0 !important;
  background: var(--mc-cal-head-bg) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mc-cal-head-border) !important;
  border-top-left-radius: var(--mc-cal-radius) !important;
  border-top-right-radius: var(--mc-cal-radius) !important;
}

.nui.popup.calendar thead tr:first-child .nui.flex {
  min-height: 34px !important;
  padding: 0 2px !important;
  gap: 0 !important;
  align-items: center !important;
}

.nui.popup.calendar .month-year {
  font-family: var(--fs-font-menu);
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  color: var(--mc-cal-title) !important;
  text-transform: uppercase;
  line-height: 1 !important;
  text-align: center !important;
}

/* =========================================
   PREV / NEXT
========================================= */

.nui.popup.calendar span.prev,
.nui.popup.calendar span.next {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #2c2f36 !important;
  cursor: pointer !important;
  transition: color 0.18s ease, transform 0.18s ease !important;
}

.nui.popup.calendar span.prev:hover,
.nui.popup.calendar span.next:hover {
  color: #9e1b34 !important;
  transform: scale(1.05) !important;
}

.nui.popup.calendar span.prev:active,
.nui.popup.calendar span.next:active {
  transform: scale(1) !important;
}

.nui.popup.calendar i.prev.icon,
.nui.popup.calendar i.next.icon {
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  font-style: normal !important;
  font-weight: 400 !important;
  color: inherit !important;
}

.nui.popup.calendar i.prev.icon:before,
.nui.popup.calendar i.next.icon:before {
  font-family: inherit !important;
  font-size: 0.9rem !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

.nui.popup.calendar i.prev.icon:before {
  content: "‹" !important;
}

.nui.popup.calendar i.next.icon:before {
  content: "›" !important;
}

/* =========================================
   DIENU NOSAUKUMI
========================================= */

.nui.popup.calendar thead tr:nth-child(2) th {
  height: 22px !important;
  padding: 0 !important;
  background: var(--mc-cal-days-bg) !important;
  color: var(--mc-cal-text-soft) !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  text-transform: capitalize;
  text-align: center !important;
  vertical-align: middle !important;
  line-height: 22px !important;
  border-top: 0 !important;
  border-bottom: 1px solid #d7dde5 !important;
}

.nui.popup.calendar thead tr:nth-child(2) th.nui.justify-center {
  justify-content: center !important;
  text-align: center !important;
}

/* =========================================
   DATUMU ŠŪNAS
========================================= */

.nui.popup.calendar tbody td {
  width: 14.285% !important;
  height: 22px !important;
  padding: 0 !important;
  background: #ffffff !important;
  color: var(--mc-cal-text) !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  text-align: center !important;
  vertical-align: middle !important;
  line-height: 22px !important;
  cursor: pointer !important;
  transition:
    background-color 0.16s ease,
    color 0.16s ease,
    box-shadow 0.16s ease !important;
}

.nui.popup.calendar tbody td.link {
  position: relative;
}

.nui.popup.calendar tbody td.link:hover {
  background: var(--mc-cal-hover-bg) !important;
  color: var(--mc-cal-hover-text) !important;
  box-shadow: inset 0 0 0 1px var(--mc-cal-hover-ring) !important;
}

.nui.popup.calendar tbody td.selected {
  background: var(--mc-cal-selected-bg) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: inset 0 0 0 1px var(--mc-cal-selected-ring) !important;
}

.nui.popup.calendar tbody td.selected:hover {
  background: var(--mc-cal-selected-bg-hover) !important;
  color: #ffffff !important;
  box-shadow: inset 0 0 0 1px var(--mc-cal-selected-ring-hover) !important;
}

.nui.popup.calendar tbody td.adjacent,
.nui.popup.calendar tbody td.disabled,
.nui.popup.calendar tbody td.adjacent.disabled {
  background: var(--mc-cal-disabled-bg) !important;
  color: var(--mc-cal-text-muted) !important;
}

.nui.popup.calendar tbody td.adjacent:hover,
.nui.popup.calendar tbody td.disabled:hover,
.nui.popup.calendar tbody td.adjacent.disabled:hover {
  background: var(--mc-cal-disabled-bg) !important;
  color: var(--mc-cal-text-muted) !important;
  box-shadow: none !important;
  cursor: default !important;
}

/* =========================================
   APAKŠĒJIE STŪRI
========================================= */

.nui.popup.calendar tbody tr:last-child td:first-child {
  border-bottom-left-radius: var(--mc-cal-radius) !important;
  background-clip: padding-box !important;
}

.nui.popup.calendar tbody tr:last-child td:last-child {
  border-bottom-right-radius: var(--mc-cal-radius) !important;
  background-clip: padding-box !important;
}

/* =========================================
   FOKUSS
========================================= */

.nui.popup.calendar span.prev:focus-visible,
.nui.popup.calendar span.next:focus-visible,
.nui.popup.calendar tbody td.link:focus-visible {
  outline: 2px solid var(--mc-cal-focus) !important;
  outline-offset: -2px !important;
}

/* =========================================
   YEAR VIEW KONTEINERS
========================================= */

.nui.popup.calendar > .nui.flex.vertical.divided {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  border-radius: var(--mc-cal-radius) !important;
  overflow: hidden !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

.nui.popup.calendar > .nui.flex.vertical.divided > .item:first-child {
  min-height: 36px !important;
  padding: 0 !important;
  background: var(--mc-cal-head-bg) !important;
  border-bottom: 1px solid var(--mc-cal-head-border) !important;
}

.nui.popup.calendar > .nui.flex.vertical.divided > .item:first-child .item {
  min-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 8px !important;
  color: var(--mc-cal-title) !important;
  font-family: var(--fs-font-menu) !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

.nui.popup.calendar > .nui.flex.vertical.divided > .item:last-child,
.nui.popup.calendar .item.nui.flex.spaced.equalitems.divided.align-center {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

.nui.popup.calendar .item.nui.flex.spaced.equalitems.divided.align-center {
  align-items: stretch !important;
  justify-content: stretch !important;
}

/* =========================================
   YEARS GRID
========================================= */

.nui.popup.calendar .years {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: 100% !important;
  max-height: 320px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
  scrollbar-width: thin;
  scrollbar-color: var(--mc-cal-scroll-thumb) var(--mc-cal-scroll-track);
}

.nui.popup.calendar .years .item {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 4px !important;
  margin: 0 !important;
  text-align: center !important;
  font-family: var(--fs-font-menu) !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  color: var(--mc-cal-text) !important;
  background: #ffffff !important;
  border-right: 1px solid var(--mc-cal-grid-border) !important;
  border-bottom: 1px solid var(--mc-cal-grid-border) !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  transition:
    background-color 0.16s ease,
    color 0.16s ease,
    box-shadow 0.16s ease !important;
}

.nui.popup.calendar .years .item:nth-child(3n) {
  border-right: 0 !important;
}

.nui.popup.calendar .years .item:hover {
  background: rgba(158, 27, 52, 0.20) !important;
  color: var(--mc-cal-hover-text) !important;
  box-shadow: inset 0 0 0 1px rgba(158, 27, 52, 0.18) !important;
}

.nui.popup.calendar .years .item.selected {
  background: var(--mc-cal-selected-bg) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: inset 0 0 0 1px var(--mc-cal-selected-ring) !important;
}

.nui.popup.calendar .years .item.selected:hover {
  background: var(--mc-cal-selected-bg-hover) !important;
  color: #ffffff !important;
}

/* =========================================
   YEAR VIEW SCROLLBAR
========================================= */

.nui.popup.calendar .years::-webkit-scrollbar {
  width: 8px;
}

.nui.popup.calendar .years::-webkit-scrollbar-track {
  background: var(--mc-cal-scroll-track);
  border-radius: 10px;
}

.nui.popup.calendar .years::-webkit-scrollbar-thumb {
  background: var(--mc-cal-scroll-thumb);
  border-radius: 10px;
}

.nui.popup.calendar .years::-webkit-scrollbar-thumb:hover {
  background: var(--mc-cal-scroll-thumb-hover);
}

/* =========================================
   MAZĀKI EKRĀNI
========================================= */

@media (max-width: 575.98px) {
  .nui.popup.calendar {
    min-width: 252px !important;
    max-width: 100% !important;
    border-radius: var(--mc-cal-radius) !important;
  }

  .nui.popup.calendar thead tr:first-child .nui.flex {
    min-height: 32px !important;
    padding: 0 2px !important;
  }

  .nui.popup.calendar .month-year {
    font-size: 0.86rem !important;
  }

  .nui.popup.calendar span.prev,
  .nui.popup.calendar span.next {
    width: 14px !important;
    min-width: 14px !important;
    height: 14px !important;
  }

  .nui.popup.calendar i.prev.icon:before,
  .nui.popup.calendar i.next.icon:before {
    font-size: 0.86rem !important;
  }

  .nui.popup.calendar thead tr:nth-child(2) th {
    height: 20px !important;
    font-size: 0.66rem !important;
    line-height: 20px !important;
  }

  .nui.popup.calendar tbody td {
    height: 21px !important;
    font-size: 0.78rem !important;
    line-height: 21px !important;
  }

  .nui.popup.calendar .years {
    max-height: 300px !important;
  }

  .nui.popup.calendar .years .item {
    min-height: 32px !important;
    font-size: 0.8rem !important;
  }
}