/* Auth modal */
.modal-backdrop { position: fixed; inset: 0; background: color-mix(in srgb, var(--bg-page) 30%, rgba(8, 8, 12, 0.6)); display: flex; align-items: center; justify-content: center; z-index: 150; }
.modal-card { background: var(--surface-1); border: 1px solid var(--hairline-strong); border-radius: var(--radius-lg); width: 380px; max-width: 92vw; }
.modal-head { display: flex; justify-content: space-between; align-items: center; padding: 16px 18px; border-bottom: 1px solid var(--hairline); }
.modal-x { background: none; border: none; color: var(--text-muted); font-size: 1rem; cursor: pointer; }
.modal-body { padding: 18px; display: flex; flex-direction: column; gap: 10px; }
.modal-body label { display: block; margin-bottom: 5px; }
.modal-body input { width: 100%; }
.divider { display: flex; align-items: center; text-align: center; color: var(--text-faint); font-size: 0.78rem; margin: 6px 0; }
.divider::before, .divider::after { content: ''; flex: 1; border-bottom: 1px solid var(--hairline); }
.divider span { padding: 0 10px; }

/* Profile */
.profile-card { max-width: 560px; }
.prof-id { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
.prof-avatar, .prof-avatar-fallback { width: 46px; height: 46px; border-radius: 50%; }
.prof-avatar { object-fit: cover; border: 2px solid var(--accent-color); }
.prof-avatar-fallback { background: var(--surface-3); display: flex; align-items: center; justify-content: center; font-weight: 600; }
.sub-badge { margin-left: auto; font-size: 0.72rem; padding: 4px 10px; border-radius: 20px; background: var(--surface-2); color: var(--text-muted); }
.sub-badge.on { background: rgba(41,201,147,0.12); color: var(--color-green); }
.prof-billing { margin: -6px 0 14px; }
.prof-billing:empty { display: none; }
.prof-names { display: flex; gap: 12px; }
.prof-names .field { flex: 1; display: flex; flex-direction: column; gap: 5px; }
.prof-names input { width: 100%; }
.status-add { display: flex; gap: 8px; margin: 8px 0; }
.status-add select, .status-add input { flex: 1; min-width: 0; }
@media (max-width: 520px) {
  .status-add { flex-wrap: wrap; }
  .status-add select { flex: 1 1 100%; }
  .prof-names { flex-direction: column; }
}
.status-list, .airport-list { display: flex; flex-wrap: wrap; gap: 6px; min-height: 24px; }
.chip { background: var(--surface-2); border: 1px solid var(--hairline); border-radius: 20px; padding: 4px 10px; font-size: 0.8rem; display: inline-flex; align-items: center; gap: 6px; }
.chip-x { background: none; border: none; color: var(--text-muted); cursor: pointer; font-size: 0.7rem; }
.prof-actions { margin-top: 20px; }
