/* V1.6: isolated additions. The approved hero grid and identity remain in styles.css. */
.quick-hours {display:block;margin-top:5px;color:var(--cyan-soft);font:600 10px/1.25 var(--font-ui)}
[hidden] {display:none!important}
.history-album {min-width:0;position:relative}
.timeline-item--reverse .history-album {order:2}
.album-viewport {display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;border:1px solid var(--line);background:#030416;border-radius:2px;cursor:grab;min-width:0}
.album-viewport::-webkit-scrollbar {display:none}
.album-viewport.is-dragging {cursor:grabbing;scroll-snap-type:none;user-select:none}
.album-slide {flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always}
.album-open {display:block;width:100%;aspect-ratio:16/10;padding:0;border:0;background:#030416;position:relative;cursor:zoom-in;overflow:hidden}
.album-open img {width:100%;height:100%;max-width:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
.album-enlarge {position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:30px;height:30px;background:rgba(3,4,22,.85);color:var(--cyan);border:1px solid var(--line);font:22px/1 sans-serif}
.album-slide figcaption {min-height:74px;padding:12px 16px;background:linear-gradient(120deg,#0b1036,#070920);display:grid;align-content:center;gap:4px}
.album-slide figcaption span {color:#f5f6fd;font:700 15px/1.3 var(--font-ui)}
.album-slide figcaption small {color:var(--muted);font-size:14px;line-height:1.3}
.album-controls {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
.album-arrow {width:36px;height:36px;display:grid;place-items:center;background:rgba(0,223,247,.055);border:1px solid var(--line);color:var(--cyan);font:28px/1 sans-serif;cursor:pointer}
.album-dots {display:flex;justify-content:center;gap:0}
.album-dot {width:30px;height:36px;display:grid;place-items:center;border:0;background:transparent;cursor:pointer;padding:0}
.album-dot::before {content:"";display:block;width:7px;height:7px;border:1px solid var(--cyan);border-radius:50%;opacity:.45;transition:opacity .2s,background .2s}
.album-dot.is-active::before {opacity:1;background:var(--cyan);box-shadow:0 0 9px rgba(0,223,247,.3)}
.album-hint {display:block;text-align:center;margin-top:4px;color:#959dc0;font-size:13px}
.album-arrow:hover {border-color:var(--cyan);background:rgba(0,223,247,.15)}
.album-dot:focus-visible,.album-arrow:focus-visible,.album-open:focus-visible,.mall-map-open:focus-visible {outline:2px solid var(--cyan);outline-offset:3px}
.asset-dialog {border:1px solid var(--line);background:#05071c;color:var(--white);padding:48px 18px 14px;max-width:96vw;max-height:94vh;overflow:auto;box-shadow:0 0 60px #0008}
.asset-dialog::backdrop {background:rgba(0,0,14,.92)}
.asset-dialog img {display:block;max-width:90vw;max-height:75vh;object-fit:contain;margin:auto;width:auto;height:auto}
.asset-dialog-close {position:absolute;right:14px;top:10px;min-height:30px;border:1px solid var(--line);background:var(--navy);color:var(--cyan);padding:5px 12px;cursor:pointer}
.asset-dialog p {text-align:center;max-width:800px;margin:12px auto 0;color:var(--muted);font-size:15px}
/* Reuse approved news slots, with text below the art rather than on top of baked-in text. */
.news-grid {align-items:start;grid-template-rows:auto auto}
.news-card--portrait,.news-card--wide {min-height:0;display:flex;flex-direction:column}
.news-card--portrait>img,.news-card--wide>img {height:auto;object-fit:contain;flex:none;transform:none!important}
.news-card--portrait::after,.news-card--wide::after,.news-confirmed::after {display:none}
.news-card--portrait .news-card-content,.news-card--wide .news-card-content,.news-confirmed .news-card-content {position:relative;left:auto;right:auto;bottom:auto;padding:24px}
.news-card--wide .news-card-content {border-top:1px solid var(--line)}
.news-card--portrait h3,.news-card--wide h3 {font-size:clamp(24px,2.6vw,34px)}
.news-confirmed {min-height:300px;display:flex;align-items:center;background:linear-gradient(140deg,rgba(4,8,33,.97),rgba(20,8,50,.91)),url('../assets/images/bg-horizontal-01.webp') center/cover}
.local-directions {display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.local-directions button {cursor:pointer}
.local-directions .button {font-size:11px;padding:0 18px}
.mall-map {background:#070922;padding-bottom:10px}
.mall-map-open {display:block;border:0;background:transparent;color:var(--cyan);padding:0;width:100%;cursor:zoom-in;text-align:center}
.mall-map-open img {width:100%;height:auto}
.mall-map-open>span {display:inline-block;margin:10px auto 0;padding:9px 12px;border:1px solid var(--line);font:700 10px/1 var(--font-ui);letter-spacing:.12em}
.mall-map>p {margin:14px 20px 0;text-align:center;color:#b8bfdb;font-size:14px;line-height:1.4}
.region-map {margin-top:18px;padding:14px;border:1px solid var(--line);background:rgba(5,5,29,.6)}
.region-map p {font-size:14px;margin:0 0 12px}
.region-map iframe {width:100%;height:280px;border:0;display:block;background:var(--navy)}
@media(max-width:820px){.timeline-item--reverse .history-album{order:initial}.news-card--portrait{grid-row:auto}.album-open{aspect-ratio:4/3}.album-slide figcaption{min-height:82px}.asset-dialog{padding-inline:8px}.asset-dialog img{max-width:89vw}.local-directions{gap:10px}}
@media(max-width:560px){.album-dot{width:26px}.album-hint{font-size:12px}.album-slide figcaption{padding:10px 12px}.album-slide figcaption span{font-size:13px}.album-slide figcaption small{font-size:12px}.album-arrow{width:32px;height:36px}.news-card--portrait .news-card-content,.news-card--wide .news-card-content,.news-confirmed .news-card-content{padding:22px}.local-directions .button{width:100%}}
