:root{--paper:#f8f6f0;--ink:#263e38;--muted:#596953;--line:#dedfd5;--rust:#ad573a}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:14px}button,input,select{font:inherit}a,button,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bc6946;outline-offset:3px}main{height:100dvh;overflow:hidden;position:relative}.map,.map.maplibregl-map{position:absolute;inset:80px 0 0;background:#e5e9df}.masthead{height:80px;position:relative;z-index:3;background:var(--paper);justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--line)}.brand,.masthead{display:flex;align-items:center}.brand{gap:13px;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:2px;line-height:1.5}.brand-icon{font-family:Georgia,serif;font-size:34px;letter-spacing:-4px;border:1px solid #a6afa1;padding:0 9px 3px 5px;line-height:1.1}.brand-icon span{color:var(--rust)}.edition{font-size:11px;letter-spacing:2px;display:flex;align-items:center;gap:12px}.edition-muted{color:var(--muted)}.dot{width:6px;height:6px;background:#718174;border-radius:50%;display:inline-block}.about-button{display:flex;gap:9px;align-items:center;font-size:12px;min-height:44px}.explorer{position:absolute;top:104px;bottom:30px;left:24px;width:354px;background:var(--paper);z-index:2;box-shadow:0 8px 40px #263e3814;border:1px solid #d9dcd2;border-radius:3px;display:flex;flex-direction:column;padding:27px 24px 0}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#596953}h1{font-family:Georgia,Times New Roman,serif;font-size:43px;line-height:1.08;letter-spacing:-1.6px;margin:16px 0}h1,h1 em{font-weight:400}h1 em{color:var(--rust)}.intro{font-size:12px;line-height:1.8;color:#596953;margin:0 0 23px}.search{display:flex;align-items:center;gap:8px;border:1px solid #d8dbd0;border-radius:3px;padding:3px 9px;min-height:44px;background:#fffdf8}.search input{width:100%;min-width:0;border:0;background:none;font-size:11px;color:var(--ink);outline:none}.search button{padding:8px 0;display:flex}.search-status{font-size:11px;line-height:1.5;max-height:50px;overflow:auto}.filters{display:flex;gap:8px;margin:10px 0 23px}.filters label{flex:1 1}.filters select{width:100%;border:1px solid var(--line);background:transparent;padding:10px 5px;font-size:11px;border-radius:3px;color:var(--ink)}.collection-heading{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.3px;color:#596953;padding-bottom:12px;border-bottom:1px solid var(--line)}.place-list{overflow:auto;min-height:0;flex:1 1;margin:0 -10px;padding:0 10px}.place-row{display:flex;align-items:center;text-align:left;gap:12px;width:100%;padding:15px 0;border-bottom:1px solid var(--line)}.place-row>img{width:62px;height:67px;object-fit:cover;filter:sepia(.15)}.place-row>span{flex:1 1}.place-row small{display:block;font-size:10px;color:#596953;margin-bottom:7px}.place-row strong{display:block;font-family:Georgia,serif;font-size:18px;font-weight:400}.chinese{font-size:10px;color:#596953;display:block;margin-top:5px}.place-row.active,.place-row:hover{background:#eeeee3}.explorer-footer{font-size:10px;color:#596953;display:flex;align-items:center;gap:7px;min-height:46px;flex-shrink:0}.explorer-footer>span:last-child{margin-left:auto}.map-label{position:absolute;left:57%;top:42%;text-align:center;pointer-events:none;color:#788675aa;display:flex;flex-direction:column;gap:9px}.map-label>span{font-size:24px;letter-spacing:13px}.map-label strong{font-size:12px;letter-spacing:6px}.map-label small{font-size:10px;letter-spacing:1px}.map-key{position:absolute;bottom:44px;left:calc(50% - 60px);display:flex;align-items:center;gap:9px;padding:13px 17px;background:#fbfaf4e8;border:1px solid #d4d9cb;border-radius:3px;font-size:10px;color:#5d6c5d}.pin-dot{height:8px;width:8px;background:var(--rust);border-radius:50%}.key-line{height:15px;width:1px;background:#cbd0c2;margin:0 4px}.map-notice,.offline{position:absolute;bottom:85px;left:400px;right:30px;background:var(--paper);padding:12px;font-size:12px;z-index:3}.offline{bottom:25px}.detail{position:absolute;right:24px;top:104px;bottom:30px;width:min(470px,calc(100vw - 420px));z-index:4;background:var(--paper);overflow:auto;border:1px solid #d7dbd0;box-shadow:0 10px 50px #1b352724;border-radius:3px}.detail-top{justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--line)}.detail-top,.detail-top>span{display:flex;align-items:center}.detail-top>span{gap:7px;font-size:10px;letter-spacing:1px}.detail-top button{height:40px;width:40px}.detail-title{padding:25px 24px 18px}.detail-title h2{font:36px Georgia,serif;letter-spacing:-1px;margin:10px 0}.detail-title p{font-size:13px;margin:0;color:#687564}.detail-title p span{font-size:10px}.view-tabs{display:flex;gap:23px;padding:0 24px;border-bottom:1px solid var(--line)}.view-tabs button{padding:13px 0;font-size:11px;border-bottom:2px solid transparent}.view-tabs .chosen{border-color:var(--rust);color:var(--rust)}.view-tabs span{margin-left:6px;font-size:10px}.hero-photo{margin:0;position:relative;background:#e8e5dc;min-height:210px}.hero-photo>img{width:100%;height:280px;object-fit:contain;display:block}.photo-date{bottom:14px;left:18px;padding:6px 9px;font-size:10px}.hero-photo button,.photo-date{position:absolute;background:var(--paper)}.hero-photo button{bottom:10px;right:14px;width:40px;height:40px;border-radius:50%}.timeline{display:flex;gap:15px;padding:18px 24px 8px;overflow-x:auto}.timeline button{font-size:10px;min-height:38px;white-space:nowrap;color:#596953}.timeline button span{display:block;height:4px;background:#d9dccf;margin-bottom:10px}.timeline .current{color:var(--rust)}.timeline .current span{background:var(--rust)}.photo-caption{padding:0 24px 20px;border-bottom:1px solid var(--line)}.photo-caption p{font-size:12px;line-height:1.7}.credit{font-size:10px;line-height:1.8;color:#69745f}.story{padding:23px 24px}.story>p{font:16px/1.7 Georgia,serif}.story>a{font-size:10px;display:inline-flex;align-items:center;gap:4px}.story .coordinates{font:9px Arial,sans-serif;color:#596953;margin-top:20px}.nearby{padding:20px 24px;background:#eeeee4}.nearby button{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;border-bottom:1px solid var(--line);padding:16px 0;font-family:Georgia,serif;font-size:17px}.nearby small{display:block;font:9px Arial,sans-serif;margin-top:6px;color:#596953}.comparison{padding:20px}.side-by-side{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.side-by-side figure{margin:0}.side-by-side img{width:100%;height:190px;object-fit:contain;background:#e9e6db}.side-by-side figcaption{font-size:10px;padding-top:8px}.comparison-note{font-size:11px;line-height:1.7;color:#596953}.slider-images{position:relative;height:300px}.slider-images img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.slider-line{position:absolute;top:0;bottom:0;width:2px;background:white}.comparison input{width:100%;accent-color:var(--rust)}.modal{position:fixed;inset:0;z-index:10;background:#f8f6f0f7;display:flex;align-items:center;justify-content:center;overflow:auto;padding:50px 25px}.modal-close{position:fixed;top:20px;right:25px;width:44px;height:44px;z-index:11}.about{max-width:530px}.about h2{font:48px/1.1 Georgia,serif;letter-spacing:-1px}.about p{font-size:14px;line-height:1.8;color:#697360}.about h3{font:23px Georgia,serif;margin-top:30px}.about>a{font-size:11px}.install{display:flex;align-items:center;gap:9px;padding:12px;background:var(--ink);color:white;margin:20px 0}.lightbox{background:#17231ff5;color:#fff;flex-direction:column}.lightbox>img{max-width:90vw;max-height:75dvh;object-fit:contain}.lightbox-footer{width:min(800px,90vw);display:flex;justify-content:space-between;align-items:center;text-align:center}.lightbox-footer button{width:44px;height:44px;flex-shrink:0}.lightbox .credit{color:#c0c9b8}.lightbox-footer p{font:17px Georgia,serif}.empty{padding:30px 0;font-size:12px}.empty button{text-decoration:underline;min-height:44px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.maplibregl-ctrl-attrib{font-size:9px!important}.maplibregl-ctrl-bottom-right .maplibregl-ctrl-group{margin-bottom:40px}@media (min-width:1500px){.explorer{left:36px}.detail,.explorer{top:116px;bottom:36px}.detail{right:36px;width:520px}.hero-photo>img{height:330px}}@media (max-width:1024px){.masthead{height:64px;padding:0 16px}.brand{font-size:10px;letter-spacing:1.4px;gap:8px}.brand-icon{font-size:28px}.edition{font-size:10px;letter-spacing:1px}.about-button span,.edition-muted{display:none}.about-button{width:35px;justify-content:center}.map,.map.maplibregl-map{top:64px;bottom:43%}.explorer{top:auto;bottom:0;left:0;width:100%;height:43%;padding:17px 18px 0;border-radius:16px 16px 0 0;box-shadow:0 -5px 25px #263e3814}.explorer-footer,.explorer>.eyebrow,.explorer>.intro,.explorer>h1{display:none}.filters{margin:8px 0 12px}.filters select{padding:7px}.collection-heading{padding-bottom:8px}.place-row{padding:10px 0}.place-row>img{height:48px;width:55px}.place-row strong{font-size:17px}.place-row small{margin-bottom:4px}.chinese{display:none}.map-label{left:42%;top:25%}.map-key{left:16px;bottom:45%;font-size:10px;padding:10px}.map-key .key-line,.map-key .key-line+span{display:none}.detail{top:23%;bottom:0;left:0;right:0;width:100%;border-radius:17px 17px 0 0}.detail-top{position:-webkit-sticky;position:sticky;top:0;background:var(--paper);z-index:2}.detail-title{padding-top:18px}.detail-title h2{font-size:32px}.hero-photo>img{height:250px}.map-notice{left:15px;right:15px;top:75px;bottom:auto;z-index:2}.offline{left:10px;right:10px;bottom:44%;font-size:11px}.about h2{font-size:39px}.modal{align-items:flex-start;padding-top:80px}.lightbox{justify-content:center;align-items:center}.lightbox>img{max-height:65dvh}.search-status{margin:5px 0;max-height:30px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl-group{margin-bottom:10px}.maplibregl-ctrl-attrib{max-width:240px}.side-by-side img{height:170px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.detail-top button{min-height:44px;min-width:44px}.filters select{min-height:40px}.map-label{display:none}@media (max-width:1024px){.about-button{width:44px}.filters select{min-height:44px}.map-key{display:none}}@media (min-width:1025px){.has-detail .maplibregl-ctrl-bottom-right .maplibregl-ctrl-group{margin-right:calc(min(470px, 100vw - 420px) + 40px)}.has-detail .map-key{display:none}}@media (min-width:1500px){.has-detail .maplibregl-ctrl-bottom-right .maplibregl-ctrl-group{margin-right:572px}}@media (min-width:761px) and (max-width:1024px){.detail{top:35%}}@media (max-width:1024px){.has-detail .maplibregl-ctrl-bottom-right .maplibregl-ctrl-group{position:fixed;top:72px;right:10px;margin:0}}.period-note{margin:0;padding:12px 24px;font-size:12px;line-height:1.6;border-bottom:1px solid var(--line)}.period-note button{text-decoration:underline;min-height:32px}.test-note{font-size:12px;line-height:1.6;margin:8px 0;color:#42594f}.share-actions{display:flex;gap:16px;padding:0 24px 12px}.share-actions button{font-size:12px;text-decoration:underline;min-height:36px}