/* Build 49: calm photo + name viewers. No inherited photo-flight or pop animation. */
html.gb-web-v11 .modal-layer.gb49-photo-modal{z-index:110!important;align-items:center!important;padding:clamp(10px,3vw,18px)!important;}
html.gb-web-v11 .modal-layer.gb49-photo-modal .modal-backdrop{background:rgba(3,7,19,.83)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;animation:none!important;transition:none!important;}
html.gb-web-v11 .modal-layer.gb49-photo-modal .sheet{position:relative!important;display:block!important;box-sizing:border-box!important;width:min(100%,480px)!important;max-width:480px!important;max-height:calc(100dvh - 32px)!important;overflow:auto!important;overscroll-behavior:contain;margin:0!important;padding:13px!important;border-radius:27px!important;border:1px solid rgba(183,208,255,.39)!important;background:linear-gradient(150deg,#344362,#1e2944 49%,#121a30)!important;box-shadow:0 22px 72px rgba(2,5,18,.68),inset 0 1px rgba(255,255,255,.19)!important;animation:none!important;transition:none!important;transform:none;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;will-change:transform,opacity;}
html.gb-web-v11 .gb49-view-content{display:flex;flex-direction:column;gap:11px;min-width:0;}
html.gb-web-v11 .gb49-view-head{display:flex;justify-content:space-between;align-items:center;min-height:42px;padding:0 2px;}
html.gb-web-v11 .gb49-view-head>span{font-size:10px;font-weight:750;letter-spacing:.18em;color:#bdd0ef;}
html.gb-web-v11 .gb49-close{width:38px!important;height:38px!important;min-height:38px!important;display:grid!important;place-items:center!important;flex:none;border-radius:50%!important;border:1px solid rgba(202,220,255,.32)!important;background:rgba(156,183,240,.13)!important;color:#f3f6ff!important;}
html.gb-web-v11 .gb49-photo-stage{position:relative;width:100%;height:auto;aspect-ratio:4/5;max-height:min(65dvh,590px);min-height:180px;overflow:hidden;border-radius:20px;background:linear-gradient(160deg,#16213a,#263855);border:1px solid rgba(191,212,255,.2);display:grid;place-items:center;}
html.gb-web-v11 .gb49-image{display:block!important;width:100%!important;height:100%!important;inset:0;position:absolute;object-fit:contain;object-position:center;max-height:100%!important;max-width:100%!important;opacity:0;transition:opacity 120ms ease-out!important;}
html.gb-web-v11 .gb49-photo-loaded .gb49-image{opacity:1;}
html.gb-web-v11 .gb49-photo-loaded .gb49-fallback{display:none;}
html.gb-web-v11 .gb49-fallback{font-size:12px;color:#adbcda;}
html.gb-web-v11 .gb49-name{font-size:clamp(20px,5.6vw,26px)!important;line-height:1.22!important;letter-spacing:-.027em!important;font-weight:750!important;margin:5px 4px 8px!important;color:#f4f6ff!important;overflow-wrap:anywhere;}
html.gb-web-v11 .gb49-gallery-actions{display:flex;flex-wrap:wrap;gap:8px;padding:2px 2px 4px;}
html.gb-web-v11 .gb49-gallery-actions .btn{flex:1 1 auto;min-height:41px;font-size:12px;}
html.gb-web-v11 .archive-page .shot-open{cursor:pointer!important;}
html.gb-web-v11 .archive-page .shot-open:focus-visible{outline:2px solid #c4d8ff;outline-offset:3px;}
@media(max-width:390px){html.gb-web-v11 .modal-layer.gb49-photo-modal .sheet{padding:11px!important;border-radius:24px!important;}html.gb-web-v11 .gb49-photo-stage{max-height:60dvh;}}
@media(prefers-reduced-motion:reduce){html.gb-web-v11 .modal-layer.gb49-photo-modal .sheet,html.gb-web-v11 .modal-layer.gb49-photo-modal .modal-backdrop{animation:none!important;transition:none!important;}html.gb-web-v11 .gb49-image{transition:none!important;}}

/* Build 50: compact proportional viewers for Focus and Collection only. */
html.gb-web-v11 .modal-layer.gb49-photo-modal{padding:12px 18px!important;}
html.gb-web-v11 .modal-layer.gb49-photo-modal .sheet{
 width:min(calc(100vw - 42px),420px)!important;
 max-width:420px!important;
 max-height:calc(100dvh - 26px)!important;
 padding:11px!important;
 border-radius:24px!important;
 overflow-x:hidden!important;
}
html.gb-web-v11 .gb49-view-content{gap:9px!important;align-items:stretch;}
html.gb-web-v11 .gb49-view-head{min-height:39px!important;}
html.gb-web-v11 .gb49-photo-stage{
 box-sizing:border-box!important;
 width:100%;
 height:auto!important;
 aspect-ratio:1;
 max-height:none;
 min-height:0!important;
 margin-inline:auto!important;
 border-radius:17px!important;
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
 overflow:hidden!important;
}
html.gb-web-v11 .gb49-image{
 position:absolute!important;
 inset:0!important;
 width:100%!important;
 height:100%!important;
 object-fit:contain!important;
 object-position:center!important;
}
html.gb-web-v11 .gb49-name{
 width:100%!important;
 margin:2px auto 3px!important;
 padding:0 5px!important;
 font-size:clamp(17px,4.8vw,22px)!important;
 line-height:1.23!important;
 font-weight:780!important;
 text-align:center!important;
 letter-spacing:-.025em!important;
 overflow-wrap:anywhere!important;
}
html.gb-web-v11 .gb49-gallery-actions{justify-content:center!important;padding:0 2px 3px!important;}
html.gb-web-v11 .gb49-gallery-actions .btn{text-align:center!important;}
@media(max-width:390px){
 html.gb-web-v11 .modal-layer.gb49-photo-modal .sheet{padding:10px!important;border-radius:22px!important;}
 html.gb-web-v11 .gb49-photo-stage{max-height:none;}
}

/* GB VIP Website 11.3.5: only the viewer introduced for Build 51. */
html.gb-web-v11 .modal-layer.gb49-photo-modal .sheet { animation:none!important;transition:none!important; }
html.gb-web-v11 .modal-layer.gb49-photo-modal .modal-backdrop { animation:none!important;transition:none!important;cursor:default; }
html.gb-web-v11 .modal-layer.gb49-photo-modal {z-index:250!important;}
html.gb-web-v11 .modal-layer.gb49-photo-modal .gb49-photo-stage {width:100%;max-width:100%;min-height:0!important;}
html.gb-web-v11 .modal-layer.gb49-photo-modal .gb49-photo-stage .gb49-image {object-fit:contain!important;display:block!important;}
html.gb-web-v11 .modal-layer.gb49-photo-modal .gb49-name {text-align:center!important;}
html.gb-web-v11 .modal-layer.gb49-photo-modal button {touch-action:manipulation;}
@media (min-width: 800px) {html.gb-web-v11 .modal-layer.gb49-photo-modal .sheet {max-width:500px!important;width:min(92vw,500px)!important;} }
@media (max-width: 600px) {html.gb-web-v11 .modal-layer.gb49-photo-modal .sheet {width:min(calc(100vw - 32px),420px)!important;max-width:420px!important;} }
@media (prefers-reduced-motion:reduce) {html.gb-web-v11 .modal-layer.gb49-photo-modal .gb49-image {transition:none!important;} }

/* Override broad Build 44 modal animation rules: photo viewers use one JS timeline. */
html.gb-web-v11.gb-motion44 .modal-layer.gb49-photo-modal {animation:none!important;transition:none!important;}
html.gb-web-v11.gb-motion44 .modal-layer.gb49-photo-modal:not(.gb25-account-layer):not(.gb22-modal):not(.gb34-photo-modal):not(.gb34-focus-modal) .sheet:not(.photo-sheet):not(.vip-preview-sheet) {animation:none!important;transition:none!important;}
html.gb-web-v11.gb-motion44 .modal-layer.gb49-photo-modal:not(.gb25-account-layer):not(.gb22-modal):not(.gb34-photo-modal):not(.gb34-focus-modal) .modal-backdrop {animation:none!important;transition:none!important;}
