body {
    font-family: Arial, sans-serif;
}
#suggestionList {
    max-height: 250px;
    overflow-y: auto;
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    border: 1px solid #dee2e6;
    border-top: none;
    background-color: #fff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
    border-radius: 0 0 0.375rem 0.375rem;
}

#suggestionList .list-group-item {
    padding: 10px 15px;
    cursor: pointer;
    transition: background-color 0.2s ease-in-out;
}

#suggestionList .list-group-item:hover {
    background-color: #f8f9fa;
    color: #0d6efd;
}


/* V12 preserved repair: common card, image and pagination utilities */
.card-img-top,
.img-fluid {
    max-width: 100%;
}
.pagination {
    gap: .15rem;
}
.pagination .page-link {
    border-radius: .4rem;
}
.directory-empty-space {
    min-height: 0;
}


/* V19 launch polish: mobile comfort, status badges and readable admin tables */
.lbj-status-badge { border-radius:999px; padding:.35rem .65rem; font-size:.78rem; font-weight:600; }
.lbj-empty-state { border:1px dashed #d0d7de; border-radius:1rem; padding:2rem; text-align:center; background:#fff; }
.lbj-card-hover { transition:transform .18s ease, box-shadow .18s ease; }
.lbj-card-hover:hover { transform:translateY(-2px); box-shadow:0 .75rem 1.5rem rgba(0,0,0,.08); }
.lbj-card-body { display:flex; flex-direction:column; height:100%; }
.lbj-card-action { width:100%; margin-top:auto; }
.lbj-avatar-frame {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border-radius:50%;
    aspect-ratio:1 / 1;
    background:#f8f9fa;
    border:1px solid #eee;
    flex:0 0 auto;
}
.lbj-avatar-frame--md {
    width:132px;
}
.lbj-avatar-frame--lg {
    width:170px;
}
.lbj-avatar-circle {
    display:block;
    width:100% !important;
    height:100% !important;
    max-width:none;
    border-radius:50%;
    object-fit:cover;
    object-position:center;
}
.table td, .table th { vertical-align: middle; }
@media (max-width: 767.98px) {
  .container, .container-fluid { padding-left: 1rem; padding-right: 1rem; }
  h1, .h1 { font-size: 1.75rem; line-height: 1.2; }
  h2, .h2 { font-size: 1.45rem; }
  .btn { min-height: 42px; }
  .card-body { padding: 1rem; }
  .table-responsive { border-radius:.75rem; }
  .pagination { justify-content:center; flex-wrap:wrap; gap:.25rem; }
  .navbar .dropdown-menu { border:0; background:#f8f9fa; }
}
