.app-shell {
  width: min(80vw, 1600px);
}
.search-input { max-width: 360px; }
.compact-entry .card-body { line-height: 1.25; }
.secret-pill {
  display: inline-block;
  max-width: 100%;
  padding: .35rem .55rem;
  border-radius: .5rem;
  background: #f8f9fa;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.private-entry { border-left: 4px solid #ffc107; }
.shared-entry { border-left: 4px solid #0d6efd; }
.min-w-0 { min-width: 0; }
.bulk-table input.form-control-sm { min-width: 120px; }
.bulk-table td, .bulk-table th { white-space: nowrap; }
.bulk-table th:nth-child(1), .bulk-table td:nth-child(1) { min-width: 150px; }
.bulk-table th:nth-child(4), .bulk-table td:nth-child(4) { min-width: 130px; }
.bulk-table th:nth-child(5), .bulk-table td:nth-child(5) { min-width: 220px; }
.entry-actions .btn { min-width: 2rem; padding-inline: .45rem; line-height: 1; }
.icon-menu-btn { min-width: 2rem; padding-inline: .55rem; line-height: 1; }

@media (max-width: 1199.98px) {
  .app-shell { width: min(94vw, 1600px); }
}
@media (max-width: 575.98px) {
  .app-shell { width: calc(100vw - 1rem); }
  .search-input { max-width: 100%; }
  .dropdown .btn { padding-inline: .5rem; }
  .bulk-table input.form-control-sm { min-width: 100px; }
}
