/* Scoped to Calendar V2; uploaded photos keep their proportions and are never cropped. */
#vip-calendar-v2 .vpc-event-visual-editor { display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,220px);gap:20px;padding:18px;border:1px solid #d7c9e8;border-radius:18px;background:linear-gradient(130deg,#f8f5ff,#fff7eb);color:#20263f; }
.vpc-visual-copy { display:grid;gap:12px;min-width:0; }
.vpc-visual-copy small { font-size:12px;line-height:1.5;color:#555d72; }
.vpc-visual-status { font-size:13px;line-height:1.4; }
.vpc-visual-preview { margin:0;align-self:start; }
.vpc-event-preview-image { display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#242a43;border-radius:13px; }
.vpc-visual-preview figcaption { margin-top:6px;text-align:center;font-size:12px;color:#66657b; }
.vpc-event-thumbnail { width:94px;height:68px;object-fit:contain;background:#252b43;border-radius:12px;align-self:center;flex:0 0 94px; }
.vpc-event-category { display:block;font-size:11px;font-weight:600;letter-spacing:.3px;color:#946021;margin-bottom:4px; }
.vpc-event-cover { position:relative;margin:18px 0;max-height:300px;border-radius:18px;overflow:hidden;background:#222840; }
.vpc-event-cover-image { display:block;width:100%;max-height:300px;object-fit:contain; }
.vpc-cover-category { position:absolute;bottom:12px;left:12px;padding:6px 12px;border-radius:99px;color:#fff8ec;background:#252b43e8;border:1px solid #edbd7d; font-size:12px; }
#vip-calendar-v2 .vpc-agenda-item { grid-template-columns:94px 54px minmax(0,1fr) auto; }
.vpc-event-visual-editor [hidden] { display:none; }
@media(max-width:600px) {
 #vip-calendar-v2 .vpc-event-visual-editor { grid-template-columns:minmax(0,1fr);padding:14px;gap:14px; }
 .vpc-visual-preview { width:100%;max-width:320px;justify-self:center; }
 .vpc-event-thumbnail { width:70px;height:58px;flex-basis:70px; }
 #vip-calendar-v2 .vpc-agenda-item { grid-template-columns:70px minmax(0,1fr);gap:10px; }
 #vip-calendar-v2 .vpc-agenda-item .vpc-agenda-date { display:none; }
 #vip-calendar-v2 .vpc-agenda-item .vpc-agenda-side { grid-column:2; }
}

.vpc-remove-image-label { position:relative;cursor:pointer; }
.vpc-visual-checkbox { position:absolute;opacity:0;width:1px;height:1px; }
.vpc-remove-image-label:focus-within { outline:3px solid #b87926;outline-offset:2px; }
