:root{color-scheme:dark;--ivory: #f2e8cc;--muted: #b7bdc4;--gold: #e5cc8e;--ease: cubic-bezier(.23, 1, .32, 1)}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#0c1730;color:var(--ivory);font-family:Arial,PingFang SC,sans-serif}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button:disabled{cursor:wait;opacity:.65}#world,#world canvas,#painting,.vignette{position:fixed;inset:0;width:100%;height:100%}#world canvas{display:block;touch-action:none}#painting{background:#162843 url(/starry-night/starry-night.jpg) center center/cover no-repeat;transform-origin:55% 57%;pointer-events:none;will-change:opacity,transform}.vignette{pointer-events:none;background:linear-gradient(90deg,#030a1ac7,#040b1d21 56%,#040b1d14),linear-gradient(0deg,rgba(4,10,23,.55),transparent 26%,transparent 75%,rgba(4,10,23,.32));transition:opacity .25s var(--ease)}header{position:fixed;top:35px;left:4%;right:4%;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:13px;color:var(--ivory);text-decoration:none;font-size:17px;letter-spacing:4px}.brand-mark{font-size:38px;font-weight:200;color:var(--gold)}.brand small{display:block;font-size:9px;letter-spacing:2.2px;margin-top:7px;color:#d4d5ce}.edition{font-size:10px;letter-spacing:2px;color:#d5d7d1}.edition span{display:inline-block;margin-left:25px;padding-left:25px;border-left:1px solid #ffffff40}#intro{position:fixed;left:9%;top:29%}.eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:3px;font-size:12px;color:#ddd7c5}.eyebrow>span{width:28px;height:1px;background:var(--gold)}h1{font:400 clamp(64px,6.9vw,108px) / 1.15 "Songti SC","Songti SC",serif;letter-spacing:15px;margin:24px 0 26px}h1 span{display:block;font:11px Arial,sans-serif;letter-spacing:6px;margin-top:20px;margin-left:4px}#intro p{font:16px/2 Songti SC,Songti SC,serif;letter-spacing:3px;color:#e0dfd6;margin-bottom:30px}.enter{border:1px solid #ead6a975;background:#111e3280;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:space-between;width:206px;padding:17px 22px;font-size:14px;letter-spacing:3px;transition:background .18s var(--ease),transform .18s var(--ease)}.enter>span:last-child{font-size:24px;color:var(--gold);line-height:16px}.intro-note{font-size:10px;letter-spacing:1.5px;color:#c6c9c5;margin-top:18px}.intro-note i{font-style:normal;padding:0 9px}footer{position:fixed;bottom:29px;left:4%;right:4%;display:flex;align-items:center;justify-content:space-between}.art-credit{font-family:Songti SC,STSong,SimSun,serif;font-size:13px;letter-spacing:3px}.art-credit span{display:block;margin-top:7px;font:9px Arial;letter-spacing:1.6px;color:#bcc4c6}.intro-controls{display:flex;gap:22px}.intro-controls button{background:none;border:0;font-size:12px;letter-spacing:1px}.intro-controls span{font-size:22px;margin-left:10px}#chapter{position:fixed;left:4%;top:130px;opacity:0;pointer-events:none}#chapter-number{font-size:10px;color:var(--gold);letter-spacing:3px}#chapter-title{font:26px Songti SC,Songti SC,serif;letter-spacing:5px;margin-top:14px}#transport{position:fixed;bottom:27px;left:50%;transform:translate(-50%);width:min(630px,90vw);padding:15px 20px 10px;border:1px solid #d4d9df25;border-radius:3px;background:#091627a8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:none}.journey-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.6px;color:#d8d8cb}#time-label{font-variant-numeric:tabular-nums;color:#a7b6c3;font-size:10px;letter-spacing:1px}#timeline{display:block;width:100%;height:14px;margin:7px 0;appearance:none;background:transparent;cursor:pointer}#timeline::-webkit-slider-runnable-track{height:2px;background:linear-gradient(to right,var(--gold) var(--progress, 0%),#a4bac333 var(--progress, 0%))}#timeline::-webkit-slider-thumb{appearance:none;height:7px;width:7px;border-radius:50%;background:var(--gold);margin-top:-2.5px}#timeline::-moz-range-track{height:2px;background:#a4bac333}#timeline::-moz-range-thumb{height:7px;width:7px;border:0;background:var(--gold)}.toolbar,.toolbar>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.toolbar button{background:none;border:0;padding:7px 4px;font-size:19px;min-width:28px;min-height:36px}.toolbar #explore,.toolbar #quiet-motion{font-size:11px;letter-spacing:1px}.toolbar #explore{border-left:1px solid #ffffff25;padding-left:14px}#hint{font-size:10px;letter-spacing:1px;color:#9facb8}#notice{position:fixed;top:85px;left:50%;transform:translate(-50%);padding:12px 20px;background:#081525df;border:1px solid #e1ca8140;opacity:0;pointer-events:none;font-size:13px;transition:opacity .18s var(--ease);z-index:5}#notice.visible{opacity:1}.running #intro,.running footer{display:none}.running header{opacity:.7}.running #chapter{opacity:1}.running #transport{display:block}.running .vignette{opacity:.42}#touch-move{position:fixed;left:20px;bottom:150px;display:none;text-align:center}#touch-move button{border:1px solid #fff3;background:#0a1935a6;width:40px;height:40px;margin:2px;border-radius:50%;font-size:18px;touch-action:none}.pure .ui,.pure #notice,.pure .vignette{display:none!important}.pure #painting{background-size:cover}#error{position:fixed;inset:0;z-index:20;padding:25vh 10%;background:#0c1730}#error p{max-width:520px;line-height:1.8}#error button{padding:12px 25px;background:transparent;border:1px solid var(--gold)}button[aria-pressed=true]{color:var(--gold)}@media(hover:hover)and (pointer:fine){button:hover{color:#fff4cc}.enter:hover{background:#30455ab3;transform:translateY(-2px)}}@media(max-width:600px){header{top:22px;left:6%;right:6%}.edition{display:none}.brand{font-size:14px}.brand-mark{font-size:30px}.brand small{font-size:8px}#painting{background-position:57% center}#intro{left:9%;top:27%}h1{font-size:76px}.eyebrow{font-size:11px}#intro p{font-size:14px}footer{bottom:24px;left:7%;right:7%}.art-credit span{font-size:8px}.intro-controls{gap:8px}.intro-controls button{font-size:11px}#chapter{top:105px;left:7%}#chapter-title{font-size:22px}#transport{bottom:max(16px,env(safe-area-inset-bottom));padding:13px 15px 8px}#hint{display:none}.toolbar{gap:7px}.toolbar>div{gap:9px}.exploring #touch-move{display:block}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.enter{transition:none}#painting{will-change:opacity}.vignette,#notice{transition:none}}@media(max-width:600px){#notice{top:auto;bottom:170px;width:86vw;text-align:center;line-height:1.7}}
