/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.resize{resize:both}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.portal-home{color:#e4edf2;min-height:100vh;font-family:var(--font-geist-mono),Consolas,"Microsoft YaHei",monospace;background:#020509;position:relative;overflow:hidden}.portal-scene,.portal-vignette{position:absolute;inset:0}.portal-vignette{pointer-events:none;background:linear-gradient(90deg,#010407f5 0,#010407a3 34%,#0000 62%),linear-gradient(#01040780,#0000 25%,#010407b8);box-shadow:inset 0 0 130px #000}.celestial-canvas{position:absolute;inset:0}.celestial-canvas canvas{display:block;width:100%!important;height:100%!important}.portal-header{z-index:5;background:linear-gradient(#010509d1,#01050924);border-bottom:1px solid #6da6c138;grid-template-columns:280px 1fr auto;align-items:center;height:82px;padding:0 28px;display:grid;position:relative}.portal-brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.portal-brand strong{font-family:var(--font-geist-sans),sans-serif;letter-spacing:.28em;display:block}.portal-brand small{color:#718c9b;letter-spacing:.12em;margin-top:4px;font-size:13.5px;display:block}.portal-header nav,.lunar-header nav{justify-content:center;gap:8px;display:flex}.portal-header nav a,.lunar-header nav a{color:#7e96a4;letter-spacing:.12em;border:1px solid #0000;padding:10px 14px;font-size:15px;text-decoration:none}.portal-header nav a:hover,.lunar-header nav a:hover,.lunar-header nav a.active{color:#9edfff;background:#16415647;border-color:#31596e}.portal-copy{z-index:3;width:min(690px,56vw);margin:clamp(70px,11vh,130px) 0 0 clamp(28px,6vw,90px);position:relative}.portal-kicker{color:#75cdeb;letter-spacing:.13em;align-items:center;gap:9px;font-size:15px;display:flex}.portal-kicker i{background:#79e3b0;border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #79e3b0}.portal-copy h1{max-width:680px;font-family:var(--font-geist-sans),"Microsoft YaHei",sans-serif;letter-spacing:-.035em;margin:20px 0 18px;font-size:clamp(54px,5.2vw,114px);font-weight:420;line-height:1.07}.portal-copy>p{color:#8297a4;max-width:620px;font-family:var(--font-geist-sans),sans-serif;margin:0;font-size:21px;line-height:1.8}.portal-entry-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:32px;display:grid}.portal-entry{min-height:145px;color:inherit;background:linear-gradient(145deg,#0a1922db,#030a0fb8);border:1px solid #29404e;padding:20px;text-decoration:none;transition:all .25s;position:relative;overflow:hidden}.portal-entry:before{content:"";opacity:.18;transition:all .25s;position:absolute;inset:0}.solar-entry:before{background:radial-gradient(circle at 88% 14%,#ffb13c,#0000 38%)}.lunar-entry:before{background:radial-gradient(circle at 88% 14%,#ad5435,#0000 38%)}.portal-entry:hover{border-color:#5b99b8;transform:translateY(-3px);box-shadow:0 18px 45px #00000059}.portal-entry:hover:before{opacity:.35}.portal-entry small,.portal-entry strong,.portal-entry span{display:block;position:relative}.portal-entry small{color:#718795;letter-spacing:.12em;font-size:13.5px}.portal-entry strong{font-family:var(--font-geist-sans),sans-serif;margin-top:28px;font-size:25.5px;font-weight:500}.portal-entry span{color:#728794;margin-top:7px;font-size:15px}.portal-entry>i{color:#71d7ff;font-size:30px;font-style:normal;position:absolute;bottom:18px;right:18px}.here-card{z-index:4;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:min(330px,34vw);color:inherit;text-align:left;background:#030c12c7;border:1px solid #56a1c170;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px 17px;display:grid;position:absolute;top:110px;right:34px}.here-card:hover{background:#071a25e6;border-color:#73d2fa}.here-pulse{border:2px solid #5bd7ff;border-radius:50%;width:11px;height:11px;box-shadow:0 0 0 5px #5bd7ff1c,0 0 16px #229bd3}.here-card small,.here-card strong,.here-card em{display:block}.here-card small{color:#70d8a0;letter-spacing:.12em;font-size:13.5px}.here-card strong{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:16.5px;font-weight:500;overflow:hidden}.here-card em{color:#718895;margin-top:4px;font-size:12px;font-style:normal}.here-card>b{color:#65d9ff;font-size:31.5px}.portal-telemetry{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#02070bc9;border-top:1px solid #64a0bb38;grid-template-columns:repeat(3,minmax(170px,1fr)) auto;align-items:center;min-height:74px;padding:0 30px;display:grid;position:absolute;bottom:0;left:0;right:0}.portal-telemetry>div{border-right:1px solid #1c303b;padding:0 26px}.portal-telemetry small,.portal-telemetry b{display:block}.portal-telemetry small{color:#607987;font-size:12px}.portal-telemetry b{color:#bfd2dc;margin-top:6px;font-size:15px;font-weight:500}.portal-telemetry>span{color:#617783;padding-left:25px;font-size:13.5px}.portal-modal{z-index:9500;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#000306d1;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.portal-modal>section{background:linear-gradient(150deg,#0b1820,#050b10);border:1px solid #365d70;width:min(590px,96vw);max-height:88vh;padding:24px;overflow:auto;box-shadow:0 30px 110px #000}.portal-modal header{justify-content:space-between;align-items:start;display:flex}.portal-modal header small{color:#67caef;letter-spacing:.13em;font-size:13.5px}.portal-modal h2{font-family:var(--font-geist-sans),sans-serif;margin:7px 0 18px;font-size:36px;font-weight:500}.portal-modal header>button{background:#081219;border:1px solid #355160;width:38px;height:36px;font-size:27px}.locate-now{color:#8bdeff;background:#0b2d3e;border:1px solid #32789a;width:100%;height:48px}.portal-modal form{grid-template-columns:1fr 48px;margin-top:10px;display:grid}.portal-modal form input{background:#050b0f;border:1px solid #2a414e;height:44px;padding:0 12px}.portal-modal form button{color:#7bd9ff;background:#0b2430;border:1px solid #32647b}.portal-city-results{margin-top:5px;display:grid}.portal-city-results button{color:#a9bec9;text-align:left;background:#071118;border:0;border-bottom:1px solid #1d303b;justify-content:space-between;gap:10px;padding:10px;font-size:15px;display:flex}.manual-coords{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.manual-coords label{color:#6f8794;font-size:13.5px}.manual-coords input{background:#050a0e;border:1px solid #2b414d;width:100%;height:40px;margin-top:6px;padding:0 10px}.portal-modal footer{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.portal-modal footer button{background:#091218;border:1px solid #314954;height:40px;padding:0 17px}.portal-modal footer .confirm{color:#8fddff;background:#0c3042;border-color:#327ea2}.lunar-observatory{color:#dfe8ec;min-height:100vh;font-family:var(--font-geist-mono),Consolas,"Microsoft YaHei",monospace;background:radial-gradient(circle at 55% 38%,#17202a 0,#060a0e 38%,#020406 80%);grid-template-rows:72px minmax(590px,1fr) 142px;display:grid}.lunar-header{z-index:4;background:#04070af0;border-bottom:1px solid #26343d;grid-template-columns:270px 1fr auto;align-items:center;height:72px;padding:0 20px;display:grid}.lunar-layout{grid-template-columns:280px minmax(0,1fr) 260px;min-height:0;display:grid}.lunar-left,.lunar-right{background:linear-gradient(#0c1015f5,#06090df5);padding:20px 18px;overflow:auto}.lunar-left{border-right:1px solid #283640}.lunar-right{border-left:1px solid #283640}.lunar-event-card{background:radial-gradient(circle at 90% 0,#9738213d,#0000 42%),#0d1217;border:1px solid #3d3c42;padding:16px}.lunar-event-card small{color:#d17959;letter-spacing:.13em;font-size:13.5px;display:block}.lunar-event-card strong{margin:15px 0 7px;font-size:33px;font-weight:500;display:block}.lunar-event-card span{color:#758a96;font-size:13.5px}.lunar-date{color:#728692;margin:13px 0 10px;font-size:13.5px;display:block}.lunar-date input{background:#070b0f;border:1px solid #2b3b45;width:100%;height:39px;margin-top:6px;padding:0 9px}.preset-row{grid-template-columns:1fr 1fr;gap:5px;margin-top:11px;display:grid}.preset-row button{color:#748b97;background:#081016;border:1px solid #263740;height:29px;font-size:12px}.preset-row button:hover{color:#e0a087;border-color:#a15e45}.lunar-note{color:#637883;margin-top:18px;font-size:13.5px;line-height:1.7}.lunar-stage{background:radial-gradient(circle at 58% 44%,#0e1820,#020508 70%);min-width:0;position:relative;overflow:hidden}.lunar-stage-head{z-index:3;background:linear-gradient(#03070ad6,#0000);border-bottom:1px solid #3e54607a;justify-content:space-between;align-items:center;height:62px;padding:0 18px;display:flex;position:absolute;top:0;left:0;right:0}.lunar-stage-head small,.lunar-stage-head strong{display:block}.lunar-stage-head small{color:#607a88;letter-spacing:.13em;font-size:12px}.lunar-stage-head strong{color:#d77e5b;margin-top:5px;font-size:21px;font-weight:500}.lunar-stage-head>div:last-child{text-align:right}.lunar-stage-head b{margin-top:5px;font-size:25.5px;font-weight:500;display:block}.lunar-stage-labels{pointer-events:none;position:absolute;inset:0}.lunar-stage-labels>span{color:#b68673;background:#04080b9e;border-left:1px solid #b77459;padding:5px 8px;font-size:12px;position:absolute}.earth-label{top:55%;left:34%}.moon-label{top:38%;right:22%}.lunar-stage-labels>b{color:#5d7380;font-size:12px;font-weight:400;position:absolute;bottom:15px;left:18px}.lunar-big-stat{background:linear-gradient(145deg,#171316,#0b0d10);border:1px solid #3d3638;padding:17px}.lunar-big-stat small{color:#8d7775;font-size:13.5px;display:block}.lunar-big-stat strong{margin:9px 0;font-size:52.5px;font-weight:400;display:block}.lunar-big-stat strong em{color:#a26855;font-size:21px;font-style:normal}.lunar-big-stat>i{background:#261c1b;height:3px;display:block}.lunar-big-stat>i b{background:linear-gradient(90deg,#8f3522,#e37a52);height:100%;display:block;box-shadow:0 0 10px #b04b2c}.telemetry dd.visible{color:#6dd8a0}.telemetry dd.below{color:#d67c64}.shadow-legend{border-top:1px solid #27343c;gap:10px;margin-top:20px;padding-top:15px;display:grid}.shadow-legend span{color:#718691;align-items:center;gap:9px;font-size:13.5px;display:flex}.shadow-legend i{border-radius:50%;width:13px;height:13px}.shadow-legend .penumbra{background:#393234;border:1px solid #766d69}.shadow-legend .umbra{background:#3e1714;box-shadow:0 0 8px #7d3027}.shadow-legend .total-shadow{background:#a33a21;box-shadow:0 0 10px #bd4c2e}.lunar-timeline{background:#080c10;border-top:1px solid #283640;grid-template-columns:210px 1fr 240px;display:grid}.lunar-transport{border-right:1px solid #25333c;align-items:center;gap:7px;padding:0 18px;display:flex}.lunar-transport button,.lunar-speed button{background:#0b141a;border:1px solid #30414b;min-width:38px;height:34px}.lunar-transport .play{color:#e29370;border-color:#8c5a46}.lunar-transport span{color:#778b96;margin-left:6px;font-size:13.5px}.lunar-track{flex-direction:column;justify-content:center;padding:0 20px;display:flex}.lunar-speed{border-left:1px solid #25333c;justify-content:center;align-items:center;gap:5px;display:flex}.lunar-speed button{font-size:12px}.lunar-speed button.active{color:#e99b78;background:#261611;border-color:#b46749}.solar-route-nav{justify-content:center;align-items:center;gap:16px;display:flex}.solar-route-nav a{color:#7396aa;text-decoration:none}.solar-route-nav a:hover{color:#7bdcff}@media (width<=1000px){.portal-copy{width:min(720px,70vw)}.here-card{width:300px}.portal-telemetry{grid-template-columns:repeat(3,1fr)}.portal-telemetry>span{display:none}.lunar-layout{grid-template-columns:230px minmax(0,1fr) 220px}.lunar-left,.lunar-right{padding:15px 12px}.lunar-timeline{grid-template-columns:180px 1fr 190px}}@media (width<=760px){.portal-home{min-height:920px}.portal-header,.lunar-header{grid-template-columns:1fr auto;height:auto;min-height:70px;padding:10px 14px}.portal-header nav,.lunar-header nav{grid-area:2/1/auto/-1}.portal-header .languages,.lunar-header .languages{grid-area:1/2}.portal-copy{width:auto;margin:115px 18px 0}.portal-copy h1{font-size:60px}.portal-entry-grid{grid-template-columns:1fr}.here-card{width:auto;margin:20px 18px;position:relative;top:auto;right:auto}.portal-telemetry{grid-template-columns:1fr;gap:10px;margin-top:24px;padding:16px 18px;position:relative}.portal-telemetry>div{border:0;padding:5px 0}.portal-vignette{background:linear-gradient(#01040759,#010407d6 45%,#020509 80%)}.lunar-observatory{display:block}.lunar-header{height:auto}.lunar-layout{flex-direction:column;display:flex}.lunar-stage{order:-1;height:560px}.lunar-left,.lunar-right{border:0;border-top:1px solid #283640}.lunar-timeline{grid-template-columns:1fr;min-height:220px}.lunar-transport,.lunar-speed{border:0;min-height:60px}.lunar-track{min-height:100px}.solar-route-nav{font-size:12px}}.catalog-modal{width:min(1180px,97vw)}.catalog-filters{background:#071117;border:1px solid #253947;grid-template-columns:repeat(3,minmax(120px,1fr)) auto;align-items:end;gap:12px;padding:14px;display:grid}.catalog-filters label{color:#8397a4;gap:6px;font-size:15px;display:grid}.catalog-filters input,.catalog-filters select{background:#050b0f;border:1px solid #304754;height:38px;padding:0 9px;font-size:18px}.catalog-filters .near-toggle{white-space:nowrap;align-items:center;gap:8px;height:38px;display:flex}.catalog-filters .near-toggle input{width:17px;height:17px}.catalog-summary{color:var(--amber);justify-content:space-between;gap:20px;padding:12px 2px;font-size:16.5px;display:flex}.catalog-summary a{color:#719cb2;text-decoration:none}.catalog-table{border:1px solid #263945;max-height:52vh;overflow:auto}.catalog-row{color:#bdd0d9;text-align:left;background:#071016;border:0;border-bottom:1px solid #1d2b34;grid-template-columns:minmax(230px,2fr) 1fr 1fr 1.4fr auto;align-items:center;gap:10px;width:100%;min-height:47px;padding:7px 12px;display:grid}.catalog-row:not(.catalog-head):hover{background:#0d2330}.catalog-row b,.catalog-row small{display:block}.catalog-row b{font-size:16.5px;font-weight:500}.catalog-row small{color:#667d89;margin-top:3px;font-size:12px}.catalog-row span{font-size:16.5px}.catalog-row i{color:var(--cyan);font-size:13.5px;font-style:normal}.catalog-head{z-index:2;color:#718793;background:#101d25;min-height:35px;position:sticky;top:0}.catalog-empty{text-align:center;color:#7d929e;padding:40px}.catalog-modal footer{justify-content:center;align-items:center;gap:12px;padding-top:14px;display:flex}.catalog-modal footer button{background:#09151c;border:1px solid #345163;width:42px;height:34px}.catalog-modal footer button:disabled{opacity:.3}.catalog-modal footer span{color:#8da1ad;font-size:16.5px}@media (width<=720px){.modal-shell{padding:8px}.map-modal,.catalog-modal{padding:14px}.large-world-map{min-height:220px}.map-selection{flex-direction:column;align-items:stretch}.map-selection>div:last-child button{flex:1}.catalog-filters{grid-template-columns:1fr 1fr}.catalog-filters .near-toggle{grid-column:1/-1}.catalog-row{grid-template-columns:minmax(150px,2fr) 1fr 1fr auto}.catalog-row span:nth-child(4),.catalog-head span:nth-child(4){display:none}.catalog-modal header p{font-size:15px}}.observatory{letter-spacing:.025em}.scene-panel{background:radial-gradient(at 58% 46%,#11273785 0,#050c13b8 34%,#010307 78%)}.reticle{display:none}.brand small{font-size:15px}.mission{font-size:18px}.languages button,.section-label{font-size:16.5px}.section-label span{font-size:15px}.location-name small{font-size:16.5px}.location-name strong{font-size:24px}.coord-grid label,.date-field{font-size:15px}.coord-grid input,.date-field input,.event-select{font-size:18px}.instrument-btn{font-size:16.5px}.telemetry dt{font-size:15px}.telemetry dd{font-size:16.5px}.scene-header span{font-size:15px}.scene-header strong{font-size:22.5px}.utc-readout small{font-size:13.5px}.stage-caption{font-size:15px}.sky-title{font-size:13.5px}.body-status small{font-size:15px}.body-status b{font-size:12px}.body-status em{font-size:13.5px}.map-label span{font-size:15px}.map-label small,.map-credit,.world-map>b{font-size:12px}.view-stack button b{font-size:16.5px}.view-stack button i,.precision-note,.precision-note a{font-size:13.5px}.contact-row,.scale-row{font-size:15px}.transport,.speed-control{font-size:16.5px}.catalog-launch{text-align:left;color:#dbe9ef;background:linear-gradient(135deg,#0d2230,#09131a);border:1px solid #31546a;grid-template-columns:1fr auto;gap:5px;width:100%;min-height:66px;margin-bottom:10px;padding:10px 12px;display:grid}.catalog-launch span{color:var(--cyan);letter-spacing:.13em;grid-column:1/-1;font-size:13.5px}.catalog-launch b{font-size:21px;font-weight:500}.catalog-launch i{color:var(--amber);align-self:center;font-size:15px;font-style:normal}.catalog-launch:hover{border-color:var(--blue);background:#102b3b}.modal-shell{z-index:9000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000307d1;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.map-modal,.catalog-modal,.view-confirm{background:linear-gradient(160deg,#0b151d,#05090e 72%);border:1px solid #33576b;width:min(1100px,96vw);max-height:92vh;padding:22px;overflow:auto;box-shadow:0 30px 120px #000}.map-modal>header,.catalog-modal>header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:17px;display:flex}.map-modal header small,.catalog-modal header small,.view-confirm>small{color:var(--cyan);letter-spacing:.15em;font-size:15px}.map-modal h2,.catalog-modal h2,.view-confirm h2{font-family:var(--font-geist-sans),sans-serif;margin:7px 0 5px;font-size:clamp(30px,3vw,48px);font-weight:500}.map-modal header p,.catalog-modal header p{color:#8297a4;margin:0;font-size:18px}.map-modal header>button,.catalog-modal header>button{color:#bcd5df;background:#09141b;border:1px solid #3a5968;min-width:42px;height:38px;font-size:27px}.large-world-map{aspect-ratio:2;background:#07131c url(/textures/earth-blue-marble.jpg) 50%/100% 100% no-repeat;border:1px solid #38556a;width:100%;min-height:280px;position:relative;overflow:hidden}.large-world-map:after{content:"";background:linear-gradient(90deg,#31a8ff0d,#0000 45%,#ffb23f0a);position:absolute;inset:0;box-shadow:inset 0 0 55px #010306}.large-world-map .map-grid{opacity:.42}.large-world-map .map-pin{width:14px;height:14px}.map-selection{justify-content:space-between;align-items:flex-end;gap:20px;padding:16px 0 10px;display:flex}.map-selection>div:first-child{gap:5px;display:grid}.map-selection small{color:var(--amber);font-size:15px}.map-selection strong{font-size:21px;font-weight:500}.map-selection span{color:#79909d;font-size:16.5px}.map-selection>div:last-child,.view-confirm>div{gap:9px;display:flex}.map-selection button,.view-confirm button{color:#a8bdc8;background:#0a141b;border:1px solid #354d5b;min-height:38px;padding:0 16px}.map-selection button.confirm,.view-confirm button.confirm{color:#8bddff;background:#0d3144;border-color:#2479a6}.map-selection button:disabled{opacity:.45;cursor:wait}.free-picking{cursor:crosshair}.free-pick-overlay{z-index:8;text-align:center;pointer-events:none;color:var(--cyan);background:radial-gradient(circle,#0000 0 18%,#0005094d 65%,#0003069e);place-content:center;display:grid;position:absolute;inset:0}.free-pick-overlay span{text-shadow:0 0 18px var(--blue);font-size:66px;font-weight:200}.free-pick-overlay b{background:#020a0fb3;border:1px solid #51b4e166;margin-top:12px;padding:8px 12px;font-size:18px;font-weight:400}.free-confirm-shell{z-index:9300}.view-confirm{width:min(470px,94vw);padding:28px}.view-confirm p{color:#8ca6b4;margin:18px 0}.view-confirm>div{justify-content:flex-end}.view-confirm button{font-size:16.5px}:root{--bg:#05070a;--panel:#0b0f14;--panel-2:#10161d;--line:#25303a;--muted:#70808d;--text:#dbe7ee;--blue:#31a8ff;--cyan:#6cd9ff;--amber:#ffb23f;--amber-soft:#ffd27a;--ok:#70d8a0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0}body{font-family:var(--font-geist-mono),"SFMono-Regular",Consolas,"Microsoft YaHei",monospace;overflow-x:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.observatory{letter-spacing:.035em;background:radial-gradient(circle at 54% 42%,#0c1721 0,#05080c 35%,#030507 72%);grid-template-rows:72px minmax(560px,1fr) 166px;min-height:100vh;display:grid}.topbar{border-bottom:1px solid var(--line);z-index:5;background:#05070aeb;grid-template-columns:285px 1fr auto;align-items:center;height:72px;padding:0 18px;display:grid;position:relative}.brand{align-items:center;gap:12px;display:flex}.brand-mark{border:1px solid #42515c;border-radius:50%;width:34px;height:34px;position:relative}.brand-mark i,.brand-mark b{border:1px solid var(--amber);border-radius:50%;position:absolute;inset:8px}.brand-mark b{background:var(--amber);box-shadow:0 0 16px var(--amber);border:0;inset:13px}.brand strong{font-family:var(--font-geist-sans),sans-serif;letter-spacing:.28em;font-size:24px;display:block}.brand small{color:var(--muted);letter-spacing:.18em;margin-top:3px;font-size:12px;display:block}.mission{text-align:center;color:#8fa1ad;letter-spacing:.17em;font-size:15px}.mission em{color:#53616b;margin-left:18px;font-style:normal}.live-dot{background:var(--ok);width:7px;height:7px;box-shadow:0 0 10px var(--ok);border-radius:50%;margin-right:7px;animation:1.5s ease-in-out infinite pulse;display:inline-block}.languages{border:1px solid var(--line);background:#080b0f;display:flex}.languages button{border:0;border-right:1px solid var(--line);color:#7d8d98;background:0 0;min-width:42px;height:30px;font-size:13.5px}.languages button:last-child{border-right:0}.languages button.active{color:var(--cyan);box-shadow:inset 0 -2px var(--blue);background:#122330}.workspace{grid-template-columns:284px minmax(0,1fr) 260px;min-height:0;display:grid}.panel{border-color:var(--line);background:linear-gradient(#0b0f14f5,#070a0ef5);padding:19px 18px;overflow:auto}.left-panel{border-right:1px solid var(--line)}.right-panel{border-left:1px solid var(--line)}.section-label{text-transform:uppercase;color:#83939e;letter-spacing:.15em;align-items:center;gap:9px;margin-bottom:14px;font-size:13.5px;display:flex}.section-label span{width:22px;height:18px;color:var(--amber);border:1px solid #35434d;place-items:center;font-size:12px;display:grid}.location-name{border:1px solid var(--line);background:linear-gradient(135deg,#101923,#0b1117);padding:14px;position:relative}.location-name:before{content:"";background:var(--blue);width:2px;height:28px;box-shadow:0 0 9px var(--blue);position:absolute;top:14px;left:-1px}.location-name small{color:var(--cyan);text-transform:uppercase;letter-spacing:.16em;margin-bottom:10px;font-size:13.5px;display:block}.location-name strong{font-size:21px;font-weight:500;line-height:1.7}.coord-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.coord-grid label,.date-field{color:#71818c;letter-spacing:.12em;font-size:12px;display:block}.coord-grid input,.date-field input,.event-select{border:1px solid var(--line);color:#bcd0dc;background:#080c10;outline:none;width:100%;height:34px;margin-top:5px;padding:0 8px;font-size:15px}.coord-grid input:focus,.date-field input:focus,.event-select:focus{border-color:var(--blue);box-shadow:0 0 0 1px #31a8ff26}.rule{background:var(--line);height:1px;margin:19px 0}.event-select{height:38px;margin:0 0 10px}.date-field{margin:0 0 9px}.instrument-btn{width:100%;height:38px;color:var(--cyan);letter-spacing:.12em;background:#0d2432;border:1px solid #2d617e;justify-content:space-between;align-items:center;padding:0 12px;font-size:13.5px;display:flex}.instrument-btn:hover{border-color:var(--blue);background:#123247}.telemetry{gap:9px;margin:0;display:grid}.telemetry div{border-bottom:1px dotted #202a31;justify-content:space-between;align-items:center;padding-bottom:7px;display:flex}.telemetry dt{color:#64747f;font-size:12px}.telemetry dd{color:#c4d2da;margin:0;font-size:13.5px}.telemetry dd.amber{color:var(--amber)}.scene-panel{background-color:#0000;background-image:linear-gradient(#31a8ff06 1px,#0000 1px),linear-gradient(90deg,#31a8ff06 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:44px 44px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;grid-template-rows:59px minmax(0,1fr);min-width:0;display:grid;position:relative}.scene-header{background:#05080b8f;border-bottom:1px solid #25303ad1;justify-content:space-between;align-items:center;padding:0 18px;display:flex}.scene-header span{color:#586b78;letter-spacing:.16em;font-size:12px;display:block}.scene-header strong{color:var(--amber);text-transform:uppercase;margin-top:5px;font-size:19.5px;font-weight:500;display:block}.utc-readout{text-align:right;color:#d7e7ee;letter-spacing:.1em;font-size:27px}.utc-readout small{color:var(--blue);margin-bottom:3px;font-size:10.5px;display:block}.three-stage{min-height:0;position:relative;overflow:hidden}.three-stage canvas{display:block;width:100%!important;height:100%!important}.reticle{pointer-events:none;border:1px solid #31a8ff21;border-radius:50%;width:290px;height:290px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reticle:before,.reticle:after{content:"";background:#31a8ff2e;position:absolute}.reticle:before{width:340px;height:1px;top:50%;left:-26px}.reticle:after{width:1px;height:340px;top:-26px;left:50%}.reticle i{border-color:var(--blue);opacity:.55;width:18px;height:18px;position:absolute}.reticle i:first-child{border-top:1px solid;border-left:1px solid;top:24px;left:24px}.reticle i:nth-child(2){border-top:1px solid;border-right:1px solid;top:24px;right:24px}.reticle i:nth-child(3){border-bottom:1px solid;border-right:1px solid;bottom:24px;right:24px}.reticle i:nth-child(4){border-bottom:1px solid;border-left:1px solid;bottom:24px;left:24px}.stage-caption{color:#60717c;pointer-events:none;justify-content:space-between;font-size:12px;display:flex;position:absolute;bottom:12px;left:14px;right:14px}.stage-caption b{color:#708b99;font-weight:500}.sky-inset{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05090db8;width:150px;height:182px;padding:10px;position:absolute;top:18px;left:18px}.sky-title{color:#718792;letter-spacing:.11em;text-align:center;font-size:10.5px}.solar-disc{background:#ffd784;border-radius:50%;width:92px;height:92px;position:absolute;top:52%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 0 8px #fff3bd,0 0 30px #ffb23fbf,0 0 65px #ffb23f52}.lunar-disc{background:radial-gradient(circle at 35% 35%,#17212a,#020304 65%);border-radius:50%;width:92px;height:92px;transition:transform .18s linear;position:absolute;top:50%;left:50%;box-shadow:inset -5px -6px 13px #000}.sky-inset>span{text-align:center;color:var(--amber);font-size:16.5px;position:absolute;bottom:8px;left:0;right:0}.view-stack{gap:7px;display:grid}.view-stack button{border:1px solid var(--line);text-align:left;background:#0a0f14;grid-template-columns:28px 1fr auto;align-items:center;height:54px;padding:0 10px;transition:all .18s;display:grid}.view-stack button span{color:#53636d;font-size:12px}.view-stack button b{font-size:15px;font-weight:500}.view-stack button i{color:#52616a;font-size:10.5px;font-style:normal}.view-stack button:hover{border-color:#3b5667;transform:translate(-3px)}.view-stack button.active{box-shadow:inset 2px 0 var(--blue);background:linear-gradient(90deg,#10293a,#0b151d);border-color:#2b719b}.view-stack button.active span,.view-stack button.active i{color:var(--blue)}.view-stack button.active b{color:var(--cyan)}.big-stat small{color:#71828d;font-size:12px;display:block}.big-stat strong{letter-spacing:-.02em;color:#e7f0f5;margin:6px 0 9px;font-size:45px;font-weight:500;display:block}.big-stat em{color:var(--amber);margin-left:3px;font-size:16.5px;font-style:normal}.big-stat>div{background:#1c252c;height:3px}.big-stat>div i{background:linear-gradient(90deg,var(--blue),var(--amber));height:100%;box-shadow:0 0 8px var(--blue);transition:width .16s;display:block}.right-panel .telemetry{margin-top:18px}.precision-note{font-family:var(--font-geist-sans),sans-serif;color:#60727e;border-left:1px solid var(--amber);margin-top:17px;padding-left:9px;font-size:13.5px;line-height:1.65}.timeline-panel{border-top:1px solid var(--line);z-index:4;background:linear-gradient(#0b0f14,#070a0d);grid-template-columns:235px 1fr 225px;align-items:stretch;display:grid;position:relative}.transport{border-right:1px solid var(--line);justify-content:center;align-items:center;gap:8px;display:flex;position:relative}.transport button{border:1px solid var(--line);color:#7f909b;background:#0b1116;height:31px;padding:0 8px;font-size:12px}.transport .play{width:48px;height:48px;color:var(--cyan);background:#153449;border-color:#2e799f;border-radius:50%;font-size:22.5px;box-shadow:0 0 22px #31a8ff1f}.transport>span{color:#586873;letter-spacing:.15em;font-size:10.5px;position:absolute;bottom:17px}.timeline-main{padding:19px 20px}.contact-row,.scale-row{justify-content:space-between;align-items:center;display:flex}.contact-row span{color:#677985;font-size:10.5px}.contact-row b{color:#a9bac4;margin-top:5px;font-size:13.5px;font-weight:500;display:block}.contact-row span:nth-child(3){text-align:center;color:var(--amber)}.contact-row span:nth-child(3) b{color:var(--amber)}.range-wrap{height:42px;margin-top:7px;position:relative}.range-wrap:before{content:"";background:#202b33;height:2px;position:absolute;top:20px;left:0;right:0}.range-wrap input{opacity:0;z-index:4;cursor:ew-resize;width:100%;position:absolute;inset:0}.range-progress{background:linear-gradient(90deg,var(--blue),var(--amber));pointer-events:none;height:2px;position:absolute;top:20px;left:0}.time-cursor{background:var(--amber);width:1px;height:21px;box-shadow:0 0 9px var(--amber);pointer-events:none;position:absolute;top:11px}.time-cursor:before{content:"";background:var(--amber);width:7px;height:7px;position:absolute;top:-3px;left:-3px;transform:rotate(45deg)}.time-cursor span{white-space:nowrap;color:var(--amber);background:#090d11;padding:2px 4px;font-size:12px;position:absolute;bottom:-18px;left:50%;transform:translate(-50%)}.scale-row{color:#53636e;margin-top:7px;font-size:10.5px}.speed-control{border-left:1px solid var(--line);flex-direction:column;justify-content:center;padding:0 17px;display:flex}.speed-control small{color:#63737e;margin-bottom:10px;font-size:12px}.speed-control>div{grid-template-columns:1fr 1fr;gap:5px;display:grid}.speed-control button{border:1px solid var(--line);color:#73838d;background:#0a1015;height:28px;font-size:12px}.speed-control button.active{color:var(--cyan);background:#102636;border-color:#2c6f94}.city-search{margin-top:10px}.city-search label>span{color:#71818c;letter-spacing:.12em;margin-bottom:5px;font-size:12px;display:block}.city-search label>div{grid-template-columns:1fr auto;display:grid}.city-search input{border:1px solid var(--line);background:#080c10;border-right:0;outline:none;min-width:0;height:35px;padding:0 8px;font-size:13.5px}.city-search input:focus{border-color:var(--blue)}.city-search button{width:38px;height:35px;color:var(--cyan);background:#0d2432;border:1px solid #2d617e;font-size:22.5px}.city-search button span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.city-search button:disabled{opacity:.55}.city-results{border:1px solid var(--line);background:#070b0f;border-top:0;max-height:142px;overflow:auto}.city-results>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #1b252c;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px;display:flex}.city-results>button:hover{background:#10212c}.city-results span{color:#b9c8d1;font-family:Arial,Microsoft YaHei,sans-serif;font-size:13.5px;line-height:1.35}.city-results b{color:var(--cyan);flex:none;font-size:10.5px;font-weight:500}.city-results p{color:#8c6f62;margin:0;padding:9px;font-size:12px}.map-label{justify-content:space-between;align-items:flex-end;margin:11px 0 5px;display:flex}.map-label span{color:#91a2ad;font-size:12px}.map-label small{text-align:right;color:#54646f;max-width:120px;font-size:9px;line-height:1.4}.world-map{aspect-ratio:2;background:#07131c url(/textures/earth-blue-marble.jpg) 50%/100% 100% no-repeat;border:1px solid #30434f;width:100%;padding:0;position:relative;overflow:hidden}.world-map:after{content:"";background:linear-gradient(90deg,#31a8ff14,#0000 40%,#ffb23f0d);position:absolute;inset:0;box-shadow:inset 0 0 22px #020508}.map-grid{z-index:1;background-color:#0000;background-image:linear-gradient(#6cd9ff1f 1px,#0000 1px),linear-gradient(90deg,#6cd9ff1f 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:25% 25%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.map-pin{border:1px solid var(--amber);z-index:3;width:9px;height:9px;box-shadow:0 0 0 3px #ffb23f2e,0 0 12px var(--amber);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.map-pin:after{content:"";background:var(--amber);width:1px;height:17px;position:absolute;top:-5px;left:3px}.world-map>b{z-index:3;color:#d5e3ea;background:#020609bf;padding:3px 4px;font-size:9px;font-weight:500;position:absolute;bottom:4px;right:5px}.map-credit{color:#526773;margin-top:4px;font-size:9px;text-decoration:none;display:block}.map-credit:hover{color:var(--cyan)}.body-status{border:1px solid var(--line);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);z-index:2;background:#04080cc2;width:244px;padding:6px 9px;position:absolute;bottom:38px;right:16px}.body-status>div{border-bottom:1px dotted #26323b;grid-template-columns:18px 1fr auto;align-items:center;gap:7px;padding:7px 0;display:grid}.body-status>div:last-child{border-bottom:0}.body-dot{border-radius:50%;width:12px;height:12px;display:block}.earth-dot{background:radial-gradient(circle at 35% 35%,#62caef,#123e68 62%,#061321);box-shadow:0 0 8px #31a8ff}.moon-dot{background:radial-gradient(circle at 35% 35%,#d4d2cb,#686b70 60%,#121417)}.sun-dot{background:#ffc865;box-shadow:0 0 9px #ffb23f}.body-status p{margin:0}.body-status small,.body-status b{display:block}.body-status small{color:#d6e2e9;font-size:12px}.body-status b{color:#697b87;margin-top:2px;font-size:9px;font-weight:400}.body-status em{color:#8fa3af;text-align:right;font-size:10.5px;font-style:normal}.precision-note a{color:#608ba5;letter-spacing:.09em;margin-top:8px;font-size:9px;text-decoration:none;display:block}.precision-note a:hover{color:var(--cyan)}.scene-actions{align-items:center;gap:14px;display:flex}.immersive-trigger{height:32px;color:var(--cyan);letter-spacing:.08em;cursor:pointer;background:#0a1f2be0;border:1px solid #2d617e;padding:0 10px;font-size:16.5px}.immersive-trigger:hover{border-color:var(--cyan);background:#103548}.immersive-trigger span{margin-left:5px;color:inherit!important;font-size:12px!important;display:inline!important}.sky-inset{left:auto;right:18px}.immersive-view{z-index:9999;color:#dcecf3;background:radial-gradient(circle at 50% 38%,#08131e 0,#02060a 42%,#000 78%);position:fixed;inset:0;overflow:hidden}.immersive-stars{opacity:.48;background-image:radial-gradient(circle,#fff 0 1px,#0000 1.3px),radial-gradient(circle,#8ccfff 0 .7px,#0000 1px),radial-gradient(circle,#fff1c4 0 .8px,#0000 1.1px);background-position:17px 31px,71px 93px,143px 13px;background-size:137px 137px,211px 211px,317px 317px;position:absolute;inset:0}.immersive-view header{z-index:5;background:linear-gradient(#000408cc,#00040800);border-bottom:1px solid #5bb0db2e;justify-content:space-between;align-items:center;height:68px;padding:0 28px;display:flex;position:absolute;top:0;left:0;right:0}.immersive-view header div{flex-direction:column;gap:5px;display:flex}.immersive-view header strong{letter-spacing:.18em;font-size:18px;font-weight:500}.immersive-view header small{color:#6fa5bd;letter-spacing:.11em;font-size:12px}.immersive-view header button{color:#a9d8e9;letter-spacing:.12em;cursor:pointer;background:#051118c7;border:1px solid #396a80;padding:9px 13px;font-size:13.5px}.immersive-celestial{aspect-ratio:1;width:min(34vmin,360px);transition:left .18s linear,top .18s linear,opacity .2s;position:absolute;transform:translate(-50%,-50%)}.immersive-corona{filter:blur(.3px)drop-shadow(0 0 34px #ffbe5c66);background:repeating-conic-gradient(from 4deg,#ffffffc7 0deg,#ffdf9b1f 2deg,#0000 4deg 9deg);border-radius:50%;animation:4s ease-in-out infinite corona-breathe;position:absolute;inset:0}.immersive-sun{background:radial-gradient(circle at 42% 38%,#fffbd8 0,#ffe990 38%,#ffb831 78%,#e77d0d 100%);border-radius:50%;position:absolute;inset:14%;overflow:hidden;box-shadow:0 0 12px #fff8ce,0 0 46px #ffb941c2,0 0 110px #ff8f2152}.immersive-moon{background:#010203 url(/textures/moon-lro.jpg) 50%/cover;border-radius:50%;width:100%;height:100%;transition:transform .16s linear;position:absolute;top:50%;left:50%;box-shadow:inset -14px -8px 28px #000,0 0 5px #aadcff3d}.immersive-celestial.below-horizon{opacity:.24}.immersive-reticle{border:1px solid #4eb1de3d;border-radius:50%;position:absolute;inset:-11%}.immersive-reticle:before,.immersive-reticle:after{content:"";background:#5abbe43d;position:absolute}.immersive-reticle:before{height:1px;top:50%;left:-8%;right:-8%}.immersive-reticle:after{width:1px;top:-8%;bottom:-8%;left:50%}.immersive-readout{z-index:4;border-left:2px solid var(--amber);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.08em;background:#02090e94;grid-template-columns:repeat(3,auto);gap:7px 22px;padding:12px 14px;font-size:15px;display:grid;position:absolute;bottom:108px;left:32px}.immersive-readout span{color:#b8d5df}.immersive-readout small{color:#d89a4a;grid-column:1/-1;font-size:12px}.immersive-horizon{clip-path:polygon(0 42%,10% 36%,21% 45%,34% 29%,45% 39%,59% 25%,70% 42%,83% 30%,100% 39%,100% 100%,0 100%);background:linear-gradient(#0000,#060d0fe6 28%,#030708 76%);height:27%;position:absolute;bottom:0;left:0;right:0}.immersive-horizon:after{content:"";background:linear-gradient(90deg,#0000,#73bfdc5c,#0000);height:1px;position:absolute;top:35%;left:0;right:0}.immersive-controls{z-index:6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#02090ec7;border:1px solid #4b97b747;grid-template-columns:auto auto minmax(180px,1fr) auto;align-items:center;gap:10px;width:min(720px,100vw - 36px);padding:10px 12px;display:grid;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.immersive-controls button{color:#a7d1df;cursor:pointer;background:#0b202a;border:1px solid #315f73;min-width:48px;height:32px}.immersive-controls .immersive-play{color:var(--amber);border-color:#8f672f}.immersive-controls input{width:100%;accent-color:var(--amber)}@keyframes corona-breathe{0%,to{opacity:.68;transform:scale(.98)}50%{opacity:1;transform:scale(1.03)}}.solar-disc{background-blend-mode:screen,overlay,overlay,normal;background:radial-gradient(circle at 42% 38%,#ffffe2f2 0 7%,#0000 24%),radial-gradient(circle at 67% 61%,#ff5e0047 0 2%,#0000 8%),radial-gradient(circle at 31% 72%,#ff6c003d 0 3%,#0000 10%),radial-gradient(circle,#fff6b2 0,#ffd05a 43%,#f78b13 79%,#b93b05 100%);box-shadow:0 0 7px #fffbd4,0 0 23px #ffc756d1,0 0 56px #ff842061}.immersive-corona{filter:drop-shadow(0 0 32px #ffe9c052);background:radial-gradient(circle,#0000 0 47%,#fffff6b8 51%,#fff4d24d 58%,#d2e5ec1f 68%,#0000 79%);animation:5.5s ease-in-out infinite corona-breathe}.immersive-corona:before,.immersive-corona:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.immersive-corona:before{background:radial-gradient(ellipse at 48% 51%,transparent 0 43%,#fffff659 49%,#e1ebee26 57%,transparent 74%),conic-gradient(from 18deg,transparent 0 9%,#fff9e11c 16%,transparent 28%,#d5e7ee1a 41%,transparent 56%,#fff6da1f 72%,transparent 88%);filter:blur(13px);animation:9s ease-in-out infinite alternate corona-drift;inset:-18%;transform:scaleX(1.09)scaleY(.94)}.immersive-corona:after{filter:blur(25px);background:radial-gradient(at 52% 48%,#0000 0 36%,#e1ecf021 47%,#ffe2b10f 57%,#0000 72%);animation:13s ease-in-out infinite alternate-reverse corona-drift;inset:-31%;transform:scaleX(.91)scaleY(1.12)}.immersive-sun{background-blend-mode:screen,multiply,multiply,normal;background:radial-gradient(circle at 38% 32%,#ffffe0f2 0 4%,#0000 19%),radial-gradient(circle at 69% 66%,#b92c0047 0 2%,#0000 8%),radial-gradient(circle at 25% 73%,#dc3f003b 0 3%,#0000 10%),radial-gradient(circle,#fff5a8 0,#ffc83d 45%,#ed760b 79%,#a82b03 100%);box-shadow:inset 0 0 22px #97220061,0 0 8px #fffbd4,0 0 32px #ffc14db8,0 0 92px #ff781447}.immersive-sun:before{content:"";mix-blend-mode:soft-light;background-image:radial-gradient(circle at 18% 21%,#ffffd557 0 .7%,#0000 1.6%),radial-gradient(circle at 73% 28%,#831d0033 0 .9%,#0000 2%),radial-gradient(circle at 46% 79%,#fff9ac47 0 .8%,#0000 1.8%),radial-gradient(circle at 82% 63%,#90220033 0 .6%,#0000 1.7%);background-size:31px 29px,43px 37px,39px 41px,47px 43px;border-radius:50%;animation:18s linear infinite surface-drift;position:absolute;inset:0}.immersive-moon{z-index:2;background-image:linear-gradient(#000204d4,#000204e6),url(/textures/moon-lro.jpg);background-position:50%;background-size:cover;box-shadow:inset -18px -8px 30px #000,inset 2px 0 3px #cbe1e62e,0 0 3px #ebf5f433}@keyframes corona-drift{0%{opacity:.66;transform:scaleX(1.09)scaleY(.94)rotate(-2deg)}to{opacity:1;transform:scaleX(.96)scaleY(1.08)rotate(3deg)}}@keyframes surface-drift{to{background-position:31px 0,-43px 0,0 41px,47px -43px}}@keyframes pulse{50%{opacity:.5}}@media (width<=1100px){.workspace{grid-template-columns:232px minmax(0,1fr) 210px}.topbar{grid-template-columns:232px 1fr auto}.panel{padding:15px 13px}.mission em{display:none}.timeline-panel{grid-template-columns:190px 1fr 180px}.sky-inset{transform-origin:0 0;transform:scale(.88)}}@media (width<=820px){.observatory{grid-template-rows:64px auto auto}.topbar{grid-template-columns:1fr auto;height:64px}.mission{display:none}.workspace{grid-template-columns:1fr}.scene-panel{order:-1;height:64vh;min-height:480px}.left-panel,.right-panel{border:0;border-top:1px solid var(--line);overflow:visible}.left-panel{grid-template-columns:1fr 1fr;gap:16px;display:grid}.left-panel .rule{display:none}.right-panel{grid-template-columns:1fr 1fr;gap:16px;display:grid}.view-stack{grid-template-columns:1fr 1fr}.timeline-panel{grid-template-columns:1fr}.transport,.speed-control{border:0;border-bottom:1px solid var(--line);min-height:78px;padding:12px}.transport>span{display:none}.speed-control{flex-direction:row;align-items:center;gap:15px}.speed-control small{margin:0}.speed-control>div{display:flex}.timeline-main{order:-1}.precision-note{display:none}}@media (width<=540px){.topbar{padding:0 10px}.brand strong{font-size:19.5px}.brand-mark{width:28px;height:28px}.languages button{min-width:34px}.workspace{flex-direction:column;display:flex}.scene-panel{width:100%;height:520px;min-height:520px}.left-panel,.right-panel{display:block}.right-panel{grid-template-columns:1fr;display:grid}.view-stack{grid-template-columns:1fr 1fr}.timeline-main{padding:15px 10px}.contact-row span:nth-child(2),.contact-row span:nth-child(4),.stage-caption b{display:none}.sky-inset{top:10px;left:auto;right:10px}.utc-readout{font-size:19.5px}.scene-header{padding:0 10px}.immersive-trigger span{display:none!important}.scene-actions{gap:7px}.immersive-view header{padding:0 14px}.immersive-readout{gap:5px 10px;bottom:100px;left:12px}.immersive-controls{grid-template-columns:auto auto 1fr auto;gap:6px}.immersive-controls button{min-width:40px}}@media (width<=820px){.body-status{width:225px;bottom:34px;right:10px}.world-map{max-width:380px}}@media (width<=540px){.body-status{width:auto;bottom:36px;left:10px;right:10px}.body-status>div{grid-template-columns:16px 1fr auto}.body-status em{font-size:9px}.map-label small{max-width:160px}}.not-found-page{color:#e8f0f3;background:radial-gradient(circle at 50% 35%,#15222b 0,#071016 42%,#020609 100%);place-items:center;min-height:100vh;padding:32px;font-family:Arial,Microsoft YaHei,sans-serif;display:grid}.not-found-card{text-align:center;background:#030c11c7;border:1px solid #68b1c447;width:min(560px,100%);padding:56px 36px;box-shadow:0 28px 90px #00000080}.not-found-card>p:first-of-type{color:#eab65d;letter-spacing:.24em;margin:28px 0 10px;font-size:18px}.not-found-card h1{letter-spacing:.06em;margin:0;font-size:clamp(48px,7vw,96px);font-weight:500}.not-found-copy{color:#8fa7b2;max-width:390px;margin:18px auto 30px;line-height:1.7}.not-found-card a{color:#f1c87e;letter-spacing:.08em;border:1px solid #d79b43;padding:12px 20px;text-decoration:none;display:inline-block}.not-found-card a:hover{background:#d79b431f}.not-found-orbit{border:1px solid #70b8cb52;border-radius:50%;width:96px;height:96px;margin:auto;position:relative}.not-found-orbit:before{content:"";border:1px solid #70b8cb2e;border-radius:50%;position:absolute;inset:14px}.not-found-orbit span{background:#080b0d;border-radius:50%;position:absolute;inset:29px;box-shadow:8px -4px 20px #f2b3476b}.not-found-orbit i{background:#e8ad54;border-radius:50%;width:8px;height:8px;position:absolute;top:42px;right:4px;box-shadow:0 0 14px #e8ad54}.portal-home{height:100vh;min-height:640px}.portal-vignette{background:radial-gradient(circle at 52% 48%,#0000 0 36%,#01040714 58%,#0104077a 100%),linear-gradient(#01040780,#0000 14% 78%,#010407a8);box-shadow:inset 0 0 80px #000000a8}.portal-header{pointer-events:none;background:linear-gradient(#010509b8,#01050900);border-bottom-color:#6da6c11f;grid-template-columns:240px 1fr auto;height:62px;padding:0 20px}.portal-header>*{pointer-events:auto}.portal-header .portal-brand small{font-size:10.5px}.portal-header nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02090e57;border:1px solid #4779913b;border-radius:3px;justify-self:center;padding:4px}.portal-header nav a{padding:7px 13px;font-size:12px}.portal-header .languages{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02080c6b}.portal-header .languages button{min-width:36px;height:27px}.portal-copy{z-index:3;pointer-events:none;width:490px;margin:0;position:absolute;bottom:22px;left:24px}.portal-copy>*{pointer-events:auto}.portal-kicker{color:#7cbfd9;font-size:12px}.portal-copy h1{letter-spacing:-.02em;text-shadow:0 2px 20px #000;max-width:470px;margin:9px 0 12px;font-size:clamp(33px,2.4vw,51px);line-height:1.12}.portal-copy>p{display:none}.portal-entry-grid{gap:7px;width:450px;margin-top:0}.portal-entry{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#030c1294;min-height:62px;padding:10px 13px}.portal-entry small{font-size:10.5px}.portal-entry strong{margin-top:8px;font-size:18px}.portal-entry span{display:none}.portal-entry>i{font-size:22.5px;bottom:17px;right:12px}.portal-entry:hover{transform:translateY(-2px)}.here-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#020a0f7a;border-color:#56a1c147;gap:10px;width:270px;padding:11px 13px;top:76px;right:20px}.here-card strong{font-size:13.5px}.here-card em{font-size:10.5px}.here-card>b{font-size:25.5px}.portal-telemetry{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02090d6b;border:1px solid #4a7d9433;grid-template-columns:1fr;width:285px;min-height:0;padding:9px 12px;display:grid;bottom:20px;left:auto;right:20px}.portal-telemetry>div{border:0;border-bottom:1px solid #4b6a7929;justify-content:space-between;align-items:center;padding:5px 0;display:flex}.portal-telemetry>div:last-of-type{border-bottom:0}.portal-telemetry small,.portal-telemetry b{margin:0;font-size:10.5px;display:inline}.portal-telemetry b{color:#a8bdc8}.portal-telemetry>span{display:none}@media (width<=760px){.portal-home{height:100svh;min-height:680px}.portal-header{grid-template-columns:1fr auto;height:auto;min-height:58px;padding:8px 10px}.portal-header nav{white-space:nowrap;position:absolute;top:63px;left:50%;transform:translate(-50%)}.portal-copy{width:auto;margin:0;bottom:12px;left:12px;right:12px}.portal-copy h1{max-width:340px;font-size:33px}.portal-entry-grid{width:min(390px,100%)}.here-card{width:235px;margin:0;top:106px;right:10px}.portal-telemetry{display:none}.portal-vignette{background:radial-gradient(circle at 50% 43%,#0000 0 34%,#01040714 60%,#01040794 100%),linear-gradient(#0104076b,#0000 20% 68%,#010407c7)}}.cosmic-scale-hint{z-index:3;pointer-events:none;color:#adcddc8a;font:7px/1 var(--font-geist-mono),Consolas,monospace;letter-spacing:.16em;text-shadow:0 1px 8px #000;grid-template-columns:auto minmax(70px,13vw) auto;align-items:center;gap:9px;display:grid;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.cosmic-scale-hint i{background:linear-gradient(90deg,#6ad3ffb8,#ebbe6894,#91a6ff38);height:1px;box-shadow:0 0 7px #5abde840}.cosmic-scale-hint small{text-align:center;color:#97b0bc61;letter-spacing:.11em;grid-column:1/-1;font-size:9px}.celestial-canvas canvas{cursor:grab}.celestial-canvas canvas:active{cursor:grabbing}@media (width<=1000px){.cosmic-scale-hint{bottom:118px}}@media (width<=760px){.cosmic-scale-hint{grid-template-columns:auto 58px auto;font-size:9px;bottom:165px;left:12px;transform:none}.cosmic-scale-hint small{display:none}}.lunar-observatory{grid-template-rows:78px minmax(620px,1fr) 158px}.lunar-layout{grid-template-columns:340px minmax(0,1fr) 320px}.lunar-stage .scene-actions{align-items:center;gap:14px;display:flex}.lunar-stage .scene-actions>div:last-child{text-align:right}.lunar-left .catalog-launch{margin-top:6px}.lunar-left .world-map{margin-top:5px}.lunar-right .view-stack{margin-bottom:2px}.lunar-stage.free-picking{cursor:crosshair}.lunar-stage.free-picking .celestial-canvas{pointer-events:none}.lunar-stage .free-pick-overlay{z-index:5}.lunar-stage-labels{z-index:2}.lunar-immersive{background:radial-gradient(circle at 50% 38%,#0d1720 0,#020609 48%,#000 82%)}.immersive-lunar-moon{aspect-ratio:1;z-index:3;width:min(34vmin,370px);transition:left .18s linear,top .18s linear,opacity .2s;position:absolute;transform:translate(-50%,-50%)}.immersive-lunar-moon.below-horizon{opacity:.2}.immersive-lunar-surface{box-shadow:inset -24px -10px 34px #000000b8,0 0 9px #e2eaec40,0 0 54px rgba(177,67,39,calc(var(--eclipse)*.5));filter:sepia(calc(var(--eclipse)*.72)) saturate(calc(1 + var(--eclipse)*2.8)) brightness(calc(1 - var(--eclipse)*.48));background:url(/textures/moon-lro.jpg) 50%/cover;border-radius:50%;position:absolute;inset:5%;overflow:hidden}.immersive-lunar-surface:after{content:"";background:radial-gradient(circle at 42% 45%,rgba(184,52,25,calc(var(--eclipse)*.42)),rgba(63,7,4,calc(var(--eclipse)*.72)) 70%,rgba(0,0,0,calc(var(--eclipse)*.2)));mix-blend-mode:multiply;border-radius:50%;position:absolute;inset:-2%}.immersive-lunar-moon .immersive-reticle{inset:-7%}@media (width<=1180px){.lunar-layout{grid-template-columns:290px minmax(0,1fr) 275px}.lunar-left,.lunar-right{padding:16px 13px}}@media (width<=820px){.lunar-observatory{display:block}.lunar-layout{flex-direction:column;display:flex}.lunar-stage{order:-1;height:620px}.lunar-left,.lunar-right{border:0;border-top:1px solid #283640}.lunar-timeline{grid-template-columns:1fr;min-height:240px}.lunar-transport,.lunar-speed{border:0;min-height:68px}.lunar-track{min-height:110px}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
