:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#faf6e9;background:#273e35;font-weight:400;font-size:13px;letter-spacing:0;font-synthesis:none;-webkit-font-smoothing:antialiased;--accent:#d9c397;--line:rgba(243,236,212,.19)}*{box-sizing:border-box}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button{transition:background .18s,color .18s,opacity .18s}button:hover{color:#fff}svg{flex-shrink:0}button svg{pointer-events:none}button,input{touch-action:manipulation}#root,.app{width:100%;height:100%;min-height:540px}.app{position:relative;height:100svh;overflow:hidden}.city-canvas{position:absolute!important;inset:0;touch-action:none}.scene-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(17,29,26,.4) 0%,transparent 21%,transparent 60%,rgba(16,29,25,.15) 76%,rgba(16,29,25,.8) 100%),linear-gradient(90deg,rgba(24,35,29,.34),transparent 43%)}.topbar{position:absolute;left:40px;right:40px;top:26px;display:flex;align-items:center;justify-content:space-between;height:50px;gap:30px;border-bottom:1px solid var(--line);padding-bottom:22px;height:72px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-seal{width:40px;height:40px;border:1px solid rgba(244,233,203,.5);border-radius:50%;display:grid;place-items:center;color:var(--accent)}.brand strong{font-family:Cormorant Garamond,Georgia,serif;font-size:19px;font-weight:600;display:block}.brand small{font-size:10px;color:#e4ddc8;display:block;margin-top:2px}.view-nav{display:flex;gap:28px;height:49px;align-self:center;margin-left:48px}.view-nav button{position:relative;white-space:nowrap;display:flex;align-items:center;gap:7px;color:#fcf7e6a6;font-size:12px;min-width:66px}.view-nav button.active{color:#fff4d8}.nav-index{font-size:9px;opacity:.48}.nav-line{position:absolute;bottom:-11px;left:0;right:0;height:2px;background:var(--accent);transform:scaleX(0);transition:transform .25s}.active .nav-line{transform:scaleX(1)}.header-actions{display:flex;align-items:center;gap:8px}.era{white-space:nowrap;font-size:11px;color:#eee7d6;margin-right:13px}.era span{opacity:.45;margin:0 7px}.icon-button{width:37px;height:37px;display:flex;align-items:center;justify-content:center;position:relative;border-radius:50%;color:#f4efdf;flex-shrink:0}.icon-button:hover,.icon-button.selected{background:#efe6d01c}.tooltip{position:absolute;white-space:nowrap;top:calc(100% + 12px);left:50%;transform:translate(-50%);font-size:11px;padding:7px 10px;border-radius:4px;color:#f4eddc;background:#111f1bf0;pointer-events:none;opacity:0;transition:opacity .16s;border:1px solid rgba(255,255,255,.12);z-index:8}.icon-button:hover .tooltip,.icon-button:focus-visible .tooltip{opacity:1}.header-actions .icon-button:last-child .tooltip{left:auto;right:0;transform:none}.editorial-title{position:absolute;left:43px;top:23.5%;pointer-events:none;text-shadow:0 2px 20px rgba(17,29,22,.13)}.eyebrow{font-size:9px;display:flex;align-items:center;gap:10px;color:#e9d9b8}.short-rule{width:23px;height:1px;background:#deca9d}.editorial-title h1{font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:76px;line-height:.91;margin:20px 0 18px;color:#fff8e6}.editorial-title h1 span{font-style:italic;font-weight:400}.title-chinese{font-family:"Noto Serif SC",Songti SC,serif;font-size:23px;font-weight:400}.editorial-title p{font-size:11px;color:#fcf3dcc4;margin:13px 0 24px}.title-date{display:flex;align-items:center;gap:7px;font-size:10px;color:#e5d5b2}.title-date>span{height:4px;width:4px;border-radius:50%;background:#e0c69a}.scene-caption{position:absolute;left:43px;bottom:190px;display:flex;align-items:center;gap:17px}.caption-count{font-family:Cormorant Garamond,Georgia,serif;font-size:35px;color:var(--accent);display:flex;align-items:center;gap:9px}.caption-count>span{font-family:Inter,sans-serif;font-size:10px;color:#d3d5c5}.caption-location{font-family:"Noto Serif SC",Songti SC,serif;font-size:15px;margin-bottom:6px}.caption-region{font-size:8px;color:#d4d7c7}.scene-tools{position:absolute;right:43px;bottom:190px;display:flex;align-items:center;gap:20px}.compass-mark{position:relative;display:grid;place-items:center;color:#efe6cf}.compass-mark>span{position:absolute;top:-13px;font-size:9px}.compass-mark>svg{transform:rotate(-29deg)}.camera-tools{display:flex;gap:5px;border-left:1px solid var(--line);padding-left:16px}.camera-tools .tooltip{top:auto;bottom:calc(100% + 10px)}.time-console{position:absolute;left:40px;right:40px;bottom:47px;height:111px;display:flex;align-items:center;gap:34px;padding:20px 27px;background:#192822c7;border:1px solid rgba(235,229,200,.18);border-radius:6px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 35px #0e18141a}.clock-block{min-width:186px;border-right:1px solid var(--line);padding-right:29px}.clock-period{display:flex;align-items:center;gap:7px;color:#e4d1a6;font-size:10px;line-height:18px}.clock-local{color:#bcc4b6;font-size:9px;margin-left:5px}.clock-time{font-size:34px;line-height:1.3;font-weight:400;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:12px}.clock-time>span{font-size:7px;color:#a4b3a4;white-space:nowrap}.timeline-block{flex:1;min-width:0}.timeline-heading{display:flex;justify-content:space-between;font-size:10px;color:#e4e4d4;align-items:center;margin-bottom:12px}.cycle-status{font-size:9px;color:#a9b8a8;display:flex;align-items:center;gap:6px}.cycle-status>i,.bottom-meta>span>i{display:inline-block;width:4px;height:4px;background:#93b99d;border-radius:50%;opacity:.5}.cycle-status>i.running{opacity:1;box-shadow:0 0 7px #aed1ac66}.timeline-track{position:relative;height:12px;display:flex;align-items:center}.time-track-background{position:absolute;left:0;right:0;height:3px;border-radius:2px;background:linear-gradient(90deg,#4a5672,#87949c 20%,#c6b897 30%,#ded6ab 50%,#d19c78 73%,#8c838d 81%,#3e5266)}.timeline-track input{width:100%;position:relative;margin:0;background:transparent;height:20px;cursor:pointer;-webkit-appearance:none;appearance:none;outline:none}.timeline-track input::-webkit-slider-runnable-track{height:3px;background:transparent}.timeline-track input::-moz-range-track{height:3px;background:transparent}.timeline-track input::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#f4d9a2;border:2px solid #faf0d8;box-shadow:0 0 0 4px #e4c4851a,0 0 12px #f0ce9740;margin-top:-4.5px}.timeline-track input::-moz-range-thumb{width:9px;height:9px;border:2px solid #faf0d8;border-radius:50%;background:#f4d9a2}.timeline-track input:focus-visible::-webkit-slider-thumb{outline:2px solid #fff;outline-offset:4px}.timeline-ticks{display:flex;justify-content:space-between;margin-top:8px}.timeline-ticks>button,.timeline-ticks>span{display:flex;align-items:center;gap:5px;font-size:8px;padding:0;color:#aeb8aa;font-variant-numeric:tabular-nums}.timeline-ticks>button:hover{color:#f4d9a2}.playback-controls{display:flex;align-items:center;gap:10px;border-left:1px solid var(--line);padding-left:25px;height:49px}.play-button{background:#dccba5;width:39px;height:39px;color:#344337}.play-button:hover{background:#f0ddb8;color:#1f3529}.play-button svg{width:16px;stroke-width:1}.play-button .tooltip{bottom:calc(100% + 14px);top:auto;color:#f4eddc}.speed-button{display:flex;align-items:center;gap:10px;min-width:68px;justify-content:center;font-size:12px;height:38px;color:#e6e4d2}.speed-button>span{font-variant-numeric:tabular-nums}.speed-button>svg{color:#9daf9f}.bottom-meta{position:absolute;bottom:20px;left:43px;right:43px;display:flex;justify-content:space-between;color:#a7b4a5;font-size:8px;align-items:center;gap:12px}.bottom-meta>span:last-child{display:flex;align-items:center;gap:6px;font-size:9px}.bottom-center{color:#899d8c;font-family:Cormorant Garamond,Georgia,serif;font-size:10px}.settings-wrap,.speed-wrap{position:relative}.settings-popover{position:absolute;right:0;top:55px;width:278px;background:#182722f5;border:1px solid rgba(232,222,192,.21);border-radius:6px;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);padding:18px 20px;box-shadow:0 15px 50px #17271d40;z-index:10}.popover-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--line);font-size:13px}.popover-header>button{display:grid;place-items:center;width:24px;height:24px;color:#b3c0af}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:19px 0 0;font-size:11px;color:#d9dfd0}.segmented{display:flex;gap:2px;background:#eaebd20d;padding:3px;border-radius:4px}.segmented>button{padding:6px 8px;color:#9cae9a;font-size:10px;border-radius:3px}.segmented>button.active{background:#d5c8a8;color:#2e4235}.switch{width:30px;height:17px;background:#4b5c4f;border-radius:20px;position:relative;padding:0;flex-shrink:0}.switch>span{position:absolute;width:11px;height:11px;left:3px;top:3px;border-radius:50%;background:#aeb9a5;transition:left .2s}.switch.on{background:#bfb494}.switch.on>span{left:16px;background:#fcf6e8}.setting-note{border-top:1px solid var(--line);margin-top:20px;padding-top:12px;display:flex;justify-content:space-between;font-size:9px;color:#95a890}.speed-menu{position:absolute;bottom:60px;right:-20px;min-width:186px;z-index:10;padding:12px 8px 8px;background:#182722f7;border:1px solid rgba(232,222,192,.22);border-radius:6px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 10px 40px #17271d40}.menu-label{font-size:9px;color:#9dac97;padding:0 10px 8px}.speed-menu>button{display:flex;align-items:center;width:100%;height:33px;padding:0 10px;gap:20px;border-radius:3px;font-size:11px}.speed-menu>button>span:first-child{min-width:35px}.speed-menu>button>span:nth-child(2){color:#9dab95;font-size:10px}.speed-menu>button>svg{margin-left:auto;color:var(--accent)}.speed-menu>button:hover{background:#d3cdad1a}.loading-screen{position:absolute;inset:0;z-index:50;background:#223a2f;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ddc99d;transition:opacity .7s;pointer-events:none}.loading-screen.loaded{opacity:0}.loading-wordmark{font-family:Cormorant Garamond,Georgia,serif;font-size:35px;margin-top:21px}.loading-rule{height:1px;width:190px;background:#a5b69835;margin-top:24px}.loading-rule>span{display:block;background:#dfc799;height:1px;transition:width .4s}.loading-caption{font-family:"Noto Serif SC",serif;font-size:13px;color:#bcc6af;margin-top:21px}.scene-error{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;flex-direction:column;background:#233d32;color:#e3d7b8;z-index:9}.scene-error h2{font-size:20px}.scene-error p{font-size:12px;color:#b6c4ad}.scene-error button{display:flex;align-items:center;gap:7px;margin-top:16px;padding:10px 14px;border:1px solid #8d9d81;border-radius:4px}@media(min-width:1700px){.topbar,.time-console{left:60px;right:60px}.editorial-title,.scene-caption,.bottom-meta{left:63px}.editorial-title{top:25%}.editorial-title h1{font-size:88px}.scene-tools,.bottom-meta{right:63px}.time-console{gap:48px;padding-left:32px;padding-right:32px}}@media(max-width:1100px){.topbar{left:28px;right:28px;gap:16px}.view-nav{gap:16px;margin-left:0}.era{display:none}.editorial-title{left:30px;top:24%}.editorial-title h1{font-size:66px}.time-console{left:28px;right:28px;gap:20px;padding:20px}.clock-block{min-width:164px;padding-right:18px}.clock-time>span{display:none}.playback-controls{padding-left:16px}.scene-caption,.bottom-meta{left:30px}.scene-tools,.bottom-meta{right:30px}.timeline-ticks>button,.timeline-ticks>span{font-size:8px;gap:3px}}@media(max-width:700px){.app{min-height:580px}.topbar{left:20px;right:20px;top:21px;height:101px;align-items:flex-start;padding-bottom:0;gap:12px}.brand{gap:9px}.brand-seal{width:33px;height:33px}.brand-seal svg{width:19px}.brand strong{font-size:17px}.brand small{font-size:8px}.header-actions{gap:3px;margin-top:-1px}.header-actions .icon-button{width:31px;height:31px}.header-actions .icon-button>svg{width:17px}.view-nav{position:absolute;top:57px;left:0;right:0;justify-content:space-between;gap:9px;height:34px}.view-nav button{font-size:11px;min-width:0;gap:5px}.nav-index{font-size:8px}.nav-line{bottom:-10px}.editorial-title{left:22px;top:161px}.eyebrow{font-size:8px;gap:8px}.short-rule{width:16px}.editorial-title h1{font-size:49px;margin:13px 0 12px}.title-chinese{font-size:17px}.editorial-title p{font-size:9px;margin:9px 0 0}.title-date{display:none}.scene-caption{left:22px;bottom:215px;gap:12px}.caption-count{font-size:28px;gap:7px}.caption-count>span{font-size:8px}.caption-location{font-size:12px;margin-bottom:5px}.caption-region{font-size:6px}.scene-tools{right:20px;bottom:216px;gap:0}.compass-mark{display:none}.camera-tools{gap:0;padding:0;border:0}.camera-tools .icon-button{width:30px;height:30px}.camera-tools .icon-button>svg{width:16px}.time-console{left:18px;right:18px;bottom:44px;height:150px;padding:17px 18px;gap:0;flex-wrap:wrap;justify-content:space-between}.clock-block{border-right:0;min-width:0;padding:0}.clock-period{font-size:9px;gap:5px}.clock-local{font-size:8px;margin-left:2px}.clock-period svg{width:13px}.clock-time{font-size:28px;line-height:1.15}.playback-controls{order:1;border:0;padding:0;height:43px;gap:5px}.play-button{width:34px;height:34px}.speed-button{font-size:11px;min-width:58px;gap:7px}.timeline-block{flex-basis:100%;order:2;padding-top:14px;margin-top:10px;border-top:1px solid var(--line)}.timeline-heading{display:none}.timeline-ticks{margin-top:7px}.timeline-ticks>button,.timeline-ticks>span{font-size:7px;gap:4px}.timeline-ticks svg{width:10px}.bottom-meta{left:21px;right:21px;bottom:20px;font-size:7px}.bottom-center{display:none}.bottom-meta>span:last-child{font-size:8px}.settings-popover{right:-35px;top:48px;width:260px}.tooltip{display:none}.speed-menu{bottom:47px;right:0;min-width:170px}}@media(max-width:380px){.brand strong{font-size:15px}.view-nav button{font-size:10px}.editorial-title h1{font-size:44px}.scene-caption{left:20px;gap:8px}.caption-region{max-width:180px}.scene-tools{right:18px}.camera-tools .icon-button{width:26px;height:28px}.camera-tools .icon-button>svg{width:14px}.clock-local{display:none}.time-console{padding:16px}.timeline-ticks>button,.timeline-ticks>span{gap:2px}}@media(max-height:680px)and (min-width:701px){.editorial-title{top:25%}.editorial-title h1{font-size:56px;margin:14px 0}.title-chinese{font-size:19px}.editorial-title p{margin:10px 0 14px}.scene-caption,.scene-tools{bottom:180px}.time-console{height:100px}.title-date{font-size:9px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300 700;font-display:swap;src:url(/apps/rome/assets/cormorant-garamond-latin-wght-normal-CUoBjw-S.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300 700;font-display:swap;src:url(/apps/rome/assets/cormorant-garamond-latin-wght-italic-C-nL33vl.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/apps/rome/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2")}
