:root{font-family:system-ui,"Microsoft JhengHei",sans-serif;color:#203630;background:#e4ebe9;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bb893b;outline-offset:4px}[hidden]{display:none!important}a{color:inherit;text-underline-offset:4px}#explorer{position:fixed;inset:0;overflow:hidden}#stage,#labels{position:absolute;inset:0}#stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#stage canvas:active{cursor:grabbing}#labels{pointer-events:none;overflow:hidden}.masthead{position:absolute;top:27px;left:34px;right:34px;display:flex;justify-content:space-between;align-items:start;pointer-events:none}.brand{text-decoration:none;pointer-events:auto;text-shadow:0 2px 10px #fff}.brand small{font-size:12px;letter-spacing:.17em}.brand h1{margin:5px 0 3px;font-size:29px;letter-spacing:.11em;font-weight:500;line-height:1.25}.brand h1 span{font:42px/1 Georgia,serif;letter-spacing:.01em;margin-left:10px}.brand p{font-size:13px;margin:7px 0}.edition{text-align:right;display:grid}.edition>span{font-size:13px;letter-spacing:.1em}.edition strong{font:40px/1.3 Georgia,serif}.edition strong span{font-size:18px;margin-left:3px}.edition small{font-size:12px}.views{position:absolute;left:34px;top:143px;display:flex;gap:3px;padding:5px;background:#ffffffeb;box-shadow:0 7px 25px #24393110;border:1px solid #fff;border-radius:7px}.views button{border:0;padding:11px 15px;background:transparent;font-size:14px;border-radius:4px;white-space:nowrap}.views button[aria-pressed=true]{background:#23493e;color:#fff}.tools{position:absolute;right:27px;top:160px;display:grid;gap:7px}.tools button,.compass{width:47px;height:44px;border:1px solid #cbd5cd;border-radius:5px;background:#ffffffed;box-shadow:0 3px 12px #23493e0a;font-size:12px;white-space:nowrap;padding:0}.tools button[aria-pressed=true]{background:#23493e;color:white}#zoom-in,#zoom-out{font-size:23px}.compass{height:47px;border-radius:50%;display:grid;place-items:center;margin-bottom:10px;font-size:15px;color:#876b36}.place-panel{position:absolute;left:34px;bottom:110px;width:270px;padding:20px;background:linear-gradient(115deg,#fbfdf8f0,#fbfdf8dc);border:1px solid #ffffffd9;border-radius:7px;box-shadow:0 8px 28px #2439310e}.eyebrow{font:12px/1.3 Georgia,serif;letter-spacing:.1em;color:#806638;margin:0 0 9px}.place-panel h2{font-size:22px;font-weight:500;line-height:1.45;margin:0 0 9px;letter-spacing:.015em}.place-panel>p:not(.eyebrow){font-size:14px;line-height:1.7;color:#546760;margin:0}.place-panel details{margin-top:17px;border-top:1px solid #d7dfd7;padding-top:12px;font-size:14px}.place-panel summary{cursor:pointer}.place-panel summary output{font-size:12px;color:#6b7c72;margin-left:8px}.place-panel select{margin:13px 0 3px 12px;padding:5px 8px;border:1px solid #c3d0c3;border-radius:4px;background:white}.fine{font-size:12px;line-height:1.7;color:#65756d}.place-panel details a{font-size:13px}.street-options{display:flex;gap:5px;margin-top:14px}.street-options button{padding:5px 8px;border:1px solid #c5d0c5;background:transparent;border-radius:4px;font-size:12px}.street-options button[aria-pressed=true]{background:#23493e;color:white}.sun-panel{position:absolute;right:88px;bottom:45px;width:390px;background:#ffffffed;border:1px solid #fff;border-radius:8px;padding:13px 19px 9px;box-shadow:0 8px 32px #203d311a}.sun-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.sun-heading label{font-size:12px;display:flex;align-items:center;gap:6px}.sun-heading input{width:123px;font-size:13px;border:0;background:transparent}.sun-heading output{font:28px/1 Georgia,serif;font-variant-numeric:tabular-nums}.sun-heading button{font-size:12px;border:1px solid #bdcdbf;background:#edf1e9;padding:5px 8px;border-radius:4px}.time-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#time{width:100%;margin:14px 0 0;accent-color:#a38146}.time-ticks{display:flex;justify-content:space-between;font-size:11px;color:#748078}footer{position:absolute;left:34px;right:30px;bottom:14px;display:flex;justify-content:space-between;font-size:12px;align-items:center;gap:15px;color:#54685f}footer>div{display:flex;gap:14px;align-items:center}footer button{font-size:12px;border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;padding:0}#loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fffffff5;text-align:center;padding:30px 40px;border-radius:9px;box-shadow:0 12px 70px #254f4322;max-width:90%;min-width:270px}.load-mark{font:52px/1.1 Georgia,serif;color:#426455}#loading p{font-size:14px;margin-bottom:0}#info{position:absolute;right:25px;top:80px;bottom:50px;width:min(420px,calc(100% - 30px));overflow:auto;padding:27px;background:#fafcf8f7;border:1px solid #ced8cf;border-radius:9px;box-shadow:0 15px 65px #193b342b;z-index:10;font-size:14px;line-height:1.75}#info h2{font-size:20px;font-weight:500;padding-right:18px;line-height:1.5}#info ul{padding-left:20px}#info li{margin:6px 0}#info-close{position:absolute;right:10px;top:6px;border:0;background:transparent;font-size:28px}.map-label{position:absolute;left:0;top:0;white-space:nowrap;padding:4px 8px;background:#f9fcf4d9;border:1px solid #d6e0d2;border-radius:4px;font-size:12px;line-height:1.3;box-shadow:0 2px 8px #122f2610;color:#435d50}.map-label.main{background:#23483ff2;color:white;border-color:#c7ac7a;font-size:14px;padding:7px 11px}.map-label.park{color:#365735;background:#e9f1dfed}.map-label.floor{background:#9a6f2b;color:#fff;border-color:#e7cd98;font-size:14px}.map-label.landmark{color:#6f552a;background:#fff9e9ec}.embed .edition{display:none}.embed .masthead{top:22px}.embed .brand small{font-size:11px}.embed .brand h1{font-size:25px}.embed .brand h1 span{font-size:35px}.embed .views{top:125px}.embed .place-panel{bottom:150px}.embed footer .interaction-hint{display:none}
@media(max-width:1000px){.place-panel{width:230px;padding:16px}.place-panel h2{font-size:19px}.sun-panel{left:auto;right:88px;transform:none;width:360px}.interaction-hint{display:none}footer{justify-content:flex-end}}
@media(max-width:680px){.masthead{top:19px;left:18px;right:18px}.brand small{font-size:10px;letter-spacing:.12em}.brand h1{font-size:23px}.brand h1 span{font-size:35px}.brand p{font-size:12px}.edition strong{font-size:28px}.edition>span{font-size:11px}.edition small{display:none}.views,.embed .views{left:14px;right:14px;top:125px;padding:4px;justify-content:space-between}.views button{font-size:13px;padding:10px 8px}.tools{top:192px;right:14px;gap:5px}.tools button,.compass{width:42px;height:40px}.compass{height:42px;margin-bottom:5px}.place-panel,.embed .place-panel{left:15px;bottom:170px;width:220px;padding:13px 14px}.place-panel .eyebrow{display:none}.place-panel h2{font-size:17px;margin-bottom:5px}.place-panel>p:not(.eyebrow){font-size:12px;line-height:1.5}.place-panel details{margin-top:10px;padding-top:8px;font-size:13px}.place-panel details[open]{max-height:180px;overflow:auto}.sun-panel{width:calc(100% - 30px);left:15px;right:15px;bottom:47px;padding:12px 14px 8px}.sun-heading output{font-size:25px}.sun-heading input{font-size:12px;width:112px}.sun-heading label{gap:3px}.sun-heading button{font-size:11px;padding:5px}.time-ticks{font-size:10px}footer{bottom:15px;left:15px;right:15px;font-size:11px}footer>div{gap:10px}footer button{font-size:11px}#counts{font-size:10px}.map-label{font-size:11px}.map-label.main{font-size:12px}#info{top:16px;bottom:15px;right:15px;font-size:14px;padding:22px}.embed .masthead{top:18px}.embed .brand p{margin:5px 0}.embed .brand h1{font-size:23px}.embed .brand h1 span{font-size:34px}}
@media(max-height:640px) and (min-width:681px){.place-panel{bottom:48px}.views,.embed .views{top:125px}.tools{top:135px}.place-panel>p:not(.eyebrow){display:none}.sun-panel{bottom:42px}.place-panel{padding:14px;width:240px}.embed .place-panel{bottom:45px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.night .brand{color:#eef5ed;text-shadow:none}.night .edition,.night footer{color:#edf3e9}.night footer a,.night footer button{color:inherit}
