:root{--ink:#07100d;--ink2:#0b1712;--jade:#79d29e;--jade2:#b0e8c6;--violet:#a58ab8;--gold:#c4ab70;--paper:#edf2e9;--muted:#a6b1a8;--line:rgba(139,217,174,.2);--panel:rgba(6,17,13,.84)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;color:var(--paper);background:var(--ink);font-family:"Noto Serif SC","Songti SC","STSong",serif}button,input,select,textarea{font:inherit}button,select{cursor:pointer}[hidden]{display:none!important}a{color:inherit}.eyebrow{color:var(--jade);font-size:8px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1px}
.cosmos-hero{min-height:50vh;position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,rgba(4,12,9,.18),rgba(5,13,10,.74) 70%,#07100d),url("/static/jade-cosmos-v3.webp") center/cover}
.cosmos-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 50% 50%,transparent 0 18%,rgba(4,10,8,.24) 43%,rgba(3,8,6,.64))}
.cosmos-hero:after{content:"";position:absolute;z-index:1;left:5%;right:5%;top:40%;bottom:0;background:radial-gradient(circle at 50% 50%,rgba(7,16,13,.95) 0%,rgba(7,16,13,.6) 35%,transparent 60%);pointer-events:none}
.sky-grain{position:absolute;inset:0;opacity:.13;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}
.topbar{width:min(1240px,calc(100% - 48px));height:48px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.seal{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--jade);color:var(--jade2);background:rgba(30,91,62,.38);box-shadow:inset 0 0 20px rgba(121,210,158,.12)}.brand strong,.brand small{display:block}.brand strong{font-size:18px;font-weight:500;letter-spacing:.12em}.brand small{margin-top:2px;color:var(--muted);font-size:9px}.topbar nav{display:flex;gap:14px}.topbar nav a{text-decoration:none;color:#b9c3bb;font-size:11px;letter-spacing:.16em}
.hero-copy{position:relative;z-index:5;width:min(620px,calc(100% - 32px));margin:2vh auto 0;text-align:center}.hero-copy h1{margin:8px 0;font-size:clamp(44px,9vw,90px);font-weight:400;line-height:.9;letter-spacing:.18em;text-indent:.18em;text-shadow:0 0 55px rgba(145,224,180,.15)}.hero-copy h1 span:last-child{color:#d9d1e1}.hero-copy>p:last-child{max-width:90%;margin:2px auto;color:#bdc8c0;line-height:1.3;font-size:11px}
.celestial-stage{width:min(36vw,340px);aspect-ratio:1;position:absolute;z-index:2;left:50%;top:44vh;transform:translateX(-50%);filter:drop-shadow(0 0 30px rgba(102,202,147,.12))}
.orbit{position:absolute;border-radius:50%;border:1px solid rgba(142,219,177,.18)}
.orbit-outer{left:10%;top:10%;width:80%;height:80%;animation:turn 80s linear infinite}
.orbit-inner{left:32%;top:32%;width:36%;height:36%;border:1px dashed rgba(142,219,177,.25);animation:turnBack 50s linear infinite}
.orbit-outer:after{content:"";position:absolute;inset:22%;border:1px solid rgba(165,138,184,.16);border-radius:50%}
.orbit i{position:absolute;font-style:normal;color:var(--paper);font-size:12px;font-weight:400;opacity:.85}
/* Evenly spaced on circle: top(0°) → 45° increments */
.orbit i:nth-child(1){left:calc(50% - 6px);top:-14px}           /* 乾 - 上 */
.orbit i:nth-child(2){right:-2px;top:calc(50% - 8px)}           /* 坎 - 右 */
.orbit i:nth-child(3){left:calc(50% - 6px);bottom:-14px}         /* 艮 - 下 */
.orbit i:nth-child(4){left:-2px;top:calc(50% - 8px)}             /* 震 - 左 */
.orbit i:nth-child(5){right:calc(50% - 52px);top:12%}            /* 巽 - 右上 */
.orbit i:nth-child(6){right:calc(50% - 52px);bottom:12%}         /* 离 - 右下 */
.orbit i:nth-child(7){left:calc(50% - 52px);bottom:12%}          /* 坤 - 左下 */
.orbit i:nth-child(8){left:calc(50% - 52px);top:12%}             /* 兑 - 左上 */
.taiji{position:absolute;inset:30%;border-radius:50%;background:linear-gradient(90deg,#dfe8df 50%,#0c1713 50%);box-shadow:0 0 80px rgba(121,210,158,.35),inset 0 0 30px rgba(156,222,183,.15)}.taiji:before,.taiji:after{content:"";position:absolute;left:25%;width:50%;height:50%;border-radius:50%}.taiji:before{top:0;background:#dfe8df;box-shadow:inset 0 0 0 12px #0c1713}.taiji:after{bottom:0;background:#0c1713;box-shadow:inset 0 0 0 12px #dfe8df}.element-sparks i{position:absolute;font-style:normal;font-size:8px;color:var(--gold);text-shadow:0 0 10px currentColor;opacity:.7}.element-sparks i:nth-child(1){left:1%;top:48%}.element-sparks i:nth-child(2){right:1%;top:48%}.element-sparks i:nth-child(3){left:50%;top:3%}.element-sparks i:nth-child(4){right:8%;bottom:25%}.element-sparks i:nth-child(5){left:8%;bottom:25%}
.enter-observatory{display:none}.enter-observatory b{color:var(--jade);font-size:16px;animation:float 2s ease-in-out infinite}
.observatory,.recent-section{padding:24px 12px;background:radial-gradient(circle at 50% 0,rgba(46,99,70,.14),transparent 32%),var(--ink)}.section-heading{text-align:center;max-width:600px;margin:0 auto 28px}.section-heading h2{margin:6px 0 8px;font-size:clamp(26px,5vw,40px);font-weight:400;letter-spacing:.08em}.section-heading>p:last-child{color:var(--muted);line-height:1.8;font-size:13px}
.tool-tabs{width:min(1100px,100%);margin:auto;display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-bottom:0;background:rgba(4,13,10,.82);backdrop-filter:blur(12px)}.tool-tab{min-height:48px;padding:6px 4px;border:0;border-right:1px solid var(--line);color:#909c93;background:transparent}.tool-tab:last-child{border-right:0}.tool-tab span,.tool-tab strong,.tool-tab small{display:block}.tool-tab span{margin-bottom:7px;color:var(--jade);font-size:16px}.tool-tab strong{font-weight:500;font-size:14px}.tool-tab small{margin-top:5px;color:#78847c;font-size:9px}.tool-tab.active{color:var(--paper);background:linear-gradient(180deg,rgba(87,171,119,.18),rgba(96,65,111,.14));box-shadow:inset 0 -2px var(--jade)}
.workspace{width:min(1100px,100%);margin:auto;border:1px solid var(--line);background:var(--panel);box-shadow:0 25px 80px rgba(0,0,0,.4);backdrop-filter:blur(12px)}.tool-panel{min-height:260px;padding:18px;display:grid;grid-template-columns:240px minmax(0,1fr);gap:14px}.panel-intro{padding-right:24px;border-right:1px solid rgba(165,138,184,.22)}.panel-intro>span{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--violet);color:#c3acd0}.panel-intro h3{margin:14px 0 8px;font-size:26px;font-weight:400}.panel-intro>p:last-child{color:var(--muted);line-height:1.95;font-size:13px}
.tool-form{min-width:0}.field{display:grid;gap:6px;min-width:0}.field>span,fieldset legend{color:#b6c1b8;font-size:11px}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(232,240,234,.15);border-radius:0;outline:0;color:var(--paper);background:rgba(255,255,255,.035)}.field input,.field select{height:40px;padding:0 12px}.field textarea{padding:12px;resize:vertical;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--jade)}.field select option{color:#111}.full{grid-column:1/-1}.birth-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.gender-field{margin:0;padding:0;border:0}.segmented{height:40px;display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(232,240,234,.15)}.segmented input{position:absolute;opacity:0}.segmented label,.segmented span{height:100%;display:grid;place-items:center}.segmented input:checked+span{color:#06110b;background:var(--jade)}.ritual-button{width:100%;height:48px;margin-top:20px;padding:0 20px;display:flex;justify-content:space-between;align-items:center;border:0;color:#07110c;background:linear-gradient(90deg,#8cdbad,#b7a0c6);transition:.2s}.ritual-button:hover{filter:brightness(1.08);transform:translateY(-2px)}.switch-line{display:flex;align-items:center;gap:10px;margin-top:14px;color:var(--muted);font-size:11px}.people-grid{display:grid;grid-template-columns:1fr 36px 1fr;gap:10px;align-items:center}.people-grid fieldset{min-width:0;margin:0;padding:14px;border:1px solid rgba(165,138,184,.24)}.people-grid .compact{grid-template-columns:1fr 1fr}.union-mark{text-align:center;color:var(--jade);font-size:24px}.form-message{min-height:20px;margin:0 32px 18px;color:#df9fae;font-size:12px}
.result-stage{padding:40px 16px;background:linear-gradient(180deg,#09130f,#07100d);border-top:1px solid var(--line)}.result-wrap{width:min(1120px,100%);margin:auto}.result-header{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:20px}.result-header h2{margin:0;font-size:clamp(26px,5vw,40px);font-weight:400}.result-actions{display:flex;flex-wrap:wrap;gap:8px}.result-actions button,.text-button{padding:7px 11px;border:1px solid var(--line);color:var(--jade2);background:transparent}
.public-reading{display:grid;grid-template-columns:1fr 280px;gap:14px;align-items:center;padding:20px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(42,92,65,.14),rgba(96,70,111,.1))}.profile-overview>p{color:var(--muted);font-size:12px}.profile-overview h3{margin:16px 0 8px;font-size:26px;font-weight:400}.profile-overview #chart-summary{max-width:580px;color:#c2ccc4;line-height:1.7;font-size:14px}.outline-button{margin-top:14px;padding:10px 16px;border:1px solid var(--jade);color:var(--jade2);background:transparent}.element-oracle{text-align:center}.energy-ring{--wood:20;--fire:20;--earth:20;--metal:20;width:160px;aspect-ratio:1;margin:15px auto;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#53a878 0 calc(var(--wood)*1%),#b96468 0 calc((var(--wood) + var(--fire))*1%),#af9661 0 calc((var(--wood) + var(--fire) + var(--earth))*1%),#d4d3c9 0 calc((var(--wood) + var(--fire) + var(--earth) + var(--metal))*1%),#617fa6 0);box-shadow:0 0 55px rgba(97,189,137,.14)}.energy-ring:before{content:"";position:absolute;width:148px;aspect-ratio:1;border-radius:50%;background:#0a1511;box-shadow:inset 0 0 35px rgba(118,208,158,.13)}.energy-ring>div{position:relative}.energy-ring strong,.energy-ring span{display:block}.energy-ring strong{font-size:24px;font-weight:400}.energy-ring span{margin-top:5px;color:var(--muted);font-size:11px}.element-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;font-size:10px}.element-legend i{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.pillar{padding:14px;border:1px solid var(--line);text-align:center;background:rgba(255,255,255,.018)}.pillar-name{color:var(--muted);font-size:11px}.pillar-characters{display:grid;gap:4px;margin:12px 0;color:var(--jade2);font-size:26px;line-height:1}.pillar-meta{display:grid;gap:4px;color:#929f96;font-size:10px}
.professional-section{margin-top:32px;border-top:1px solid var(--line)}.professional-section>header{padding:26px 0;display:flex;justify-content:space-between;align-items:center}.professional-section h3{margin:0;font-size:22px;font-weight:400}.professional-section>header button{padding:10px 16px;border:1px solid var(--violet);color:#c7b4d1;background:transparent}.details{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.detail-item{padding:14px;border-left:2px solid var(--violet);background:rgba(255,255,255,.025)}.detail-item strong,.detail-item span{display:block}.detail-item strong{color:var(--jade2);font-size:12px}.detail-item span{margin-top:7px;color:var(--muted);font-size:11px;line-height:1.7}.terminology{margin:18px 0;padding:16px;border:1px solid rgba(165,138,184,.24)}.terminology button{margin:0 5px 8px 0;padding:7px 11px;border:1px solid var(--line);color:#c4d2c8;background:transparent}.terminology p{margin:8px 0 0;color:var(--muted);font-size:12px}.fortune-header{display:flex;justify-content:space-between;align-items:end;margin-top:28px}.fortune-header p{color:var(--muted);font-size:11px}.dayun-timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:12px}.dayun-card{padding:10px;border:1px solid var(--line);color:#aeb9b1;background:rgba(255,255,255,.018);text-align:left}.dayun-card.active{border-color:var(--jade);color:var(--paper);background:rgba(75,153,105,.12)}.dayun-card strong,.dayun-card span{display:block}.dayun-card strong{font-size:18px;font-weight:400}.dayun-card span{margin-top:5px;font-size:9px}.liunian-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:10px}.liunian-grid div{padding:12px;border:1px solid rgba(255,255,255,.08);text-align:center}.liunian-grid strong,.liunian-grid span{display:block}.liunian-grid strong{color:var(--jade2);font-weight:400}.liunian-grid span{margin-top:5px;color:var(--muted);font-size:10px}
#interpretation-result blockquote{margin:0 0 35px;padding:16px;border-left:2px solid var(--jade);color:#dce8df;background:rgba(74,152,104,.07);font-size:18px;line-height:1.9}.result-sections{display:grid;grid-template-columns:1fr 1fr;gap:13px}.result-card,.tips-section{padding:16px;border:1px solid rgba(165,138,184,.22);background:rgba(255,255,255,.02)}.result-card h3,.tips-section h3{margin:0 0 12px;color:#c4afd0;font-weight:500}.result-card p,.tips-section{color:var(--muted);font-size:13px;line-height:1.9}.tips-section{margin-top:14px}.relationship-profiles{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.profile-chip{padding:18px;border:1px solid var(--line)}.profile-chip span{display:block;margin-top:7px;color:var(--muted);font-size:11px}
.almanac-card{padding:18px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(70,144,99,.1),rgba(102,75,119,.1))}.almanac-date{display:flex;justify-content:space-between;gap:14px}.almanac-date h3{margin:0;font-size:26px;font-weight:400}.almanac-meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.almanac-meta span{padding:7px 10px;border:1px solid var(--line);color:#bdc9c0;font-size:11px}.yi-ji{display:grid;grid-template-columns:1fr 1fr;gap:10px}.yi-ji section{padding:16px;border:1px solid rgba(255,255,255,.1)}.yi-ji h4{margin:0 0 12px;color:var(--jade2)}.yi-ji p{color:var(--muted);line-height:1.9}.personal-note{margin-top:14px;padding:16px;border-left:2px solid var(--gold);color:#d7cfba;background:rgba(196,171,112,.06);line-height:1.8}
.recent-section{border-top:1px solid var(--line)}.recent-grid{width:min(1000px,100%);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.recent-card{padding:14px;border:1px solid var(--line);color:var(--paper);background:rgba(255,255,255,.02);text-align:left}.recent-card strong,.recent-card span{display:block}.recent-card span{margin-top:7px;color:var(--muted);font-size:10px}.recent-section>.text-button{display:block;margin:20px auto 0}.empty-history{text-align:center;color:var(--muted);grid-column:1/-1}
footer{padding:32px 20px;display:grid;place-items:center;gap:8px;text-align:center;border-top:1px solid var(--line);color:#7e8b82;background:#050b09;font-size:11px}footer strong{color:var(--jade);font-size:21px;font-weight:400}footer p{max-width:700px;line-height:1.8}
dialog{max-width:400px;padding:24px;border:1px solid var(--jade);color:var(--paper);background:#0b1712;box-shadow:0 30px 90px #000}dialog::backdrop{background:rgba(2,7,5,.78)}dialog button{float:right;border:0;color:var(--paper);background:transparent;font-size:24px}.loading-screen{position:fixed;inset:0;z-index:50;display:grid;place-content:center;text-align:center;background:rgba(3,10,7,.95)}.loading-cosmos{width:100px;aspect-ratio:1;position:relative;display:grid;place-items:center}.loading-cosmos i{position:absolute;inset:0;border:1px dashed var(--jade);border-radius:50%;animation:turn 5s linear infinite}.loading-cosmos span{font-size:58px}.loading-screen p{color:var(--muted);font-size:10px;letter-spacing:.18em}
@keyframes turn{to{transform:rotate(360deg)}}@keyframes turnBack{to{transform:rotate(-360deg)}}@keyframes float{50%{transform:translateY(6px)}}
@media(min-width:621px){}@media(max-width:900px){.tool-panel{grid-template-columns:1fr;gap:14px;padding:28px}.public-reading{grid-template-columns:1fr}.details{grid-template-columns:1fr 1fr}.people-grid{grid-template-columns:1fr}}
@media(max-width:620px){.cosmos-hero{min-height:0;padding-bottom:10px}.hero-copy h1{font-size:34px;margin:0 0 2px}.hero-copy{margin-top:3vh}.observatory,.feed-section,.result-stage{padding:28px 12px}.tool-panel{padding:16px 12px;min-height:auto}.birth-fields{grid-template-columns:1fr 1fr}.public-reading{padding:18px}.energy-ring{width:140px}.pillars{grid-template-columns:1fr 1fr}.result-sections,.details{grid-template-columns:1fr}.result-header{display:block}.result-header h2{font-size:24px}.almanac-date{display:block}.almanac-date h3{font-size:24px}.hamburger{display:flex}.topbar nav{display:none}.topbar nav.open{display:flex;flex-direction:column;position:absolute;top:56px;left:0;right:0;background:var(--ink2);padding:14px 20px;z-index:50}.orbit i{font-size:10px}.celestial-stage{width:220px;top:34vh;bottom:auto;left:50%;transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media print{.cosmos-hero,.observatory,.recent-section,footer,.result-actions,.loading-screen{display:none!important}.result-stage{display:block!important;padding:0;background:white;color:#111}.result-wrap{width:100%}}

.hamburger{display:none;flex-direction:column;gap:5px;border:0;background:transparent;cursor:pointer;padding:8px;z-index:10}
.hamburger span{display:block;width:22px;height:2px;background:var(--jade2);border-radius:1px;transition:.3s}
.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.hamburger.active span:nth-child(2){opacity:0}
.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}


/* === 焦点可见样式 === */
:focus-visible{outline:2px solid var(--jade);outline-offset:2px}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--jade);outline-offset:2px}
.ritual-button:focus-visible{outline:3px solid var(--violet);outline-offset:2px}

.loading-bar{width:160px;height:2px;margin:14px auto 0;background:rgba(255,255,255,.1);border-radius:2px;overflow:hidden}
.loading-bar-fill{height:100%;width:var(--load-progress,0%);background:linear-gradient(90deg,var(--jade),var(--violet));border-radius:2px;transition:width 1s ease}

/* === 登录/注册 === */
.auth-box{max-width:380px;margin:auto;padding:10px 0}
.auth-box h3{font-size:24px;font-weight:400;margin:0 0 20px}
.auth-switch{margin-top:18px;text-align:center;color:var(--muted);font-size:12px}
.auth-switch a{color:var(--jade2);cursor:pointer}
.dialog-close{position:absolute;top:12px;right:16px;border:0;background:transparent;color:var(--paper);font-size:24px;cursor:pointer}
.form-error{min-height:20px;color:#df9fae;font-size:12px}
.auth-btn{padding:6px 14px;border:1px solid var(--jade);color:var(--jade2);background:transparent;font-size:11px;cursor:pointer;border-radius:0}
.auth-btn:hover{background:rgba(121,210,158,.12)}
.auth-status{display:flex;align-items:center;gap:12px}
.user-badge{display:flex;align-items:center;gap:10px;justify-content:flex-end;padding:6px 20px;background:rgba(0,0,0,.2);border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}
.user-badge span{color:var(--jade2);font-weight:500}
#logout-btn{color:var(--muted);border-color:var(--line);padding:4px 10px;font-size:11px}
dialog#auth-dialog{max-width:420px;padding:32px;border:1px solid var(--line);color:var(--paper);background:#0b1712}
/* === 命盘广场 === */
.feed-section{padding:40px 16px;border-top:1px solid var(--line);background:radial-gradient(circle at 50% 0,rgba(46,99,70,.14),transparent 32%),var(--ink)}
.feed-grid{width:min(1100px,100%);margin:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.feed-card{padding:16px;border:1px solid var(--line);background:var(--panel);text-align:left;cursor:default}
.feed-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.feed-card-header strong{color:var(--jade2);font-size:12px}
.feed-card-header span{color:var(--muted);font-size:10px}
.feed-card h4{margin:0 0 8px;font-size:20px;font-weight:400;letter-spacing:.06em}
.feed-card .wuxing-tags{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.feed-card .wuxing-tags i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:3px}
.feed-card .wuxing-tags span{font-size:10px;color:var(--muted)}
.feed-card-actions{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.feed-card-actions button{border:0;background:transparent;color:var(--muted);font-size:11px;cursor:pointer;display:flex;align-items:center;gap:4px}
.feed-card-actions button:hover{color:var(--jade2)}
.feed-card-actions .liked{color:#df9fae}
.share-btn{width:100%;margin-top:12px;padding:12px;border:1px solid var(--jade);color:var(--jade2);background:transparent;cursor:pointer;font-size:13px}
.share-btn:hover{background:rgba(121,210,158,.1)}


@media(min-width:621px){.enter-observatory{position:absolute;z-index:6;left:50%;bottom:30px;transform:translateX(-50%);display:grid;gap:4px;text-align:center;text-decoration:none;color:#d7e4da;font-size:10px;letter-spacing:.18em;pointer-events:auto;opacity:1}}
.enter-observatory b{color:var(--jade);font-size:16px;animation:float 2s ease-in-out infinite}