/* Photo Calendar — base structural styles
   Instance-specific colours/fonts are injected as scoped <style> tags
   by PCW_Renderer so multiple calendars on one page each stay independent. */

.pcw-wrap {
    box-sizing: border-box;
}
.pcw-wrap *,
.pcw-wrap *::before,
.pcw-wrap *::after {
    box-sizing: inherit;
}

/* Prevent layout shift while JS initialises */
.pcw-days { min-height: 160px; }

/* Smooth day-grid fade-in on first render */
.pcw-days:not(:empty) { animation: pcwFadeIn .25s ease; }
@keyframes pcwFadeIn { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }

/* Keyboard focus ring on nav buttons */
.pcw-btn:focus-visible {
    outline: 2px solid rgba(255,255,255,.8);
    outline-offset: 2px;
}
