.share-preview[data-v-6307d794]{background:var(--bg-glass-subtle);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px;margin-bottom:16px}.preview-header[data-v-6307d794]{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--text-primary)}.preview-title[data-v-6307d794]{font-weight:var(--font-semibold);font-size:var(--text-md)}.preview-content[data-v-6307d794]{font-size:var(--text-sm);color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;max-height:100px;overflow-y:auto;font-family:var(--font-mono);background:var(--bg-dark-subtle);padding:8px;border-radius:var(--radius-sm)}.user-selector[data-v-6307d794]{margin-top:8px}.selector-header[data-v-6307d794]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.selector-label[data-v-6307d794]{font-size:var(--text-sm);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px}.user-list[data-v-6307d794]{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.user-item[data-v-6307d794]{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#ffffff08;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.user-item[data-v-6307d794]:hover{background:var(--bg-glass-medium);border-color:var(--border-color)}.user-item.selected[data-v-6307d794]{background:var(--primary-alpha-15);border-color:var(--color-primary)}.user-avatar[data-v-6307d794]{width:36px;height:36px;border-radius:var(--radius-circle);background:var(--bg-glass-hover);display:flex;align-items:center;justify-content:center;font-size:var(--text-2xl)}.user-name[data-v-6307d794]{flex:1;font-size:var(--text-md);color:var(--text-primary)}.check-icon[data-v-6307d794]{color:var(--color-primary);font-size:20px}.empty-users[data-v-6307d794]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px;color:var(--text-tertiary);font-size:var(--text-base)}.sender-info[data-v-ff1664e8]{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border-color);margin-bottom:16px}.sender-avatar[data-v-ff1664e8]{width:48px;height:48px;border-radius:var(--radius-circle);background:var(--primary-alpha-20);display:flex;align-items:center;justify-content:center;font-size:var(--text-3xl)}.sender-detail[data-v-ff1664e8]{display:flex;flex-direction:column;gap:4px}.sender-name[data-v-ff1664e8]{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary)}.send-time[data-v-ff1664e8]{font-size:var(--text-sm);color:var(--text-tertiary)}.share-content[data-v-ff1664e8]{background:var(--bg-dark-subtle);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.content-header[data-v-ff1664e8]{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#ffffff08;border-bottom:1px solid var(--border-color);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-secondary)}.content-body[data-v-ff1664e8]{padding:12px;max-height:300px;overflow-y:auto}.content-body pre[data-v-ff1664e8]{margin:0;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.5;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.login-page[data-v-eb2fc3be]{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);z-index:1000;padding:20px;overflow:hidden}.theme-toggle[data-v-eb2fc3be]{position:absolute;top:24px;right:24px;z-index:100;width:44px;height:44px;border-radius:var(--radius-circle);border:1px solid var(--border-color-subtle);background:var(--bg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);box-shadow:var(--shadow-md)}.theme-toggle[data-v-eb2fc3be]:hover{background:var(--bg-glass-hover);transform:scale(1.1);box-shadow:var(--shadow-glow-sm)}.theme-icon[data-v-eb2fc3be]{font-size:20px;line-height:1}.bg-animation[data-v-eb2fc3be]{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.gradient-orb[data-v-eb2fc3be]{position:absolute;border-radius:var(--radius-circle);filter:blur(100px);animation:float-eb2fc3be 20s ease-in-out infinite}.orb-1[data-v-eb2fc3be]{width:600px;height:600px;background:var(--orb-color-1);opacity:var(--orb-opacity-1);top:-10%;left:-10%;animation-duration:25s}.orb-2[data-v-eb2fc3be]{width:500px;height:500px;background:var(--orb-color-2);opacity:var(--orb-opacity-2);bottom:-10%;right:-5%;animation-delay:-5s;animation-duration:22s}.orb-3[data-v-eb2fc3be]{width:400px;height:400px;background:var(--orb-color-3);opacity:var(--orb-opacity-3);top:40%;left:45%;animation-delay:-10s;animation-duration:28s}.noise-overlay[data-v-eb2fc3be]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}@keyframes float-eb2fc3be{0%,to{transform:translate(0) scale(1)}33%{transform:translate(50px,-50px) scale(1.1)}66%{transform:translate(-30px,20px) scale(.9)}}.login-card-wide[data-v-eb2fc3be]{display:grid;grid-template-columns:280px 1fr;width:100%;max-width:850px;background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color-subtle);border-radius:var(--radius-4xl);box-shadow:var(--shadow-xl);overflow:hidden;animation:cardEnter-eb2fc3be .8s cubic-bezier(.2,.8,.2,1);position:relative;z-index:10}@keyframes cardEnter-eb2fc3be{0%{opacity:0;transform:translateY(40px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.card-loading-bar[data-v-eb2fc3be]{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent),var(--color-primary));background-size:200% 100%;animation:loadingSlide-eb2fc3be 1.5s ease-in-out infinite;z-index:100;transition:opacity .3s ease}.card-loading-bar.done[data-v-eb2fc3be]{opacity:0}@keyframes loadingSlide-eb2fc3be{0%{background-position:200% 0}to{background-position:-200% 0}}.card-brand[data-v-eb2fc3be]{position:relative;display:flex;align-items:center;justify-content:center;padding:40px;background:var(--bg-glass-subtle);border-right:1px solid var(--border-color-subtle)}.brand-inner[data-v-eb2fc3be]{text-align:center;position:relative;z-index:1}.logo-container[data-v-eb2fc3be]{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:8px}.brand-logo-img[data-v-eb2fc3be]{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 4px 8px var(--primary-alpha-20))}.logo[data-v-eb2fc3be]{font-size:48px;font-weight:800;color:var(--text-primary);margin:0;letter-spacing:-1px}.tagline[data-v-eb2fc3be]{color:var(--text-secondary);margin-top:12px;font-size:var(--text-md);letter-spacing:3px;text-transform:uppercase;font-weight:var(--font-medium)}.card-form[data-v-eb2fc3be]{padding:48px 56px;display:flex;flex-direction:column;justify-content:center}.form-header[data-v-eb2fc3be]{margin-bottom:32px}.login-title[data-v-eb2fc3be]{font-size:28px;font-weight:var(--font-bold);color:var(--text-primary);margin:0}.login-subtitle[data-v-eb2fc3be]{color:var(--text-secondary);font-size:var(--text-md);margin-top:8px}.form-body[data-v-eb2fc3be]{display:flex;flex-direction:column;gap:24px}.input-label[data-v-eb2fc3be]{display:block;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.text-input[data-v-eb2fc3be]{width:100%;padding:14px 18px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);color:var(--text-primary);font-size:var(--text-xl);outline:none;transition:all var(--transition-normal)}.text-input[data-v-eb2fc3be]::placeholder{color:var(--text-ghost)}.text-input[data-v-eb2fc3be]:focus{background:var(--bg-tertiary);border-color:var(--color-primary);box-shadow:var(--shadow-glow-ring)}.input-hint[data-v-eb2fc3be]{margin:6px 0 0;font-size:var(--text-sm);color:var(--color-error);line-height:1.4}.avatar-grid[data-v-eb2fc3be]{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}.avatar-btn[data-v-eb2fc3be]{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--bg-glass-subtle);border:1px solid var(--border-color-subtle);border-radius:var(--radius-xl);cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.avatar-emoji[data-v-eb2fc3be]{font-size:var(--text-3xl);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.avatar-btn.anim-0:hover .avatar-emoji[data-v-eb2fc3be]{animation:wiggle-eb2fc3be .5s ease-in-out}.avatar-btn.anim-1:hover .avatar-emoji[data-v-eb2fc3be]{animation:bounce-eb2fc3be .5s ease-in-out}.avatar-btn.anim-2:hover .avatar-emoji[data-v-eb2fc3be]{animation:spin .5s ease-in-out}.avatar-btn.anim-3:hover .avatar-emoji[data-v-eb2fc3be]{animation:shake-eb2fc3be .5s ease-in-out}@keyframes wiggle-eb2fc3be{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}}@keyframes bounce-eb2fc3be{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shake-eb2fc3be{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.avatar-btn[data-v-eb2fc3be]:hover{background:var(--bg-glass-hover);transform:scale(1.15);box-shadow:var(--shadow-md);z-index:2}.avatar-btn.active[data-v-eb2fc3be]{border-color:var(--color-primary);background:var(--primary-alpha-25);transform:scale(1.15);box-shadow:var(--shadow-glow-lg)}.login-btn[data-v-eb2fc3be]{width:100%;padding:16px;background:var(--color-primary);border:none;border-radius:var(--radius-xl);color:#fff;font-size:var(--text-xl);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-slow);box-shadow:var(--shadow-btn-primary)}.login-btn[data-v-eb2fc3be]:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-glow-lg);filter:brightness(1.1)}.login-btn[data-v-eb2fc3be]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.loading-dots[data-v-eb2fc3be]{display:inline-flex;gap:4px}.loading-dots span[data-v-eb2fc3be]{width:8px;height:8px;background:#fff;border-radius:var(--radius-circle);animation:dotBounce-eb2fc3be 1.4s infinite ease-in-out both}.loading-dots span[data-v-eb2fc3be]:nth-child(1){animation-delay:-.32s}.loading-dots span[data-v-eb2fc3be]:nth-child(2){animation-delay:-.16s}@keyframes dotBounce-eb2fc3be{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@media(max-width:768px){.login-card-wide[data-v-eb2fc3be]{grid-template-columns:1fr;max-width:400px}.card-brand[data-v-eb2fc3be]{padding:32px 24px 24px;border-right:none;border-bottom:1px solid var(--border-color-subtle)}.brand-logo-img[data-v-eb2fc3be]{width:40px;height:40px}.logo[data-v-eb2fc3be]{margin:0;font-size:32px}.tagline[data-v-eb2fc3be]{display:none}.card-form[data-v-eb2fc3be]{padding:32px 24px}.avatar-grid[data-v-eb2fc3be]{grid-template-columns:repeat(8,1fr)}}.avatar-emoji[data-v-eb2fc3be]{position:relative;display:inline-block}.avatar-emoji[data-v-eb2fc3be]:after{content:"🕶️";position:absolute;top:6px;left:50%;transform:translate(-50%) scale(0);font-size:18px;opacity:0;transition:all .3s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.avatar-grid.peek-hide .avatar-emoji[data-v-eb2fc3be]:after{transform:translate(-50%) scale(1.1);opacity:1}.avatar-grid.peek-hide .avatar-btn .avatar-emoji[data-v-eb2fc3be]{transform:translateY(-2px);transition:transform .3s ease}.app-layout[data-v-53a20092]{display:flex;height:100vh;background:var(--bg-base);color:var(--text-inverse);overflow:hidden}.sidebar[data-v-53a20092]{width:260px;background:var(--bg-sidebar);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--border-color-subtle);display:flex;flex-direction:column;padding:24px 16px;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:all var(--transition-slow)}.sidebar-header[data-v-53a20092]{text-align:center;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border-color-subtle)}.logo-container[data-v-53a20092]{display:inline-flex;align-items:center;justify-content:center;gap:10px}.logo-image[data-v-53a20092]{width:32px;height:32px;object-fit:contain}.logo[data-v-53a20092]{font-size:28px;font-weight:var(--font-bold);margin:0;background:linear-gradient(135deg,var(--text-inverse) 0%,var(--color-primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle[data-v-53a20092]{font-size:var(--text-sm);color:var(--text-subtle);margin-top:4px;letter-spacing:1px}.nav-menu[data-v-53a20092]{display:flex;flex-direction:column;gap:8px;flex:1;overflow-y:auto}.nav-item[data-v-53a20092]{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-xl);color:var(--text-muted);text-decoration:none;transition:all var(--transition-normal);border:1px solid transparent}.nav-item[data-v-53a20092]:hover{background:var(--bg-glass-medium);color:var(--text-inverse)}.nav-item.active[data-v-53a20092]{background:linear-gradient(90deg,var(--primary-alpha-15),var(--primary-alpha-5));color:var(--color-primary-light);border:1px solid var(--primary-alpha-30);box-shadow:var(--shadow-glow-sm)}.user-avatar[data-v-53a20092]{width:32px;height:32px;border-radius:var(--radius-circle);display:flex;align-items:center;justify-content:center;font-size:var(--text-md);font-weight:var(--font-semibold);color:var(--text-inverse);background:linear-gradient(135deg,var(--bg-glass-hover),var(--bg-glass-subtle));border:1px solid var(--border-color-subtle)}.user-name[data-v-53a20092]{font-size:var(--text-md);color:var(--text-primary)}.me-tag[data-v-53a20092]{font-size:var(--text-sm);color:var(--text-faint)}.sidebar-footer[data-v-53a20092]{display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid var(--border-color-subtle);margin-top:16px}.current-user[data-v-53a20092]{display:flex;align-items:center;gap:10px}.footer-actions[data-v-53a20092]{display:flex;align-items:center;gap:8px}.theme-toggle-btn[data-v-53a20092]{width:28px;height:28px;border-radius:var(--radius-circle);border:1px solid var(--border-color-subtle);background:var(--bg-glass-subtle);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;transition:all var(--transition-normal);padding:0}.theme-toggle-btn[data-v-53a20092]:hover{background:var(--bg-glass-hover);transform:scale(1.15)}.status-dot[data-v-53a20092]{width:8px;height:8px;border-radius:var(--radius-circle);background:var(--color-error);box-shadow:0 0 8px var(--error-alpha-40);transition:all var(--transition-slow)}.status-dot.online[data-v-53a20092]{background:var(--color-success);box-shadow:0 0 8px var(--success-alpha-40);animation:pulse 2s ease-in-out infinite}.main-content[data-v-53a20092]{flex:1;margin-left:260px;padding:32px;height:100vh;position:relative;z-index:1;overflow:hidden;max-width:calc(100vw - 260px);box-sizing:border-box}.page-enter-active[data-v-53a20092]{animation:fadeInUp .4s cubic-bezier(.2,.8,.2,1)}.page-leave-active[data-v-53a20092]{animation:fadeOut-53a20092 .2s ease-in}@keyframes fadeOut-53a20092{0%{opacity:1}to{opacity:0}}@media(max-width:768px){.sidebar[data-v-53a20092]{width:64px;padding:16px 8px;align-items:center;background:var(--bg-sidebar)}.main-content[data-v-53a20092]{margin-left:64px;padding:16px;max-width:calc(100vw - 64px)}.subtitle[data-v-53a20092],.nav-item span[data-v-53a20092],.user-name[data-v-53a20092]{display:none}.logo[data-v-53a20092]{font-size:var(--text-xl);background:none;-webkit-text-fill-color:var(--text-inverse)}.logo-image[data-v-53a20092]{width:24px;height:24px}.nav-item[data-v-53a20092]{justify-content:center;padding:12px}.sidebar-header[data-v-53a20092]{margin-bottom:16px;padding-bottom:16px}.sidebar-footer[data-v-53a20092]{justify-content:center;padding-top:12px}.current-user[data-v-53a20092]{gap:0}}.fade-enter-active,.fade-leave-active{transition:opacity .5s ease}.fade-enter-from,.fade-leave-to{opacity:0}:root{--palette-blue-50: #eff6ff;--palette-blue-100: #dbeafe;--palette-blue-200: #bfdbfe;--palette-blue-300: #93c5fd;--palette-blue-400: #60a5fa;--palette-blue-500: #3b82f6;--palette-blue-600: #2563eb;--palette-blue-700: #1d4ed8;--palette-blue-800: #1e40af;--palette-blue-900: #1e3a8a;--palette-cyan-200: #a5f3fc;--palette-cyan-300: #67e8f9;--palette-cyan-400: #22d3ee;--palette-cyan-500: #06b6d4;--palette-green-300: #6ee7b7;--palette-green-400: #34d399;--palette-green-500: #10b981;--palette-green-600: #059669;--palette-amber-300: #fcd34d;--palette-amber-400: #fbbf24;--palette-amber-500: #f59e0b;--palette-red-300: #fca5a5;--palette-red-400: #f87171;--palette-red-500: #ef4444;--palette-slate-300: #94a3b8;--palette-slate-400: #64748b;--palette-slate-500: #475569}:root,[data-theme=dark]{--color-primary: var(--palette-blue-500);--color-primary-light: var(--palette-blue-300);--color-primary-dark: var(--palette-blue-700);--color-accent: var(--palette-cyan-500);--color-accent-light: var(--palette-cyan-400);--color-success: var(--palette-green-500);--color-success-light: var(--palette-green-300);--color-success-dark: var(--palette-green-600);--color-warning: var(--palette-amber-500);--color-warning-light: var(--palette-amber-400);--color-error: var(--palette-red-500);--color-error-light: var(--palette-red-300);--bg-base: #0a0a12;--bg-primary: #0a0a12;--bg-secondary: #12121a;--bg-tertiary: #1a1a24;--bg-card: #22222e;--bg-hover: #1e1e2a;--bg-sidebar: #12121a;--bg-overlay: rgba(0, 0, 0, .6);--bg-panel: rgba(20, 20, 30, .4);--bg-panel-deep: rgba(20, 20, 30, .9);--bg-glass: rgba(22, 22, 34, .8);--bg-glass-subtle: rgba(255, 255, 255, .05);--bg-glass-light: rgba(255, 255, 255, .06);--bg-glass-medium: rgba(255, 255, 255, .08);--bg-glass-hover: rgba(255, 255, 255, .1);--bg-glass-active: rgba(255, 255, 255, .2);--bg-dark-subtle: rgba(0, 0, 0, .2);--bg-dark-medium: rgba(0, 0, 0, .3);--bg-dark-heavy: rgba(0, 0, 0, .4);--bg-dark-overlay: rgba(0, 0, 0, .5);--text-primary: #e4e4e7;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--text-inverse: white;--text-bright: rgba(255, 255, 255, .8);--text-muted: rgba(255, 255, 255, .7);--text-dim: rgba(255, 255, 255, .6);--text-subtle: rgba(255, 255, 255, .5);--text-faint: rgba(255, 255, 255, .4);--text-ghost: rgba(255, 255, 255, .3);--text-placeholder: rgba(255, 255, 255, .15);--border-color: #27272a;--border-color-light: #3f3f46;--border-color-subtle: rgba(255, 255, 255, .1);--border-color-muted: rgba(255, 255, 255, .2);--border-color-focus: rgba(59, 130, 246, .5);--border-color-focus-strong: rgba(59, 130, 246, .6);--bg-terminal: #0c0d14;--log-timestamp: #5a6578;--log-tx-color: #e5a84b;--log-tx-msg: #d4b872;--log-rx-color: #4db8b8;--log-rx-msg: #7ecfcf;--log-sys-color: #7889a0;--log-sys-msg: #8e9db2;--primary-alpha-5: rgba(59, 130, 246, .05);--primary-alpha-10: rgba(59, 130, 246, .1);--primary-alpha-12: rgba(59, 130, 246, .12);--primary-alpha-15: rgba(59, 130, 246, .15);--primary-alpha-18: rgba(59, 130, 246, .18);--primary-alpha-20: rgba(59, 130, 246, .2);--primary-alpha-25: rgba(59, 130, 246, .25);--primary-alpha-30: rgba(59, 130, 246, .3);--primary-alpha-35: rgba(59, 130, 246, .35);--primary-alpha-40: rgba(59, 130, 246, .4);--primary-alpha-50: rgba(59, 130, 246, .5);--primary-alpha-60: rgba(59, 130, 246, .6);--success-alpha-5: rgba(16, 185, 129, .05);--success-alpha-8: rgba(16, 185, 129, .08);--success-alpha-10: rgba(16, 185, 129, .1);--success-alpha-15: rgba(16, 185, 129, .15);--success-alpha-20: rgba(16, 185, 129, .2);--success-alpha-25: rgba(16, 185, 129, .25);--success-alpha-30: rgba(16, 185, 129, .3);--success-alpha-40: rgba(16, 185, 129, .4);--error-alpha-10: rgba(239, 68, 68, .1);--error-alpha-15: rgba(239, 68, 68, .15);--error-alpha-20: rgba(239, 68, 68, .2);--error-alpha-25: rgba(239, 68, 68, .25);--error-alpha-30: rgba(239, 68, 68, .3);--error-alpha-40: rgba(239, 68, 68, .4);--warning-alpha-8: rgba(245, 158, 11, .08);--warning-alpha-10: rgba(245, 158, 11, .1);--warning-alpha-15: rgba(245, 158, 11, .15);--warning-alpha-20: rgba(245, 158, 11, .2);--warning-alpha-25: rgba(245, 158, 11, .25);--warning-alpha-30: rgba(245, 158, 11, .3);--warning-alpha-40: rgba(245, 158, 11, .4);--accent-alpha-10: rgba(6, 182, 212, .1);--accent-alpha-15: rgba(6, 182, 212, .15);--accent-alpha-20: rgba(6, 182, 212, .2);--accent-alpha-30: rgba(6, 182, 212, .3);--btn-connect-bg: var(--success-alpha-20);--btn-connect-bg-hover: var(--success-alpha-30);--btn-connect-border: var(--success-alpha-40);--btn-connect-text: var(--palette-green-300);--btn-disconnect-bg: var(--error-alpha-20);--btn-disconnect-bg-hover: var(--error-alpha-30);--btn-disconnect-border: var(--error-alpha-40);--btn-disconnect-text: var(--palette-red-300);--orb-color-1: var(--palette-blue-600);--orb-color-2: var(--palette-cyan-500);--orb-color-3: var(--palette-blue-800);--orb-opacity-1: .15;--orb-opacity-2: .12;--orb-opacity-3: .1}[data-theme=light]{--color-primary: var(--palette-blue-600);--color-primary-light: var(--palette-blue-400);--color-primary-dark: var(--palette-blue-800);--bg-base: #e8e8e8;--bg-primary: #e8e8e8;--bg-secondary: #dedede;--bg-tertiary: #d4d4d4;--bg-card: #f5f5f5;--bg-hover: #dedede;--bg-sidebar: #e2e2e2;--bg-overlay: rgba(0, 0, 0, .3);--bg-panel: rgba(245, 245, 245, .92);--bg-panel-deep: rgba(245, 245, 245, .96);--bg-glass: rgba(240, 243, 248, .85);--bg-glass-subtle: rgba(0, 0, 0, .03);--bg-glass-light: rgba(0, 0, 0, .04);--bg-glass-medium: rgba(0, 0, 0, .06);--bg-glass-hover: rgba(0, 0, 0, .08);--bg-glass-active: rgba(0, 0, 0, .12);--bg-dark-subtle: rgba(0, 0, 0, .04);--bg-dark-medium: rgba(0, 0, 0, .06);--bg-dark-heavy: rgba(0, 0, 0, .08);--bg-dark-overlay: rgba(0, 0, 0, .12);--text-primary: #1a1a1a;--text-secondary: #333333;--text-tertiary: #4a4a4a;--text-inverse: #1a1a1a;--text-bright: rgba(0, 0, 0, .9);--text-muted: rgba(0, 0, 0, .75);--text-dim: rgba(0, 0, 0, .65);--text-subtle: rgba(0, 0, 0, .6);--text-faint: rgba(0, 0, 0, .55);--text-ghost: rgba(0, 0, 0, .5);--text-placeholder: rgba(0, 0, 0, .45);--border-color: #e2e8f0;--border-color-light: #cbd5e1;--border-color-subtle: rgba(0, 0, 0, .08);--border-color-muted: rgba(0, 0, 0, .12);--border-color-focus: rgba(37, 99, 235, .4);--border-color-focus-strong: rgba(37, 99, 235, .6);--bg-terminal: #f5f7fa;--log-timestamp: #94a3b8;--log-tx-color: #b45309;--log-tx-msg: #92400e;--log-rx-color: #0e7490;--log-rx-msg: #155e75;--log-sys-color: #546e8a;--log-sys-msg: #475e75;--primary-alpha-5: rgba(37, 99, 235, .05);--primary-alpha-10: rgba(37, 99, 235, .1);--primary-alpha-12: rgba(37, 99, 235, .12);--primary-alpha-15: rgba(37, 99, 235, .15);--primary-alpha-18: rgba(37, 99, 235, .18);--primary-alpha-20: rgba(37, 99, 235, .2);--primary-alpha-25: rgba(37, 99, 235, .25);--primary-alpha-30: rgba(37, 99, 235, .3);--primary-alpha-35: rgba(37, 99, 235, .35);--primary-alpha-40: rgba(37, 99, 235, .4);--primary-alpha-50: rgba(37, 99, 235, .5);--primary-alpha-60: rgba(37, 99, 235, .6);--btn-connect-text: var(--palette-green-500);--btn-disconnect-text: var(--palette-red-500);--orb-color-1: var(--palette-blue-600);--orb-color-2: var(--palette-cyan-500);--orb-color-3: var(--palette-blue-800);--orb-opacity-1: .08;--orb-opacity-2: .06;--orb-opacity-3: .05}:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--text-2xs: 10px;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 15px;--text-xl: 16px;--text-2xl: 18px;--text-3xl: 24px;--leading-tight: 1.3;--leading-compact: 1.4;--leading-normal: 1.6;--leading-relaxed: 1.8;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700}:root{--duration-fast: .15s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .4s;--duration-page: .5s;--ease-default: ease;--ease-in-out: ease-in-out;--ease-out: ease-out;--ease-in: ease-in;--ease-smooth: cubic-bezier(.4, 0, .2, 1);--transition-fast: var(--duration-fast) var(--ease-default);--transition-normal: var(--duration-normal) var(--ease-default);--transition-slow: var(--duration-slow) var(--ease-default);--transition-smooth: var(--duration-normal) var(--ease-smooth)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--primary-alpha-30, rgba(59, 130, 246, .3))}50%{box-shadow:0 0 20px var(--primary-alpha-60, rgba(59, 130, 246, .6))}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes flashHighlight{0%{background:var(--warning-alpha-40, rgba(245, 158, 11, .4))}to{background:var(--warning-alpha-10, rgba(245, 158, 11, .1))}}@keyframes dotPulse{0%,80%,to{transform:scale(0);opacity:0}40%{transform:scale(1);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-out)}.animate-fade-in-up{animation:fadeInUp var(--duration-normal) var(--ease-out)}.animate-fade-in-down{animation:fadeInDown var(--duration-normal) var(--ease-out)}.animate-slide-in-left{animation:slideInLeft var(--duration-normal) var(--ease-out)}.animate-slide-in-right{animation:slideInRight var(--duration-normal) var(--ease-out)}.animate-scale-in{animation:scaleIn var(--duration-normal) var(--ease-out)}.animate-pulse{animation:pulse 2s var(--ease-in-out) infinite}.animate-glow{animation:glow 2s var(--ease-in-out) infinite}.animate-float{animation:float 3s var(--ease-in-out) infinite}.animate-spin{animation:spin 1s linear infinite}.page-enter-active{animation:fadeInUp var(--duration-slow) var(--ease-out)}.page-leave-active{animation:fadeIn var(--duration-normal) var(--ease-in) reverse}:root,[data-theme=dark]{--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .5);--shadow-2xl: 0 24px 48px rgba(0, 0, 0, .6);--shadow-card: 0 12px 30px rgba(0, 0, 0, .3);--shadow-ambient: 0 0 40px rgba(0, 0, 0, .2);--shadow-glow-xs: 0 0 5px var(--primary-alpha-30);--shadow-glow-sm: 0 0 12px var(--primary-alpha-12);--shadow-glow: 0 0 20px var(--primary-alpha-30);--shadow-glow-lg: 0 0 20px var(--primary-alpha-40);--shadow-glow-ring: 0 0 0 3px var(--primary-alpha-15);--shadow-btn-primary: 0 4px 15px var(--primary-alpha-40);--shadow-btn-hover: 0 2px 8px var(--primary-alpha-20);--shadow-success-sm: 0 0 6px var(--color-success);--shadow-success: 0 0 10px var(--color-success);--shadow-success-md: 0 4px 20px var(--success-alpha-30);--shadow-success-lg: 0 8px 30px var(--success-alpha-40);--shadow-success-btn: 0 0 15px var(--success-alpha-20);--shadow-error-sm: 0 0 6px var(--color-error);--shadow-error: 0 0 10px var(--color-error);--shadow-error-md: 0 4px 20px var(--error-alpha-30);--shadow-error-lg: 0 8px 30px var(--error-alpha-40);--shadow-error-btn: 0 0 15px var(--error-alpha-20);--shadow-popover: 0 24px 48px rgba(0, 0, 0, .6), 0 0 0 1px var(--primary-alpha-10)}[data-theme=light]{--shadow-sm: 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .1);--shadow-2xl: 0 24px 48px rgba(0, 0, 0, .12);--shadow-card: 0 4px 16px rgba(0, 0, 0, .06);--shadow-ambient: 0 0 40px rgba(0, 0, 0, .04);--shadow-popover: 0 12px 32px rgba(0, 0, 0, .12), 0 0 0 1px var(--primary-alpha-10)}:root{--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;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-base: 8px;--radius-lg: 10px;--radius-xl: 12px;--radius-2xl: 14px;--radius-3xl: 16px;--radius-4xl: 20px;--radius-full: 999px;--radius-circle: 50%}.glass-panel{background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color-subtle);border-radius:var(--radius-3xl);overflow:hidden}.glass-btn{background:var(--bg-glass-medium);border:1px solid var(--border-color-subtle);color:var(--text-muted);padding:8px 16px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-normal);display:inline-flex;align-items:center;gap:6px}.glass-btn:hover{background:var(--bg-glass-active)}.glass-btn.full-width{width:100%;padding:12px;font-weight:var(--font-bold);justify-content:center}.glass-btn:disabled{opacity:.5;cursor:not-allowed}.btn-connect{background:var(--btn-connect-bg);color:var(--btn-connect-text);border:1px solid var(--btn-connect-border)}.btn-connect:hover:not(:disabled){background:var(--btn-connect-bg-hover);box-shadow:var(--shadow-success-btn)}.btn-disconnect{background:var(--btn-disconnect-bg);color:var(--btn-disconnect-text);border:1px solid var(--btn-disconnect-border)}.btn-disconnect:hover:not(:disabled){background:var(--btn-disconnect-bg-hover);box-shadow:var(--shadow-error-btn)}.icon-btn{background:transparent;border:none;color:var(--text-subtle);font-size:var(--text-2xl);padding:8px;border-radius:var(--radius-base);cursor:pointer;transition:all var(--transition-normal);display:flex}.icon-btn:hover{background:var(--bg-glass-hover);color:var(--text-inverse)}.icon-btn.active{color:var(--color-warning)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.glass-input{background:var(--bg-dark-subtle);border:1px solid var(--border-color-subtle);border-radius:var(--radius-base);padding:8px 12px;color:var(--text-inverse);font-family:inherit;font-size:var(--text-base);outline:none;transition:all var(--transition-normal)}.glass-input:focus{background:var(--bg-dark-heavy);border-color:var(--border-color-focus)}.glass-input::placeholder{color:var(--text-faint)}.glass-input.small{width:100%;padding:6px 10px}.log-entry.TX .tag{color:var(--log-tx-color)}.log-entry.RX .tag{color:var(--log-rx-color)}.log-entry.SYS .tag{color:var(--log-sys-color)}.log-entry.TX .msg{color:var(--log-tx-msg)}.log-entry.RX .msg{color:var(--log-rx-msg)}.log-entry.SYS .msg{color:var(--log-sys-msg)}:deep(.search-match){background:var(--warning-alpha-30);color:var(--color-warning);border-radius:var(--radius-xs)}.indicator-light{width:8px;height:8px;border-radius:var(--radius-circle);background:var(--color-error);box-shadow:var(--shadow-error);transition:all var(--transition-slow)}.status-indicator.connected .indicator-light{background:var(--color-success);box-shadow:var(--shadow-success)}.gradient-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-accent))}.gradient-text{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.user-avatar{width:32px;height:32px;border-radius:var(--radius-circle);display:flex;align-items:center;justify-content:center;font-size:var(--text-2xl);color:var(--text-inverse);flex-shrink:0;background:var(--bg-glass-hover)}.btn-glow{position:relative;overflow:hidden}.btn-glow:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left var(--duration-page) var(--ease-default)}.btn-glow:hover:before{left:100%}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-3xl);padding:var(--space-6);transition:all var(--transition-normal)}.card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-glow);transform:translateY(-4px)}.card-glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color-subtle)}.toggle-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 8px;border-radius:6px;background:var(--bg-hover);border:1px solid var(--border-color);font-size:12px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-normal)}.toggle-chip.active{background:var(--palette-blue-900);border-color:var(--palette-blue-600);color:var(--palette-blue-200)}.session-container{font-family:var(--font-mono)}.session-container .status-text{font-size:var(--text-base);font-weight:var(--font-semibold)}.session-container .terminal-content{font-size:var(--text-md);line-height:var(--leading-compact)}.session-container .terminal-placeholder{font-size:var(--text-md)}.session-container .log-time{font-size:var(--text-xs)}.session-container .msg{line-height:var(--leading-tight)}.session-container .panel-header,.session-container .dropdown-header,.session-container .mode-toggle button{font-size:var(--text-base);font-weight:var(--font-semibold)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:var(--leading-normal);height:100vh;overflow:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb{background:var(--border-color-light);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media(max-width:768px){:root{font-size:14px}.card{padding:var(--space-4)}}
