:root{--bg-0:#04060b;--sky-top:#0c1a2e;--sky-mid:#06101f;--sky-low:#02050c;--sky-bottom:#010103;--sky-glow:#1e3a6680;--glass-bg:#ffffff04;--glass-bg-strong:#ffffff07;--text-1:#fffffff2;--text-2:#ffffffb5;--text-3:#ffffffa8;--ctrl-size:34px;--hit-slop:5px;--dock-clearance:calc(var(--ctrl-size) * 2 + 4px);--dock-height:131px;--dock-hint-height:47px;--dock-bottom-gap:18px;--text-shadow:0 1px 2px #00000080;--accent:#fff;--sun-core-rgb:255 255 255;--sun-mid-rgb:244 244 246;--sun-outer-rgb:208 210 214;--tint-a:#1216205c;--tint-b:#020306ad;--earth-bounce:#5c7cac1f;--slide-duration:.42s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-soft:cubic-bezier(.4, 0, .2, 1);--px:0;--py:0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-tap-highlight-color:transparent}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}html{background-color:var(--bg-0);scroll-behavior:smooth}body{color:var(--text-1);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;text-shadow:var(--text-shadow);background:0 0;font-family:PingFang SC,HarmonyOS Sans SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}body ::selection{color:#fff;background:#ffffff3d}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}a{color:var(--text-1);opacity:.8;transition:opacity .3s var(--ease-soft);text-decoration:none}a:hover{opacity:1;text-underline-offset:3px;text-decoration:underline}:focus-visible{outline-offset:3px;border-radius:0;outline:2px solid #ffffffb3}.bg-layer{z-index:0;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.bg-gradient{background:radial-gradient(96% 58% at 50% 6%, var(--sky-glow) 0%, transparent 72%), linear-gradient(180deg, var(--sky-top) 0%, var(--sky-mid) 30%, var(--sky-low) 66%, var(--sky-bottom) 100%);position:absolute;top:0;bottom:0;left:0;right:0}.bg-image{opacity:.42;background-image:url(/images/starfield-bg.jpg);transform:translate3d(calc(var(--px) * -14px), calc(var(--py) * -14px), 0);will-change:transform;background-image:image-set("/images/starfield-bg.webp" 1x type("image/webp"),"/images/starfield-bg.jpg" 1x type("image/jpeg"));background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;top:-6%;bottom:-6%;left:-6%;right:-6%}.bg-scrim{background:radial-gradient(120% 80% at 50% 0%, var(--tint-a) 0%, transparent 62%),  radial-gradient(92% 56% at 74% 112%, var(--earth-bounce) 0%, transparent 62%), linear-gradient(180deg, var(--tint-b) 0%, #0000008c 45%, var(--tint-b) 100%);position:absolute;top:0;bottom:0;left:0;right:0}.bg-grain{opacity:.032;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;top:0;bottom:0;left:0;right:0}.bg-vignette{background:radial-gradient(120% 90% at 50% 45%,#0000 44%,#00000094 100%);position:absolute;top:0;bottom:0;left:0;right:0}html[data-hide~=bg] .bg-layer,html[data-hide~=grain] .bg-grain,html[data-hide~=panels] .app,html[data-hide~=station] .sky-obj,html[data-hide~=sky] .sky{display:none}html[data-hide~=glass] .glass{background-image:none}html[data-hide~=flare] .sun-flare,html[data-hide~=galaxy] .galaxy{display:none}.sky{z-index:1;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.sky-rotor{transform-origin:50%;will-change:transform;position:absolute;top:0;bottom:0;left:0;right:0;transition:none!important;animation:none!important}.sky[data-paused=true] *{animation-play-state:paused!important}.big-dipper{pointer-events:none;opacity:.94;height:auto;transform:translate3d(calc(var(--px,0) * 4px), calc(var(--py,0) * 4px), 0);position:absolute}.galaxy{--galaxy-angle:-22.4deg;width:0;height:0;transform:rotate(var(--galaxy-angle));animation:galaxyDrift var(--galaxy-duration,240s) ease-in-out infinite alternate;will-change:transform;position:absolute;top:50%;left:50%}.galaxy-core{background:radial-gradient(closest-side, rgb(255 252 244/calc(var(--galaxy-core-alpha,.4) * 1.1)) 0%, rgb(255 244 230/var(--galaxy-core-alpha,.4)) 22%, rgb(255 232 210/calc(var(--galaxy-core-alpha,.4) * .6)) 46%, rgb(254 222 196/calc(var(--galaxy-core-alpha,.4) * .24)) 72%, #fcd6ba00 100%);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.galaxy-stars{border-radius:50%;width:1px;height:1px;position:absolute;top:0;left:0}.sky-canvas{width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.sky-sun{width:0;height:0;position:absolute}.sun-halo{width:var(--halo-size,20vmax);height:var(--halo-size,20vmax);transform:translate3d(-50%, calc(-50% + var(--halo-offset,0%)), 0);background:radial-gradient(closest-side, rgb(var(--halo-rgb) / var(--halo-alpha,.12)) 0%, rgb(var(--halo-rgb) / calc(var(--halo-alpha,.12) * .56)) calc(var(--halo-softness,45%) * .42), rgb(var(--halo-rgb) / calc(var(--halo-alpha,.12) * .24)) var(--halo-softness,45%), rgb(var(--halo-rgb) / calc(var(--halo-alpha,.12) * .07)) 82%, rgb(var(--halo-rgb) / 0) 100%);animation:sunBreathe var(--sun-breathe,26s) ease-in-out infinite alternate;will-change:opacity;border-radius:50%;position:absolute;top:50%;left:50%}.sun-bloom{width:var(--sun-bloom-size,46vmax);height:var(--sun-bloom-size,46vmax);background:radial-gradient(closest-side, rgb(var(--sun-bloom-rgb) / 0) 0%, rgb(var(--sun-bloom-rgb) / 0) 54%, rgb(var(--sun-bloom-rgb) / calc(var(--sun-bloom-alpha,.05) * .45)) 70%, rgb(var(--sun-bloom-rgb) / var(--sun-bloom-alpha,.05)) 81%, rgb(var(--sun-bloom-rgb) / calc(var(--sun-bloom-alpha,.05) * .28)) 92%, rgb(var(--sun-bloom-rgb) / 0) 100%);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sun-core{width:var(--sun-core-size,5px);height:var(--sun-core-size,5px);background:radial-gradient(circle, rgb(var(--sun-core-rgb) / 1) 0%, rgb(var(--sun-core-rgb) / 1) 50%, rgb(var(--sun-core-rgb) / .35) 78%, rgb(var(--sun-core-rgb) / 0) 100%);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sun-flare-wrap{width:0;height:0;position:absolute;top:0;left:0}.sun-flare{height:var(--flare-thickness,.42vmax);position:absolute;top:0;transform:translateY(-50%);-webkit-mask-image:linear-gradient(#0000 0%,#00000059 22%,#000 50%,#00000059 78%,#0000 100%);mask-image:linear-gradient(#0000 0%,#00000059 22%,#000 50%,#00000059 78%,#0000 100%)}.sun-flare--right{width:var(--flare-right,6.3vw);background:linear-gradient(90deg, rgb(var(--sun-core-rgb) / var(--flare-alpha,.9)) 0%, rgb(var(--sun-core-rgb) / calc(var(--flare-alpha,.9) * .72)) 8%, rgb(var(--sun-core-rgb) / calc(var(--flare-alpha,.9) * .4)) 20%, rgb(var(--sun-mid-rgb) / calc(var(--flare-alpha,.9) * .2)) 40%, rgb(var(--sun-mid-rgb) / calc(var(--flare-alpha,.9) * .07)) 68%, rgb(var(--sun-mid-rgb) / 0) 100%);left:0}.sun-flare--left{width:var(--flare-left,2vw);background:linear-gradient(270deg, rgb(var(--sun-core-rgb) / calc(var(--flare-alpha,.9) * .85)) 0%, rgb(var(--sun-core-rgb) / calc(var(--flare-alpha,.9) * .3)) 30%, rgb(var(--sun-mid-rgb) / calc(var(--flare-alpha,.9) * .08)) 70%, rgb(var(--sun-mid-rgb) / 0) 100%);right:0}.sky-obj{transform:translate3d(calc(var(--px,0) * var(--depth,0px)), calc(var(--py,0) * var(--depth,0px)), 0);position:absolute}.sky-obj-body{animation:objMotion var(--obj-duration,120s) linear infinite;animation-delay:var(--obj-delay,0s);will-change:transform;display:block}.sky-obj svg{display:block;overflow:visible}@media (max-width:560px){.sky-obj-body>svg{max-width:30vw;height:auto}}.tz-shenzhou{transform-box:fill-box;transform-origin:0%;opacity:.5;transition:transform 3.6s cubic-bezier(.38,.02,.3,1),opacity 1.2s;transform:translate(26px,-7px)scale(.78)}.tz-shenzhou[data-state=docked]{opacity:1;transform:translate(0)scale(1)}.eva{pointer-events:none;opacity:0;width:17px;height:20px;transition:transform 2.4s cubic-bezier(.38,.02,.3,1),opacity .7s;position:absolute;top:63%;left:40.5%;transform:translate(-50%,-50%)}.eva[data-out=true]{opacity:1;transform:translate(calc(26px - 50%),calc(12px - 50%))}.eva[data-out=true][data-eva=repair] svg{animation:1.6s ease-in-out infinite alternate evaRepair}.eva[data-out=true][data-eva=flag] svg{animation:2.4s ease-in-out infinite alternate evaWave}.sky-meteors{transform:translate3d(calc(var(--px,0) * 16px), calc(var(--py,0) * 16px), 0);will-change:transform;position:absolute;top:0;bottom:0;left:0;right:0}.meteor{transform-origin:100%;opacity:0;width:160px;height:2px;position:absolute}.meteor:before{content:"";clip-path:polygon(0 50%,100% 0%,100% 100%);background:linear-gradient(90deg,#e2ecff00 0%,#e2ecff09 42%,#e8f0ff1a 62%,#f4f7ff47 79%,#fcfaf6a8 92%,#fffcf4f5 100%);position:absolute;top:0;bottom:0;left:0;right:0}.meteor:after{content:"";background:#fff;border-radius:50%;width:3px;height:3px;position:absolute;top:50%;right:0;transform:translate(50%,-50%)}.meteor[data-form=fire]:before{background-image:linear-gradient(90deg,#ffd89a00 0%,#ffd08824 40%,#ffe0a870 68%,#fff2d2cc 86%,#fffceef5 100%),linear-gradient(90deg,#962c0600 0%,#b83e0a1a 34%,#d45e1247 54%,#ec821e7a 70%,#faaa3abd 83%,#ffce74f0 92%,#fff0ca 100%);background-position:0,0 0;background-repeat:no-repeat,no-repeat;background-size:100% 32%,100% 100%}.meteor[data-form=fire]:after{width:calc(var(--m-thick,2px) * 6);height:calc(var(--m-thick,2px) * 6);background:radial-gradient(circle,#fffdf4 0%,#fff7da 14%,#ffd584e0 28%,#ff9e3485 48%,#e65e1233 72%,#b02e0000 100%)}.meteor[data-form=fire][data-live=true]:after{will-change:opacity, transform;animation:.62s ease-in-out infinite alternate meteorBurn}.app{z-index:2;flex-direction:column;gap:clamp(16px,2vw,22px);max-width:1080px;min-height:100dvh;margin:0 auto;padding:clamp(18px,3.2vw,40px) clamp(16px,3.2vw,40px) 64px;display:flex;position:relative}.grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2vw,22px);display:grid}.glass{transition:background-color .5s var(--ease-soft);background-color:#0000;background-image:radial-gradient(closest-side at 50% 46%,#ffffff04 0%,#ffffff03 58%,#fff0 92% 100%);position:relative}.glass-card{grid-column:span var(--panel-span,12);flex-direction:column;gap:16px;padding:clamp(18px,2.4vw,26px);display:flex}.glass-card:hover{background-image:radial-gradient(closest-side at 50% 46%,#ffffff07 0%,#ffffff06 58%,#fff0 92% 100%)}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.panel-title{letter-spacing:.01em;margin:0;font-size:14.5px;font-weight:600}.panel-desc{color:var(--text-3);margin:5px 0 0;font-size:12.5px;line-height:1.5}.kicker{letter-spacing:.22em;text-transform:uppercase;color:var(--text-3);font-size:10.5px}.live-badge{letter-spacing:.14em;text-transform:uppercase;color:var(--text-2);white-space:nowrap;background:0 0;border-radius:0;align-items:center;gap:7px;padding:5px 11px 5px 9px;font-size:10.5px;font-weight:600;display:inline-flex}.live-dot{background:#fff;border-radius:50%;width:6px;height:6px;position:relative}.live-dot:after{content:"";opacity:0;border:1px solid #ffffff8c;border-radius:50%;position:absolute;top:0;bottom:0;left:0;right:0}.live-badge .live-dot:after{animation:2.4s ease-out infinite livePing}.live-badge[data-state=offline] .live-dot{background:var(--text-3)}.live-badge[data-state=offline] .live-dot:after{opacity:0;animation:none}.clock-panel{justify-content:center;align-items:center;padding:clamp(24px,4vw,44px) clamp(16px,3vw,32px)}.clock{flex-direction:column;align-items:center;gap:clamp(10px,1.6vw,18px);display:flex}.clock-time{font-variant-numeric:tabular-nums;align-items:center;gap:.1em;font-size:clamp(42px,8.6vw,92px);line-height:1;display:flex}.clock-colon{color:var(--text-2);font-size:.62em;font-weight:500;animation:2s step-end infinite colonPulse;transform:translateY(-.06em)}.clock-date{letter-spacing:.1em;color:var(--text-2);margin:0;font-size:clamp(13px,1.8vw,17px);font-weight:500}.sd-group{font-variant-numeric:tabular-nums;gap:.05em;display:inline-flex}.sd{width:.68em;height:1em;display:inline-block;position:relative;overflow:hidden}.sd-cell{text-shadow:0 1px 10px #0000008c;justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.sd-out{animation:sdOut var(--slide-duration) var(--ease-out) both}.sd-in{animation:sdIn var(--slide-duration) var(--ease-out) both}.hero{padding:clamp(22px,3.4vw,36px);overflow:hidden}.hero:after{content:"";pointer-events:none;background:radial-gradient(closest-side,#ffffff0d,#0000);height:200px;position:absolute;top:auto;bottom:-70%;left:40%;right:-22%}.hero-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.hero-label{margin:0;font-size:clamp(14.5px,1.9vw,17px);font-weight:600}.hero-note{color:var(--text-3);margin:6px 0 0;font-size:12px}.uptime{--uptime-digit:clamp(26px, 5vw, 54px);flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:clamp(8px,1.4vw,16px);margin-top:clamp(16px,2.4vw,26px);display:flex}.uptime-unit{flex-direction:column;align-items:center;gap:9px;display:flex}.uptime-unit .sd-group{font-size:var(--uptime-digit)}.uptime-caption{letter-spacing:.2em;color:var(--text-3);font-size:11px}.uptime-sep{font-size:calc(var(--uptime-digit) * .63);color:var(--text-3);height:var(--uptime-digit);align-items:center;padding-bottom:0;font-weight:300;line-height:1;display:flex;position:relative;top:-.105em}.stat-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px 26px;display:grid}.stat-row-3{text-align:center;grid-template-columns:repeat(3,minmax(0,1fr));justify-items:center}.stat-row-3 .stat{align-items:center}.stat-row-3 .stat-hint{justify-content:center}.stat{flex-direction:column;gap:4px;min-width:0;display:flex}.stat-label{letter-spacing:.14em;color:var(--text-3);text-shadow:0 1px 3px #000000e6,0 0 8px #000000b3;font-size:11px}.stat-value{font-variant-numeric:tabular-nums;font-size:clamp(20px,2.6vw,26px);font-weight:600;line-height:1.15}.stat-value.accent{color:var(--accent)}.stat-value.sm{font-size:17px}.clock-time,.uptime-unit,.uptime-sep,.stat-value{text-shadow:none}.stat-hint{color:var(--text-3);text-shadow:0 1px 3px #000000e6,0 0 8px #000000b3;align-items:center;gap:8px;font-size:11.5px;display:flex}.chip{color:var(--text-2);white-space:nowrap;background:0 0;border-radius:0;align-items:center;gap:7px;padding:4px 11px;font-size:12px;font-weight:500;display:inline-flex}.chip[data-tone=ok]{color:var(--text-1)}.chip[data-tone=warn]{color:var(--text-2)}.chip[data-tone=bad]{color:#fff}.ctrl{width:var(--ctrl-size);height:var(--ctrl-size);color:var(--text-2);opacity:.7;transition:color .32s var(--ease-soft), opacity .32s var(--ease-soft);background:0 0;border-radius:0;flex:none;place-items:center;display:grid;position:relative}.ctrl:after{content:"";inset:calc(-1 * var(--hit-slop));position:absolute}.ctrl:disabled{opacity:.35;cursor:not-allowed}.ctrl:hover{color:var(--text-1);opacity:1}.notice{color:var(--text-2);background:#00000042;align-items:flex-start;gap:11px;padding:13px 15px;font-size:12.6px;line-height:1.6;display:flex}.notice[data-tone=bad]{color:var(--text-1);background:#00000057}.notice strong{color:#fff}.notice-icon{color:var(--text-1);flex:none;font-size:15px;line-height:1.35}.notice code{color:#fff;background:#ffffff12;border-radius:0;padding:1px 5px;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px}.music-dock-wrap{z-index:30;pointer-events:none;flex-direction:column;align-items:flex-end;gap:20px;display:flex;position:fixed;top:58%;right:22px;transform:translateY(-50%)}.music-dock{width:76px;box-shadow:none;pointer-events:none;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:center;gap:23px;padding:0;display:flex}.dock-btn{pointer-events:auto;width:var(--ctrl-size);height:var(--ctrl-size);color:#fff;box-shadow:none;opacity:.76;transition:opacity .32s var(--ease-soft), transform .22s var(--ease-out);background:0 0;border:0;border-radius:0;flex:none;place-items:center;padding:0;display:grid;position:relative}.dock-btn:after{content:"";inset:calc(-1 * var(--hit-slop));position:absolute}.dock-btn:hover:not(:disabled){opacity:1;transform:scale(1.08)}.dock-btn:disabled{opacity:.28;cursor:not-allowed}.dock-btn[data-playing=true]{opacity:.94}.dock-volume{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:100%;display:flex}.dock-volume input[type=range]{pointer-events:auto;-webkit-appearance:none;appearance:none;writing-mode:vertical-lr;background:linear-gradient(to top, #ffffffeb 0%, #ffffffb8 var(--vol,20%), #ffffff29 var(--vol,20%), #ffffff29 100%);cursor:pointer;direction:rtl;border-radius:0;outline:none;width:3px;height:92px}.dock-volume input[type=range]:disabled{opacity:.4;cursor:not-allowed}.dock-volume input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;cursor:pointer;width:13px;height:13px;transition:transform .2s var(--ease-out);background:#fff;border-radius:50%}.dock-volume input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.22)}.dock-volume input[type=range]::-moz-range-thumb{cursor:pointer;background:#fff;border:none;border-radius:50%;width:13px;height:13px}.dock-vol-value{font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--text-2);text-align:center;min-width:30px;font-size:11px}.music-dock-hint{text-align:right;max-width:200px;color:var(--text-1);pointer-events:none;background:0 0;margin:0;padding:0;font-size:11.5px;line-height:1.6}.music-dock-hint button{pointer-events:auto}.music-dock-hint[data-tone=bad]{color:#fff}.music-dock-hint button{color:#fff;background:#ffffff18;border-radius:0;margin-top:6px;padding:3px 10px;font-size:11.5px;display:inline-block;box-shadow:inset 0 0 0 1px #fff3}.music-dock-hint button:hover{background:#ffffff29}.foot{color:var(--text-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:8px;font-size:12px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes galaxyDrift{0%{transform:rotate(var(--galaxy-angle,28deg)) translate3d(0, 0, 0);opacity:.86}to{transform:rotate(var(--galaxy-angle,28deg)) translate3d(2.2vw, -1.4vh, 0);opacity:1}}@keyframes sunBreathe{0%{opacity:.88}to{opacity:1}}@keyframes objMotion{0%{transform:translate3d(0, 0, 0) perspective(var(--persp,2000px)) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(0deg)}50%{transform:translate3d(var(--drift-x,3vw), var(--drift-y,-2vh), 0) perspective(var(--persp,2000px)) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(calc(var(--spin-turn,360deg) * .5))}to{transform:translate3d(0, 0, 0) perspective(var(--persp,2000px)) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(var(--spin-turn,360deg))}}@keyframes sdOut{0%{transform:translate(0,0)}to{transform:translateY(100%)}}@keyframes sdIn{0%{transform:translateY(-100%)}to{transform:translate(0,0)}}@keyframes evaRepair{0%{transform:rotate(-4deg)translateY(.6px)}to{transform:rotate(5deg)translateY(-.8px)}}@keyframes evaWave{0%{transform:rotate(-6deg)}to{transform:rotate(7deg)}}@keyframes colonPulse{0%,49%{opacity:.9}50%,to{opacity:.32}}@keyframes livePing{0%{opacity:.7;transform:scale(1)}70%,to{opacity:0;transform:scale(2.6)}}@keyframes meteorBurn{0%{opacity:.7;transform:translate(50%,-50%)scale(.92)}to{opacity:1;transform:translate(50%,-50%)scale(1.1)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.reveal{animation:fadeUp .7s var(--ease-out) both}@media (max-width:1300px){.music-dock-wrap{top:auto;bottom:var(--dock-bottom-gap);right:var(--dock-clearance);transform:none}.dock-volume input[type=range]{height:52px}.music-dock-hint{text-align:left;max-width:170px}.app{padding-bottom:calc(var(--dock-height) + var(--dock-hint-height) + 20px + var(--dock-bottom-gap) + 4px)}}@media (max-width:560px){.uptime-sep{display:none}.uptime{--uptime-digit:clamp(22px, 7.4vw, 34px)}.clock-time{font-size:clamp(38px,13vw,56px)}.stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-row-3>:nth-child(3){grid-column:1/-1}}.account-bar{min-height:calc(var(--ctrl-size) + 2px);color:var(--text-2);justify-content:flex-end;align-items:center;gap:10px;margin-bottom:calc(-1*clamp(16px,2vw,22px) + 4px);font-size:13px;display:flex;position:relative}.account-who{text-overflow:ellipsis;white-space:nowrap;max-width:42vw;color:var(--text-1);letter-spacing:.02em;overflow:hidden}.account-btn{font:inherit;letter-spacing:.06em;color:var(--text-1);cursor:pointer;transition:opacity .2s var(--ease-soft), transform .2s var(--ease-soft);background:0 0;border:0;padding:10px 14px;position:relative}.account-btn:after{content:"";inset:calc(var(--hit-slop) * -1);position:absolute}.account-btn:hover{opacity:.72}.account-btn:active{transform:translateY(1px)}.auth-backdrop{z-index:50;background:#020306b8;place-items:center;padding:20px;animation:.2s ease-out both authFadeIn;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.auth-modal{width:min(430px,100%);max-height:calc(100dvh - 40px);color:var(--text-1);background:#080a10f2;padding:16px 20px 20px;animation:.24s cubic-bezier(.22,.61,.36,1) both authRise;overflow:auto}.auth-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.auth-tabs{gap:18px;display:flex}.auth-tab{font:inherit;letter-spacing:.08em;color:var(--text-3);cursor:pointer;transition:opacity .2s var(--ease-soft);background:0 0;border:0;padding:8px 0;font-size:14px;position:relative}.auth-tab[data-active=true]{color:var(--text-1)}.auth-tab[data-active=true]:after{content:"";background:#ffffff9e;height:1px;position:absolute;bottom:0;left:0;right:0}.auth-tab:hover{opacity:.78}.auth-close{width:34px;height:34px;font:inherit;color:var(--text-2);cursor:pointer;transition:opacity .2s var(--ease-soft);background:0 0;border:0;font-size:20px;line-height:1}.auth-close:hover{opacity:.7}.auth-body{flex-direction:column;gap:14px;padding-top:8px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-label{letter-spacing:.08em;color:var(--text-3);font-size:12px}.auth-input{width:100%;font:inherit;color:var(--text-1);transition:border-color .2s var(--ease-soft);background:0 0;border:0;border-bottom:1px solid #ffffff2e;outline:none;padding:9px 0 8px;font-size:15px}.auth-input::placeholder{color:#ffffff61}.auth-input:focus{border-bottom-color:#ffffffa8}.auth-input:disabled{opacity:.55}.auth-inline{align-items:flex-end;gap:12px;display:flex}.auth-inline .auth-input{flex:auto}.auth-mini{font:inherit;letter-spacing:.04em;color:var(--text-1);cursor:pointer;transition:opacity .2s var(--ease-soft);background:0 0;border:0;border-bottom:1px solid #ffffff47;flex:none;padding:9px 2px;font-size:13px}.auth-mini:disabled{color:var(--text-3);cursor:default;border-bottom-color:#ffffff1f}.auth-mini:not(:disabled):hover{opacity:.72}.auth-submit{font:inherit;letter-spacing:.1em;color:var(--text-1);cursor:pointer;transition:background-color .2s var(--ease-soft), opacity .2s var(--ease-soft);background:#ffffff17;border:0;padding:13px 14px;font-size:14px}.auth-submit:hover{background:#ffffff26}.auth-submit:disabled{opacity:.55;cursor:default}.auth-devcode{color:var(--text-2);background:#ffffff0d;border-left:2px solid #ffffff59;margin:0;padding:10px 12px;font-size:13px;line-height:1.6}.auth-devcode b{color:var(--text-1);letter-spacing:.12em}.auth-ok{color:var(--text-2);margin:0;font-size:13px}.auth-error{color:var(--text-1);border-left:2px solid #ffffff9e;margin:0;padding-left:10px;font-size:13px;line-height:1.6}.auth-note{color:var(--text-3);margin:0;font-size:12px}.welcome{z-index:60;pointer-events:none;background:radial-gradient(64% 54%,#030509f0 0%,#030509c7 44%,#03050957 70%,#03050900 88%),#0305098c;place-items:center;animation:4.2s ease-in-out both welcomeFade;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.welcome-stack{flex-direction:column;align-items:center;gap:.06em;display:flex}.welcome-word{letter-spacing:.18em;color:#fff;text-shadow:0 2px 20px #000000eb,0 1px 2px #000c,0 0 36px #ffffff29;gap:.005em;font-size:clamp(30px,7.4vw,78px);font-weight:500;display:flex}.welcome-letter{opacity:0;animation:.78s cubic-bezier(.22,.61,.36,1) both welcomeLetter}@keyframes authFadeIn{0%{opacity:0}to{opacity:1}}@keyframes authRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes welcomeLetter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes welcomeFade{0%{opacity:0}42%{opacity:1}82%{opacity:1}to{opacity:0}}@media (max-width:560px){.account-bar{gap:6px;font-size:12px}.account-btn{padding:10px}.auth-backdrop{padding:12px}.auth-modal{padding:14px 16px 18px}.welcome-word{letter-spacing:.12em}}.ground-scene{z-index:1;pointer-events:none;line-height:0;position:fixed;bottom:0;left:0;right:0}.ground-svg{width:100%;height:max(110px,10vw);display:block}.app{padding-bottom:clamp(120px,22vh,230px)}@media (max-width:560px){.app{padding-bottom:clamp(108px,20vh,168px)}.foot{width:calc(100% - var(--dock-clearance) - 140px);flex-direction:column;align-items:flex-start;gap:4px}}.launch-panel{grid-column:span 12}.launch-hint,.launch-sub{color:var(--text-3);margin:0;font-size:13px;line-height:1.7}.launch-line{color:var(--text-1);justify-content:space-between;align-items:baseline;gap:12px;margin:4px 0 8px;font-size:14px;display:flex}.launch-mono{font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--text-2)}.launch-bar{background:#ffffff1f;height:4px;position:relative;overflow:hidden}.launch-bar-fill{background:#ffffffc7;height:100%;transition:width .9s linear;display:block}.launch-ready{color:var(--text-1);margin:6px 0 12px;font-size:15px}.launch-cta{width:100%;font:inherit;letter-spacing:.14em;color:var(--text-1);cursor:pointer;transition:background-color .2s var(--ease-soft), opacity .2s var(--ease-soft), transform .2s var(--ease-soft);background:#ffffff1f;border:0;padding:14px 16px;font-size:15px}.launch-cta:hover{background:#fff3}.launch-cta:active{transform:translateY(1px)}.launch-mini{font:inherit;color:var(--text-2);cursor:pointer;transition:opacity .2s var(--ease-soft);background:0 0;border:0;padding:8px 0;font-size:13px}.launch-mini:hover{opacity:.7}.launch-count{letter-spacing:.08em;font-variant-numeric:tabular-nums;text-align:center;color:var(--text-1);text-shadow:var(--text-shadow);margin:8px 0 4px;font-size:clamp(44px,11vw,96px);font-weight:300;line-height:1}.launch-result{background:#ffffff0d;border-left:2px solid #ffffff9e;margin:12px 0 10px;padding:12px 14px}.launch-result[data-result=fail]{border-left-color:#ffffff52}.launch-result-title{color:var(--text-1);letter-spacing:.04em;margin:0 0 6px;font-size:15px}.launch-result-why{color:var(--text-1);margin:0 0 6px;font-size:14px;line-height:1.7}.launch-result-next{color:var(--text-3);margin:0 0 6px;font-size:12px}.launch-stats{color:var(--text-3);flex-wrap:wrap;gap:8px 18px;margin-top:12px;font-size:12px;display:flex}.launch-stats b{color:var(--text-1);font-variant-numeric:tabular-nums;font-weight:500}.craft{transform-origin:500px 58px}.craft[data-stage=launching]{animation:.12s steps(2,end) infinite craftShake}.weld{animation:.9s steps(2,end) infinite weldSpark}.smoke{animation:2.6s ease-out infinite smokeRise}.smoke-2{animation-delay:.7s}.smoke-3{animation-delay:1.5s}@keyframes craftShake{0%{transform:translate(0,0)}50%{transform:translate(.4px,-.4px)}to{transform:translate(0,0)}}@keyframes weldSpark{0%,to{opacity:.15;transform:translate(0,0)}50%{opacity:.95;transform:translate(3px,-2px)}}@keyframes smokeRise{0%{opacity:0;transform:translateY(2px)scale(1)}22%{opacity:.7}to{opacity:0;transform:translate(-4px,-26px)scale(1.9)}}.station-panel{grid-column:span 12}.station-preview{justify-content:center;padding:6px 0 10px;display:flex}.station-art{width:min(280px,76%);height:auto;display:block}.station-form{flex-direction:column;gap:10px;display:flex}.station-named{text-align:center;margin:2px 0 12px}.station-name{letter-spacing:.08em;color:var(--text-1);text-shadow:var(--text-shadow);margin:0;font-size:20px;font-weight:300}.station-note{color:var(--text-3);margin:4px 0 0;font-size:12px}.space-overlay{z-index:55;background:#020306f0;place-items:center;padding:20px;animation:.24s ease-out both authFadeIn;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.space-inner{text-align:center;flex-direction:column;gap:14px;width:min(470px,100%);display:flex}.space-kicker{letter-spacing:.3em;color:var(--text-2);margin:0;font-size:12px}.space-art{width:min(330px,90%);margin:0 auto}.leaderboard{grid-column:span 12;max-width:206px;padding:10px 0 2px}.lb-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.lb-title{letter-spacing:.12em;color:var(--text-2);margin:0;font-size:13px;font-weight:400}.lb-stamp{color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap;margin:-4px 0 8px;font-size:11px;display:block}.lb-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.lb-row{color:var(--text-2);align-items:baseline;gap:8px;font-size:12px;display:flex}.lb-rank{text-align:right;width:1.6em;color:var(--text-3);font-variant-numeric:tabular-nums}.lb-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-1);flex:auto;overflow:hidden}.lb-row[data-top=false] .lb-name{color:var(--text-2)}.lb-nums{font-variant-numeric:tabular-nums;gap:8px;display:flex}.lb-total,.lb-ok{text-align:right;min-width:2.4em;color:var(--text-1)}.lb-fail{text-align:right;min-width:2.2em;color:var(--text-3)}.lb-cols{color:var(--text-3);gap:8px;font-size:11px;display:flex}.lb-cols>span:first-child{text-align:right;min-width:2.4em}.lb-cols>span:last-child{text-align:right;min-width:2.2em}.lb-empty{color:var(--text-3);margin:0;font-size:12px}@media (min-width:1500px){.leaderboard{grid-column:auto;padding:0;position:fixed;top:96px;left:max(16px,50% - 740px)}}.lb-scrim,.lb-panel{display:contents}.lb-trigger,.lb-close{display:none}@media (max-width:900px){.lb-trigger{z-index:46;font:inherit;letter-spacing:.22em;color:var(--text-1);writing-mode:vertical-rl;cursor:pointer;transition:opacity .2s var(--ease-soft);background:#090c12d6;border:0;padding:14px 7px;font-size:12px;display:block;position:fixed;top:42%;left:0}.lb-trigger:active{opacity:.7}.leaderboard{display:contents}.lb-scrim{z-index:59;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .26s var(--ease-soft), visibility 0s linear .26s;background:#020306bd;place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.leaderboard[data-open=true] .lb-scrim{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .26s var(--ease-soft)}.lb-panel{box-sizing:border-box;opacity:0;width:min(340px,86vw);max-height:76vh;transition:transform .26s var(--ease-soft), opacity .26s var(--ease-soft);background:#090c12f7;padding:20px 18px 16px;display:block;position:relative;overflow-y:auto;transform:translateY(10px)}.leaderboard[data-open=true] .lb-panel{opacity:1;transform:none}.lb-close{width:32px;height:32px;font:inherit;color:var(--text-2);cursor:pointer;background:0 0;border:0;font-size:20px;line-height:1;display:block;position:absolute;top:6px;right:8px}.lb-panel .lb-title{font-size:14px}.lb-panel .lb-row{padding:3px 0;font-size:13px}}.craft[data-fx=ascend]{animation:1.4s cubic-bezier(.35,.05,.75,.45) both craftAscend}.craft[data-fx=success]{animation:3.6s cubic-bezier(.45,.02,.85,.5) both craftSuccess}.craft[data-fx=fall]{animation:3.6s ease-in both craftFall}.craft[data-fx=break] .craft-p1{animation:3.6s ease-out both craftBreak1}.craft[data-fx=break] .craft-p2{animation:3.6s ease-out both craftBreak2}.craft[data-fx=break] .craft-p3{animation:3.6s ease-out both craftBreak3}@keyframes craftAscend{0%{transform:translate(0,0)scale(1)}to{transform:translateY(-22px)scale(.74)}}@keyframes craftSuccess{0%{opacity:1;transform:translateY(-22px)scale(.74)}55%{opacity:1;transform:translateY(-36px)scale(.46)}to{opacity:0;transform:translateY(-50px)scale(.22)}}@keyframes craftFall{0%{opacity:1;transform:translateY(-22px)scale(.74)rotate(0)}32%{opacity:1;transform:translateY(-13px)scale(.8)rotate(4deg)}68%{opacity:1;transform:translateY(2px)scale(.95)rotate(12deg)}to{opacity:.75;transform:translateY(14px)scale(1)rotate(23deg)}}@keyframes craftBreak1{0%{opacity:1;transform:translate(0,0)rotate(0)}55%{opacity:1;transform:translate(-16px,-6px)rotate(-20deg)}to{opacity:0;transform:translate(-24px,6px)rotate(-30deg)}}@keyframes craftBreak2{0%{opacity:1;transform:translate(0,0)rotate(0)}55%{opacity:1;transform:translate(11px,-28px)rotate(15deg)}to{opacity:0;transform:translate(16px,-42px)rotate(23deg)}}@keyframes craftBreak3{0%{opacity:1;transform:translate(0,0)rotate(0)}55%{opacity:1;transform:translate(20px,-10px)rotate(25deg)}to{opacity:0;transform:translate(28px,-16px)rotate(36deg)}}.sci-a{animation:14s ease-in-out infinite sciWalkA}.sci-b{animation:18s ease-in-out infinite sciWalkB}.sci-bob{animation:.52s steps(2,end) infinite sciBob}.ground-scene[data-fx]:not([data-fx=idle]) .sci-a,.ground-scene[data-fx]:not([data-fx=idle]) .sci-b,.ground-scene[data-fx]:not([data-fx=idle]) .sci-bob{animation-play-state:paused}.ground-scene[data-fx=fall] .sci-a,.ground-scene[data-fx=break] .sci-a{animation:.9s ease-out both sciShockA}.ground-scene[data-fx=fall] .sci-b,.ground-scene[data-fx=break] .sci-b{animation:.9s ease-out both sciShockB}.ground-scene[data-fx=success] .sci-a{animation:2.4s ease-out both sciCheer}.ground-scene[data-fx=success] .sci-b{animation:2.4s ease-out .14s both sciCheer}@keyframes sciShockA{0%{transform:translate(0,0)}35%{transform:translate(-30px)}70%{transform:translate(-26px)}to{transform:translate(0,0)}}@keyframes sciShockB{0%{transform:translate(0,0)}35%{transform:translate(28px)}70%{transform:translate(24px)}to{transform:translate(0,0)}}@keyframes sciCheer{0%,to{transform:translate(0,0)}12%,36%,60%{transform:translateY(-13px)}24%,48%,72%{transform:translate(0,0)}86%{transform:translateY(-7px)}}@keyframes sciWalkA{0%,to{transform:translate(0,0)}50%{transform:translate(-28px)}}@keyframes sciWalkB{0%,to{transform:translate(0,0)}50%{transform:translate(26px)}}@keyframes sciBob{0%,to{transform:translate(0,0)}50%{transform:translateY(-.9px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.galaxy{animation:none}.sun-halo{opacity:1;animation:none}.sky-obj-body{transform:perspective(var(--persp,2000px)) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(var(--spin-turn,0deg));animation:none}.meteor{display:none}}
