.attachments { display: flex; flex-wrap: wrap; gap: 12px; min-width: 0; }
.attachments figure { margin: 0; max-width: 100%; overflow-wrap: anywhere; }
.attachments figcaption { font-size: .8rem; padding: 4px 0; }
.attachment-previews img { width: 120px; height: 90px; object-fit: cover; border-radius: 10px; }
.attachment-gallery figure { width: 100%; }
.attachment-gallery img { display: block; width: 100%; max-height: 65vh; object-fit: contain; border-radius: 12px; }
.attachment-upload { display: block; width: 100%; padding: 14px; border: 1px dashed var(--mud-palette-primary); border-radius: 12px; }
.attachment-upload input { display: block; width: 100%; margin-top: 8px; }
.meal-toolbar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 12px 0; }
.meal-toolbar .mud-input-control { min-width: 160px; flex: 1; }
.meal-days { display: grid; grid-template-columns: repeat(7, minmax(145px, 1fr)); gap: 10px; overflow-x: auto; }
.meal-day h4 { margin-bottom: 12px; }
.meal-slot { display: block; padding: 10px; margin: 8px 0; width: 100%; text-align: left; border: 1px solid var(--mud-palette-lines-default); border-radius: 9px; color: var(--mud-palette-text-primary); background: var(--mud-palette-surface); cursor: pointer; }
.meal-slot small, .meal-slot strong { display: block; overflow-wrap: anywhere; }
.meal-slot small { color: var(--mud-palette-text-secondary); }
.meal-editor { max-width: 800px; }
.markdown-content { line-height: 1.65; overflow-wrap: anywhere; }
.markdown-content h1,.markdown-content h2,.markdown-content h3 { margin: .7em 0 .35em; }
.markdown-content ul,.markdown-content ol { padding-left: 1.5rem; }
.markdown-content pre { overflow-x: auto; padding: 12px; border-radius: 8px; background: color-mix(in srgb,var(--mud-palette-surface) 75%,#000); }
.release-history { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px solid var(--mud-palette-lines-default); }
@media(max-width:600px) { .meal-days { grid-template-columns: 1fr; overflow: visible; } .attachment-gallery img { max-height: 50vh; } }

/* MudTabs doesn't add useful inset padding to panel content on narrow screens. */
.admin-tabs .mud-tabs-panels { padding: 20px 24px 24px; }
.admin-tabs .mud-tab-panel { padding-inline: 4px; }
@media(max-width:600px) {
  .admin-tabs .mud-tabs-panels { padding: 16px 14px 20px; }
  .admin-tabs .mud-tabs-toolbar { padding-inline: 8px; }
}
