:root{color:#e4e8e3;font-synthesis:none;--gold:#dfc28b;--muted:#a3b2b6;--line:#cbdad530;background:#081522;font-family:Segoe UI,Microsoft YaHei,sans-serif;font-weight:400}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{transition:background .2s,color .2s,transform .2s}button:active{transform:translateY(1px)}a{color:inherit;text-decoration:none}button svg{flex-shrink:0}.experience{isolation:isolate;width:100%;height:100%;min-height:490px;position:relative}.world-layer{z-index:-3;position:absolute;inset:0}.world-layer canvas{touch-action:none;outline:none;display:block}.vignette{z-index:-2;pointer-events:none;background:linear-gradient(#010a1480,#0000 21% 48%,#020d16ba),linear-gradient(90deg,#020d164d,#0000 60%);position:absolute;inset:0}.is-entered .vignette{background:linear-gradient(#010a146b,#0000 17% 78%,#020d168c)}.film-grain{z-index:2;pointer-events:none;opacity:.027;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.83' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.7' d='M0 0h160v160H0z'/%3E%3C/svg%3E");position:absolute;inset:0}.topbar{z-index:4;justify-content:space-between;align-items:center;height:116px;padding:0 4.3%;display:flex;position:absolute;top:0;left:0;right:0}.brand{letter-spacing:.23em;align-items:center;gap:14px;font-family:Georgia,Songti SC,SimSun,serif;font-size:23px;display:flex}.brand-mark{width:45px;height:45px;color:var(--gold);flex-shrink:0}.brand-english{letter-spacing:.27em;color:#b6c3c6;margin-top:2px;font:8px/2.2 Segoe UI,sans-serif;display:block}.chapter{color:var(--gold);letter-spacing:.15em;align-items:center;gap:18px;font:11px Georgia,serif;display:flex;position:absolute;left:50%;transform:translate(-50%)}.chapter>span:not(.chapter-line){color:#c4ccca;letter-spacing:.22em;font:11px Microsoft YaHei,sans-serif}.chapter-line{background:var(--line);width:27px;height:1px}.toolbar{align-items:center;gap:11px;display:flex}.icon-button{color:#ccd4d1;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.icon-button:hover,.icon-button.is-on{color:var(--gold);background:#e4d4a321}.toolbar-divider{background:var(--line);width:1px;height:19px;margin:0 7px}.welcome{pointer-events:none;justify-content:space-between;align-items:flex-end;gap:30px;display:flex;position:absolute;inset:auto 5% 137px}.welcome-copy{pointer-events:auto;text-shadow:0 2px 24px #030e1880;max-width:600px}.eyebrow{letter-spacing:.3em;color:var(--gold);align-items:center;gap:12px;margin:0 0 25px;font-size:9px;display:flex}.eyebrow>span{background:var(--gold);width:31px;height:1px}h1{letter-spacing:.13em;color:#f1eee2;margin:0;font-family:Georgia,Noto Serif SC,Songti SC,SimSun,serif;font-size:clamp(44px,5.5vw,80px);font-weight:400;line-height:1.3}h1>span:not(.title-separator){display:block}.title-separator{display:none}.welcome-poem{letter-spacing:.2em;color:#d1d8d1;margin:23px 0;font-family:Songti SC,SimSun,serif;font-size:14px;line-height:2.1}.welcome-meta{letter-spacing:.15em;color:#b4c1c0;align-items:center;gap:14px;font-size:10px;display:flex}.welcome-meta i{background:var(--gold);border-radius:50%;width:3px;height:3px}.entry-actions{pointer-events:auto;width:296px;padding-bottom:2px}.enter-button{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:left;color:#f0e2bc;background:#0c1e28bf;border:1px solid #e4cc979e;justify-content:space-between;align-items:center;width:100%;padding:21px 23px 21px 25px;display:flex}.enter-button:hover{background:#524e35a6;border-color:#e7ca90}.enter-button>span:first-child{letter-spacing:.18em;font-family:Songti SC,SimSun,serif;font-size:21px}.enter-button small{letter-spacing:.26em;color:#c4b58e;margin-bottom:9px;font:8px/1.4 Segoe UI,sans-serif;display:block}.enter-arrow{border:1px solid #e4cc974d;border-radius:50%;place-items:center;width:45px;height:45px;display:grid}.view-button{letter-spacing:.14em;color:#b6c2c2;background:0 0;justify-content:space-between;width:100%;padding:18px 3px 0;font-size:10px;display:flex}.view-button:hover{color:#ffe2a4}.view-button span{margin-top:-5px;font-size:17px}.bottom-bar{border-top:1px solid var(--line);z-index:3;justify-content:space-between;align-items:center;gap:24px;height:76px;display:flex;position:absolute;bottom:0;left:4.3%;right:4.3%}.edition{color:#adb9ba;letter-spacing:.18em;white-space:nowrap;font:8px Georgia,serif}.edition>span{color:var(--gold);margin:0 9px}.key-guide{color:#b9c6c3;letter-spacing:.04em;align-items:center;gap:22px;font-size:10px;display:flex}.key-guide>span{align-items:center;gap:7px;display:flex}.live-dot{background:#c9c390;border-radius:100%;width:5px;height:5px;box-shadow:0 0 10px #d4c88d}.footer-sep{opacity:.35;margin:0 -7px}kbd{letter-spacing:.04em;white-space:nowrap;color:#d0d8cf;background:#152b3359;border:1px solid #cfded542;border-radius:3px;padding:3px 5px;font-family:inherit;font-size:9px;font-weight:400}.glass{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#091b27eb;border:1px solid #c5d3c933;box-shadow:0 20px 70px #020b1466}.settings-panel{z-index:6;scrollbar-width:thin;scrollbar-color:#5e756e transparent;border-radius:2px;width:348px;max-height:calc(100% - 195px);padding:23px 25px 26px;position:absolute;top:106px;right:4.3%;overflow:auto}.panel-heading{letter-spacing:.1em;justify-content:space-between;align-items:center;margin-bottom:27px;font-family:Songti SC,SimSun,serif;font-size:19px;display:flex}.panel-heading small{letter-spacing:.2em;color:#9babac;margin-top:7px;font:7px/1.5 Segoe UI,sans-serif;display:block}.panel-heading .icon-button{margin-right:-9px}.setting-label{color:#d5ddd3;letter-spacing:.06em;justify-content:space-between;margin:23px 0 13px;font-size:11px;display:flex}.setting-label>span{color:#91a4a4;font-size:10px}.quality-switch{border:1px solid var(--line);gap:4px;padding:4px;display:flex}.quality-switch button{color:#a6b7b7;letter-spacing:.15em;background:0 0;flex:1;padding:10px 0;font-size:11px}.quality-switch button.selected{color:#122836;background:#c7b07e}.setting-note{color:#8fa3a4;font-size:9px;line-height:1.8}.settings-panel input[type=range]{accent-color:#dac08b;cursor:pointer;width:100%;height:3px;margin:4px 0 22px}.toggle-row{border-top:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;padding:16px 0;font-size:11px;display:flex}.toggle-row span small{color:#8ca1a2;margin-top:7px;font-size:9px;display:block}.toggle-row input{opacity:0;width:32px;height:22px;position:absolute;right:26px}.toggle-row i{background:#2c4550;border-radius:12px;width:31px;height:17px;position:relative}.toggle-row i:after{content:"";background:#91a5a4;border-radius:50%;width:11px;height:11px;transition:all .2s;position:absolute;top:3px;left:3px}.toggle-row input:checked+i{background:#a79569}.toggle-row input:checked+i:after{background:#faf0d4;left:17px}.toggle-row input:focus-visible+i{outline:2px solid var(--gold);outline-offset:3px}.settings-controls{border-top:1px solid var(--line);padding:16px 0 17px}.settings-controls h3{letter-spacing:.16em;color:#d1c098;margin:0 0 17px;font-family:Songti SC,SimSun,serif;font-size:14px;font-weight:400}.settings-controls p{color:#9db0b0;align-items:center;gap:7px;margin:9px 0;font-size:9px;line-height:1.9;display:flex}.gold-button{color:#102834;letter-spacing:.12em;background:#cdb783;justify-content:space-between;align-items:center;gap:25px;width:100%;padding:13px 18px;font-size:12px;display:flex}.gold-button:hover{background:#ead09a}.pause-panel{text-align:center;z-index:5;width:370px;padding:32px 29px 24px;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.pause-label{letter-spacing:.24em;color:var(--gold);font:8px Georgia,serif}.pause-panel h2{letter-spacing:.14em;margin:19px 0 14px;font-family:Songti SC,SimSun,serif;font-size:26px;font-weight:400}.pause-panel p{color:#a5b7b7;margin:0 0 23px;font-size:10px;line-height:1.9}.pause-links{justify-content:center;gap:25px;margin:19px 0;display:flex}.pause-links button{color:#d4c190;background:0 0;padding:2px;font-size:10px}.pause-panel>small{color:#829b9f;font-size:8px;line-height:1.8}.compass{color:#a0b1b5;pointer-events:none;align-items:center;gap:17px;font:9px Georgia,serif;display:flex;position:absolute;top:116px;left:50%;transform:translate(-50%)}.compass>i{background:#b4c3c04d;width:1px;height:8px}.compass .compass-main{color:#ebce90;font-size:12px}.compass>small{letter-spacing:.1em;color:#b5c4c3;font:7px Segoe UI,sans-serif;position:absolute;top:23px;left:50%;transform:translate(-50%)}.crosshair{pointer-events:none;background:#f9e3b2a6;border-radius:50%;width:3px;height:3px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 3px #10263533}.location-card{pointer-events:none;position:absolute;bottom:111px;left:4.3%}.location-index{letter-spacing:.2em;color:#d9c48c;align-items:center;gap:12px;font-size:10px;display:flex}.location-index>span{background:#d9c48c80;width:21px;height:1px}.location-card p{letter-spacing:.13em;color:#d5dbd2;margin:14px 0 17px;font-family:Songti SC,SimSun,serif;font-size:19px}.mode-button{pointer-events:auto;color:#ced5c4;background:#0c2537b3;border:1px solid #9eb7af38;align-items:center;gap:9px;padding:8px 10px;font-size:10px;display:inline-flex}.mode-button.flying{color:#ebd39b;border-color:#bdaa6a88}.mode-button kbd{margin-left:7px;padding:1px 4px;font-size:8px}.altitude{color:#b6c4bd;margin-left:14px;font-size:9px}.photo-button{color:#b9c6bd;letter-spacing:.08em;background:0 0;align-items:center;gap:8px;padding:8px 0;font-size:9px;display:flex}.photo-exit{color:#b8c8bf;opacity:.55;background:#0d25398c;border:1px solid #8da89933;align-items:center;gap:9px;padding:8px 10px;font-size:9px;display:flex;position:absolute;bottom:25px;right:28px}.photo-exit:hover{opacity:1}.stats{text-align:right;color:#bcc9b9;pointer-events:none;font:10px/1.9 Consolas,monospace;position:absolute;bottom:114px;right:4.3%}.map-panel{z-index:6;width:320px;padding:21px 18px;position:absolute;top:110px;right:4.3%}.map-panel .panel-heading{margin:0 6px 7px}.map-panel>svg{width:100%;height:auto;display:block}.map-label{fill:#b0bba8;text-anchor:middle;font:8px Microsoft YaHei,sans-serif}.map-north{fill:#e2c88d;text-anchor:middle;font:10px Georgia,serif}.map-scale{fill:#8ea8a5;text-anchor:middle;font:7px Microsoft YaHei,sans-serif}.map-legend{color:#9fb4b1;justify-content:space-between;margin:6px;font-size:8px;display:flex}.map-legend span{align-items:center;gap:6px;display:flex}.map-legend i{background:#e2c88d;border-radius:50%;width:5px;height:5px}.notice{color:#e2d6b3;text-align:center;z-index:8;pointer-events:none;background:#112b3aee;border:1px solid #c5b17e77;width:max-content;max-width:90%;padding:13px 20px;font-size:11px;line-height:1.8;position:absolute;bottom:96px;left:50%;transform:translate(-50%);box-shadow:0 4px 30px #0003}.loading-indicator{letter-spacing:.12em;color:#d2c393;align-items:center;gap:10px;font-size:10px;display:flex;position:absolute;top:115px;left:4.8%}.loading-indicator>span{border:1px solid #d7c58a33;border-top-color:#d7c58a;border-radius:100%;width:11px;height:11px;animation:1s linear infinite spin;display:inline-block}.error-overlay{z-index:12;background:#0a1c2cef;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex;position:absolute;inset:0}.error-overlay h2{letter-spacing:.12em;margin-top:28px;font-family:SimSun,serif;font-size:27px;font-weight:400}.error-overlay p{color:#b1c2c0;text-align:center;max-width:500px;font-size:13px;line-height:2}.error-overlay .gold-button{justify-content:center;max-width:230px;margin-top:20px}.canvas-fallback{color:#d9c491;background:#10253b;place-items:center;height:100%;padding:30px;line-height:2;display:grid}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:1600px){.welcome{bottom:160px}.entry-actions{width:330px}.welcome-poem{font-size:16px}.topbar{height:130px}.bottom-bar{height:85px}.eyebrow{font-size:10px}}@media (max-width:1000px){.chapter{display:none}.toolbar{gap:5px}.welcome{bottom:112px}.welcome-copy{max-width:420px}.entry-actions{width:245px}.enter-button{padding:17px}.welcome-poem{font-size:12px}.edition{display:none}.bottom-bar{height:64px}.key-guide{gap:16px}.is-entered .key-guide{gap:10px}.photo-button span{display:none}.welcome h1{font-size:59px}.topbar{height:98px}.compass{top:100px}.settings-panel{max-height:calc(100% - 160px);top:91px}.map-panel{top:91px}}@media (max-width:650px){.experience{min-height:440px}.brand{gap:8px;font-size:18px}.brand-mark{width:35px;height:35px}.brand-english{font-size:6px}.toolbar{gap:0}.toolbar-divider{margin:0 2px}.icon-button{width:30px;height:32px}.toolbar .icon-button svg{width:17px}.topbar{height:85px;padding:0 22px}.welcome{flex-direction:column;align-items:flex-start;gap:26px;bottom:95px;left:25px;right:25px}.welcome h1{font-size:45px}.welcome h1>span:not(.title-separator){margin-left:.15em;display:inline}.welcome-poem{margin:17px 0;font-size:11px}.eyebrow{letter-spacing:.2em;margin-bottom:15px;font-size:7px}.welcome-meta{gap:10px;font-size:8px}.entry-actions{width:100%;max-width:330px}.enter-button{padding:13px 18px}.enter-button small{margin-bottom:5px;font-size:7px}.enter-button>span:first-child{font-size:18px}.enter-arrow{width:36px;height:36px}.view-button{padding-top:13px;font-size:9px}.bottom-bar{gap:10px;height:60px;left:25px;right:25px}.key-guide{gap:10px;font-size:8px}.is-entered .key-guide{flex-wrap:wrap;gap:6px 10px;max-width:90%}.location-card{bottom:95px;left:25px}.location-card p{font-size:16px}.location-index{font-size:9px}.settings-panel{width:calc(100% - 40px);max-height:calc(100% - 155px);padding:18px 23px;top:82px;right:20px}.map-panel{width:290px;top:82px;right:20px}.pause-panel{width:calc(100% - 42px);max-width:370px;padding:26px;top:46%}.pause-panel h2{font-size:23px}.notice{max-width:calc(100% - 40px);font-size:10px;bottom:75px}.stats{font-size:8px;bottom:90px}.compass{top:93px}}@media (max-height:700px) and (min-width:651px){.topbar{height:90px}.welcome{bottom:110px}.welcome h1{font-size:52px;line-height:1.23}.welcome-poem{margin:16px 0;font-size:12px}.eyebrow{margin-bottom:16px}.bottom-bar{height:65px}.settings-panel{max-height:calc(100% - 160px);top:85px}.location-card{bottom:95px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}.loading-indicator>span{animation:none}}.drag-mode{color:#cfbf90;letter-spacing:.05em;background:#102b3b9c;border:1px solid #b5bda52e;padding:7px 12px;font-size:9px;position:absolute;top:164px;left:50%;transform:translate(-50%)}.drag-mode span{color:#95aaa9}.drag-mode:hover{background:#254453c9}.drag-mode:active{transform:translate(-50%)}@media (max-width:650px){.drag-mode{white-space:nowrap;font-size:8px;top:137px}}.photo-actions{z-index:4;gap:10px;display:flex;position:absolute;bottom:25px;right:28px}.photo-actions button{color:#e0d6b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d2539b8;border:1px solid #b5bf9e55;align-items:center;gap:9px;padding:10px 13px;font-size:10px;display:flex}.photo-actions button:hover{background:#2a4652}.photo-actions kbd{font-size:8px}.photo-actions button:last-child{color:#b5c3ba}.photo-actions svg{color:#e5c78a}.composition-entry{color:#dac28b;background:#0c263ebd;border:1px solid #c7b07e66;justify-content:space-between;align-items:center;width:100%;margin-top:12px;padding:11px 14px;font-size:11px;display:flex}.is-framed{background:#050b15}.is-framed .world-layer{width:min(100vw,calc(100vh * var(--painting-aspect)));height:min(100vh,calc(100vw / var(--painting-aspect)));inset:50% auto auto 50%;transform:translate(-50%,-50%)}.reference-overlay{object-fit:fill;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.reference-label{z-index:10;color:#ffe7ac;white-space:nowrap;background:#312b17ee;border:1px solid #d6bf80;padding:11px 20px;font-size:11px;position:absolute;top:110px;left:50%;transform:translate(-50%)}.composition-guide{z-index:3;width:275px;padding:14px 16px;position:absolute;top:170px;right:4.3%}.guide-title{color:#dec792;letter-spacing:.08em;justify-content:space-between;align-items:center;font-family:SimSun,serif;font-size:17px;display:flex}.guide-title .icon-button{width:24px;height:24px}.composition-guide p{color:#9fb2b8;margin:7px 0 12px;font-size:10px;line-height:1.7}.guide-metrics{color:#94a9af;justify-content:space-between;font-size:9px;display:flex}.guide-metrics b{color:#d9d8c7;margin-top:5px;font-size:14px;font-weight:400;display:block}.guide-actions{gap:5px;margin:15px 0 9px;display:flex}.guide-actions button{color:#c4cdbf;white-space:nowrap;background:#22405688;border:1px solid #8da58c55;align-items:center;gap:6px;padding:6px 7px;font-size:9px;display:flex}.guide-actions button[aria-pressed=true]{color:#e8d093;background:#62563855}.composition-guide small{color:#809b9e;font-size:8px;line-height:1.7}.composition-guide.aligned{border-color:#d4b67999}.is-framed .topbar{height:88px}.is-framed .compass{top:90px}.is-framed .composition-guide{top:142px}.is-photo .vignette,.is-photo .film-grain{display:none}@media (max-width:900px){.composition-guide{width:240px;top:140px;right:20px}.guide-title{font-size:15px}.key-guide{gap:9px}.edition{display:none}}@media (max-width:650px){.composition-guide{width:230px;top:auto;bottom:90px;right:20px}.location-card{display:none}.composition-guide p{font-size:8px}.reference-label{font-size:8px;top:88px}.toolbar{gap:0}}html,body{overscroll-behavior:none}.touch-controls{z-index:5;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.touch-stick{bottom:calc(42px + env(safe-area-inset-bottom,0px));touch-action:none;pointer-events:auto;background:radial-gradient(circle,#19364b70,#0b223b9c);border:1px solid #dfc28b70;border-radius:50%;width:116px;height:116px;position:absolute;box-shadow:inset 0 0 25px #08152270}.touch-stick-move{left:max(18px,env(safe-area-inset-left,0px))}.touch-stick-look{right:max(18px,env(safe-area-inset-right,0px))}.stick-cross{pointer-events:none;border:1px solid #dfc28b25;border-radius:50%;position:absolute;inset:22%}.stick-cross:before,.stick-cross:after{content:"";background:#dfc28b28;position:absolute}.stick-cross:before{height:1px;top:50%;left:-12%;right:-12%}.stick-cross:after{width:1px;top:-12%;bottom:-12%;left:50%}.stick-thumb{pointer-events:none;background:#d6c0884f;border:1px solid #e5ca938f;border-radius:50%;width:46px;height:46px;position:absolute;top:calc(50% - 23px);left:calc(50% - 23px);box-shadow:0 2px 16px #020b1466}.stick-label{text-align:center;letter-spacing:.24em;color:#ead7ac;pointer-events:none;text-shadow:0 1px 8px #05101f;font-size:11px;position:absolute;top:calc(100% + 9px);left:0;right:0}.touch-actions{left:50%;bottom:calc(178px + env(safe-area-inset-bottom,0px));pointer-events:auto;gap:6px;display:flex;position:absolute;transform:translate(-50%)}.touch-actions button{color:#e5dcc3;touch-action:none;background:#0b263de6;border:1px solid #b9b99865;border-radius:8px;justify-content:center;align-items:center;gap:4px;min-width:44px;height:46px;padding:0 9px;font-size:11px;display:flex}.touch-actions button:first-child{min-width:76px}.touch-actions button[aria-pressed=true],.touch-actions button.held{color:#fff7df;background:#a58c4fc9;border-color:#edcf8c}.touch-actions button:disabled{opacity:.35;cursor:default}.touch-arrow{font-size:21px}.touch-actions small{font-size:10px}.touch-entry-note{bottom:calc(19px + env(safe-area-inset-bottom,0px));text-align:center;letter-spacing:.1em;color:#c8c9b6;pointer-events:none;margin:0;font-size:10px;position:absolute;left:16px;right:16px}.is-touch{height:100dvh;min-height:0}.is-touch .topbar,.is-touch.is-framed .topbar{top:env(safe-area-inset-top,0px);height:72px;padding:0 max(12px,env(safe-area-inset-right,0px)) 0 max(12px,env(safe-area-inset-left,0px));gap:8px}.is-touch .brand{letter-spacing:.13em;gap:7px;font-size:18px}.is-touch .brand-mark{width:32px;height:32px}.is-touch .brand-english{letter-spacing:.2em;font-size:5px}.is-touch .chapter{display:none}.is-touch .toolbar{gap:0}.is-touch .toolbar .icon-button{width:44px;height:44px}.is-touch .toolbar .icon-button:last-child{display:none}.is-touch .toolbar svg{width:18px;height:18px}.is-touch kbd{display:none}.is-touch .welcome{inset:auto 24px calc(76px + env(safe-area-inset-bottom,0px));flex-direction:column;align-items:flex-start;gap:22px}.is-touch .welcome h1{font-size:clamp(34px,8.5vw,52px);line-height:1.3}.is-touch .welcome h1>span{margin-left:.1em;display:inline}.is-touch .welcome-poem{margin:14px 0;font-size:12px}.is-touch .eyebrow{letter-spacing:.16em;margin-bottom:14px;font-size:7px}.is-touch .welcome-meta{gap:9px;font-size:9px}.is-touch .entry-actions{width:100%;max-width:350px}.is-touch .enter-button{min-height:65px}.is-touch .composition-entry{min-height:44px;margin-top:9px}.is-touch .view-button{align-items:center;min-height:38px;padding:8px 2px 0}.is-touch .key-guide,.is-touch .bottom-bar .edition{display:none}.is-touch .bottom-bar{height:32px;bottom:env(safe-area-inset-bottom,0px)}.is-touch.is-entered .bottom-bar,.is-touch .location-card{display:none}.is-touch .compass,.is-touch.is-framed .compass{top:calc(76px + env(safe-area-inset-top,0px))}.is-touch .settings-panel,.is-touch .map-panel{top:calc(76px + env(safe-area-inset-top,0px));right:max(12px,env(safe-area-inset-right,0px));width:calc(100% - 24px);max-width:360px;max-height:calc(100dvh - 90px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));touch-action:pan-y;overscroll-behavior:contain;z-index:7;overflow:auto}.is-touch .settings-panel{padding:18px 21px}.is-touch .settings-panel .icon-button{width:44px;height:44px}.is-touch .quality-switch button{min-height:44px}.is-touch .settings-panel input[type=range]{min-height:24px;margin:2px 0 14px}.is-touch .gold-button{min-height:46px}.is-touch .composition-guide,.is-touch.is-framed .composition-guide{top:calc(85px + env(safe-area-inset-top,0px));touch-action:pan-y;width:220px;max-height:33dvh;padding:10px 12px;bottom:auto;right:12px;overflow:auto}.is-touch .guide-actions{flex-wrap:wrap}.is-touch .guide-actions button{min-height:40px}.is-touch .pause-panel{z-index:7;width:calc(100% - 32px);max-width:370px;padding:22px;top:47%}.is-touch .pause-links button{min-height:44px}.is-touch .notice{bottom:auto;top:calc(76px + env(safe-area-inset-top,0px));z-index:8;max-width:calc(100% - 28px);font-size:11px}.is-touch .loading-indicator{font-size:10px;top:85px}.is-touch .stats{top:calc(108px + env(safe-area-inset-top,0px));font-size:9px;bottom:auto;right:12px}.is-touch .reference-label{white-space:normal;text-align:center;max-width:95%;font-size:9px;top:78px}.is-touch .photo-actions{left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom,0px));justify-content:center}.is-touch .photo-actions button{min-height:44px}.is-touch .error-overlay{z-index:12}@media (max-width:360px){.is-touch .brand-english{display:none}.is-touch .brand-mark{width:27px;height:27px}.is-touch .brand{font-size:16px}.is-touch .toolbar .icon-button{width:40px}.touch-actions{gap:4px}.touch-actions button{padding:0 7px}.touch-stick{width:106px;height:106px}}@media (max-height:500px){.is-touch .topbar,.is-touch.is-framed .topbar{height:58px}.is-touch .brand-english{display:none}.is-touch .welcome{left:max(24px,env(safe-area-inset-left,0px));right:max(24px,env(safe-area-inset-right,0px));flex-direction:row;align-items:flex-end;gap:24px;bottom:43px}.is-touch .welcome h1{font-size:33px}.is-touch .welcome-copy{max-width:54%}.is-touch .welcome-poem{margin:9px 0;font-size:10px}.is-touch .welcome-meta{font-size:8px}.is-touch .eyebrow{margin-bottom:9px;font-size:6px}.is-touch .entry-actions{max-width:270px}.is-touch .enter-button{min-height:55px;padding:8px 14px}.is-touch .enter-button>span:first-child{font-size:17px}.is-touch .view-button{min-height:29px}.is-touch .touch-entry-note{font-size:9px;bottom:8px}.is-touch .compass,.is-touch.is-framed .compass{top:63px}.touch-stick{bottom:calc(24px + env(safe-area-inset-bottom,0px));width:96px;height:96px}.touch-actions{bottom:calc(28px + env(safe-area-inset-bottom,0px))}.is-touch .composition-guide,.is-touch.is-framed .composition-guide{max-height:130px;top:63px}.is-touch .composition-guide>small,.is-touch .guide-metrics{display:none}.is-touch .settings-panel,.is-touch .map-panel{max-height:calc(100dvh - 74px - env(safe-area-inset-bottom,0px));top:62px}.is-touch .pause-panel{padding:16px;top:50%}.is-touch .pause-panel h2{margin:10px 0;font-size:21px}.is-touch .pause-panel p{margin-bottom:12px}.is-touch .pause-links{margin:6px 0}.is-touch .notice{top:63px}}
