*{box-sizing:border-box;margin:0;padding:0}@font-face{font-display:swap;font-family:CookieRun;font-style:normal;font-weight:400;src:url(/static/media/CookieRun%20Regular.52560075f5d887966bf2.ttf) format("truetype")}@font-face{font-display:swap;font-family:NEXON Lv1 Gothic;font-style:normal;font-weight:300;src:url(/static/media/NEXONLv1GothicLight.dec3dafab35db5f98ed7.ttf) format("truetype")}@font-face{font-display:swap;font-family:Microsoft Yahei;font-style:normal;font-weight:400;src:url(/static/media/Microsoft%20Yahei.7035d4f62a1c92a8193a.ttf) format("truetype")}html:lang(zh){--font-primary:"Microsoft Yahei","PingFang SC","Hiragino Sans GB","Microsoft JhengHei",sans-serif}:root{--bg-primary:#1a1a1a;--bg-secondary:#2a2a2a;--bg-hover:#ffffff1a;--text-primary:#fff;--text-secondary:#ccc;--text-muted:#999;--border-color:#333;--navbar-border:#505050;--navbar-bg:#1a1a1af2;--accent-color:#fff;--font-primary:"CookieRun","Microsoft Yahei","NEXON Lv1 Gothic",-apple-system,BlinkMacSystemFont,sans-serif}[data-theme=light]{--bg-primary:#fefefe;--bg-secondary:#fff;--bg-hover:#0000000d;--text-primary:#2d2d2d;--text-secondary:#666;--text-muted:#999;--border-color:#e8e8e8;--navbar-border:#e0e0e0;--navbar-bg:#fefefef2;--accent-color:#ff6b6b}:focus{outline:none}:focus-visible{outline:2px solid #fff;outline:2px solid var(--accent-color);outline-offset:2px}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#1a1a1a;background-color:var(--bg-primary);color:#fff;color:var(--text-primary);font-family:CookieRun,Microsoft Yahei,NEXON Lv1 Gothic,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-primary);margin:0;overflow-x:hidden;transition:background-color .3s ease,color .3s ease}a,body,button,html,img{-webkit-user-drag:none;user-drag:none;-webkit-user-select:none;user-select:none}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@keyframes fadeInPage{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes floatSlow{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:var(--navbar-bg);border-bottom:1px solid var(--navbar-border,var(--border-color));left:0;padding:calc(20px + env(safe-area-inset-top, 0px)) 0 20px;position:fixed;right:0;top:0;z-index:1000}.navbar-container{gap:40px;justify-content:center;margin:0 auto;max-width:1400px;padding:0 40px;position:relative}.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{animation:floatSlow 6s ease-in-out infinite;left:40px;position:absolute;text-decoration:none;transition:opacity .3s ease}.navbar-logo:hover{animation-play-state:paused;opacity:.7}.navbar-logo-img{display:block;height:168px;object-fit:contain;width:auto}[data-theme=dark] .navbar-logo-img{filter:brightness(1.5) contrast(1.2) drop-shadow(0 0 2px rgba(255,255,255,.4))}[data-theme=light] .navbar-logo-img{filter:none}.navbar-right{align-items:center;display:flex;gap:12px;position:absolute;right:40px}.navbar-lang{display:flex;gap:2px}.navbar-lang-btn{background:#0000;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:500;padding:6px 10px;transition:color .2s,background .2s,border-color .2s}.navbar-lang-btn:hover{border-color:var(--text-secondary);color:var(--text-primary)}.navbar-lang-btn.active{background:var(--bg-secondary);border-color:var(--accent-color);color:var(--accent-color)}.theme-toggle{background:none;border:none;cursor:pointer;height:50px;overflow:visible;padding:0;transition:transform .3s ease;width:50px}.theme-toggle:hover{transform:scale(1.1)}.theme-toggle-container{align-items:flex-end;display:flex;height:100%;justify-content:center;position:relative;width:100%}.theme-hill{background:var(--bg-secondary);border-radius:20px 20px 0 0;height:20px;overflow:hidden}.theme-hill,.theme-hill:before{bottom:0;left:0;position:absolute;right:0}.theme-hill:before{background:linear-gradient(to top,var(--bg-primary) 0,var(--bg-secondary) 100%);content:"";height:100%}.theme-moon,.theme-sun{animation:rise .8s ease-out;bottom:15px;color:gold;left:50%;position:absolute;transform:translateX(-50%);transition:all .6s cubic-bezier(.4,0,.2,1);z-index:2}.theme-moon{color:#e0e0e0}.theme-sun.hidden{opacity:0;transform:translateX(-50%) translateY(60px)}.theme-moon.hidden{opacity:0;transform:translateX(-50%) translateY(-60px)}@keyframes rise{0%{opacity:0;transform:translateX(-50%) translateY(60px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.theme-star{animation:twinkle 2s infinite;background:#fff;border-radius:50%;height:3px;position:absolute;width:3px;z-index:1}.star-1{animation-delay:0s;left:12px;top:8px}.star-2{animation-delay:.5s;right:15px;top:12px}.star-3{animation-delay:1s;left:18px;top:18px}@keyframes twinkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.navbar-menu{display:flex;gap:40px}.navbar-link{color:var(--text-secondary);font-size:16px;position:relative;text-decoration:none;transition:color .3s ease}.navbar-link.active,.navbar-link:hover{color:var(--text-primary)}.navbar-link.active:after{background-color:var(--accent-color);bottom:-5px;content:"";height:1px;left:0;position:absolute;right:0}.navbar-hamburger{background:#0000;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;height:40px;justify-content:center;padding:0;width:40px;z-index:1001}.navbar-hamburger span{background:var(--text-primary);display:block;height:2px;transition:transform .3s,opacity .3s;width:22px}.navbar-hamburger.open span:first-child{transform:translateY(7px) rotate(45deg)}.navbar-hamburger.open span:nth-child(2){opacity:0}.navbar-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width:768px){.navbar{padding:calc(16px + env(safe-area-inset-top, 0px)) 0 12px}.navbar-container{gap:16px;justify-content:space-between;padding:0 16px 0 4px}.navbar-logo{position:static}.navbar-logo-img{height:136px}.navbar-hamburger{display:flex;margin-right:12px}.navbar-menu{align-items:stretch;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--navbar-bg);border-left:1px solid var(--border-color);box-shadow:-4px 0 20px #0000004d;flex-direction:column;gap:0;height:100vh;justify-content:flex-start;max-width:280px;opacity:0;padding:70px 24px 24px;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .3s,opacity .3s,visibility .3s;visibility:hidden;width:70%;z-index:1000}.navbar-menu.open{opacity:1;transform:translateX(0);visibility:visible}.navbar-menu .navbar-link{border-bottom:1px solid var(--border-color);font-size:18px;padding:16px 0}.navbar-menu .navbar-link:last-child{border-bottom:none}.navbar-right{gap:8px;position:static}.navbar-lang-btn{font-size:11px;padding:5px 8px}.theme-toggle{height:40px;width:40px}.theme-toggle-container{transform:scale(.85);transform-origin:center}}@media (max-width:400px){.navbar-logo-img{height:112px}.navbar-lang-btn{font-size:10px;padding:4px 6px}}.footer{background-color:var(--bg-primary);border-top:1px solid var(--border-color);margin-top:auto;padding:60px 40px 0}.footer-content{display:flex;gap:40px;justify-content:space-between;margin:0 auto 40px;max-width:1200px;padding-bottom:0}.footer-section{display:flex;flex-direction:column;gap:8px}.footer-subtitle,.footer-title{color:grey;font-size:20px;font-weight:400;line-height:1.8}.footer-subtitle-en,.footer-title-en{color:#202020;font-size:20px;font-weight:400;line-height:1.8;text-align:right}[data-theme=dark] .footer-subtitle-en,[data-theme=dark] .footer-title-en{color:#e0e0e0}[data-theme=light] .footer-subtitle,[data-theme=light] .footer-title{color:grey}.footer-copyright{background-color:#000;border-radius:0;margin:40px -40px 0;padding:30px 40px;text-align:center}.footer-copyright p{color:#fff;font-size:12px;font-weight:300;letter-spacing:0;margin:0}@media (max-width:768px){.footer{padding:40px 20px 0}.footer-content{flex-direction:column;gap:20px;max-width:100%}.footer-subtitle-en,.footer-title-en{text-align:left}.footer-copyright{margin:40px -20px 0;padding:25px 20px}}.scroll-to-top{align-items:center;background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;bottom:40px;box-shadow:0 2px 8px #0003;color:var(--text-primary);cursor:pointer;display:flex;height:50px;justify-content:center;opacity:0;position:fixed;right:40px;transition:all .3s ease;visibility:hidden;width:50px;z-index:999}.scroll-to-top.visible{opacity:1;visibility:visible}.scroll-to-top:hover{background-color:var(--accent-color);border-color:var(--accent-color);box-shadow:0 4px 12px #0000004d;color:var(--bg-primary);transform:translateY(-5px)}.scroll-to-top svg{transition:transform .3s ease}.scroll-to-top:hover svg{transform:translateY(-2px)}@media (max-width:768px){.scroll-to-top{bottom:20px;height:45px;right:20px;width:45px}}.App{background-color:var(--bg-primary);display:flex;flex-direction:column;min-height:100vh;transition:background-color .3s ease}.skip-link{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-weight:500;left:1rem;padding:.75rem 1rem;position:absolute;text-decoration:none;top:-100px;transition:top .2s ease;z-index:100}.skip-link:focus{outline:2px solid currentColor;outline-offset:2px;top:1rem}.main-content{flex:1 1;width:100%}.loading-fallback{min-height:40vh}.app-contextmenu-tooltip{animation:app-contextmenu-tooltip-in .25s ease-out;background:#2a2a2a;background:var(--bg-secondary,#2a2a2a);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:12px;bottom:32px;box-shadow:0 6px 24px #00000059,inset 0 0 0 1px #ffffff0f;color:#fff;color:var(--text-primary,#fff);font-size:14px;font-weight:500;left:50%;line-height:1.4;max-width:min(420px,calc(100vw - 48px));padding:14px 24px;pointer-events:none;position:fixed;transform:translateX(-50%);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;z-index:9999}@keyframes app-contextmenu-tooltip-in{0%{opacity:0;transform:translateX(-50%) translateY(12px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}
/*# sourceMappingURL=main.91958b22.css.map*/