@font-face{font-family:"Ouyang Xun";src:url("../../assets/font/正欧阳询楷书+简繁.TTF") format("truetype");font-display:swap}
:root{color-scheme:dark;--ice:#dce9ec;--blue:#6da9c4;--red:#d78672}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#020810;color:#edf4f4;font-family:"Ouyang Xun","STKaiti","KaiTi",serif}.earth-lab{position:relative;width:100%;height:100%;min-height:620px;isolation:isolate;background:radial-gradient(circle at 50% 64%,#102c40 0,#071522 36%,#02070d 73%)}#earth{position:absolute;inset:0;width:100%;height:100%;z-index:1;cursor:grab;touch-action:none}#earth:active{cursor:grabbing}.star-noise{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.65;background-image:radial-gradient(circle at 18% 24%,#fff 0 1px,transparent 1.4px),radial-gradient(circle at 72% 17%,#b9d9e6 0 1px,transparent 1.5px),radial-gradient(circle at 83% 39%,#fff 0 .7px,transparent 1.2px),radial-gradient(circle at 36% 12%,#fff 0 .6px,transparent 1px);background-size:280px 240px,390px 330px,230px 290px,170px 220px;mix-blend-mode:screen}.lab-header{position:absolute;z-index:3;left:0;right:0;top:0;height:78px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(196,220,225,.17);background:linear-gradient(180deg,rgba(2,7,13,.72),transparent)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;letter-spacing:.15em}.brand span{display:grid;place-items:center;width:39px;height:39px;border:1px solid var(--red);border-radius:50%;color:var(--red);font-size:21px}.lab-actions{display:flex;align-items:center;gap:10px}.lab-actions button,.lab-actions a{height:35px;border:1px solid rgba(206,225,228,.24);background:rgba(7,21,34,.56);color:#cbdadb;padding:0 14px;font:inherit;font-size:12px;cursor:pointer;text-decoration:none;display:flex;align-items:center}.lab-actions button:hover,.lab-actions a:hover{border-color:var(--red);color:#fff}.intro{position:absolute;z-index:2;top:clamp(120px,17vh,185px);left:clamp(28px,8vw,130px);pointer-events:none;text-shadow:0 4px 30px #02070d}.intro>p{margin:0 0 16px;color:#8db3c1;font:12px sans-serif;letter-spacing:.28em}.intro h1{margin:0;font-size:clamp(49px,7.2vw,102px);font-weight:500;line-height:1.22;letter-spacing:.08em}.intro h1 em{font-style:normal;color:var(--red)}.instruction{display:flex;align-items:center;gap:12px;margin-top:30px;color:#9fb7bc;font-size:13px;letter-spacing:.12em}.instruction i{display:block;width:42px;height:1px;background:var(--red);position:relative}.instruction i:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid var(--red);border-right:1px solid var(--red);transform:rotate(45deg)}.earth-note{position:absolute;z-index:2;right:clamp(24px,5vw,76px);bottom:34px;display:flex;flex-direction:column;align-items:flex-end;gap:5px;text-align:right;text-shadow:0 2px 16px #000}.earth-note span{font-size:11px;letter-spacing:.16em;color:#96afb5}.earth-note strong{font-size:18px;font-weight:400}.earth-note a{font:10px sans-serif;color:#789aa7;text-decoration:none}.earth-note a:hover{color:#fff}.loading{position:absolute;inset:0;z-index:8;display:grid;place-items:center;background:#020810;color:#8da9b2;letter-spacing:.2em;transition:opacity .7s,visibility .7s}.loading.hidden{opacity:0;visibility:hidden}
@media(max-width:760px){.earth-lab{min-height:520px}.lab-header{height:66px;padding:0 18px}.brand b{display:none}.lab-actions button{display:none}.lab-actions a{padding:0 10px}.intro{top:105px;left:24px}.intro h1{font-size:50px}.earth-note{left:24px;right:auto;bottom:20px;align-items:flex-start;text-align:left}.star-noise{opacity:.45}}
@media(prefers-reduced-motion:reduce){.loading{transition:none}}

/* 月度卫星地表与球面行迹。 */
#earth,#routes{position:absolute;inset:0;width:100%;height:100%}#routes{z-index:2;pointer-events:none}
.month-control{height:35px;border:1px solid rgba(206,225,228,.24);background:rgba(7,21,34,.56);color:#91aeb6;padding:0 7px 0 12px;display:flex;align-items:center;gap:7px;font-size:11px}.month-control select{border:0;background:transparent;color:#eef5f5;font:inherit;outline:none;cursor:pointer}.month-control option{background:#071522}
.route-legend{display:flex;gap:18px;margin-top:18px;color:#9fb7bc;font-size:11px;letter-spacing:.12em}.route-legend span{display:flex;align-items:center;gap:7px}.route-legend i{width:18px;height:2px;display:block}.route-legend .flight{background:#55c8ff;box-shadow:0 0 7px #55c8ff}.route-legend .rail{background:#d49cff}.route-legend .road{background:#efb44d}.earth-note strong b{font-weight:400;color:var(--red)}
body.embed .lab-header,body.embed .intro,body.embed .earth-note{display:none}body.embed .earth-lab{min-height:100%}
body.plain-earth #routes{display:none}
@media(max-width:760px){.month-control{display:none}.route-legend{gap:12px}}
