:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0;overflow:hidden}html,body,#app,.itab-container,.main-content,.widget-area{overflow:hidden!important}::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}*{scrollbar-width:none!important;-ms-overflow-style:none!important}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#app{box-sizing:border-box;flex-direction:column;width:100%;min-height:100vh;display:flex}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.login-panel[data-v-12dec9f8]{width:100%}.form-group[data-v-12dec9f8]{margin-bottom:16px}.form-group label[data-v-12dec9f8]{color:#666;margin-bottom:6px;font-size:14px;display:block}.form-group input[data-v-12dec9f8]{background:#fff;border:1px solid #ddd;border-radius:8px;width:100%;padding:10px 12px;font-size:14px}.captcha-row[data-v-12dec9f8]{align-items:center;gap:10px;display:flex}.captcha-row input[data-v-12dec9f8]{flex:1;min-width:0}.captcha-img[data-v-12dec9f8]{cursor:pointer;border:1px solid #ddd;border-radius:6px;flex-shrink:0;height:40px}.captcha-loading[data-v-12dec9f8]{color:#999;cursor:pointer;flex-shrink:0;padding:0 4px;font-size:18px}.btn[data-v-12dec9f8]{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:14px;transition:all .2s}.btn.primary[data-v-12dec9f8]{color:#fff;background:#1890ff;width:100%}.btn.primary[data-v-12dec9f8]:hover{background:#40a9ff}.btn.primary[data-v-12dec9f8]:disabled{opacity:.7;cursor:not-allowed}.error-message[data-v-12dec9f8]{color:#ff4d4f;text-align:center;margin-top:8px;font-size:13px}.system-card[data-v-2cc5a82b]{cursor:default;background:#fff;border:1px solid #eceef2;border-radius:12px;align-items:center;gap:12px;padding:14px;transition:box-shadow .2s,transform .2s;display:flex;position:relative}.system-card[data-v-2cc5a82b]:hover{transform:translateY(-1px);box-shadow:0 4px 16px #1f2d3d1a}.system-card.offline[data-v-2cc5a82b]{opacity:.72}.card-icon[data-v-2cc5a82b]{background:linear-gradient(135deg,#e8f4ff,#f0f9ff);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.card-icon img[data-v-2cc5a82b]{object-fit:cover;width:100%;height:100%}.card-icon i[data-v-2cc5a82b]{color:#1890ff;font-size:20px}.icon-text[data-v-2cc5a82b]{color:#1890ff;font-size:16px;font-weight:600}.card-body[data-v-2cc5a82b]{flex:1;min-width:0}.card-title[data-v-2cc5a82b]{align-items:center;gap:6px;display:flex}.card-name[data-v-2cc5a82b]{color:#26334d;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.status-dot[data-v-2cc5a82b]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.on[data-v-2cc5a82b]{background:#52c41a;box-shadow:0 0 0 3px #52c41a26}.status-dot.off[data-v-2cc5a82b]{background:#d9d9d9}.card-desc[data-v-2cc5a82b]{color:#8a94a6;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.card-addr[data-v-2cc5a82b]{color:#9aa6b8;align-items:center;gap:6px;margin-top:4px;font-size:11px;display:flex}.addr-text[data-v-2cc5a82b]{text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,Monaco,monospace;overflow:hidden}.addr-tag[data-v-2cc5a82b]{color:#67c23a;background:#f0f9eb;border-radius:4px;flex-shrink:0;padding:0 5px;font-size:10px}.card-actions[data-v-2cc5a82b]{opacity:0;flex-direction:column;gap:6px;transition:opacity .2s;display:flex}.system-card:hover .card-actions[data-v-2cc5a82b]{opacity:1}.act[data-v-2cc5a82b]{color:#5a6b85;cursor:pointer;background:#f2f5f9;border:none;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;display:flex}.act[data-v-2cc5a82b]:hover{color:#1890ff;background:#e6f4ff}.act.del[data-v-2cc5a82b]:hover{color:#ff4d4f;background:#fff1f0}.copied-tip[data-v-2cc5a82b]{color:#52c41a;background:#f6ffed;border-radius:4px;padding:1px 6px;font-size:11px;position:absolute;top:8px;right:10px}.copied-fade-enter-active[data-v-2cc5a82b],.copied-fade-leave-active[data-v-2cc5a82b]{transition:opacity .3s}.copied-fade-enter-from[data-v-2cc5a82b],.copied-fade-leave-to[data-v-2cc5a82b]{opacity:0}.device-group[data-v-6bc2cb76]{background:#f7f9fc;border:1px solid #eceef2;border-radius:14px;padding:16px}.group-header[data-v-6bc2cb76]{align-items:center;gap:8px;margin-bottom:12px;display:flex}.device-dot[data-v-6bc2cb76]{border-radius:50%;flex-shrink:0;width:9px;height:9px}.device-dot.on[data-v-6bc2cb76]{background:#52c41a;box-shadow:0 0 0 3px #52c41a26}.device-dot.off[data-v-6bc2cb76]{background:#d9d9d9}.device-name[data-v-6bc2cb76]{color:#26334d;font-size:14px;font-weight:600}.device-meta[data-v-6bc2cb76]{color:#8a94a6;font-size:12px}.tunnel-count[data-v-6bc2cb76]{color:#9aa6b8;margin-left:auto;font-size:12px}.group-cards[data-v-6bc2cb76]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.group-empty[data-v-6bc2cb76]{text-align:center;color:#b8c0cd;grid-column:1/-1;padding:12px 0;font-size:12px}.modal-mask[data-v-50fa9436]{z-index:1000;background:#141e2d66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card[data-v-50fa9436]{background:#fff;border-radius:14px;width:440px;max-width:calc(100vw - 32px);max-height:86vh;padding:20px 24px;overflow-y:auto;box-shadow:0 12px 40px #141e2d40}.modal-header[data-v-50fa9436]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3[data-v-50fa9436]{color:#26334d;margin:0;font-size:16px}.modal-close[data-v-50fa9436]{color:#999;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:15px}.modal-close[data-v-50fa9436]:hover{color:#ff4d4f}.form-group[data-v-50fa9436]{margin-bottom:14px}.form-group label[data-v-50fa9436]{color:#5a6b85;margin-bottom:6px;font-size:13px;display:block}.required[data-v-50fa9436]{color:#ff4d4f}.form-group input[data-v-50fa9436],.form-group select[data-v-50fa9436]{box-sizing:border-box;color:#333;background:#fff;border:1px solid #d9d9d9;border-radius:8px;width:100%;padding:8px 12px;font-size:13px}.form-group input[data-v-50fa9436]:focus,.form-group select[data-v-50fa9436]:focus{border-color:#1890ff;outline:none}.form-hint[data-v-50fa9436]{color:#faad14;margin:6px 0 0;font-size:12px}.type-switch[data-v-50fa9436]{gap:10px;display:flex}.type-switch button[data-v-50fa9436]{color:#5a6b85;cursor:pointer;background:#fff;border:1px solid #d9d9d9;border-radius:8px;flex:1;padding:8px;font-size:13px}.type-switch button.active[data-v-50fa9436]{color:#1890ff;background:#e6f7ff;border-color:#1890ff}.icon-row[data-v-50fa9436]{align-items:center;gap:10px;display:flex}.icon-row input[data-v-50fa9436]{flex:1}.icon-preview[data-v-50fa9436]{background:linear-gradient(135deg,#e8f4ff,#f0f9ff);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.icon-preview img[data-v-50fa9436]{object-fit:cover;width:100%;height:100%}.icon-preview i[data-v-50fa9436]{color:#1890ff;font-size:16px}.preview-text[data-v-50fa9436]{color:#1890ff;font-size:14px;font-weight:600}.modal-footer[data-v-50fa9436]{justify-content:flex-end;gap:12px;margin-top:20px;display:flex}.btn[data-v-50fa9436]{cursor:pointer;border:none;border-radius:8px;padding:8px 18px;font-size:13px}.btn.primary[data-v-50fa9436]{color:#fff;background:#1890ff}.btn.primary[data-v-50fa9436]:disabled{opacity:.7;cursor:not-allowed}.btn.secondary[data-v-50fa9436]{color:#333;background:#f5f5f5}.modal-fade-enter-active[data-v-50fa9436],.modal-fade-leave-active[data-v-50fa9436]{transition:opacity .2s}.modal-fade-enter-from[data-v-50fa9436],.modal-fade-leave-to[data-v-50fa9436]{opacity:0}.widget-todo[data-v-31446610]{flex-direction:column;height:100%;display:flex}.todo-header[data-v-31446610]{color:#333;align-items:center;gap:8px;margin-bottom:10px;font-size:14px;display:flex}.todo-header i[data-v-31446610]{color:#1890ff}.todo-title[data-v-31446610]{font-weight:600}.todo-count[data-v-31446610]{color:#999;font-size:12px}.todo-add-btn[data-v-31446610]{color:#1890ff;cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:2px 6px;font-size:13px}.todo-add-btn[data-v-31446610]:hover{background:#e6f7ff}.todo-add input[data-v-31446610]{box-sizing:border-box;border:1px solid #d9d9d9;border-radius:6px;width:100%;margin-bottom:8px;padding:6px 10px;font-size:13px}.todo-list[data-v-31446610]{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.todo-list li[data-v-31446610]{color:#333;align-items:center;padding:5px 2px;font-size:13px;display:flex}.todo-list li.done .todo-text[data-v-31446610]{color:#bbb;text-decoration:line-through}.todo-check[data-v-31446610]{cursor:pointer;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.todo-text[data-v-31446610]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.todo-del[data-v-31446610]{color:#ccc;cursor:pointer;visibility:hidden;background:0 0;border:none;padding:2px 6px}.todo-list li:hover .todo-del[data-v-31446610]{visibility:visible}.todo-del[data-v-31446610]:hover{color:#ff4d4f}.todo-empty[data-v-31446610]{color:#bbb;justify-content:center;font-size:12px}.widget-note[data-v-5a979fb9]{flex-direction:column;height:100%;display:flex}.note-header[data-v-5a979fb9]{color:#333;align-items:center;gap:8px;margin-bottom:10px;font-size:14px;display:flex}.note-header i[data-v-5a979fb9]{color:#faad14}.note-title[data-v-5a979fb9]{font-weight:600}.note-saved[data-v-5a979fb9]{color:#52c41a;margin-left:auto;font-size:12px}textarea[data-v-5a979fb9]{resize:none;color:#333;box-sizing:border-box;background:#fffbe6;border:1px dashed #d9d9d9;border-radius:8px;flex:1;padding:10px;font-family:inherit;font-size:13px;line-height:1.6}textarea[data-v-5a979fb9]:focus{border-color:#faad14;outline:none}.widget-quote[data-v-324205b9]{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;display:flex}.quote-icon[data-v-324205b9]{opacity:.5;margin-bottom:12px;font-size:2rem}.quote-text[data-v-324205b9]{font-size:.95rem;font-style:italic;line-height:1.6}.quote-author[data-v-324205b9]{opacity:.8;margin-top:12px;font-size:.8rem}.portal-guest[data-v-00cb8341]{background:linear-gradient(160deg,#f0f7ff 0%,#f7f9fc 45%,#eef4f9 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.guest-hero[data-v-00cb8341]{text-align:center;padding:24px}.guest-clock[data-v-00cb8341]{color:#7a8ba6;letter-spacing:2px;font-variant-numeric:tabular-nums;font-size:52px;font-weight:300}.guest-brand[data-v-00cb8341]{color:#26334d;letter-spacing:1px;margin:18px 0 8px;font-size:34px;font-weight:700}.brand-dot[data-v-00cb8341]{color:#1890ff;margin:0 6px}.brand-name[data-v-00cb8341]{font-weight:500}.guest-desc[data-v-00cb8341]{color:#8a94a6;margin:0 0 28px;font-size:14px}.guest-login-btn[data-v-00cb8341]{color:#fff;cursor:pointer;background:#1890ff;border:none;border-radius:10px;padding:12px 44px;font-size:15px;transition:background .2s,transform .2s,box-shadow .2s}.guest-login-btn[data-v-00cb8341]:hover{background:#40a9ff;transform:translateY(-1px);box-shadow:0 6px 18px #1890ff4d}.guest-foot[data-v-00cb8341]{color:#b8c0cd;letter-spacing:1px;margin-top:40px;font-size:12px}.modal-mask[data-v-00cb8341]{z-index:1000;background:#141e2d66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-modal[data-v-00cb8341]{background:#fff;border-radius:14px;width:340px;max-width:calc(100vw - 32px);padding:20px 24px;box-shadow:0 12px 40px #141e2d40}.login-modal-head[data-v-00cb8341]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.login-modal-head h3[data-v-00cb8341]{color:#26334d;margin:0;font-size:16px}.login-close[data-v-00cb8341]{color:#999;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:15px}.login-close[data-v-00cb8341]:hover{color:#ff4d4f}.portal-home[data-v-00cb8341]{background:#f4f6fa;min-height:100vh}.portal-topbar[data-v-00cb8341]{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border-bottom:1px solid #eceef2;align-items:center;gap:20px;padding:12px 28px;display:flex;position:sticky;top:0}.topbar-brand[data-v-00cb8341]{color:#26334d;white-space:nowrap;font-size:17px;font-weight:700}.topbar-search[data-v-00cb8341]{flex:1;align-items:center;gap:8px;max-width:520px;display:flex}.search-engine[data-v-00cb8341]{background:#fff;border:1px solid #d9d9d9;border-radius:8px;padding:7px 8px;font-size:13px}.topbar-search input[data-v-00cb8341]{background:#fff;border:1px solid #d9d9d9;border-radius:8px;flex:1;min-width:0;padding:8px 14px;font-size:13px}.topbar-search input[data-v-00cb8341]:focus{border-color:#1890ff;outline:none}.search-go[data-v-00cb8341]{color:#fff;cursor:pointer;background:#1890ff;border:none;border-radius:8px;flex-shrink:0;width:34px;height:34px}.search-go[data-v-00cb8341]:hover{background:#40a9ff}.topbar-user[data-v-00cb8341]{white-space:nowrap;align-items:center;gap:8px;margin-left:auto;display:flex}.user-avatar[data-v-00cb8341]{color:#7a8ba6;font-size:22px}.user-name[data-v-00cb8341]{color:#42506b;text-overflow:ellipsis;max-width:120px;font-size:13px;overflow:hidden}.topbar-link[data-v-00cb8341]{color:#5a6b85;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 8px;font-size:13px}.topbar-link[data-v-00cb8341]:hover{color:#1890ff;background:#f0f4f9}.portal-main[data-v-00cb8341]{align-items:flex-start;gap:20px;max-width:1400px;margin:0 auto;padding:22px 28px 40px;display:flex}.portal-content[data-v-00cb8341]{flex:1;min-width:0}.portal-widgets[data-v-00cb8341]{flex-direction:column;flex-shrink:0;gap:14px;width:260px;display:flex;position:sticky;top:76px}.widget-box[data-v-00cb8341]{background:#fff;border:1px solid #eceef2;border-radius:14px;min-height:120px;padding:16px}.widget-box[data-v-00cb8341] .widget-quote{padding:8px}.section-head[data-v-00cb8341]{align-items:center;gap:12px;margin:4px 0 14px;display:flex}.section-head h2[data-v-00cb8341]{color:#26334d;align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.section-head h2 i[data-v-00cb8341]{color:#1890ff;font-size:15px}.tunnels-head[data-v-00cb8341]{margin-top:30px}.tunnel-stat[data-v-00cb8341]{color:#9aa6b8;font-size:12px}.add-card-btn[data-v-00cb8341]{color:#fff;cursor:pointer;background:#1890ff;border:none;border-radius:8px;margin-left:auto;padding:7px 14px;font-size:13px}.add-card-btn[data-v-00cb8341]:hover{background:#40a9ff}.system-grid[data-v-00cb8341]{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;display:grid}.tunnel-groups[data-v-00cb8341]{flex-direction:column;gap:14px;display:flex}.section-loading[data-v-00cb8341],.section-empty[data-v-00cb8341]{color:#9aa6b8;text-align:center;background:#fff;border:1px dashed #e3e8f0;border-radius:12px;padding:26px 0;font-size:13px}.section-error[data-v-00cb8341]{color:#e6a23c;text-align:center;background:#fff;border:1px dashed #f0d8a8;border-radius:12px;padding:26px;font-size:13px}.retry-btn[data-v-00cb8341]{color:#1890ff;cursor:pointer;background:#fff;border:1px solid #1890ff;border-radius:6px;margin-left:10px;padding:4px 12px;font-size:12px}.retry-btn[data-v-00cb8341]:hover{background:#e6f7ff}.modal-fade-enter-active[data-v-00cb8341],.modal-fade-leave-active[data-v-00cb8341]{transition:opacity .2s}.modal-fade-enter-from[data-v-00cb8341],.modal-fade-leave-to[data-v-00cb8341]{opacity:0}@media (width<=900px){.portal-main[data-v-00cb8341]{flex-direction:column}.portal-widgets[data-v-00cb8341]{width:100%;position:static}.topbar-search[data-v-00cb8341]{max-width:none}}.widget-daysmatter[data-v-fc57249e]{box-sizing:border-box;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:16px;display:flex}.daysmatter-title[data-v-fc57249e]{opacity:.7;text-align:center;margin-bottom:8px;font-size:13px}.daysmatter-main[data-v-fc57249e]{justify-content:center;align-items:baseline;gap:4px;display:flex}.daysmatter-value[data-v-fc57249e]{letter-spacing:-1px;font-size:2rem;font-weight:600;line-height:1}.daysmatter-unit[data-v-fc57249e]{opacity:.8;margin-top:4px;font-size:.9rem}.daysmatter-date[data-v-fc57249e]{opacity:.6;margin-top:12px;font-size:12px}.daysmatter-name[data-v-fc57249e]{opacity:.7;margin-top:4px;font-size:12px}.appstore-overlay[data-v-c9c163f1]{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.appstore-modal[data-v-c9c163f1]{background:#fff;border-radius:16px;flex-direction:column;width:90%;max-width:1100px;height:500px;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.appstore-header[data-v-c9c163f1]{background:#fafafa;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.search-box[data-v-c9c163f1]{background:#fff;border:1px solid #ddd;border-radius:20px;align-items:center;width:320px;padding:8px 16px;display:flex}.search-box i[data-v-c9c163f1]{color:#999;margin-right:8px}.search-box input[data-v-c9c163f1]{border:none;outline:none;flex:1;font-size:14px}.header-actions[data-v-c9c163f1]{align-items:center;gap:12px;display:flex}.add-to-select[data-v-c9c163f1]{background:#fff;border:1px solid #ddd;border-radius:6px;padding:6px 12px;font-size:13px}.window-btn[data-v-c9c163f1]{cursor:pointer;color:#666;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.window-btn[data-v-c9c163f1]:hover{background:#eee}.category-tabs[data-v-c9c163f1]{white-space:nowrap;border-bottom:1px solid #eee;gap:12px;padding:12px 20px;display:flex;overflow-x:auto}.category-tabs button[data-v-c9c163f1]{color:#666;cursor:pointer;background:0 0;border:none;border-radius:16px;padding:6px 16px;font-size:13px;transition:all .2s}.category-tabs button[data-v-c9c163f1]:hover{background:#f0f0f0}.category-tabs button.active[data-v-c9c163f1]{color:#fff;background:#1890ff}.category-tabs button.hot.active[data-v-c9c163f1]{background:linear-gradient(135deg,#ff6b6b,#ff8e8e)}.appstore-content[data-v-c9c163f1]{flex:1;display:flex;overflow:hidden}.appstore-sidebar[data-v-c9c163f1]{border-right:1px solid #eee;flex-direction:column;gap:4px;width:120px;padding:16px 0;display:flex}.appstore-sidebar button[data-v-c9c163f1]{cursor:pointer;color:#666;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 16px;font-size:14px;transition:all .2s;display:flex}.appstore-sidebar button[data-v-c9c163f1]:hover{background:#f5f5f5}.appstore-sidebar button.active[data-v-c9c163f1]{color:#1890ff;background:#e6f7ff;font-weight:500}.appstore-sidebar button i[data-v-c9c163f1]{text-align:center;width:16px}.appstore-main[data-v-c9c163f1]{flex:1;padding:16px;overflow-y:auto}.apps-grid[data-v-c9c163f1]{flex-direction:column;gap:8px;display:flex}.app-card[data-v-c9c163f1]{background:#fafafa;border-radius:10px;align-items:center;padding:12px;transition:all .2s;display:flex;position:relative}.app-card[data-v-c9c163f1]:hover{background:#f0f0f0}.app-icon[data-v-c9c163f1]{color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;margin-right:16px;font-size:22px;display:flex}.app-info[data-v-c9c163f1]{flex:1;min-width:0}.app-name[data-v-c9c163f1]{color:#333;margin:0 0 4px;font-size:14px;font-weight:500}.app-desc[data-v-c9c163f1]{color:#999;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;overflow:hidden}.add-btn[data-v-c9c163f1]{cursor:pointer;color:#666;background:#fff;border:1px solid #ddd;border-radius:16px;margin-right:12px;padding:6px 16px;font-size:13px;transition:all .2s}.add-btn[data-v-c9c163f1]:hover:not(.added){color:#1890ff;border-color:#1890ff}.add-btn.added[data-v-c9c163f1]{color:#999;background:#f5f5f5;border-color:#ddd}.copy-btn[data-v-c9c163f1]{cursor:pointer;color:#999;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex;position:absolute;right:12px}.copy-btn[data-v-c9c163f1]:hover{color:#666;background:#eee}[data-v-305b93d6]{box-sizing:border-box;margin:0;padding:0}.itab-container[data-v-305b93d6]{background:#f5f5f5 50%/cover fixed;height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;overflow:hidden}.itab-container[data-v-305b93d6]:before{content:"";background:rgba(0, 0, 0, var(--wallpaper-mask,0));-webkit-backdrop-filter:blur(var(--wallpaper-blur,0));backdrop-filter:blur(var(--wallpaper-blur,0));pointer-events:none;z-index:0;position:fixed;inset:0}.theme-dark[data-v-305b93d6]{color:#fff;background:#1a1a2e}.time-display[data-v-305b93d6]{text-align:center;z-index:10;text-shadow:0 2px 10px #0000004d;position:fixed;top:40px;left:50%;transform:translate(-50%)}.time-main[data-v-305b93d6]{letter-spacing:2px;font-weight:500;line-height:1.2}.time-details[data-v-305b93d6]{opacity:.9;margin-top:8px;font-size:14px}.time-details span[data-v-305b93d6]{margin:0 4px}.main-content[data-v-305b93d6]{z-index:1;height:calc(100vh - 280px);margin-top:280px;display:flex;position:relative}.sidebar[data-v-305b93d6]{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;background:#ffffffe0;border-left:1px solid #0000000d;flex-direction:column;align-items:center;width:48px;padding:20px 0;transition:all .3s;display:flex;position:fixed;top:0;bottom:0;right:0}.sidebar-left[data-v-305b93d6]{border-left:none;border-right:1px solid #0000000d;left:0;right:auto}.sidebar.auto-hide[data-v-305b93d6]{opacity:.66}.sidebar.auto-hide.expanded[data-v-305b93d6]{opacity:1}.sidebar-content[data-v-305b93d6]{flex-direction:column;flex:1;justify-content:flex-start;gap:4px;padding-top:60px;display:flex}.nav-group[data-v-305b93d6]{cursor:pointer;color:#666;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;transition:all .2s;display:flex;position:relative}.nav-group i[data-v-305b93d6]{text-align:center;width:20px}.nav-group span[data-v-305b93d6]{color:#fff;white-space:nowrap;background:#000c;border-radius:6px;padding:4px 10px;font-size:12px;display:none;position:absolute;right:50px}.nav-group:hover span[data-v-305b93d6]{display:block}.nav-group[data-v-305b93d6]:hover{background:#0000000d}.nav-group.active[data-v-305b93d6]{color:#fff;background:#1890ff}.add-group-btn[data-v-305b93d6]{cursor:pointer;color:#999;border:2px dashed #d9d9d9;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex}.add-group-btn[data-v-305b93d6]:hover{color:#1890ff;border-color:#1890ff}.widget-area[data-v-305b93d6]{flex:1;justify-content:center;padding:0 60px 0 80px;display:flex;overflow:hidden}.widget-grid[data-v-305b93d6]{grid-template-rows:repeat(auto-fill,minmax(95px,1fr));grid-template-columns:repeat(auto-fill,120px);align-content:start;gap:12px;width:100%;max-width:1400px;height:100%;display:grid}.widget-item[data-v-305b93d6]{cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#333;background:#ffffffeb;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:95px;padding:12px 8px;transition:all .2s;display:flex;position:relative;box-shadow:0 2px 10px #0000000f}.widget-item[data-v-305b93d6]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.widget-item.is-dragging[data-v-305b93d6]{opacity:.5}.widget-item[style*=background][data-v-305b93d6]{color:#fff}.widget-item[style*=background] .widget-name[data-v-305b93d6]{color:#fff!important}.widget-item[style*=background] .widget-icon[data-v-305b93d6]{background:#fff3}.widget-icon[data-v-305b93d6]{width:var(--icon-size,44px);height:var(--icon-size,44px);border-radius:var(--icon-radius,8%);font-size:calc(var(--icon-size,44px) * .45);color:#333;background:#0000000d;justify-content:center;align-items:center;display:flex;overflow:hidden}.widget-icon img[data-v-305b93d6]{object-fit:contain;width:100%;height:100%}.icon-text-fallback[data-v-305b93d6]{color:#fff;border-radius:inherit;width:100%;height:100%;font-weight:600;font-size:calc(var(--icon-size,44px) * .4);background:linear-gradient(135deg,#667eea,#764ba2);justify-content:center;align-items:center;display:flex}.widget-item .widget-name[data-v-305b93d6]{font-size:var(--name-size,12px);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:6px;font-weight:500;overflow:hidden;color:#333!important}.widget-url[data-v-305b93d6]{opacity:.7;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:4px;font-size:10px;overflow:hidden}.widget-text[data-v-305b93d6]{width:var(--icon-size,50px);height:var(--icon-size,50px);border-radius:12px;justify-content:center;align-items:center;padding:8px;display:flex}.text-content[data-v-305b93d6]{color:#fff;text-align:center;word-break:break-all;font-size:12px;font-weight:500;overflow:hidden}.size-2x2[data-v-305b93d6]{grid-area:span 2/span 2;min-height:200px}.size-1x2[data-v-305b93d6]{grid-row:span 2;min-height:200px}.size-2x1[data-v-305b93d6]{grid-column:span 2}.size-mini[data-v-305b93d6]{transform:scale(.85)}.widget-actions[data-v-305b93d6]{opacity:0;gap:4px;transition:opacity .2s;display:flex;position:absolute;top:4px;right:4px}.widget-item:hover .widget-actions[data-v-305b93d6]{opacity:1}.action-btn[data-v-305b93d6]{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:flex}.action-btn.edit[data-v-305b93d6]{color:#fff;background:#1890ffe6}.action-btn.delete[data-v-305b93d6]{color:#fff;background:#ff4d4fe6}.view-count[data-v-305b93d6]{opacity:.6;font-size:10px;position:absolute;bottom:4px;right:4px}.add-widget[data-v-305b93d6]{border:2px dashed #ffffff80;justify-content:center;min-height:80px}.add-widget i[data-v-305b93d6]{opacity:.5;font-size:24px}.add-widget[data-v-305b93d6]:hover{border-color:#1890ff}.add-widget:hover i[data-v-305b93d6]{opacity:1;color:#1890ff}.search-bar[data-v-305b93d6]{-webkit-backdrop-filter:blur(20px);z-index:100;background:#ffffffe6;border:1px solid #ffffff80;border-radius:30px;align-items:center;gap:12px;width:80%;min-width:400px;max-width:600px;padding:10px 20px;transition:all .3s;display:flex;position:fixed;top:180px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000014}.search-bar[data-v-305b93d6]:hover{box-shadow:0 12px 40px #0000001f}.search-bar .search-input[data-v-305b93d6]{color:#333;background:0 0;border:none;outline:none;flex:1;padding:10px 12px;font-size:14px}.search-bar .search-input[data-v-305b93d6]::placeholder{color:#0006}.search-select[data-v-305b93d6]{color:#333;cursor:pointer;background:#fffc;border:1px solid #0000001a;border-radius:8px;outline:none;min-width:80px;padding:8px 12px;font-size:14px}.search-select[data-v-305b93d6]:hover{border-color:#1890ff}.search-select[data-v-305b93d6]:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff1a}.search-btn[data-v-305b93d6]{color:#fff;cursor:pointer;background:#1890ff;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.search-btn[data-v-305b93d6]:hover{background:#40a9ff}.sidebar-bottom[data-v-305b93d6]{border-top:1px solid #0000000d;flex-direction:column;gap:4px;padding-top:12px;padding-bottom:20px;display:flex}.sidebar-btn[data-v-305b93d6]{cursor:pointer;color:#666;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;transition:all .2s;display:flex}.sidebar-btn[data-v-305b93d6]:hover{color:#1890ff;background:#0000000d}.modal-overlay[data-v-305b93d6]{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-drawer-overlay[data-v-305b93d6]{z-index:1000;background:#0000004d;position:fixed;inset:0}.settings-drawer[data-v-305b93d6]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;flex-direction:column;width:500px;height:100vh;animation:.3s ease-out slideIn-305b93d6;display:flex;position:fixed;top:0;right:0;box-shadow:-4px 0 20px #0000001a}@keyframes slideIn-305b93d6{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header[data-v-305b93d6]{border-bottom:1px solid #eee;justify-content:flex-end;padding:16px;display:flex}.drawer-close[data-v-305b93d6]{cursor:pointer;color:#666;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:background .2s;display:flex}.drawer-close[data-v-305b93d6]:hover{background:#f0f0f0}.drawer-content[data-v-305b93d6]{flex:1;display:flex;overflow:hidden}.settings-sidebar[data-v-305b93d6]{border-right:1px solid #eee;flex-direction:column;gap:4px;width:160px;padding:16px 0;display:flex}.settings-sidebar button[data-v-305b93d6]{cursor:pointer;color:#666;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:12px 16px;font-size:14px;transition:all .2s;display:flex}.settings-sidebar button[data-v-305b93d6]:hover{background:#f5f5f5}.settings-sidebar button.active[data-v-305b93d6]{color:#1890ff;background:#e8f4ff}.settings-sidebar button i[data-v-305b93d6]{text-align:center;width:16px}.settings-main[data-v-305b93d6]{flex:1;padding:20px;overflow-y:auto}.settings-section[data-v-305b93d6]{animation:.2s fadeIn-305b93d6}@keyframes fadeIn-305b93d6{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.settings-section h3[data-v-305b93d6]{color:#333;margin-bottom:20px;font-size:16px}.about-info[data-v-305b93d6]{color:#666;line-height:1.8}.drawer-footer[data-v-305b93d6]{border-top:1px solid #eee;justify-content:flex-end;gap:12px;padding:16px;display:flex}.modal-content[data-v-305b93d6]{background:#fff;border-radius:16px;width:90%;max-width:400px;max-height:80vh;padding:24px;overflow-y:auto}.theme-dark .modal-content[data-v-305b93d6]{color:#fff;background:#2a2a3e}.modal-content h3[data-v-305b93d6]{margin-bottom:20px;font-size:18px}.form-group[data-v-305b93d6]{margin-bottom:16px}.form-group label[data-v-305b93d6]{color:#666;margin-bottom:6px;font-size:14px;display:block}.theme-dark .form-group label[data-v-305b93d6]{color:#aaa}.form-group input[data-v-305b93d6],.form-group select[data-v-305b93d6]{background:#fff;border:1px solid #ddd;border-radius:8px;width:100%;padding:10px 12px;font-size:14px}.theme-dark .form-group input[data-v-305b93d6],.theme-dark .form-group select[data-v-305b93d6]{color:#fff;background:#3a3a4e;border-color:#555}.form-group input[type=color][data-v-305b93d6]{height:40px;padding:4px}.form-group input[type=range][data-v-305b93d6]{width:100%}.captcha-row[data-v-305b93d6]{align-items:center;gap:10px;display:flex}.captcha-row input[data-v-305b93d6]{flex:1;min-width:0}.captcha-img[data-v-305b93d6]{cursor:pointer;border:1px solid #ddd;border-radius:6px;flex-shrink:0;height:40px}.captcha-loading[data-v-305b93d6]{color:#999;cursor:pointer;flex-shrink:0;padding:0 4px;font-size:18px}.modal-actions[data-v-305b93d6]{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.btn[data-v-305b93d6]{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:14px;transition:all .2s}.btn.primary[data-v-305b93d6]{color:#fff;background:#1890ff}.btn.primary[data-v-305b93d6]:hover{background:#40a9ff}.btn.secondary[data-v-305b93d6]{color:#333;background:#f5f5f5}.theme-dark .btn.secondary[data-v-305b93d6]{color:#fff;background:#3a3a4e}.btn.danger[data-v-305b93d6]{color:#fff;background:#ff4d4f}.btn.mini[data-v-305b93d6]{margin-left:8px;padding:6px 12px;font-size:12px}.color-picker[data-v-305b93d6],.bg-picker[data-v-305b93d6]{align-items:center;gap:12px;display:flex}.color-options[data-v-305b93d6]{flex-wrap:wrap;gap:6px;display:flex}.color-options span[data-v-305b93d6]{cursor:pointer;border:2px solid #0000;border-radius:50%;width:24px;height:24px;transition:all .2s}.color-options span[data-v-305b93d6]:hover{transform:scale(1.1)}.color-options span.active[data-v-305b93d6]{border-color:#1890ff}.bg-colors[data-v-305b93d6]{margin-top:8px}.bg-label[data-v-305b93d6]{color:#999;margin-right:8px;font-size:12px}.common-events[data-v-305b93d6]{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.event-btn[data-v-305b93d6]{cursor:pointer;background:#f5f5f5;border:none;border-radius:20px;padding:6px 12px;font-size:12px;transition:all .2s}.event-btn[data-v-305b93d6]:hover{color:#1890ff;background:#e6f7ff}.theme-dark .event-btn[data-v-305b93d6]{background:#3a3a4e}.theme-dark .event-btn[data-v-305b93d6]:hover{color:#fff;background:#1890ff}.settings-tabs[data-v-305b93d6]{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.settings-tabs button[data-v-305b93d6]{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;padding:8px 16px;font-size:13px}.theme-dark .settings-tabs button[data-v-305b93d6]{color:#fff;background:#3a3a4e;border-color:#555}.settings-tabs button.active[data-v-305b93d6]{color:#fff;background:#1890ff;border-color:#1890ff}.settings-content[data-v-305b93d6]{min-height:200px}.notes-panel[data-v-305b93d6],.todo-panel[data-v-305b93d6]{z-index:1000;background:#fff;border-radius:16px;width:90%;max-width:500px;max-height:70vh;padding:20px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.theme-dark .notes-panel[data-v-305b93d6],.theme-dark .todo-panel[data-v-305b93d6]{color:#fff;background:#2a2a3e}.notes-header[data-v-305b93d6],.todo-header[data-v-305b93d6]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.notes-header h4[data-v-305b93d6],.todo-header h4[data-v-305b93d6]{font-size:18px}.close-btn[data-v-305b93d6]{cursor:pointer;background:#f5f5f5;border:none;border-radius:50%;width:32px;height:32px}.theme-dark .close-btn[data-v-305b93d6]{color:#fff;background:#3a3a4e}.note-item[data-v-305b93d6],.todo-item[data-v-305b93d6]{background:#f9f9f9;border-radius:8px;margin-bottom:8px;padding:12px;position:relative}.theme-dark .note-item[data-v-305b93d6],.theme-dark .todo-item[data-v-305b93d6]{background:#3a3a4e}.note-title[data-v-305b93d6]{margin-bottom:4px;font-weight:500}.note-content[data-v-305b93d6]{color:#666;font-size:13px}.theme-dark .note-content[data-v-305b93d6]{color:#aaa}.note-delete[data-v-305b93d6],.todo-delete[data-v-305b93d6]{color:#999;cursor:pointer;opacity:0;background:0 0;border:none;transition:opacity .2s;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.note-item:hover .note-delete[data-v-305b93d6],.todo-item:hover .todo-delete[data-v-305b93d6]{opacity:1}.todo-item[data-v-305b93d6]{align-items:center;gap:12px;display:flex}.todo-item.done span[data-v-305b93d6]{opacity:.5;text-decoration:line-through}.add-note[data-v-305b93d6],.add-todo[data-v-305b93d6]{gap:8px;margin-top:16px;display:flex}.add-todo input[data-v-305b93d6]{border:1px solid #ddd;border-radius:8px;flex:1;padding:10px 12px;font-size:14px}.theme-dark .add-todo input[data-v-305b93d6]{color:#fff;background:#3a3a4e;border-color:#555}.add-todo button[data-v-305b93d6],.add-note.btn[data-v-305b93d6]{color:#fff;cursor:pointer;background:#1890ff;border:none;border-radius:8px;padding:10px 20px}
