/* Guest controls: readable labels and one menu area in either orientation. */
.pad-network-status { position: fixed; top: 0; left: 34px; z-index: 15; min-height: 30px; max-width: 270px; padding: 4px 10px; border: 0; border-radius: 0 0 8px 8px; background: #343a32; color: #fff; font: 12px/1.5 sans-serif; cursor: pointer; }
.pad-network-status[hidden] { display: none; }
.home { display: grid; grid-template-columns: minmax(240px, .85fr) repeat(2, minmax(170px, 1fr)); gap: 24px; padding: 150px 48px 90px; overflow-y: auto; align-items: center; }
.home-center { grid-column: 1; grid-row: 1; width: 100%; min-width: 0; }
#tourTeaser { display: none !important; }
.tile-col-left { grid-column: 2; grid-row: 1; }
.tile-col-right { grid-column: 3; grid-row: 1; }
.tile-col { gap: 14px; min-width: 0; }
.tile { width: 100%; min-height: 112px; gap: 8px; }
.tile-label { font-family: 'Noto Sans KR', sans-serif; font-size: 19px; letter-spacing: .2px; text-transform: none; }
.tile-description { font: 14px/1.5 'Noto Sans KR', sans-serif; color: #cbcbd1; }
.tile-col-left .tile:first-child { background: rgba(201,168,76,.15); border-color: #c9a84c; }
.home .guest-name { font-size: clamp(28px, 3.4vw, 44px); overflow-wrap: anywhere; }
.lang-picker .lang-btn { min-width: 58px; min-height: 48px; font-size: 15px; }
button:focus-visible, [role="button"]:focus-visible, select:focus-visible { outline: 3px solid #e8d5a3; outline-offset: 4px; }
.wifi-card { cursor: pointer; padding: 12px 18px; left: 48px; }
.wifi-pass, .wifi-ssid { font-size: 14px; color: #eee; letter-spacing: .4px; }
.wifi-hint { font-size: 12px; color: #ccc; letter-spacing: .3px; }
.pad-wifi-dialog { border: 1px solid #c9a84c; border-radius: 20px; background: #171c2c; color: #fff; padding: 32px; margin: auto; width: min(480px, 90vw); max-height: 90vh; overflow: auto; text-align: center; }
.pad-wifi-dialog::backdrop { background: #000b; }
.pad-wifi-dialog h2 { font-size: 26px; margin-bottom: 16px; }
.pad-wifi-dialog p { font: 18px/1.6 'Noto Sans KR', sans-serif; overflow-wrap: anywhere; margin: 12px 0; }
.pad-wifi-qr { width: 216px; height: 216px; padding: 12px; background: white; margin: 20px auto; }
.pad-control { min-height: 48px; padding: 10px 18px; border: 1px solid #c9a84c; border-radius: 10px; background: #242b3c; color: #f3e6c4; font: 16px/1.4 'Noto Sans KR', sans-serif; cursor: pointer; }
.guide-header { gap: 16px; flex-wrap: wrap; }
.guide-close { min-width: 100px; min-height: 48px; font-size: 16px; }
.pad-guide-index { max-width: min(340px, 70vw); }
.guide-slide-content { font-size: 18px; line-height: 1.85; }
.guide-slide:not(.active) { visibility: hidden; }
.guide-nav { min-width: 52px; min-height: 52px; }
@media (max-width: 850px) {
 .home { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 160px 24px 80px; gap: 20px; align-content: start; }
 .home-center { grid-column: 1 / -1; grid-row: 1; max-width: none; }
 .home-center .home-events { display: block; }
 .tile-col-left { grid-column: 1; grid-row: 2; }
 .tile-col-right { grid-column: 2; grid-row: 2; }
 .wifi-card { left: 24px; top: 66px; }
 .tile { min-height: 108px; padding: 14px 8px; }
 .tile-description { font-size: 13px; }
 .home .label-welcome, .home .guest-property { margin: 6px 0; }
 .home #stage .enter > div[style*="height: 40px"] { display: none; }
}
@media (prefers-reduced-motion: reduce) {
 .tile, .enter, .guide-book, .guide-overlay { animation: none !important; transition: none !important; }
}
