/* A bounded pair: equal widths, coordinated horizontal swaps, native controls. */
.profile-pair { width: min(100%, 390px); min-width: 0; margin-bottom: 26px; }
.profile-pair-track { display: flex; flex-direction: column; gap: 12px; padding: 8px; margin: -8px; overflow: hidden; }
.profile-pair-item { flex: none; width: 100%; min-width: 0; }
.profile-pair .availability,
.profile-pair .profile-clock { box-sizing: border-box; width: 100%; max-width: 100%; margin: 0; }
.profile-pair .availability { display: flex; justify-content: center; min-height: 40px; text-align: center; }
.profile-pair .availability > span:last-child { min-width: 0; overflow-wrap: anywhere; }
.profile-pair.is-pair-ready .profile-pair-track { touch-action: pan-y pinch-zoom; cursor: grab; }
.profile-pair.is-pair-dragging .profile-pair-track { cursor: grabbing; }
.profile-pair:is(.is-pair-dragging, .is-pair-swapping) .profile-pair-item { will-change: transform, opacity; }
.profile-pair-tools { display: flex; justify-content: flex-end; margin-top: 7px; }
.profile-pair-tools[hidden] { display: none !important; }
.profile-pair-swap { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 36px; padding: 5px 9px; border: 1px solid transparent; border-radius: 8px; background: transparent; color: var(--muted); font: 550 9px/1.4 var(--font-site); cursor: pointer; transition: color .2s ease, background-color .2s ease, border-color .2s ease; -webkit-tap-highlight-color: transparent; }
.profile-pair-swap svg { width: 15px; height: 15px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.profile-pair-swap:is(:hover, :focus-visible) { color: var(--navy); border-color: var(--line); background: var(--surface); }
.profile-pair-swap:focus-visible { outline: 2px solid #6386d5; outline-offset: 2px; }
.profile-pair-swap[aria-disabled="true"] { cursor: default; }
.profile-pair-announcement { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (prefers-reduced-motion: reduce) { .profile-pair-swap { transition: none; } }
@media print { .profile-pair-tools { display: none !important; } .profile-pair { margin-bottom: 20px; } .profile-pair-track { overflow: visible; } }
