﻿/* inmediQ variables */
:root {
  /* Primary colours */
  --primary-color-1: #1C3968;
  --primary-color-2: #0076C0;
  --primary-color-3: #575757;
  --primary-color-4: #B6A310;
  --primary-color-1-light1: #465380;
  --primary-color-2-light1: #008DCE;
  --primary-color-3-light1: #878787;
  --primary-color-4-light1: #C5B348;
  --primary-color-1-light2: #71769B;
  --primary-color-2-light2: #6BA8DC;
  --primary-color-3-light2: #B2B2B2;
  --primary-color-4-light2: #D2C479;
  --primary-color-1-light3: #9FA0BB;
  --primary-color-2-light3: #A4C3E8;
  --primary-color-3-light3: #DADADA;
  --primary-color-4-light3: #E3D9A8;
  --primary-color-1-light4: #CECDDD;
  --primary-color-2-light4: #D3E1F4;
  --primary-color-3-light4: #EDEDED;
  --primary-color-4-light4: #F0EBD4;
  /* Secondary colours */
  --secondary-color-1: #E53B11;
  --secondary-color-2: #820B20;
  --secondary-color-3: #F39200;
  --secondary-color-4: #FECC00;
  --secondary-color-5: #009982;
  --secondary-color-6: #00567C;
  --secondary-color-1-light1: #EB6739;
  --secondary-color-2-light1: #9A373D;
  --secondary-color-3-light1: #F7A941;
  --secondary-color-4-light1: #FED633;
  --secondary-color-5-light1: #0AAB9A;
  --secondary-color-6-light1: #357996;
  --secondary-color-1-light2: #F19267;
  --secondary-color-2-light2: #B46563;
  --secondary-color-3-light2: #FAC075;
  --secondary-color-4-light2: #FEE066;
  --secondary-color-5-light2: #68C0B4;
  --secondary-color-6-light2: #6699AF;
  --secondary-color-1-light3: #F8B999;
  --secondary-color-2-light3: #CD9692;
  --secondary-color-3-light3: #FDD5A5;
  --secondary-color-4-light3: #FFEB9A;
  --secondary-color-5-light3: #A6D6CE;
  --secondary-color-6-light3: #99BBCB;
  --secondary-color-1-light4: #FCDECD;
  --secondary-color-2-light4: #E6C9C6;
  --secondary-color-3-light4: #FEEAD3;
  --secondary-color-4-light4: #FFFFC0;
  --secondary-color-5-light4: #D6E8E7;
  --secondary-color-6-light4: #CCDDE5;
  /* Limbs */
  --color-left-limb: #F39200;
  --color-right-limb: #009982;
  --color-left: #F39200;
  --color-right: #009982;
  --color-left-arm: #9A373D;
  --color-right-arm: #9A373D;
  --color-left-ankle: #0076C0;
  --color-right-ankle: #0076C0;
  --color-left-wrist: #575757;
  --color-right-wrist: #575757;
}

.subjects-page {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
}
.subjects-page .title-header-text {
  display: block;
  vertical-align: middle;
  color: #B6A310;
  padding-bottom: 0.8rem;
  font-size: 30px;
}
.subjects-page .filter-wrapper {
  width: 100%;
}
.subjects-page .filter-wrapper .filter-textbox {
  display: inline-flex;
  align-items: center;
  width: 100%;
  border: none;
  background: #E3D9A8;
  border-radius: 4px;
}
.subjects-page .filter-wrapper .filter-textbox .search-image {
  height: 16px;
  width: auto;
  padding-left: 8px;
}
@media (min-width: 992px) {
  .subjects-page .filter-wrapper .filter-textbox {
    width: 15rem;
  }
}
.subjects-page .filter-line {
  display: block;
  height: 2px;
  margin: 0.5rem 0;
  width: 100%;
  background: #D2C479;
}
.subjects-page .subjects-card-view-wrapper {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  width: 100%;
  height: auto;
}
.subjects-page .subjects-card-view-wrapper .card-view-container {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.subjects-page .subjects-card-view-wrapper .icon-only-button-wrapper {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 850;
}
.subjects-page .subjects-card-view-wrapper .icon-only-button-wrapper .icon-button {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 8px;
  border-radius: 50%;
  transition: transform 0.1s ease, filter 0.2s ease;
  -webkit-tap-highlight-color: transparent;
}
.subjects-page .subjects-card-view-wrapper .icon-only-button-wrapper .icon-button:hover .icon-button-icon {
  filter: brightness(0.85);
  transform: scale(1.1);
}
.subjects-page .subjects-card-view-wrapper .icon-only-button-wrapper .icon-button:active .icon-button-icon {
  filter: brightness(0.75);
  transform: scale(0.9);
}
.subjects-page .subjects-card-view-wrapper .icon-only-button-wrapper .icon-button:focus {
  outline: none;
}
.subjects-page .subjects-card-view-wrapper .icon-only-button-wrapper .icon-button .icon-button-icon {
  width: 48px;
  height: 48px;
  background-color: #ffffff;
  border-radius: 50%;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  pointer-events: none;
  transition: transform 0.1s ease, filter 0.2s ease;
}
.subjects-page .subjects-card-view-wrapper .tile {
  background: white;
  display: flex;
  flex-direction: column;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  padding: 8px;
  cursor: pointer;
  transition: transform 0.15s ease-in-out, box-shadow 0.15s;
  box-shadow: 0px 4px 6px -1px rgba(0, 0, 0, 0.1), 0px 2px 4px -2px rgba(0, 0, 0, 0.1);
}
.subjects-page .subjects-card-view-wrapper .tile:hover {
  transform: translateY(-2px);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.08);
}
.subjects-page .subjects-card-view-wrapper .tile.selected {
  background: rgb(242.6379310345, 238.5172413793, 219.5620689655);
  transition: border-color 0.15s ease;
}
.subjects-page .subjects-card-view-wrapper .tile.selected .personal-info img {
  filter: none;
}
.subjects-page .subjects-card-view-wrapper .tile .name {
  font-size: 14px;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 600;
}
.subjects-page .subjects-card-view-wrapper .tile .personal-info {
  display: flex;
  gap: 4px;
}
.subjects-page .subjects-card-view-wrapper .tile .personal-info .date-of-birth,
.subjects-page .subjects-card-view-wrapper .tile .personal-info .id {
  display: flex;
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-top: 2px;
}
.subjects-page .subjects-card-view-wrapper .tile .personal-info img {
  width: 16px;
  height: auto;
}
.subjects-page .subjects-card-view-wrapper .tile .personal-info .text {
  position: relative;
  top: 1px;
  padding: 0 4px;
}

.subjects-edit-drawer {
  --rd-scroll-hint-bottom: 0px;
  --subjects-more-hint-space: 36px;
  /* Keep neutral border when editor is valid (avoid green accent). */
  /* Blue focused/hovered item in DevExpress drop-down list. */
}
.subjects-edit-drawer .rd-header {
  padding: 10px 10px 10px 20px;
}
.subjects-edit-drawer .subjects-drawer-header-title {
  color: #B6A310;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.subjects-edit-drawer .right-drawer-body {
  overflow: hidden !important;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 12px 20px var(--subjects-more-hint-space) 0 !important;
}
.subjects-edit-drawer .subjects-drawer-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}
.subjects-edit-drawer .subjects-drawer-more-space {
  flex: 0 0 var(--subjects-more-hint-space);
  min-height: var(--subjects-more-hint-space);
}
.subjects-edit-drawer .subjects-drawer-content {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: visible;
  max-height: none;
  padding: 0 1.2rem 0.8rem 1.2rem;
}
.subjects-edit-drawer .subjects-drawer-form {
  min-height: 0;
}
.subjects-edit-drawer .subjects-drawer-fields {
  margin-bottom: 0.8rem;
}
.subjects-edit-drawer .subjects-input {
  width: 100%;
}
.subjects-edit-drawer .subjects-input input[type=number]::-webkit-outer-spin-button,
.subjects-edit-drawer .subjects-input input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.subjects-edit-drawer .subjects-input input[type=number] {
  -moz-appearance: textfield;
  appearance: textfield;
}
.subjects-edit-drawer .dxbl-spin-btn-inc,
.subjects-edit-drawer .dxbl-spin-btn-dec {
  display: none !important;
}
.subjects-edit-drawer .divider {
  margin: 0.55rem 0;
  height: 1px;
  width: 100%;
  background-color: #B2B2B2;
}
.subjects-edit-drawer .subjects-drawer-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  padding-top: 0;
  margin-top: 0.8rem;
  margin-bottom: 0;
}
.subjects-edit-drawer .subjects-drawer-actions .subjects-primary-actions {
  display: flex;
  align-items: flex-start;
  align-content: flex-start;
  column-gap: 0.35rem;
  row-gap: 0;
  flex-wrap: wrap;
}
.subjects-edit-drawer .subjects-drawer-actions .subjects-primary-actions .btn {
  margin: 0;
  padding-top: 0.2rem;
  padding-bottom: 0.2rem;
  line-height: 1.1;
  min-height: 0;
}
.subjects-edit-drawer .subjects-drawer-actions .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border: none;
  border-radius: 0.375rem;
  padding: 0.5rem 0.6rem;
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  background: transparent;
  color: #575757;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.subjects-edit-drawer .subjects-drawer-actions .btn:not(:disabled):hover {
  background: rgb(249.75, 249.75, 249.75);
}
.subjects-edit-drawer .subjects-drawer-actions .btn:not(:disabled):active {
  background: #0076C0;
  color: #fff;
}
.subjects-edit-drawer .subjects-drawer-actions .btn:disabled {
  opacity: 0.35;
  cursor: default;
}
.subjects-edit-drawer .subjects-drawer-actions .btn .icon {
  width: 22px;
  height: 22px;
  background-color: currentColor;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
}
.subjects-edit-drawer .subjects-drawer-actions .btn .text {
  padding-top: 0;
}
.subjects-edit-drawer .subjects-drawer-actions .save .icon {
  -webkit-mask-image: url("/images/check.svg");
  mask-image: url("/images/check.svg");
}
.subjects-edit-drawer .subjects-drawer-actions .cancel .icon {
  -webkit-mask-image: url("/images/cancel.svg");
  mask-image: url("/images/cancel.svg");
}
.subjects-edit-drawer .subjects-drawer-actions .delete {
  color: #E53B11;
}
.subjects-edit-drawer .subjects-drawer-actions .delete .icon {
  -webkit-mask-image: url("/images/delete-red.svg");
  mask-image: url("/images/delete-red.svg");
}
.subjects-edit-drawer .gender-combobox.valid,
.subjects-edit-drawer .gender-combobox.modified,
.subjects-edit-drawer .gender-combobox.modified.valid,
.subjects-edit-drawer .gender-combobox.valid.modified {
  border-color: #ced4da !important;
  box-shadow: none !important;
}
.subjects-edit-drawer .gender-combobox:focus-within,
.subjects-edit-drawer .gender-combobox.valid:focus-within,
.subjects-edit-drawer .gender-combobox.modified:focus-within,
.subjects-edit-drawer .gender-combobox.modified.valid:focus-within,
.subjects-edit-drawer .gender-combobox.valid.modified:focus-within {
  border-color: #0076C0 !important;
  box-shadow: none !important;
}
.subjects-edit-drawer .gender-dropdown .dxbl-listbox-item.dxbl-focused,
.subjects-edit-drawer .gender-dropdown .dxbl-listbox-item.dx-state-hover,
.subjects-edit-drawer .gender-dropdown .dxbl-listbox-item.dxbl-listbox-item-selected.dxbl-focused,
.subjects-edit-drawer .gender-dropdown .dxbl-listbox-item.dxbl-listbox-item-selected.dx-state-hover,
.subjects-edit-drawer .gender-dropdown .dxbs-listbox-item.dx-state-hover,
.subjects-edit-drawer .gender-dropdown .dxbs-listbox-item.dx-state-focused {
  background: #0076C0 !important;
  color: #fff !important;
}
.subjects-edit-drawer .dxbl-fl-cpt {
  white-space: normal;
}
.subjects-edit-drawer .rd-scroll-hint {
  bottom: calc((var(--subjects-more-hint-space) - 18px) / 2) !important;
}
@media (max-width: 768px) {
  .subjects-edit-drawer {
    padding-bottom: 0 !important;
    --subjects-more-hint-space: 24px;
  }
  .subjects-edit-drawer .right-drawer-body {
    padding: 12px 20px 0 0 !important;
  }
  .subjects-edit-drawer .subjects-drawer-content {
    padding: 0 1.2rem 0 1.2rem;
  }
  .subjects-edit-drawer .subjects-drawer-form > .divider {
    display: none;
  }
  .subjects-edit-drawer .subjects-drawer-actions {
    gap: 0;
    padding-bottom: 0;
    margin-top: 0.6rem;
  }
  .subjects-edit-drawer .subjects-drawer-actions .btn {
    gap: 0.25rem;
  }
}
