@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/plus-jakarta-sans-400.ttf") format("truetype");
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/plus-jakarta-sans-500.ttf") format("truetype");
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/plus-jakarta-sans-600.ttf") format("truetype");
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/plus-jakarta-sans-700.ttf") format("truetype");
}

:root {
  --page: #ffffff;
  --surface: #ffffff;
  --text: #17213a;
  --sub: #65718a;
  --muted: #9ca3af;
  --line: #e5eaf2;
  --accent: #2f6bff;
  --accent-soft: #eaf0ff;
  font-family: "Plus Jakarta Sans", "Aptos", "Calibri", Arial, sans-serif;
}

* {
  box-sizing: border-box;
}

body {
  min-width: 1024px;
  margin: 0;
  background: var(--page);
  color: var(--text);
}

button,
input,
select {
  font: inherit;
}

button {
  cursor: pointer;
}

svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.manager-shell {
  display: grid;
  min-height: 100vh;
  grid-template-columns: 224px minmax(0, 1fr);
}

.manager-sidebar {
  position: sticky;
  top: 0;
  display: flex;
  height: 100vh;
  flex-direction: column;
  background: #101c38;
  color: #fff;
  padding: 1.375rem 0.875rem;
}

.manager-brand {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0 0.5rem 1.375rem;
}

.manager-brand-logo {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 8px;
  background: var(--accent);
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: 700;
  object-fit: contain;
}

img.manager-brand-logo {
  background: #ffffff;
  padding: 0.25rem;
}

.manager-brand strong {
  font-size: 0.875rem;
}

.manager-nav {
  display: grid;
  gap: 0.75rem;
}

.manager-nav-item,
.manager-mobile-link {
  display: grid;
  min-height: 2.625rem;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 0.625rem;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #9ca3af;
  padding: 0 0.625rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-align: left;
  text-decoration: none;
}

.manager-nav-item:hover,
.manager-nav-item:focus-visible,
.manager-mobile-link:hover,
.manager-mobile-link:focus-visible {
  background: #1f2937;
  color: #fff;
}

.manager-nav-item.is-active {
  background: var(--accent);
  color: #fff;
}

.manager-nav-item svg,
.manager-mobile-link svg {
  width: 18px;
  height: 18px;
}

.manager-nav-group,
.manager-nav-items {
  display: grid;
  gap: 0.25rem;
}

.manager-nav-label,
.manager-nav-toggle {
  min-height: 1.5rem;
  padding: 0 0.625rem;
  color: #6b7280;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0;
  text-align: left;
}

.manager-nav-label {
  display: flex;
  align-items: center;
}

.manager-nav-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.manager-nav-toggle:hover,
.manager-nav-toggle:focus-visible {
  color: #d1d5db;
}

.manager-nav-toggle svg {
  width: 14px;
  height: 14px;
  transition: transform 160ms ease;
}

.manager-nav-toggle.is-open svg {
  transform: rotate(90deg);
}

.manager-nav-items[hidden] {
  display: none;
}

.manager-sidebar-bottom {
  margin-top: auto;
  display: grid;
  gap: 0.625rem;
}

.manager-zreev-footer {
  display: grid;
  gap: 0.375rem;
  border-top: 1px solid rgba(156, 163, 175, 0.22);
  padding: 0.75rem 0.625rem 0;
}

.manager-zreev-footer strong {
  color: #ffffff;
  font-size: 0.75rem;
  letter-spacing: 0;
}

.manager-zreev-footer span {
  display: flex;
  gap: 0.625rem;
}

.manager-zreev-footer a {
  color: #9ca3af;
  font-size: 0.6875rem;
  font-weight: 600;
  text-decoration: none;
}

.manager-zreev-footer a:hover,
.manager-zreev-footer a:focus-visible {
  color: #ffffff;
}

.manager-workspace {
  min-width: 0;
}

.manager-topbar {
  display: flex;
  min-height: 5.125rem;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  border-bottom: 1px solid var(--line);
  background: #fff;
  padding: 1rem 1.75rem;
}

.manager-topbar h1,
.manager-topbar p {
  margin: 0;
}

.manager-topbar h1 {
  font-size: 1.3125rem;
}

.manager-topbar p {
  margin-top: 5px;
  color: var(--sub);
  font-size: 0.75rem;
}

.manager-context {
  display: flex;
  align-items: center;
  gap: 1.375rem;
}

.manager-context > span {
  display: grid;
  gap: 0.125rem;
}

.manager-context > .manager-context-facility {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.manager-context-facility > span {
  display: grid;
  gap: 0.125rem;
}

.manager-context-logo {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 8px;
  background: var(--accent);
  color: #ffffff;
  font-size: 0.8125rem;
  font-weight: 700;
  object-fit: contain;
}

img.manager-context-logo {
  background: #f8fafc;
  padding: 0.25rem;
}

.manager-context small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.manager-context strong {
  font-size: 0.75rem;
}

.manager-user {
  display: grid !important;
  grid-template-columns: 34px auto;
  align-items: center;
  gap: 0.5rem !important;
}

.manager-user b {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 9px;
  background: var(--accent-soft);
  color: var(--accent);
  font-size: 0.75rem;
}

.manager-user span {
  display: grid;
  gap: 0.0625rem;
}

.manager-main {
  padding: 1.5rem 1.75rem 2.5rem;
}

.desktop-stack {
  display: grid;
  gap: 1.125rem;
}

.desktop-period-panel {
  display: flex;
  min-height: 3rem;
  align-items: center;
  justify-content: flex-start;
  gap: 1rem;
  border-radius: 8px;
  background: #fff;
  padding: 0.625rem 0.75rem;
}

.desktop-period-head {
  display: flex;
  min-width: auto;
  align-items: center;
}

.desktop-period-head span {
  color: var(--text);
  font-size: 0.75rem;
  font-weight: 800;
}

.desktop-period-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0.5rem;
}

.desktop-period-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-start;
}

.desktop-period-row button {
  min-height: 1.75rem;
  border: 0;
  border-radius: 999px;
  background: #f3f4f6;
  color: var(--sub);
  padding: 0 0.625rem;
  font-size: 0.6875rem;
  font-weight: 800;
  cursor: pointer;
}

.desktop-period-row button:hover {
  background: var(--accent-soft);
  color: var(--accent);
}

.desktop-period-row button.is-active {
  background: var(--accent);
  color: #fff;
}

.desktop-period-custom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0.5rem;
  margin-top: 0;
}

.desktop-period-custom label {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  color: var(--sub);
  font-size: 0.6875rem;
  font-weight: 700;
  white-space: normal;
}

.desktop-period-custom input {
  min-height: 1.75rem;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  padding: 0 0.5rem;
  font-size: 0.6875rem;
}

.desktop-period-apply {
  min-height: 1.75rem;
  border: 0;
  border-radius: 7px;
  background: var(--accent);
  color: #fff;
  padding: 0 0.75rem;
  font-size: 0.6875rem;
  font-weight: 800;
  cursor: pointer;
}

.desktop-period-apply:hover {
  background: #2f6bff;
}

.desktop-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.desktop-kpi-grid.is-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.desktop-kpi {
  display: grid;
  width: 100%;
  min-height: 7rem;
  align-content: space-between;
  border: 0;
  border-top: 3px solid var(--accent);
  border-radius: 8px;
  background: #fff;
  color: var(--text);
  padding: 0.9375rem;
  text-align: left;
}

button.desktop-kpi {
  cursor: pointer;
}

button.desktop-kpi:hover { background: #fff; }
button.desktop-kpi:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

.desktop-kpi.is-info {
  border-color: #2563eb;
}

.desktop-kpi.is-warning {
  border-color: #d97706;
}

.desktop-kpi.is-danger {
  border-color: #dc2626;
}

.desktop-kpi span,
.desktop-kpi small {
  color: var(--sub);
  font-size: 0.75rem;
}

.desktop-kpi strong {
  font-size: 1.875rem;
}

.desktop-grid-main,
.desktop-calendar-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(280px, 0.7fr);
  gap: 1rem;
}

.desktop-calendar-bottom-row {
  display: grid;
  grid-template-columns: minmax(280px, 420px) minmax(0, 1fr);
  gap: 1.25rem;
  align-items: start;
}

.desktop-day-calendar {
  align-self: start;
}

.desktop-panel {
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
}

.desktop-panel-head {
  display: flex;
  min-height: 4rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 0;
  padding: 0.75rem 1rem;
}

.desktop-panel-head h2,
.desktop-panel-head p {
  margin: 0;
}

.desktop-panel-head h2 {
  font-size: 1rem;
}

.desktop-panel-head p {
  margin-top: 4px;
  color: var(--sub);
  font-size: 0.75rem;
}

.desktop-panel-head > button,
.desktop-panel-head > span {
  border: 0;
  background: transparent;
  color: var(--accent);
  font-size: 0.75rem;
  font-weight: 700;
}

.desktop-panel-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.625rem;
  flex-wrap: wrap;
}

.desktop-panel-actions > button:not(.desktop-primary) {
  border: 0;
  background: transparent;
  color: var(--accent);
  font-size: 0.75rem;
  font-weight: 700;
}

.desktop-appointment-range {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.desktop-appointment-range label {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  color: var(--sub);
  font-size: 0.6875rem;
  font-weight: 700;
}

.desktop-appointment-range input {
  width: 130px;
  min-height: 2rem;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  padding: 0 0.5625rem;
  font-size: 0.75rem;
  font-weight: 700;
}

.desktop-appointment-range .desktop-secondary {
  min-height: 2rem;
}

.desktop-table {
  min-width: 0;
}

.desktop-table-head,
.desktop-table-row {
  display: grid;
  align-items: center;
  gap: 0.875rem;
  padding: 0.625rem 1rem;
}

.desktop-table-head {
  min-height: 2.375rem;
  background: #f8fafc;
  color: var(--sub);
  font-size: 0.6875rem;
  font-weight: 600;
}

.desktop-table-row {
  width: 100%;
  min-height: 3.625rem;
  border: 0;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  background: #fff;
  color: var(--text);
  font-size: 0.75rem;
  text-align: left;
}



.desktop-table-row.is-selected {
  background: var(--accent-soft);
}

.desktop-table-row > span {
  min-width: 0;
}

.desktop-table-row strong {
  display: block;
  overflow: visible;
  font-size: 0.75rem;
  text-overflow: clip;
  white-space: normal;
}

.desktop-table-row small {
  display: block;
  margin-top: 3px;
  overflow: visible;
  color: var(--sub);
  font-size: 0.6875rem;
  text-overflow: clip;
  white-space: normal;
}

.desktop-appointment-grid {
  grid-template-columns: 110px minmax(140px, 1.2fr) minmax(150px, 1.3fr) minmax(130px, 1fr) 92px;
}

.desktop-service-grid {
  grid-template-columns: minmax(260px, 1.5fr) 110px minmax(240px, 1.2fr) 110px;
}

.desktop-service-main {
  display: grid;
  min-width: 0;
  gap: 0.25rem;
}

.desktop-service-title-line {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.5rem;
}

.desktop-service-title-line strong {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}

.desktop-service-title-line .badge {
  flex: 0 0 auto;
}

.desktop-service-money {
  font-weight: 700;
}

.desktop-services-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}

.desktop-service-editor {
  position: static;
}

.desktop-payment-grid {
  grid-template-columns: 100px minmax(130px, 1fr) 100px 100px 90px;
}

.desktop-patient-detail-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.desktop-patients-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}

.desktop-patients-layout.has-detail {
  grid-template-columns: minmax(0, 1.7fr) minmax(320px, 0.7fr);
}

.desktop-patient-grid {
  grid-template-columns: minmax(180px, 1.3fr) minmax(140px, 1fr) 100px minmax(160px, 1.1fr) 120px;
}

.desktop-patient-detail {
  display: grid;
  gap: 0;
  overflow: hidden;
}

.desktop-patient-contact,
.desktop-patient-stats {
  display: grid;
  gap: 0.0625rem;
  background: var(--line);
  border-top: 0;
}

.desktop-patient-contact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.desktop-patient-stats {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.desktop-patient-contact > span,
.desktop-patient-stats > span {
  display: grid;
  min-width: 0;
  gap: 0.25rem;
  background: #ffffff;
  padding: 0.8125rem 0.9375rem;
}

.desktop-patient-contact small,
.desktop-patient-stats small {
  color: var(--sub);
  font-size: 0.625rem;
}

.desktop-patient-contact strong,
.desktop-patient-stats strong {
  overflow: hidden;
  color: var(--text);
  font-size: 0.75rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.desktop-patient-history {
  display: grid;
  padding-top: 0.5rem;
}

.desktop-patient-history h3 {
  margin: 0;
  padding: 0.5rem 0.9375rem;
  font-size: 0.75rem;
}

.desktop-patient-history > button {
  display: flex;
  min-height: 3.375rem;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  border: 0;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  background: #ffffff;
  padding: 0.5625rem 0.9375rem;
  color: var(--text);
  text-align: left;
}

.desktop-patient-history > button:hover,
.desktop-patient-history > button:focus-visible {
  background: var(--accent-soft);
}

.desktop-patient-history > button span:first-child {
  display: grid;
  gap: 0.1875rem;
}

.desktop-patient-history > button strong {
  font-size: 0.75rem;
}

.desktop-patient-history > button small {
  color: var(--sub);
  font-size: 0.625rem;
}

.desktop-billing-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.65fr);
  gap: 1rem;
}

.desktop-billing-card {
  display: grid;
  align-content: start;
}

.desktop-billing-price,
.desktop-billing-total {
  display: flex;
  min-height: 5.5rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.125rem 1rem;
}

.desktop-billing-price span,
.desktop-billing-total span {
  color: var(--sub);
  font-size: 0.75rem;
}

.desktop-billing-price strong,
.desktop-billing-total strong {
  color: var(--accent);
  font-size: 1.875rem;
}

.desktop-limit-list {
  display: grid;
  border-top: 1px solid var(--line);
}

.desktop-limit-row {
  display: grid;
  gap: 0.5rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.75rem 1rem;
}

.desktop-limit-row:first-child {
  border-top: 0;
}

.desktop-limit-row span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.desktop-limit-row strong {
  font-size: 0.75rem;
}

.desktop-limit-row small {
  color: var(--sub);
  font-size: 0.75rem;
  font-weight: 700;
}

.desktop-limit-row progress {
  width: 100%;
  overflow: hidden;
  height: 7px;
  border: 0;
  border-radius: 999px;
  background: #e5e7eb;
  appearance: none;
}

.desktop-limit-row progress::-webkit-progress-bar {
  border-radius: inherit;
  background: #e5e7eb;
}

.desktop-limit-row progress::-webkit-progress-value,
.desktop-limit-row progress::-moz-progress-bar {
  border-radius: inherit;
  background: var(--accent);
}

.desktop-billing-note {
  display: grid;
  gap: 0.375rem;
  border-top: 0;
  padding: 0.875rem 1rem;
}

.desktop-billing-note strong {
  font-size: 0.75rem;
}

.desktop-billing-note span {
  color: var(--sub);
  font-size: 0.75rem;
  line-height: 1.45;
}

.desktop-billing-row {
  grid-template-columns: minmax(220px, 1.4fr) 80px 120px 110px;
}

.desktop-invoice-list {
  display: grid;
}

.desktop-invoice-list article {
  display: grid;
  min-height: 4.25rem;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.75rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.75rem 1rem;
}

.desktop-invoice-list strong {
  display: block;
  font-size: 0.75rem;
}

.desktop-invoice-list small {
  display: block;
  margin-top: 4px;
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-badge {
  display: inline-flex;
  width: fit-content;
  min-height: 1.25rem;
  align-items: center;
  border-radius: 999px;
  padding: 0 0.5rem;
  font-size: 0.6875rem;
  font-weight: 700;
  white-space: normal;
}

button.desktop-badge {
  border: 0;
  cursor: pointer;
}

.desktop-badge.is-success {
  background: #dcfce7;
  color: #166534;
}

.desktop-badge.is-warning {
  background: #fef3c7;
  color: #92400e;
}

.desktop-badge.is-danger {
  background: #fee2e2;
  color: #991b1b;
}

.desktop-badge.is-neutral {
  background: #f3f4f6;
  color: #4b5563;
}

.desktop-badge.is-info {
  background: #e0f2fe;
  color: #075985;
}

.desktop-badge.is-muted {
  background: #f1f5f9;
  color: #64748b;
}

.desktop-alert-list {
  display: grid;
}

.desktop-alert-list button {
  display: grid;
  min-height: 4.5rem;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 0.625rem;
  border: 0;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  background: #fff;
  color: var(--text);
  padding: 0.75rem 1rem;
  text-align: left;
}

.desktop-alert-list button:hover {
  background: transparent;
}

.desktop-alert-list button > strong {
  display: grid;
  width: 40px;
  min-height: 2.5rem;
  height: auto;
  place-items: center;
  border-radius: 10px;
  background: var(--accent-soft);
  color: var(--accent);
  font-size: 1.0625rem;
}

.desktop-alert-list span {
  display: grid;
  gap: 0.1875rem;
}

.desktop-alert-list b {
  font-size: 0.8125rem;
}

.desktop-alert-list small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-toolbar {
  display: flex;
  min-height: 3.5rem;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  border-radius: 8px;
  background: #fff;
  padding: 0.625rem 0.75rem;
}

.desktop-calendar-toolbar {
  min-height: 3rem;
  justify-content: flex-start;
  gap: 0.625rem;
}

.desktop-calendar-toolbar label {
  flex: 0 0 auto;
}

.desktop-toolbar > div:first-child {
  display: grid;
  gap: 0.125rem;
}

.desktop-toolbar > div:first-child strong {
  font-size: 0.8125rem;
}

.desktop-toolbar > div:first-child small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-toolbar label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--sub);
  font-size: 0.75rem;
  font-weight: 600;
}

.desktop-toolbar input,
.desktop-form input,
.desktop-form select,
.desktop-form textarea,
.desktop-resource-form input:not([type="checkbox"]),
.desktop-resource-form select {
  min-height: 2.25rem;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  padding: 0 0.625rem;
  font-size: 0.75rem;
}

.desktop-form textarea {
  min-height: 4.625rem;
  resize: vertical;
  padding: 0.5625rem 0.625rem;
  font-family: inherit;
  line-height: 1.4;
}

.desktop-access-options {
  display: grid;
  gap: 0.625rem;
}

.desktop-access-options > strong {
  color: var(--text);
  font-size: 0.75rem;
}

.desktop-access-options-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
}

.desktop-form-grid label.desktop-access-option {
  display: flex;
  min-height: 2.625rem;
  align-items: center;
  gap: 0.5625rem;
  border-radius: 7px;
  background: #f3f4f6;
  padding: 0 0.75rem;
  color: var(--text);
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
}

.desktop-access-option input {
  width: 17px;
  min-height: 1.0625rem;
  height: auto;
  min-height: 0;
  flex: 0 0 auto;
  accent-color: var(--accent);
}

@media (max-width: 980px) {
  .desktop-access-options-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.desktop-primary,
.desktop-secondary,
.desktop-danger {
  display: inline-flex;
  min-height: 2.25rem;
  align-items: center;
  justify-content: center;
  gap: 0.4375rem;
  border: 0;
  border-radius: 7px;
  padding: 0 0.8125rem;
  font-size: 0.75rem;
  font-weight: 700;
  white-space: normal;
}

.desktop-primary {
  background: var(--accent);
  color: #fff;
}

.desktop-secondary {
  background: #f3f4f6;
  color: var(--text);
}

.desktop-danger {
  background: #fee2e2;
  color: #991b1b;
}

.desktop-primary svg {
  width: 15px;
  height: 15px;
}

.desktop-day-list,
.desktop-slot-list {
  display: grid;
}

.desktop-day-list button,
.desktop-slot-list article {
  display: grid;
  min-height: 3.875rem;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.625rem;
  border: 0;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  background: #fff;
  color: var(--text);
  padding: 0.625rem 1rem;
  text-align: left;
}

.desktop-day-list button:hover {
  background: var(--accent-soft);
}

.desktop-day-list time,
.desktop-slot-list time {
  color: var(--accent);
  font-size: 0.875rem;
  font-weight: 700;
}

.desktop-calendar-free-slots .desktop-slot-list time {
  color: #111827;
  font-weight: 600;
}

.desktop-calendar-free-slots .desktop-slot-add {
  min-height: 2.25rem;
  border: 1px solid #2f6bff;
  border-radius: 10px;
  background: #fff;
  color: #2f6bff;
  padding: 0 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
}

.desktop-calendar-free-slots .desktop-slot-add:hover,
.desktop-calendar-free-slots .desktop-slot-add:focus-visible {
  background: #eaf1ff;
}

.desktop-day-list span,
.desktop-slot-list span {
  display: grid;
  gap: 0.1875rem;
}

.desktop-day-list strong,
.desktop-slot-list strong {
  font-size: 0.75rem;
}

.desktop-day-list small,
.desktop-slot-list small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-segments {
  display: flex !important;
  gap: 0.375rem !important;
}

.desktop-segments button {
  min-height: 2rem;
  border: 0;
  border-radius: 999px;
  background: #f3f4f6;
  color: var(--sub);
  padding: 0 0.75rem;
  font-size: 0.6875rem;
  font-weight: 600;
}

.desktop-segments button.is-active {
  background: var(--accent);
  color: #fff;
}

.desktop-appointments-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}

.desktop-appointments-layout.has-detail {
  grid-template-columns: minmax(0, 1fr);
}

.desktop-appointment-calendar {
  align-self: start;
}

.desktop-calendar-nav {
  display: flex;
  gap: 0.375rem;
}

.desktop-calendar-nav button {
  display: grid;
  width: 30px;
  min-height: 1.875rem;
  height: auto;
  place-items: center;
  border: 0;
  border-radius: 8px;
  background: #f3f4f6;
  color: var(--text);
  font-size: 1.0625rem;
  font-weight: 800;
}

.desktop-appointment-calendar-weekdays,
.desktop-appointment-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 0.375rem;
  padding: 0 0.875rem;
}

.desktop-appointment-calendar-weekdays {
  padding-top: 0.75rem;
  color: var(--sub);
  font-size: 0.625rem;
  font-weight: 700;
  text-align: center;
}

.desktop-appointment-calendar-grid {
  padding-bottom: 0.875rem;
  padding-top: 0.5rem;
}

.desktop-appointment-calendar-grid > span,
.desktop-appointment-calendar-grid button {
  min-height: 2.125rem;
}

.desktop-appointment-calendar-grid button {
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--sub);
  padding: 0.1875rem;
  font-size: 0.6875rem;
  font-weight: 700;
}

.desktop-appointment-calendar-grid button:hover,
.desktop-appointment-calendar-grid button:focus-visible {
  background: #f3f4f6;
}

.desktop-appointment-calendar-grid button.has-items {
  background: var(--accent-soft);
  color: var(--text);
}

.desktop-appointment-calendar-grid button.is-range {
  background: #e0f2fe;
  color: var(--accent);
}

.desktop-appointment-calendar-grid button.is-active {
  background: var(--accent);
  color: #fff;
}

.desktop-appointment-calendar-grid button small {
  display: grid;
  min-width: 15px;
  min-height: 0.9375rem;
  height: auto;
  place-items: center;
  border-radius: 999px;
  background: #fff;
  color: var(--accent);
  font-size: 0.5625rem;
  line-height: 1;
}

.desktop-appointment-calendar-grid button.is-active small {
  background: rgba(255, 255, 255, 0.22);
  color: #fff;
}

.desktop-detail {
  align-self: start;
}

.desktop-detail dl {
  margin: 0;
}

.desktop-detail dl > div {
  display: grid;
  gap: 0.1875rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.6875rem 1rem;
}

.desktop-detail dt {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-detail dd {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 600;
}

.desktop-detail-actions {
  display: grid;
  gap: 0.625rem;
  padding: 0.875rem 1rem 1rem;
}

.desktop-detail-actions .desktop-primary,
.desktop-detail-actions .desktop-danger {
  width: 100%;
}

.desktop-change-request-list {
  display: grid;
}

.desktop-change-request-row {
  display: flex;
  min-height: 4rem;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 0.75rem 1rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
}

.desktop-change-request-row > span {
  display: grid;
  min-width: 0;
  gap: 0.25rem;
}

.desktop-change-request-row strong {
  font-size: 0.8125rem;
}

.desktop-change-request-row small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-change-request-row > div {
  display: flex;
  flex: 0 0 auto;
  gap: 0.5rem;
}

.desktop-form {
  overflow: visible;
  padding-bottom: 0.875rem;
}

.desktop-form:has(.desktop-payment-variant-dropdown[open]) {
  padding-bottom: 8.25rem;
}

.desktop-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  padding: 0.875rem 1rem;
}

.desktop-field-hint,
.desktop-field-error {
  display: block;
  min-height: 1rem;
  margin-top: 4px;
  font-size: 0.6875rem;
  line-height: 1.35;
}

.desktop-field-hint {
  color: var(--sub);
}

.desktop-field-error {
  color: #b42318;
}

.desktop-form-grid input[aria-invalid="true"] {
  border-color: #d92d20;
}

.desktop-form-grid label {
  display: grid;
  gap: 0.375rem;
  color: var(--sub);
  font-size: 0.6875rem;
  font-weight: 600;
}

.desktop-form-grid label.is-wide {
  grid-column: 1 / -1;
}

.qualification-type-list {
  display: grid;
  gap: 1rem;
  margin-top: 20px;
}

.qualification-type-card {
  border: 1px solid var(--line, #dfe5e2);
  border-radius: 16px;
  padding: 1.125rem;
}

.qualification-capabilities {
  display: grid;
  gap: 0.625rem;
  margin-top: 16px;
}

.qualification-capabilities > strong {
  font-size: 0.875rem;
}

.desktop-service-form-grid {
  grid-template-columns: minmax(130px, 0.8fr) minmax(130px, 0.8fr) minmax(220px, 1.3fr);
  align-items: start;
}

.desktop-service-form-grid .desktop-service-field-name {
  grid-column: span 2;
}

.desktop-service-form-grid .desktop-service-field-description {
  grid-column: 1 / -1;
}

.desktop-service-form-grid.is-new-service .desktop-service-field-name {
  grid-column: 1 / -1;
}

.desktop-service-form-grid .desktop-service-field-problem {
  grid-column: span 2;
}

.desktop-service-form-grid .desktop-payment-variants {
  grid-column: auto;
}

.desktop-payment-variants {
  display: grid;
  grid-column: 1 / -1;
  gap: 0.375rem;
  color: var(--sub);
  font-size: 0.6875rem;
  font-weight: 600;
}

.desktop-payment-variants > span {
  display: block;
}

.desktop-payment-variant-dropdown {
  position: relative;
}

.desktop-payment-variant-dropdown summary {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  min-height: 2.25rem;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  cursor: pointer;
  list-style: none;
  padding: 0 1.875rem 0 0.625rem;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2.125rem;
}

.desktop-payment-variant-dropdown summary::-webkit-details-marker {
  display: none;
}

.desktop-payment-variant-dropdown summary::after {
  position: absolute;
  right: 10px;
  top: 50%;
  color: var(--sub);
  content: "";
  width: 7px;
  height: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-65%) rotate(45deg);
  pointer-events: none;
}

.desktop-payment-variant-dropdown[open] summary::after {
  transform: translateY(-35%) rotate(225deg);
}

.desktop-payment-variant-dropdown[open] summary {
  border-color: #94a3b8;
}

.desktop-payment-variant-dropdown > div {
  position: absolute;
  z-index: 20;
  top: calc(100% + 4px);
  right: 0;
  left: 0;
  display: grid;
  gap: 0.25rem;
  border: 1px solid #dbe4ef;
  border-radius: 7px;
  background: #fff;
  padding: 0.375rem;
  box-shadow: none;
}

.desktop-payment-variant-option {
  display: flex !important;
  min-height: 2.125rem;
  align-items: center;
  gap: 0.5rem !important;
  border-radius: 7px;
  background: transparent;
  padding: 0 0.5rem;
  color: var(--text) !important;
  font-size: 0.75rem !important;
}

.desktop-payment-variant-option:hover {
  background: #f1f5f9;
}

.desktop-payment-variant-option input {
  width: 16px;
  min-height: 1rem;
  height: auto;
  min-height: 0;
  border: 0;
  padding: 0;
  accent-color: var(--accent);
}

.desktop-logo-editor {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 0.875rem;
  align-items: center;
  padding: 0.875rem 1rem 0;
}

.desktop-logo-preview {
  display: grid;
  width: 112px;
  height: 70px;
  place-items: center;
  overflow: hidden;
  border-radius: 8px;
  background: #f8fafc;
}

.desktop-logo-preview img {
  display: block;
  max-width: 96px;
  max-height: 48px;
  object-fit: contain;
}

.desktop-logo-preview span {
  color: var(--sub);
  font-size: 0.75rem;
  font-weight: 700;
}

.desktop-logo-editor > div:last-child {
  display: grid;
  justify-items: start;
  gap: 0.375rem;
}

.desktop-logo-editor strong {
  font-size: 0.8125rem;
}

.desktop-logo-editor small {
  color: var(--sub);
  font-size: 0.6875rem;
  line-height: 1.4;
}

.desktop-file-button {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  border-radius: 7px;
  background: #f3f4f6;
  color: var(--text);
  padding: 0 0.75rem;
  font-size: 0.75rem;
  font-weight: 700;
  cursor: pointer;
}

.desktop-file-button input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.desktop-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  padding: 0 1rem;
}

.desktop-resource-editor .desktop-form-actions {
  justify-content: flex-end;
  padding-top: 0.25rem;
}

.desktop-resource-editor .desktop-form-actions .desktop-primary {
  min-width: 112px;
}

.desktop-form-note {
  margin: 0 16px 14px;
  color: var(--sub);
  font-size: 0.6875rem;
  line-height: 1.5;
}

.desktop-facility-visibility {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  margin: 0 16px 14px;
  border-top: 0;
  padding: 0.875rem 0 0;
}

.desktop-facility-visibility > div {
  display: grid;
  min-width: 0;
  gap: 0.25rem;
}

.desktop-facility-visibility strong {
  display: block;
  font-size: 0.75rem;
}

.desktop-facility-visibility small {
  display: block;
  color: var(--sub);
  font-size: 0.75rem;
  line-height: 1.45;
}

.desktop-setting-switch {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5625rem;
  min-width: 170px;
  color: var(--text);
  font-size: 0.75rem;
  font-weight: 800;
  cursor: pointer;
}

.desktop-setting-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.desktop-setting-switch > span {
  position: relative;
  width: 38px;
  height: 22px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #d1d5db;
  transition: 140ms ease;
}

.desktop-setting-switch b {
  line-height: 1.2;
  white-space: nowrap;
}

.desktop-setting-switch i {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  transition: 140ms ease;
}

.desktop-setting-switch input:checked + span {
  background: var(--accent);
}

.desktop-setting-switch input:checked + span i {
  transform: translateX(16px);
}

.desktop-setting-switch input:focus-visible + span {
  outline: 2px solid #99f6e4;
  outline-offset: 2px;
}

.desktop-resource-grid,
.desktop-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.desktop-settings-wide {
  grid-column: 1 / -1;
  grid-row: 2;
}

.desktop-notification-rules,
.desktop-notification-history {
  display: grid;
}

.desktop-notification-group-title {
  margin: 0;
  border-top: 0;
  background: #f8fafc;
  color: var(--text);
  padding: 0.6875rem 1rem;
  font-size: 0.75rem;
  font-weight: 700;
}

.desktop-notification-group-title:first-child {
  border-top: 0;
}

.desktop-notification-filters {
  display: grid;
  grid-template-columns: repeat(5, minmax(130px, 1fr));
  gap: 0.75rem;
  border-bottom: 1px solid var(--line);
  padding: 0.75rem 1rem;
}

.desktop-notification-filters label {
  display: grid;
  gap: 0.3125rem;
  color: var(--sub);
  font-size: 0.65625rem;
  font-weight: 600;
}

.desktop-notification-filters select,
.desktop-notification-filters input {
  min-height: 2.125rem;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #ffffff;
  color: var(--text);
  padding: 0 0.5625rem;
  font: inherit;
}

.desktop-notification-history-row,
.desktop-notification-sms {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.875rem;
  border-top: 0;
  padding: 0.8125rem 1rem;
}

.desktop-notification-rule:first-child,
.desktop-notification-history-row:first-child {
  border-top: 0;
}

.desktop-notification-rule > span,
.desktop-notification-sms > span,
.desktop-notification-history-row > span {
  display: grid;
  gap: 0.1875rem;
}

.desktop-notification-rule strong,
.desktop-notification-sms strong,
.desktop-notification-history-row strong {
  color: var(--text);
  font-size: 0.75rem;
}

.desktop-notification-rule small,
.desktop-notification-sms small,
.desktop-notification-history-row small,
.desktop-notification-history-row time {
  color: var(--sub);
  font-size: 0.65625rem;
}

.desktop-notification-rule {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.75rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.6875rem 1rem;
}

.desktop-notification-rule:first-child {
  border-top: 0;
}

.desktop-notification-rule-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  align-items: center;
  gap: 0.875rem;
  cursor: pointer;
}

.desktop-notification-rule-main > span {
  display: grid;
  gap: 0.375rem;
}

.desktop-notification-rule-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.375rem 1rem;
  color: var(--sub);
  font-size: 0.65625rem;
}

.desktop-notification-rule-meta b,
.desktop-notification-history-row small b {
  color: var(--text);
  font-weight: 700;
}

.desktop-notification-rule-meta em {
  border-radius: 999px;
  background: #fef3c7;
  color: #92400e;
  padding: 0.1875rem 0.4375rem;
  font-size: 0.59375rem;
  font-style: normal;
  font-weight: 700;
}

.desktop-notification-history-row small i {
  padding-inline: 0.25rem;
  font-style: normal;
}

.desktop-notification-rule-main input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.desktop-notification-rule-main i {
  position: relative;
  width: 34px;
  height: 20px;
  border-radius: 999px;
  background: #cbd5e1;
}

.desktop-notification-rule-main i::after {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #ffffff;
  content: "";
  transition: transform 160ms ease;
}

.desktop-notification-rule-main input:checked + i {
  background: var(--accent);
}

.desktop-notification-rule-main input:checked + i::after {
  transform: translateX(14px);
}

.desktop-notification-rule-main.is-locked {
  cursor: default;
}

.desktop-notification-rule-main.is-locked i {
  opacity: 0.65;
}

.desktop-notification-preview-button {
  border: 0;
  background: transparent;
  color: var(--accent);
  padding: 0.4375rem 0.125rem;
  font-size: 0.6875rem;
  font-weight: 700;
  cursor: pointer;
  white-space: normal;
}

.desktop-notification-email-preview {
  grid-column: 1 / -1;
  display: grid;
  gap: 0.625rem;
  border-top: 0;
  padding-top: 0.75rem;
}

.desktop-notification-email-preview > span {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: start;
  gap: 0.625rem;
}

.desktop-notification-email-preview b,
.desktop-notification-email-preview small {
  color: var(--sub);
  font-size: 0.65625rem;
}

.desktop-notification-email-preview strong,
.desktop-notification-email-preview p {
  color: var(--text);
  font-size: 0.71875rem;
  line-height: 1.45;
  margin: 0;
}

.desktop-notification-sms {
  border-bottom: 0;
}

.desktop-notifications-screen .desktop-form-actions {
  align-items: center;
  padding: 0.75rem 1rem 1rem;
}

.desktop-notification-history-row {
  grid-template-columns: minmax(0, 1fr) 150px auto;
}

.desktop-qr-intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr);
  gap: 1rem;
  align-items: stretch;
}

.desktop-referral-qr-body {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 1.25rem;
  align-items: center;
  padding: 1.125rem;
}

.desktop-referral-qr-code {
  display: grid;
  width: 220px;
  height: 220px;
  place-items: center;
  border-radius: 14px;
  background: #f8fafc;
}

.desktop-referral-qr-code > svg {
  display: none;
}

.desktop-referral-qr-code img {
  display: block;
  width: 190px;
  height: 190px;
  border-radius: 8px;
  background: #ffffff;
}

.desktop-referral-qr-copy {
  display: grid;
  justify-items: start;
  gap: 0.625rem;
}

.desktop-referral-qr-copy strong {
  font-size: 1rem;
}

.desktop-referral-qr-copy span {
  max-width: 560px;
  color: var(--sub);
  font-size: 0.75rem;
  line-height: 1.45;
}

.desktop-referral-qr-copy small {
  max-width: 100%;
  overflow-wrap: anywhere;
  color: var(--text);
  font-size: 0.75rem;
}

.desktop-qr-report-head {
  align-items: center;
}

.desktop-qr-report-head .desktop-segments {
  margin-left: auto;
}

.desktop-qr-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.625rem;
  border-bottom: 0;
  padding: 0.875rem 1rem;
}

.desktop-qr-kpis article {
  display: flex;
  min-height: 2.875rem;
  align-items: center;
  justify-content: space-between;
  gap: 0.625rem;
  border-radius: 8px;
  background: #f8fafc;
  padding: 0.625rem 0.75rem;
}

.desktop-qr-kpis span,
.desktop-qr-kpis small {
  color: var(--sub);
  font-size: 0.75rem;
}

.desktop-qr-kpis strong {
  color: var(--text);
  font-size: 1.125rem;
  line-height: 1;
  white-space: nowrap;
}

.desktop-qr-kpis small {
  display: none;
}

.desktop-qr-layout {
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, 0.55fr);
}

.desktop-qr-grid {
  grid-template-columns: minmax(210px, 1.5fr) minmax(150px, 1fr) 80px 92px 110px 82px 92px;
}

.desktop-qr-source {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.625rem;
}

.desktop-qr-source svg {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: var(--accent-soft);
  color: var(--accent);
  padding: 0.375rem;
}

.desktop-qr-source > span {
  min-width: 0;
}

.desktop-qr-help-list {
  display: grid;
}

.desktop-qr-help-list article {
  display: grid;
  min-height: 4.625rem;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 0.625rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.75rem 1rem;
}

.desktop-qr-help-list strong {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 999px;
  background: var(--accent-soft);
  color: var(--accent);
  font-size: 0.75rem;
}

.desktop-qr-help-list span {
  color: var(--text);
  font-size: 0.75rem;
  line-height: 1.45;
}

.desktop-qr-conversion {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  border-top: 0;
  padding: 1rem;
}

.desktop-qr-conversion span {
  color: var(--sub);
  font-size: 0.75rem;
}

.desktop-qr-conversion strong {
  color: var(--accent);
  font-size: 1.5rem;
}

.desktop-resource-list,
.desktop-refund-list {
  display: grid;
}

.desktop-resource-form {
  display: grid;
  gap: 0.75rem;
  border-top: 0;
  background: #f8fafc;
  padding-bottom: 0.875rem;
}

/* Pending team invitations use their own layout inside the resources panel. */
.desktop-resource-invitations { border-bottom: 0; background: #f6f8fc; }
.desktop-resource-invitations h3 { margin: 0; padding: 0.875rem 1rem; color: #111827; font-size: 0.875rem; font-weight: 700; }
.desktop-invitation-list { display: grid; gap: 0.0625rem; background: #e5eaf2; }
.desktop-invitation-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 0.5rem 1rem; min-height: 4.75rem; padding: 0.75rem 1rem; background: #fff; }
.desktop-invitation-person { display: grid; min-width: 0; gap: 0.25rem; }
.desktop-invitation-person strong { color: #111827; font-size: 0.8125rem; font-weight: 700; }
.desktop-invitation-person small { overflow-wrap: anywhere; color: #667085; font-size: 0.75rem; }
.desktop-invitation-status { grid-column: 1; color: #92400e; font-size: 0.75rem; }
.desktop-invitation-cancel { grid-column: 2; grid-row: 1 / 3; align-self: center; border: 0; background: transparent; color: #2f6bff; padding: 0.5rem 0; font-size: 0.75rem; font-weight: 700; white-space: nowrap; }
.desktop-invitation-cancel:hover { text-decoration: underline; }
.desktop-invitation-cancel:focus-visible { outline: 2px solid #2f6bff; outline-offset: 2px; border-radius: 4px; }
@media (max-width: 640px) { .desktop-invitation-row { grid-template-columns: minmax(0, 1fr); } .desktop-invitation-cancel { grid-column: 1; grid-row: auto; justify-self: start; } }

.desktop-resource-service-picker {
  display: grid;
  gap: 0.5rem;
  margin: 0 16px;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
}

.desktop-resource-service-picker > strong {
  padding: 0.75rem 0.875rem 0;
  font-size: 0.75rem;
}

.desktop-resource-note {
  margin: 0 16px;
  border: 1px solid #cce5f7;
  border-radius: 7px;
  background: #f0f9ff;
  color: var(--sub);
  padding: 0.6875rem 0.875rem;
  font-size: 0.6875rem;
}

.desktop-stations {
  display: grid;
  gap: 0;
  margin: 0 16px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.desktop-stations-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 0.875rem;
}

.desktop-stations-head > div {
  display: grid;
  gap: 0.1875rem;
}

.desktop-stations-head strong,
.desktop-station-row strong {
  font-size: 0.75rem;
}

.desktop-stations-head small,
.desktop-station-row small,
.desktop-stations-state {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-stations-state {
  margin: 0;
  border-top: 0;
  padding: 0.875rem;
}

.desktop-stations-state.is-error {
  color: #b91c1c;
}

.desktop-station-list {
  display: grid;
}

.desktop-station-columns,
.desktop-station-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(260px, 1.6fr) 120px 72px;
  column-gap: 1.25rem;
}

.desktop-station-columns {
  border-top: 1px solid var(--line);
  background: #f8fafc;
  color: var(--sub);
  padding: 0.5rem 0.875rem;
  font-size: 0.625rem;
  font-weight: 700;
}

.desktop-station-row {
  align-items: center;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.75rem 0.875rem;
}

.desktop-station-identity {
  display: grid;
  gap: 0.1875rem;
  min-width: 0;
}

.desktop-station-capabilities {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--text);
  font-size: 0.6875rem;
  line-height: 1.4;
}

.desktop-station-status,
.desktop-station-row-actions {
  display: flex;
  align-items: center;
}

.desktop-station-row-actions {
  justify-content: flex-end;
}

.desktop-link-button {
  border: 0;
  background: transparent;
  color: var(--accent);
  padding: 0.375rem 0 0.375rem 0.5rem;
  font-size: 0.6875rem;
  font-weight: 700;
  cursor: pointer;
}

.desktop-station-form {
  display: grid;
  gap: 1rem;
  border-top: 0;
  background: #f8fafc;
  padding: 1rem 0.875rem;
}

.desktop-station-form label,
.desktop-station-data-grid label {
  display: grid;
  gap: 0.375rem;
  color: var(--sub);
  font-size: 0.625rem;
  font-weight: 700;
}

.desktop-station-data-grid label > input,
.desktop-station-data-grid label > select,
.desktop-station-service-search input {
  min-width: 0;
  min-height: 2.25rem;
  height: auto;
  border: 1px solid var(--line-strong);
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  padding: 0 0.625rem;
  font: inherit;
}

.desktop-station-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}

.desktop-station-data,
.desktop-station-rules {
  display: grid;
  gap: 0.625rem;
}

.desktop-station-data h3,
.desktop-station-rules h3 {
  margin: 0;
  color: var(--text);
  font-size: 0.75rem;
}

.desktop-station-data-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 160px;
  gap: 0.625rem;
}

.desktop-station-rules {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 0.75rem 0.875rem;
}

.desktop-station-rules p,
.desktop-station-rules small {
  margin: 0;
  color: var(--sub);
  font-size: 0.6875rem;
  line-height: 1.45;
}

.desktop-station-services {
  display: grid;
  grid-column: 1 / -1;
  gap: 0.5rem;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.desktop-station-services-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 0.875rem 0.375rem;
}

.desktop-station-services-head > span {
  display: grid;
  gap: 0.1875rem;
}

.desktop-station-services-head strong {
  color: var(--text);
  font-size: 0.75rem;
}

.desktop-station-services-head small,
.desktop-station-capabilities {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-station-services-head b {
  flex: 0 0 auto;
  color: var(--accent);
  font-size: 0.6875rem;
}

.desktop-station-service-search {
  padding: 0 0.875rem 0.375rem;
}

.desktop-station-service-search > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.desktop-station-services .schedule-service-row {
  cursor: pointer;
  transition: background-color 120ms ease, box-shadow 120ms ease;
}

.desktop-station-services .schedule-service-row:hover {
  background: #f8fafc;
}

.desktop-station-services .schedule-service-row:has(input:checked) {
  background: #eff6ff;
  box-shadow: inset 3px 0 0 var(--accent);
}

.desktop-station-service-warning {
  display: grid;
  gap: 0.1875rem;
  border-top: 0;
  background: #fff7ed;
  color: #9a3412;
  padding: 0.625rem 0.875rem;
  font-size: 0.6875rem;
}

.desktop-station-service-warning strong {
  font-size: 0.6875rem;
}

.desktop-station-service-warning[hidden],
[data-station-service-option][hidden] {
  display: none;
}

.desktop-resource-service-picker .schedule-service-row:first-child {
  border-top: 0;
}

.desktop-resource-list article,
.desktop-resource-list > .desktop-resource-row,
.desktop-refund-list article {
  display: grid;
  width: 100%;
  min-height: 4.25rem;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.625rem;
  border: 0;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  background: #fff;
  color: var(--text);
  padding: 0.625rem 1rem;
  text-align: left;
}

.desktop-resource-list > .desktop-resource-row {
  cursor: pointer;
}

.desktop-resource-list > .desktop-resource-row:hover,
.desktop-resource-list > .desktop-resource-row.is-selected {
  background: #f8fafc;
}

.desktop-refund-list article {
  grid-template-columns: minmax(0, 1fr) auto;
}

.desktop-resource-list article > span:nth-child(2),
.desktop-resource-list > .desktop-resource-row > span:nth-child(2),
.desktop-refund-list article > span:first-child {
  display: grid;
  gap: 0.1875rem;
}

.desktop-resource-list strong,
.desktop-refund-list strong {
  font-size: 0.75rem;
}

.desktop-resource-list small,
.desktop-refund-list small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-avatar,
.desktop-room-icon {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 9px;
  background: var(--accent-soft);
  color: var(--accent);
  font-size: 0.6875rem;
  font-weight: 700;
  overflow: hidden;
}

.desktop-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.desktop-avatar.is-large {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: 12px;
}

.desktop-specialist-avatar-editor {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.desktop-specialist-avatar-editor label {
  display: grid;
  flex: 1;
  gap: 0.3125rem;
}

.desktop-specialist-avatar-editor label small {
  color: var(--sub);
  font-size: 0.625rem;
  font-weight: 400;
}

.desktop-specialist-avatar-editor input[type="file"] {
  padding: 0.375rem 0.5rem;
}

.desktop-room-icon svg {
  width: 17px;
  height: 17px;
}

.desktop-refund-list button {
  border: 0;
  border-radius: 7px;
  background: var(--accent);
  color: #fff;
  padding: 0.5rem 0.625rem;
  font-size: 0.6875rem;
  font-weight: 700;
}

.desktop-empty {
  color: var(--sub);
  padding: 1.375rem 1rem;
  font-size: 0.75rem;
}

.schedule-toolbar {
  justify-content: flex-start;
}

.schedule-toolbar select {
  min-width: 240px;
  min-height: 2.25rem;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  padding: 0 0.625rem;
  font-size: 0.75rem;
}

.schedule-toolbar > span {
  display: grid;
  gap: 0.1875rem;
  margin-left: auto;
  text-align: right;
}

.schedule-toolbar > span strong {
  font-size: 0.8125rem;
}

.schedule-toolbar > span small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.schedule-panel {
  padding-bottom: 0.875rem;
}

.schedule-week {
  display: grid;
  padding: 0 1rem;
}

.manager-facility-hours { grid-column: 1 / -1; margin: 0; padding: 0; border: 0; min-width: 0; }
.manager-facility-hours .schedule-day-toggle { display: flex; align-items: center; flex-direction: row; }
.manager-facility-hours legend { margin-bottom: 12px; font-size: 1rem; }
.manager-facility-hours-existing { white-space: pre-line; font-size: 0.875rem; }
.manager-facility-hours .schedule-day { grid-template-columns: minmax(150px, 1fr) repeat(2, minmax(0, 160px)); min-height: 4.25rem; }
.manager-facility-hours .schedule-day label:not(.schedule-day-toggle) { font-size: 0.875rem; }
.manager-facility-hours .schedule-day input[type="time"] { font-size: 0.875rem; }
@media (max-width: 600px) {
  .manager-facility-hours .schedule-day { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0.75rem 0; }
  .manager-facility-hours .schedule-day-toggle { grid-column: 1 / -1; }
}

.schedule-day {
  display: grid;
  min-height: 3.625rem;
  grid-template-columns: minmax(180px, 1fr) 140px 140px;
  align-items: center;
  gap: 0.875rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
}

.schedule-day:first-child {
  border-top: 0;
}

.schedule-day label:not(.schedule-day-toggle) {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--sub);
  font-size: 0.6875rem;
  font-weight: 600;
}

.schedule-day input[type="time"] {
  width: 100%;
  min-height: 2.125rem;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  padding: 0 0.5rem;
  font-size: 0.75rem;
}

.schedule-day input[type="time"]:disabled {
  border-color: transparent;
  background: #f3f4f6;
  color: var(--muted);
}

.schedule-day-toggle {
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 0.625rem;
  cursor: pointer;
}

.schedule-day-toggle input {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 38px;
  height: 22px;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.schedule-day-toggle > span {
  position: relative;
  width: 38px;
  height: 22px;
  border-radius: 999px;
  background: #d1d5db;
  transition: 140ms ease;
}

.schedule-day-toggle i {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  transition: 140ms ease;
}

.schedule-day-toggle input:checked + span {
  background: var(--accent);
}

.schedule-day-toggle input:checked + span i {
  transform: translateX(16px);
}

.schedule-day-toggle input:focus-visible + span {
  outline: 2px solid #99f6e4;
  outline-offset: 2px;
}

.schedule-day-toggle strong {
  font-size: 0.75rem;
}

.schedule-actions {
  padding-top: 0.875rem;
}

.desktop-schedule-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.schedule-service-list {
  display: grid;
}

.schedule-service-row {
  display: grid;
  min-height: 3.625rem;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.625rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.625rem 1rem;
}

.schedule-service-row input {
  width: 16px;
  min-height: 1rem;
  height: auto;
  accent-color: var(--accent);
}

.schedule-service-row > span {
  display: grid;
  gap: 0.1875rem;
}

.schedule-service-row strong {
  font-size: 0.75rem;
}

.schedule-service-row small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.schedule-overrides {
  display: grid;
  gap: 0;
  margin-top: 16px;
  border-top: 0;
}

.schedule-overrides h3 {
  margin: 14px 0 4px;
  font-size: 0.75rem;
}

.schedule-override-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.75rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.625rem 0;
}

.schedule-override-row:first-of-type {
  border-top: 0;
}

.schedule-override-row span {
  display: grid;
  gap: 0.1875rem;
}

.schedule-override-row strong {
  font-size: 0.75rem;
}

.schedule-override-row small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.schedule-override-row .desktop-danger {
  min-height: 2rem;
}

.schedule-publish {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px 130px auto;
  align-items: end;
  gap: 0.875rem;
  padding: 1rem;
}

.schedule-publish h2,
.schedule-publish p {
  margin: 0;
}

.schedule-publish h2 {
  font-size: 1rem;
}

.schedule-publish p {
  margin-top: 4px;
  color: var(--sub);
  font-size: 0.6875rem;
}

.schedule-publish label {
  display: grid;
  gap: 0.375rem;
  color: var(--sub);
  font-size: 0.6875rem;
  font-weight: 600;
}

.schedule-publish input,
.schedule-publish select {
  min-height: 2.25rem;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  padding: 0 0.5625rem;
  font-size: 0.75rem;
}

.schedule-collisions > div:last-child {
  display: grid;
}

.schedule-collisions article {
  display: grid;
  gap: 0.1875rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.625rem 1rem;
}

.schedule-collisions strong {
  font-size: 0.75rem;
}

.schedule-collisions small {
  color: var(--sub);
  font-size: 0.6875rem;
}

.manager-toast {
  position: fixed;
  top: 18px;
  left: 50%;
  z-index: 100;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  padding: 0.6875rem 1rem;
  font-size: 0.75rem;
  font-weight: 600;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -12px);
  transition: 150ms ease;
}

.manager-toast.is-visible {
  opacity: 1;
  transform: translate(-50%, 0);
}

.desktop-contact-list { display: grid; padding: 0 1.25rem 0.5rem; }
.desktop-contact-head { padding: 1rem 1.25rem; }
.desktop-contact-head p { margin: 0; color: var(--muted); font-size: 0.875rem; line-height: 1.5; }
.desktop-contact-row {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) minmax(170px, 1fr) 160px minmax(280px, 1.6fr);
  align-items: center;
  gap: 1.25rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--z-row-separator, #f1f3f5);
  background: #fff;
}
.desktop-contact-row:last-child { border-bottom: 0; }
.desktop-contact-person { display: flex; min-width: 0; align-items: center; gap: 0.75rem; }
.desktop-contact-person > span:last-child,
.desktop-contact-proposal { display: grid; min-width: 0; gap: 0.375rem; }
.desktop-contact-avatar {
  display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center;
  border-radius: 50%; background: #eaf0ff; color: var(--accent);
}
.desktop-contact-avatar svg,
.desktop-contact-call svg {
  width: 16px; height: 16px; flex-shrink: 0; fill: none; stroke: currentColor;
  stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8;
}
.desktop-contact-person strong,
.desktop-contact-proposal strong { color: var(--text); font-size: 0.875rem; line-height: 1.5; overflow-wrap: anywhere; }
.desktop-contact-row small { color: var(--muted); font-size: 0.75rem; line-height: 1.5; }
.desktop-contact-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 0.5rem; }
.desktop-contact-call { display: inline-flex; align-items: center; gap: 0.5rem; color: var(--accent); font-size: 0.8125rem; font-weight: 600; text-decoration: none; overflow-wrap: anywhere; }
.desktop-contact-row button {
  min-height: 2.25rem; border: 1px solid var(--accent); border-radius: 8px; padding: 0.5rem 0.75rem;
  background: #fff; color: var(--accent); font: inherit; font-size: 0.75rem; font-weight: 600; line-height: 1.4; cursor: pointer;
}
.desktop-contact-row .desktop-contact-primary { background: var(--accent); color: #fff; }
.desktop-contact-row .desktop-contact-secondary.is-danger { background: #fff; border-color: #b42318; color: #b42318; }
.desktop-contact-row button:hover { filter: brightness(.97); }
.desktop-contact-row button:focus-visible,
.desktop-contact-call:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@media (max-width: 1250px) {
  .desktop-contact-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem 1.5rem; }
  .desktop-contact-phone { padding-left: 3rem; }
}
@media (max-width: 640px) {
  .desktop-contact-list { padding: 0 1rem 0.5rem; }
  .desktop-contact-head { padding: 1rem; }
  .desktop-contact-row { grid-template-columns: minmax(0, 1fr); }
  .desktop-contact-proposal, .desktop-contact-phone { padding-left: 3rem; }
  .desktop-contact-actions { justify-content: flex-start; }
}

@media (max-width: 1180px) {
  .manager-shell {
    grid-template-columns: 190px minmax(0, 1fr);
  }

  .desktop-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .desktop-grid-main,
  .desktop-calendar-layout,
  .desktop-day-calendar-layout,
  .desktop-schedule-grid,
  .desktop-billing-grid,
  .desktop-appointments-layout,
  .desktop-appointments-layout.has-detail {
    grid-template-columns: 1fr;
  }

  .desktop-station-form {
    grid-template-columns: 1fr;
  }

  .schedule-publish {
    grid-template-columns: minmax(0, 1fr) 160px 120px;
  }

  .schedule-publish .desktop-primary {
    grid-column: 1 / -1;
    justify-self: end;
  }
}

/* Manager dashboard: blue/Jakarta visual language from the current Zreev flows. */
.desktop-dashboard {
  gap: 1.25rem;
}

.desktop-dashboard .desktop-period-panel,
.desktop-dashboard .desktop-kpi,
.desktop-dashboard .desktop-panel {
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 8px 30px rgba(27, 54, 105, 0.035);
}

.desktop-dashboard .desktop-kpi {
  min-height: 7.875rem;
  border-top-width: 3px;
  padding: 1.125rem 1.25rem;
}

.desktop-dashboard .desktop-kpi strong {
  font-size: 1.75rem;
  letter-spacing: -0.03em;
}

.desktop-dashboard .desktop-kpi small {
  line-height: 1.4;
}

.desktop-dashboard .desktop-panel-head {
  min-height: 4.5rem;
  padding: 1rem 1.25rem;
}

.desktop-dashboard .desktop-panel-head h2 {
  font-size: 1rem;
  letter-spacing: -0.02em;
}

.desktop-dashboard .desktop-table-head,
.desktop-dashboard .desktop-table-row {
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}

.desktop-dashboard-rows {
  max-height: min(640px, 70vh);
  overflow-y: auto;
}

.desktop-dashboard-cell {
  display: block;
  min-width: 0;
  width: 100%;
  padding: 0.25rem 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
}

.desktop-dashboard-cell:hover strong,
.desktop-dashboard-cell:focus-visible strong {
  color: var(--accent);
  text-decoration: underline;
}

.desktop-dashboard-cell:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
  border-radius: 3px;
}



@media (max-width: 1250px) {
  .desktop-dashboard .desktop-grid-main {
    grid-template-columns: minmax(0, 1fr);
  }

  .desktop-dashboard .desktop-appointment-grid {
    grid-template-columns: 88px minmax(120px, 1.2fr) minmax(130px, 1.3fr) minmax(115px, 1fr) 92px;
    gap: 0.625rem;
  }
}

/* Manager calendar: daily schedule, availability and patient day plan. */
.desktop-calendar {
  gap: 1rem;
}

.desktop-calendar .desktop-panel,
.desktop-calendar .desktop-calendar-toolbar,
.desktop-calendar .desktop-calendar-groups {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 30px rgba(27, 54, 105, 0.035);
}

.desktop-calendar .desktop-calendar-toolbar {
  justify-content: space-between;
  padding: 0.75rem 1rem;
}

.desktop-calendar-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}

.desktop-calendar-toolbar-actions > button:first-child,
.desktop-calendar-toolbar-actions > button:nth-child(3) {
  width: 36px;
  padding: 0;
  font-size: 1.1875rem;
}

.desktop-calendar-toolbar-actions input {
  min-width: 143px;
}

.desktop-calendar .desktop-appointment-calendar-grid button.is-active {
  background: var(--accent);
  color: #fff;
}

.desktop-calendar .desktop-appointment-calendar-grid button.is-active small {
  background: rgba(255,255,255,0.22);
  color: #fff;
}

.desktop-calendar .desktop-day-list,
.desktop-calendar .desktop-slot-list {
  max-height: min(660px, 70vh);
  overflow-y: auto;
}

.desktop-calendar .desktop-day-list .desktop-calendar-appointment {
  display: grid;
  min-height: 4.625rem;
  grid-template-columns: minmax(0, 1fr) minmax(100px, .65fr) auto;
  align-items: center;
  gap: 0.75rem;
  border-top: 1px solid var(--z-row-separator, #f1f3f5);
  padding: 0.625rem 1rem;
}

.desktop-calendar .desktop-calendar-appointment:hover {
  background: #f8faff;
}

.desktop-calendar .desktop-calendar-appointment > button {
  display: block;
  min-width: 0;
  min-height: 0;
  border: 0;
  background: transparent;
  color: var(--text);
  padding: 0;
  text-align: left;
}

.desktop-calendar .desktop-calendar-visit-link {
  display: grid !important;
  grid-template-columns: 94px minmax(0,1fr);
  align-items: center;
  gap: 0.5rem;
}

.desktop-calendar .desktop-calendar-visit-link time {
  white-space: nowrap;
}

.desktop-calendar .desktop-calendar-visit-link span {
  display: grid;
  gap: 0.1875rem;
  min-width: 0;
}

.desktop-calendar .desktop-calendar-patient-link {
  color: var(--accent) !important;
  font-size: 0.6875rem;
  font-weight: 700;
}

.desktop-calendar .desktop-calendar-appointment > button:hover,
.desktop-calendar .desktop-calendar-appointment > button:focus-visible,
.desktop-calendar-timeline button:hover,
.desktop-calendar-timeline button:focus-visible {
  color: var(--accent);
  text-decoration: underline;
  outline-offset: 3px;
}

.desktop-calendar-groups {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
}

.desktop-calendar .desktop-calendar-day-plan .desktop-calendar-groups {
  border: 0;
  border-top: 1px solid #e5eaf2;
  border-radius: 0;
  box-shadow: none;
}

.desktop-calendar-groups > span {
  color: var(--sub);
  font-size: 0.75rem;
  font-weight: 600;
}

.desktop-calendar-groups button {
  border: 1px solid #d9e4ff;
  border-radius: 999px;
  background: #f5f8ff;
  color: var(--accent);
  padding: 0.4375rem 0.75rem;
  font-size: 0.6875rem;
  font-weight: 700;
}

.desktop-calendar-groups button.is-active {
  background: var(--accent);
  color: #fff;
}

.desktop-calendar-patient-plan .desktop-panel-head {
  padding: 1rem 1.25rem;
}

.desktop-calendar-patient-table { overflow-x: auto; }

.desktop-calendar-patient-grid {
  grid-template-columns: 110px minmax(180px, 1.4fr) minmax(155px, 1fr) minmax(110px, .8fr) minmax(125px, .8fr);
  min-width: 800px;
  gap: 0.75rem;
}

.desktop-calendar-patient-table .desktop-table-head {
  min-height: 2.75rem;
  border-top: 1px solid #e5eaf2;
  background: #fff;
  color: #6b7280;
  font-size: 0.75rem;
  font-weight: 500;
  padding: 0.625rem 1.25rem;
}

.desktop-calendar-timeline {
  margin: 0;
  padding: 0;
  list-style: none;
}

.desktop-calendar-timeline li { border-top: 1px solid var(--z-row-separator, #f1f3f5); }

/* A panel header owns the separator; the content beneath it starts without another border. */
.desktop-calendar-patient-plan .desktop-calendar-patient-table .desktop-table-head,
.desktop-calendar-free-slots .desktop-slot-list > article:first-child,
.desktop-calendar .desktop-day-list > button:first-child,
.desktop-dashboard .manager-dashboard-attention .desktop-alert-list > button:first-child {
  border-top: 0;
}

.desktop-calendar-timeline button {
  display: grid;
  width: 100%;
  min-height: 4rem;
  align-items: center;
  border: 0;
  background: #fff;
  color: #111827;
  padding: 0.75rem 1.25rem;
  text-align: left;
  font-size: 0.8125rem;
  cursor: pointer;
}

.desktop-calendar-timeline button:hover,
.desktop-calendar-timeline button:focus-visible {
  background: #f8faff;
  text-decoration: none;
}

.desktop-calendar-timeline button > :is(strong, span) { min-width: 0; }
.desktop-calendar-timeline time { font-weight: 600; white-space: nowrap; }
.desktop-calendar-timeline strong { font-size: 0.875rem; font-weight: 600; }
.desktop-calendar-timeline .desktop-badge { justify-self: start; }

.desktop-calendar-collision {
  margin: 0 20px 20px;
  border-radius: 8px;
  padding: 0.75rem 0.875rem;
  font-size: 0.75rem;
}

.desktop-calendar-collision.is-clear {
  background: #f6f8fc;
  color: #6b7280;
}

.desktop-calendar-collision.is-warning {
  background: #fff4e8;
  color: #92400e;
}

@media (max-width: 1100px) {
  .desktop-calendar .desktop-calendar-bottom-row {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Manager visits: patient links, status filters and rescheduling. */
.desktop-visits .desktop-toolbar,
.desktop-visits .desktop-panel {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 30px rgba(27, 54, 105, 0.035);
}

.desktop-visits .desktop-toolbar {
  justify-content: space-between;
  padding: 0.75rem 1rem;
}

.desktop-visits .desktop-visit-attention {
  border: 1px solid #e9b4f0;
  border-radius: 8px;
  background: #fff;
  color: #a21caf;
  padding: 0.5rem 0.75rem;
  font-size: 0.6875rem;
  font-weight: 700;
}

.desktop-visits .desktop-table-row {
  padding: 0.75rem 1rem;
}

.desktop-visit-row-link,
.desktop-visit-patient {
  display: block;
  min-width: 0;
  width: 100%;
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0.1875rem 0;
  text-align: left;
  font-weight: 700;
}

.desktop-visit-row-link:hover,
.desktop-visit-row-link:focus-visible,
.desktop-visit-patient:hover,
.desktop-visit-patient:focus-visible {
  color: var(--accent);
  text-decoration: underline;
  outline-offset: 3px;
}

.desktop-visit-row-link.is-patient,
.desktop-visit-patient {
  color: var(--accent);
}



.desktop-visits .desktop-contact-visit {
  background: #fff;
  color: var(--accent);
}

.desktop-visits .desktop-contact-primary {
  background: var(--accent);
}

.desktop-reschedule {
  display: grid;
  gap: 0.75rem;
  border-top: 0;
  padding: 1rem;
}

.desktop-reschedule h3,
.desktop-reschedule p {
  margin: 0;
}

.desktop-reschedule h3 {
  font-size: 0.875rem;
}

.desktop-reschedule p,
.desktop-reschedule label {
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-reschedule label {
  display: grid;
  gap: 0.375rem;
  font-weight: 700;
}

.desktop-reschedule input,
.desktop-reschedule select {
  width: 100%;
  min-height: 2.25rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--text);
  padding: 0.4375rem 0.5625rem;
  font-size: 0.75rem;
}

.desktop-reschedule > div {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

.desktop-reschedule-empty {
  color: #92400e !important;
}

@media (max-width: 1180px) {
  .desktop-visits .desktop-appointments-layout,
  .desktop-visits .desktop-appointments-layout.has-detail {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Manager patients: facility roster and patient card. */
.desktop-patients .desktop-patient-roster-head { flex-wrap: wrap; }
.desktop-patient-switch {
  position: relative;
  display: grid;
  width: 218px;
  min-height: 2.375rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  flex: 0 1 218px;
  border: 1px solid #e5eaf2;
  border-radius: 999px;
  background: #f3f6fb;
  padding: 0.1875rem;
}
.desktop-patient-switch::before {
  position: absolute;
  top: 3px;
  bottom: 3px;
  left: 3px;
  width: calc((100% - 6px) / 2);
  border-radius: 999px;
  background: #2f6bff;
  content: "";
  transition: transform 160ms ease;
}
.desktop-patient-switch[data-selected="archived"]::before { transform: translateX(100%); }
.desktop-patient-switch button {
  position: relative;
  z-index: 1;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #4b5563;
  font: inherit;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
}
.desktop-patient-switch button.is-active { color: #fff; }
.desktop-patient-switch button:focus-visible { outline: 2px solid #111827; outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
  .desktop-patient-switch::before { transition: none; }
}

.desktop-patients .desktop-kpi-grid { gap: 1rem; }
.desktop-patients .desktop-kpi {
  min-height: 7rem;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  box-shadow: none;
  padding: 1rem 1.125rem;
}
.desktop-patients .desktop-kpi:is(.is-success, .is-info, .is-warning, .is-danger) { border-color: #e5eaf2; }
.desktop-patients .desktop-kpi span { color: #6b7280; font-size: 0.75rem; font-weight: 400; }
.desktop-patients .desktop-kpi strong { color: #111827; font-size: 1.625rem; font-weight: 700; line-height: 1.15; letter-spacing: 0; }
.desktop-patients .desktop-kpi small { color: #6b7280; font-size: 0.75rem; font-weight: 400; }

.desktop-patients .desktop-panel {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 30px rgba(27, 54, 105, 0.035);
}

.desktop-patients .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

.desktop-patients .desktop-patient-grid {
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1.35fr) minmax(0, .65fr) minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, .8fr);
}

.desktop-patient-list-link {
  display: inline-block;
  max-width: 100%;
  border: 0;
  background: transparent;
  color: #2f6bff;
  padding: 0;
  text-align: left;
  font: inherit;
  cursor: pointer;
}
.desktop-patient-list-link strong { color: inherit; }
.desktop-patient-list-link:hover { text-decoration: underline; }
.desktop-patient-list-link:focus-visible { border-radius: 2px; outline: 2px solid #2f6bff; outline-offset: 3px; }
.desktop-patient-visit-circle {
  display: inline-grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border: 0;
  border-radius: 999px;
  background: #eaf1ff;
  color: #2f6bff;
  padding: 0;
  font-family: "Plus Jakarta Sans", sans-serif;
  cursor: pointer;
}
.desktop-patient-visit-circle > span {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  background: transparent;
  font-size: 0.75rem;
  font-weight: 500;
}
.desktop-patient-visit-circle:hover { background: #dce8ff; }
.desktop-patient-visit-circle:focus-visible { outline: 2px solid #111827; outline-offset: 2px; }

.desktop-patient-pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-patients-layout {
  gap: 1rem;
}

.desktop-patient-card {
  overflow: hidden;
}

.desktop-patient-tabs {
  display: flex;
  gap: 1.5rem;
  border-bottom: 0;
  padding: 0 1.25rem;
}

.desktop-patient-tabs button {
  min-height: 2.625rem;
  border: 0;
  border-bottom: 2px solid transparent;
  background: #fff;
  color: var(--sub);
  font-size: 0.75rem;
  font-weight: 700;
}

.desktop-patient-tabs button.is-active {
  border-color: var(--accent);
  color: var(--accent);
}

.desktop-patient-card-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.0625rem;
  background: var(--line);
}

.desktop-patient-card-metrics > span {
  display: grid;
  gap: 0.4375rem;
  background: #fff;
  padding: 1rem 1.25rem;
}

.desktop-patient-card-metrics small {
  color: var(--sub);
  font-size: 0.625rem;
}

.desktop-patient-card-metrics strong {
  color: var(--text);
  font-size: 1.125rem;
}

.desktop-patient-card-body,
.desktop-patient-therapy {
  display: grid;
  gap: 1rem;
  padding: 1.25rem;
}

.desktop-patient-info,
.desktop-patient-plan-preview,
.desktop-patient-therapy-plan {
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 1.125rem 1.25rem;
}

.desktop-patient-info h3,
.desktop-patient-plan-preview h3,
.desktop-patient-visits h3,
.desktop-patient-therapy-plan h3 {
  margin: 0 0 14px;
  font-size: 0.8125rem;
}

.desktop-patient-info dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.125rem;
  margin: 0;
}

.desktop-patient-info dt {
  color: var(--sub);
  font-size: 0.625rem;
}

.desktop-patient-info dd {
  overflow-wrap: anywhere;
  margin: 5px 0 0;
  font-size: 0.75rem;
  font-weight: 700;
}

.desktop-patient-plan-preview {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}

.desktop-patient-plan-preview strong {
  font-size: 0.8125rem;
}

.desktop-patient-plan-preview p {
  margin: 6px 0 0;
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-patient-plan-preview > div:last-child {
  display: grid;
  min-width: 240px;
  gap: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 700;
}

.desktop-patients progress {
  display: block;
  width: 100%;
  height: 7px;
  overflow: hidden;
  border: 0;
  border-radius: 999px;
  background: var(--line);
  accent-color: var(--accent);
}

.desktop-patients progress::-webkit-progress-bar { background: var(--line); }
.desktop-patients progress::-webkit-progress-value { background: var(--accent); }
.desktop-patients progress::-moz-progress-bar { background: var(--accent); }

.desktop-patient-visits {
  padding: 1.125rem 1.25rem 1.375rem;
}

.desktop-patient-visit-grid {
  grid-template-columns: 145px minmax(170px, 1.3fr) minmax(140px, 1fr) 120px 110px;
}

.desktop-patient-series-grid {
  grid-template-columns: minmax(180px, 1.7fr) repeat(4, 90px) 140px;
}

.desktop-patient-visit-grid > button,
.desktop-patient-series-grid > button {
  border: 0;
  background: transparent;
  color: var(--accent);
  font-size: 0.6875rem;
  font-weight: 700;
  text-align: left;
}

.desktop-patient-therapy-plan header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 12px;
}

.desktop-patient-therapy-plan header span,
.desktop-patient-therapy-plan header small {
  color: var(--sub);
  font-size: 0.625rem;
}

.desktop-patient-therapy-plan header h3 { margin: 5px 0; }
.desktop-patient-therapy-plan header strong { font-size: 0.875rem; }

.desktop-patient-plan-counts {
  display: flex;
  gap: 0.75rem;
  margin: 18px 0;
}

.desktop-patient-plan-counts span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  min-width: 150px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0.75rem;
  color: var(--sub);
  font-size: 0.6875rem;
}

.desktop-patient-plan-counts strong { color: var(--text); font-size: 1rem; }

@media (max-width: 1300px) {

  .desktop-patient-card-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* The desktop Manager uses the Specialist shell dimensions and controls. */
:root {
  --page: #f8fafc;
  --text: #111827;
  --sub: #6b7280;
  --line: #e5e7eb;
  --accent-soft: #eaf1ff;
}

.manager-shell { grid-template-columns: 248px minmax(0, 1fr); }
.manager-sidebar {
  border-right: 1px solid #24314d;
  padding: 1.1875rem 1rem;
  background: #101c38;
  color: #fff;
  overflow-y: auto;
}
.manager-brand {
  display: block;
  width: 100px;
  height: 19px;
  margin: 0 0 50px;
  padding: 0;
  color: #fff;
  line-height: 1.1875rem;
}
.manager-brand strong { font-size: 1.375rem; line-height: 1.1875rem; letter-spacing: -1.5px; }
.manager-brand-dot { color: #6c9aff; }
.manager-nav, .manager-nav-group, .manager-nav-items { display: grid; gap: 0.375rem; }
.manager-nav-label { display: none; }
.manager-nav-toggle {
  min-height: 2.5rem;
  border-radius: 10px;
  color: #eef2ff;
  padding: 0.625rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
}
.manager-nav-toggle:hover, .manager-nav-toggle:focus-visible { background: #243453; color: #fff; }
.manager-nav-item {
  display: flex;
  min-height: 2.5rem;
  align-items: center;
  border-radius: 10px;
  padding: 0.625rem 0.75rem;
  background: transparent;
  color: #eef2ff;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
}
.manager-nav-item svg { display: none; }
.manager-nav-item:hover, .manager-nav-item:focus-visible { background: #243453; color: #fff; }
.manager-nav-item.is-active { background: #eef4ff; color: #2f6bff; }
.manager-nav-item.is-active:hover { background: #eef4ff; color: #2f6bff; }
.manager-topbar {
  min-height: 4.5rem;
  padding: 0 2.5rem;
  border-bottom: 1px solid #e6e9ef;
}
.manager-context { gap: 0.75rem; }
.manager-role-switcher {
  display: flex !important;
  min-width: 118px;
  min-height: 2.5rem;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 0 0.75rem;
  color: #111827;
  font-size: 0.8125rem;
  font-weight: 600;
}
.manager-notification-bell {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
  color: #111827;
}
.manager-notification-bell svg { width: 22px; height: 22px; }
.manager-user {
  display: grid !important;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 50%;
  background: #eaf1ff;
  color: #2f6bff;
  font-size: 0.875rem;
  font-weight: 700;
}
.manager-main { width: min(1192px, 100%); margin: 0 auto; padding: 2rem 2.5rem; }
.desktop-panel, .desktop-kpi { border-color: #e5eaf2; border-radius: 12px; background: #fff; box-shadow: none; }
.desktop-panel-head h2 { font-size: 1.125rem; }

@media (max-width: 1180px) {
  .manager-shell { grid-template-columns: 248px minmax(0, 1fr); }
}

/* Specialist visual language for Manager data, statuses and payment states. */
.desktop-badge {
  min-height: 1.75rem;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #fff;
  color: #111827;
  padding: 0.3125rem 0.6875rem;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1rem;
}
.desktop-badge.is-success, .desktop-badge.is-neutral {
  border-color: #cbd5e1;
  background: #fff;
  color: #111827;
}
.desktop-badge.is-info { border-color: #b8ccff; background: #fff; color: #2f6bff; }
.desktop-badge.is-warning { border-color: #f1d099; background: #fff; color: #92400e; }
.desktop-badge.is-outcome-pending { border-color: #e9b4f0; background: #fff; color: #a21caf; }
.desktop-badge.is-danger { border-color: #fecaca; background: #fff; color: #b42318; }
.desktop-badge.is-muted { border-color: #d7dfea; background: #fff; color: #6b7280; }
.desktop-table-head { background: #fff; color: #6b7280; font-size: 0.75rem; font-weight: 500; }
.desktop-table-row { font-size: 0.8125rem; }
.desktop-table-row strong { font-size: 0.875rem; font-weight: 600; }
.desktop-table-row small { font-size: 0.75rem; }

/* The Manager dashboard keeps the facility overview structure. */
.desktop-dashboard { gap: 1.25rem; }
.manager-facility-context { display: grid; gap: 0.125rem; color: #111827; }
.manager-facility-context span { color: #6b7280; font-size: 0.6875rem; line-height: 1.3; }
.manager-facility-context strong { font-size: 0.875rem; font-weight: 600; line-height: 1.4; }
.desktop-dashboard .desktop-period-panel,
.desktop-visits .desktop-period-panel {
  min-height: 3.5rem;
  flex-wrap: wrap;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  padding: 0.625rem 1rem;
}
:is(.desktop-dashboard, .desktop-visits) .desktop-period-head span { color: #111827; font-size: 0.8125rem; font-weight: 700; }
:is(.desktop-dashboard, .desktop-visits) .desktop-period-row button { background: #f3f6fb; color: #4b5563; font-size: 0.75rem; font-weight: 600; }
:is(.desktop-dashboard, .desktop-visits) .desktop-period-row button.is-active { background: #2f6bff; color: #fff; }
:is(.desktop-dashboard, .desktop-visits) .desktop-period-custom label { font-size: 0.75rem; font-weight: 500; }
:is(.desktop-dashboard, .desktop-visits) .desktop-period-custom input { min-height: 2rem; font-size: 0.75rem; }
:is(.desktop-dashboard, .desktop-visits) .desktop-period-apply { min-height: 2rem; background: #2f6bff; font-size: 0.75rem; font-weight: 600; }
.desktop-dashboard .desktop-kpi-grid { gap: 1rem; }
.desktop-dashboard .desktop-kpi {
  min-height: 7rem;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  box-shadow: none;
  padding: 1rem 1.125rem;
}
.desktop-dashboard .desktop-kpi:is(.is-success, .is-info, .is-warning, .is-danger) { border-color: #e5eaf2; }
.desktop-dashboard .desktop-kpi span { color: #374151; font-size: 0.875rem; font-weight: 600; }
.desktop-dashboard .desktop-kpi strong { color: #1f2937; font-size: 1.375rem; font-weight: 700; line-height: 1.15; letter-spacing: 0; }
.desktop-dashboard .desktop-kpi small { color: #9ca3af; font-size: 0.75rem; font-weight: 400; }
.manager-dashboard-content { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 1.25rem; }

.manager-visit-status, .manager-payment-status {
  display: inline-flex;
  width: fit-content;
  min-height: 1.875rem;
  align-items: center;
  gap: 0.375rem;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #fff;
  color: #111827;
  padding: 0.375rem 0.75rem;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1rem;
  white-space: normal;
}
.manager-visit-status.is-in_progress { border-color: #b8ccff; color: #2f6bff; }
.manager-visit-status.is-cancelled, .manager-visit-status.is-no_show { border-color: #fecaca; background: #fff; color: #b42318; }
.manager-visit-status.is-outcome_pending { border-color: #e9b4f0; background: #fff; color: #a21caf; }
.manager-visit-status > span { line-height: 1; }
.manager-payment-status img { display: block; width: 14px; height: 14px; flex: none; }

.manager-dashboard-schedule, .desktop-dashboard .manager-dashboard-attention {
  overflow: hidden;
  min-width: 0;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}
.manager-dashboard-section-head { display: flex; min-height: 4.5rem; align-items: center; justify-content: space-between; gap: 0.75rem; padding: 1rem 1.125rem 0.75rem; }
.manager-dashboard-section-head h2 { margin: 0; color: #1f2937; font-size: 1.125rem; font-weight: 700; line-height: 1.3; }
.manager-dashboard-section-head p { margin: 3px 0 0; color: #9ca3af; font-size: 0.75rem; font-weight: 400; }
.manager-dashboard-section-head button {
  border: 0;
  background: transparent;
  color: #2f6bff;
  padding: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  white-space: normal;
}
.manager-dashboard-section-head button:hover, .manager-dashboard-row button:hover { color: #1956e6; text-decoration: underline; }
.manager-dashboard-table-scroll { overflow-x: hidden; }
.manager-dashboard-table-head, .manager-dashboard-row {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(100px,.65fr) minmax(110px,1.2fr) minmax(105px,1.15fr) minmax(95px,.9fr) minmax(95px,.9fr) minmax(95px,.9fr);
  align-items: center;
  gap: 0.75rem;
  padding: 0.625rem 1.125rem;
}
.manager-dashboard-table-head { border-top: 1px solid #e5eaf2; color: #6b7280; font-size: 0.75rem; font-weight: 500; }
.manager-dashboard-row { min-height: 4.5rem; border-top: 1px solid var(--z-row-separator, #f1f3f5); color: #111827; font-size: 0.75rem; }

.manager-dashboard-row button { display: grid; min-width: 0; gap: 0.1875rem; border: 0; background: transparent; padding: 0; text-align: left; }
.manager-dashboard-row button strong { overflow: visible; font-size: 0.8125rem; font-weight: 600; text-overflow: clip; white-space: normal; }
.manager-dashboard-row button small { overflow: visible; color: #6b7280; font-size: 0.6875rem; font-weight: 400; text-overflow: clip; white-space: normal; }
.manager-dashboard-row-time strong { color: #111827; }
.manager-dashboard-row-patient strong { color: #2f6bff; }
.manager-dashboard-row-service, .manager-dashboard-row-specialist { overflow: visible; text-overflow: clip; white-space: normal; }
.manager-dashboard-row :is(.manager-visit-status, .manager-payment-status) { justify-self: start; max-width: 100%; padding: 0.375rem 0.625rem; font-size: 0.75rem; }
.desktop-dashboard .manager-dashboard-row .manager-visit-status { border-color: #cbd5e1; background: #fff; color: #111827; }
.desktop-dashboard .manager-dashboard-row .manager-visit-status.is-outcome_pending { border-color: #e9b4f0; color: #a21caf; }
.desktop-dashboard .manager-dashboard-attention { margin: 0; }
.desktop-dashboard .manager-dashboard-attention .desktop-panel-head { min-height: 4.5rem; padding: 1rem 1.125rem 0.75rem; }
.desktop-dashboard .manager-dashboard-attention .desktop-panel-head h2 { color: #1f2937; font-size: 1.125rem; font-weight: 700; letter-spacing: 0; }
.desktop-dashboard .manager-dashboard-attention .desktop-panel-head p { color: #9ca3af; font-size: 0.75rem; font-weight: 400; }
.desktop-dashboard .manager-dashboard-attention .desktop-alert-list button { min-height: 4.625rem; grid-template-columns: 40px minmax(0,1fr); gap: 0.625rem; padding: 0.75rem 1rem; }
.desktop-dashboard .manager-dashboard-attention .desktop-alert-list button > strong { width: 38px; min-height: 2.375rem; height: auto; border-radius: 10px; background: #EAF0FF; color: #2F6BFF; font-size: 0.9375rem; }
.desktop-dashboard .manager-dashboard-attention .desktop-alert-list b { color: #1f2937; font-size: 0.875rem; font-weight: 700; }
.desktop-dashboard .manager-dashboard-attention .desktop-alert-list small { color: #6b7280; font-size: 0.8125rem; font-weight: 400; line-height: 1.4; }
/* The three operational items share the full width of the dashboard card. */
.desktop-dashboard .manager-dashboard-attention > .desktop-alert-list { grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); gap: 0.75rem; padding: 0 1rem 1rem; }
.desktop-dashboard .manager-dashboard-attention > .desktop-alert-list > button { min-width: 0; border: 0; }
.desktop-dashboard .manager-dashboard-attention > .desktop-alert-list > button:first-child { border-left: 0; border-top: 0; }
@media (max-width: 1000px) and (min-width: 701px) {
}
@media (max-width: 700px) {
  .desktop-dashboard .manager-dashboard-attention > .desktop-alert-list { grid-template-columns: minmax(0, 1fr); }
  .desktop-dashboard .manager-dashboard-attention > .desktop-alert-list > button { border-left: 0; }
}

@media (max-width: 1250px) { .manager-dashboard-content { grid-template-columns: minmax(0, 1fr); } }

.desktop-visits .desktop-table, .desktop-patient-visits .desktop-table,
.desktop-calendar-day-plan .desktop-table { overflow-x: auto; }
.desktop-visits .desktop-appointment-grid,
.desktop-calendar-day-plan .desktop-appointment-grid {
  min-width: 810px;
  grid-template-columns: 100px minmax(125px,1.15fr) minmax(145px,1.35fr) minmax(105px,.9fr) minmax(115px,1fr) minmax(115px,1fr);
  gap: 0.625rem;
}
.desktop-calendar-day-plan .desktop-table-row { padding: 0.75rem 1rem; }

.desktop-calendar-slots-toggle {
  display: block;
  width: 100%;
  min-height: 2.75rem;
  border: 0;
  border-top: 1px solid #e5eaf2;
  background: #fff;
  color: #2f6bff;
  padding: 0.625rem 1.125rem;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}
.desktop-calendar-slots-toggle:hover,
.desktop-calendar-slots-toggle:focus-visible { background: #f6f8fc; }
.desktop-patient-visits .desktop-patient-visit-grid {
  min-width: 820px;
  grid-template-columns: 160px minmax(145px,1.3fr) minmax(120px,1fr) minmax(115px,1fr) minmax(115px,1fr) 95px;
  gap: 0.625rem;
}
.desktop-visits .manager-payment-status, .desktop-patient-visits .manager-payment-status,
.desktop-visits .manager-visit-status, .desktop-patient-visits .manager-visit-status {
  font-size: 0.75rem;
  padding: 0.375rem 0.75rem;
}

/* The same restrained controls and surfaces across Manager screens. */
.manager-main :is(.desktop-panel, .desktop-toolbar, .desktop-calendar-toolbar, .desktop-calendar-groups) {
  border-color: #e5eaf2;
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}
.manager-main .desktop-panel-head { min-height: 4rem; padding: 1rem 1.25rem; }
.manager-main .desktop-panel-head h2 { color: #111827; font-size: 1.125rem; font-weight: 700; letter-spacing: 0; }
.manager-main .desktop-panel-head p { color: #6b7280; font-size: 0.8125rem; font-weight: 400; }
.manager-main :is(.desktop-primary, .desktop-secondary) {
  min-height: 2.5rem;
  border-radius: 10px;
  padding: 0 1rem;
  font-size: 0.8125rem;
  font-weight: 600;
}
.manager-main .desktop-primary { background: #2f6bff; color: #fff; }
.manager-main .desktop-secondary { border: 1px solid #d7dfea; background: #fff; color: #111827; }
.manager-main :is(input, select, textarea):not([type="checkbox"]):not([type="radio"]) {
  border-color: #d7dfea;
  border-radius: 10px;
  font-family: "Plus Jakarta Sans", sans-serif;
}
.manager-main :is(.desktop-calendar, .desktop-visits, .desktop-patients) { gap: 1.5rem; }
.manager-main :is(.desktop-visit-row-link.is-patient, .desktop-visit-patient, .desktop-patient-link) {
  color: #2f6bff;
  font-weight: 600;
}

/* The same Zreev wordmark as Specialist, adapted for the dark Manager menu. */
.manager-brand strong { position: absolute; opacity: 0; }
.manager-brand::before {
  content: "";
  display: block;
  width: 100px;
  height: 19px;
  background: url("data:image/png;base64,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") left center / contain no-repeat;
  filter: brightness(0) invert(1);
}

/* Manager account controls. */
.manager-role-menu, .manager-account-menu { position: relative; }
.manager-role-switcher, .manager-user { cursor: pointer; list-style: none; }
.manager-role-switcher::-webkit-details-marker, .manager-user::-webkit-details-marker { display: none; }
.manager-role-switcher:hover { border-color: #2f6bff; color: #2f6bff; }
.manager-header-menu { position: absolute; top: calc(100% + 10px); right: 0; z-index: 30; min-width: 170px; padding: 0.375rem; border: 1px solid #e5eaf2; border-radius: 12px; background: #fff; box-shadow: 0 12px 32px rgba(16, 24, 40, .13); }
.manager-header-menu a, .manager-header-menu button, .manager-header-menu > span { display: block; width: 100%; padding: 0.625rem 0.75rem; border: 0; border-radius: 8px; background: none; color: #182230; text-align: left; text-decoration: none; font: inherit; font-size: 0.875rem; }
.manager-header-menu > span { color: #2f6bff; font-weight: 700; }
.manager-header-menu a:hover, .manager-header-menu button:hover { background: #eaf1ff; color: #2f6bff; cursor: pointer; }
.manager-role-switcher:focus-visible, .manager-user:focus-visible, .manager-header-menu :focus-visible { outline: 2px solid #2f6bff; outline-offset: 2px; }
.manager-profile { display: grid; gap: 1.5rem; }
.manager-profile-card { max-width: 760px; border: 1px solid #e5eaf2; border-radius: 12px; padding: 1.5rem; }
.manager-profile-heading { display: flex; align-items: center; gap: 1rem; }
.manager-profile-heading h2 { margin: 0; color: #111827; font-size: 1.125rem; }
.manager-profile-heading p { margin: 4px 0 0; color: #6b7280; font-size: 0.8125rem; }
.manager-profile-avatar { display: grid; width: 48px; height: 48px; flex: 0 0 48px; place-items: center; border-radius: 50%; background: #eaf1ff; color: #2f6bff; font-size: 1rem; font-weight: 700; }
.manager-profile-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 2rem; margin: 24px 0 0; }
.manager-profile-field { display: grid; min-width: 0; gap: 0.3125rem; }
.manager-profile-field dt { color: #6b7280; font-size: 0.75rem; }
.manager-profile-field dd { margin: 0; overflow-wrap: anywhere; color: #111827; font-size: 0.875rem; font-weight: 600; }
.manager-profile-pin { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 24px; padding-top: 1.5rem; border-top: 0; }
.manager-profile-pin > div { display: grid; gap: 0.3125rem; }
.manager-profile-pin strong { color: #111827; font-size: 0.875rem; }
.manager-profile-pin span { color: #6b7280; font-size: 0.8125rem; }
.manager-profile-pin a { flex: 0 0 auto; color: #2f6bff; font-size: 0.875rem; font-weight: 700; text-decoration: none; }
.manager-profile-pin a:hover { text-decoration: underline; }
.manager-profile-pin a:focus-visible { outline: 2px solid #2f6bff; outline-offset: 2px; }
.manager-profile-note { margin: 0; padding: 1.5rem; color: #667085; font-size: 0.8125rem; }
@media (max-width: 700px) { .manager-profile-fields { grid-template-columns: 1fr; } .manager-profile-pin { align-items: flex-start; flex-direction: column; } }

.manager-profile-referral-heading h2 { margin: 0; color: #111827; font-size: 1.125rem; }
.manager-profile-referral-heading p { margin: 6px 0 0; color: #6b7280; font-size: 0.8125rem; }
.manager-profile-referral-row { display: flex; align-items: center; gap: 2rem; margin-top: 24px; }
.manager-profile-qr { display: grid; flex: 0 0 160px; gap: 0.5rem; justify-items: center; margin: 0; }
.manager-profile-qr svg { display: block; width: 160px; height: 160px; }
.manager-profile-qr figcaption { color: #6b7280; font-size: 0.75rem; text-align: center; }
.manager-profile-referral-link { display: flex; min-width: 0; flex: 1; align-items: center; gap: 0.75rem; }
.manager-profile-referral-link code { min-width: 0; flex: 1; overflow-wrap: anywhere; border-radius: 10px; background: #f6f8fc; color: #111827; padding: 0.75rem 0.875rem; font: inherit; font-size: 0.8125rem; }
.manager-profile-referral-error { margin: 24px 0 0; color: #6b7280; font-size: 0.8125rem; }
@media (max-width: 720px) {
  .manager-profile-referral-row { flex-direction: column; align-items: stretch; }
  .manager-profile-referral-link { flex-direction: column; align-items: stretch; }
}

.manager-transition { min-height: 100vh; display: grid; place-items: center; background: #f6f8fc; padding: 2rem 1.25rem; }
.manager-transition-card { display: grid; width: min(420px, 100%); justify-items: center; border: 1px solid #e5eaf2; border-radius: 16px; background: #fff; box-shadow: 0 16px 40px rgb(16 28 56 / 6%); padding: 2.25rem 1.75rem; text-align: center; }
.manager-transition-brand { display: grid; min-width: 92px; min-height: 4.375rem; max-width: 176px; place-items: center; border-radius: 18px; background: #fff; padding: 0.5rem 0.75rem; }
.manager-transition-zreev { color: #2f6bff; font-size: 1.5rem; font-weight: 700; letter-spacing: -1.5px; }
.manager-transition-zreev span { color: #2f6bff; }
.manager-transition-facility-image { display: none; max-width: 152px; max-height: 64px; object-fit: contain; }
.manager-transition-brand.has-facility-logo .manager-transition-facility-image { display: block; }
.manager-transition-brand.has-facility-logo .manager-transition-zreev { display: none; }
.manager-transition-spinner { width: 36px; height: 36px; margin: 28px 0 16px; border: 3px solid #eaf1ff; border-top-color: #2f6bff; border-radius: 50%; animation: manager-transition-spin .9s linear infinite; }
.manager-transition-error-icon { display: grid; width: 36px; height: 36px; place-items: center; margin: 28px 0 16px; border-radius: 50%; background: #fff4e8; color: #ad5600; font-weight: 700; }
.manager-transition-card h1 { margin: 0; color: #111827; font-size: 1.25rem; line-height: 1.35; }
.manager-transition-card p { margin: 8px 0 0; color: #667085; font-size: 0.875rem; line-height: 1.5; }
.manager-transition-card button { margin-top: 24px; }
@keyframes manager-transition-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .manager-transition-spinner { animation: none; border-color: #2f6bff; } }

/* Separate manager screens use the full content width. */
.desktop-resource-grid--single { grid-template-columns: minmax(0, 1fr); }
.desktop-resource-grid--single > .desktop-panel { min-width: 0; }

/* Manager sidebar branding and empty day plan. */
.manager-sidebar { background: #252b36; border-right-color: #343d4c; }
.manager-nav-item:hover, .manager-nav-item:focus-visible, .manager-nav-toggle:hover, .manager-nav-toggle:focus-visible { background: #343d4c; }
.manager-brand { display: flex; width: fit-content; max-width: 100%; height: 48px; align-items: center; margin-bottom: 21px; }
.manager-brand .manager-facility-brand-image { display: none; width: auto; max-width: 176px; max-height: 48px; object-fit: contain; border-radius: 8px; background: #fff; padding: 0.25rem 0.5rem; }
.manager-brand.has-facility-logo .manager-facility-brand-image { display: block; }
.manager-brand.has-facility-logo::before { display: none; }
.manager-dashboard-content.is-plan-empty { grid-template-columns: minmax(0, 1fr); align-items: start; }
.manager-dashboard-empty, .manager-calendar-empty { color: #111827; font-size: 1.25rem; font-weight: 700; line-height: 1.4; }
.manager-dashboard-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 0.875rem; border-top: 0; padding: 0.875rem 1.125rem; font-size: 0.875rem; font-weight: 400; }
.manager-dashboard-empty-icon { display: grid; flex: 0 0 42px; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: #eff4ff; color: #2f6bff; }
.manager-dashboard-empty-icon svg { width: 20px; height: 20px; color: #2f6bff; }
.manager-dashboard-empty-copy { display: grid; min-width: 0; gap: 0.1875rem; }
.manager-dashboard-empty-copy strong { font-size: 0.875rem; line-height: 1.35; }
.manager-dashboard-empty-copy span { color: #6b7280; font-size: 0.75rem; line-height: 1.4; }


@media (max-width: 700px) { .manager-dashboard-empty { flex-wrap: wrap; }  }
@media (max-width: 1250px) { .manager-dashboard-content.is-plan-empty { grid-template-columns: minmax(0, 1fr); } }

/* Manager calendar range selector follows the specialist desktop controls. */
.manager-calendar-range-controls { position: relative; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.manager-calendar-range-controls button { display: inline-flex; min-height: 2.5rem; align-items: center; justify-content: center; border: 1px solid #d7dfea; border-radius: 10px; background: #fff; color: #111827; padding: 0 1rem; font-size: 0.875rem; font-weight: 600; line-height: 1.5; cursor: pointer; }
.manager-calendar-range-controls button.is-active, .manager-calendar-range-controls button.is-active:hover { border-color: #2f6bff; background: #2f6bff; color: #fff; }
.manager-calendar-range-controls button:not(.is-active):hover { border-color: #2f6bff; color: #2f6bff; }
.manager-calendar-range-controls button:focus-visible, .manager-calendar-range-fields input:focus-visible { outline: 2px solid #2f6bff; outline-offset: 2px; }
.manager-calendar-range-control { position: relative; display: inline-flex; }
.manager-calendar-range-control > button { gap: 0.5rem; }
.manager-calendar-range-popover { position: absolute; z-index: 20; top: calc(100% + 8px); right: 0; width: 392px; max-width: calc(100vw - 32px); border: 1px solid #e5eaf2; border-radius: 12px; background: #fff; padding: 1.5rem; box-shadow: 0 12px 32px rgba(17, 24, 39, .12); }
.manager-calendar-range-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.manager-calendar-range-fields label { display: grid; gap: 0.375rem; color: #6b7280; font-size: 0.75rem; font-weight: 600; }
.manager-calendar-range-fields input { width: 100%; min-height: 2.5rem; height: auto; border: 1px solid #d7dfea; border-radius: 10px; background: #fff; color: #111827; padding: 0 0.5rem; font-size: 0.8125rem; }
.manager-calendar-range-actions { display: flex; justify-content: flex-end; gap: 0.5rem; margin-top: 20px; }
.manager-calendar-range-actions button:last-child { border-color: #2f6bff; background: #2f6bff; color: #fff; }

/* Consistent selected ranges across Manager desktop date controls. */
.manager-calendar-range-controls button.is-active { box-shadow: 0 0 0 1px #2f6bff inset; }
.manager-calendar-range-popover { color: #111827; }
.manager-calendar-range-popover .manager-calendar-range-actions button:last-child:hover { background: #2457d6; color: #fff; }
/* A selected month may cover every day: keep range quiet and the active date distinct. */
.desktop-day-calendar .desktop-appointment-calendar-grid button.is-in-range:not(.is-active) { background: #f8fafc; color: var(--sub); border-radius: 8px; }
.desktop-day-calendar .desktop-appointment-calendar-grid button.is-in-range:not(.is-active) small { background: #fff; color: #2f6bff; }
.desktop-period-row button.is-active { background: #2f6bff; color: #fff; }
.desktop-period-custom input[type="date"], .desktop-calendar-toolbar input[type="date"] { min-height: 2.5rem; border: 1px solid #d7dfea; border-radius: 10px; background: #fff; color: #111827; padding: 0 0.625rem; accent-color: #2f6bff; }
.desktop-period-custom input[type="date"]:focus-visible, .desktop-calendar-toolbar input[type="date"]:focus-visible { border-color: #2f6bff; outline: 2px solid #2f6bff; outline-offset: 2px; }
.desktop-period-panel:has(.desktop-period-custom input[type="date"]:focus-visible) { border-color: #2f6bff; }

.desktop-period-panel.is-custom .desktop-period-custom input[type="date"],
.desktop-calendar-toolbar input[type="date"].is-active {
  border-color: #2f6bff;
  background: #eef4ff;
  color: #2457d6;
}

/* Manager calendar: period navigation and separate booked / availability work modes. */
.manager-calendar-workspace > .manager-calendar-range-controls {
  gap: 0.5rem;
}
.manager-calendar-primary-action {
  display: flex;
  align-items: center;
  margin-left: auto;
  padding-left: 1rem;
  border-left: 1px solid #e5eaf2;
}
.manager-calendar-primary-action .desktop-primary { min-height: 2.5rem; white-space: normal; }
.manager-calendar-layout {
  display: grid;
  grid-template-columns: minmax(270px, 320px) minmax(0, 1fr);
  gap: 1.25rem;
  align-items: start;
}
.manager-calendar-navigation,
.manager-calendar-main { min-width: 0; }
.manager-calendar-navigation .desktop-day-calendar { width: 100%; }
.manager-calendar-mode-tabs {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  border-bottom: 0;
  padding: 0 1.25rem;
  background: #fff;
  border-radius: 12px 12px 0 0;
}
.manager-calendar-mode-tabs button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 3.25rem;
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  color: #667085;
  padding: 0 0.125rem;
  font: 600 0.875rem "Plus Jakarta Sans", sans-serif;
  cursor: pointer;
}
.manager-calendar-mode-tabs button.is-active {
  border-bottom-color: #2f6bff;
  color: #2f6bff;
}
.manager-calendar-mode-tabs button:hover { color: #2f6bff; }
.manager-calendar-mode-tabs button:focus-visible { outline: 2px solid #2f6bff; outline-offset: -3px; }
.manager-calendar-mode-tabs button span {
  display: inline-flex;
  justify-content: center;
  min-width: 24px;
  border-radius: 999px;
  background: #f6f8fc;
  color: #667085;
  padding: 0.1875rem 0.4375rem;
  font-size: 0.75rem;
}
.manager-calendar-mode-tabs button.is-active span { background: #eaf1ff; color: #2f6bff; }
.manager-calendar-main > [role="tabpanel"] { margin-top: 16px; }
.manager-calendar-main .desktop-calendar-patient-plan { margin-top: 16px; }
.manager-calendar-slot-group + .manager-calendar-slot-group { border-top: 1px solid var(--z-row-separator, #f1f3f5); }
.manager-calendar-slot-group h3 {
  margin: 0;
  background: #f6f8fc;
  color: #111827;
  padding: 0.75rem 1rem;
  font: 700 0.8125rem "Plus Jakarta Sans", sans-serif;
}
.manager-calendar-slot-group article { border-top: 1px solid var(--z-row-separator, #f1f3f5); }
.manager-calendar-slot-group article:first-of-type { border-top: 0; }
.manager-calendar-slot-group article > span strong { font-size: 0.8125rem; }
@media (max-width: 1150px) {
  .manager-calendar-layout { grid-template-columns: minmax(0, 1fr); }
  .manager-calendar-navigation { max-width: 420px; }
}
@media (max-width: 720px) {
  .manager-calendar-primary-action { margin-left: 0; padding-left: 0; border-left: 0; }
  .manager-calendar-mode-tabs { gap: 1rem; }
}

.manager-calendar-booked-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  min-height: 3.75rem;
  border-bottom: 0;
  padding: 0.875rem 1.25rem;
  color: #667085;
  font-size: 0.8125rem;
}
.manager-calendar-booked-meta > span:last-child { color: #2f6bff; font-weight: 700; }
.manager-calendar-empty { min-height: 20rem; display: grid; place-items: center; padding: 2rem; text-align: center; }
.manager-calendar-availability-actions { display: flex; align-items: center; gap: 0.875rem; }
.manager-calendar-availability-actions > span { color: #2f6bff; font-size: 0.75rem; font-weight: 700; }
.manager-calendar-availability-actions .desktop-primary { min-height: 2.375rem; white-space: normal; }
.manager-calendar-workspace .desktop-calendar-day-plan .desktop-table { overflow-x: visible; }
.manager-calendar-workspace .desktop-calendar-day-plan .desktop-appointment-grid {
  min-width: 0;
  grid-template-columns: minmax(100px,.7fr) minmax(105px,1.25fr) minmax(90px,1.2fr) minmax(88px,1fr) minmax(95px,1fr) minmax(95px,1fr);
  gap: 0.5rem;
}
.manager-calendar-workspace .desktop-calendar-day-plan .desktop-appointment-grid > * {
  min-width: 0;
  overflow-wrap: anywhere;
}
@media (max-width: 700px) {
  .manager-calendar-workspace .desktop-calendar-day-plan .desktop-table-head { display: none; }
  .manager-calendar-workspace .desktop-calendar-day-plan .desktop-table-row.desktop-appointment-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 0.75rem;
    border-bottom: 1px solid var(--z-row-separator, #f1f3f5);
  }
  .manager-calendar-workspace .desktop-calendar-day-plan .desktop-table-row > span[data-label]::before {
    display: block;
    content: attr(data-label);
    color: #667085;
    font-size: 0.6875rem;
    margin-bottom: 3px;
  }
}

/* Show the selected period once near its calendar or dashboard controls. */
.manager-dashboard-range-caption,
.desktop-panel-head .manager-calendar-range-caption {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem 0.75rem;
  width: fit-content;
  max-width: 100%;
  border: 1px solid #bfd3ff;
  border-radius: 10px;
  background: #eaf1ff;
  color: #42526e;
  padding: 0.5625rem 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.4;
}
.manager-dashboard-range-caption { margin: -4px 0 0; }
.desktop-panel-head .manager-calendar-range-caption { margin: 10px 0 0; }
.manager-dashboard-range-caption strong,
.manager-calendar-range-caption strong {
  color: #1557d6;
  font-size: 0.9375rem;
  font-weight: 700;
}

/* Manager dashboard: actions before a full-width visit plan, with no horizontal table scroll. */
.manager-dashboard-attention .manager-attention-more { border-top: 1px solid var(--z-row-separator, #f1f3f5); }
.manager-dashboard-attention .manager-attention-more summary { width: fit-content; margin: 12px 16px; color: #2f6bff; font-size: 0.8125rem; font-weight: 600; cursor: pointer; }
.manager-dashboard-attention .manager-attention-more summary:hover { text-decoration: underline; }
.manager-dashboard-attention .manager-attention-more summary:focus-visible { outline: 2px solid #2f6bff; outline-offset: 3px; }
.manager-dashboard-row > * { min-width: 0; }
@media (max-width: 700px) {
  .manager-dashboard-table-head { display: none; }
  .manager-dashboard-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem 0.75rem; }
  .manager-dashboard-row :is(.manager-visit-status, .manager-payment-status) { grid-column: auto; }
}

/* Keep the selected period with the controls instead of a separate row. */
.manager-calendar-range-control > button .manager-range-picker-label { display: grid; text-align: left; line-height: 1.25; }
.manager-calendar-range-control > button .manager-range-picker-label small { font-size: 0.6875rem; font-weight: 600; white-space: normal; }
.manager-calendar-range-controls .manager-range-inline-label { align-self: center; color: #1557d6; font-size: 0.8125rem; font-weight: 700; white-space: normal; }

/* Selected date range is the heading for the Manager view. */
.manager-calendar-range-controls .manager-selected-period {
  flex: 0 0 100%;
  min-width: 0;
  margin-top: 6px;
}
.manager-calendar-range-controls .manager-selected-period p { margin: 0; color: #6b7280; font-size: 0.875rem; font-weight: 400; line-height: 1.4; }
.manager-calendar-range-controls .manager-selected-period strong { color: #1f2937; font-size: 1.125rem; font-weight: 700; }
.manager-calendar-range-controls .manager-selected-period small { display: block; margin-top: 2px; color: #9ca3af; font-size: 0.75rem; font-weight: 400; line-height: 1.4; }

/* Manager identity and primary action in the shared header. */
.manager-brand { display: grid; grid-template-columns: 100px minmax(0, 1fr); align-items: center; column-gap: 0.75rem; width: 100%; height: auto; margin-bottom: 32px; }
.manager-brand.has-facility-logo { grid-template-columns: 48px minmax(0, 1fr); }
.manager-brand::before { grid-column: 1; }
.manager-brand.has-facility-logo::before { display: none; }
.manager-brand .manager-facility-brand-image { width: 48px; height: 48px; max-width: 48px; max-height: 48px; grid-column: 1; object-fit: contain; }
.manager-brand-facility { grid-column: 2; }
.manager-brand-facility { color: #eef2ff; font-size: 0.875rem; font-weight: 600; line-height: 1.4; overflow-wrap: anywhere; }
.manager-header-add-visit { display: inline-flex; align-items: center; gap: 0.5rem; min-height: 2.5rem; border: 1px solid #2f6bff; border-radius: 10px; background: #2f6bff; color: #fff; padding: 0 1rem; font-size: 0.875rem; font-weight: 600; white-space: normal; }
.manager-header-add-visit:hover { background: #2459dd; }
.manager-header-add-visit svg { width: 16px; height: 16px; }
.manager-role-chevron { display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
.manager-user { overflow: hidden; }
.manager-user img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }

/* Calendar tabs and content share one card; empty bookings show a compact list of bookable slots. */
.manager-calendar-main { border: 1px solid #e5eaf2; border-radius: 12px; background: #fff; overflow: hidden; }
.manager-calendar-main > [role="tabpanel"] { margin-top: 0; }
.manager-calendar-main .desktop-calendar-day-plan,
.manager-calendar-main .desktop-calendar-free-slots { border: 0; border-radius: 0; }
.manager-calendar-empty { min-height: 0; display: block; padding: 1.25rem; font-size: 1rem; text-align: left; }
.manager-calendar-empty-slots { border-top: 0; }
.manager-calendar-empty-slots > h3 { display: flex; align-items: center; gap: 0.5rem; margin: 0; padding: 1rem 1.25rem; font-size: 0.9375rem; }
.manager-calendar-empty-slots > h3 span { border-radius: 999px; background: #eaf1ff; color: #2f6bff; padding: 0.125rem 0.5rem; font-size: 0.75rem; }
.manager-calendar-empty-slots .desktop-slot-add { min-height: 2.25rem; border: 1px solid #2f6bff; border-radius: 10px; background: #fff; color: #2f6bff; padding: 0 0.75rem; font-size: 0.75rem; font-weight: 600; white-space: normal; }
.manager-calendar-empty-slots .desktop-slot-add:hover { background: #eaf1ff; }
.manager-calendar-empty-slots .desktop-slot-list article { grid-template-columns: 64px minmax(0, 1fr) auto; }
 
.manager-calendar-empty-action { border-top: 0; padding: 1rem 1.25rem; color: #6b7280; font-size: 0.8125rem; }
.manager-calendar-empty-action button { border: 0; background: transparent; color: #2f6bff; padding: 0 0 0 0.375rem; font-weight: 600; }
.manager-calendar-empty-action button:hover { text-decoration: underline; }

/* Visits: one control surface, list-first content, and an on-demand booking dialog. */
.manager-visit-mode-tabs { display: flex; gap: 1.25rem; border-bottom: 0; }
.manager-visit-mode-tabs button { border: 0; border-bottom: 2px solid transparent; background: transparent; padding: 0.75rem 0.25rem; color: #6b7280; font: 600 0.875rem "Plus Jakarta Sans", sans-serif; cursor: pointer; }
.manager-visit-mode-tabs button.is-active { border-bottom-color: #2f6bff; color: #2f6bff; }
.manager-visit-mode-tabs button span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 1.5rem;
  height: 1.5rem;
  margin-left: 0.5rem;
  padding: 0 0.25rem;
  border: 0;
  border-radius: 999px;
  background: #eff4ff;
  color: #2f6bff;
  font-size: 0.8125rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  vertical-align: middle;
}
.manager-visit-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.5rem; border: 1px solid #e5eaf2; border-radius: 12px; background: #fff; padding: 0.75rem 1rem; }
.manager-visit-controls .desktop-segments { display: flex; flex-wrap: wrap; gap: 0.375rem; }
.manager-visit-range { display: flex; flex-wrap: wrap; align-items: center; gap: 0.375rem; margin-left: auto; }
.manager-visit-range > button { min-height: 2.25rem; border: 1px solid #d7dfea; border-radius: 8px; background: #fff; padding: 0 0.625rem; color: #374151; font: 600 0.75rem "Plus Jakarta Sans", sans-serif; cursor: pointer; }
.manager-visit-range > button.is-active, .manager-visit-range > button.is-active:hover { border-color: #2f6bff; background: #2f6bff; color: #fff; }
.manager-visit-range label { display: inline-flex; align-items: center; gap: 0.25rem; color: #6b7280; font-size: 0.75rem; }
.manager-visit-range input { min-height: 2.25rem; border: 1px solid #d7dfea; border-radius: 8px; background: #fff; padding: 0 0.375rem; color: #374151; font: inherit; }
.manager-visit-range input:focus-visible, .manager-visit-controls button:focus-visible, .manager-visit-mode-tabs button:focus-visible { outline: 2px solid #2f6bff; outline-offset: 2px; }
.desktop-visits .desktop-visit-attention.is-active { background: #a21caf; color: #fff; }
.manager-visit-modal { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 1.5rem; }
.manager-visit-modal-backdrop { position: absolute; inset: 0; background: rgba(17,24,39,.48); }
.manager-visit-modal-dialog { position: relative; width: min(720px, 100%); max-height: min(850px, 90vh); overflow-y: auto; }
.desktop-visits .manager-visit-modal .desktop-appointment-form { margin: 0; box-shadow: 0 16px 48px rgba(17,24,39,.18); }
@media (max-width: 760px) { .manager-visit-range { margin-left: 0; } .manager-visit-modal { padding: 0.75rem; } }

/* The visits date popover reuses the Manager month calendar. */
.manager-visit-calendar-control { position: relative; }
.manager-visit-calendar-trigger { min-height: 2.25rem; border: 1px solid #d7dfea; border-radius: 8px; background: #fff; color: #2f6bff; padding: 0 0.625rem; font: 600 0.75rem "Plus Jakarta Sans", sans-serif; cursor: pointer; }
.manager-visit-calendar-trigger:hover, .manager-visit-calendar-trigger[aria-expanded="true"] { border-color: #2f6bff; background: #f8fafc; }
.manager-visit-calendar-popover { position: absolute; z-index: 30; top: calc(100% + 8px); right: 0; width: 330px; max-width: calc(100vw - 32px); border: 1px solid #e5eaf2; border-radius: 12px; background: #fff; box-shadow: 0 12px 32px rgba(17,24,39,.14); }
.manager-visit-calendar-popover .desktop-appointment-calendar { margin: 0; border: 0; box-shadow: none; }
.manager-visit-calendar-popover .desktop-appointment-calendar-grid button.is-in-range:not(.is-active) { background: #f8fafc; color: #374151; }
.manager-visit-calendar-popover .desktop-appointment-calendar-grid button.is-active { background: #2f6bff; color: #fff; }
@media (max-width: 760px) { .manager-visit-calendar-popover { right: auto; left: 0; } }

/* Visits use the same date-range controls as Dashboard and Calendar. */
.desktop-visits > .manager-calendar-range-controls { width: 100%; }
.desktop-visits .manager-calendar-range-controls .manager-selected-period { flex-basis: 100%; }
.desktop-visits .manager-calendar-range-controls .manager-selected-period small { display: none; }

/* Visit tabs align with the panel heading and filters. */
.desktop-visits .desktop-appointments-layout .manager-visit-mode-tabs { padding: 0 1.25rem; gap: 1.5rem; flex-wrap: wrap; }
.desktop-visits .desktop-appointments-layout .manager-visit-mode-tabs button { padding-right: 0; padding-left: 0; }

/* Status filtering belongs to the Visits list beneath its heading. */
.desktop-visits .desktop-appointments-layout .desktop-panel-head { border-bottom: 0; }
.desktop-visits .desktop-appointments-layout .manager-visit-controls {
  border: 0;
  border-bottom: 1px solid #e5eaf2;
  border-radius: 0;
  padding: 0.625rem 1.25rem 0.875rem;
}
.desktop-visits .desktop-appointments-layout .manager-visit-controls + .manager-dashboard-empty { border-top: 0; }


/* Shared manager style for Payments, Billing, QR and Notifications. */
.manager-secondary-screen {
  gap: 1.25rem;
  min-width: 0;
}
.manager-secondary-screen > *,
.manager-secondary-screen .desktop-panel,
.manager-secondary-screen .desktop-grid-main > *,
.manager-secondary-screen .desktop-billing-grid > *,
.manager-secondary-screen .desktop-qr-intro > * { min-width: 0; }
.manager-secondary-screen .desktop-panel,
.manager-secondary-screen .desktop-period-panel {
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}
.manager-secondary-screen .desktop-panel-head {
  gap: 1rem;
  min-height: 4.25rem;
  padding: 1.125rem 1.25rem;
}
.manager-secondary-screen .desktop-panel-head h2 {
  color: #1f2937;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3;
}
.manager-secondary-screen .desktop-panel-head p {
  margin-top: 4px;
  color: #6b7280;
  font-size: 0.8125rem;
  line-height: 1.5;
}
.manager-secondary-screen .desktop-empty {
  padding: 1.5rem 1.25rem;
  color: #6b7280;
  font-size: 0.875rem;
  line-height: 1.5;
}
.manager-secondary-screen .desktop-table-head {
  background: #fff;
  color: #6b7280;
  font-size: 0.75rem;
  font-weight: 600;
}
.manager-secondary-screen .desktop-table-row { color: #1f2937; }
.manager-secondary-screen .desktop-table-head,
.manager-secondary-screen .desktop-table-row { padding-right: 1.25rem; padding-left: 1.25rem; }
.manager-secondary-screen .desktop-primary,
.manager-secondary-screen .desktop-secondary { box-shadow: none; }

.manager-payments-screen .desktop-period-panel {
  flex-wrap: wrap;
  gap: 0.75rem;
  padding: 0.875rem 1.125rem;
}
.manager-payments-screen .desktop-period-head span {
  color: #374151;
  font-size: 0.875rem;
  font-weight: 600;
}
.manager-payments-screen .desktop-period-row button {
  min-height: 2.25rem;
  padding: 0 0.8125rem;
  border: 1px solid #e5eaf2;
  background: #fff;
  color: #374151;
  font-size: 0.8125rem;
  font-weight: 600;
}
.manager-payments-screen .desktop-period-row button.is-active {
  border-color: #2f6bff;
  background: #2f6bff;
  color: #fff;
}
.manager-payments-screen .desktop-period-custom label {
  color: #374151;
  font-size: 0.8125rem;
  font-weight: 600;
}
.manager-payments-screen .desktop-period-custom input,
.manager-secondary-screen .desktop-notification-filters input,
.manager-secondary-screen .desktop-notification-filters select {
  min-height: 2.375rem;
  border: 1px solid #e5eaf2;
  border-radius: 8px;
  background-color: #fff;
  color: #1f2937;
  font-size: 0.8125rem;
}
.manager-payments-screen .desktop-period-apply {
  min-height: 2.375rem;
  border-radius: 8px;
  box-shadow: none;
}
.manager-secondary-period {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.375rem 0.75rem;
}
.manager-secondary-period strong {
  color: #1f2937;
  font-size: 1.125rem;
  font-weight: 700;
}
.manager-secondary-period small { color: #9ca3af; font-size: 0.75rem; }
.manager-payments-screen .desktop-kpi {
  min-height: 7rem;
  padding: 1rem 1.125rem;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  box-shadow: none;
}
.manager-payments-screen .desktop-kpi:is(.is-success, .is-info, .is-warning) { border-color: #e5eaf2; }
.manager-payments-screen .desktop-kpi span { color: #374151; font-size: 0.875rem; font-weight: 600; }
.manager-payments-screen .desktop-kpi strong { color: #1f2937; font-size: 1.375rem; font-weight: 700; line-height: 1.15; }
.manager-payments-screen .desktop-kpi small { color: #9ca3af; font-size: 0.75rem; font-weight: 400; }
.manager-payments-screen .desktop-grid-main,
.manager-billing-screen .desktop-grid-main { align-items: start; }
.manager-payments-screen .desktop-refund-list .desktop-empty { border-top: 1px solid var(--z-row-separator, #f1f3f5); }

.manager-billing-screen .desktop-billing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.manager-billing-screen .desktop-billing-price,
.manager-billing-screen .desktop-billing-total { min-height: 5.875rem; padding: 1.125rem 1.25rem; }
.manager-billing-screen .desktop-billing-price span,
.manager-billing-screen .desktop-billing-total span { color: #374151; font-size: 0.875rem; font-weight: 600; }
.manager-billing-screen .desktop-billing-price strong,
.manager-billing-screen .desktop-billing-total strong { color: #1f2937; font-size: 1.375rem; font-weight: 700; }
.manager-billing-screen .desktop-billing-note,
.manager-billing-screen .desktop-limit-row { padding-right: 1.25rem; padding-left: 1.25rem; }

.manager-qr-screen .desktop-qr-kpis { gap: 0.75rem; padding: 1rem 1.25rem; }
.manager-qr-screen .desktop-qr-kpis article {
  min-height: 5.5rem;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 0.5rem;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  background: #fff;
}
.manager-qr-screen .desktop-qr-kpis span { color: #374151; font-size: 0.875rem; font-weight: 600; }
.manager-qr-screen .desktop-qr-kpis strong { color: #1f2937; font-size: 1.375rem; font-weight: 700; }
.manager-qr-screen .desktop-qr-report-head { flex-wrap: wrap; }
.manager-qr-screen .desktop-qr-report-head .desktop-segments { margin-left: auto; }

.manager-secondary-screen .desktop-notification-filters { padding: 1rem 1.25rem; gap: 0.75rem; }
.manager-secondary-screen .desktop-notification-filters label { color: #374151; font-size: 0.8125rem; font-weight: 600; }
.manager-secondary-count {
  display: grid;
  min-width: 30px;
  min-height: 1.875rem;
  place-items: center;
  border-radius: 50%;
  background: #eff4ff;
  color: #2f6bff;
  font-size: 0.8125rem;
  font-weight: 700;
}
.manager-secondary-screen .desktop-notification-group-title { color: #1f2937; font-size: 0.9375rem; }
.manager-secondary-screen .desktop-notification-rule-main strong,
.manager-secondary-screen .desktop-notification-history-row strong { color: #1f2937; font-size: 0.875rem; }
.manager-secondary-screen .desktop-notification-rule-meta,
.manager-secondary-screen .desktop-notification-history-row small { color: #6b7280; font-size: 0.8125rem; }

@media (max-width: 1000px) {
  .manager-billing-screen .desktop-billing-grid,
  .manager-secondary-screen .desktop-grid-main,
  .manager-qr-screen .desktop-qr-intro { grid-template-columns: minmax(0, 1fr); }
  .manager-secondary-screen .desktop-notification-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .manager-qr-screen .desktop-qr-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .manager-secondary-screen .desktop-notification-filters { grid-template-columns: minmax(0, 1fr); }
  .manager-payments-screen .desktop-kpi-grid { grid-template-columns: minmax(0, 1fr); }
}

/* Inline date range shared by Manager Dashboard, Calendar and Visits. */
.manager-calendar-range-controls > .manager-calendar-range-fields {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
  margin-left: auto;
}
.manager-calendar-range-controls > .manager-calendar-range-fields label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: #374151;
  font-size: 0.875rem;
  font-weight: 600;
  white-space: nowrap;
  flex: 0 0 auto;
  min-width: 10.5rem;
  overflow-wrap: normal;
  word-break: normal;
}
.manager-calendar-range-controls > .manager-calendar-range-fields input[type="date"] {
  width: 136px;
  min-height: 2.5rem;
  border: 1px solid #d7dfea;
  border-radius: 10px;
  background: #fff;
  color: #111827;
  padding: 0 0.625rem;
  font: inherit;
  font-weight: 600;
  accent-color: #2f6bff;
}
.manager-calendar-range-controls > .manager-calendar-range-fields.is-custom input[type="date"] {
  border-color: #2f6bff;
  background: #eef4ff;
  color: #2457d6;
}
.manager-calendar-range-controls > .manager-calendar-range-fields input[type="date"]:focus-visible {
  border-color: #2f6bff;
  outline: 2px solid #2f6bff;
  outline-offset: 2px;
}
@media (max-width: 1100px) {
  .manager-calendar-range-controls > .manager-calendar-range-fields { flex-basis: 100%; margin-left: 0; }
}
@media (max-width: 600px) {
  .manager-calendar-range-controls > .manager-calendar-range-fields label { flex: 1 1 130px; }
  .manager-calendar-range-controls > .manager-calendar-range-fields input[type="date"] { width: 100%; min-width: 0; }
}

/* Availability list: one date heading, full context in each appointment row. */
.desktop-calendar-free-slots .manager-calendar-slot-group h3,
.manager-calendar-empty-slots .manager-calendar-slot-group h3 {
  background: #f8fafc;
  color: #374151;
  font-size: 0.8125rem;
  padding: 0.625rem 1rem;
}
.desktop-calendar-free-slots .manager-calendar-slot-group article > span strong,
.manager-calendar-empty-slots .manager-calendar-slot-group article > span strong {
  font-size: 0.875rem;
  line-height: 1.4;
}
.desktop-calendar-free-slots .manager-calendar-slot-group article > span small,
.manager-calendar-empty-slots .manager-calendar-slot-group article > span small {
  font-size: 0.75rem;
  line-height: 1.4;
  color: #6b7280;
}
.desktop-calendar-free-slots .manager-calendar-slot-group time,
.manager-calendar-empty-slots .manager-calendar-slot-group time {
  font-size: 0.875rem;
  color: #1f2937;
}

.manager-calendar-availability-actions .manager-calendar-schedules-link {
  color: #2f6bff;
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
.manager-calendar-availability-actions .manager-calendar-schedules-link:hover,
.manager-calendar-availability-actions .manager-calendar-schedules-link:focus-visible {
  text-decoration: underline;
}

/* Manager calendar: give the appointment list the full content width. */
.manager-calendar-workspace .manager-calendar-layout {
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}
.manager-calendar-workspace .manager-calendar-navigation {
  width: 100%;
  max-width: none;
}
.manager-calendar-workspace .manager-calendar-main {
  width: 100%;
  min-width: 0;
}

/* Manager navigation: visible hierarchy and a scrollbar on the graphite sidebar. */
.manager-sidebar {
  scrollbar-width: thin;
  scrollbar-color: #64748b #252b36;
  scrollbar-gutter: stable;
}
.manager-sidebar::-webkit-scrollbar { width: 6px; }
.manager-sidebar::-webkit-scrollbar-track { background: #252b36; }
.manager-sidebar::-webkit-scrollbar-thumb {
  background: #64748b;
  border-radius: 999px;
}
.manager-sidebar::-webkit-scrollbar-thumb:hover { background: #94a3b8; }
.manager-nav-subgroup > .manager-nav-items {
  margin-left: 12px;
  padding-left: 0.75rem;
  border-left: 1px solid #475569;
  gap: 0.25rem;
}
.manager-nav-subgroup > .manager-nav-items > .manager-nav-item {
  min-height: 2.25rem;
  padding: 0.5rem 0.625rem;
}

/* Full-width Calendar and the shared Configuration visual system. */
.manager-calendar-workspace .manager-calendar-navigation .desktop-appointment-calendar { width: 100%; }
.manager-calendar-workspace .manager-calendar-navigation .desktop-appointment-calendar-grid button,
.manager-calendar-workspace .manager-calendar-navigation .desktop-appointment-calendar-grid > span { min-height: 2.75rem; }
.manager-calendar-workspace .manager-calendar-navigation .desktop-appointment-calendar-grid button { font-size: 0.875rem; }
.manager-calendar-workspace .manager-calendar-navigation .desktop-appointment-calendar-weekdays { font-size: 0.75rem; }

.manager-configuration { min-width: 0; }
.manager-configuration .desktop-stack,
.manager-configuration .desktop-settings-grid,
.manager-configuration .desktop-resource-grid,
.manager-configuration .desktop-services-layout { gap: 1.5rem; }
.manager-configuration .desktop-panel,
.manager-configuration .desktop-toolbar,
.manager-configuration .qualification-type-card {
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
  min-width: 0;
}
.manager-configuration .desktop-toolbar { padding: 1rem 1.25rem; gap: 1rem; flex-wrap: wrap; }
.manager-configuration .desktop-panel-head { min-height: 4.25rem; padding: 1.125rem 1.25rem; gap: 1rem; flex-wrap: wrap; }
.manager-configuration .desktop-panel-head h2 { font-size: 1.125rem; font-weight: 700; color: #1f2937; line-height: 1.3; }
.manager-configuration .desktop-panel-head p,
.manager-configuration .desktop-toolbar small,
.manager-configuration .desktop-resource-list small,
.manager-configuration .desktop-form-note { font-size: 0.8125rem; color: #6b7280; line-height: 1.5; }
.manager-configuration .desktop-toolbar strong,
.manager-configuration .desktop-resource-list strong { font-size: 0.875rem; font-weight: 700; color: #1f2937; }
.manager-configuration .desktop-form-grid { padding: 1.25rem; gap: 1rem; }
.manager-configuration .desktop-form-grid label,
.manager-configuration .desktop-toolbar label,
.manager-configuration .desktop-payment-variants,
.manager-configuration .schedule-day label:not(.desktop-toggle) { font-size: 0.875rem; font-weight: 600; color: #374151; }
.manager-configuration input:not([type="checkbox"]):not([type="radio"]),
.manager-configuration select,
.manager-configuration textarea,
.manager-configuration .desktop-payment-variant-dropdown summary {
  min-height: 2.5rem;
  border: 1px solid #d7dfea;
  border-radius: 8px;
  background-color: #fff;
  color: #1f2937;
  font-size: 0.875rem;
  box-sizing: border-box;
  max-width: 100%;
}
.manager-configuration textarea { padding: 0.625rem 0.75rem; line-height: 1.5; }
.manager-configuration input:focus-visible,
.manager-configuration select:focus-visible,
.manager-configuration textarea:focus-visible { outline: 2px solid #2f6bff; outline-offset: 2px; }
.manager-configuration .desktop-field-hint { font-size: 0.75rem; font-weight: 400; color: #6b7280; }
.manager-configuration .desktop-form-actions { padding: 1rem 1.25rem; gap: 0.75rem; }
.manager-configuration .desktop-primary,
.manager-configuration .desktop-secondary { min-height: 2.5rem; border-radius: 8px; font-size: 0.875rem; box-shadow: none; }
.manager-configuration .desktop-panel-head > button,
.manager-configuration .desktop-panel-head-actions > button { font-size: 0.875rem; }
.manager-configuration .desktop-table-head,
.manager-configuration .desktop-table-row { padding-left: 1.25rem; padding-right: 1.25rem; }
.manager-configuration .desktop-table-head { background: #f8fafc; font-size: 0.75rem; font-weight: 600; color: #6b7280; }
.manager-configuration .desktop-table-row { font-size: 0.875rem; color: #1f2937; }
.manager-configuration .desktop-empty { padding: 1.5rem 1.25rem; font-size: 0.875rem; color: #6b7280; line-height: 1.5; }
.manager-configuration .schedule-week { padding: 0 1.25rem; }
.manager-configuration .schedule-day { min-height: 4.25rem; gap: 1rem; }
.manager-configuration .schedule-day input:disabled { background: #f8fafc; color: #9ca3af; }
.manager-configuration .qualification-type-list { margin: 0; padding: 1.25rem; gap: 1.25rem; }
.manager-configuration .qualification-type-card { padding: 0; }
.manager-configuration .qualification-capabilities { margin: 0; padding: 0 1.25rem 1.25rem; }
@media (max-width: 760px) {
  .manager-configuration .desktop-settings-grid,
  .manager-configuration .desktop-form-grid,
  .manager-configuration .desktop-service-form-grid { grid-template-columns: minmax(0, 1fr); }
  .manager-configuration .desktop-form-grid > label { grid-column: auto; }
  .manager-configuration .schedule-day { grid-template-columns: minmax(0, 1fr) repeat(2, minmax(0, 110px)); }
}

/* Configuration: readable list content and compact qualification editing. */
/* Configuration screens use the shared .manager-main content width. */
.manager-configuration .desktop-resource-form { background: #fff; border-top: 0; gap: 1rem; }
.manager-configuration .desktop-resource-list strong,
.manager-configuration .desktop-service-title-line strong,
.manager-configuration .schedule-service-row strong,
.manager-configuration .desktop-resource-service-picker > strong,
.manager-configuration .desktop-stations-head strong,
.manager-configuration .desktop-station-row strong { font-size: 0.875rem; font-weight: 600; color: #1f2937; }
.manager-configuration .desktop-resource-list small,
.manager-configuration .desktop-service-main small,
.manager-configuration .schedule-service-row small,
.manager-configuration .desktop-specialist-avatar-editor label small,
.manager-configuration .desktop-payment-variants > small { font-size: 0.8125rem; font-weight: 400; color: #6b7280; line-height: 1.5; }
.manager-configuration .desktop-resource-service-picker { margin: 0 20px; border: 0; border-radius: 0; }
.manager-configuration .schedule-service-row { padding: 0.875rem 0; border-top: 1px solid var(--z-row-separator, #f1f3f5); }
.manager-configuration .desktop-resource-service-picker > strong { padding: 0 0 0.5rem; }
.manager-configuration .desktop-service-grid { grid-template-columns: minmax(0, 1.5fr) minmax(70px,.5fr) minmax(0,1.2fr) minmax(70px,.5fr); gap: 1rem; }
.manager-configuration .desktop-service-title-line { flex-wrap: wrap; }
.manager-configuration .desktop-service-title-line strong { white-space: normal; overflow-wrap: anywhere; }
.manager-configuration .desktop-service-grid > * { min-width: 0; overflow-wrap: anywhere; }
.manager-configuration .desktop-badge { border-width: 1px; font-size: 0.75rem; font-weight: 500; }
.manager-configuration .desktop-form-grid label { font-weight: 500; }
.manager-configuration .desktop-form-grid label.desktop-access-option { background: transparent; padding: 0; font-size: 0.875rem; font-weight: 400; }
.manager-configuration input[type="file"] { padding: 0.375rem 0.5rem; }
.manager-configuration input[type="file"]::file-selector-button { border: 0; border-radius: 6px; background: #eff4ff; color: #2f6bff; padding: 0.3125rem 0.625rem; margin-right: 10px; font: inherit; cursor: pointer; }
.manager-configuration .qualification-create { border-bottom: 0; }
.manager-configuration .qualification-create > summary { padding: 1rem 1.25rem; color: #2f6bff; font-size: 0.875rem; font-weight: 600; cursor: pointer; }
.manager-configuration .qualification-type-card > summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.25rem; cursor: pointer; list-style: none; }
.manager-configuration .qualification-type-card > summary::-webkit-details-marker { display: none; }
.manager-configuration .qualification-type-card > summary > span:first-child { display: grid; gap: 0.25rem; }
.manager-configuration .qualification-type-card > summary strong { font-size: 0.875rem; font-weight: 600; color: #1f2937; }
.manager-configuration .qualification-type-card > summary small { font-size: 0.8125rem; color: #6b7280; }
.manager-configuration .qualification-edit-label { font-size: 0.875rem; font-weight: 600; color: #2f6bff; }
.manager-configuration .qualification-type-card[open] > summary { border-bottom: 0; }
.manager-configuration .qualification-capabilities > label { display: flex; align-items: center; gap: 0.625rem; min-height: 2.25rem; font-size: 0.875rem; color: #374151; }
.manager-configuration .qualification-capabilities input { width: 17px; min-height: 1.0625rem; height: auto; accent-color: #2f6bff; }
@media (max-width: 760px) {
  .manager-configuration .desktop-service-grid { grid-template-columns: minmax(0,1.3fr) 65px minmax(0,1fr) 65px; gap: 0.5rem; }
}

/* Visits count sits next to the heading, matching the shared circular counter. */
.desktop-visits .manager-visits-heading { display: flex; align-items: center; gap: 0.625rem; }
.desktop-visits .manager-visits-heading h2 { margin: 0; }
.desktop-visits .manager-visits-count { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; flex: 0 0 32px; border: 0; border-radius: 50%; background: #eff4ff; color: #2f6bff; font-size: 0.8125rem; font-weight: 600; line-height: 1; }

/* Visit status filters share the light active accent used by patient tabs. */
.manager-visit-controls .desktop-segments button.is-active { background: #eff4ff; color: #2f6bff; border-color: #2f6bff; }
.manager-visit-controls .desktop-segments button.is-empty:not(.is-active) { color: #98a2b3; }
.manager-filter-count { margin-left: 6px; font-variant-numeric: tabular-nums; }
.manager-visits-empty { text-align: center; }

/* Calendar dates retain identical positions; counts sit beside them. */
.desktop-day-calendar .desktop-appointment-calendar-weekdays,
.desktop-day-calendar .desktop-appointment-calendar-grid { grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 0.375rem; }
.desktop-day-calendar .desktop-appointment-calendar-grid { grid-auto-rows: 44px; }
.desktop-day-calendar .desktop-appointment-calendar-grid button { display: flex; align-items: center; justify-content: center; min-width: 0; position: relative; }
.desktop-day-calendar .desktop-appointment-calendar-grid button small { position: absolute; left: calc(50% + 14px); top: 50%; transform: translateY(-50%); }

/* The full-width calendar gives visit counts the same visual weight as dates. */
.manager-calendar-workspace .desktop-appointment-calendar-grid button small { min-width: 24px; min-height: 1.5rem; height: auto; padding: 0 0.25rem; font-size: 0.8125rem; font-weight: 600; font-variant-numeric: tabular-nums; background: #eff4ff; }

/* Calendar navigator: independent selection, today, count and working-day states. */
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid { grid-auto-rows: 48px; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button {
  display: flex; min-height: 3rem; height: auto; min-height: 3rem; align-items: center; justify-content: center;
  gap: 0.5rem; padding: 0.25rem; border: 1.5px solid transparent; border-radius: 8px;
  background: transparent; color: #374151; box-shadow: none;
}
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button > span { font-size: 0.875rem; font-weight: 600; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button.is-closed { color: #9ca3af; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button.is-outside { color: #c7cbd1; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button.is-today:not(.is-active) { border-color: #2f6bff; color: #2f6bff; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button:hover:not(.is-active) { background: #f5f6f8; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button.is-active { background: #2f6bff; border-color: #2f6bff; color: #fff; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button small {
  position: static; transform: none; display: inline-flex; align-items: center; justify-content: center;
  width: 32px; min-width: 32px; min-height: 2rem; height: auto; flex: 0 0 32px; margin: 0; padding: 0;
  border: 0; border-radius: 50%; background: #2f6bff; color: #fff; font-size: 0.8125rem; line-height: 1;
}
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button.is-active small { background: #fff; color: #2f6bff; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button:focus-visible { outline: 2px solid #374151; outline-offset: 2px; }

@media (max-width: 600px) {
  .manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button { gap: 0.25rem; padding: 0.125rem; }
  .manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button small { width: 24px; min-width: 24px; min-height: 1.5rem; height: auto; flex-basis: 24px; font-size: 0.75rem; }
}

/* Selected calendar range matches specialist typography. */
.manager-calendar-range-controls .manager-selected-period p { font-size: 1.125rem; }

/* A neutral dot marks additional attention items instead of the browser disclosure icon. */
.manager-dashboard-attention .manager-attention-more summary { display: flex; align-items: center; gap: 0.5rem; list-style: none; }
.manager-dashboard-attention .manager-attention-more summary::-webkit-details-marker { display: none; }
.manager-dashboard-attention .manager-attention-more summary::marker { content: ""; }
.manager-dashboard-attention .manager-attention-more summary::before { content: ""; width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: #9ca3af; }

.manager-availability-options-note { margin: 0; padding: 1rem; color: #667085; font-size: 0.8125rem; line-height: 1.5; border-bottom: 0; }
.manager-availability-options-note strong { color: #1f2937; font-weight: 600; }

.manager-configuration .desktop-settings-grid { grid-template-columns: minmax(0, 1fr); }
.manager-configuration .desktop-settings-grid > .desktop-settings-wide { grid-column: auto; grid-row: auto; }

/* Service-first booking keeps the chosen calendar range as the date context. */
.manager-calendar-booking-filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding: 1rem; border-bottom: 1px solid #e5eaf2; }
.manager-calendar-booking-filters label { display: grid; gap: 0.375rem; min-width: 0; font-size: 0.8125rem; font-weight: 600; color: #1f2937; }
.manager-calendar-booking-filters select { width: 100%; min-width: 0; min-height: 2.625rem; height: auto; padding: 0 0.75rem; border: 1px solid #d7dfea; border-radius: 10px; background: #fff; color: #1f2937; font: inherit; }
.manager-calendar-booking-filters select:focus-visible { outline: 2px solid #2f6bff; outline-offset: 2px; }
.manager-calendar-booking-filters select:disabled { color: #9ca3af; background: #f8fafc; }
@media (max-width: 600px) { .manager-calendar-booking-filters { grid-template-columns: minmax(0, 1fr); } }

.manager-payment-range-controls { width: 100%; }

/* Facility branding never falls back to the platform logo while loading. */
.manager-brand::before { display: none; }
.manager-brand:not(.has-facility-logo) .manager-brand-facility { grid-column: 1 / -1; }

/* Notification settings use shared column widths across every recipient group. */
.desktop-notification-rule {
  grid-template-columns: minmax(0, 1fr) 132px;
  gap: 1.5rem;
  padding: 1.125rem 1.25rem;
  min-height: 4.75rem;
}
.desktop-notification-rule-main { gap: 1.5rem; }
.desktop-notification-rule-main > span {
  grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr) minmax(0, 1.3fr) 160px;
  align-items: center;
  gap: 1.25rem;
  min-width: 0;
}
.desktop-notification-rule-main strong,
.desktop-notification-rule-meta > span { min-width: 0; overflow-wrap: anywhere; line-height: 1.5; }
.desktop-notification-rule-meta { display: contents; }
.desktop-notification-rule-meta > span { color: var(--sub); font-size: 0.8125rem; }
.desktop-notification-rule-meta b { display: block; font-size: 0.75rem; }
.desktop-notification-rule-meta em { justify-self: start; max-width: 100%; line-height: 1.4; }
.desktop-notification-preview-button { justify-self: end; white-space: normal; text-align: right; line-height: 1.5; }
.desktop-notification-rule-main input:focus-visible + i { outline: 2px solid var(--accent); outline-offset: 4px; }
@media (max-width: 1200px) {
  .desktop-notification-rule-main > span { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr) 160px; gap: 0.5rem 1.25rem; }
  .desktop-notification-rule-main strong { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .desktop-notification-rule { grid-template-columns: minmax(0, 1fr); gap: 0.75rem; padding: 1rem; }
  .desktop-notification-rule-main { gap: 1rem; }
  .desktop-notification-rule-main > span { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem 1rem; }
  .desktop-notification-rule-meta em { grid-column: 1 / -1; }
}
@media (max-width: 420px) {
  .desktop-notification-rule-main > span { grid-template-columns: minmax(0, 1fr); }
}

/* Specialist service prices use the existing schedule form. */
.specialist-price-row > label:first-child { display:flex; align-items:center; gap:0.75rem; flex:1; }
.specialist-price-row > label:nth-child(2) { display:flex; flex-direction:column; gap:0.375rem; font-size:0.75rem; }
.specialist-price-row input[data-schedule-price] { width:160px; min-width:0; padding:0.625rem 0.75rem; border:1px solid #E5EAF2; border-radius:12px; font:inherit; background:#fff; }
@media(max-width:700px) { .specialist-price-row { flex-wrap:wrap; } }

.specialist-price-row { display:flex; align-items:center; gap:1rem; }

/* One header labels notification columns; rows contain only their values. */
.desktop-notification-rules { overflow-x: auto; }
.desktop-notification-table-head,
.desktop-notification-rules .desktop-notification-rule {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(0, .9fr) minmax(0, 1.3fr) 110px 60px;
  align-items: center;
  gap: 1.25rem;
  min-width: 850px;
  box-sizing: border-box;
  padding: 1.125rem 1.25rem;
}
.desktop-notification-table-head { color: var(--sub); font-size: 0.75rem; font-weight: 600; border-bottom: 1px solid var(--line); }
.desktop-notification-rules .desktop-notification-rule-main,
.desktop-notification-rules .desktop-notification-rule-main > span,
.desktop-notification-rules .desktop-notification-rule-meta { display: contents; }
.desktop-notification-rules .desktop-notification-rule-main strong { grid-column: auto; }
.desktop-notification-rules .desktop-notification-rule-main i { justify-self: center; }
.desktop-notification-rules .desktop-notification-required { color: var(--text); font-size: 0.8125rem; }
.desktop-notification-rules .desktop-notification-group-title { min-width: 850px; }

/* Notification settings: recipient tabs and an outlined save action. */
.desktop-notifications-screen .desktop-panel-head > .desktop-notification-save { background: #fff; border: 1px solid #2f6bff; color: #2f6bff; box-shadow: none; min-height: 2.5rem; padding: 0.625rem 1rem; border-radius: 8px; font-size: 0.875rem; font-weight: 600; }
.desktop-notifications-screen .desktop-panel-head > .desktop-notification-save:hover { background: #eff4ff; }
.desktop-notification-tabs { display: flex; gap: 1.5rem; padding: 0 1.25rem; border-bottom: 0; }
.desktop-notification-tabs button { border: 0; border-bottom: 2px solid transparent; background: #fff; color: var(--sub); padding: 0.875rem 0; font: inherit; font-size: 0.875rem; cursor: pointer; }
.desktop-notification-tabs button[aria-selected="true"] { color: #2f6bff; border-bottom-color: #2f6bff; font-weight: 600; }
.desktop-notification-tabs button:focus-visible { outline: 2px solid #2f6bff; outline-offset: 3px; }
.desktop-notification-audience[hidden], .desktop-notification-sms[hidden] { display: none; }
.desktop-notifications-screen .desktop-panel-head { flex-wrap: wrap; gap: 1rem; }

/* History headers and rows share one column layout, including on narrow screens. */
.desktop-notifications-screen .desktop-notification-history { display: block; overflow-x: auto; }
.desktop-notifications-screen .desktop-notification-history-head,
.desktop-notifications-screen .desktop-notification-history-row {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, 1.2fr) minmax(0, 1fr);
  align-items: center;
  gap: 1.25rem;
  min-width: 850px;
  padding: 1rem 1.25rem;
  box-sizing: border-box;
}
.desktop-notification-history-head { color: var(--sub); font-size: 0.75rem; font-weight: 600; }
.desktop-notifications-screen .desktop-notification-history-row > span { min-width: 0; color: var(--text); font-size: 0.875rem; overflow-wrap: anywhere; }
.desktop-notifications-screen .desktop-notification-history-row time { color: var(--sub); font-size: 0.8125rem; }
.desktop-notifications-screen .desktop-notification-history-row > .badge { justify-self: start; }

/* Open previews from the subject; keep switches independent of the subject action. */
.desktop-notification-rules .desktop-notification-rule-toggle { display: contents; }
.desktop-notifications-screen .desktop-notification-topic {
  border: 0; background: transparent; color: #2f6bff; padding: 0;
  font: inherit; font-size: 0.875rem; font-weight: 600; line-height: 1.5;
  text-align: left; cursor: pointer;
}
.desktop-notification-topic:hover { text-decoration: underline; }
.desktop-notification-topic:focus-visible { outline: 2px solid #2f6bff; outline-offset: 4px; border-radius: 3px; }
.desktop-notification-rule-toggle input:focus-visible + i { outline: 2px solid #2f6bff; outline-offset: 3px; }
.desktop-notifications-screen .desktop-notification-email-preview { gap: 0.875rem; padding: 1.25rem 0 0.25rem; font-family: inherit; }
.desktop-notifications-screen .desktop-notification-email-preview > span { grid-template-columns: 64px minmax(0, 1fr); gap: 1rem; }
.desktop-notifications-screen .desktop-notification-email-preview b { font-size: 0.75rem; font-weight: 500; line-height: 1.7; }
.desktop-notifications-screen .desktop-notification-email-preview strong,
.desktop-notifications-screen .desktop-notification-email-preview p { font-size: 0.875rem; line-height: 1.65; }
.desktop-notifications-screen .desktop-notification-email-preview strong { font-weight: 600; }
.desktop-notifications-screen .desktop-notification-email-preview small { font-size: 0.75rem; line-height: 1.6; }

/* Off notifications are neutral; mandatory enabled rules remain visibly enabled. */
.desktop-notifications-screen .desktop-notification-rule-main input:not(:checked) + i { background: #9ca3af; opacity: 1; }
.desktop-notifications-screen .desktop-notification-rule-main input:checked + i { background: #2f6bff; opacity: 1; }
.desktop-notifications-screen .desktop-notification-rule-main input:disabled + i { background: #9ca3af; opacity: 1; cursor: not-allowed; }
.desktop-notifications-screen .desktop-notification-email-preview p { white-space: pre-line; }


/* Free appointments: each specialist has their own price and booking action. */
.desktop-slot-list .manager-slot-columns{display:grid;grid-template-columns:64px minmax(150px,1.3fr) minmax(150px,1fr) minmax(90px,.55fr) 112px;gap:1rem;align-items:center;padding:0.75rem 1rem}
.desktop-slot-list .manager-slot-columns-head{font-size:.75rem;color:var(--muted);border-bottom:1px solid var(--line);background:#fff}
.desktop-slot-list .manager-slot-specialist,.desktop-slot-list .manager-slot-price{font-size:.8125rem;color:var(--text)}
.desktop-slot-list .manager-slot-price{white-space:nowrap}
@media(max-width:900px){.desktop-slot-list .manager-slot-columns{grid-template-columns:54px minmax(100px,1fr) minmax(120px,1fr) 80px 112px;gap:0.5rem;padding:0.75rem 0.5rem}}
@media(max-width:650px){.desktop-slot-list .manager-slot-columns{grid-template-columns:54px minmax(0,1fr) auto}.desktop-slot-list .manager-slot-columns-head{display:none}.desktop-slot-list .manager-slot-columns>time{grid-column:1;grid-row:1/3}.desktop-slot-list .manager-slot-columns>span:nth-child(2){grid-column:2;grid-row:1}.desktop-slot-list .manager-slot-specialist{grid-column:2;grid-row:2}.desktop-slot-list .manager-slot-price{grid-column:3;grid-row:1}.desktop-slot-list .manager-slot-columns>.desktop-slot-add{grid-column:3;grid-row:2}}

/* Labels and selectors share one horizontal row on desktop. */
.manager-calendar-booking-filters{display:flex;align-items:center;gap:1.5rem;flex-wrap:nowrap}
.manager-calendar-booking-filters label{display:flex;align-items:center;gap:0.75rem;flex:1;white-space:normal}
.manager-calendar-booking-filters select{flex:1;width:0;min-width:0}
@media(max-width:650px){.manager-calendar-booking-filters{flex-wrap:wrap;gap:0.75rem}.manager-calendar-booking-filters label{flex-basis:100%}}


/* Schedule actions belong to their panel headers. */
.desktop-schedules-screen .desktop-panel-head > .schedule-header-button {
  flex: 0 0 auto;
  min-height: 2.5rem;
  padding: 0.625rem 1rem;
  border: 1px solid #2f6bff;
  border-radius: 8px;
  background: #fff;
  color: #2f6bff;
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: none;
  cursor: pointer;
}
.desktop-schedules-screen .schedule-header-button:hover { background: #eff4ff; }
.desktop-schedules-screen .schedule-header-button:focus-visible { outline: 2px solid #2f6bff; outline-offset: 3px; }
.desktop-schedules-screen .desktop-panel-head { flex-wrap: wrap; gap: 1rem; }
.desktop-schedules-screen .schedule-publish { display: block; padding: 0; }
.desktop-schedules-screen .schedule-publish-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  padding: 1rem 1.25rem;
}
.desktop-schedules-screen .schedule-publish-controls label { width: 180px; max-width: 100%; }

/* Keep specialist service details and price controls in stable columns. */
.desktop-schedules-screen .schedule-services .specialist-price-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 160px;
  gap: 1rem;
  padding: 1rem 1.25rem;
  align-items: center;
}
.desktop-schedules-screen .schedule-services .specialist-price-row > label:first-child { min-width: 0; }
.desktop-schedules-screen .schedule-services .specialist-price-row input[data-schedule-service] { flex: 0 0 16px; margin: 0; }
.desktop-schedules-screen .schedule-services .specialist-price-row > label:first-child > span { display: grid; gap: 0.25rem; min-width: 0; }
.desktop-schedules-screen .schedule-services .specialist-price-row strong { overflow-wrap: anywhere; }
.desktop-schedules-screen .schedule-services .specialist-price-row input[data-schedule-price] { box-sizing: border-box; width: 100%; height: auto; min-height: 2.5rem; }
@media (max-width: 700px) {
  .desktop-schedules-screen .schedule-services .specialist-price-row { grid-template-columns: minmax(0, 1fr); }
  .desktop-schedules-screen .schedule-services .specialist-price-row > label:nth-child(2) { grid-column: 1; grid-row: 2; width: 160px; max-width: 100%; }
}

/* Booking price stays readable alongside the time field. */
.desktop-appointment-form .manager-appointment-price-field output {
  display: flex;
  min-height: 2.75rem;
  align-items: center;
  padding: 0.625rem 0.875rem;
  border: 1px solid #2F6BFF;
  border-radius: 12px;
  background: #EFF4FF;
  color: #111827;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
}

.desktop-appointment-form .desktop-form-actions {
  justify-content: space-between;
}

/* Service forms group identity, booking rules and payment settings. */
.manager-service-sections{display:grid;gap:0;padding:0 1.5rem}
.manager-service-section{margin:0;padding:1.5rem 0;border:0;min-width:0}
.manager-service-section+.manager-service-section{border-top: 0}
.manager-service-section legend{float:left;width:100%;margin:0 0 16px;padding:0;font-size:1rem;font-weight:700;color:var(--text)}
.manager-service-section-fields{clear:both;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1.5rem;max-width:880px}
.manager-service-section-fields>label,.manager-service-section-fields>.desktop-payment-variants{grid-column:auto;min-width:0}
.manager-service-section-fields>.desktop-service-field-name,.manager-service-section-fields>.desktop-service-field-description{grid-column:1/-1}
.manager-service-section-fields label{display:grid;gap:0.5rem;font-size:.875rem;font-weight:500}
.manager-service-section-fields textarea{min-height:5.5rem}
.manager-service-removal{margin:0 24px 24px;padding-top:1.25rem;border-top: 0}
.manager-service-removal summary{width:fit-content;font-size:.875rem;color:var(--sub);cursor:pointer}
.manager-service-removal>div{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding-top:1rem}
.manager-service-removal .desktop-form-note{margin:0;padding:0;flex:1}
.manager-service-removal .desktop-danger{flex:none}
@media(max-width:700px){.manager-service-sections{padding:0 1.25rem}.manager-service-section-fields{grid-template-columns:minmax(0,1fr)}.manager-service-removal{margin:0 20px 20px}.manager-service-removal>div{align-items:flex-start;flex-direction:column}}

/* Specialist editing is a focused page with explicit identity and access state. */
.manager-specialist-fields{border:0;padding:0;margin:0;min-width:0}
.manager-specialist-section{padding:1.5rem 1.25rem;border-bottom: 0}
.manager-specialist-section h3{margin:0 0 16px;font-size:1rem;font-weight:700;line-height:1.4;color:#1f2937}
.manager-specialist-section>p,.manager-specialist-access p{margin:0 0 16px;font-size:.875rem;line-height:1.6;color:#64748b}
.manager-configuration .manager-specialist-section .desktop-form-grid{padding:0;gap:1.25rem 1.5rem}
.manager-specialist-section .desktop-specialist-avatar-editor{grid-column:1/-1}
.manager-specialist-manager-option{display:flex;align-items:flex-start;gap:0.75rem;font-size:.875rem}
.manager-specialist-manager-option>span{display:grid;gap:0.375rem}
.manager-specialist-manager-option small{color:#64748b;font-size:.8125rem;line-height:1.5}
.manager-specialist-status{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:16px}
.manager-specialist-status h3{margin:0}
.manager-specialist-access{border-top: 0;border-bottom:0}
.manager-specialist-access summary{color:#2f6bff;font-size:.875rem;font-weight:600;cursor:pointer;width:fit-content}
.manager-specialist-access details p{margin:16px 0;max-width:760px}
.manager-configuration .manager-specialist-editor .desktop-panel-head h2{font-size:1.25rem;line-height:1.4}
.manager-configuration .manager-specialist-editor .desktop-panel-head>button,.manager-configuration .manager-specialist-editor .desktop-secondary{border:1px solid #2f6bff;border-radius:8px;background:#fff;color:#2f6bff;padding:0.5625rem 0.875rem;font-size:.875rem;font-weight:600;min-height:2.5rem;box-shadow:none}
.manager-specialist-fields:disabled{opacity:.65}
.manager-specialist-editor .desktop-form-actions{margin:0}
@media(max-width:760px){.manager-specialist-status{align-items:flex-start}.manager-specialist-editor .desktop-panel-head>button{width:auto}}

/* One catalogue panel with matching service and package actions. */
.manager-catalog-tabs{display:flex;gap:1.5rem;padding:0 1.25rem;border-bottom: 0}
.manager-configuration .manager-catalog-tabs>button{border:0;border-bottom:3px solid transparent;border-radius:0;background:#fff;color:#64748b;padding:1.125rem 0;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:none}
.manager-configuration .manager-catalog-tabs>button[aria-selected="true"]{color:#2f6bff;border-bottom-color:#2f6bff}
.manager-catalog-tabs>button:focus-visible{outline:2px solid #2f6bff;outline-offset:3px}
.manager-catalog [role="tabpanel"][hidden]{display:none!important}
.manager-catalog-toolbar{display:flex;justify-content:flex-end;align-items:center;padding:1.25rem;gap:1rem}
.manager-configuration .manager-catalog-toolbar>button,.manager-configuration .manager-catalog-edit{border:1px solid #2f6bff;border-radius:12px;background:#fff;color:#2f6bff;padding:0.5625rem 0.875rem;font-size:.875rem;font-weight:600;min-height:2.5rem;box-shadow:none;cursor:pointer}
.manager-configuration .manager-catalog-edit:hover,.manager-catalog-toolbar>button:hover{background:#eff4ff}
.manager-configuration .manager-catalog-service-grid{grid-template-columns:minmax(0,1.5fr) 90px minmax(0,1.2fr) 90px 90px}
.manager-catalog-service-grid>span:last-child{text-align:right}
.manager-catalog article.desktop-table-row{cursor:default}
.manager-catalog .desktop-service-editor,.manager-catalog [role="tabpanel"]>.desktop-form{border:0;border-top: 0;border-radius:0;box-shadow:none;margin:0}
@media(max-width:760px){.manager-configuration .manager-catalog-service-grid{grid-template-columns:minmax(0,1.3fr) 65px minmax(0,1fr) 65px 72px;gap:0.5rem}.manager-catalog-tabs{gap:1.25rem}.manager-catalog-toolbar{padding:1rem 1.25rem}}

/* Team list: one shared action style and comparable data columns. */
.manager-configuration .manager-configuration-action{border:1px solid #2f6bff;border-radius:8px;background:#fff;color:#2f6bff;padding:0.5625rem 0.875rem;font-size:.875rem;font-weight:600;min-height:2.5rem;box-shadow:none}
.manager-team-columns,.manager-configuration .manager-team-list>.manager-team-row{display:grid;grid-template-columns:minmax(200px,1.5fr) minmax(140px,1fr) 70px minmax(150px,1fr) 100px;align-items:center;gap:1.25rem;padding:0.875rem 1.25rem}
.manager-team-columns{font-size:.75rem;color:#64748b;font-weight:600;border-bottom:1px solid #e5eaf2;background:#fff}
.manager-configuration .manager-team-list>.manager-team-row{font-size:.875rem;line-height:1.5}
.manager-team-person{display:flex;align-items:center;gap:0.75rem;min-width:0}
.manager-configuration .manager-team-person strong{font-size:.875rem;font-weight:600;white-space:normal;overflow-wrap:anywhere}
.manager-team-person .desktop-avatar{flex:none}
.manager-team-specialization,.manager-team-roles{min-width:0;overflow-wrap:anywhere}
.manager-team-row>.desktop-badge{justify-self:end}
.manager-team-mobile-label{display:none}
@media(max-width:1000px){.manager-team-columns,.manager-configuration .manager-team-list>.manager-team-row{grid-template-columns:minmax(160px,1.3fr) minmax(110px,1fr) 50px minmax(120px,1fr) 90px;gap:0.75rem}}
@media(max-width:760px){.manager-team-columns{display:none}.manager-configuration .manager-team-list>.manager-team-row{grid-template-columns:minmax(0,1fr) auto;gap:0.75rem 1rem}.manager-team-person{grid-column:1;grid-row:1}.manager-team-row>.desktop-badge{grid-column:2;grid-row:1}.manager-team-specialization,.manager-team-visits,.manager-team-roles{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.manager-team-mobile-label{display:inline;color:#64748b;font-size:.8125rem}}

.manager-specialist-back-link{color:#2f6bff;font-size:.875rem;font-weight:600;text-decoration:none;white-space:nowrap}
.manager-specialist-back-link:hover{text-decoration:underline}
.manager-specialist-back-link:focus-visible{outline:2px solid #2f6bff;outline-offset:4px;border-radius:2px}

.manager-specialist-tabs{display:flex;gap:1.5rem;padding:0 1.5rem;border-bottom: 0}
.manager-facility-settings { grid-template-columns: minmax(0, 1fr); }
.manager-facility-settings > [data-facility-panel][hidden] { display: none; }
.manager-facility-tabs { flex-wrap: wrap; }
.manager-facility-settings .desktop-form-actions { justify-content: flex-end; }
.manager-specialist-tabs button{border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;padding:1rem 0;color:#64748b;font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}
.manager-specialist-tabs button[aria-selected="true"]{border-bottom-color:#2f6bff;color:#2f6bff}
.manager-specialist-tabs button:focus-visible{outline:2px solid #2f6bff;outline-offset:3px}
.manager-specialist-editor [data-specialist-panel][hidden]{display:none!important}
.manager-specialist-editor .manager-specialist-section{padding:1.5rem}
.manager-configuration .manager-specialist-editor input:not([type="checkbox"]):not([type="radio"]),.manager-configuration .manager-specialist-editor select{padding:0.625rem 0.75rem}
.manager-configuration .manager-specialist-editor textarea{padding:0.75rem}
.manager-specialist-editor .manager-specialist-access{padding:1.5rem 0 0;margin-top:24px}
/* Catalogue hierarchy: title, compact controls and readable comparable rows. */
.manager-catalog-heading{padding:1.5rem 1.25rem 1rem}
.manager-configuration .manager-catalog-heading h2{margin:0;font-size:1.25rem;line-height:1.4;font-weight:700;color:#172033}
.manager-catalog-controls{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:0 1.25rem;border-bottom:0;box-shadow:none}
.manager-catalog-controls .manager-catalog-tabs{padding:0;gap:1.5rem;border-bottom:0;align-self:stretch;margin-bottom:0}
.manager-configuration .manager-catalog-tabs>button{padding:0.875rem 0;font-size:.875rem;line-height:1.5;background:transparent}
.manager-catalog [hidden]{display:none!important}
.manager-configuration .manager-catalog-add,.manager-configuration .manager-catalog-back,.manager-configuration .manager-catalog .desktop-form-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;min-height:2.5rem;padding:0.5625rem 0.875rem;border:1px solid #2f6bff;border-radius:12px;background:#fff;color:#2f6bff;font-size:.875rem;font-weight:600;box-shadow:none;cursor:pointer}
.manager-catalog-add svg{width:16px;height:16px}
.manager-configuration .manager-catalog-service-grid{grid-template-columns:minmax(180px,1.5fr) 70px 85px minmax(140px,1.4fr) 100px;gap:1rem}
.manager-configuration .manager-catalog .desktop-table-head{font-size:.75rem;font-weight:600;background:#fff;padding-top:1rem;padding-bottom:1rem}
.manager-configuration .manager-catalog .desktop-table-row{font-size:.9375rem;line-height:1.5;padding-top:1.125rem;padding-bottom:1.125rem;align-items:center}
.manager-configuration .manager-catalog .manager-catalog-name strong{font-size:.9375rem;font-weight:600;white-space:normal;overflow-wrap:anywhere;color:inherit}
.manager-catalog .desktop-service-money{font-size:.9375rem;font-weight:600;white-space:nowrap}
.manager-catalog-payment{overflow-wrap:anywhere}
.manager-catalog .desktop-service-editor,.manager-catalog .manager-catalog-editor{border:0;border-radius:0;margin:0;box-shadow:none}
.manager-catalog .manager-catalog-editor .desktop-panel-head{border-top: 0}
.manager-configuration .manager-catalog-editor .desktop-panel-head h2{font-size:1.125rem;overflow-wrap:anywhere}
.manager-catalog .desktop-form-actions{justify-content:space-between}
.manager-catalog.is-editing-offer .manager-catalog-controls{display:none}
@media(max-width:900px){.manager-configuration .manager-catalog-service-grid{grid-template-columns:minmax(140px,1.4fr) 60px 75px minmax(120px,1.3fr) 95px;gap:0.625rem}}
@media(max-width:760px){.manager-catalog-controls{flex-wrap:wrap;gap:0.75rem}.manager-catalog-controls .manager-catalog-tabs{flex:1;gap:1.25rem}.manager-catalog-add{margin-left:auto}.manager-configuration .manager-catalog .desktop-table-head{display:none}.manager-configuration .manager-catalog article.desktop-table-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.manager-catalog article.desktop-table-row>span{display:grid;gap:0.25rem;text-align:left}.manager-catalog article.desktop-table-row>span::before{content:attr(data-label);font-size:.8125rem;color:#64748b;font-weight:400}.manager-catalog article.desktop-table-row>span:first-child{grid-column:1/-1}.manager-catalog article.desktop-table-row>span:last-child{grid-column:1/-1;justify-items:end}.manager-catalog article.desktop-table-row>span:last-child::before{display:none}}


.manager-configuration .manager-service-active-switch{display:inline-flex;align-items:center;width:36px;height:20px;min-height:0;padding:0.125rem;border:0;border-radius:999px;background:#cbd5e1;cursor:pointer;box-shadow:none;transition:background .15s}
.manager-service-active-switch>span{width:16px;height:16px;border-radius:50%;background:#fff;transform:translateX(0);transition:transform .15s}
.manager-configuration .manager-service-active-switch[aria-checked="true"]{background:#2f6bff}
.manager-service-active-switch[aria-checked="true"]>span{transform:translateX(16px)}
.manager-service-active-switch:focus-visible{outline:2px solid #2f6bff;outline-offset:3px}
.manager-service-active-switch:disabled{opacity:.5;cursor:wait}

/* Staff state controls are independent from opening a profile. */
.manager-team-columns,.manager-configuration .manager-team-list>.manager-team-row{grid-template-columns:minmax(180px,1.3fr) minmax(120px,1fr) minmax(140px,1fr) minmax(140px,1fr) 80px;gap:1rem}
.manager-configuration .manager-team-row>.manager-team-person{display:flex;align-items:center;gap:0.75rem;min-width:0;width:auto;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#172033;text-align:left;cursor:pointer}
.manager-team-person strong{overflow-wrap:anywhere;font-size:.875rem}
.manager-team-person:hover strong{color:#2f6bff}
.manager-team-person:focus-visible{outline:2px solid #2f6bff;outline-offset:4px}
.manager-team-phone a{color:#172033;text-decoration:none;white-space:nowrap}
.manager-team-phone a:hover{color:#2f6bff}
.manager-team-no-phone{color:#7b8aa0}
.manager-team-row>.manager-team-active-switch{justify-self:end}
.manager-team-active-switch:disabled{cursor:not-allowed}
.manager-configuration .manager-staff-service-head{display:flex;justify-content:space-between;gap:1.5rem;font-size:.75rem;font-weight:600;color:#64748b;margin:20px 0 10px;padding-right:0}
.manager-configuration .schedule-service-row.manager-staff-service-row{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:1.5rem;align-items:center}
.manager-staff-service-name strong{font-size:.875rem;font-weight:600}
.manager-staff-service-switch{position:relative;display:block;width:36px;height:20px;justify-self:end}
.manager-staff-service-switch input{position:absolute;inset:0;z-index:1;width:36px!important;min-height:1.25rem!important;height:auto!important;min-height:0!important;margin:0!important;opacity:0;cursor:pointer}
.manager-staff-service-switch>span{display:block;box-sizing:border-box;width:36px;height:20px;padding:0.125rem;border-radius:999px;background:#cbd5e1}
.manager-staff-service-switch i{display:block;width:16px;height:16px;border-radius:50%;background:#fff}
.manager-staff-service-switch input:checked+span{background:#2f6bff}
.manager-staff-service-switch input:checked+span i{transform:translateX(16px)}
.manager-staff-service-switch input:focus-visible+span{outline:2px solid #2f6bff;outline-offset:3px}
.manager-staff-service-switch input:disabled{cursor:not-allowed}
.manager-staff-service-switch input:disabled+span{opacity:.5}
.manager-configuration .manager-specialist-inactive-note{margin:0;padding:1.25rem 1.5rem;color:#64748b;font-size:.875rem}
.manager-staff-status-dialog{max-width:480px;padding:1.5rem}
.manager-staff-status-dialog h2{margin:0 0 16px;font-size:1.125rem}
.manager-staff-status-dialog p{margin:0;font-size:.875rem;line-height:1.6;color:#64748b}
.manager-staff-status-dialog .desktop-form-actions{padding:1.5rem 0 0;justify-content:space-between;border:0}
@media(max-width:1000px){.manager-team-columns,.manager-configuration .manager-team-list>.manager-team-row{grid-template-columns:minmax(150px,1.3fr) minmax(100px,1fr) minmax(120px,1fr) minmax(110px,1fr) 70px;gap:0.75rem}}
@media(max-width:760px){.manager-configuration .manager-team-list>.manager-team-row{grid-template-columns:minmax(0,1fr) auto;gap:0.75rem 1rem}.manager-team-row>.manager-team-active-switch{grid-column:2;grid-row:1}.manager-team-phone{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;gap:1rem}}

/* Align the staff status heading and switches on the same centered column. */
.manager-team-columns>span:last-child{justify-self:stretch;text-align:center}
.manager-configuration .manager-team-list>.manager-team-row>.manager-team-active-switch{justify-self:center}

.manager-catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:1.25rem}
@media(max-width:760px){.manager-catalog-heading{flex-wrap:wrap;gap:0.75rem}}

/* Keep the specialist photo upload hint compact. */
.manager-configuration .desktop-specialist-avatar-editor label small{font-size:0.75rem}

/* Shared record-name navigation for manager lists. */
.manager-configuration .manager-record-link,.manager-configuration .manager-team-row>.manager-record-link{color:#2f6bff;text-decoration:none;font-weight:600}
.manager-record-link:hover{text-decoration:underline}
.manager-record-link:focus-visible{outline:2px solid #2f6bff;outline-offset:4px;border-radius:2px}
.manager-catalog-service-grid>span:last-child{text-align:left}
@media(max-width:760px){.manager-catalog article.desktop-table-row>span:last-child{grid-column:auto;justify-items:start}.manager-catalog article.desktop-table-row>span:last-child::before{display:block}}

/* Keep staff links blue and avoid doubled heading separators. */
.manager-configuration .manager-team-row>.manager-team-person strong{color:#2f6bff}
.manager-configuration .manager-team-list>.manager-team-columns+.manager-team-row{border-top:0}

/* Manual appointment layer follows the shared manager form pattern. */
.manager-visit-modal-dialog:has(.desktop-appointment-form){width:min(640px,100%);border-radius:12px;background:#fff}
.manager-visit-modal .desktop-appointment-form{margin:0;border:0;border-radius:12px;background:#fff}
.manager-visit-modal .desktop-appointment-form .desktop-panel-head{min-height:0;padding:1.5rem 1.5rem 1rem;border:0}
.manager-visit-modal .desktop-appointment-form .desktop-panel-head h2{margin:0;font-size:1.25rem;line-height:1.4;font-weight:700}
.manager-visit-modal .desktop-appointment-form .desktop-panel-head p{margin:0;font-size:.8125rem;line-height:1.5}
.manager-visit-modal .desktop-appointment-form .desktop-form-grid{padding:0 1.5rem;gap:1rem}
.manager-visit-modal .desktop-appointment-form .desktop-form-grid label{gap:0.375rem;font-size:.75rem;font-weight:500;min-width:0}
.manager-appointment-optional{color:#94a3b8;font-weight:400}
.manager-visit-modal .desktop-appointment-form input,.manager-visit-modal .desktop-appointment-form select{box-sizing:border-box;width:100%;min-width:0;min-height:2.75rem;padding:0.625rem 0.75rem;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#172033;font:inherit;font-size:.875rem}
.manager-visit-modal .desktop-appointment-form input::placeholder{color:#94a3b8}
.manager-visit-modal .desktop-appointment-form input:focus-visible,.manager-visit-modal .desktop-appointment-form select:focus-visible{outline:2px solid #2f6bff;outline-offset:2px}
.manager-visit-modal .desktop-appointment-form .manager-appointment-price-field output{box-sizing:border-box;min-height:2.75rem;padding:0.625rem 0.75rem;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#172033;font-size:1rem;font-weight:600;line-height:1.4}
.manager-visit-modal .desktop-appointment-form .desktop-form-actions{padding:1.5rem;gap:1rem;border:0;justify-content:space-between}
.manager-visit-modal .desktop-appointment-form .desktop-form-actions>button{min-height:2.5rem;padding:0.5625rem 1rem;border:1px solid #2f6bff;border-radius:12px;background:#fff;color:#2f6bff;font:inherit;font-size:.875rem;font-weight:600;box-shadow:none;cursor:pointer}
.manager-visit-modal .desktop-appointment-form .desktop-form-actions>button:hover{background:#eff4ff}
.manager-visit-modal .desktop-appointment-form .desktop-form-actions>button:focus-visible{outline:2px solid #2f6bff;outline-offset:3px}
@media(max-width:600px){.manager-visit-modal .desktop-appointment-form .desktop-form-grid{grid-template-columns:minmax(0,1fr)}.manager-visit-modal-dialog:has(.desktop-appointment-form){max-height:calc(100dvh - 24px)}}

/* Specialist details follow the supplied profile form design. */
.manager-specialist-editor .manager-specialist-section .desktop-form-grid{padding:0;gap:1rem 0.875rem}
.manager-specialist-editor .manager-specialist-section h3{margin:0 0 16px;font-size:1rem;line-height:1.4;font-weight:700}
.manager-specialist-editor .desktop-form-grid label{font-size:.75rem;font-weight:500;gap:0.375rem}
.manager-configuration .manager-specialist-editor .desktop-panel-head{padding:1.25rem 1.5rem 0;min-height:0}
.manager-specialist-editor .manager-specialist-tabs{margin:0 24px;padding:0;gap:1.5rem}
.manager-specialist-editor .manager-specialist-tabs button{padding:0.75rem 0}
.manager-specialist-editor .desktop-form-actions{justify-content:space-between;padding:0 1.5rem 1.5rem;border:0}
.desktop-specialist-avatar-editor{display:grid;gap:0.5rem;align-items:initial;min-width:0}
.desktop-specialist-avatar-editor .manager-specialist-avatar-row{display:flex;align-items:center;gap:0.875rem;min-width:0}
.desktop-specialist-avatar-editor .desktop-avatar.is-large{border-radius:50%;font-size:.875rem;background:#eaf1ff;color:#2f6bff}
.desktop-specialist-avatar-editor .manager-specialist-avatar-row>input[type="file"]{flex:1;min-width:0;width:100%;box-sizing:border-box}
.desktop-specialist-avatar-editor input::file-selector-button{border:0;border-radius:4px;background:#eaf1ff;color:#2f6bff;padding:0.375rem 0.625rem;margin-right:10px;font:inherit;cursor:pointer}
.desktop-specialist-avatar-editor>small{font-size:.75rem;line-height:1.5;font-weight:400;color:#94a3b8}
.manager-specialist-phone-control{display:flex;align-items:stretch;min-width:0;border:1px solid #cbd5e1;border-radius:12px;background:#fff;overflow:hidden}
.manager-specialist-phone-prefix{display:flex;align-items:center;justify-content:center;gap:0.5rem;padding:0 0.75rem;white-space:nowrap;color:#172033;font-size:.875rem;border-right:1px solid #e5eaf2}
.manager-specialist-phone-prefix svg{width:12px;height:12px;fill:none;stroke:#94a3b8;stroke-width:1.5}
.manager-configuration .manager-specialist-editor .manager-specialist-phone-control input{width:100%;min-width:0;min-height:2.5rem;border:0;border-radius:0;background:#fff}
@media(max-width:600px){.manager-specialist-editor .manager-specialist-section .desktop-form-grid{grid-template-columns:minmax(0,1fr)}.manager-specialist-editor .desktop-panel-head{align-items:flex-start}.manager-specialist-back-link{white-space:normal}}

/* Specialist editor: match the reference separators and cancel action. */
.manager-configuration .manager-specialist-editor .desktop-panel-head{border:0}
.manager-configuration .manager-specialist-editor .manager-specialist-section{border-bottom:0}
.manager-configuration .manager-specialist-editor .desktop-form-actions{border:0}
.manager-configuration .manager-specialist-editor .desktop-form-actions>[data-action="close-specialist-detail"]{border-color:#cbd5e1;color:#172033;background:#fff}
.manager-configuration .manager-specialist-editor .desktop-form-actions>[data-action="close-specialist-detail"]:hover{border-color:#94a3b8;background:#f8fafc}

.manager-heading-with-help { display: flex; align-items: center; gap: 0.5rem; }
.manager-heading-help { position: relative; display: inline-flex; flex: 0 0 auto; }
.manager-heading-help-trigger { display: inline-grid; place-items: center; width: 18px; min-height: 1.125rem; height: auto; padding: 0; border: 1px solid #8795ad; border-radius: 50%; background: transparent; color: #64748b; font: inherit; font-size: 0.75rem; font-weight: 600; line-height: 1; cursor: pointer; }
.manager-heading-help-trigger:focus-visible { outline: 2px solid #2f6bff; outline-offset: 3px; }
.manager-heading-help-tooltip { position: absolute; top: calc(100% + 8px); left: 0; z-index: 30; width: max-content; max-width: min(280px, 70vw); padding: 0.625rem 0.75rem; border: 1px solid #e5eaf2; border-radius: 8px; background: #fff; color: #475569; font-size: 0.75rem; font-weight: 400; line-height: 1.5; visibility: hidden; opacity: 0; pointer-events: none; }
.manager-heading-help:hover .manager-heading-help-tooltip,
.manager-heading-help:focus-within .manager-heading-help-tooltip { visibility: visible; opacity: 1; }

/* Match the patient profile selector typography and chevron. */
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/manrope-600.ttf") format("truetype"); }
.manager-role-switcher { box-sizing: border-box; gap: 1.125rem; min-width: 116px; min-height: 2.5rem; padding: 0 0.75rem; border: 1px solid #d0d5dd; border-radius: 10px; background: #fff; color: #182230; font-family: "Manrope", Inter, system-ui, sans-serif; font-size: 1rem; font-weight: 600; line-height: normal; }
.manager-role-chevron { display: grid; place-items: center; flex: none; width: 18px; height: 18px; color: #667085; }
.manager-role-chevron svg { display: block; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.manager-role-switcher:hover { border-color: #2f6bff; color: #2f6bff; }

/* Service editor actions and numeric units. */
.manager-catalog .manager-service-edit-actions { display: flex; justify-content: space-between; padding: 1.25rem 1.5rem 1.5rem; border-top: 0; gap: 1.5rem; }
.manager-configuration .manager-catalog .manager-service-edit-actions>[data-action="close-service-detail"] { border-color: #cbd5e1; color: #172033; background: #fff; }
.manager-service-removal { margin-top: 12px; padding-top: 1.5rem; }
.manager-service-removal summary { color: #b42318; font-weight: 600; padding: 0.5rem 0; }
.manager-service-removal summary:focus-visible { outline: 2px solid #b42318; outline-offset: 4px; }
.manager-service-removal .desktop-danger { border: 1px solid #b42318; border-radius: 12px; background: #fff; color: #b42318; padding: 0.5625rem 0.875rem; font: inherit; font-size: .875rem; font-weight: 600; cursor: pointer; }
.manager-service-removal .desktop-danger:hover { background: #fef3f2; }
.manager-service-unit-field { position: relative; display: block; min-width: 0; }
.manager-service-unit-field input { box-sizing: border-box; width: 100%; padding-right: 3.5rem; }
.manager-service-unit-field>span { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: var(--sub); pointer-events: none; }

/* Focused treatment editor: one title and compact desktop field rows. */
.manager-catalog .manager-catalog-editor .desktop-panel-head{border-top:0}
.manager-configuration .manager-catalog .manager-service-back-link{min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#2f6bff;text-decoration:none;white-space:nowrap}
.manager-service-back-link:hover{text-decoration:underline}
.manager-service-back-link:focus-visible{outline:2px solid #2f6bff;outline-offset:4px}
.manager-catalog-editor .manager-service-section-fields{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
@media(max-width:1000px) and (min-width:701px){.manager-catalog-editor .manager-service-section-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.manager-catalog-editor .manager-service-section-fields{grid-template-columns:minmax(0,1fr)}}

/* Service actions are separated from the fields by spacing only. */
.manager-configuration .manager-catalog .desktop-form-actions{border-top:0}

.manager-facility-settings .desktop-panel-head .manager-facility-save {
  margin-left: auto;
  flex-shrink: 0;
  color: #2563eb;
  background: #fff;
  border: 1px solid #2563eb;
  box-shadow: none;
}
.manager-facility-settings .desktop-panel-head .manager-facility-save:hover {
  background: #eff6ff;
}

.manager-facility-document { width: min(720px, calc(100vw - 48px)); max-height: 85vh; padding: 1.5rem; border: 1px solid #E5EAF2; border-radius: 12px; color: #172033; }
.manager-facility-document::backdrop { background: rgb(17 24 39 / 40%); }
.manager-facility-document header { display: flex; justify-content: space-between; align-items: flex-start; gap: 1.5rem; margin-bottom: 24px; }
.manager-facility-document h2 { margin: 0; font-size: 1.25rem; }
.manager-facility-document button { background: white; color: #172033; border: 1px solid #E5EAF2; border-radius: 8px; padding: 0.375rem 0.75rem; cursor: pointer; }
.manager-facility-document-body { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 1rem; line-height: 1.6; }


/* Facility settings follow the shared header, tabs, content pattern. */
.manager-facility-settings > .manager-facility-tabs{margin:0 24px;padding:0;gap:1.5rem}
.manager-facility-settings > [data-facility-heading][hidden]{display:none}
.manager-facility-settings > .manager-facility-tab-panel{padding:1.5rem;border:0;box-shadow:none}
.manager-configuration .manager-facility-tab-panel .desktop-form-grid{padding:0}
.manager-facility-tab-panel .desktop-logo-editor{padding:0;margin-bottom:24px}
.manager-facility-tab-panel .desktop-facility-visibility{margin:24px 0 0}
.manager-configuration .manager-facility-phone-control select{width:96px;flex:0 0 96px;border:0;border-right:1px solid #e5eaf2;border-radius:0;background:transparent;padding:0 0.75rem;align-self:stretch;margin:0}
.manager-configuration .manager-facility-phone-control input{min-width:0;width:100%;border:0;border-radius:0}



/* Table boundaries remain visible after removing decorative panel lines. */
.desktop-table-head,
.manager-dashboard-table-head,
.desktop-station-columns,
.manager-team-columns,
.desktop-notification-table-head,
.desktop-slot-list .manager-slot-columns-head {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.desktop-table-head + .desktop-table-row,
.manager-dashboard-table-head + .manager-dashboard-row,
.desktop-station-columns + .desktop-station-row,
.desktop-notification-table-head + .desktop-notification-rule,
.desktop-notification-table-head + .desktop-notification-history-row { border-top: 0; }
.manager-calendar-workspace .desktop-calendar-day-plan .desktop-table-row.desktop-appointment-grid { border-bottom-color: var(--z-row-separator, #f1f3f5); }

/* Availability filters use spacing; only the column headings need a separator. */
#manager-calendar-panel-availability .manager-calendar-booking-filters {
  border-bottom: 0;
  padding-bottom: 1.5rem;
}
#manager-calendar-panel-availability .manager-slot-columns-head {
  border-top: 0;
  border-bottom: 1px solid var(--line, #e5eaf2);
}

/* The action track must have the same width in headings and data rows. */
.desktop-slot-list .manager-slot-columns-head > span:last-child,
.desktop-slot-list .manager-slot-columns > .desktop-slot-add { justify-self: start; }

/* Keep the selected availability date beside the section title. */
.manager-availability-heading-date { white-space: normal; }
.manager-availability-heading-date > span { font-size: .5em; vertical-align: middle; margin: 0 .5em; }

/* Patient roster: one heading, count and search in the same card. */
.desktop-patients .desktop-patient-roster { padding: 1.5rem; box-shadow: none; }
.desktop-patients .desktop-patient-roster-head { min-height: 0; margin-bottom: 16px; padding: 0; border: 0; }
.desktop-patient-title { display: flex; align-items: center; gap: 0.5rem; }
.desktop-patient-title h2 { margin: 0; font-size: var(--z-font-size-18, 1.125rem); font-weight: 700; }
.desktop-patient-count { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; min-height: 1.5rem; padding: 0 0.5rem; border: 0; border-radius: 999px; background: #f1f3f5; color: #6b7280; font-size: var(--z-font-size-12, .75rem); font-weight: 700; }
.desktop-patient-search-row { display: flex; align-items: center; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 24px; }
.desktop-patient-search { display: flex; align-items: center; width: min(474px, 100%); min-height: 2.75rem; border: 1px solid #cbd5e1; border-radius: 8px; background: #fff; }
.desktop-patient-search:focus-within { border-color: #2f6bff; outline: 2px solid #eaf0ff; }
.desktop-patient-search button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; align-self: stretch; border: 0; border-radius: 8px; background: transparent; color: #94a3b8; cursor: pointer; }
.desktop-patient-search button svg { width: 20px; height: 20px; }
.desktop-patient-search input { width: 100%; min-width: 0; min-height: 2.625rem; border: 0; outline: 0; border-radius: 8px; background: transparent; padding: 0 0.75rem 0 0; color: var(--text); font: inherit; font-size: var(--z-font-size-14, .875rem); }
.desktop-patient-search input::placeholder { color: #94a3b8; opacity: 1; }
@media (max-width: 680px) {
  .desktop-patients .desktop-patient-roster { padding: 1rem; }
}

/* Rolling windows contain only their consecutive dates. */
.manager-calendar-rolling .desktop-appointment-calendar-grid button { display: grid; grid-template-columns: auto auto; justify-content: center; align-content: center; row-gap: 0.125rem; min-height: 4rem; }
.manager-calendar-workspace .desktop-day-calendar.manager-calendar-rolling .desktop-appointment-calendar-grid button > .manager-calendar-day-weekday { grid-column: 1 / -1; font-size: .75rem; font-weight: 400; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button.is-today { border-width: 1.5px; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button.is-closed:not(.is-active) { color: #9ca3af; }
.manager-calendar-workspace .desktop-day-calendar .desktop-appointment-calendar-grid button.is-active { color: #fff; }


/* Patient column headings have one full-width separator below them. */
.desktop-patients .desktop-patient-roster > .desktop-table > .desktop-table-head {
  position: relative;
  border-top: 0;
  border-bottom: 0;
}
.desktop-patients .desktop-patient-roster > .desktop-table > .desktop-table-head::after {
  content: "";
  position: absolute;
  right: -24px;
  bottom: 0;
  left: -24px;
  border-bottom: 1px solid var(--line, #e5eaf2);
  pointer-events: none;
}
@media (max-width: 680px) {
  .desktop-patients .desktop-patient-roster > .desktop-table > .desktop-table-head::after {
    right: -16px;
    left: -16px;
  }
}


/* Visit tabs separate navigation from both populated and empty lists. */
#manager-app .desktop-visits .desktop-appointments-layout .manager-visit-mode-tabs[role="tablist"] {
  border-bottom: 1px solid var(--line, #e5eaf2);
}
/* Patient sorting uses quiet icons and a single active column. */
.desktop-patient-roster .manager-patient-sort {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  min-width: 0;
  max-width: 100%;
  padding: .25rem 0;
  border: 0;
  border-radius: .25rem;
  background: transparent;
  color: #6b7280;
  font: inherit;
  text-align: left;
  white-space: normal;
  cursor: pointer;
}
.desktop-patient-roster .manager-patient-sort svg { flex: 0 0 1rem; width: 1rem; height: 1rem; color: #c7cbd1; }
.desktop-patient-roster .manager-patient-sort.is-active { color: #2f6bff; font-weight: 700; }
.desktop-patient-roster .manager-patient-sort.is-active svg { color: #2f6bff; }
.desktop-patient-roster .manager-patient-sort:focus-visible { outline: 2px solid #2f6bff; outline-offset: 3px; }
.manager-patient-roster-empty { padding: 24px 16px; gap: 8px; }

/* Patient roster fits its card, including enlarged account text. */
.desktop-patients .desktop-patient-roster .desktop-table { min-width: 0; width: 100%; max-width: 100%; overflow: visible; }
.desktop-patients .desktop-patient-roster .desktop-patient-grid { min-width: 0; width: 100%; box-sizing: border-box; gap: clamp(.375rem, 1vw, .875rem); }
.desktop-patients .desktop-patient-roster .desktop-patient-grid > * { min-width: 0; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.desktop-patients .desktop-patient-roster .desktop-patient-grid :is(button, strong, small) { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }

/* Shared Manager boxes: blue reference frame is a hover state only. */
.desktop-panel,
.desktop-kpi,
.desktop-dashboard .desktop-kpi,
.desktop-dashboard .desktop-kpi:is(.is-success, .is-info, .is-warning, .is-danger),
.manager-dashboard-schedule,
.desktop-dashboard .manager-dashboard-attention,
.desktop-calendar .desktop-calendar-toolbar,
.desktop-calendar .desktop-calendar-groups {
  border: 1px solid #E5EAF2;
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
  outline: 0;
}
/* Highlight only controls whose whole surface is clickable. */
.desktop-dashboard .manager-dashboard-attention > .desktop-alert-list > button,
.desktop-dashboard .manager-dashboard-attention > .desktop-alert-list > button:first-child {
  border: 1px solid #E5EAF2;
  border-radius: 12px;
  background: #fff;
  grid-template-columns: 40px minmax(0, 1fr) auto;
}
.desktop-dashboard .manager-dashboard-attention > .desktop-alert-list > button::after {
  content: "→";
  color: var(--accent);
  justify-self: end;
}
/* Five dashboard metrics share a row, then wrap on smaller screens. */
.desktop-dashboard .desktop-kpi-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 1100px) {
  .desktop-dashboard .desktop-kpi-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .desktop-dashboard .desktop-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
  .desktop-dashboard .desktop-kpi-grid { grid-template-columns: minmax(0, 1fr); }
}

/* Explicit consultation scope for the booking assistant. */
.manager-assistant-profile { margin: 0; }
.manager-assistant-profile .manager-service-section-fields > label:first-child,
.manager-assistant-profile .desktop-service-field-description { grid-column: 1 / -1; }
.manager-assistant-checks { grid-column: 1 / -1; border: 0; padding: 0; margin: 0; min-width: 0; }
.manager-assistant-checks legend { float: none; width: auto; font-size: var(--text-caption-size, .75rem); font-weight: 600; color: #6b7280; margin: 0 0 12px; }
.manager-assistant-check-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 24px; }
@media (max-width: 1000px) { .manager-assistant-check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .manager-assistant-check-grid { grid-template-columns: minmax(0, 1fr); } }
.manager-assistant-checks label { display: flex; align-items: flex-start; gap: 8px; min-width: 0; font-size: var(--text-body-size, .875rem); font-weight: 400; line-height: 1.5; }
.manager-assistant-checks input[type="checkbox"] { width: 16px; height: 16px; flex: 0 0 16px; margin: 2px 0 0; accent-color: #2F6BFF; }
.manager-assistant-counter { display: block; text-align: right; font-size: var(--text-caption-size, .75rem); font-weight: 400; color: #9CA3AF; }
.manager-assistant-counter.is-near-limit { color: #9A5A0B; }

.manager-assistant-profile textarea { min-height: 66px; height: 66px; max-height: 180px; overflow-y: auto; }


/* Service creation and editing share a compact, clearly grouped form. */
.manager-service-editor-layout .manager-service-sections {
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 24px;
}
.manager-service-editor-layout .manager-service-section {
  padding: 20px 0;
}
.manager-service-editor-layout .manager-service-section + .manager-service-section {
  border-top: 1px solid var(--line, #e5eaf2);
}
.manager-service-editor-layout .manager-service-section legend {
  margin: 0 0 16px;
  font-size: 1rem;
  line-height: 1.5;
}
.manager-service-editor-layout .manager-service-section legend small {
  display: block;
  margin-top: 2px;
  color: var(--sub, #6b7280);
  font-size: var(--text-caption-size, .75rem);
  font-weight: 400;
}
.manager-service-editor-layout .manager-service-section-fields {
  max-width: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.manager-service-editor-layout .manager-service-section-fields > label,
.manager-service-editor-layout .desktop-payment-variants > span {
  font-size: var(--text-caption-size, .75rem);
  line-height: 1.5;
}
.manager-service-editor-layout :is(input:not([type="checkbox"]), select, .desktop-payment-variant-dropdown > summary) {
  box-sizing: border-box;
  width: 100%;
  min-height: 40px;
  font-size: var(--text-body-size, .875rem);
}
.manager-service-editor-layout textarea {
  font-size: var(--text-body-size, .875rem);
  line-height: 1.5;
  min-height: 80px;
}
.manager-service-editor-layout .manager-assistant-settings {
  margin: 4px 0 20px;
  border: 1px solid var(--line, #e5eaf2);
  border-radius: 12px;
}
.manager-service-editor-layout .manager-assistant-settings > summary {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  list-style: none;
  cursor: pointer;
}
.manager-assistant-settings > summary::-webkit-details-marker { display: none; }
.manager-assistant-settings > summary > span:first-child { flex: 1; min-width: 0; }
.manager-assistant-settings > summary strong { display: block; font-size: 1rem; font-weight: 700; }
.manager-assistant-settings > summary small {
  display: block;
  margin-top: 2px;
  color: var(--sub, #6b7280);
  font-size: var(--text-caption-size, .75rem);
}
.manager-assistant-settings > summary::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  flex: 0 0 7px;
  margin-right: 3px;
}
.manager-assistant-settings[open] > summary::after { transform: rotate(225deg); }
.manager-assistant-settings > summary:focus-visible { outline: 2px solid var(--accent, #2f6bff); outline-offset: 3px; border-radius: 12px; }
.manager-assistant-state {
  border-radius: 999px;
  padding: 4px 10px;
  background: #eef0f3;
  color: var(--sub, #6b7280);
  font-size: var(--text-caption-size, .75rem);
  white-space: nowrap;
}
.manager-service-editor-layout .manager-assistant-profile {
  padding: 16px;
  border-top: 1px solid var(--line, #e5eaf2);
}
.manager-service-editor-layout .manager-service-section legend.manager-service-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.manager-service-editor-layout .manager-assistant-checks legend {
  float: none;
  width: auto;
  font-size: var(--text-caption-size, .75rem);
  font-weight: 600;
  margin-bottom: 8px;
}
.manager-service-editor-layout .manager-assistant-check-grid { gap: 8px; }
.manager-service-editor-layout .manager-assistant-checks label {
  align-items: center;
  border: 1px solid var(--line, #e5eaf2);
  border-radius: 8px;
  padding: 8px 10px;
  background: #fff;
  cursor: pointer;
}
.manager-assistant-checks label:has(input:checked) { border-color: #2f6bff; background: #eff4ff; }
.manager-assistant-checks label:has(input:focus-visible) { outline: 2px solid #2f6bff; outline-offset: 2px; }
.manager-service-editor-layout .manager-assistant-checks input[type="checkbox"] { min-height: 16px; padding: 0; margin: 0; }
@media (max-width: 1000px) {
  .manager-service-editor-layout .manager-service-section-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .manager-service-editor-layout .manager-service-sections { padding: 0 20px; }
  .manager-service-editor-layout .manager-service-section-fields,
  .manager-service-editor-layout .manager-assistant-check-grid { grid-template-columns: minmax(0, 1fr); }
  .manager-assistant-settings > summary { flex-wrap: wrap; gap: 8px; }
  .manager-assistant-settings > summary > span:first-child { flex-basis: calc(100% - 24px); }
  .manager-assistant-state { order: 1; }
}

/* Visit actions use quiet outlines while preserving cancellation emphasis. */
.manager-care-visit .desktop-detail-actions > button {
  border: 1px solid currentColor;
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}
.manager-care-visit .desktop-detail-actions > [data-action="open-reschedule"] {
  color: #6b7280;
}
.manager-care-visit .desktop-detail-actions > button:hover {
  background: #fff;
  box-shadow: none;
}
.manager-care-visit .desktop-detail-actions > button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

/* Payment flags retain the shared outline inside panel headings. */
.manager-care-payment .desktop-panel-head > .manager-payment-status {
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #fff;
  color: #111827;
  padding: .375rem .75rem;
  font-weight: 600;
}
/* Visit actions use the same 40px controls as other Manager forms. */
.manager-care-visit .desktop-detail-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 20px;
}
.manager-care-visit .desktop-detail-actions > p { flex-basis: 100%; }
.manager-care-visit .desktop-detail-actions > button,
.manager-care-payment .manager-care-body > [data-action="care-payment"] {
  width: auto;
  min-height: 40px;
  box-sizing: border-box;
  border-radius: 12px;
  padding: 0 14px;
  font-family: inherit;
  font-size: var(--text-body-size, .875rem);
  font-weight: 600;
  line-height: 1.5;
}

/* Shared appointment time/date treatment in dashboard and visit tables. */
.manager-main .manager-visit-time {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  text-align: left;
  font-variant-numeric: tabular-nums;
}
.manager-main .manager-visit-time > strong {
  color: #111827;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
}
.manager-main .manager-visit-time > small {
  color: #6b7280;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  white-space: nowrap;
  overflow-wrap: normal;
}

/* Payment records use the same compact status pills as appointment lists. */
.manager-payments-screen .desktop-payment-grid {
  min-width: 43rem;
  grid-template-columns: 6.25rem minmax(8.125rem, 1fr) 6.875rem 5.625rem 8.125rem 1.25rem;
}
.manager-payments-screen .desktop-payment-grid :is(.manager-payment-status, .desktop-badge) {
  white-space: nowrap;
  flex-shrink: 0;
}

/* Open the exact visit from any part of its payment record. */
.manager-payments-screen button.manager-payment-row { cursor: pointer; }

.manager-payment-open-hint { color: var(--accent); justify-self: end; font-size: .875rem; }

/* Shared interaction pattern for content cards and rows throughout Manager.
   Inset outlines keep table geometry unchanged and stay visible in scroll containers.
   Selected state is separate from transient hover; form controls keep their own styles. */
.manager-main {
  --content-hover-outline: 1px solid var(--accent);
  --content-focus-outline: 2px solid var(--accent);
}
@media (hover: hover) {
  .manager-main :is(button.desktop-kpi, .desktop-alert-list > button,
    .desktop-table-row, .manager-dashboard-row, .desktop-calendar-patient-grid[type="button"]):hover {
    border-color: var(--accent);
    outline: var(--content-hover-outline);
    outline-offset: -1px;
  }
  .manager-main :is(button.desktop-kpi, .desktop-alert-list > button,
    .desktop-table-row, .manager-dashboard-row, .desktop-calendar-patient-grid[type="button"]):not(.is-selected):hover {
    background: #fff;
  }
}
.manager-main :is(button.desktop-kpi, .desktop-alert-list > button,
  button.desktop-table-row, .manager-dashboard-row, .desktop-calendar-patient-grid[type="button"]):focus-visible,
.manager-main :is(.desktop-table-row, .manager-dashboard-row):has(:focus-visible) {
  border-color: var(--accent);
  outline: var(--content-focus-outline);
  outline-offset: -2px;
}

/* Patient rows reach the card edges; cell padding preserves column alignment. */
.desktop-patients .desktop-patient-roster {
  --patient-roster-inset: 1.5rem;
  padding: var(--patient-roster-inset);
}
.desktop-patients .desktop-patient-roster > .desktop-table {
  width: calc(100% + 2 * var(--patient-roster-inset));
  max-width: none;
  margin-inline: calc(-1 * var(--patient-roster-inset));
}
.desktop-patients .desktop-patient-roster > .desktop-table > .desktop-patient-grid {
  padding-inline: calc(var(--patient-roster-inset) + 1rem);
}
.desktop-patients .desktop-patient-roster > .desktop-table > .desktop-table-head::after {
  inset-inline: 0;
}
@media (max-width: 680px) {
  .desktop-patients .desktop-patient-roster { --patient-roster-inset: 1rem; }
}

/* Every table ends like the Visits table, including nested dashboard rows.
   The card has a 12px radius and a 1px border: rows use its 11px inner radius. */
.manager-main .desktop-table > .desktop-table-row:last-child,
.manager-main .desktop-dashboard-rows > .manager-dashboard-row:last-child {
  border-end-start-radius: 11px;
  border-end-end-radius: 11px;
}
/* No blank footer beneath the last patient: its outline meets the card edge. */
.desktop-patients .desktop-patient-roster:has(> .desktop-table) {
  padding-bottom: 0;
}
