@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-800-normal-BYj_oED-.woff2)format("woff2"),url(/assets/inter-latin-800-normal-D1mf63XC.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-latin-900-normal-D4nM5aha.woff2)format("woff2"),url(/assets/inter-latin-900-normal-EUCDUbiG.woff)format("woff")}:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}@media (prefers-color-scheme:dark){:root{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2)}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);line-height:1.6;font-family:var(--font-sans);font-size:var(--font-md,16px);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:color .5s,background-color .5s}button,input,select,textarea{letter-spacing:0;font-family:inherit}:focus-visible{outline:2px solid var(--color-primary,#111)!important;outline-offset:2px!important}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px!important;box-shadow:var(--shadow-focus)!important;outline-color:#0000!important}@media (forced-colors:active){input:focus-visible,textarea:focus-visible,select:focus-visible{box-shadow:none!important;outline-color:canvastext!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--font-family-base:Inter, "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--font-sans:var(--font-family-base);--font-mono:"JetBrains Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--font-2xs:10px;--font-xxs:11px;--font-xs:12px;--font-sm:14px;--font-md:16px;--font-lg:18px;--font-xl:24px;--font-2xl:32px;--font-3xl:40px;--font-regular:400;--font-medium:500;--font-semibold:600;--font-bold:700;--line-tight:1.2;--line-snug:1.3;--line-normal:1.5;--line-relaxed:1.7;--color-black:#000;--color-white:#fff;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-active:#1e40af;--color-primary-light:#eef4ff;--color-primary-bg:#f7faff;--color-navy-900:#0f172a;--color-navy-800:#1e293b;--color-navy-700:#334155;--color-page-bg:#f6f8fc;--color-surface:#fff;--color-surface-soft:#f8fafc;--color-card-bg:#ffffffe0;--color-card-solid:#fff;--color-bg-page:var(--color-page-bg);--color-bg-card:var(--color-surface);--color-bg-elevated:var(--color-surface);--color-text-main:#0f172a;--color-text-primary:var(--color-text-main);--color-text-secondary:#475569;--color-text-muted:#64748b;--color-text-disabled:#cbd5e1;--color-text-inverse:#fff;--color-border:#e2e8f0;--color-border-light:#eef2f7;--color-border-default:var(--color-border);--color-border-strong:#cbd5e1;--color-border-focus:var(--color-primary);--color-input-bg:#fff;--color-input-border:#d3dae6;--color-input-placeholder:#64748b;--color-input-disabled-bg:#f8fafc;--color-input-readonly-bg:#f8fafc;--color-overlay:#0f172a7a;--color-backdrop-blur:#ffffffb8;--color-success:#16a34a;--color-success-bg:#ecfdf3;--color-success-border:#bbf7d0;--color-warning:#d97706;--color-warning-bg:#fff7e6;--color-warning-border:#fed7aa;--color-danger:#dc2626;--color-error:var(--color-danger);--color-error-bg:#fff1f2;--color-error-border:#fecdd3;--color-info:var(--color-primary);--color-info-bg:var(--color-primary-light);--color-info-border:#bfdbfe;--chart-blue:#2563eb;--chart-green:#16a34a;--chart-orange:#f59e0b;--chart-red:#ef4444;--chart-purple:#7c3aed;--chart-cyan:#0891b2;--chart-gray:#64748b;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:999px;--radius-card:var(--radius-md);--radius-dialog:var(--radius-lg);--radius-panel:var(--radius-md);--shadow-sm:0 1px 3px #0f172a0a;--shadow-md:0 8px 24px #0f172a0f;--shadow-lg:0 12px 32px #0f172a24;--shadow-card:0 8px 24px #0f172a0f;--shadow-card-hover:0 12px 32px #0f172a1a;--shadow-dropdown:0 12px 32px #0f172a24;--shadow-focus:0 0 0 3px #2563eb29;--shadow-panel-left:-10px 0 28px #0f172a14;--gradient-primary:linear-gradient(135deg, #2563eb 0%, #1e40af 100%);--gradient-soft-blue:linear-gradient(135deg, #f7faff 0%, #eef4ff 100%);--gradient-navy:linear-gradient(135deg, #172554 0%, #0f172a 100%);--btn-height-sm:32px;--btn-height-md:40px;--btn-height-lg:48px;--sidebar-width:256px;--sidebar-collapsed-width:72px;--header-height:64px;--motion-fast:.12s;--motion-normal:.18s;--motion-slow:.28s;--motion-base:.18s;--ease-out:cubic-bezier(.2, 0, 0, 1)}.c-tip{z-index:1000;pointer-events:none;position:fixed;transform:translate(-50%)}.c-tip-txt{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);-webkit-backdrop-filter:blur(12px);color:var(--color-text-primary);font-size:var(--font-xs);font-weight:var(--font-medium);line-height:var(--line-tight);white-space:nowrap;box-shadow:var(--shadow-lg);padding:7px 10px;display:inline-block}.c-tip-fade-enter-active,.c-tip-fade-leave-active{transition:opacity .14s var(--ease-out), transform .14s var(--ease-out)}.c-tip-fade-enter-from,.c-tip-fade-leave-to{opacity:0;transform:translate(-50%)translateY(-4px)}html.dark{--color-primary:#60a5fa;--color-primary-hover:#93c5fd;--color-primary-active:#3b82f6;--color-primary-light:#60a5fa24;--color-primary-bg:#60a5fa14;--color-page-bg:#0b1120;--color-surface:#111827;--color-surface-soft:#1e293b;--color-card-bg:#0f172ae0;--color-card-solid:#111827;--color-bg-page:var(--color-page-bg);--color-bg-card:var(--color-surface);--color-bg-elevated:#111827;--color-text-main:#f8fafc;--color-text-primary:var(--color-text-main);--color-text-secondary:#cbd5e1;--color-text-muted:#94a3b8;--color-text-disabled:#64748b;--color-text-inverse:#0f172a;--color-border:#94a3b838;--color-border-light:#94a3b824;--color-border-default:var(--color-border);--color-border-strong:#94a3b857;--color-border-focus:#60a5fa;--color-input-bg:#0f172a;--color-input-border:#94a3b847;--color-input-placeholder:#94a3b8;--color-input-disabled-bg:#111827;--color-input-readonly-bg:#111827;--color-overlay:#020617b8;--color-backdrop-blur:#0f172ab8;--shadow-card:0 12px 32px #00000047;--shadow-card-hover:0 16px 44px #0000005c;--shadow-dropdown:0 18px 48px #0000006b;--shadow-focus:0 0 0 3px #60a5fa38;--shadow-panel-left:-10px 0 28px #0000002e;--gradient-primary:linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);--gradient-soft-blue:linear-gradient(135deg, #2563eb24, #60a5fa14);--gradient-navy:linear-gradient(135deg, #1e293b 0%, #020617 100%)}:root,:root{--canvas-dot-color-primary:color-mix(in srgb, var(--color-primary) 34%, transparent);--canvas-dot-color-secondary:color-mix(in srgb, var(--color-primary) 18%, transparent);--canvas-dot-size:24px;--canvas-dot-major-size:96px;--canvas-dot-major-offset:12px}:root.light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-primary:var(--color-page-bg,#f6f8fc);--bg-secondary:var(--color-surface,#fff);--bg-tertiary:var(--color-surface-soft,#f8fafc);--bg-input:var(--color-input-bg,#fff);--bg-button:var(--color-primary-light,#eef4ff);--bg-button-active:var(--color-primary-bg,#f7faff);--bg-hover:var(--color-primary-bg,#f7faff);--bg-active:var(--color-primary-light,#eef4ff);--bg-menu:var(--color-surface,#fff);--bg-overlay:#f8fbffc7;--bg-toast-error:#dc2626f0;--bg-toast-success:#16a34af0;--bg-danger-hover:var(--color-error-bg,#fff1f2);--bg-rename-input:var(--color-input-bg,#fff);--bg-tab:var(--color-surface-soft,#f8fafc);--sidebar-bg:#f8fbff;--nav-hover-bg:var(--color-primary-bg,#f7faff);--nav-active-bg:var(--color-primary-light,#eef4ff);--toolbar-glow:#2563eb1a;--toolbar-highlight:#ffffffdb;--stage-bg:var(--color-page-bg,#f6f8fc);--canvas-workspace-bg:var(--stage-bg);--canvas-image-loading-surface:#f1f5f9;--text-primary:var(--color-text-main,#0f172a);--text-secondary:var(--color-text-secondary,#475569);--text-muted:var(--color-text-muted,#64748b);--text-hint:var(--color-text-muted,#64748b);--text-bright:var(--color-navy-900,#0f172a);--text-inverse:var(--color-text-inverse,#fff);--text-toast-error:#fff;--text-toast-success:#fff;--accent:var(--color-primary,#2563eb);--accent-cyan:var(--color-primary,#2563eb);--accent-warm:var(--color-primary-hover,#1d4ed8);--accent-text-on:#fff;--accent-fill:var(--color-primary,#2563eb);--button-primary-muted-bg:#315f9f;--button-primary-muted-hover:#294f86;--button-primary-muted-active:#224272;--button-primary-muted-text:#fff;--border:var(--color-border,#e2e8f0);--border-light:var(--color-border-light,#eef2f7);--border-input:var(--color-input-border,#d3dae6);--border-accent:var(--color-info-border,#bfdbfe);--error:var(--color-error,#dc2626);--success:var(--color-success,#16a34a);--busy:var(--color-primary,#2563eb);--gradient-accent:var(--gradient-primary,linear-gradient(135deg, #2563eb 0%, #1e40af 100%));--grid-bg:#fff;--grid-line:#2563eb0f;--grid-major:#2563eb1f;--grid-axis:#2563eb47;--draw-rect-fill:#2563eb24;--draw-rect-stroke:#2563eb;--draw-circle-fill:#2563eb1f;--draw-circle-stroke:#2563eb;--draw-line-stroke:#1d4ed8;--draw-text-fill:#0f172a;--node-bg:#fffffff5;--node-header-bg:#f8fafc;--node-border:#0f172a1a;--node-selected:#2563eb;--node-selection-border:#3b82f6;--node-selection-ring:#2563eb24;--node-selection-surface:#2563eb0a;--node-port:#64748b;--node-port-hover:#2563eb;--node-connection:#94a3b8;--node-connection-selected:#2563eb;--node-temp-connection:#1d4ed8}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas-surface-base:#0a0a0a;--canvas-surface-panel:#141414;--canvas-surface-elevated:#191919;--canvas-surface-input:#101010;--canvas-surface-hover:#1f1f1f;--canvas-surface-selected:#172238;--canvas-border:#2a2a2a;--canvas-border-subtle:#222;--canvas-border-strong:#383838;--canvas-text:#f5f5f5;--canvas-text-secondary:#d4d4d4;--canvas-text-muted:#a3a3a3;--canvas-shadow-sm:0 1px 2px #00000047;--canvas-shadow-panel:0 8px 24px #00000057;--canvas-shadow-dropdown:0 12px 32px #0000006b;--bg-primary:#0b1120;--bg-secondary:#111827;--bg-tertiary:#1e293b;--bg-input:#0f172a;--bg-button:#60a5fa1f;--bg-button-active:#60a5fa2e;--bg-hover:#60a5fa14;--bg-active:#60a5fa24;--bg-menu:#111827;--bg-overlay:#020617b8;--bg-toast-error:#dc2626f0;--bg-toast-success:#16a34af0;--bg-danger-hover:#dc262629;--bg-rename-input:#0f172a;--bg-tab:#1e293b;--sidebar-bg:#0b1120;--nav-hover-bg:#60a5fa14;--nav-active-bg:#60a5fa24;--toolbar-glow:#60a5fa29;--toolbar-highlight:#ffffff1a;--stage-bg:#0b1120;--canvas-workspace-bg:var(--canvas-surface-base);--canvas-image-loading-surface:#18202c;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--text-hint:#94a3b8;--text-bright:#fff;--text-inverse:#0f172a;--text-toast-error:#fff;--text-toast-success:#fff;--accent:#60a5fa;--accent-cyan:#60a5fa;--accent-warm:#93c5fd;--accent-text-on:#0f172a;--accent-fill:#60a5fa;--button-primary-muted-bg:#5278a3;--button-primary-muted-hover:#4b719b;--button-primary-muted-active:#42658b;--button-primary-muted-text:#fff;--border:#94a3b838;--border-light:#94a3b824;--border-input:#94a3b847;--border-accent:#60a5fa6b;--error:#fca5a5;--success:#86efac;--busy:#60a5fa;--gradient-accent:linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);--grid-bg:#0f172a;--grid-line:#60a5fa1a;--grid-major:#60a5fa2e;--grid-axis:#60a5fa47;--draw-rect-fill:#60a5fa2e;--draw-rect-stroke:#60a5fa;--draw-circle-fill:#60a5fa24;--draw-circle-stroke:#93c5fd;--draw-line-stroke:#bfdbfe;--draw-text-fill:#f8fafc;--node-bg:#0f172af5;--node-header-bg:#94a3b814;--node-border:#94a3b838;--node-selected:#60a5fa;--node-selection-border:#93c5fd;--node-selection-ring:#60a5fa2e;--node-selection-surface:#60a5fa14;--node-port:#94a3b8;--node-port-hover:#93c5fd;--node-connection:#94a3b8;--node-connection-selected:#60a5fa;--node-temp-connection:#bfdbfe}*{scrollbar-width:thin;scrollbar-color:var(--border-light) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border)}::-webkit-scrollbar-corner{background:0 0}.app-navigation-page{--app-navigation-page-bg:#f8fbff;--app-page-header-height:88px;--app-page-header-padding-inline:32px}html.dark .app-navigation-page{--app-navigation-page-bg:var(--bg-primary)}.app-page-header{min-width:0;min-height:var(--app-page-header-height);padding:12px var(--app-page-header-padding-inline);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:24px;display:flex}.app-page-heading{flex-direction:column;justify-content:center;gap:4px;min-width:0;display:flex}.app-page-title{color:var(--color-text-main);font-family:var(--font-family-base);font-size:var(--font-2xl);font-weight:var(--font-regular);line-height:var(--line-tight);letter-spacing:0;text-overflow:ellipsis;text-wrap:balance;margin:0;overflow:hidden}.app-page-subtitle{max-width:720px;color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-sm);font-weight:var(--font-regular);line-height:var(--line-normal);letter-spacing:0;text-overflow:ellipsis;text-wrap:pretty;margin:0;overflow:hidden}.app-page-actions{flex:none;align-items:center;gap:10px;display:flex}@media (width<=720px){.app-navigation-page{--app-page-header-height:80px;--app-page-header-padding-inline:16px}.app-page-header{gap:12px}}html,body,#app{width:100vw;min-width:100vw;height:100vh;min-height:100vh;overflow:hidden}body{background:var(--bg-primary);color:var(--text-primary)}#app{font-weight:400}.logo-block[data-v-53fb9328]{align-items:center;gap:10px;height:52px;margin-bottom:12px;padding:0 4px;display:flex;overflow:hidden}.logo-img[data-v-53fb9328]{object-fit:contain;object-position:center;border-radius:var(--radius-lg,12px);width:42px;height:42px;box-shadow:none;background:0 0;flex-shrink:0;transition:transform .4s,border-radius .4s;display:block}.logo-block:hover .logo-img[data-v-53fb9328]{border-radius:50%;animation:3s linear infinite spin-53fb9328}.logo-square[data-v-53fb9328]{border:1px solid var(--border-accent);border-radius:var(--radius-lg,12px);background:radial-gradient(circle at 35% 28%, #ffffff4d, transparent 18%), var(--gradient-accent);flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;transition:transform .4s,border-radius .4s;display:flex;box-shadow:0 12px 26px #fff3}.logo-block:hover .logo-square[data-v-53fb9328]{border-radius:50%;animation:3s linear infinite spin-53fb9328}.logo-dot[data-v-53fb9328]{background:var(--sidebar-bg);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 6px #ffffff2e}.logo-copy[data-v-53fb9328]{opacity:0;flex-direction:column;min-width:0;transition:opacity .18s,transform .22s;display:flex;transform:translate(-8px)}.logo-block.expanded .logo-copy[data-v-53fb9328]{opacity:1;transition-delay:80ms;transform:translate(0)}.logo-copy strong[data-v-53fb9328]{font-size:var(--font-sm);color:color-mix(in srgb, var(--text-primary) 84%, var(--text-muted) 16%);font-weight:800;line-height:var(--line-tight);letter-spacing:0;white-space:nowrap}.logo-copy span[data-v-53fb9328]{font-size:var(--font-xs);color:var(--text-muted);line-height:var(--line-tight);white-space:nowrap;margin-top:2px}@keyframes spin-53fb9328{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.nav-item[data-v-9551c3e8]{align-items:center;gap:var(--space-3,12px);width:100%;min-height:40px;padding:0 var(--space-3,12px);border-radius:var(--radius-md,8px);color:var(--text-secondary,var(--color-text-secondary));cursor:pointer;font-family:inherit;font-size:var(--font-sm,14px);font-weight:var(--font-medium,500);text-align:left;white-space:nowrap;transition:background-color var(--motion-fast,.12s) var(--ease-out,ease), color var(--motion-fast,.12s) var(--ease-out,ease);background:0 0;border:0;line-height:1;display:flex;position:relative}.nav-item[data-v-9551c3e8]:hover{background:var(--bg-hover,var(--color-gray-100));color:var(--text-primary,var(--color-text-primary))}.nav-item[data-v-9551c3e8]:active{background:var(--bg-active,var(--color-gray-200));color:var(--text-primary,var(--color-text-primary))}.nav-item.active[data-v-9551c3e8]{background:var(--sidebar-surface-hover,var(--bg-active));color:var(--text-primary,var(--color-text-primary));font-weight:var(--font-semibold,600)}.nav-item.active .nav-icon[data-v-9551c3e8]{color:var(--accent,var(--color-primary))}.nav-item[data-v-9551c3e8]:focus-visible{outline:2px solid var(--text-primary,var(--color-primary));outline-offset:2px}.nav-icon[data-v-9551c3e8]{width:var(--icon-md,20px);height:var(--icon-md,20px);font-size:var(--icon-md,20px);font-variation-settings:"FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;-webkit-user-select:none;user-select:none;flex-shrink:0;line-height:1}.nav-label[data-v-9551c3e8]{min-width:0;font-size:inherit;font-weight:inherit;text-overflow:ellipsis;white-space:nowrap;line-height:1;overflow:hidden}.side-action[data-v-dbb4c602]{align-items:center;gap:var(--space-3,12px);width:100%;min-height:40px;padding:0 var(--space-3,12px);border-radius:var(--radius-md,8px);color:var(--text-secondary,var(--color-text-secondary));cursor:pointer;font-family:inherit;font-size:var(--font-sm,14px);font-weight:var(--font-medium,500);text-align:left;white-space:nowrap;transition:background-color var(--motion-fast,.12s) var(--ease-out,ease), color var(--motion-fast,.12s) var(--ease-out,ease);background:0 0;border:0;line-height:1;display:flex;position:relative}.side-action[data-v-dbb4c602]:hover{background:var(--bg-hover,var(--color-gray-100));color:var(--text-primary,var(--color-text-primary))}.side-action[data-v-dbb4c602]:active{background:var(--bg-active,var(--color-gray-200));color:var(--text-primary,var(--color-text-primary))}.side-action.active[data-v-dbb4c602]{background:var(--sidebar-surface-hover,var(--bg-active));color:var(--text-primary,var(--color-text-primary));font-weight:var(--font-semibold,600)}.side-action.active .action-icon[data-v-dbb4c602]{color:var(--accent,var(--color-primary))}.side-action[data-v-dbb4c602]:focus-visible{outline:2px solid var(--text-primary,var(--color-primary));outline-offset:2px}.action-icon[data-v-dbb4c602]{width:var(--icon-md,20px);height:var(--icon-md,20px);font-size:var(--icon-md,20px);font-variation-settings:"FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;-webkit-user-select:none;user-select:none;flex-shrink:0;line-height:1}.action-label[data-v-dbb4c602]{min-width:0;font-size:inherit;font-weight:inherit;text-overflow:ellipsis;white-space:nowrap;line-height:1;overflow:hidden}.action-badge[data-v-dbb4c602]{border-radius:var(--radius-xs,4px);font-size:var(--font-2xs,10px);font-weight:var(--font-semibold,600);line-height:var(--line-tight,1.2);white-space:nowrap;margin-left:auto;padding:2px 6px}.action-badge.green[data-v-dbb4c602]{border:1px solid color-mix(in srgb, var(--success,var(--color-success)) 70%, transparent);background:color-mix(in srgb, var(--success,var(--color-success)) 10%, transparent);color:var(--success,var(--color-success))}.side-action.active .action-badge.green[data-v-dbb4c602]{color:currentColor;background:#ffffff1f;border-color:#ffffff59}.side-actions[data-v-d323af78]{gap:var(--space-1,4px);padding-top:var(--space-4,16px);border-top:1px solid var(--border-light,var(--color-border-light));flex-direction:column;margin-top:auto;display:flex}.version-badge[data-v-d323af78]{padding:var(--space-2,8px) var(--space-3,12px) 2px;color:var(--text-muted,var(--color-text-muted));font-size:var(--font-xs,12px);font-weight:var(--font-medium,500);letter-spacing:0;text-transform:uppercase;line-height:1}.author-block[data-v-e8248077]{border-top:1px solid var(--border-light);align-items:center;height:58px;margin-top:8px;padding:10px 0 0;display:flex;position:relative;overflow:hidden}.author-chars[data-v-e8248077]{justify-content:center;gap:12px;width:64px;transition:opacity .3s,transform .35s;display:flex}.char[data-v-e8248077]{font-size:var(--font-sm);font-weight:var(--font-bold);color:var(--text-muted);transition:transform .35s,opacity .3s}.author-block.expanded .char-left[data-v-e8248077],.author-block:hover .char-left[data-v-e8248077]{opacity:0;transform:translate(-24px)}.author-block.expanded .char-right[data-v-e8248077],.author-block:hover .char-right[data-v-e8248077]{opacity:0;transform:translate(24px)}.author-block.expanded .author-chars[data-v-e8248077],.author-block:hover .author-chars[data-v-e8248077]{opacity:0;transform:scale(.8)}.author-expanded[data-v-e8248077]{opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px 12px 0 4px;transition:opacity .35s,transform .35s;display:flex;position:absolute;inset:0;transform:translate(-8px)}.author-block.expanded .author-expanded[data-v-e8248077],.author-block:hover .author-expanded[data-v-e8248077]{opacity:1;pointer-events:auto;transform:translate(0)}.author-name[data-v-e8248077]{font-size:var(--font-xs);font-weight:var(--font-bold);color:var(--text-primary)}.author-socials[data-v-e8248077]{gap:8px;display:flex}.social-link[data-v-e8248077]{width:22px;height:22px;color:var(--text-muted);font-size:var(--font-xxs);border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:flex}.social-link[data-v-e8248077]:hover{color:var(--text-primary);border-color:var(--border-light);background:var(--nav-hover-bg)}.sidebar[data-v-163cfeba]{--sidebar-surface:#f8fbff;--sidebar-surface-muted:#eef4ff;--sidebar-surface-hover:#eef4ff;--sidebar-active:#2563eb;--sidebar-active-hover:#1d4ed8;--sidebar-active-solid:#2563eb;--sidebar-active-solid-on:#fff;--sidebar-border:#e2e8f0;--sidebar-text:#0f172a;--sidebar-text-muted:#64748b;--sidebar-text-on:#fff;--sidebar-bg:var(--sidebar-surface);--nav-hover-bg:var(--sidebar-surface-hover);--nav-active-bg:var(--sidebar-active);--toolbar-highlight:#ffffff73;--bg-hover:var(--sidebar-surface-hover);--bg-tertiary:var(--sidebar-surface);--bg-active:var(--sidebar-surface-muted);--text-primary:var(--sidebar-text);--text-secondary:#334155;--text-muted:var(--sidebar-text-muted);--text-bright:var(--sidebar-text-on);--accent:#2563eb;--accent-cyan:#2563eb;--accent-warm:#1d4ed8;--success:#16a34a;--accent-text-on:var(--sidebar-text-on);--border-light:var(--sidebar-border);--border-accent:#bfdbfe;--gradient-accent:linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);-webkit-user-select:none;user-select:none;z-index:50;background:var(--sidebar-surface);border-right:1px solid var(--sidebar-border);width:256px;height:100vh;font-family:var(--font-family-base);flex-shrink:0;position:relative;overflow:hidden}html.dark .sidebar,.sidebar.theme-dark[data-v-163cfeba]{--sidebar-surface:#0b1120;--sidebar-surface-muted:#0f172a;--sidebar-surface-hover:#172033;--sidebar-active:#e5e7eb;--sidebar-active-hover:#f8fafc;--sidebar-active-solid:#f3f4f6;--sidebar-active-solid-on:#0b1120;--sidebar-border:#1e293b;--sidebar-text:#f3f4f6;--sidebar-text-muted:#8f98a6;--sidebar-text-on:#0b1120;--sidebar-shadow:#00000057;--toolbar-highlight:#ffffff1a;--bg-hover:var(--sidebar-surface-hover);--bg-tertiary:var(--sidebar-surface-muted);--bg-active:var(--sidebar-surface-muted);--text-primary:var(--sidebar-text);--text-secondary:#c8cdd5;--text-muted:var(--sidebar-text-muted);--text-bright:#fff;--accent:#e5e7eb;--accent-cyan:#cbd5e1;--accent-warm:#d1d5db;--success:#a7f3d0;--border-light:var(--sidebar-border);--border-accent:#6b7280;--gradient-accent:linear-gradient(180deg, #f3f4f6, #cbd5e1);background:linear-gradient(180deg, #ffffff05, transparent 34%), var(--sidebar-surface)}.sidebar-scroll[data-v-163cfeba]{background:var(--sidebar-surface);flex-direction:column;width:100%;min-width:0;height:100%;padding:16px 0 12px;display:flex;position:relative;overflow:hidden auto}.sidebar.theme-dark .sidebar-scroll[data-v-163cfeba],html.dark .sidebar .sidebar-scroll{background:linear-gradient(180deg, #ffffff05, transparent 36%), var(--sidebar-surface)}.sidebar-top[data-v-163cfeba]{flex:auto;min-height:0;padding:0 16px 12px;overflow:hidden auto}.sidebar-head[data-v-163cfeba]{border-bottom:1px solid var(--sidebar-border);align-items:center;gap:8px;min-height:54px;margin:0 0 14px;padding:0 0 12px;display:flex}.sidebar[data-v-163cfeba] .logo-block{flex:auto;gap:8px;min-width:0;height:42px;margin:0;padding:0}.sidebar[data-v-163cfeba] .logo-block:hover .logo-img,.sidebar[data-v-163cfeba] .logo-block:hover .logo-square{border-radius:14px;animation:none}.canvas-header[data-v-163cfeba]{box-sizing:border-box;border:1px solid var(--border-accent);background:radial-gradient(circle at 16% 0%, var(--toolbar-glow,transparent), transparent 42%), linear-gradient(135deg, var(--bg-active), #4cd7f60b), var(--bg-tertiary);width:100%;box-shadow:inset 0 1px 0 var(--toolbar-highlight), 0 12px 26px #0000001f;border-radius:20px;margin:2px 0 14px;padding:10px}.canvas-title-box[data-v-163cfeba]{align-items:center;gap:8px;height:50px;display:flex}.canvas-title-icon[data-v-163cfeba]{border:1px solid var(--border-accent);background:var(--bg-active);width:34px;height:34px;color:var(--accent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.canvas-title-icon svg[data-v-163cfeba]{fill:none;stroke:currentColor;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.canvas-title-copy[data-v-163cfeba]{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex;overflow:hidden}.ch-meta-row[data-v-163cfeba]{align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.ch-kicker[data-v-163cfeba]{min-width:0;font-size:var(--font-2xs);font-weight:var(--font-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;flex:1;line-height:1;overflow:hidden}.canvas-save-state[data-v-163cfeba]{border:1px solid var(--border-light);background:var(--bg-tertiary);max-width:58px;color:var(--text-muted);font-size:var(--font-2xs);font-weight:var(--font-bold);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;flex-shrink:0;padding:3px 6px;line-height:1;overflow:hidden}.canvas-save-state.saving[data-v-163cfeba]{border-color:color-mix(in srgb, var(--busy) 55%, transparent);color:var(--busy)}.canvas-action-row[data-v-163cfeba]{flex-direction:row;align-items:center;gap:8px;width:100%;margin-top:10px;display:flex}.ch-btn[data-v-163cfeba]{border:1px solid var(--border-light);background:var(--bg-tertiary);min-width:0;height:40px;min-height:40px;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:var(--font-sm);border-radius:14px;flex:1;justify-content:center;align-items:center;gap:6px;padding:0 11px;transition:color .15s,background .15s,border-color .15s,transform .15s;display:flex}.ch-btn[data-v-163cfeba]:hover{border-color:var(--border-accent);background:var(--nav-hover-bg);color:var(--text-primary);transform:translateY(-1px)}.ch-btn.ghost[data-v-163cfeba]{background:#ffffff06}.ch-btn.accent[data-v-163cfeba]{color:var(--accent-text-on);background:var(--gradient-accent);box-shadow:0 10px 22px #d0bcff29}.ch-btn.accent[data-v-163cfeba]:hover{filter:brightness(1.05)}.ch-btn[data-v-163cfeba]:disabled{opacity:.4;cursor:not-allowed;transform:none}.ch-title[data-v-163cfeba]{min-width:0;font-size:var(--font-sm);font-weight:var(--font-bold);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;line-height:var(--line-tight);flex:1;margin:0;overflow:hidden}.ch-icon[data-v-163cfeba]{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.ch-icon svg[data-v-163cfeba]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.saving-spin[data-v-163cfeba]{animation:.9s linear infinite sidebar-spin-163cfeba}.ch-label[data-v-163cfeba]{white-space:nowrap;max-width:64px;font-size:var(--font-xs);font-weight:var(--font-bold);text-overflow:ellipsis;overflow:hidden}@keyframes sidebar-spin-163cfeba{to{transform:rotate(360deg)}}@media (height<=760px){.sidebar-scroll[data-v-163cfeba]{padding-top:10px;padding-bottom:8px}.canvas-header[data-v-163cfeba]{margin-bottom:10px}.ch-btn[data-v-163cfeba]{height:38px;min-height:38px}}.nav-standalone[data-v-163cfeba]{gap:var(--space-1,4px);padding:var(--space-1,4px) 0;flex-direction:column;display:flex}.nav-section-title[data-v-163cfeba]{padding:var(--space-2,8px) var(--space-3,12px) var(--space-2,8px);font-size:var(--font-xs,12px);font-weight:var(--font-bold,700);letter-spacing:0;text-transform:uppercase;color:var(--sidebar-text-muted,var(--color-text-muted));-webkit-user-select:none;user-select:none;line-height:1}.sidebar.theme-light[data-v-163cfeba] .nav-item:hover,.sidebar.theme-light[data-v-163cfeba] .side-action:hover{color:#2563eb;background:#f7faff}.sidebar.theme-light[data-v-163cfeba] .nav-item.active,.sidebar.theme-light[data-v-163cfeba] .side-action.active{color:#2563eb;background:#eef4ff;box-shadow:inset 0 0 0 1px #2563eb14}.sidebar.theme-light[data-v-163cfeba] .nav-item.active .nav-icon,.sidebar.theme-light[data-v-163cfeba] .side-action.active .action-icon{color:#2563eb}.sidebar.theme-light[data-v-163cfeba] .side-action.active .action-badge.green{color:#2563eb;background:#f7faff;border-color:#bfdbfe}.sidebar.theme-dark[data-v-163cfeba] .nav-item.active,html.dark .sidebar .nav-item.active{background:var(--sidebar-surface-muted);border-left-color:#f3f4f6;box-shadow:inset 0 0 0 1px #ffffff06}.sidebar.theme-dark[data-v-163cfeba] .side-action.active,html.dark .sidebar .side-action.active{background:var(--sidebar-surface-muted);box-shadow:inset 0 0 0 1px #ffffff06}.sidebar.theme-dark[data-v-163cfeba] .nav-item:hover,.sidebar.theme-dark[data-v-163cfeba] .side-action:hover,html.dark .sidebar .nav-item:hover,html.dark .sidebar .side-action:hover{background:var(--sidebar-surface-hover)}.sidebar-bottom[data-v-163cfeba]{flex-shrink:0;margin-top:auto;padding:0 16px;overflow:visible}.sidebar-author[data-v-163cfeba]{flex-shrink:0;margin-top:0}.sidebar[data-v-163cfeba] .author-block{border-top:1px solid var(--sidebar-border);height:52px;margin-top:6px}.sidebar-bottom.canvas-compact[data-v-163cfeba]{opacity:.45;filter:grayscale(.5);max-height:38px;transition:max-height .3s,opacity .25s,filter .25s;overflow:hidden}.sidebar-bottom.canvas-compact[data-v-163cfeba]:hover{opacity:1;filter:grayscale(0);max-height:300px}.sidebar-author.canvas-compact[data-v-163cfeba]{opacity:0;border-top-width:0;max-height:0;margin-top:0;padding-top:0;transition:max-height .3s,opacity .25s,padding .3s,margin .3s;overflow:hidden}.sidebar-author.canvas-compact[data-v-163cfeba]:hover{opacity:1;border-top-width:1px;max-height:80px;margin-top:8px;padding-top:10px}.phone-binding-banner[data-v-68b05012]{border-bottom:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));background:color-mix(in srgb, var(--accent) 7%, var(--bg-secondary));min-height:46px;color:var(--text-secondary);font-size:var(--font-sm,14px);align-items:center;gap:9px;padding:7px 16px;display:flex}.phone-binding-banner>.material-symbols-outlined[data-v-68b05012]{color:var(--accent);flex:none;font-size:19px}.phone-binding-banner-copy[data-v-68b05012]{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.phone-binding-banner button[data-v-68b05012]{border:1px solid color-mix(in srgb, var(--accent) 32%, var(--border));border-radius:var(--radius-md,8px);background:var(--bg-secondary);color:var(--accent);font:inherit;font-weight:var(--font-semibold,600);cursor:pointer;flex:none;margin-left:auto;padding:6px 11px;transition:background .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1)}.phone-binding-banner button[data-v-68b05012]:hover{border-color:var(--accent);background:var(--bg-hover)}.phone-binding-banner button[data-v-68b05012]:focus-visible,.phone-binding-dialog button[data-v-68b05012]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.phone-binding-overlay[data-v-68b05012]{z-index:400;background:#0f172a6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.phone-binding-dialog[data-v-68b05012]{border:1px solid var(--border);border-radius:var(--radius-lg,12px);background:var(--bg-secondary);width:min(100%,430px);color:var(--text-primary);padding:28px;position:relative;box-shadow:0 20px 52px #0f172a38}.phone-binding-dialog-close[data-v-68b05012]{border-radius:var(--radius-md,8px);width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:14px;right:14px}.phone-binding-dialog-close[data-v-68b05012]:hover{background:var(--bg-hover);color:var(--text-primary)}.phone-binding-dialog-close .material-symbols-outlined[data-v-68b05012]{font-size:20px}.phone-binding-dialog-icon[data-v-68b05012]{border-radius:var(--radius-md,8px);background:color-mix(in srgb, var(--accent) 12%, var(--bg-secondary));width:48px;height:48px;color:var(--accent);place-items:center;margin-bottom:18px;display:grid}.phone-binding-dialog-icon .material-symbols-outlined[data-v-68b05012]{font-size:25px}.phone-binding-dialog-copy h2[data-v-68b05012]{font-size:20px;font-weight:var(--font-bold,700);margin:0;line-height:1.35}.phone-binding-dialog-copy p[data-v-68b05012]{max-width:48ch;color:var(--text-secondary);font-size:var(--font-sm,14px);margin:10px 0 0;line-height:1.7}.phone-binding-dialog-actions[data-v-68b05012]{justify-content:flex-end;gap:10px;margin-top:26px;display:flex}.phone-binding-dialog-actions button[data-v-68b05012]{border-radius:var(--radius-md,8px);min-height:40px;font-family:inherit;font-size:var(--font-sm,14px);font-weight:var(--font-semibold,600);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:8px 16px;display:inline-flex}.phone-binding-dialog-actions .secondary[data-v-68b05012]{border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary)}.phone-binding-dialog-actions .primary[data-v-68b05012]{background:var(--button-primary-muted-bg);color:var(--button-primary-muted-text);border:1px solid #0000}.phone-binding-dialog-actions .primary .material-symbols-outlined[data-v-68b05012]{font-size:18px}.binding-banner-enter-active[data-v-68b05012],.binding-banner-leave-active[data-v-68b05012],.binding-dialog-enter-active[data-v-68b05012],.binding-dialog-leave-active[data-v-68b05012]{transition:opacity .18s cubic-bezier(.22,1,.36,1)}.binding-dialog-enter-active .phone-binding-dialog[data-v-68b05012],.binding-dialog-leave-active .phone-binding-dialog[data-v-68b05012]{transition:transform .18s cubic-bezier(.22,1,.36,1)}.binding-banner-enter-from[data-v-68b05012],.binding-banner-leave-to[data-v-68b05012],.binding-dialog-enter-from[data-v-68b05012],.binding-dialog-leave-to[data-v-68b05012]{opacity:0}.binding-dialog-enter-from .phone-binding-dialog[data-v-68b05012],.binding-dialog-leave-to .phone-binding-dialog[data-v-68b05012]{transform:translateY(10px)}@media (width<=560px){.phone-binding-banner-copy[data-v-68b05012]{white-space:normal}.phone-binding-dialog[data-v-68b05012]{padding:22px}.phone-binding-dialog-actions[data-v-68b05012]{flex-direction:column-reverse}.phone-binding-dialog-actions button[data-v-68b05012]{width:100%}}@media (prefers-reduced-motion:reduce){.binding-banner-enter-active[data-v-68b05012],.binding-banner-leave-active[data-v-68b05012],.binding-dialog-enter-active[data-v-68b05012],.binding-dialog-leave-active[data-v-68b05012],.binding-dialog-enter-active .phone-binding-dialog[data-v-68b05012],.binding-dialog-leave-active .phone-binding-dialog[data-v-68b05012]{transition-duration:1ms}}.app-shell[data-v-e1d3d28d]{background:radial-gradient(circle at 20% 0%, #ffffff29, transparent 34%), radial-gradient(circle at 100% 12%, #4cd7f61a, transparent 32%), var(--stage-bg);width:100vw;height:100vh;color:var(--text-primary);display:flex;overflow:hidden}.stage[data-v-e1d3d28d]{background:var(--bg-primary);min-width:0;box-shadow:none;border:0;border-radius:0;flex-direction:column;flex:1;margin:0;display:flex;position:relative;overflow:hidden}.stage-content[data-v-e1d3d28d]{flex:1;width:100%;min-height:0;position:relative}.stage[data-v-e1d3d28d] .nano-monitor{z-index:40;position:absolute;top:14px;right:16px}@media (width<=900px){.stage[data-v-e1d3d28d]{border-radius:0}}.cloud-storage-notice-region[data-v-f3811b58]{right:var(--space-4,16px);z-index:9998;pointer-events:none;max-width:min(360px,100vw - 32px);position:fixed;bottom:100px}.cloud-storage-notice[data-v-f3811b58]{padding:var(--space-3,12px) var(--space-4,16px);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-elevated);color:var(--color-text-primary);box-shadow:var(--shadow-md);font-size:var(--font-sm);line-height:var(--line-relaxed);overflow-wrap:anywhere;margin:0}.cloud-storage-notice-enter-active[data-v-f3811b58],.cloud-storage-notice-leave-active[data-v-f3811b58]{transition:opacity .18s ease-out}.cloud-storage-notice-enter-from[data-v-f3811b58],.cloud-storage-notice-leave-to[data-v-f3811b58]{opacity:0}@media (prefers-reduced-motion:reduce){.cloud-storage-notice-enter-active[data-v-f3811b58],.cloud-storage-notice-leave-active[data-v-f3811b58]{transition:none}}.system-popup-overlay[data-v-a036a56b]{z-index:100200;background:var(--color-overlay,#0f172a7a);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.system-popup[data-v-a036a56b]{background:var(--bg-secondary,var(--color-surface));width:min(600px,100%);min-height:0;max-height:calc(100dvh - 48px);color:var(--text-primary,var(--color-text-primary));border:1px solid var(--border-default,var(--color-border));border-radius:var(--radius-lg,16px);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.system-popup-header[data-v-a036a56b]{border-bottom:1px solid var(--border-light,var(--color-border-light));flex-shrink:0;padding:24px 28px 20px}.system-popup-meta[data-v-a036a56b]{color:var(--text-muted,var(--color-text-muted));font-size:var(--font-xs);justify-content:space-between;align-items:center;gap:12px;line-height:1.5;display:flex}.system-popup-category[data-v-a036a56b]{color:var(--accent,var(--color-primary));align-items:center;gap:8px;display:inline-flex}.system-popup-category svg[data-v-a036a56b]{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.system-popup-header h2[data-v-a036a56b]{font-size:var(--font-xl);font-weight:var(--font-semibold);line-height:var(--line-snug,1.3);overflow-wrap:anywhere;max-height:24vh;margin:16px 0 0;overflow:auto}.system-popup-header h2[data-v-a036a56b]:focus{outline:none}.system-popup-header h2[data-v-a036a56b]:focus-visible{outline:none!important}.system-popup-body[data-v-a036a56b]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-default) transparent;min-height:0;font-size:var(--font-sm);overflow-wrap:anywhere;color:var(--text-secondary,var(--color-text-secondary));padding:24px 28px;line-height:1.8;overflow:auto}.system-popup-body[data-v-a036a56b]:focus-visible{outline:2px solid var(--accent,var(--color-primary));outline-offset:-3px}.system-popup-body[data-v-a036a56b] p{margin:0 0 1em}.system-popup-body[data-v-a036a56b]>:last-child{margin-bottom:0}.system-popup-body[data-v-a036a56b] h1,.system-popup-body[data-v-a036a56b] h2,.system-popup-body[data-v-a036a56b] h3{font-size:var(--font-lg);color:var(--text-primary);margin:1.2em 0 .5em;font-weight:600;line-height:1.5}.system-popup-body[data-v-a036a56b] ul,.system-popup-body[data-v-a036a56b] ol{margin:.8em 0;padding-left:1.5em}.system-popup-body[data-v-a036a56b] li{margin:.3em 0}.system-popup-body[data-v-a036a56b] a{color:var(--accent,var(--color-primary));text-underline-offset:3px;text-decoration:underline}.system-popup-body[data-v-a036a56b] img{border-radius:var(--radius-sm);max-width:100%;height:auto;margin:1em 0;display:block}.system-popup-body[data-v-a036a56b] table{border-collapse:collapse;width:100%;margin:1em 0}.system-popup-body[data-v-a036a56b] th,.system-popup-body[data-v-a036a56b] td{border:1px solid var(--border-default);text-align:left;padding:8px 10px}.system-popup-body[data-v-a036a56b] blockquote{border-left:1px solid var(--accent);background:var(--bg-input);margin:1em 0;padding:8px 12px}.system-popup-body[data-v-a036a56b] pre{background:var(--bg-input);border-radius:var(--radius-xs);padding:12px;overflow:auto}.system-popup-body[data-v-a036a56b] code{font-family:var(--font-mono);font-size:.95em}.system-popup-footer[data-v-a036a56b]{border-top:1px solid var(--border-light,var(--color-border-light));flex-shrink:0;padding:16px 28px 24px}.system-popup-note[data-v-a036a56b]{font-size:var(--font-xs);color:var(--text-muted,var(--color-text-muted));margin:0 0 16px;line-height:1.6}.system-popup-error[data-v-a036a56b]{font-size:var(--font-xs);color:var(--error,var(--color-danger));margin:0 0 12px;line-height:1.6}.system-popup-actions[data-v-a036a56b]{align-items:center;gap:10px;display:flex}.system-popup-count[data-v-a036a56b]{color:var(--text-muted);font-size:var(--font-xs);margin-right:auto;line-height:1.5}.popup-button[data-v-a036a56b]{border-radius:var(--radius-sm);border:1px solid var(--border-default,var(--color-border));min-height:40px;font:inherit;font-size:var(--font-sm);cursor:pointer;padding:8px 18px;font-weight:500}.popup-button.secondary[data-v-a036a56b]{color:var(--text-secondary,var(--color-text-secondary));background:0 0}.popup-button.secondary[data-v-a036a56b]:hover:not(:disabled){background:var(--bg-hover,var(--color-surface-soft));border-color:var(--text-muted)}.popup-button.primary[data-v-a036a56b]{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.popup-button.primary[data-v-a036a56b]:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.popup-button[data-v-a036a56b]:focus-visible{outline:2px solid var(--accent,var(--color-primary));outline-offset:3px}.popup-button[data-v-a036a56b]:disabled{opacity:.6;cursor:wait}@media (width<=600px){.system-popup-overlay[data-v-a036a56b]{padding:16px}.system-popup[data-v-a036a56b]{max-height:calc(100dvh - 32px)}.system-popup-header[data-v-a036a56b],.system-popup-body[data-v-a036a56b]{padding:20px}.system-popup-footer[data-v-a036a56b]{padding:16px 20px 20px}.system-popup-header h2[data-v-a036a56b]{font-size:var(--font-lg)}.system-popup-actions[data-v-a036a56b]{flex-wrap:wrap}.system-popup-count[data-v-a036a56b]{flex:1 0 100%}.popup-button[data-v-a036a56b]{flex:1}}.no-update-toast{z-index:9999;color:#10b981;font-size:var(--font-sm,14px);pointer-events:none;background:#10b9811f;border:1px solid #10b9814d;border-radius:12px;padding:10px 24px;font-weight:600;position:fixed;bottom:32px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #10b98126}.toast-fade-enter-active{transition:opacity .2s,transform .2s}.toast-fade-leave-active{transition:opacity .3s,transform .3s}.toast-fade-enter-from,.toast-fade-leave-to{opacity:0;transform:translate(-50%)translateY(12px)}.update-overlay{z-index:9999;-webkit-backdrop-filter:blur(12px);background:radial-gradient(circle at 50% 42%,#4cd7f624,#0000 30%),#08080cad;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.update-dialog{border:1px solid color-mix(in srgb, var(--border-accent) 54%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-secondary,#1a1722) 94%, transparent), var(--bg-secondary,#1a1722)), var(--bg-secondary,#1a1722);width:min(92vw,520px);color:var(--text-primary);border-radius:18px;position:relative;overflow:hidden;box-shadow:0 28px 80px #0000007a,inset 0 1px #ffffff14}.update-hero{background:radial-gradient(circle at 18% 10%, color-mix(in srgb, var(--accent-cyan,#4cd7f6) 24%, transparent), transparent 36%), linear-gradient(135deg, color-mix(in srgb, var(--bg-active) 86%, transparent), transparent);border-bottom:1px solid var(--border-light,#ffffff0f);min-height:104px;padding:22px 24px 0;position:relative}.update-icon{background:var(--gradient-accent);width:58px;height:58px;box-shadow:0 14px 34px color-mix(in srgb, var(--accent-cyan,#4cd7f6) 30%, transparent);border-radius:16px;place-items:center;display:grid}.update-icon span{border:3px solid #0b0e14;border-top-color:#0000;border-radius:50%;width:24px;height:24px;position:relative}.update-icon span:after{content:"";border-top:3px solid #0b0e14;border-right:3px solid #0b0e14;width:8px;height:8px;position:absolute;top:0;right:-4px;transform:rotate(30deg)}.update-close{border:1px solid var(--border-light,#ffffff14);background:color-mix(in srgb, var(--bg-hover,#ffffff0f) 88%, transparent);width:34px;height:34px;color:var(--text-muted);cursor:pointer;border-radius:10px;font-size:22px;line-height:1;transition:background .16s,color .16s,transform .16s;position:absolute;top:18px;right:18px}.update-close:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);transform:translateY(-1px)}.update-close:disabled{cursor:not-allowed;opacity:.45}.update-header{padding:22px 28px 0}.update-title-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.update-badge{background:var(--gradient-accent);color:#0b0e14;letter-spacing:0;border-radius:999px;padding:4px 9px;font-size:10px;font-weight:800;line-height:1}.update-badge.force{color:#f59e0b;background:#f59e0b24;border:1px solid #f59e0b57}.update-header h2{max-width:100%;color:var(--text-primary);overflow-wrap:anywhere;margin:0;font-size:22px;font-weight:760;line-height:1.25}.update-version{font-size:var(--font-sm,14px);color:var(--text-muted);margin:8px 0 0;line-height:1.5}.update-body{padding:22px 28px 0}.update-log-head{color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:12px;font-weight:700;display:flex}.update-log-head span:last-child{text-align:right;font-weight:500}.update-log{border:1px solid var(--border-light,#ffffff0f);border-radius:var(--radius-lg,12px);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-input,#ffffff0a) 90%, transparent), var(--bg-input,#ffffff0a));max-height:min(34vh,260px);color:var(--text-secondary);font-family:inherit;font-size:var(--font-sm,14px);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:16px 18px;line-height:1.75;overflow:auto}.download-msg{border:1px solid var(--border-light,#ffffff0f);background:var(--bg-hover,#ffffff0f);min-height:22px;color:var(--accent-cyan);font-size:var(--font-sm,14px);text-align:center;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin:18px 28px 0;padding:10px 12px;font-weight:650;display:flex}.download-msg.active{color:var(--text-primary)}.download-spinner{border:2px solid color-mix(in srgb, var(--accent-cyan,#4cd7f6) 26%, transparent);border-top-color:var(--accent-cyan,#4cd7f6);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite update-spin}.update-footer{justify-content:flex-end;gap:10px;padding:24px 28px 28px;display:flex}.update-btn{border:1px solid var(--border);background:var(--bg-hover);min-width:112px;min-height:40px;color:var(--text-secondary);font-family:inherit;font-size:var(--font-sm,14px);cursor:pointer;border-radius:10px;padding:10px 18px;font-weight:700;text-decoration:none;transition:background .16s,color .16s,transform .16s,filter .16s}.update-btn:hover:not(:disabled){background:var(--border);color:var(--text-primary);transform:translateY(-1px)}.update-btn:disabled{cursor:not-allowed;opacity:.62}.update-btn.primary{background:var(--gradient-accent);color:#0b0e14;box-shadow:0 12px 24px color-mix(in srgb, var(--accent-cyan,#4cd7f6) 18%, transparent);border-color:#0000}.update-btn.primary:hover:not(:disabled){filter:brightness(1.06)}.update-fade-enter-active,.update-fade-leave-active{transition:opacity .24s}.update-fade-enter-active .update-dialog,.update-fade-leave-active .update-dialog{transition:transform .24s,opacity .24s}.update-fade-enter-from,.update-fade-leave-to{opacity:0}.update-fade-enter-from .update-dialog{opacity:0;transform:translateY(16px)scale(.98)}.update-fade-leave-to .update-dialog{opacity:0;transform:translateY(8px)scale(.99)}@keyframes update-spin{to{transform:rotate(360deg)}}@media (width<=560px){.update-overlay{align-items:flex-end;padding:16px}.update-dialog{border-radius:16px;width:100%}.update-hero{min-height:88px;padding:18px 20px 0}.update-icon{border-radius:var(--radius-lg,12px);width:50px;height:50px}.update-header,.update-body{padding-inline:20px}.download-msg{margin-inline:20px}.update-footer{flex-direction:column-reverse;padding:20px}.update-btn{width:100%}}.desktop-download[data-v-d4079a29]{border:1px solid var(--border);min-width:0;color:var(--text-primary);border-radius:12px;margin-top:24px}.desktop-download-entry[data-v-d4079a29]{border-radius:inherit;min-width:0;min-height:52px;color:inherit;align-items:center;gap:10px;padding:10px 14px;text-decoration:none;display:flex}a.desktop-download-entry[data-v-d4079a29]:hover{background:var(--bg-hover);color:var(--accent)}.download-icon[data-v-d4079a29],.download-arrow[data-v-d4079a29]{color:var(--accent);flex:none;font-size:20px}.download-arrow[data-v-d4079a29]{font-size:16px}.download-copy[data-v-d4079a29]{flex-wrap:wrap;flex:1;justify-content:space-between;align-items:baseline;gap:2px 12px;min-width:0;line-height:1.5;display:flex}.download-title[data-v-d4079a29]{font-size:var(--font-sm,14px);overflow-wrap:anywhere;font-weight:600}.download-meta[data-v-d4079a29]{color:var(--text-secondary);overflow-wrap:anywhere;font-size:12px}.download-status-copy[data-v-d4079a29]{flex-direction:column;align-items:flex-start}.download-retry[data-v-d4079a29]{min-height:36px;color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:6px 8px;font-size:13px}.download-retry[data-v-d4079a29]:hover{background:var(--bg-hover)}a.desktop-download-entry[data-v-d4079a29]:focus-visible,.download-retry[data-v-d4079a29]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.desktop-download-compact[data-v-d4079a29]{--accent:var(--color-primary);--border:var(--color-border);--bg-hover:var(--color-primary-light);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);background:var(--color-bg-card);border-radius:8px;flex:0 auto;max-width:100%;margin-top:0}.desktop-download-compact .desktop-download-entry[data-v-d4079a29]{min-height:38px;padding:8px 12px}.desktop-download-compact .download-title[data-v-d4079a29]{font-size:13px;font-weight:500}.desktop-download-compact .download-icon[data-v-d4079a29]{font-size:18px}.desktop-download-compact .download-arrow[data-v-d4079a29]{display:none}.auth-page[data-v-dbd590c3]{background:var(--color-bg-page);min-height:100vh;color:var(--color-text-primary);grid-template-columns:minmax(0,1fr) 520px;display:grid;overflow:hidden}.auth-hero[data-v-dbd590c3]{background:linear-gradient(135deg, #ffffffb8, #ffffff61), var(--bg-primary);min-width:0;position:relative;overflow:hidden}.auth-hero[data-v-dbd590c3]:before{content:"";background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);opacity:.7;pointer-events:none;background-size:42px 42px;position:absolute;inset:0}.auth-hero[data-v-dbd590c3]:after{content:"";border:1px solid var(--color-border-light);pointer-events:none;border-radius:999px;width:760px;height:760px;animation:9s ease-in-out infinite alternate orbitGlow-dbd590c3;position:absolute;top:80px;right:-160px;box-shadow:inset 0 0 80px #0000000a,0 0 120px #0000000f}.particle-canvas[data-v-dbd590c3]{z-index:1;cursor:crosshair;position:absolute;inset:0}.brand-top[data-v-dbd590c3]{z-index:2;align-items:center;gap:12px;padding:40px 48px;display:flex;position:relative}.brand-top img[data-v-dbd590c3]{border-radius:8px;flex-shrink:0;width:36px;height:36px}.brand-name[data-v-dbd590c3]{font-size:var(--font-md);font-weight:var(--font-bold);letter-spacing:.18em;text-transform:uppercase;color:var(--text-primary);white-space:nowrap;margin:0}.hero-copy[data-v-dbd590c3]{z-index:2;max-width:640px;position:absolute;bottom:56px;left:58px}.hero-copy h1[data-v-dbd590c3]{font-size:var(--font-3xl);line-height:var(--line-tight);font-weight:var(--font-semibold);letter-spacing:0;color:color-mix(in srgb, var(--text-primary) 84%, var(--text-secondary) 16%);margin:0}.hero-copy>p[data-v-dbd590c3]{width:460px;color:var(--text-secondary);font-size:var(--font-sm);line-height:var(--line-relaxed);margin:18px 0 34px}.feature-card[data-v-dbd590c3]{border:1px solid var(--border);background:var(--bg-secondary);border-radius:0;flex:1;min-width:0;padding:16px;transition:border-color .2s}.feature-card[data-v-dbd590c3]:hover{border-color:var(--text-primary)}.feature-card b[data-v-dbd590c3]{width:28px;height:28px;color:var(--text-primary);justify-content:center;align-items:center;margin-bottom:8px;display:inline-flex}.feature-card b .material-symbols-outlined[data-v-dbd590c3]{font-size:var(--font-xl);transition:transform .2s}.feature-card:hover b .material-symbols-outlined[data-v-dbd590c3]{transform:translateY(-2px)}.feature-card strong[data-v-dbd590c3],.feature-card span[data-v-dbd590c3]{display:block}.feature-card strong[data-v-dbd590c3]{font-size:var(--font-xs);font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--text-primary);margin-bottom:4px}.feature-card span[data-v-dbd590c3]{color:var(--text-secondary);font-size:var(--font-xs);line-height:var(--line-normal)}.auth-panel-wrap[data-v-dbd590c3]{z-index:3;background:var(--bg-secondary);border-left:1px solid var(--border);justify-content:center;align-items:flex-start;padding:18vh 44px 44px;display:flex;position:relative}.auth-card[data-v-dbd590c3]{width:100%;max-width:440px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0 20px;animation:.55s cubic-bezier(.16,1,.3,1) both cardPop-dbd590c3}.auth-tabs[data-v-dbd590c3]{border-bottom:1px solid var(--color-border-light);background:0 0;border-radius:0;gap:32px;margin-bottom:36px;padding:0;display:flex}.auth-tabs button[data-v-dbd590c3]{height:40px;color:var(--color-text-secondary);font-size:var(--font-sm);font-weight:var(--font-medium);letter-spacing:0;text-transform:none;cursor:pointer;background:0 0;border:0;border-radius:0;flex:none;padding:0 2px;transition:color .2s;position:relative}.auth-tabs button[data-v-dbd590c3]:hover{color:var(--color-text-primary)}.auth-tabs button.active[data-v-dbd590c3]{color:var(--color-text-primary);font-weight:var(--font-semibold);box-shadow:none;background:0 0}.auth-tabs button.active[data-v-dbd590c3]:after{content:"";background:var(--color-text-primary);border-radius:1px;height:2px;display:block;position:absolute;bottom:-1px;left:0;right:0}.auth-body[data-v-dbd590c3]{min-height:380px;position:relative}.auth-card h2[data-v-dbd590c3]{font-size:var(--font-2xl);font-weight:var(--font-bold);letter-spacing:0;line-height:var(--line-tight);color:var(--text-primary);margin:0 0 8px}.auth-card>p[data-v-dbd590c3]{color:var(--text-secondary);font-size:var(--font-sm);line-height:var(--line-normal);margin:0 0 36px}.auth-field label[data-v-dbd590c3]{color:var(--text-primary);font-size:var(--font-sm);font-weight:var(--font-bold);margin-bottom:8px;display:block}.password-wrap[data-v-dbd590c3]{position:relative}.password-wrap input[data-v-dbd590c3]{border:1px solid var(--border-input);width:100%;height:50px;color:color-mix(in srgb, var(--text-primary) 84%, var(--text-secondary) 16%);background:#ffffffc7;border-radius:14px;outline:none;padding:0 44px 0 16px;transition:all .25s}.password-wrap input[data-v-dbd590c3]:focus{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 0 0 4px #7c3aed1f}.toggle-pw[data-v-dbd590c3]{color:var(--text-muted);cursor:pointer;background:0 0;border:0;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.toggle-pw[data-v-dbd590c3]:hover{color:var(--text-primary)}.auth-field input[type=text][data-v-dbd590c3],.auth-field input[type=email][data-v-dbd590c3]{border:1px solid var(--border-input);width:100%;height:50px;color:color-mix(in srgb, var(--text-primary) 84%, var(--text-secondary) 16%);background:#ffffffc7;border-radius:14px;outline:none;padding:0 16px;transition:all .25s}.auth-field input[type=text][data-v-dbd590c3]:focus,.auth-field input[type=email][data-v-dbd590c3]:focus{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 0 0 4px #7c3aed1f}.terms-row[data-v-dbd590c3]{color:var(--text-secondary);font-size:var(--font-sm);cursor:pointer;align-items:center;gap:8px;margin-bottom:20px;display:flex}.terms-row input[data-v-dbd590c3]{margin:0}.msg[data-v-dbd590c3]{font-size:var(--font-sm);font-weight:var(--font-semibold);line-height:var(--line-normal);border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;margin:0 0 14px;padding:11px 14px;display:flex}.msg-icon[data-v-dbd590c3]{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:18px;height:18px}.msg-text[data-v-dbd590c3]{flex:1;min-width:0}.msg-error[data-v-dbd590c3]{color:var(--error);background:color-mix(in srgb, var(--error) 12%, transparent);border-color:color-mix(in srgb, var(--error) 32%, transparent)}.msg-success[data-v-dbd590c3]{color:var(--success);background:color-mix(in srgb, var(--success) 12%, transparent);border-color:color-mix(in srgb, var(--success) 32%, transparent)}.msg-pop-enter-active[data-v-dbd590c3],.msg-pop-leave-active[data-v-dbd590c3]{transition:opacity .22s,transform .22s}.msg-pop-enter-from[data-v-dbd590c3],.msg-pop-leave-to[data-v-dbd590c3]{opacity:0;transform:translateY(-6px)}.submit-btn[data-v-dbd590c3]{background:var(--color-primary);width:100%;height:46px;color:var(--color-text-inverse);font-size:var(--font-sm);font-weight:var(--font-semibold);letter-spacing:0;text-transform:none;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:8px;transition:opacity .18s,transform .15s;display:flex}.submit-btn[data-v-dbd590c3]:hover:not(:disabled){opacity:.88}.submit-btn[data-v-dbd590c3]:active:not(:disabled){transform:scale(.985)}.submit-btn[data-v-dbd590c3]:disabled{opacity:.45;cursor:not-allowed}.submit-btn span[data-v-dbd590c3]{margin:0}.result-card[data-v-dbd590c3]{border:1px solid var(--border);font-size:var(--font-sm);color:var(--text-secondary);background:#ffffff80;border-radius:14px;margin-top:16px;padding:14px}.token[data-v-dbd590c3]{word-break:break-all;margin-top:8px}@keyframes cardPop-dbd590c3{0%{opacity:0;filter:blur(8px);transform:translateY(28px)scale(.97)}60%{opacity:1;filter:blur()}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes floatCard-dbd590c3{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes orbitGlow-dbd590c3{0%{transform:translate(0,0)scale(1)}to{transform:translate(-24px,18px)scale(1.04)}}.auth-page[data-v-dbd590c3]{background:var(--color-bg-page);color:var(--color-text-primary);grid-template-columns:minmax(680px,1fr) minmax(440px,560px);transition:background .5s,color .4s;position:relative}.auth-page[data-v-dbd590c3]:before,.auth-page[data-v-dbd590c3]:after{content:"";pointer-events:none;position:absolute}.auth-page[data-v-dbd590c3]:before{background:radial-gradient(circle at 58% 18%,#fffffff2,#0000 28%),linear-gradient(115deg,#ffffffb8,#e6efff94);transition:background .7s,opacity .45s;inset:0}.auth-page[data-v-dbd590c3]:after{border:1px solid #ffffffe6;border-radius:999px;width:760px;height:760px;top:5%;right:8%;box-shadow:0 0 0 1px #7491d314,inset 0 0 80px #5f7eff0f}html.dark .auth-page{color:#e7e0ed;background:radial-gradient(circle at 64% 18%,#d0bcff2e,#0000 30%),radial-gradient(circle at 84% 72%,#4cd7f61a,#0000 28%),linear-gradient(135deg,#0b0e14 0%,#111827 48%,#090b10 100%)}html.dark .auth-page:before{background:radial-gradient(circle at 58% 18%,#ffffff14,#0000 28%),linear-gradient(115deg,#0f121cd6,#090b10c2)}html.dark .auth-page:after{border-color:#ffffff14;box-shadow:0 0 0 1px #d0bcff14,inset 0 0 80px #d0bcff14}.auth-actions[data-v-dbd590c3]{z-index:12;gap:14px;display:flex;position:fixed;top:42px;right:48px}.auth-actions button[data-v-dbd590c3]{border:1px solid var(--border);background:var(--bg-secondary);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;border-radius:999px;place-items:center;transition:background .18s,color .18s;display:grid}.auth-actions button[data-v-dbd590c3]:hover{background:var(--bg-hover);color:var(--text-primary)}.auth-actions .material-symbols-outlined[data-v-dbd590c3]{font-size:20px}html.dark .auth-actions button{color:#cbc3d7;background:#15121be0;border-color:#ffffff1f}html.dark .auth-actions button:hover{color:#f4ecff;background:#ffffff14}.auth-hero[data-v-dbd590c3]{z-index:1;background:linear-gradient(135deg,#ffffffa3,#eef4ff70),#f8fbff}.auth-hero[data-v-dbd590c3]:before{opacity:.55;background-image:linear-gradient(#6074a014 1px,#0000 1px),linear-gradient(90deg,#6074a014 1px,#0000 1px);background-size:44px 44px}html.dark .auth-hero{background:radial-gradient(circle at 38% 34%,#d0bcff29,#0000 26%),radial-gradient(circle at 72% 62%,#4cd7f61c,#0000 30%),linear-gradient(135deg,#070a10 0%,#10131d 48%,#090b12 100%)}html.dark .auth-hero:before{opacity:.58;background-image:linear-gradient(#d0bcff14 1px,#0000 1px),linear-gradient(90deg,#4cd7f60e 1px,#0000 1px)}.auth-hero[data-v-dbd590c3]:after{display:none}html.dark .auth-hero:after{background:radial-gradient(circle at 38% 38%,#d0bcff1f,#0000 28%),radial-gradient(circle at 62% 58%,#4cd7f614,#0000 34%);border:1px solid #d0bcff1f;border-radius:999px;width:760px;height:760px;display:block;top:76px;right:-180px;box-shadow:inset 0 0 96px #d0bcff14,0 0 140px #4cd7f614}.particle-canvas[data-v-dbd590c3]{cursor:default}.brand-top[data-v-dbd590c3]{color:var(--text-primary);padding:42px 48px}.brand-top img[data-v-dbd590c3]{border-radius:12px;width:48px;height:48px;box-shadow:0 16px 32px #4458ff3d}.brand-top strong[data-v-dbd590c3]{font-size:var(--font-lg);font-weight:var(--font-semibold);letter-spacing:0}.brand-top span[data-v-dbd590c3]{color:var(--text-secondary);font-size:var(--font-sm);letter-spacing:0}.hero-copy[data-v-dbd590c3]{bottom:176px;left:clamp(40px,6vw,86px)}.hero-copy h1[data-v-dbd590c3]{color:var(--text-primary);font-size:clamp(28px, 2.75vw, var(--font-3xl));line-height:var(--line-tight);font-weight:var(--font-semibold);letter-spacing:0}.hero-copy h1 span[data-v-dbd590c3]{color:var(--text-primary);background:0 0;margin-left:10px}.hero-copy>p[data-v-dbd590c3]{color:#6d7893;width:min(520px,48vw);font-size:var(--font-sm);line-height:var(--line-relaxed);margin:12px 0 20px}html.dark .hero-copy>p{color:#9ca3af}.feature-row[data-v-dbd590c3]{gap:clamp(16px,3vw,48px);display:flex}.hero-features[data-v-dbd590c3]{z-index:2;align-items:start;position:absolute;bottom:54px;left:clamp(40px,6vw,86px)}.feature-card[data-v-dbd590c3]{width:104px;height:76px;box-shadow:none;text-align:center;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0;animation:none}.feature-card b[data-v-dbd590c3]{color:#5571ff;background:#ffffffb8;border-radius:12px;width:42px;height:42px;margin:0 auto 9px;box-shadow:0 16px 34px #4a5baa1f}html.dark .feature-card b{color:#d0bcff;background:#ffffff14;box-shadow:0 16px 34px #00000038}html.dark .auth-panel-wrap{background:linear-gradient(#151820f5,#0c0e14fa),#0f1117;border-left-color:#ffffff14}html.dark .auth-card{color:#e7e0ed}html.dark .auth-tabs{background:#ffffff0f}html.dark .auth-tabs button{color:#8d869d}html.dark .auth-tabs button.active{color:#f4ecff;font-weight:var(--font-semibold);box-shadow:none;background:0 0}html.dark .auth-card h2,html.dark .auth-field label,html.dark .hero-copy h1,html.dark .hero-copy h1 span,html.dark .brand-name,html.dark .feature-card strong{color:#f4ecff}html.dark .auth-copy p,html.dark .auth-card>p,html.dark .feature-card span,html.dark .divider{color:#a8a1b6}html.dark .auth-field .input-wrap>.material-symbols-outlined,html.dark .password-wrap>.field-icon.material-symbols-outlined,html.dark .input-wrap>.material-symbols-outlined,html.dark .field-icon,html.dark .toggle-pw{color:#8d869d}html.dark .auth-field .input-wrap input[type=text],html.dark .auth-field .input-wrap input[type=email],html.dark .password-wrap input[type=password],html.dark .password-wrap input[type=text],html.dark .password-wrap input{color:#f4ecff;background:#ffffff09;border-color:#ffffff24}html.dark .auth-field .input-wrap input::placeholder,html.dark .password-wrap input::placeholder{color:#6d6780}html.dark .auth-field .input-wrap input:focus,html.dark .password-wrap input:focus{border-color:#d0bcff;box-shadow:0 0 0 3px #d0bcff1f}html.dark .toggle-pw:hover{color:#f4ecff}html.dark .submit-btn{color:#0f1117;background:#f4ecff}html.dark .submit-btn:hover:not(:disabled){opacity:.9}html.dark .divider:before,html.dark .divider:after{background:#ffffff1f}html.dark .terms-row{color:#a8a1b6}html.dark .result-card{color:#a8a1b6;background:#ffffff0b;border-color:#ffffff1f}html.dark .token{color:#cbc3d7}html.dark .msg-error{color:#ffb4ab;background:#ffb4ab1a;border-color:#ffb4ab42}html.dark .msg-success{color:#86efac;background:#22c55e1a;border-color:#22c55e42}.feature-card b .material-symbols-outlined[data-v-dbd590c3]{font-size:24px}.auth-panel-wrap[data-v-dbd590c3]{z-index:4;justify-content:center;align-items:flex-start;padding:18vh 0 44px}.auth-card[data-v-dbd590c3]{max-width:440px;height:auto;min-height:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0 20px;overflow:visible}.auth-card form[data-v-dbd590c3]{height:auto}.auth-card h2[data-v-dbd590c3]{color:var(--text-primary);font-size:var(--font-2xl);font-weight:var(--font-bold);letter-spacing:0}.auth-copy p[data-v-dbd590c3],.auth-card>p[data-v-dbd590c3]{color:var(--text-secondary);font-size:var(--font-sm);line-height:var(--line-normal);margin:0 0 36px}.auth-copy-enter-active[data-v-dbd590c3],.auth-copy-leave-active[data-v-dbd590c3]{transition:opacity .2s,transform .2s}.auth-copy-enter-from[data-v-dbd590c3]{opacity:0;transform:translateY(8px)}.auth-copy-leave-to[data-v-dbd590c3]{opacity:0;transform:translateY(-6px)}.auth-form-slide-enter-active[data-v-dbd590c3]{transition:opacity .28s,transform .28s cubic-bezier(.16,1,.3,1)}.auth-form-slide-leave-active[data-v-dbd590c3]{transition:opacity .18s,transform .18s}.auth-form-slide-enter-from[data-v-dbd590c3]{opacity:0;transform:translateY(10px)}.auth-form-slide-leave-to[data-v-dbd590c3]{opacity:0;transform:translateY(-8px)}.auth-social-enter-active[data-v-dbd590c3],.auth-social-leave-active[data-v-dbd590c3]{transition:opacity .2s,transform .2s}.auth-social-enter-from[data-v-dbd590c3],.auth-social-leave-to[data-v-dbd590c3]{opacity:0;transform:translateY(10px)}.auth-field[data-v-dbd590c3]{margin-bottom:18px}.auth-field>label[data-v-dbd590c3]{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.caps-lock-hint[data-v-dbd590c3]{align-items:center;gap:var(--space-1);margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:var(--font-sm);line-height:var(--line-normal);display:flex}.caps-lock-hint .material-symbols-outlined[data-v-dbd590c3]{font-size:var(--font-md);flex-shrink:0}.input-wrap[data-v-dbd590c3],.password-wrap[data-v-dbd590c3]{position:relative}.input-wrap>.material-symbols-outlined[data-v-dbd590c3],.field-icon[data-v-dbd590c3]{z-index:1;color:var(--text-muted);pointer-events:none;font-size:18px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.auth-field .input-wrap input[type=text][data-v-dbd590c3],.auth-field .input-wrap input[type=email][data-v-dbd590c3],.password-wrap input[data-v-dbd590c3]{border:1px solid var(--border-input);height:48px;color:var(--text-primary);font-size:var(--font-sm);box-shadow:none;background:0 0;border-radius:0;padding:0 44px 0 40px}.password-wrap input[data-v-dbd590c3]{padding-right:44px}.auth-field .input-wrap input[type=text][data-v-dbd590c3]::placeholder,.auth-field .input-wrap input[type=email][data-v-dbd590c3]::placeholder,.password-wrap input[data-v-dbd590c3]::placeholder{color:var(--text-muted)}.auth-field .input-wrap input[type=text][data-v-dbd590c3]:focus,.auth-field .input-wrap input[type=email][data-v-dbd590c3]:focus,.password-wrap input[data-v-dbd590c3]:focus{border-color:var(--text-primary);box-shadow:none;transform:none}.toggle-pw[data-v-dbd590c3]{color:var(--text-muted);right:12px}.auth-options[data-v-dbd590c3]{color:var(--text-secondary);font-size:var(--font-sm);justify-content:space-between;align-items:center;gap:16px;margin:4px 0 22px;display:flex}html.dark .auth-options{color:#9ca3af}.auth-options label[data-v-dbd590c3]{cursor:pointer;align-items:center;gap:9px;display:inline-flex}.auth-options input[data-v-dbd590c3],.terms-row input[data-v-dbd590c3]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;appearance:none;border:1px solid var(--border-input);background:var(--bg-input);border-radius:4px;margin:0;position:relative}.auth-options input[data-v-dbd590c3]:checked,.terms-row input[data-v-dbd590c3]:checked{background:var(--accent);border-color:var(--accent)}html.dark .auth-options input,html.dark .terms-row input{background:#ffffff0a;border-color:#747780}html.dark .auth-options input:checked,html.dark .terms-row input:checked{background:#d0bcff;border-color:#d0bcff}html.dark .auth-options input:checked:after,html.dark .terms-row input:checked:after{border-color:#23005c}.auth-options input[data-v-dbd590c3]:checked:after,.terms-row input[data-v-dbd590c3]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:10px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.auth-options button[data-v-dbd590c3]{color:#7457ff;font-size:var(--font-sm);font-weight:var(--font-bold);cursor:pointer;background:0 0;border:0}html.dark .auth-options button{color:#d0bcff}.send-code-btn[data-v-dbd590c3]{border:1px solid var(--accent);background:var(--bg-button);width:100%;height:46px;color:var(--accent);font-size:var(--font-sm);font-weight:var(--font-bold);cursor:pointer;border-radius:12px;transition:background .15s,color .15s}html.dark .send-code-btn{color:#d0bcff;background:#d0bcff14;border-color:#d0bcff}html.dark .send-code-btn:hover:not(:disabled){background:#d0bcff24}.send-code-btn[data-v-dbd590c3]:hover:not(:disabled){background:var(--bg-button-active)}.send-code-btn[data-v-dbd590c3]:disabled{opacity:.4;cursor:not-allowed}.field-hint[data-v-dbd590c3]{font-size:var(--font-xs);color:var(--text-secondary);margin-top:4px;display:block}html.dark .field-hint,html.dark .back-to-login,html.dark .terms-row{color:#9ca3af}.back-to-login[data-v-dbd590c3]{width:100%;color:var(--text-secondary);font-size:var(--font-sm);font-weight:var(--font-semibold);cursor:pointer;text-align:center;background:0 0;border:0;margin-top:16px;transition:color .15s;display:block}.back-to-login[data-v-dbd590c3]:hover{color:var(--accent)}html.dark .back-to-login:hover{color:#d0bcff}.auth-social-slot[data-v-dbd590c3]{height:108px;margin-top:12px}.social-login[data-v-dbd590c3]{margin-top:0}.divider[data-v-dbd590c3]{color:var(--text-secondary);font-size:var(--font-xs);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:14px;display:flex}.divider[data-v-dbd590c3]:before,.divider[data-v-dbd590c3]:after{content:"";background:var(--border);flex:1;height:1px}.terms-row[data-v-dbd590c3]{color:var(--text-secondary)}.result-card[data-v-dbd590c3]{background:#ffffffa8}.auth-page[data-v-dbd590c3]{grid-template-columns:minmax(0,1fr) clamp(440px,42vw,560px);width:100vw;min-width:100vw;max-width:100vw;height:100vh;min-height:100dvh;margin:0;overflow:hidden}html:has(.auth-page){width:100%;max-width:100%;overflow-x:hidden}body:has(.auth-page){width:100%;max-width:100%;overflow-x:hidden}#app:has(.auth-page){width:100%;max-width:100%;overflow-x:hidden}.auth-panel-wrap[data-v-dbd590c3]{min-width:0;padding:18vh clamp(40px,5vw,72px) 44px}.auth-card[data-v-dbd590c3]{width:min(440px,100%);max-width:440px}.auth-page.theme-light .auth-hero[data-v-dbd590c3]{background:radial-gradient(circle at 42% 32%,#5d8bff1f,#0000 28%),radial-gradient(circle at 72% 64%,#0891b214,#0000 32%),linear-gradient(135deg,#f8fbff 0%,#eef4ff 54%,#f9fbff 100%)}.auth-page.theme-light .auth-hero[data-v-dbd590c3]:before{opacity:.56;background-image:linear-gradient(#6074a014 1px,#0000 1px),linear-gradient(90deg,#6074a014 1px,#0000 1px)}.auth-page.theme-light .auth-hero[data-v-dbd590c3]:after{box-shadow:none;background:0 0;border:0;display:none}.auth-page.theme-dark[data-v-dbd590c3],html.dark .auth-page{--bg-primary:#0b1120;--bg-secondary:#111827;--bg-input:#0f172a;--bg-button:#60a5fa1f;--bg-button-active:#60a5fa2e;--bg-hover:#60a5fa14;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--accent:#60a5fa;--border:#94a3b838;--border-light:#94a3b824;--border-input:#94a3b847;--gradient-accent:linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);background:var(--bg-primary);color:var(--text-primary)}.auth-page.theme-dark[data-v-dbd590c3]:before{background:#0206172e}.auth-page.theme-dark .auth-hero[data-v-dbd590c3]{background:linear-gradient(135deg, var(--bg-primary), var(--bg-secondary))}.auth-page.theme-dark .auth-hero[data-v-dbd590c3]:before{opacity:.5;background-image:linear-gradient(#60a5fa12 1px,#0000 1px),linear-gradient(90deg,#60a5fa12 1px,#0000 1px)}.auth-page.theme-dark .auth-hero[data-v-dbd590c3]:after{box-shadow:none;background:0 0;border:0;display:none}.auth-page.theme-dark .auth-panel-wrap[data-v-dbd590c3]{background:var(--bg-secondary);border-left-color:var(--border)}.auth-page.theme-dark .brand-name[data-v-dbd590c3],.auth-page.theme-dark .hero-copy h1[data-v-dbd590c3],.auth-page.theme-dark .hero-copy h1 span[data-v-dbd590c3],.auth-page.theme-dark .feature-card strong[data-v-dbd590c3],.auth-page.theme-dark .auth-card h2[data-v-dbd590c3],.auth-page.theme-dark .auth-field label[data-v-dbd590c3],.auth-page.theme-dark .auth-tabs button.active[data-v-dbd590c3]{color:var(--text-primary)}.auth-page.theme-dark .hero-copy h1[data-v-dbd590c3],.auth-page.theme-dark .auth-card h2[data-v-dbd590c3]{font-weight:var(--font-bold)}.auth-page.theme-dark .hero-copy>p[data-v-dbd590c3],.auth-page.theme-dark .feature-card span[data-v-dbd590c3],.auth-page.theme-dark .auth-copy p[data-v-dbd590c3],.auth-page.theme-dark .auth-card>p[data-v-dbd590c3],.auth-page.theme-dark .auth-options[data-v-dbd590c3],.auth-page.theme-dark .divider[data-v-dbd590c3]{color:var(--text-secondary)}.auth-page.theme-dark .auth-tabs[data-v-dbd590c3]{border-bottom-color:var(--border-light);background:0 0}.auth-page.theme-dark .auth-tabs button[data-v-dbd590c3]{color:var(--text-muted)}.auth-page.theme-dark .auth-tabs button.active[data-v-dbd590c3]{color:var(--accent);font-weight:var(--font-semibold);box-shadow:none;background:0 0}.auth-page.theme-dark .auth-tabs button.active[data-v-dbd590c3]:after{background:var(--accent)}.auth-page.theme-dark .auth-field .input-wrap input[type=text][data-v-dbd590c3],.auth-page.theme-dark .auth-field .input-wrap input[type=email][data-v-dbd590c3],.auth-page.theme-dark .password-wrap input[type=password][data-v-dbd590c3],.auth-page.theme-dark .password-wrap input[type=text][data-v-dbd590c3],.auth-page.theme-dark .password-wrap input[data-v-dbd590c3]{border-color:var(--border-input);background:var(--bg-input);color:var(--text-primary)}.auth-page.theme-dark .auth-field .input-wrap input[data-v-dbd590c3]::placeholder,.auth-page.theme-dark .password-wrap input[data-v-dbd590c3]::placeholder,.auth-page.theme-dark .field-icon[data-v-dbd590c3],.auth-page.theme-dark .toggle-pw[data-v-dbd590c3]{color:var(--text-muted)}.auth-page.theme-dark .auth-field .input-wrap input[data-v-dbd590c3]:focus,.auth-page.theme-dark .password-wrap input[data-v-dbd590c3]:focus{border-color:var(--accent);box-shadow:0 0 0 3px #60a5fa38}.auth-page.theme-dark .submit-btn[data-v-dbd590c3]{background:var(--gradient-accent);color:#fff}.auth-field .input-wrap[data-v-dbd590c3],.auth-field .password-wrap[data-v-dbd590c3]{position:relative}.auth-field .input-wrap>.material-symbols-outlined[data-v-dbd590c3],.password-wrap>.field-icon.material-symbols-outlined[data-v-dbd590c3]{color:var(--text-muted);pointer-events:none;font-size:18px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.auth-field .input-wrap input[type=text][data-v-dbd590c3],.auth-field .input-wrap input[type=email][data-v-dbd590c3],.password-wrap input[type=password][data-v-dbd590c3],.password-wrap input[type=text][data-v-dbd590c3]{border:1px solid var(--border-input);width:100%;height:48px;color:var(--text-primary);font-size:var(--font-sm);background:0 0;border-radius:0;outline:none;padding:0 44px 0 40px;transition:border-color .18s}.auth-field .input-wrap input[data-v-dbd590c3]::placeholder,.password-wrap input[data-v-dbd590c3]::placeholder{color:var(--text-muted)}.auth-field .input-wrap input[data-v-dbd590c3]:focus,.password-wrap input[data-v-dbd590c3]:focus{border-color:var(--text-primary);box-shadow:none;transform:none}.password-wrap .toggle-pw[data-v-dbd590c3]{right:12px}.auth-options[data-v-dbd590c3]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.auth-options label[data-v-dbd590c3]{cursor:pointer;color:var(--text-secondary);font-size:var(--font-sm);align-items:center;gap:8px;display:flex}.auth-options input[type=checkbox][data-v-dbd590c3]{width:16px;height:16px;accent-color:var(--text-primary)}.auth-options button[data-v-dbd590c3]{color:var(--text-secondary);font-size:var(--font-sm);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;text-decoration:underline}.remember-session-hint[data-v-dbd590c3]{color:var(--text-secondary);margin:-10px 0 20px;font-size:12px;line-height:1.6}.session-restore-notice[data-v-dbd590c3]{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 16px;font-size:13px;line-height:1.6;display:flex}.session-restore-notice button[data-v-dbd590c3]{color:var(--accent,#2563eb);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:4px 0;text-decoration:underline}.session-restore-notice button[data-v-dbd590c3]:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:3px}.auth-tabs button.active[data-v-dbd590c3]{color:#2563eb}.auth-tabs button.active[data-v-dbd590c3]:after{background:#2563eb}.auth-field .input-wrap>.material-symbols-outlined[data-v-dbd590c3],.password-wrap>.field-icon.material-symbols-outlined[data-v-dbd590c3]{color:#7b879a;font-size:20px;left:18px}.auth-field .input-wrap input[type=text][data-v-dbd590c3],.auth-field .input-wrap input[type=email][data-v-dbd590c3],.password-wrap input[type=password][data-v-dbd590c3],.password-wrap input[type=text][data-v-dbd590c3]{border:1px solid var(--border-input);color:#0f172a;background:#fff;border-radius:12px;height:46px;padding:0 46px;box-shadow:0 1px 3px #0f172a0a}.auth-field .input-wrap input[data-v-dbd590c3]::placeholder,.password-wrap input[data-v-dbd590c3]::placeholder{color:var(--text-muted);opacity:1}.auth-field .input-wrap input[data-v-dbd590c3]:focus,.password-wrap input[data-v-dbd590c3]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb29}.auth-card .auth-field .input-wrap input[type=text][data-v-dbd590c3],.auth-card .auth-field .input-wrap input[type=email][data-v-dbd590c3],.auth-card .auth-field .password-wrap input[type=password][data-v-dbd590c3],.auth-card .auth-field .password-wrap input[type=text][data-v-dbd590c3]{caret-color:#2563eb}.auth-card .auth-field .input-wrap input[type=text][data-v-dbd590c3]:focus,.auth-card .auth-field .input-wrap input[type=email][data-v-dbd590c3]:focus,.auth-card .auth-field .password-wrap input[type=password][data-v-dbd590c3]:focus,.auth-card .auth-field .password-wrap input[type=text][data-v-dbd590c3]:focus,.auth-card .auth-field .input-wrap input[type=text][data-v-dbd590c3]:focus-visible,.auth-card .auth-field .input-wrap input[type=email][data-v-dbd590c3]:focus-visible,.auth-card .auth-field .password-wrap input[type=password][data-v-dbd590c3]:focus-visible,.auth-card .auth-field .password-wrap input[type=text][data-v-dbd590c3]:focus-visible{border-color:#2563eb;outline:none;transform:none;box-shadow:0 0 0 3px #2563eb29}.auth-card .auth-field .input-wrap:focus-within>.material-symbols-outlined[data-v-dbd590c3],.auth-card .auth-field .password-wrap:focus-within>.field-icon.material-symbols-outlined[data-v-dbd590c3]{color:#2563eb}.auth-card .auth-field input[data-v-dbd590c3]::selection{color:#0f172a;background:#2563eb38}.password-wrap .toggle-pw[data-v-dbd590c3]{color:var(--text-muted);right:14px}.toggle-pw .material-symbols-outlined[data-v-dbd590c3]{font-size:22px}.auth-options input[type=checkbox][data-v-dbd590c3]{accent-color:#2563eb}.auth-options button[data-v-dbd590c3]{color:#2563eb;font-weight:var(--font-bold);text-decoration:none}.auth-options button[data-v-dbd590c3]:hover{color:#1d4ed8}.submit-btn[data-v-dbd590c3]{color:#fff;background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);box-shadow:0 8px 18px #2563eb3d}.submit-btn[data-v-dbd590c3]:hover:not(:disabled){opacity:1;background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 10px 24px #2563eb4d}.auth-page[data-v-dbd590c3]{font-family:Inter,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif}.auth-page.theme-light[data-v-dbd590c3]{background:radial-gradient(circle at 42% 32%,#5d8bff1f,#0000 28%),radial-gradient(circle at 72% 64%,#0891b214,#0000 32%),linear-gradient(135deg,#f8fbff 0%,#eef4ff 54%,#f9fbff 100%)}.auth-page.theme-light[data-v-dbd590c3]:before{opacity:.56;background-image:linear-gradient(#6074a014 1px,#0000 1px),linear-gradient(90deg,#6074a014 1px,#0000 1px);background-size:44px 44px;inset:0}.auth-page[data-v-dbd590c3] :where(button,input,textarea,select,a){font:inherit}.auth-page .auth-hero[data-v-dbd590c3]{--hero-side-space:clamp(48px, 6.4vw, 86px);--hero-bottom-space:clamp(28px, 6vh, 58px);height:100vh;min-height:100vh;padding:0 var(--hero-side-space) var(--hero-bottom-space);grid-template-rows:auto minmax(140px,1fr) auto auto;align-self:start;row-gap:clamp(18px,2.8vh,28px);display:grid}.auth-page .auth-panel-wrap[data-v-dbd590c3]{transform-origin:100%;will-change:transform, opacity;align-items:center;height:100vh;min-height:100vh;padding:clamp(28px,6vh,64px) clamp(40px,5vw,72px);animation:.46s cubic-bezier(.16,1,.3,1) both authPanelSlideLeft-dbd590c3;overflow-y:auto;box-shadow:-18px 0 44px #1e40af0f}.auth-page .auth-card[data-v-dbd590c3]{animation:none}@keyframes authPanelSlideLeft-dbd590c3{0%{opacity:0;transform:translate(56px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.auth-page .auth-panel-wrap[data-v-dbd590c3]{opacity:1;animation:none;transform:none}}.auth-page .brand-top[data-v-dbd590c3]{margin-left:calc(var(--hero-side-space) * -1);padding-right:var(--hero-side-space);grid-row:1}.auth-page .brand-name[data-v-dbd590c3]{letter-spacing:0;font-size:14px;font-weight:800;line-height:1.15}.auth-page .particle-stage[data-v-dbd590c3]{min-width:0;min-height:0;margin-inline:calc(var(--hero-side-space) * -1);z-index:1;grid-row:2;position:relative;overflow:hidden}.auth-page .hero-copy[data-v-dbd590c3]{z-index:2;grid-row:3;align-self:end;max-width:min(620px,100%);position:relative;bottom:auto;left:auto}.auth-page .hero-copy h1[data-v-dbd590c3]{color:#111827;letter-spacing:0;text-wrap:balance;max-width:11em;font-size:28px;font-weight:700;line-height:1.18}.auth-page .hero-copy h1 span[data-v-dbd590c3]{color:#111827;font-weight:inherit}.auth-page .hero-copy>p[data-v-dbd590c3]{width:min(560px,100%);color:var(--text-secondary);text-wrap:pretty;margin:14px 0 0;font-size:14px;line-height:1.7}.auth-page .auth-card h2[data-v-dbd590c3]{letter-spacing:0}.auth-page .submit-btn[data-v-dbd590c3]{font-size:14px;font-weight:600;line-height:1}.auth-page .divider span[data-v-dbd590c3]{letter-spacing:0;text-transform:none}.auth-page .hero-features.feature-row[data-v-dbd590c3]{z-index:2;-webkit-backdrop-filter:blur(12px);background:#ffffffc7;border:1px solid #e2e8f0db;border-radius:12px;grid-row:4;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:0;width:min(650px,100%);padding:18px 20px;display:grid;position:relative;bottom:auto;left:auto;box-shadow:0 18px 46px #1e40af14}.auth-page .hero-features .feature-card[data-v-dbd590c3]{width:auto;min-width:0;height:auto;box-shadow:none;text-align:left;background:0 0;border:0;border-radius:0;grid-template-rows:auto auto;grid-template-columns:34px minmax(0,1fr);align-items:center;column-gap:12px;padding:0 14px;display:grid;position:relative}.auth-page .hero-features .feature-card[data-v-dbd590c3]:first-child{padding-left:0}.auth-page .hero-features .feature-card[data-v-dbd590c3]:last-child{padding-right:0}.auth-page .hero-features .feature-card[data-v-dbd590c3]:not(:last-child):after{content:"";background:#cbd5e1b8;width:1px;position:absolute;top:8px;bottom:8px;right:0}.auth-page .hero-features .feature-card b[data-v-dbd590c3]{color:#1d4ed8;width:34px;height:34px;box-shadow:none;background:0 0;border-radius:0;grid-area:1/1/3;justify-content:center;align-items:center;margin:0;display:inline-flex}.auth-page .hero-features .feature-card b .material-symbols-outlined[data-v-dbd590c3]{color:#1d4ed8;font-size:31px;line-height:1;display:inline-flex;transform:none}.auth-page .hero-features .feature-card:hover b .material-symbols-outlined[data-v-dbd590c3]{transform:none}.auth-page .hero-features .feature-card strong[data-v-dbd590c3]{color:#1f2937;letter-spacing:0;text-transform:none;white-space:nowrap;text-overflow:ellipsis;grid-column:2;margin:0 0 3px;font-size:14px;font-weight:700;line-height:1.22;overflow:hidden}.auth-page .hero-features .feature-card span[data-v-dbd590c3]{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;grid-column:2;font-size:12px;font-weight:500;line-height:1.32;overflow:hidden}.auth-page.theme-dark .hero-copy h1[data-v-dbd590c3],.auth-page.theme-dark .hero-copy h1 span[data-v-dbd590c3]{color:var(--text-primary)}.auth-page.theme-dark .hero-copy>p[data-v-dbd590c3]{color:var(--text-secondary)}.auth-page.theme-dark .hero-features.feature-row[data-v-dbd590c3]{border-color:var(--border);background:color-mix(in srgb, var(--bg-secondary) 88%, transparent);box-shadow:0 18px 46px #0000003d}.auth-page.theme-dark .hero-features .feature-card[data-v-dbd590c3]:not(:last-child):after{background:#ffffff1a}.auth-page.theme-dark .hero-features .feature-card b[data-v-dbd590c3],.auth-page.theme-dark .hero-features .feature-card b .material-symbols-outlined[data-v-dbd590c3]{color:#60a5fa}.auth-page.theme-dark .hero-features .feature-card strong[data-v-dbd590c3]{color:var(--text-primary)}.auth-page.theme-dark .hero-features .feature-card span[data-v-dbd590c3]{color:var(--text-secondary)}@media (width<=1180px){.auth-page .auth-hero[data-v-dbd590c3]{--hero-side-space:clamp(34px, 5vw, 56px);--hero-bottom-space:clamp(26px, 5.2vh, 48px);grid-template-rows:auto minmax(120px,1fr) auto auto}.auth-page .hero-copy[data-v-dbd590c3]{max-width:100%}.auth-page .hero-copy h1[data-v-dbd590c3]{font-size:28px}.auth-page .hero-features.feature-row[data-v-dbd590c3]{width:100%;padding:16px 14px}.auth-page .hero-features .feature-card[data-v-dbd590c3]{grid-template-columns:30px minmax(0,1fr);column-gap:9px;padding:0 9px}.auth-page .hero-features .feature-card b[data-v-dbd590c3]{width:30px;height:30px}.auth-page .hero-features .feature-card b .material-symbols-outlined[data-v-dbd590c3]{font-size:28px}.auth-page .hero-features .feature-card strong[data-v-dbd590c3]{font-size:13px}.auth-page .hero-features .feature-card span[data-v-dbd590c3]{font-size:11px}}.auth-social-slot.is-empty[data-v-dbd590c3]{height:0;min-height:0;margin-top:0}.auth-page.theme-dark .auth-actions button[data-v-dbd590c3]{border-color:var(--border);background:var(--bg-input);color:var(--text-secondary)}.auth-page.theme-dark .auth-actions button[data-v-dbd590c3]:hover,.auth-page.theme-dark .toggle-pw[data-v-dbd590c3]:hover,.auth-page.theme-dark .auth-options button[data-v-dbd590c3],.auth-page.theme-dark .back-to-login[data-v-dbd590c3]:hover{color:var(--accent)}.auth-page.theme-dark .auth-actions button[data-v-dbd590c3]:hover{border-color:var(--accent);background:var(--bg-hover)}.auth-page.theme-dark .auth-options input[data-v-dbd590c3],.auth-page.theme-dark .terms-row input[data-v-dbd590c3]{border-color:var(--border-input);background:var(--bg-input)}.auth-page.theme-dark .auth-options input[data-v-dbd590c3]:checked,.auth-page.theme-dark .terms-row input[data-v-dbd590c3]:checked{border-color:var(--accent);background:var(--accent)}.auth-page.theme-dark .auth-options input[data-v-dbd590c3]:checked:after,.auth-page.theme-dark .terms-row input[data-v-dbd590c3]:checked:after{border-color:#fff}.auth-page.theme-dark .auth-card .auth-field .input-wrap input[data-v-dbd590c3]:focus,.auth-page.theme-dark .auth-card .auth-field .input-wrap input[data-v-dbd590c3]:focus-visible,.auth-page.theme-dark .auth-card .auth-field .password-wrap input[data-v-dbd590c3]:focus,.auth-page.theme-dark .auth-card .auth-field .password-wrap input[data-v-dbd590c3]:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #60a5fa38}.auth-page.theme-dark .auth-card .auth-field .input-wrap:focus-within>.material-symbols-outlined[data-v-dbd590c3],.auth-page.theme-dark .auth-card .auth-field .password-wrap:focus-within>.field-icon.material-symbols-outlined[data-v-dbd590c3]{color:var(--accent)}.auth-page.theme-dark .auth-card .auth-field input[data-v-dbd590c3]::selection{color:var(--text-primary);background:#60a5fa4d}.auth-page.theme-dark .send-code-btn[data-v-dbd590c3]{border-color:var(--accent);background:var(--bg-button);color:var(--accent)}.auth-page.theme-dark .send-code-btn[data-v-dbd590c3]:hover:not(:disabled){background:var(--bg-button-active)}.auth-page.theme-dark .divider[data-v-dbd590c3]:before,.auth-page.theme-dark .divider[data-v-dbd590c3]:after{background:var(--border)}.auth-page.theme-dark .terms-row[data-v-dbd590c3],.auth-page.theme-dark .field-hint[data-v-dbd590c3],.auth-page.theme-dark .back-to-login[data-v-dbd590c3]{color:var(--text-secondary)}.auth-page.theme-dark .auth-card[data-v-dbd590c3]{color:var(--text-primary)}.auth-page.theme-dark .result-card[data-v-dbd590c3]{border-color:var(--border);background:var(--bg-input);color:var(--text-secondary)}.auth-page.theme-dark .token[data-v-dbd590c3]{color:var(--text-primary)}.auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]{border:1px solid var(--border-input);color:#0f172a;caret-color:#2563eb;width:100%;height:46px;font:inherit;font-size:var(--font-sm);transition:border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), background-color var(--motion-fast) var(--ease-out);background:#fff;border-radius:12px;outline:none;padding:0 46px;box-shadow:0 1px 3px #0f172a0a}.auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]::placeholder{color:var(--text-muted);opacity:1}.auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]:focus,.auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]:focus-visible{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb29}.auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]:disabled{background:var(--bg-tertiary);color:var(--text-secondary);cursor:not-allowed;opacity:1}.forgot-form .send-code-btn[data-v-dbd590c3],.login-verification-form .send-code-btn[data-v-dbd590c3],.register-form .send-code-btn[data-v-dbd590c3]{border-color:var(--button-primary-muted-bg);background:var(--button-primary-muted-bg);height:46px;color:var(--button-primary-muted-text);box-shadow:0 8px 18px color-mix(in srgb, var(--button-primary-muted-bg) 16%, transparent);transition:border-color var(--motion-fast) var(--ease-out), background-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out);border-radius:12px;margin-top:2px}.forgot-form .send-code-btn[data-v-dbd590c3]:hover:not(:disabled),.login-verification-form .send-code-btn[data-v-dbd590c3]:hover:not(:disabled),.register-form .send-code-btn[data-v-dbd590c3]:hover:not(:disabled){border-color:var(--button-primary-muted-hover);background:var(--button-primary-muted-hover);transform:translateY(-1px)}.forgot-form .send-code-btn[data-v-dbd590c3]:active:not(:disabled),.login-verification-form .send-code-btn[data-v-dbd590c3]:active:not(:disabled),.register-form .send-code-btn[data-v-dbd590c3]:active:not(:disabled){border-color:var(--button-primary-muted-active);background:var(--button-primary-muted-active);box-shadow:none;transform:translateY(0)}.forgot-form .send-code-btn[data-v-dbd590c3]:disabled,.login-verification-form .send-code-btn[data-v-dbd590c3]:disabled,.register-form .send-code-btn[data-v-dbd590c3]:disabled{border-color:var(--border-input);background:var(--bg-tertiary);color:var(--text-muted);box-shadow:none;cursor:not-allowed;opacity:1}.forgot-form .back-to-login[data-v-dbd590c3]{border-radius:8px;justify-content:center;align-items:center;gap:6px;width:fit-content;height:38px;margin:18px auto 0;padding:0 12px;display:flex}.forgot-form .back-to-login[data-v-dbd590c3]:hover{background:var(--bg-hover)}.forgot-form .back-to-login .material-symbols-outlined[data-v-dbd590c3]{font-size:18px}.register-form .verification-row[data-v-dbd590c3],.login-verification-form .verification-row[data-v-dbd590c3]{grid-template-columns:minmax(0,1fr) 132px;align-items:center;gap:10px;display:grid}.register-form .verification-row .input-wrap[data-v-dbd590c3],.login-verification-form .verification-row .input-wrap[data-v-dbd590c3]{min-width:0}.register-form .send-code-btn[data-v-dbd590c3],.login-verification-form .send-code-btn[data-v-dbd590c3]{white-space:nowrap;min-width:0;padding:0 10px;font-size:13px}.auth-page.theme-dark .auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]{border-color:var(--border-input);background:var(--bg-input);color:var(--text-primary);caret-color:var(--accent);box-shadow:none}.auth-page.theme-dark .auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]:focus,.auth-page.theme-dark .auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #60a5fa38}.auth-page.theme-dark .auth-card .auth-field .input-wrap input[type=tel][data-v-dbd590c3]:disabled{background:var(--bg-tertiary);color:var(--text-secondary)}.auth-page.theme-dark .forgot-form .send-code-btn[data-v-dbd590c3],.auth-page.theme-dark .login-verification-form .send-code-btn[data-v-dbd590c3],.auth-page.theme-dark .register-form .send-code-btn[data-v-dbd590c3]{border-color:var(--button-primary-muted-bg);background:var(--button-primary-muted-bg);color:var(--button-primary-muted-text)}.auth-page.theme-dark .forgot-form .send-code-btn[data-v-dbd590c3]:disabled,.auth-page.theme-dark .login-verification-form .send-code-btn[data-v-dbd590c3]:disabled,.auth-page.theme-dark .register-form .send-code-btn[data-v-dbd590c3]:disabled{border-color:var(--border-input);background:var(--bg-tertiary);color:var(--text-muted)}.login-verification-notice[data-v-dbd590c3]{border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);border-radius:12px;align-items:center;gap:8px;margin-bottom:20px;padding:12px 14px;font-size:13px;font-weight:400;line-height:1.6;display:flex}.login-verification-notice .material-symbols-outlined[data-v-dbd590c3]{color:var(--button-primary-muted-bg);flex:none;font-size:18px}.login-verification-form .login-verification-field[data-v-dbd590c3]{margin-bottom:18px}.login-verification-form .verification-row .input-wrap input[data-v-dbd590c3]{border-radius:12px;height:46px;padding:0 14px 0 44px;font-size:14px}.login-verification-form .send-code-btn[data-v-dbd590c3]{height:46px;margin-top:0;font-size:14px;font-weight:600}.login-verification-form .submit-btn[data-v-dbd590c3]{height:44px;font-size:15px;font-weight:600}.login-verification-form .back-to-login[data-v-dbd590c3]{width:fit-content;color:var(--text-secondary);align-items:center;gap:6px;margin:0 0 18px;padding:6px 0;font-size:14px;font-weight:400;display:flex}.login-verification-form .back-to-login .material-symbols-outlined[data-v-dbd590c3]{font-size:18px}.login-method-switch[data-v-dbd590c3]{border:1px solid var(--border);background:var(--bg-input);min-width:160px;height:46px;color:var(--text-primary);font-size:var(--font-sm);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin:22px auto 0;padding:0 20px;font-weight:600;line-height:1.5;transition:border-color .18s,background .18s,color .18s;display:flex;box-shadow:0 1px 3px #0f172a0a}.login-method-switch[data-v-dbd590c3]:hover{border-color:var(--accent);background:var(--bg-hover);color:var(--accent)}.login-method-switch .material-symbols-outlined[data-v-dbd590c3]{font-size:20px}.login-method-switch[data-v-dbd590c3]:focus-visible,.sms-login-form .send-code-btn[data-v-dbd590c3]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sms-login-hint[data-v-dbd590c3]{color:var(--text-secondary);margin:-4px 0 18px;font-size:13px;line-height:1.6}.sms-login-form .verification-row[data-v-dbd590c3]{grid-template-columns:minmax(0,1fr) 132px;align-items:center;gap:10px;display:grid}.sms-login-form .verification-row .input-wrap[data-v-dbd590c3]{min-width:0}.auth-card .sms-login-form .verification-row .input-wrap input[data-v-dbd590c3]{padding:0 10px 0 44px;font-size:14px}.sms-login-form .send-code-btn[data-v-dbd590c3]{border-color:var(--button-primary-muted-bg);background:var(--button-primary-muted-bg);min-width:0;height:46px;color:var(--button-primary-muted-text);white-space:nowrap;border-radius:12px;margin-top:0;padding:0 10px;font-size:14px;font-weight:600}.sms-login-form .send-code-btn[data-v-dbd590c3]:hover:not(:disabled){border-color:var(--button-primary-muted-hover);background:var(--button-primary-muted-hover)}.sms-login-form .send-code-btn[data-v-dbd590c3]:active:not(:disabled){border-color:var(--button-primary-muted-active);background:var(--button-primary-muted-active)}.sms-login-form .send-code-btn[data-v-dbd590c3]:disabled{border-color:var(--border-input);background:var(--bg-tertiary);color:var(--text-muted);opacity:1;cursor:not-allowed}@media (width<=980px){.auth-page[data-v-dbd590c3]{width:100%;min-width:0;max-width:none;height:100dvh;min-height:100dvh;display:block;overflow:hidden auto}.auth-page[data-v-dbd590c3]:before,.auth-page[data-v-dbd590c3]:after,.auth-page .auth-hero[data-v-dbd590c3]{display:none}.auth-page .auth-actions[data-v-dbd590c3]{top:18px;right:18px}.auth-page .auth-panel-wrap[data-v-dbd590c3]{width:100%;height:auto;min-height:100dvh;box-shadow:none;border-left:0;justify-content:center;align-items:flex-start;padding:clamp(76px,12vh,104px) 20px 36px;overflow:visible}.auth-page .auth-card[data-v-dbd590c3]{width:min(440px,100%);max-width:440px;min-height:0;padding:0}.auth-page .auth-card form[data-v-dbd590c3]{height:auto;min-height:0}}@media (width<=480px){.auth-page .auth-actions[data-v-dbd590c3]{top:14px;right:14px}.auth-page .auth-panel-wrap[data-v-dbd590c3]{padding:72px 16px 28px}.auth-page .auth-tabs[data-v-dbd590c3]{margin-bottom:28px}}
