﻿/* 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;
}

.topbar {
  flex: 0 0 auto;
  width: 100%;
  background-color: white;
  /* Generic nav button baseline */
  /* Icon-only variant */
  /* Back visuals (kept for compatibility if class is reused) */
  /* Home visuals (kept for compatibility) */
  /* Neutralize default focus/tap styles on interactive elements */
  /* Remove UA focus padding/border in Firefox */
  /* No grey background on interactive states */
  /* Optional: accessible focus ring without background */
}
.topbar .topbar-display {
  background-color: white;
  height: var(--topbar-h);
  display: grid;
  grid-template-columns: 1fr auto 1fr; /* left, centered logo, right */
  align-items: center;
  position: relative;
  width: 100%;
  padding-left: env(safe-area-inset-left, 0px);
  padding-right: env(safe-area-inset-right, 0px);
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
}
.topbar .topbar-display .topbar-links {
  grid-column: 1;
  display: flex;
  align-items: center;
  /* No global gap; spacing is controlled per element */
  gap: 0.3rem;
  /* Remove accidental margins from direct children */
  /* NavLink wrapper should not add extra space */
  /* Back button (generic) */
  /* Tiny space between Back and Home */
  /* Home button (icon-only link) */
  /* Generic icon base (for future icons) */
}
.topbar .topbar-display .topbar-links > * {
  margin: 0;
}
.topbar .topbar-display .topbar-links a.button-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  margin: 0;
  padding: 0;
}
.topbar .topbar-display .topbar-links .nav-btn.back {
  display: inline-flex;
  align-items: center;
  font-size: 1rem;
  font-weight: 600;
  color: #0076C0;
  background: transparent;
  border: 0;
  padding: 0;
  min-height: 32px;
  cursor: pointer;
}
.topbar .topbar-display .topbar-links .nav-btn.back .icon-back {
  -webkit-mask-image: url(/images/arrow-back.svg);
  mask-image: url(/images/arrow-back.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  width: 24px;
  height: 32px;
  background-color: currentColor;
  margin-right: 0.08rem; /* micro icon->text spacing */
}
.topbar .topbar-display .topbar-links .nav-btn.back .text {
  display: inline-block;
  line-height: 1;
  transform: translateY(-1px); /* optical align with icon */
}
.topbar .topbar-display .topbar-links .nav-btn.back {
  margin-right: 0.12rem;
}
.topbar .topbar-display .topbar-links .nav-btn.home {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  padding: 0; /* icon-only look */
  min-height: 32px;
  color: #0076C0;
  cursor: pointer;
  text-decoration: none;
}
.topbar .topbar-display .topbar-links .nav-btn.home .icon.home {
  -webkit-mask-image: url(/images/home-2.svg);
  mask-image: url(/images/home-2.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  width: 32px;
  height: 32px;
  background-color: currentColor;
  transform: translateY(-2px);
}
.topbar .topbar-display .topbar-links .icon {
  flex: 0 0 auto;
  width: 24px;
  height: 32px;
  background-color: currentColor;
}
.topbar .topbar-display .topbar-middle {
  grid-column: 2;
  justify-self: center;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 28px;
  z-index: 1;
  pointer-events: none;
  transform: translateY(-4px);
}
.topbar .topbar-display .topbar-middle img {
  height: 31px;
  width: auto;
  display: block;
  pointer-events: none;
}
.topbar .topbar-display--constrained {
  max-width: 1280px;
}
.topbar .topbar-display--full {
  max-width: 100%;
}
@media (max-width: 768px) {
  .topbar .topbar-display--constrained .topbar-middle {
    display: none !important;
  }
  .topbar .topbar-display--full .topbar-middle {
    display: flex !important;
  }
}
.topbar .nav-btn,
.topbar .menu-button-nav {
  background-image: none;
  display: inline-flex;
  align-items: center;
  line-height: 1;
}
.topbar .nav-btn.icon-only,
.topbar .menu-button-nav.icon-only {
  width: 1.875rem;
  height: 1.875rem;
  padding: 0;
}
.topbar .nav-btn.back,
.topbar .menu-button-nav.back {
  font-size: 1rem;
  font-weight: 600;
  color: #0076C0;
  padding: 0;
  min-height: 32px;
}
.topbar .nav-btn.home,
.topbar .menu-button-nav.home {
  font-size: 1rem;
  font-weight: 600;
  color: #0076C0;
  padding: 0;
  min-height: 32px;
}
@media (display-mode: standalone) {
  .topbar .nav-btn.home {
    display: inline-flex !important;
  }
}
.topbar .nav-btn,
.topbar .button-link,
.topbar .button-link .nav-btn {
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
  outline: none;
  box-shadow: none;
  -webkit-tap-highlight-color: transparent;
}
.topbar button::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.topbar .nav-btn:hover, .topbar .nav-btn:active, .topbar .nav-btn:focus, .topbar .nav-btn:focus-visible,
.topbar .button-link:hover,
.topbar .button-link:active,
.topbar .button-link:focus,
.topbar .button-link:focus-visible {
  background: transparent;
  box-shadow: none;
  outline: none;
  text-decoration: none;
}
.topbar .nav-btn.back:focus-visible,
.topbar .button-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}
