.catalog-status { grid-column: 1 / -1; padding: 2rem; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); }
.package-dialog { width: min(900px, calc(100% - 32px)); max-height: 90vh; padding: clamp(20px, 4vw, 48px); border: 1px solid var(--line); border-radius: var(--radius); color: var(--navy); background: var(--white); font: inherit; line-height: 1.8; }
.package-dialog::backdrop { background: rgb(18 50 74 / 65%); }
.package-dialog h2 { margin: 24px 0 12px; }
.package-dialog p { white-space: pre-line; }
.package-dialog > .button { margin: 8px 0 8px 12px; }
.package-day { padding: 20px 0; border-top: 1px solid var(--line); }
.package-day h4 { font-size: 1.2rem; }
.package-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); gap: 12px; margin: 20px 0; }
.package-gallery figure { margin: 0; }
.package-gallery img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--radius); }
.package-gallery figcaption { font-size: .9rem; }
