.ain-public { min-width: 0; }
.ain-public h1 { overflow-wrap: break-word; }
.ain-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 24px; }
.ain-card { overflow: hidden; min-width: 0; }
.ain-grid > .panel { margin-top: 0; }
.ain-card h2 { font-size: 1.25rem; line-height: 1.4; margin-bottom: 12px; }
.ain-card p:last-child { margin-bottom: 0; }
.ain-image, .ain-public picture, .ain-public figure { display: block; max-width: 100%; }
.ain-image img, img.ain-image { display: block; width: 100%; height: auto; }
.ain-photo img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.ain-meta { color: var(--ink-2, var(--bs-secondary-color)); font-size: .875rem; margin-top: 8px; }
.ain-text { overflow-wrap: break-word; }
.ain-public .ain-text h2 { font-size: 1.125rem; margin-top: 1.6em; margin-bottom: .5em; }
.ain-public .ain-text h3 { font-size: 1rem; margin-top: 1.6em; margin-bottom: .5em; }
.ain-pagination { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; margin: 24px 0; }
@media (max-width: 600px) { .ain-grid { grid-template-columns: minmax(0, 1fr); } }
