/* Additions are scoped to CMS-generated content; the approved page CSS remains in its template. */
.cms-photo-pending,.cms-diary-no-image{display:flex;align-items:center;justify-content:center;min-height:160px;height:100%;padding:20px;text-align:center;background:#fbe5ed;color:#92697d;font:italic 24px/1.6 "Cormorant Garamond",serif}
.cms-cast-empty{padding:32px;text-align:center;color:#8c7383}
.cms-media-crop{display:block;position:relative;width:100%;aspect-ratio:var(--cms-crop-ratio);overflow:hidden}
.cms-media-crop>img{position:absolute!important;display:block!important;width:var(--cms-crop-width)!important;height:var(--cms-crop-height)!important;max-width:none!important;max-height:none!important;left:var(--cms-crop-left);top:var(--cms-crop-top);object-fit:fill!important;transform:none!important}
.story-cast-photo>.cms-media-crop{height:100%}
.cms-diary-meta{display:block;margin-top:10px;color:#8c6078;font-size:15px;line-height:1.8}
.cms-diary-content p{white-space:normal;overflow-wrap:anywhere}
.cms-diary-content figure{margin:18px 0}
.cms-diary-content figure>img{display:block;max-width:100%;height:auto;max-height:70vh;object-fit:contain}
.cms-diary-content figure>img.cast-no-photo{width:100%;height:auto;object-fit:contain;background:#fac1d4}
.cms-diary-no-image{aspect-ratio:3/4}
.cms-calendar-view-toggle{display:flex;justify-content:center;gap:8px;padding:8px 0 18px}
.cms-calendar-view-toggle[hidden]{display:none}
.cms-calendar-view-toggle button{min-height:48px;min-width:90px;padding:10px 18px;border:1px solid #cba0b5;border-radius:24px;background:#fffaf8;color:#87516d;font:inherit;font-size:16px;cursor:pointer}
.cms-calendar-view-toggle button[aria-pressed=true]{background:#945773;border-color:#945773;color:#fff}
.cms-calendar-view-toggle button:focus-visible{outline:3px solid #aa5d82;outline-offset:4px}
.cms-calendar-shifts{display:grid;gap:3px;list-style:none;margin:7px 0 0;padding:0;color:#8b5e75;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.cms-calendar-shifts li{margin:0;padding:2px 4px;background:#f6e4ed;border-radius:4px}
.cms-shift-time{display:inline-block;font-size:.9em}
.cms-shift-note{display:block;margin-top:5px;font-size:14px;line-height:1.7;white-space:pre-line}
.cms-agenda-event{margin:12px 0}
.cms-agenda-event>.ponta-calendar-event-copy{display:inline-grid;vertical-align:top;max-width:100%;gap:3px}
.cms-agenda-event .ponta-calendar-event-note{display:block;white-space:pre-line;overflow-wrap:anywhere}
.cms-event-photo{width:min(100%,360px);margin:14px 0}
.cms-event-photo>img{display:block;max-width:100%;height:auto;max-height:480px;object-fit:contain}
.cms-line-add{margin-top:24px}
@media(max-width:600px){.cms-calendar-shifts{font-size:11px}.cms-calendar-shifts li{padding:2px}.cms-calendar-view-toggle button{padding:10px 14px}.ponta-calendar[data-calendar-view=week] .ponta-calendar-month{font-size:17px;line-height:1.7;letter-spacing:0}.cms-agenda-event>.ponta-calendar-event-copy{display:grid;margin-top:7px}}
