<!doctype html>
<html lang="zh-CN">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/favicon.ico" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title></title>
    <script>
      try{var t=localStorage.getItem('__domain_title__');if(t)document.title=t}catch(e){}
    </script>
    <style>
      #app-loader{position:fixed;inset:0;z-index:99999;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse 80% 60% at 50% 40%,#1a1040 0%,#0a0e1a 60%,#060810 100%);transition:opacity .45s ease,visibility .45s ease}
      #app-loader.hide{opacity:0;visibility:hidden;pointer-events:none}
      .al-stage{position:relative;width:140px;height:140px}
      .al-ring{position:absolute;inset:0;border-radius:50%;border:1.5px solid transparent}
      .al-ring--outer{border-top-color:rgba(120,80,255,.7);border-right-color:rgba(80,200,255,.3);filter:drop-shadow(0 0 6px rgba(120,80,255,.4));animation:app-loader-ring-spin 2.4s linear infinite}
      .al-ring--mid{inset:14px;border-bottom-color:rgba(80,200,255,.65);border-left-color:rgba(180,120,255,.25);filter:drop-shadow(0 0 6px rgba(80,200,255,.35));animation:app-loader-ring-spin-reverse 1.8s linear infinite}
      .al-ring--inner{inset:28px;border-top-color:rgba(180,120,255,.55);border-right-color:rgba(120,220,255,.2);filter:drop-shadow(0 0 4px rgba(180,120,255,.3));animation:app-loader-ring-spin 3s linear infinite}
      .al-core{position:absolute;top:50%;left:50%;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;background:radial-gradient(circle,rgba(200,180,255,.95) 0%,rgba(120,80,255,.7) 50%,rgba(60,20,180,.3) 100%);animation:app-loader-core-pulse 2s ease-in-out infinite}
      .al-dot{position:absolute;width:3px;height:3px;border-radius:50%;background:rgba(160,140,255,.7)}
      .al-dot:nth-child(5){top:6px;left:50%;margin-left:-1.5px;animation:app-loader-particle 2.2s ease-in-out infinite}
      .al-dot:nth-child(6){bottom:6px;left:50%;margin-left:-1.5px;animation:app-loader-particle 2.2s .4s ease-in-out infinite}
      .al-dot:nth-child(7){left:6px;top:50%;margin-top:-1.5px;animation:app-loader-particle 2.2s .8s ease-in-out infinite}
      .al-dot:nth-child(8){right:6px;top:50%;margin-top:-1.5px;animation:app-loader-particle 2.2s 1.2s ease-in-out infinite}
      .al-text{margin-top:28px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:14px;letter-spacing:.08em;color:rgba(180,170,220,.85);animation:app-loader-text-fade 2s ease-in-out infinite}
      .al-sub{margin-top:8px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(120,110,160,.5)}
      @keyframes app-loader-ring-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
      @keyframes app-loader-ring-spin-reverse{from{transform:rotate(0deg)}to{transform:rotate(-360deg)}}
      @keyframes app-loader-core-pulse{0%,100%{transform:scale(1);opacity:.85;box-shadow:0 0 20px 4px rgba(120,80,255,.35),0 0 60px 10px rgba(80,200,255,.15)}50%{transform:scale(1.12);opacity:1;box-shadow:0 0 30px 8px rgba(120,80,255,.55),0 0 80px 20px rgba(80,200,255,.25)}}
      @keyframes app-loader-text-fade{0%,100%{opacity:.6}50%{opacity:1}}
      @keyframes app-loader-particle{0%{transform:translateY(0) scale(1);opacity:.7}50%{transform:translateY(-18px) scale(.6);opacity:.3}100%{transform:translateY(0) scale(1);opacity:.7}}
      @media(prefers-reduced-motion:reduce){.al-ring,.al-core,.al-dot,.al-text{animation:none!important}}
      .al-timeout{display:none;margin-top:24px;padding:10px 28px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:13px;color:rgba(180,170,220,.9);background:rgba(120,80,255,.18);border:1px solid rgba(120,80,255,.35);border-radius:8px;cursor:pointer;transition:background .2s}
      .al-timeout:hover{background:rgba(120,80,255,.3)}
      #app-loader.show-timeout .al-timeout{display:inline-block}
    </style>
    <script type="module" crossorigin src="/assets/index-UNjMMv3c.js"></script>
    <link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-Bhmf7a9N.js">
    <link rel="modulepreload" crossorigin href="/assets/antd-C-pbzfdo.js">
    <link rel="modulepreload" crossorigin href="/assets/charts-CVh0DLxP.js">
    <link rel="modulepreload" crossorigin href="/assets/i18n-KW1bli6a.js">
    <link rel="modulepreload" crossorigin href="/assets/lobehub-icons-COkRFymy.js">
    <link rel="modulepreload" crossorigin href="/assets/QueryClientProvider-XpUumEIF.js">
    <link rel="modulepreload" crossorigin href="/assets/useQuery-CuNEVJJa.js">
    <link rel="modulepreload" crossorigin href="/assets/infiniteQueryBehavior-BhaddeRg.js">
    <link rel="modulepreload" crossorigin href="/assets/mutation-BKL7enKQ.js">
    <link rel="modulepreload" crossorigin href="/assets/dist-IyqXOvw-.js">
    <link rel="modulepreload" crossorigin href="/assets/es2015-CIhf17xd.js">
    <link rel="modulepreload" crossorigin href="/assets/dist-BTmcSh9x.js">
    <link rel="modulepreload" crossorigin href="/assets/cn-CVWZgqGr.js">
    <link rel="modulepreload" crossorigin href="/assets/dialog-_V07STWY.js">
    <link rel="modulepreload" crossorigin href="/assets/button-8OF_TwFS.js">
    <link rel="modulepreload" crossorigin href="/assets/parseISO-DT4Wwm7x.js">
    <link rel="modulepreload" crossorigin href="/assets/utils-CKsP_U2Y.js">
    <link rel="modulepreload" crossorigin href="/assets/i18n-Cl5-viWd.js">
    <link rel="modulepreload" crossorigin href="/assets/compat-Bo-dZejm.js">
    <link rel="modulepreload" crossorigin href="/assets/client-BebWGwcc.js">
    <link rel="modulepreload" crossorigin href="/assets/system-announcement-provider-BFYy1kap.js">
    <link rel="modulepreload" crossorigin href="/assets/vendor-Dzp0QkzA.js">
    <link rel="modulepreload" crossorigin href="/assets/router-Dt-YIl_8.js">
    <link rel="modulepreload" crossorigin href="/assets/dist-CGl7mtTH.js">
    <link rel="modulepreload" crossorigin href="/assets/domain-config-BrLkLmwl.js">
    <link rel="modulepreload" crossorigin href="/assets/storage-BLfN7KRh.js">
    <link rel="modulepreload" crossorigin href="/assets/domain-config-provider-BepZm7RE.js">
    <link rel="modulepreload" crossorigin href="/assets/login-dialog-provider-CMqzgDvi.js">
    <link rel="modulepreload" crossorigin href="/assets/auth-D9t0ZboL.js">
    <link rel="modulepreload" crossorigin href="/assets/route-prefetch-B-ulKBmT.js">
    <link rel="stylesheet" crossorigin href="/assets/index-AyIfZw8d.css">
  </head>
  <body>
    <div id="app-loader">
      <div class="al-stage">
        <div class="al-ring al-ring--outer"></div>
        <div class="al-ring al-ring--mid"></div>
        <div class="al-ring al-ring--inner"></div>
        <div class="al-core"></div>
        <div class="al-dot"></div>
        <div class="al-dot"></div>
        <div class="al-dot"></div>
        <div class="al-dot"></div>
      </div>
      <div class="al-text" id="al-text"></div>
      <div class="al-sub" id="al-sub"></div>
      <button class="al-timeout" id="al-timeout" onclick="location.reload()"></button>
    </div>
    <div id="root"></div>
    <script>
    (function(){
      var L={
        'zh-CN':['正在加载…','Powered by AI','加载时间过长，点击刷新'],
        'zh-TW':['正在加載…','Powered by AI','加載時間過長，點擊刷新'],
        en:['Loading…','Powered by AI','Taking too long? Tap to refresh'],
        ja:['読み込み中…','Powered by AI','読み込みに時間がかかっています。タップして更新'],
        ko:['로딩 중…','Powered by AI','로딩이 오래 걸리고 있습니다. 탭하여 새로고침'],
        fr:['Chargement…','Powered by AI','Le chargement prend trop de temps. Appuyez pour actualiser'],
        de:['Wird geladen…','Powered by AI','Laden dauert zu lange. Tippen zum Aktualisieren'],
        es:['Cargando…','Powered by AI','La carga está tardando demasiado. Toca para actualizar'],
        pt:['Carregando…','Powered by AI','O carregamento está demorando muito. Toque para atualizar'],
        ru:['Загрузка…','Powered by AI','Загрузка занимает слишком много времени. Нажмите для обновления'],
        ar:['جاري التحميل…','Powered by AI','التحميل يستغرق وقتًا طويلاً. انقر للتحديث'],
        hi:['लोड हो रहा है…','Powered by AI','लोड होने में बहुत समय लग रहा है। रीफ़्रेश करने के लिए टैप करें']
      };
      var seg=(location.pathname.split('/')[1]||'').toLowerCase();
      var k=L[seg]||L[seg.split('-')[0]]||L['zh-CN'];
      document.getElementById('al-text').textContent=k[0];
      document.getElementById('al-sub').textContent=k[1];
      document.getElementById('al-timeout').textContent=k[2];
      setTimeout(function(){var l=document.getElementById('app-loader');if(l)l.classList.add('show-timeout')},15000);
    })();
    </script>
  </body>
</html>
