/* 0.6.10: portrait day posters with a separately readable metallic numeral. */
.vp-days-track{gap:24px;align-items:flex-start;padding-top:12px;padding-bottom:14px}
.vp-day-card{display:grid;grid-template-columns:76px minmax(0,1fr);grid-template-rows:auto auto;align-items:end;flex:0 0 264px;width:264px;min-width:0;max-width:264px;padding:0;column-gap:8px;row-gap:12px}
.vp-day-card .vp-day-image{grid-column:2;grid-row:1;width:100%;margin:0;aspect-ratio:3/4;max-height:none;transform-origin:center;border-radius:7px}
.vp-day-card .vp-day-number{position:relative;grid-column:1;grid-row:1;align-self:end;top:auto;left:auto;bottom:auto;width:76px;height:auto;max-height:none;aspect-ratio:150/200;overflow:visible;opacity:1;filter:drop-shadow(0 3px 2px #0009)}
.vp-day-number>path:not(.vp-day-beam){stroke-width:3px;mask:none;stroke-opacity:1}
.vp-day-card .vp-day-caption{grid-column:2;grid-row:2;margin:0;padding:0;min-width:0;line-height:1.3;gap:4px}
.vp-day-card .vp-day-caption strong{font-size:16px}
.vp-day-number .vp-day-beam-halo{stroke-width:10px}
.vp-day-number .vp-day-beam-core{stroke-width:4px}
@media(max-width:760px) and (orientation:portrait){
 .vp-days{padding:20px 16px;margin:14px 0}
 .vp-days-heading{gap:12px;margin-bottom:14px}
 .vp-days-heading>div:last-child{gap:6px}
 .vp-days-track{gap:16px;padding-top:8px;padding-bottom:12px}
 .vp-day-card{grid-template-columns:52px minmax(0,1fr);flex:0 0 204px;width:204px;max-width:204px;column-gap:6px;row-gap:9px}
 .vp-day-card .vp-day-number{width:52px}
 .vp-day-card .vp-day-image{width:100%;margin:0;aspect-ratio:3/4;max-height:none}
 .vp-day-card .vp-day-caption{margin:0}
 .vp-day-card .vp-day-caption strong{font-size:14px}
}
/* The explicit viewer action is visible next to the close control. */
.viewer-fullscreen{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d2d9e3;background:#fff;color:#24394f;border-radius:7px;min-height:36px;padding:7px 10px;font-size:12px;font-weight:650;white-space:nowrap}
.viewer-fullscreen svg{width:17px;height:17px}
.viewer-fullscreen:focus-visible{outline:3px solid #397bc1;outline-offset:3px}
.vp-screen-controls{display:none}
#photoDialog.photo-screen[open]{width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;padding:0!important;display:block!important;background:#08090b!important;color:#fff}
#photoDialog.photo-screen .viewer-top,#photoDialog.photo-screen .social-panel,#photoDialog.photo-screen .viewer-sequence,#photoDialog.photo-screen .photo-keyboard-hint,#photoDialog.photo-screen .canvas-tools{display:none!important}
#photoDialog.photo-screen .viewer-layout,#photoDialog.photo-screen .photo-stage{display:block!important;position:relative!important;width:100%!important;height:100%!important;max-height:none!important;padding:0!important;overflow:hidden!important}
#photoDialog.photo-screen #photoCanvas{width:100%!important;height:100%!important;max-height:none!important;background:#08090b!important}
#photoDialog.photo-screen #photoCanvas:not(.is-zoomed)>#photoImage,#photoDialog.photo-screen #photoVideo{padding:52px 54px 18px!important;object-fit:contain!important;object-position:center!important}
#photoDialog.photo-screen .vp-screen-controls{position:absolute;inset:12px 16px auto;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:14px;pointer-events:none}
.vp-screen-controls span,.vp-screen-controls button{pointer-events:auto;background:#151b24df;color:#fff;border:1px solid #ffffff35;border-radius:7px;padding:8px 12px;font-size:12px;line-height:1.3}
.vp-screen-controls button{display:flex;align-items:center;gap:8px;min-height:38px;cursor:pointer}
.vp-screen-controls button svg{width:17px;height:17px}
#photoDialog.photo-screen .image-arrow{width:40px;height:48px;background:#151b24df;color:#fff;border:1px solid #ffffff30}
#photoDialog.photo-screen .image-previous{left:8px}#photoDialog.photo-screen .image-next{right:8px}
#photoDialog.photo-screen .vp-photo-load{background:#08090b;color:#d9e4f2}
.vp-download-ready{font-size:12px;color:#245a8b;margin:0;padding:0 20px 12px}
.vascplay-login{box-sizing:border-box;width:min(450px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
@media(max-width:600px){.viewer-fullscreen{min-width:36px;padding:8px}.viewer-fullscreen>span{display:none}.vp-screen-controls{font-size:11px}.vp-screen-controls .vp-screen-hint{display:none}}
/* 0.6.11: adapt the box to the photograph when a fixed crop would cut its subject. */
.photo-rail .photo-card[data-vp-safe-layout]{flex:0 0 calc(var(--vp-frame-height) * var(--vp-frame-ratio))!important;width:calc(var(--vp-frame-height) * var(--vp-frame-ratio))!important;height:var(--vp-frame-height)!important;min-width:0!important;max-width:none!important;aspect-ratio:auto!important}
.photo-rail .photo-card[data-vp-safe-layout] .photo-open{display:block;width:100%;height:100%!important;aspect-ratio:auto!important}
.photo-grid .photo-card[data-vp-safe-layout]{align-self:start;height:auto!important;aspect-ratio:var(--vp-frame-ratio)!important}
.photo-grid .photo-card[data-vp-safe-layout] .photo-open{display:block;width:100%;height:100%!important;aspect-ratio:var(--vp-frame-ratio)!important}
#photoDialog .thumbnail[data-vp-safe-layout]{width:calc((var(--vp-thumb-height,43px) - 4px) * var(--vp-frame-ratio) + 4px)!important;height:var(--vp-thumb-height,43px);min-width:0;max-width:none}
.card-hover .hover-image{aspect-ratio:var(--vp-hover-ratio,16/9)!important;height:var(--vp-hover-height,auto);flex-shrink:0}
.card-hover.vp-safe-preview{display:flex;flex-direction:column;max-height:calc(100dvh - 24px)}
.card-hover.vp-safe-preview .hover-content{min-height:0;overflow-y:auto;overscroll-behavior:contain}
@media(max-width:760px){#photoDialog .thumbnail[data-vp-safe-layout]{--vp-thumb-height:37px}}
/* 0.6.12: compact desktop galleries wrap rows of equal-height photographs. */
@media(min-width:761px){
 .photo-grid{display:flex;flex-wrap:wrap;align-items:flex-start;--vp-grid-height:clamp(160px,11.2vw,205px)}
 .photo-grid .photo-card,.photo-grid .photo-card[data-vp-safe-layout]{flex:0 0 calc(var(--vp-grid-height) * var(--vp-frame-ratio,1.77777778))!important;width:calc(var(--vp-grid-height) * var(--vp-frame-ratio,1.77777778))!important;height:var(--vp-grid-height)!important;min-width:0!important;max-width:none!important;aspect-ratio:auto!important}
 .photo-grid .photo-card .photo-open,.photo-grid .photo-card[data-vp-safe-layout] .photo-open{display:block;width:100%;height:100%!important;aspect-ratio:auto!important}
}

.card-admin{position:absolute;right:8px;bottom:8px;z-index:7;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid #ffffff70;background:#112a42de;color:#fff;cursor:pointer}.card-admin svg{width:16px;height:16px}.card-admin:hover,.card-admin:focus-visible{background:#2067a6;outline:2px solid #fff;outline-offset:2px}.vp-hover-admin{display:flex;align-items:center;gap:7px;margin-top:12px;padding:7px 0;background:transparent;color:#badbff;font-size:12px}.vp-hover-admin svg{width:15px;height:15px}

/* 0.6.13: mouse previews keep one landscape frame without cropping any photo. */
.card-hover .hover-image .safe-image>img{object-fit:contain!important;object-position:50% 50%!important;transform:none!important}

/* Institutional signature remains readable beside the responsive logo. */
.brand,.viewer-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.brand .vp-brand-credit,.viewer-brand .vp-brand-credit{display:block;color:#e2e6ed;font:400 9px/1.3 Inter,Arial,sans-serif;letter-spacing:.02em;white-space:nowrap}
.brand img{max-height:40px!important;object-fit:contain}
.viewer-brand .vp-brand-credit{font-size:8px}
.vp-intro-credit{font:400 clamp(11px,1.5vw,16px)/1.5 Inter,Arial,sans-serif;color:#e2eaf5;margin:12px 0 0;animation:vp-intro-tagline .6s ease 3.35s both}
.vp-delete-photo{color:#ffb7b7!important}
@media(max-width:760px){.brand img{max-height:33px!important}.brand .vp-brand-credit{font-size:8px}.viewer-brand .vp-brand-credit{font-size:7px}}

#photoDialog .composer-area #loginComment:not([hidden]){display:flex!important;align-items:center;justify-content:center;margin-top:10px}#photoDialog .composer-area #loginComment[hidden]{display:none!important}

.vp-logout-row{margin:20px 0 0}.vp-logout{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:10px 18px}.vp-logout svg{width:18px;height:18px}

.vp-viewer-account{padding:0!important;flex-shrink:0}.vp-viewer-account .account-avatar{width:30px;height:30px;border-radius:50%;font-size:14px}.vp-viewer-account .account-avatar img{object-fit:cover}
