@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--glass-bg: rgba(255, 255, 255, .08);--glass-bg-hover: rgba(255, 255, 255, .12);--glass-bg-active: rgba(255, 255, 255, .16);--glass-bg-card: rgba(255, 255, 255, .06);--glass-bg-deep: rgba(0, 0, 0, .25);--glass-border: rgba(255, 255, 255, .15);--glass-border-bright: rgba(255, 255, 255, .28);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .4), 0 1px 0 rgba(255,255,255,.08) inset;--glass-shadow-lg: 0 24px 64px rgba(0, 0, 0, .5), 0 1px 0 rgba(255,255,255,.1) inset;--glass-blur: blur(20px) saturate(1.8);--glass-blur-sm: blur(12px) saturate(1.6);--liquid-shine: linear-gradient(135deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,.04) 50%, rgba(255,255,255,.1) 100%);--liquid-edge: linear-gradient(180deg, rgba(255,255,255,.2) 0%, rgba(255,255,255,.05) 100%);--accent-primary: #5e9cf5;--accent-secondary: #a78bfa;--accent-glow: rgba(94, 156, 245, .35);--accent-glow-violet: rgba(167, 139, 250, .35);--accent-green: #34d399;--accent-green-glow: rgba(52, 211, 153, .3);--accent-amber: #fbbf24;--accent-red: #f87171;--accent-red-glow: rgba(248, 113, 113, .3);--text-primary: rgba(255, 255, 255, .92);--text-secondary: rgba(255, 255, 255, .55);--text-tertiary: rgba(255, 255, 255, .3);--text-accent: #5e9cf5;--bg-base: #050810;--bg-gradient: radial-gradient(ellipse at 20% 20%, #0d1545 0%, #050810 50%), radial-gradient(ellipse at 80% 80%, #120d2e 0%, transparent 50%);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 22px;--radius-xl: 32px;--nav-width: 72px;--sidebar-width: 280px;--panel-gap: 16px;--t-fast: .12s ease;--t-med: .22s cubic-bezier(.34, 1.56, .64, 1);--t-slow: .35s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;overflow:hidden}body{background:var(--bg-base);background-image:var(--bg-gradient);background-attachment:fixed}.glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);position:relative;overflow:hidden}.glass:before{content:"";position:absolute;inset:0;background:var(--liquid-shine);pointer-events:none;z-index:0}.glass>*{position:relative;z-index:1}.glass-card{background:var(--glass-bg-card);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--glass-shadow);position:relative;overflow:hidden;transition:background var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast)}.glass-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);pointer-events:none}.glass-card:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-bright);box-shadow:var(--glass-shadow-lg)}.app-shell{display:flex;height:100vh;width:100vw;overflow:hidden}.nav-rail{width:var(--nav-width);height:100%;display:flex;flex-direction:column;align-items:center;padding:20px 0;gap:4px;flex-shrink:0;background:#0000004d;backdrop-filter:blur(24px) saturate(2);-webkit-backdrop-filter:blur(24px) saturate(2);border-right:1px solid var(--glass-border);z-index:100}.nav-logo{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:16px;box-shadow:0 0 20px var(--accent-glow),0 0 40px #5e9cf526;flex-shrink:0}.nav-btn{width:48px;height:48px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--t-med);position:relative}.nav-btn:hover{background:var(--glass-bg);color:var(--text-primary);transform:scale(1.05)}.nav-btn.active{background:linear-gradient(135deg,#5e9cf533,#a78bfa26);color:var(--accent-primary);border:1px solid rgba(94,156,245,.3);box-shadow:0 0 16px #5e9cf533}.nav-btn .nav-tooltip{position:absolute;left:calc(100% + 12px);white-space:nowrap;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-border);padding:5px 10px;border-radius:8px;font-size:12px;font-weight:500;color:var(--text-primary);pointer-events:none;opacity:0;transform:translate(-6px);transition:all .15s ease;z-index:999}.nav-btn:hover .nav-tooltip{opacity:1;transform:translate(0)}.nav-spacer{flex:1}.main-area{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.header-bar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--glass-border);background:#0003;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);flex-shrink:0}.header-title{font-size:15px;font-weight:600;color:var(--text-primary);letter-spacing:-.02em}.header-subtitle{font-size:12px;color:var(--text-secondary);margin-top:1px}.header-actions{display:flex;align-items:center;gap:10px}.panel-area{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px;display:flex;flex-direction:column;gap:var(--panel-gap);scroll-behavior:smooth}.panel-area::-webkit-scrollbar{width:4px}.panel-area::-webkit-scrollbar-track{background:transparent}.panel-area::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--panel-gap)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--panel-gap)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--panel-gap)}.grid-auto{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--panel-gap)}.stat-card{padding:18px 20px;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:8px}.stat-card .stat-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.stat-card .stat-value{font-size:32px;font-weight:700;line-height:1;color:var(--text-primary);letter-spacing:-.03em}.stat-card .stat-sub{font-size:12px;color:var(--text-secondary)}.stat-card .stat-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:100px;font-size:11px;font-weight:600;letter-spacing:.02em}.badge.online,.badge.success,.badge.idle{background:#34d39926;color:var(--accent-green);border:1px solid rgba(52,211,153,.25)}.badge.running,.badge.active{background:#5e9cf526;color:var(--accent-primary);border:1px solid rgba(94,156,245,.25)}.badge.error,.badge.offline{background:#f8717126;color:var(--accent-red);border:1px solid rgba(248,113,113,.25)}.badge.warn,.badge.compacting{background:#fbbf2426;color:var(--accent-amber);border:1px solid rgba(251,191,36,.25)}.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}.status-dot.online,.status-dot.idle,.status-dot.success{background:var(--accent-green);box-shadow:0 0 6px var(--accent-green)}.status-dot.running,.status-dot.active{background:var(--accent-primary);box-shadow:0 0 6px var(--accent-primary);animation:pulse-blue 1.5s infinite}.status-dot.error,.status-dot.offline{background:var(--accent-red);box-shadow:0 0 6px var(--accent-red)}.status-dot.warn,.status-dot.compacting{background:var(--accent-amber);box-shadow:0 0 6px var(--accent-amber)}@keyframes pulse-blue{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.agent-card{padding:18px;border-radius:var(--radius-md);cursor:pointer;transition:all var(--t-med);display:flex;flex-direction:column;gap:12px}.agent-card.selected{border-color:#5e9cf580;background:#5e9cf514;box-shadow:0 0 0 1px #5e9cf54d,var(--glass-shadow)}.agent-avatar{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#5e9cf540,#a78bfa33);border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;font-size:22px}.agent-name{font-size:14px;font-weight:600;color:var(--text-primary)}.agent-theme{font-size:11px;color:var(--text-secondary);margin-top:2px}.agent-model{font-size:11px;color:var(--text-tertiary);font-family:SF Mono,Fira Code,monospace;margin-top:2px}.session-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--t-fast);border:1px solid transparent}.session-row:hover{background:var(--glass-bg-hover);border-color:var(--glass-border)}.session-row.selected{background:#5e9cf514;border-color:#5e9cf54d}.session-key{font-size:12px;font-family:SF Mono,Fira Code,monospace;color:var(--text-accent);flex-shrink:0;min-width:140px}.session-last-msg{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.session-meta{font-size:11px;color:var(--text-tertiary);flex-shrink:0;text-align:right}.cron-row{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius-sm);border:1px solid transparent;transition:all var(--t-fast)}.cron-row:hover{background:var(--glass-bg-hover);border-color:var(--glass-border)}.cron-name{font-size:13px;font-weight:500;color:var(--text-primary);flex:1}.cron-schedule{font-size:11px;font-family:monospace;color:var(--text-tertiary)}.cron-meta{font-size:11px;color:var(--text-secondary);text-align:right;min-width:120px}.chat-container{display:flex;flex-direction:column;height:100%;gap:0}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.chat-messages::-webkit-scrollbar{width:3px}.chat-messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.chat-bubble{max-width:80%;padding:12px 16px;border-radius:var(--radius-md);font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.chat-bubble.user{align-self:flex-end;background:linear-gradient(135deg,#5e9cf540,#a78bfa33);border:1px solid rgba(94,156,245,.3);color:var(--text-primary)}.chat-bubble.assistant{align-self:flex-start;background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary)}.chat-bubble.system{align-self:center;background:#fbbf2414;border:1px solid rgba(251,191,36,.2);color:var(--accent-amber);font-size:11px;padding:6px 14px;max-width:60%;text-align:center}.chat-role{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:6px}.chat-input-area{padding:16px;border-top:1px solid var(--glass-border);background:#00000026}.chat-input-row{display:flex;gap:10px;align-items:flex-end}.chat-input{flex:1;background:#ffffff0f;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:10px 14px;color:var(--text-primary);font-size:13px;font-family:inherit;resize:none;min-height:42px;max-height:120px;outline:none;transition:border-color var(--t-fast),box-shadow var(--t-fast)}.chat-input:focus{border-color:#5e9cf580;box-shadow:0 0 0 3px #5e9cf51f}.chat-input::placeholder{color:var(--text-tertiary)}.log-list{display:flex;flex-direction:column;gap:2px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:11.5px}.log-entry{display:flex;gap:12px;padding:5px 10px;border-radius:6px;align-items:flex-start;transition:background var(--t-fast)}.log-entry:hover{background:#ffffff0a}.log-time{color:var(--text-tertiary);flex-shrink:0;min-width:80px}.log-type{color:var(--accent-secondary);flex-shrink:0;min-width:90px}.log-msg{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-entry.error .log-msg,.log-entry.error .log-type{color:var(--accent-red)}.log-entry.warn .log-msg,.log-entry.warn .log-type{color:var(--accent-amber)}.setup-screen{display:flex;align-items:center;justify-content:center;height:100%;padding:40px}.setup-card{width:100%;max-width:440px;padding:36px;border-radius:var(--radius-xl);display:flex;flex-direction:column;gap:20px}.setup-logo{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 0 32px var(--accent-glow),0 0 64px #5e9cf526;margin:0 auto 4px}.setup-title{text-align:center;font-size:22px;font-weight:700;letter-spacing:-.03em;color:var(--text-primary)}.setup-subtitle{text-align:center;font-size:13px;color:var(--text-secondary);line-height:1.5;margin-top:-8px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.form-input{background:#ffffff0f;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:10px 14px;color:var(--text-primary);font-size:13px;font-family:SF Mono,Fira Code,monospace;outline:none;transition:border-color var(--t-fast),box-shadow var(--t-fast)}.form-input:focus{border-color:#5e9cf580;box-shadow:0 0 0 3px #5e9cf51f}.form-input::placeholder{color:var(--text-tertiary);font-family:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 18px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--t-med);border:none;outline:none;position:relative;overflow:hidden}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),#7eb3ff);color:#fff;box-shadow:0 4px 16px #5e9cf566}.btn-primary:hover{box-shadow:0 6px 24px #5e9cf58c;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 8px #5e9cf54d}.btn-ghost{background:var(--glass-bg);color:var(--text-secondary);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.btn-ghost:hover{background:var(--glass-bg-hover);color:var(--text-primary);border-color:var(--glass-border-bright)}.btn-icon{width:34px;height:34px;padding:0;background:var(--glass-bg);color:var(--text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-sm)}.btn-icon:hover{background:var(--glass-bg-hover);color:var(--text-primary)}.btn-sm{padding:6px 12px;font-size:12px}.btn-success{background:linear-gradient(135deg,#059669,#34d399);color:#fff;box-shadow:0 4px 16px #34d39959}.btn-danger{background:linear-gradient(135deg,#dc2626,#f87171);color:#fff;box-shadow:0 4px 16px #f8717159}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-title{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.conn-indicator{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text-secondary);padding:5px 10px;border-radius:100px;background:var(--glass-bg);border:1px solid var(--glass-border)}.loading-ring{width:20px;height:20px;border:2px solid rgba(255,255,255,.1);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.ambient-orbs{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.08}.orb-1{width:600px;height:600px;background:var(--accent-primary);top:-200px;left:-100px;animation:drift1 20s ease-in-out infinite alternate}.orb-2{width:400px;height:400px;background:var(--accent-secondary);bottom:-100px;right:0;animation:drift2 15s ease-in-out infinite alternate}.orb-3{width:300px;height:300px;background:var(--accent-green);top:50%;right:20%;animation:drift3 18s ease-in-out infinite alternate}@keyframes drift1{0%{transform:translate(0) scale(1)}to{transform:translate(60px,40px) scale(1.1)}}@keyframes drift2{0%{transform:translate(0) scale(1)}to{transform:translate(-40px,-60px) scale(1.15)}}@keyframes drift3{0%{transform:translate(0) scale(1)}to{transform:translate(30px,-50px) scale(.9)}}.overview-hero{display:flex;align-items:center;gap:20px;padding:28px;border-radius:var(--radius-xl);background:linear-gradient(135deg,#5e9cf51f,#a78bfa14);border:1px solid rgba(94,156,245,.2);box-shadow:0 0 60px #5e9cf514}.overview-hero-text h1{font-size:24px;font-weight:700;letter-spacing:-.03em;background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.overview-hero-text p{font-size:13px;color:var(--text-secondary);margin-top:6px}.config-textarea{width:100%;background:#0006;border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:16px;color:#a5f3a5;font-size:12px;font-family:SF Mono,Fira Code,monospace;line-height:1.7;resize:vertical;min-height:400px;outline:none}.config-textarea:focus{border-color:#5e9cf580}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:12px;color:var(--text-tertiary);text-align:center}.empty-state svg{opacity:.3}.empty-state p{font-size:13px}.divider{height:1px;background:var(--glass-border);border:none;margin:4px 0}.scroll-y{overflow-y:auto;overflow-x:hidden}.scroll-y::-webkit-scrollbar{width:3px}.scroll-y::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}@media(max-width:900px){:root{--nav-width: 60px}.grid-4,.grid-3{grid-template-columns:1fr 1fr}}@media(max-width:600px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}
