.team-workspace, .team-editor, .team-form, .team-list, .team-periods { display: grid; gap: var(--atende-space-6); min-width: 0; }
.team-heading, .team-toolbar, .team-copy-hours, .team-title { display: flex; align-items: center; gap: var(--atende-space-4); flex-wrap: wrap; }
.team-heading { justify-content: space-between; align-items: flex-start; }
.team-heading h2 { margin: 0 0 var(--atende-space-2); }
.team-heading p, .team-form-section p, .team-note { color: var(--atende-color-muted); margin-bottom: 0; }
.team-heading > div { flex: 1; min-width: 16rem; }
.team-toolbar { align-items: end; }
.team-toolbar > :first-child { flex: 1; }
.team-field { display: grid; gap: var(--atende-space-1); min-width: 0; }
.team-field .form-label { margin-bottom: 0; }
.team-title { margin-bottom: var(--atende-space-2); }
.team-facts { display: grid; gap: var(--atende-space-3); margin: var(--atende-space-4) 0 0; }
.team-facts dt { color: var(--atende-color-muted); font-size: .875rem; font-weight: 500; }
.team-facts dd { margin: 0; }
.team-note { font-size: .875rem; margin-top: var(--atende-space-3); }
.team-editor > [data-team-back], .team-add-period { justify-self: start; }
.team-form-section { padding: var(--atende-space-6); display: grid; gap: var(--atende-space-4); }
.team-form-section h3, .team-deactivation h3 { font-size: 1.125rem; margin: 0; }
.team-service-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--atende-space-3); }
.team-service-option { display: flex; align-items: flex-start; gap: var(--atende-space-3); border: 1px solid var(--atende-color-border); border-radius: var(--atende-radius-sm); padding: var(--atende-space-4); cursor: pointer; }
.team-service-option input { flex-shrink: 0; }
.team-service-option span { min-width: 0; overflow-wrap: anywhere; }
.team-service-option small { display: block; color: var(--atende-color-muted); margin-top: var(--atende-space-1); }
.team-period { display: grid; grid-template-columns: 2fr 1fr 1fr auto; gap: var(--atende-space-3); align-items: end; border: 1px solid var(--atende-color-border); border-radius: var(--atende-radius-md); padding: var(--atende-space-4); min-width: 0; }
.team-period label { min-width: 0; }
.team-copy-hours { align-items: end; }
.team-hours-actions { display: grid; gap: var(--atende-space-4); min-width: 0; }
.team-form-actions { position: sticky; bottom: 0; display: flex; justify-content: flex-end; gap: var(--atende-space-3); padding: var(--atende-space-4); background: var(--atende-color-surface); border-top: 1px solid var(--atende-color-border); z-index: 2; }
.team-deactivation { border-top: 1px solid var(--atende-color-border); padding-top: var(--atende-space-6); display: grid; justify-items: start; gap: var(--atende-space-3); }
.team-professional-label { display: block; color: var(--atende-color-muted); font-size: .875rem; }
@media (max-width: 767px) {
  .team-form-section { padding: var(--atende-space-4); }
  .team-person-actions, .team-person-actions .btn { width: 100%; }
  .team-service-options { grid-template-columns: 1fr; }
  .team-toolbar > *, .team-heading > .btn { width: 100%; }
}

/* The legacy navigation explicitly sets display:flex, overriding the native hidden rule. */
[data-team-hidden="true"] { display: none !important; }
.establishment-agenda-professional-filter { padding: var(--atende-space-4) var(--atende-space-6); border-bottom: 1px solid var(--atende-color-border); }
.establishment-agenda-professional-filter .team-field { max-width: 22rem; }

/* Avatar, name row and chevron reuse the waitlist card presentation. */
.team-person .team-title { gap: var(--atende-space-2); }
.team-person .waitlist-client > .badge { max-width: 100%; white-space: normal; text-align: left; }
.team-person-details { display: grid; gap: var(--atende-space-3); min-width: 0; overflow-wrap: anywhere; }
.team-person .team-facts { margin: 0; }
.team-person-actions { display: grid; gap: var(--atende-space-2); }
.team-editor [hidden] { display: none !important; }
.team-step-access { display: grid; gap: var(--atende-space-4); }
@media (max-width: 42rem) {
  .main.establishment-shell-main:has(> .team-preview-notice) { grid-template-rows: auto auto minmax(0, 1fr); }
  .team-preview-notice .alert { margin-bottom: 0; }
  .team-hours-actions { width: max-content; max-width: 100%; }
  .team-hours-actions > div > [data-team-establishment-hours] { width: 100%; white-space: normal; }
  .team-hours-actions .team-copy-hours { display: grid; grid-template-columns: minmax(0, 1fr); contain: inline-size; }
  .team-hours-actions .team-copy-hours > *, .team-hours-actions select { width: 100%; min-width: 0; }
  .team-hours-actions:not(:has([data-team-establishment-hours])) { width: 100%; }
  .establishment-bootstrap .establishment-section-nav:has([data-setup-section="professionals"]) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .establishment-bootstrap .establishment-section-nav:has([data-setup-section="professionals"]) .establishment-nav-copy { min-width: 0; width: 100%; overflow-wrap: anywhere; text-align: center; }
  .team-editor .team-stepper { position: static; padding-inline: 0; scroll-margin-top: 9rem; }
  .team-editor .team-step-progress { padding: 0; }
  .team-editor .team-form-actions { position: static; padding: var(--atende-space-3) 0 0; }
  .team-editor .team-form-actions > button { flex: 1; }
  .team-editor .team-form { gap: var(--atende-space-3); }
}
.team-person .waitlist-entry-toggle:focus-visible { outline: 3px solid var(--atende-focus-ring); outline-offset: 2px; }
@media (max-width: 47.9375rem) {
  .team-list { gap: var(--atende-space-3); }
  .team-person { cursor: pointer; }
  .team-person:not(.is-expanded) .waitlist-entry-head { border-bottom: 0; padding-bottom: 0; }
  .team-person:not(.is-expanded) .team-person-details { display: none; }
}

@media (max-width: 900px) {
  .mobile-navigation.team-staff-navigation { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mobile-drawer-open .mobile-navigation.team-staff-navigation { visibility: hidden; }
}
