.bean-visual[data-gallery]{background:#e3dacc;border:1px solid #d4c8b7}
.gallery-open{display:block;position:relative;padding:0;border:0;background:transparent;width:100%;cursor:zoom-in;color:#294438}
.gallery-open span{position:absolute;right:14px;bottom:14px;background:rgba(250,247,242,.92);padding:7px 12px;border-radius:20px;font:12px/1.4 system-ui}
.gallery-thumbs{display:flex;gap:10px;padding:16px 18px 8px}
.gallery-thumbs button{flex:1;min-width:0;max-width:110px;padding:5px 5px 8px;border:1px solid #b8ad9c;border-radius:7px;background:#eee8de;color:#334c40;font:13px/1.6 system-ui;cursor:pointer}
.gallery-thumbs button[aria-pressed=true]{border:2px solid #244c3a;padding:4px 4px 7px;background:#f7f3eb}
.bean-visual .gallery-thumbs img{aspect-ratio:1;object-fit:cover;border-radius:4px;margin:0 0 5px}
.bean-visual>p.gallery-caption{display:block;padding:12px 18px 18px;border:0;letter-spacing:0;font:13px/1.7 system-ui;color:#554e43}
#photo-dialog{width:min(1000px,94vw);max-width:94vw;max-height:92vh;padding:24px;background:#f4efe7;color:#173b30;border:1px solid #c3b7a7;border-radius:12px;overflow:auto}
#photo-dialog::backdrop{background:rgba(18,32,26,.7)}
#photo-dialog .photo-close{position:sticky;top:0;float:right;border:1px solid #c3b7a7;background:#fffaf2;border-radius:50%;width:42px;height:42px;font-size:26px;cursor:pointer}
#photo-dialog h2{font-size:20px;max-width:85%;margin:8px 0 20px}
#photo-dialog img{display:block;width:100%;height:auto}#photo-dialog p{font:13px/1.6 system-ui}
@media(max-width:700px){.gallery-thumbs{padding:12px 12px 4px;gap:8px}.gallery-thumbs button{font-size:12px}.bean-visual>p.gallery-caption{padding:10px 12px 14px}.gallery-open span{font-size:11px;right:10px;bottom:10px}}
