:root{font-family:"Noto Sans TC",sans-serif;background:#303030;color:#fff;font-weight:500}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#303030}button,a{font:inherit}button{color:inherit}#app{min-height:100svh}
.artboard{width:min(100%,1080px);min-height:max(100svh,calc(min(100vw,1080px)*1.77778));margin:0 auto;position:relative;overflow:hidden;background:#303030}.title-banner{position:absolute;z-index:6;top:0;left:0;width:100%;pointer-events:none}.background-layer{position:absolute;inset:0;width:100%;height:auto;opacity:0;transition:opacity .55s ease;pointer-events:none}.background-layer.is-visible{opacity:1}.content{position:absolute;z-index:5;inset:0}.zone{position:absolute;left:50%;transform:translateX(-50%);width:100%;text-align:center}
.media-tile{border:0;padding:0;width:55.556%;aspect-ratio:1;border-radius:40px;overflow:hidden;background:#171717;cursor:pointer;box-shadow:0 0 15px var(--glow,#f3ae17);display:grid;place-items:center}.media-tile img{width:100%;height:100%;object-fit:cover}.play-symbol{width:0;height:0;border-top:30px solid transparent;border-bottom:30px solid transparent;border-left:48px solid #fff;margin-left:8px;filter:drop-shadow(0 2px 4px #0008)}.copy{font-size:clamp(1.35rem,7.4vw,5rem);line-height:1.35;color:#fff;text-shadow:0 2px 8px #0008;margin:0}.copy.small{font-size:clamp(1rem,5.55vw,3.75rem)}.copy-action{border:0;background:transparent;padding:12px 22px;cursor:pointer;text-decoration:none}.entry-media{top:26.042%}.entry-copy{top:62.5%}
.main-buttons{top:26.042%;width:90.741%;display:grid;grid-template-columns:repeat(6,1fr);gap:3.704%;align-items:start}.stage-tile{border:0;padding:0;aspect-ratio:1;border-radius:40px;overflow:hidden;background:#181818;position:relative;cursor:pointer;box-shadow:0 0 15px var(--glow,#f3ae17)}.stage-tile:nth-child(1){grid-column:2 / span 2}.stage-tile:nth-child(2){grid-column:4 / span 2}.stage-tile:nth-child(3){grid-column:1 / span 2}.stage-tile:nth-child(4){grid-column:3 / span 2}.stage-tile:nth-child(5){grid-column:5 / span 2}.stage-tile:nth-child(n+3){margin-top:-2%}.stage-tile img{width:100%;height:100%;object-fit:cover;display:block}.stage-tile .mini-play{position:absolute;inset:0;display:grid;place-items:center;background:#0004}.stage-tile .mini-play span{width:0;height:0;border-top:22px solid transparent;border-bottom:22px solid transparent;border-left:34px solid #fff;margin-left:5px}.stage-tile .complete-badge{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.main-copy{top:62.5%}
.map-frame{top:26.042%;width:74.074%;height:31.25%;border:0;border-radius:12px;overflow:hidden;box-shadow:0 0 15px var(--glow,#e5ad70);background:#252525}.map-frame iframe{width:100%;height:100%;border:0}.map-name{top:62.5%}.map-address{top:70.3125%;padding:0 10%}.guide-media{top:26.042%}.guide-heading{top:62.5%;padding:0 8%}.guide-list{position:absolute;z-index:6;top:70.3125%;left:10%;right:10%;display:grid;gap:8px}.guide-list a{color:#fff;text-decoration:none;font-size:clamp(1.15rem,6.2vw,4rem);line-height:1.28;text-shadow:0 2px 8px #0008}
.return-link{position:fixed;z-index:10;top:max(12px,env(safe-area-inset-top));left:14px;border-radius:999px;padding:9px 13px;color:#fff;background:#303030cc;text-decoration:none;font-size:.9rem}.player-page{position:fixed;inset:0;background:#000;display:grid;place-items:center}.player-page #player{width:100%;aspect-ratio:16/9}.player-page iframe{width:100%;height:100%}.watch-start{position:fixed;inset:0;z-index:2;display:grid;place-items:center;text-align:center;padding:30px;background:linear-gradient(#0008,#000d)}.watch-start button{border:0;border-radius:999px;background:#eeb017;color:#2f2416;padding:16px 34px;font-size:1.2rem;font-weight:700;cursor:pointer}.watch-start p{line-height:1.7}.status-chip{position:fixed;z-index:3;top:16px;right:16px;background:#000a;border-radius:999px;padding:8px 12px;font-size:.85rem}.empty-state{padding-top:46%;text-align:center}.empty-state .copy{padding:0 12%}
@media (min-width:1081px){.artboard{box-shadow:0 0 60px #0007}}@media (max-width:480px){.stage-tile{border-radius:18px}.media-tile{border-radius:24px}.copy{font-size:clamp(1.2rem,7.4vw,2rem)}.guide-list a{font-size:1.25rem}}
