/* "See it flip" modal (reuses _toolkit/gallery_next flip_viewer.js + book3d.js) */
#afflip{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;background:rgba(34,10,18,.86);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:18px;font-family:Montserrat,sans-serif}
#afflip.open{display:flex}
#afflip .afp{position:relative;width:min(980px,100%);height:min(640px,calc(100vh - 36px));display:flex;flex-direction:column;background:#2a1a20;border-radius:18px;overflow:hidden;color:#fff;box-shadow:0 20px 60px rgba(0,0,0,.45)}
#afflip .afbar{display:flex;align-items:center;gap:10px;padding:10px 12px 10px 18px;flex:0 0 auto}
#afflip .aft{flex:1;min-width:0;font-weight:700;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#afflip .aft small{font-weight:500;opacity:.7;margin-left:8px}
#afflip .afx{appearance:none;border:0;cursor:pointer;width:42px;height:42px;border-radius:50%;font-size:26px;line-height:42px;color:#fff;background:rgba(255,255,255,.14);padding:0;flex:0 0 auto}
#afflip .afx:hover{background:rgba(255,255,255,.26)}
#afflip .afstage{flex:1 1 auto;position:relative;overflow:hidden;background:#2a2024}
#afflip .afstage canvas{position:absolute;inset:0;display:block;width:100%!important;height:100%!important}
#afflip .afload,#afflip .affb{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:.85}
#afflip .affb{display:none;padding:20px}
#afflip .affb img{max-width:100%;max-height:100%;object-fit:contain}
#afflip .affine{flex:0 0 auto;text-align:center;font-size:12px;opacity:.7;padding:10px 12px 14px}
@media (max-width:600px){#afflip{padding:10px}#afflip .afp{height:min(600px,calc(100vh - 140px));border-radius:14px}}
