:root,[data-theme=midnight]{--bg:#0b0e14;--s1:#131722;--s2:#1c2130;--s3:#262c3d;--line:#2a3142;--t1:#e6e9ef;--t2:#8a93a6;--t3:#5a6378;--red:#f0474b;--green:#1db57a;--accent:#3d7bff;--amber:#f5a623;--violet:#b07cff;--on-accent:#fff;--scrim:#000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=oled]{--bg:#000;--s1:#0d0d0f;--s2:#17171a;--s3:#232327;--line:#26262b;--t1:#f2f2f2;--t2:#9a9aa0;--t3:#5e5e66;--red:#ff4d4f;--green:#00c087;--accent:#4c8dff;--amber:#ffb020;--violet:#c084fc;--on-accent:#fff;--scrim:#000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg:#f4f6fa;--s1:#fff;--s2:#eef1f6;--s3:#e1e6ef;--line:#dde2ea;--t1:#141a26;--t2:#5b6577;--t3:#98a1b2;--red:#e5383b;--green:#0e9f6e;--accent:#2f6bff;--amber:#d98a00;--violet:#8b5cf6;--on-accent:#fff;--scrim:#0b0e14;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=warm]{--bg:#1c1914;--s1:#25211b;--s2:#2e2921;--s3:#3a342a;--line:#3d362c;--t1:#ede4d3;--t2:#a89c86;--t3:#6e6454;--red:#e5604e;--green:#5daa6e;--accent:#d9a441;--amber:#e8b04a;--violet:#c89bd8;--on-accent:#1c1914;--scrim:#000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=terminal]{--bg:#000;--s1:#0a0a0a;--s2:#141414;--s3:#1f1f1f;--line:#262626;--t1:#fff;--t2:#a0a0a0;--t3:#606060;--red:#ff3b30;--green:#00e676;--accent:#ffc400;--amber:#00b0ff;--violet:#ff4fd8;--on-accent:#000;--scrim:#000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root,[data-trend=red-up]{--up:var(--red);--down:var(--green)}[data-trend=green-up]{--up:var(--green);--down:var(--red)}#boot-screen{z-index:100;position:fixed;top:0;bottom:0;left:0;right:0}.loading-startup{background:var(--bg);width:100%;height:100dvh;min-height:280px;color:var(--t1);font:14px/1.5 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;position:relative;overflow:hidden}.loading-startup *,.page-skeleton *{box-sizing:border-box}.loading-frame{opacity:.6;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.loading-top{border-bottom:1px solid var(--line);background:var(--s1);align-items:center;gap:28px;height:52px;padding:0 24px;display:flex}.loading-top i{background:var(--s3);border-radius:4px;width:36px;height:8px;display:block}.loading-top i:first-child{width:110px;margin-right:20px}.loading-rail{border-right:1px solid var(--line);background:var(--s1);flex-direction:column;gap:30px;width:240px;padding:28px 20px;display:flex;position:absolute;top:52px;bottom:0;left:0}.loading-rail i{background:var(--s2);border-radius:5px;width:100%;height:10px;display:block}.loading-rail i:nth-child(2n){width:68%}.loading-grid{border:1px solid var(--line);opacity:.35;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:100% 80px,120px 100%;border-radius:12px;position:absolute;top:100px;bottom:52px;left:272px;right:32px;-webkit-mask-image:linear-gradient(#0000,#000 25% 75%,#0000);mask-image:linear-gradient(#0000,#000 25% 75%,#0000)}.loading-center{place-items:center;padding:24px;display:grid;position:absolute;top:52px;bottom:0;left:240px;right:0}.loading-card{text-align:center;background:var(--bg);width:min(320px,100%);box-shadow:0 0 80px 50px var(--bg);border-radius:20px;padding:32px 24px}.loading-mark{object-fit:contain;width:48px;height:48px;margin:0 auto 20px;display:block}.loading-card h1{letter-spacing:.06em;margin:0 0 8px;font-size:18px;font-weight:600}.loading-card p{color:var(--t2);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.8}.loading-track{background:var(--s3);border-radius:3px;width:120px;height:3px;margin:24px auto 0;overflow:hidden}.loading-track:after{content:"";background:var(--accent);border-radius:inherit;width:45%;height:100%;animation:1.5s ease-in-out infinite loading-travel;display:block}.loading-retry{border:1px solid var(--line);background:var(--s2);min-height:38px;color:var(--t1);font:inherit;cursor:pointer;border-radius:9px;margin-top:20px;padding:0 20px}.loading-retry:hover{border-color:var(--accent)}.page-skeleton{background:var(--bg);flex-direction:column;flex:1;gap:24px;width:100%;min-width:0;height:100%;min-height:240px;padding:24px;display:flex;overflow:hidden}.skeleton-heading{justify-content:space-between;align-items:center;gap:32px;display:flex}.skeleton-heading i{width:156px;height:20px;display:block}.skeleton-heading i:last-child{width:84px;height:30px}.skeleton-toolbar{gap:16px;display:flex}.skeleton-toolbar i{width:48px;height:10px;display:block}.skeleton-block{background:var(--s2);border-radius:6px;animation:1.8s ease-in-out infinite loading-breathe}.skeleton-panel{border:1px solid var(--line);border-radius:10px;flex-direction:column;flex:1;gap:20px;min-height:120px;padding:24px;display:flex}.skeleton-panel i{width:60%;max-width:540px;height:12px;display:block}.skeleton-panel i:nth-child(2n){width:42%}.page-skeleton[data-chart] .skeleton-panel{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.45;background-size:100% 25%,20% 100%}.page-skeleton[data-chart] .skeleton-panel i{display:none}@keyframes loading-travel{0%{transform:translate(-110%)}to{transform:translate(330%)}}@keyframes loading-breathe{0%,to{opacity:.45}50%{opacity:.85}}@media (max-width:1279px){.loading-rail{width:72px;padding:28px 20px}.loading-center{left:72px}.loading-grid{left:96px}.loading-top i:not(:first-child){display:none}}@media (max-width:767px){.loading-top{height:56px;padding:0 20px}.loading-rail{border-right:0;border-top:1px solid var(--line);flex-direction:row;justify-content:space-around;align-items:center;gap:28px;width:100%;height:64px;padding:20px;top:auto;bottom:0}.loading-rail i{height:14px;width:24px!important}.loading-rail i:nth-child(n+5){display:none}.loading-center{top:56px;bottom:64px;left:0;right:0}.loading-grid{top:88px;bottom:96px;left:20px;right:20px}.loading-card{box-shadow:0 0 50px 20px var(--bg)}.page-skeleton{gap:20px;padding:20px 16px}}@media (prefers-reduced-motion:reduce){.loading-track:after,.skeleton-block{animation:none}.loading-track:after{opacity:.5;width:100%}}
