/* Mobile directories use one scrolling list; desktop keeps its two-pane layout. */
@media (max-width: 920px) {
    .desktop-directory {
        display: block;
        height: auto;
        min-height: 0;
    }
    .desktop-directory-rail { max-height: none; min-height: 0; gap: 8px; }
    .desktop-directory-detail { display: none; }
    .desktop-directory .contact-list {
        flex: none;
        max-height: none;
        overflow: visible;
    }
    .desktop-directory .contact-toolbar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }
    .desktop-directory .contact-heading,
    .desktop-directory .page-search { grid-column: 1 / -1; }
    .desktop-directory .contact-heading h2 { font-size: 15px; }
    .desktop-directory .contact-toolbar label { min-width: 0; font-size: 11px; }
    .desktop-directory .contact-toolbar input,
    .desktop-directory .contact-toolbar select { min-height: 40px; font-size: 14px; }
    .desktop-directory .contact-letter-rail {
        flex-wrap: nowrap;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scrollbar-width: thin;
        padding: 0 0 2px;
    }
    .desktop-directory .contact-letter { flex: 0 0 32px; min-height: 36px; font-size: 12px; }
    .desktop-directory .contact-row { scroll-margin-top: 80px; }
    .desktop-directory .contact-row summary { min-height: 62px; padding: 10px 12px; }
    .desktop-directory .contact-name { font-size: 14px; font-weight: 600; }
    .desktop-directory .contact-phone { font-size: 12px; }
    .desktop-directory .contact-chevron { display: block; margin-left: auto; flex: 0 0 16px; color: var(--muted); transform: rotate(-90deg); }
    .mobile-contact-card .modal-box {
        display: flex;
        flex-direction: column;
        max-height: calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
        overflow: hidden;
    }
    .mobile-contact-card .modal-head { flex: 0 0 auto; }
    .mobile-contact-card .modal-body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
    .mobile-contact-card .smart-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .mobile-contact-card .kv { grid-template-columns: 90px minmax(0, 1fr); }
    .mobile-contact-card .empty { min-height: 88px; padding: 16px 12px; }
}
