.entry-scene{display:grid;place-items:center;background:#102b2c}.entry-scene[hidden]{display:none}#entry-button{background:transparent;color:#eee9d7;border:1px solid #eee9d755;border-radius:50%;width:140px;height:140px;font:14px Georgia,serif;letter-spacing:.24em}.loading-caption{font-size:10px!important}body{font-family:'Microsoft YaHei','PingFang SC','Noto Sans CJK SC',Arial,sans-serif}dialog{border:0!important;border-radius:22px;isolation:isolate;background-clip:padding-box!important;box-shadow:0 20px 80px #0003}dialog::before,dialog::after{border-radius:inherit!important}dialog button{border:0!important;box-shadow:none!important}dialog button:focus:not(:focus-visible){outline:none!important}dialog button:focus-visible{outline:0!important;text-decoration:underline;text-underline-offset:5px}body[data-theme=light] dialog,body[data-theme=light] .bridge-organizations button,body[data-theme=light] .bridge-pa,body[data-theme=light] .memory-card{background:#eceee2;color:#244944}body[data-theme=dark] dialog,body[data-theme=dark] .collection-dialog,body[data-theme=dark] .collection-grid button,body[data-theme=dark] .memory-card{background:#192f30;color:#eeeddf}body[data-theme=dark] .collection-dialog *{color:#eeeddf}body .invitation-heading,body .invitation-actions,body .invitation-actions p{color:#f5f0df!important;text-shadow:0 2px 9px #172c29}body .house-sign,body .upside-sign{color:#f4efdc!important;opacity:.78!important}.key-chest{display:grid!important;place-items:center!important}.key-chest span{position:static!important;margin:0!important;transform:none!important;text-align:center!important;width:100%}body[data-scene=cover] #enter-exhibition{display:block!important;visibility:visible!important;opacity:1!important;animation:none!important}body .ending-scene{background:#102b2c;color:#f3efdf}body .ending-copy p,body .ending-copy button{color:#f3efdf!important}body .ending-scene .cover-landscape{filter:brightness(.5)}.v2-toast{position:fixed;z-index:99999;left:50%;bottom:15%;transform:translateX(-50%);padding:14px 24px;border-radius:24px;background:#183b39;color:#fff;font-size:13px;box-shadow:0 8px 40px #0004}.stage-current path{fill:none;stroke:var(--ui-muted,#9da98d);stroke-width:1.2;stroke-linecap:round}.stage-tracer{fill:#e9edbb;filter:drop-shadow(0 0 5px #e9edbb)}
@media(max-width:760px){body .upside-viewport{inset:100px 0 65px;display:grid;place-items:center}body .upside-world{width:min(100vw,calc((100svh - 165px)*.75));height:auto!important;aspect-ratio:1086/1448;max-width:100%;margin:0!important;transform:none!important;left:auto!important;top:auto!important}body .upside-nav{top:90px;padding-top:0;left:18px}body .upside-sign{font-size:25px!important}body .upside-front{padding:130px 0 90px}body .upside-print-viewer{border-radius:0}dialog{max-width:calc(100vw - 28px);box-sizing:border-box}body .bridge-organizations button,body .bridge-pa{color:var(--ui-ink)!important}body .scene{max-width:100vw}}

:root{--sans:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC","Heiti SC",Arial,sans-serif;--serif:Georgia,"Times New Roman","Noto Serif CJK SC","Songti SC",serif}button,input,textarea{font-family:inherit}body[data-theme=dark] .collection-grid figure,body[data-theme=dark] .collection-grid article{background:#192f30;color:#eeeddf}
body .upside-scene{background:#183532!important}body .upside-nav{z-index:6}body .upside-sign{color:#f4efdc!important;text-shadow:0 2px 10px #0008}

/* Locally served subset of Adobe Source Han Serif; see assets/fonts/LICENSE.txt. */
@font-face{font-family:'Eesta Serif';src:url('assets/fonts/eesta-serif-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--sans:'Eesta Serif','Songti SC',SimSun,serif;--serif:Georgia,'Times New Roman','Eesta Serif',serif}
body,button,input,textarea,select{font-family:'Eesta Serif','Songti SC',SimSun,serif}
.invitation-heading,.weather-title-row h2,.bridge-copy,.bridge-dialog,.timeline-card,.stage-card,.upside-original-note,.more-content,.help-dialog,.postcard-dialog{font-family:'Eesta Serif','Songti SC',SimSun,serif!important}

/* Audited mobile palette and clipping, final cascade. */
body[data-theme] dialog{color:var(--ui-ink);background:var(--ui-panel);border:0!important;overflow:auto;clip-path:inset(0 round 22px)}
body[data-theme] dialog::before,body[data-theme] dialog::after{position:absolute!important;inset:0!important;border-radius:inherit!important;pointer-events:none}
body[data-theme] dialog button{color:inherit;border:0!important;outline:none!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent}
body[data-theme] dialog button:focus-visible{text-decoration:underline;text-underline-offset:5px}
body[data-theme] .weather-back,body[data-theme] .bridge-organizations button,body[data-theme] .bridge-pa,body[data-theme] .bridge-timeline article,body[data-theme] .stage-card,body[data-theme] .timeline-card{background:var(--ui-panel)!important;color:var(--ui-ink)!important}
body[data-theme] .bridge-pa::before{background:linear-gradient(var(--ui-panel),var(--ui-panel)),url('assets/bridge/pa.png') center/cover;opacity:.3}
body[data-theme] .weather-back p,body[data-theme] .bridge-pa span,body[data-theme] .bridge-organizations span{color:var(--ui-ink)!important}
body[data-theme] .weather-confirm{background:var(--ui-ink);color:var(--ui-bg)}
body[data-theme] .collection-dialog,body[data-theme] .collection-dialog header,body[data-theme] .collection-grid,body[data-theme] .ticket-dialog{background:var(--ui-bg)!important;color:var(--ui-ink)!important}
body[data-theme] .collection-grid button{background:transparent!important;color:inherit!important}
body[data-theme] .invitation-heading h2,body[data-theme] #reveal-photo,body[data-theme] #open-collection{color:#f6f1df!important;text-shadow:0 2px 6px #152d29,0 0 16px #152d29}
body[data-theme] .house-sign,body[data-theme] .upside-sign{color:#f4efdc!important;opacity:.8!important}
body[data-theme] .ending-scene{--ui-bg:#102323;--ui-ink:#e9eddf;--ui-muted:#a5b6ab;color:#e9eddf!important;background:#102323!important}
body[data-theme] .ending-scene .cover-grade{background:linear-gradient(#10232388,#10232366,#102323cc)!important;opacity:1;mix-blend-mode:normal}
body[data-theme] .ending-scene .cover-landscape{filter:brightness(.55)!important}
body[data-scene=ending][data-theme] .site-header,body[data-scene=entry][data-theme] .site-header{color:#e9eddf!important}
body[data-scene=ending][data-theme] .menu-toggle>span,body[data-scene=entry][data-theme] .menu-toggle>span{background:#e9eddf!important}
body[data-theme] #enter-exhibition{z-index:5;pointer-events:auto}
body[data-theme] .hall-guide li button{width:auto;min-width:48px;padding:0 8px;font-size:12px}
body .spot-locate{animation:none!important;background:transparent!important;filter:none!important}
body .key-chest span{font-family:Georgia,'Eesta Serif',serif!important;font-size:clamp(13px,3.8vw,19px);opacity:.95;line-height:1.5}
body .gallery-viewer,body .upside-print-viewer,body .stage-zoom{clip-path:none!important;border-radius:0!important;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh}
@media(max-width:760px){body .upside-world{width:min(100%,calc((100svh - 165px)*.75))!important;max-height:100%;height:auto!important}body .upside-nav{top:calc(92px + env(safe-area-inset-top));left:18px}body .upside-scene[data-wall] .upside-nav{display:none}body .upside-front{padding:90px 0 85px}body .collection-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:24px 16px}body .hall-guide{max-height:calc(100dvh - 40px);padding:42px 24px 22px}body .hall-guide li{padding:12px 0}body .more-dialog::before{filter:none}body .more-content p{font-family:'Eesta Serif',serif!important}}
body .stage-current>svg{fill:none;stroke:#64836d;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px #f1f7c8aa);pointer-events:none}body .stage-current>svg path{stroke:#64836d;stroke-width:2}body .stage-tracer{fill:#f6fae8;stroke:#759065;stroke-width:2;filter:drop-shadow(0 0 8px #fffbd3)}body .stage-past-line{stroke:#64836d;stroke-dasharray:4 9;opacity:.5}body .gallery-photo{transition:none!important}body .gallery-photo img{max-height:none!important}body .gallery-restart{position:absolute;z-index:8;bottom:35px;left:50%;transform:translateX(-50%);padding:15px 25px;border:0;background:var(--ui-panel);color:var(--ui-ink);border-radius:30px}
body[data-scene=ending]{--ui-bg:#102323;--ui-ink:#e9eddf;--ui-muted:#a5b6ab;--ui-panel:#1a3130f5;--ui-line:#c4d0ae44;color-scheme:dark}body[data-scene=ending] .more-dialog::before{background-image:linear-gradient(#102b2cdf,#102b2ced),url('assets/guest/more.webp')!important}
body:is([data-scene=hall],[data-scene=upside],[data-scene=alphabet],[data-scene=invitation]) .site-header{color:#f4efdc!important}body:is([data-scene=hall],[data-scene=upside],[data-scene=alphabet],[data-scene=invitation]) .menu-toggle>span{background:#f4efdc!important}
body[data-theme] .memory-card{background:var(--ui-panel)!important;color:var(--ui-ink)!important}body[data-theme] .key-dialog input{background:var(--ui-bg);color:var(--ui-ink);border-bottom-color:var(--ui-line)}body[data-theme] .ticket-zoom-scroll{background:var(--ui-bg)}
body .stage-current .timeline-node{fill:#d5e0b9;stroke:#64836d;stroke-width:1.2}
body[data-theme] .upside-footer{color:#f4efdc!important;opacity:.8;text-shadow:0 1px 8px #0008}
