:root{color-scheme:dark;font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:#e9e7e0;background:#080d1d;font-synthesis:none}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:2px solid #f1dbab;outline-offset:6px}button:disabled{cursor:default}#universe{position:relative;height:100svh;min-height:440px;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 44%,#131e36 0%,#0c1327 43%,#080d1d 78%)}.nebula{position:absolute;inset:0;pointer-events:none;opacity:.8;background:radial-gradient(ellipse at 72% 28%,#34426a24,transparent 42%),radial-gradient(ellipse at 23% 70%,#3c345c20,transparent 35%)}#stars{position:absolute;inset:0;width:100%;height:100%;z-index:1;touch-action:manipulation}.masthead{position:absolute;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:34px 5%;z-index:12;pointer-events:none}.brand{font-size:14px;letter-spacing:.24em;display:flex;align-items:center;gap:12px}.spark{font-size:24px;color:#e9d2a4}.edition{color:#a1a8b8;font-size:11px;letter-spacing:.18em;display:flex;align-items:center;gap:10px}.edition i{display:block;width:4px;height:4px;border-radius:50%;background:#ccb88c;box-shadow:0 0 8px #ccb88c99}.intro{position:absolute;top:25%;left:0;right:0;text-align:center;z-index:2;pointer-events:none;transition:opacity .7s}.eyebrow{color:#beb9b2;font-size:12px;letter-spacing:.45em;font-weight:400}.invitation{position:absolute;top:65%;left:0;right:0;display:flex;flex-direction:column;align-items:center;z-index:12;transition:opacity .7s,transform .7s}.invitation p{font-family:"Songti SC","SimSun",serif;font-size:17px;letter-spacing:.22em;color:#c2c6d1;margin:0 0 28px}.primary{display:flex;align-items:center;gap:22px;border:1px solid #bca67c66;border-radius:999px;background:linear-gradient(110deg,#bba57516,#d2bd8e09);color:#ead9b6;padding:14px 26px;font-size:13px;letter-spacing:.2em;box-shadow:0 0 36px #c4ab6810;transition:background .25s,box-shadow .25s}.primary:hover{background:#ddc38820;box-shadow:0 0 30px #e5c88b22}.primary>span:first-child{font-size:22px;line-height:1}.arrow{font-size:18px}.hint{margin-top:18px;font-size:10px;letter-spacing:.18em;color:#747e95}.orbit-heading{position:absolute;top:16%;text-align:center;left:0;right:0;opacity:0;z-index:12;pointer-events:none;transition:opacity 1s}.orbit-heading .eyebrow{font-size:11px;letter-spacing:.3em}#photos{position:absolute;inset:0;pointer-events:none;z-index:4;opacity:0;transition:opacity 1.1s}.photo{position:absolute;left:0;top:0;margin:0;will-change:transform;background:#eae5d9;padding:4px;border:1px solid #d3c5a5;border-radius:6px;box-shadow:0 0 20px #d2bc7d25,0 8px 25px #0005;width:76px;height:92px;overflow:hidden}.photo img{display:block;object-fit:cover;width:100%;height:100%;border-radius:2px;background:#18243a}.photo.central{width:180px;height:222px;padding:7px 7px 29px;border-radius:7px;box-shadow:0 0 85px #c8af6b22,0 15px 40px #0005;left:50%;top:46%;transform:translate(-50%,-50%) rotate(-3deg);z-index:5}.photo.central figcaption{color:#484435;position:absolute;bottom:9px;left:0;right:0;text-align:center;font-family:"Songti SC","SimSun",serif;letter-spacing:.4em;font-size:11px}.orbit-controls{position:absolute;bottom:14%;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:20px;z-index:12;color:#5b6275}.orbit-controls[hidden]{display:none}.orbit-controls button{background:transparent;border:0;color:#bfc4ce;font-size:12px;letter-spacing:.14em;padding:10px 4px}.orbit-controls button:hover{color:#f2d9a8}.status{position:absolute;left:10%;right:10%;bottom:9.5%;text-align:center;color:#999eaa;font-size:11px;line-height:1.7;z-index:12;margin:0;pointer-events:none}footer{position:absolute;left:5%;right:5%;bottom:max(27px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:24px;color:#9299aa;font-size:10px;letter-spacing:.22em;z-index:12}.divider{margin:0 12px;color:#495165}.footer-line{height:1px;width:80px;background:linear-gradient(90deg,#59617680,transparent)}footer>span:last-child{margin-left:auto;color:#727a8d}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#empty{position:absolute;left:0;right:0;top:39%;text-align:center;color:#aab0bc;z-index:6;pointer-events:none}#empty span{font-size:50px;color:#cdb47e}#empty p{font-size:12px;letter-spacing:.16em;margin-top:16px}.no-script{position:fixed;left:10%;right:10%;top:40%;text-align:center;z-index:30;background:#101a2d;padding:30px}.revealed .intro,.revealed .invitation{opacity:0;pointer-events:none}.revealed .invitation{transform:translateY(15px)}.revealed .orbit-heading,.revealed #photos{opacity:1}
@media(max-width:600px){.masthead{padding:25px 23px}.brand{font-size:11px;letter-spacing:.12em;gap:7px}.spark{font-size:20px}.edition{font-size:9px;letter-spacing:.06em;gap:6px}.intro{top:29%}.eyebrow{font-size:10px;letter-spacing:.3em}.invitation{top:63%}.invitation p{font-size:13px;letter-spacing:.14em;margin-bottom:24px}.primary{font-size:12px;padding:13px 23px;gap:17px}.hint{font-size:9px}.photo{width:52px;height:64px;padding:3px}.photo.central{width:116px;height:148px;padding:5px 5px 24px}.photo.central figcaption{font-size:9px;bottom:7px}.orbit-heading{top:15%}.orbit-heading .eyebrow{font-size:9px;letter-spacing:.18em}.orbit-controls{bottom:15%;gap:17px}.orbit-controls button{font-size:11px}.status{bottom:10%;font-size:10px;left:7%;right:7%}footer{left:23px;right:23px;bottom:max(25px,env(safe-area-inset-bottom));font-size:9px;gap:15px;letter-spacing:.1em}.footer-line{width:30px}.divider{margin:0 7px}}
@media(max-height:540px){.masthead{padding-top:16px}.intro{top:20%}.invitation{top:64%}.invitation p{margin-bottom:12px}.hint{display:none}.primary{padding:10px 24px}.orbit-heading{top:13%}.photo.central{width:100px;height:124px}.photo{width:48px;height:58px}.orbit-controls{bottom:12%}.status{bottom:6%}footer{bottom:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* 深色留白衬托蓝金星尘；光晕不过度提亮中央照片周围。 */
:root{background:#030610}
#universe{background:radial-gradient(ellipse at 50% 46%,#0b1020 0%,#050914 42%,#02040b 100%)}
.nebula{
  opacity:.35;
  background:radial-gradient(ellipse at 27% 37%,#355b9033,transparent 40%),radial-gradient(ellipse at 76% 57%,#465c8a30,transparent 39%),radial-gradient(ellipse at 49% 47%,#b7793020,transparent 31%);
  transition:opacity 2.4s ease;
}
.revealed .nebula{opacity:.95}
.brand{color:#dddcd7}
.eyebrow{color:#b1b9ca}
.primary{border-color:#a6b8d250;background:linear-gradient(120deg,#7597bc14,#d7ac6812);box-shadow:0 0 36px #7c9dc312}
.primary:hover{background:#a6c7ed16;box-shadow:0 0 32px #8aafdb24}
.photo.central{width:190px;height:234px;transform:translate(-50%,-50%) rotate(-3deg) scale(.76);box-shadow:0 0 70px #8cb5ed16,0 18px 55px #0009;transition:transform 1.7s cubic-bezier(.16,1,.3,1)}
.revealed .photo.central{transform:translate(-50%,-50%) rotate(-3deg) scale(1);transition-delay:.35s}
.revealed #photos{transition-delay:.45s}
.orbit-heading,.orbit-controls,.status,footer{text-shadow:0 2px 12px #030610}
@media(max-width:600px){.photo.central{width:126px;height:160px}}
@media(max-height:540px){.photo.central{width:100px;height:124px}}
