.gk-gallery{position:relative;width:100%;height:min(78vh,760px);min-height:460px;background:#e9e9e9;color:#222;overflow:hidden;font-family:Arial,sans-serif}.gk-stage{position:absolute;inset:0;outline:none}.gk-stage canvas{display:block;width:100%;height:100%}.gk-top{position:absolute;left:18px;top:16px;right:18px;display:flex;justify-content:space-between;gap:10px;pointer-events:none;font-size:12px;letter-spacing:.06em;text-shadow:0 1px 6px white}.gk-top strong{font-size:15px}.gk-controls{position:absolute;bottom:52px;left:18px;text-align:center;user-select:none}.gk-controls button{background:#ffffffd9;color:#222;border:1px solid #aaa;border-radius:7px;width:40px;height:40px;margin:2px;cursor:pointer}.gk-help{position:absolute;bottom:9px;left:18px;right:18px;margin:0;font-size:12px;color:#444;pointer-events:none}.gk-modal{position:absolute;inset:7% 8%;width:84%;height:86%;max-width:850px;max-height:700px;border:0;border-radius:8px;padding:20px;background:white;color:#222;box-shadow:0 10px 45px #0007;overflow:auto}.gk-modal::backdrop{background:#0008}.gk-modal[open]{display:flex;gap:20px;align-items:center}.gk-modal img{max-width:55%;max-height:100%;object-fit:contain}.gk-modal .gk-info{flex:1}.gk-modal h2{font-size:24px;margin:0 0 14px}.gk-modal p{font-size:14px;line-height:1.6}.gk-close{position:absolute;right:10px;top:8px;background:transparent;border:0;font-size:30px;cursor:pointer;color:#333}@media(max-width:650px){.gk-gallery{min-height:550px}.gk-top{flex-direction:column}.gk-help{font-size:10px}.gk-modal[open]{display:block}.gk-modal img{max-width:100%;max-height:42%}}

.gk-rooms{display:flex;gap:10px;flex-wrap:wrap;padding:12px;background:#f8f8f8}.gk-rooms a{padding:8px 14px;background:white;color:#222;border:1px solid #ddd;text-decoration:none;border-radius:6px}.gk-rooms a.is-active{background:#222;color:white}

.gk-status{padding:9px 14px;background:#fff;color:#111;font:13px Arial,sans-serif;border:1px solid #ddd}

/* v2.3: full descriptions remain readable, including on small screens */
.gk-modal{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(94vw,1100px);max-width:1100px;height:min(90dvh,900px);max-height:90dvh;overflow-y:auto;overscroll-behavior:contain;padding:28px 26px;align-items:stretch!important;}
.gk-modal[open]{display:grid;grid-template-columns:minmax(0,45%) minmax(0,55%);gap:22px;align-items:start!important;}
.gk-modal img{display:block;max-width:100%;width:100%;height:auto;max-height:calc(90dvh - 70px);object-fit:contain;align-self:start;position:sticky;top:0;}
.gk-modal .gk-info{min-width:0;max-height:none;overflow:visible;overflow-wrap:anywhere;padding-right:12px;}
.gk-modal .gk-description{white-space:pre-line;overflow:visible;max-height:none;height:auto;}
.gk-modal .gk-close{position:sticky;top:0;grid-column:1/-1;justify-self:end;z-index:2;background:#fff;border:1px solid #ddd;border-radius:50%;width:38px;height:38px;line-height:32px;}
@media(max-width:700px){.gk-modal{width:96vw;max-height:92dvh;height:92dvh;padding:12px 16px 24px;}.gk-modal[open]{display:flex;flex-direction:column;align-items:stretch!important;gap:12px;}.gk-modal img{position:static;width:100%;max-width:100%;max-height:35dvh;flex-shrink:0;}.gk-modal .gk-info{padding-right:0;width:100%;flex:none;}.gk-modal .gk-close{align-self:flex-end;flex-shrink:0;}}

.gk-door-pager{position:absolute;bottom:58px;right:16px;display:flex;gap:8px;z-index:3}.gk-door-pager button{padding:9px 12px;background:#fff;border:1px solid #aaa;border-radius:5px;color:#222;cursor:pointer}.gk-door-pager button:disabled{opacity:.4;cursor:default}.gk-empty{position:absolute;top:85px;left:50%;transform:translateX(-50%);padding:16px;background:#fff;color:#222;max-width:85%;z-index:4}.gk-rooms{position:relative;z-index:4}

.gk-poster-modal{width:min(760px,94vw);max-height:90vh;overflow:auto;border:0;border-radius:12px;padding:22px;background:white;color:#222;box-shadow:0 12px 60px #0005;text-align:center}.gk-poster-modal::backdrop{background:#0009}.gk-poster-modal img{display:block;margin:10px auto;max-width:100%;max-height:56vh;object-fit:contain}.gk-poster-modal h2{margin:12px 0}.gk-poster-modal p{text-align:left;white-space:pre-wrap}.gk-poster-close{position:sticky;top:0;float:right;background:#222;color:#fff;border:0;border-radius:50%;width:36px;height:36px;cursor:pointer}.gk-enter-room{display:inline-block;background:#222;color:white!important;padding:12px 24px;text-decoration:none;border-radius:6px;margin:12px}

/* v3.3: reliable tap/click handling on the 3D canvas */
.gk-stage{touch-action:none;cursor:grab}.gk-stage:active{cursor:grabbing}



.gk-controls .gk-controls-hint{margin:0 0 8px;max-width:260px;font-size:12px;line-height:1.35;color:#222;background:#fff;border-radius:5px;padding:7px 9px;}

.gk-atrium-counter{align-self:center;background:#fff;padding:8px;border-radius:5px;font:12px Arial,sans-serif;color:#222}

/* Sale aggiuntive della stessa mostra */
.gk-gallery-pagination{position:absolute;z-index:5;top:48px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:10px;max-width:95%;padding:7px 10px;border-radius:7px;background:#ffffffed;color:#222;font:13px Arial,sans-serif;white-space:nowrap;box-shadow:0 2px 12px #0002}.gk-gallery-pagination a{background:#222;color:#fff!important;padding:9px 12px;text-decoration:none;border-radius:5px}.gk-gallery-pagination span{font-weight:bold}@media(max-width:600px){.gk-gallery-pagination{top:65px;gap:5px;font-size:11px}.gk-gallery-pagination a{padding:7px}}

/* 4.6.5: immagini multiple per singola opera */
.gk-modal[open] .gk-photo-panel{width:55%;min-width:0;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center}
.gk-modal .gk-photo-panel>.gk-main-photo{display:block;width:100%;max-width:100%;max-height:55vh;object-fit:contain}
.gk-modal .gk-photo-thumbs{display:flex;gap:8px;max-width:100%;overflow-x:auto;padding:4px 2px;align-self:stretch}
.gk-modal .gk-photo-thumbs[hidden]{display:none}
.gk-modal .gk-photo-thumb{flex:0 0 72px;width:72px;height:76px;padding:3px;border:2px solid #ddd;background:#fff;cursor:pointer;border-radius:4px}
.gk-modal .gk-photo-thumb[aria-pressed="true"]{border-color:#111}
.gk-modal .gk-photo-thumb img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
@media(max-width:700px){.gk-modal[open]{inset:3% 3%;width:94%;height:94%;max-height:none;box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;overflow-y:auto;padding:45px 15px 20px;gap:15px}.gk-modal[open] .gk-photo-panel{width:100%}.gk-modal .gk-photo-panel>.gk-main-photo{max-height:45vh}.gk-modal .gk-info{width:100%;flex:none}.gk-modal .gk-photo-thumb{flex-basis:62px;width:62px;height:66px}}

/* v4.6.7: il pannello fotografico riempie davvero la colonna disponibile.
   La precedente larghezza 55% dentro una colonna 45% rimpiccioliva le foto. */
@media (min-width:701px){
 .gk-modal{width:min(96vw,1360px);max-width:1360px;height:auto;max-height:92dvh;min-height:0;padding:22px 28px 28px;}
 .gk-modal[open]{grid-template-columns:minmax(0,58fr) minmax(0,42fr);column-gap:30px;row-gap:8px;align-items:start!important;}
 .gk-modal[open] .gk-photo-panel{width:100%;max-width:100%;align-items:stretch;justify-content:flex-start;gap:12px;}
 .gk-modal .gk-photo-panel>.gk-main-photo{width:100%;height:auto;max-height:calc(92dvh - 175px);object-fit:contain;object-position:center;position:static;}
 .gk-modal .gk-photo-thumbs{width:100%;box-sizing:border-box;}
 .gk-modal .gk-photo-thumb{flex:0 0 92px;width:92px;height:96px;}
 .gk-modal .gk-info{padding:0 6px 0 0;}
}
@media (max-width:700px){
 .gk-modal[open]{height:auto;max-height:94dvh;min-height:0;}
 .gk-modal[open] .gk-photo-panel{width:100%;max-width:100%;align-items:stretch;justify-content:flex-start;}
 .gk-modal .gk-photo-panel>.gk-main-photo{width:100%;height:auto;max-height:55dvh;object-fit:contain;position:static;}
 .gk-modal .gk-photo-thumb{flex:0 0 76px;width:76px;height:80px;}
}
