#events .gallery-modal-content{max-width:1180px;width:calc(100% - 32px);background:#f6efe2;border:1px solid #cbb48f;padding:32px;color:#362316}
#events #events-grid.member-book{display:block;max-width:1120px;margin:30px auto}
#events .book-spread{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:clamp(400px,54vw,650px);border:8px solid #493322;border-radius:6px 12px 12px 6px;background:#241b17;box-shadow:0 3px 0 #b39772,0 7px 0 #ead5b4,0 11px 0 #4d3323,0 22px 38px #36231655;perspective:1900px;transform-style:preserve-3d;isolation:isolate;touch-action:pan-y;user-select:none;-webkit-user-select:none;overflow:visible}
#events .book-spread::before{content:'';position:absolute;inset:-8px;z-index:-1;border:2px solid #a37b4d;border-radius:6px 12px 12px 6px;pointer-events:none}
#events .book-spread::after{content:'';position:absolute;top:0;bottom:0;left:calc(50% - 11px);width:22px;z-index:8;pointer-events:none;background:linear-gradient(90deg,#120b08ae 0%,#3c2b1b77 28%,#c4a67c33 48%,#150d09a5 70%,transparent);box-shadow:0 0 13px #120a0870}
#events .book-page{position:relative;min-width:0;min-height:0;width:100%;height:100%;overflow:hidden;box-sizing:border-box;background:#cbb695;cursor:pointer;transform:translateZ(0)}
#events .book-page::after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px #eee1c040,inset 0 0 18px #120b0870}
#events .book-left{box-shadow:inset -15px 0 25px -9px #100b0aa0}
#events .book-right{box-shadow:inset 15px 0 25px -9px #100b0aa0}
#events .book-photo-backdrop{position:absolute;inset:-10%;width:120%;height:120%;object-fit:cover;filter:blur(12px) brightness(1.04) saturate(.85);opacity:.85;pointer-events:none}
#events .book-photo{position:relative;display:block;width:100%;height:100%;object-fit:contain;background:transparent;border:0;border-radius:0;box-shadow:none;pointer-events:none}
#events .book-continuation .book-photo{object-fit:cover;object-position:75% center;filter:saturate(.82) brightness(.7)}
#events .book-image-error{position:absolute;inset:0;display:grid;place-items:center;color:#f4e9dc;font:italic 17px var(--h-serif)}
#events .book-image-error[hidden]{display:none}
#events .book-reactions{position:absolute;z-index:2;bottom:10px;right:10px}
#events .book-react-trigger{min-width:72px;min-height:44px;padding:7px 10px;border:1px solid #fff2ddbd;border-radius:22px;background:#2d211bcf;color:#fff7e8;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 16px #1d0e0b75;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
#events .book-react-trigger:hover,#events .book-react-trigger:focus-visible{background:#563521}
#events .book-react-picker{position:absolute;right:0;bottom:calc(100% + 6px);display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;width:162px;padding:4px;border:1px solid #ecd3ad;border-radius:12px;background:#3b2920ed;box-shadow:0 8px 24px #150b09a3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#events .book-reactions.is-open .book-react-picker{display:grid}
#events .book-react{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:2px 3px;border:1px solid transparent;border-radius:8px;background:transparent;color:#fff8eb;font-size:17px;line-height:1;cursor:pointer;text-shadow:0 1px 3px #1a100b}
#events .book-react:hover,#events .book-react:focus-visible{background:#fff9e636;border-color:#fff9e666}
#events .book-react[aria-pressed=true]{background:#9d563b;color:#fff;border-color:#ffdbb7}
#events .book-remove{position:absolute;top:9px;right:9px;z-index:3;border:1px solid #f1d3acaa;border-radius:5px;padding:6px 8px;background:#261b18c9;color:#fff4e5;cursor:pointer;font-size:11px}
#events .book-view{position:absolute;top:8px;left:8px;z-index:3;box-sizing:border-box;min-height:44px;max-width:calc(100% - 16px);padding:6px 8px;border:1px solid #f1d3acaa;border-radius:5px;background:#261b18e8;color:#fff4e5;font:12px/1.25 var(--h-sans);cursor:pointer}
#events .book-page:has(>.book-remove)>.book-view{max-width:calc(100% - 62px)}
#events .book-view:focus-visible{outline:3px solid #fff4e5;outline-offset:2px}
#events .book-turn-leaf{position:absolute;top:0;bottom:0;width:50%;z-index:6;transform-style:preserve-3d;pointer-events:none;will-change:transform}
#events .book-turn-leaf.turn-forward{left:50%;transform-origin:left center}
#events .book-turn-leaf.turn-backward{left:0;transform-origin:right center}
#events .book-turn-face{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#342820;transform-style:preserve-3d}
#events .book-turn-face.back{transform:rotateY(180deg)}
#events .book-turn-face .book-page{height:100%;width:100%}
#events .book-turn-face::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:calc(.1 + var(--fold,0) * .7);background:linear-gradient(90deg,#11090499 0%,transparent 27%,#fff6dc55 70%,#100905ca 100%);mix-blend-mode:multiply}
#events .book-turn-face.back::after{background:linear-gradient(90deg,#100905ca,transparent 32%,#fff6dc66 67%,#110904aa)}
#events .book-turn-leaf::after{content:'';position:absolute;inset:0 0 0 auto;width:calc(2% + var(--fold,0) * 12%);z-index:4;pointer-events:none;background:linear-gradient(90deg,transparent,#f5e8c066 48%,#1a0f0a99);opacity:calc(.2 + var(--fold,0) * .8)}
#events .book-turn-leaf.turn-backward::after{inset:0 auto 0 0;transform:scaleX(-1)}
#events .book-stationary{position:absolute;top:0;bottom:0;width:50%;z-index:3;pointer-events:none;overflow:hidden}
#events .book-stationary>.book-page{height:100%;width:100%}
#events .book-cast-shadow{position:absolute;top:0;bottom:0;width:50%;z-index:4;pointer-events:none;opacity:var(--fold,0);filter:blur(15px);background:linear-gradient(90deg,transparent 20%,#080503bd 80%,transparent)}
#events .book-cast-shadow.shadow-forward{left:0}
#events .book-cast-shadow.shadow-backward{right:0;transform:scaleX(-1)}
#events .book-fold{position:absolute;top:0;bottom:0;z-index:9;pointer-events:none;transform:translateX(-50%);border-radius:45% 55% 55% 45% / 4% 3% 3% 4%;background:linear-gradient(90deg,#170d09a8 0%,#f3e6c3 18%,#fff9e6 41%,#bfa37b 73%,#170d09a8 100%);box-shadow:3px 0 10px #1b0e097a,-4px 0 13px #1b0e0980;filter:blur(.35px)}
#events .book-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 8px}
#events .book-button{min-height:44px;background:#f5e7cf;color:#593d2b;border:1px solid #bd9a6a;border-radius:4px;padding:9px 13px;cursor:pointer;font-size:14px}
#events button:disabled{opacity:.48;cursor:default}
#events .book-counter,#events .book-status,#events .book-empty,#events .book-turn-hint{font-size:13px;color:#795d42}
#events .book-empty{grid-column:1 / -1;display:grid;place-items:center;color:#fff7e9}
#events .book-turn-hint{text-align:center;margin:8px 0 6px}
#events .book-status{min-height:18px;text-align:center;margin:4px 0}
@media(max-width:700px){
  #events .gallery-modal-content{padding:20px 10px;width:calc(100% - 16px)}
  #events #events-grid.member-book{margin:18px auto}
  #events .book-spread{height:clamp(248px,80vw,390px);border-width:3px;border-radius:5px 9px 9px 5px;perspective:1200px;box-shadow:0 3px 0 #b39772,0 6px 0 #ead5b4,0 9px 0 #4d3323,0 15px 26px #36231640}
  #events .book-spread::before{inset:-3px}
  #events .book-spread::after{left:calc(50% - 4px);width:8px;box-shadow:0 0 7px #120a0860}
  #events .book-page::after{box-shadow:inset 0 0 0 1px #eee1c050,inset 0 0 9px #120b0850}
  #events .book-left{box-shadow:inset -8px 0 14px -7px #100b0a70}
  #events .book-right{box-shadow:inset 8px 0 14px -7px #100b0a70}
  #events .book-photo-portrait{object-fit:cover}
  #events .book-reactions{bottom:7px;right:7px}
  #events .book-react-trigger{min-width:62px;min-height:44px;padding:6px 8px;font-size:12px}
  #events .book-react-picker{width:min(162px,calc((100vw - 36px)/2 - 8px));padding:2px;gap:0}
  #events .book-react{min-height:44px;padding:0 2px;font-size:15px}
  #events .book-remove{top:0;right:0;width:44px;height:44px;padding:0;border:0;background:transparent;box-shadow:none;font-size:0}
  #events .book-remove::before{content:'×';display:grid;place-items:center;width:32px;height:32px;margin:auto;border:1px solid #f1d3acaa;border-radius:50%;background:#261b18c9;font-size:20px;line-height:1}
  #events .book-navigation{margin-top:18px;gap:5px}
  #events .book-button{font-size:12px;padding:8px;min-height:44px}
  #events .book-counter{font-size:11px;text-align:center}
}
@media(max-width:360px){#events .book-react{font-size:14px}}
@media(prefers-reduced-motion:reduce){.heritage-site:not(.motion-opted-in) #events .book-turn-leaf{will-change:auto}}
