@import"https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=IBM+Plex+Mono:wght@400;500;600&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";:root{--background: 222 47% 6%;--foreground: 210 40% 98%;--card: 222 42% 10%;--card-foreground: 210 40% 98%;--popover: 222 42% 10%;--popover-foreground: 210 40% 98%;--primary: 160 84% 39%;--primary-foreground: 222 47% 6%;--secondary: 222 42% 15%;--secondary-foreground: 210 40% 98%;--muted: 222 30% 20%;--muted-foreground: 215 20% 65%;--accent: 38 92% 50%;--accent-foreground: 222 47% 6%;--destructive: 0 84% 60%;--destructive-foreground: 210 40% 98%;--border: 222 30% 18%;--input: 222 30% 18%;--ring: 160 84% 39%;--radius: .75rem;--navy-900: 222 47% 6%;--navy-800: 222 42% 10%;--navy-700: 222 38% 15%;--navy-600: 222 35% 22%;--emerald: 160 84% 39%;--emerald-glow: 160 84% 50%;--gold: 38 92% 50%;--gold-light: 38 92% 65%;--sky: 196 91% 60%;--gradient-hero: linear-gradient(135deg, hsl(222 47% 6%) 0%, hsl(222 42% 12%) 50%, hsl(222 47% 8%) 100%);--gradient-card: linear-gradient(180deg, hsl(222 42% 12%) 0%, hsl(222 42% 8%) 100%);--gradient-emerald: linear-gradient(135deg, hsl(160 84% 39%) 0%, hsl(160 84% 30%) 100%);--gradient-gold: linear-gradient(135deg, hsl(38 92% 50%) 0%, hsl(38 92% 40%) 100%);--shadow-glow-emerald: 0 0 40px hsl(160 84% 39% / .2);--shadow-glow-gold: 0 0 40px hsl(38 92% 50% / .2);--shadow-card: 0 4px 24px hsl(222 47% 3% / .5);--shadow-card-hover: 0 8px 40px hsl(222 47% 3% / .7)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow:hidden}body{font-family:Plus Jakarta Sans,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";background:var(--gradient-hero);color:hsl(var(--foreground))}button,input,textarea{font-family:inherit}code,pre{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.websocket-terminal{min-height:100vh;width:100%;padding:32px 24px;background:radial-gradient(circle at 12% 18%,hsl(var(--emerald) / .18),transparent 40%),radial-gradient(circle at 88% 12%,hsl(var(--gold) / .16),transparent 45%),var(--gradient-hero);color:hsl(var(--foreground));display:flex;justify-content:center;align-items:stretch;overflow:hidden}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 hsl(var(--gold) / .2)}50%{box-shadow:0 0 18px hsl(var(--gold) / .35)}}.terminal-frame{width:min(1200px,100%);height:calc(100vh - 64px);display:flex;flex-direction:column;background:hsl(var(--card) / .92);border:1px solid hsl(var(--border));border-radius:20px;box-shadow:var(--shadow-card);overflow:hidden;position:relative;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:rise-in .6s ease-out}.terminal-frame:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0% 0%,hsl(var(--emerald) / .12),transparent 55%),radial-gradient(circle at 100% 0%,hsl(var(--gold) / .12),transparent 45%);pointer-events:none}.terminal-frame>*{position:relative}.terminal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 28px 16px;background:hsl(var(--navy-800) / .7);border-bottom:1px solid hsl(var(--border))}.terminal-brand{display:flex;flex-direction:column;gap:4px}.terminal-title{font-family:"DM Serif Display",serif;font-size:28px;letter-spacing:.02em;color:hsl(var(--foreground))}.terminal-subtitle{font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:hsl(var(--muted-foreground))}.connection-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.status-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:hsl(var(--navy-700) / .6);border:1px solid hsl(var(--border));color:hsl(var(--foreground))}.status-pill.connected{color:hsl(var(--primary));border-color:hsl(var(--primary) / .5);background:hsl(var(--primary) / .12);box-shadow:0 0 16px hsl(var(--primary) / .2)}.status-pill.connecting{color:hsl(var(--gold));border-color:hsl(var(--gold) / .5);background:hsl(var(--gold) / .12);animation:pulse-glow 2.2s ease-in-out infinite}.status-pill.disconnected{color:hsl(var(--destructive));border-color:hsl(var(--destructive) / .5);background:hsl(var(--destructive) / .1)}.status-indicator{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor}.status-context{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:hsl(var(--muted-foreground))}.terminal-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:16px 28px;background:hsl(var(--navy-800) / .55);border-bottom:1px solid hsl(var(--border))}.input-label{display:flex;flex-direction:column;gap:6px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:hsl(var(--muted-foreground));flex:3 1 520px;min-width:320px}.api-key-input{background-color:hsl(var(--navy-900) / .65);border:1px solid hsl(var(--border));color:hsl(var(--foreground));padding:10px 12px;font-size:13px;border-radius:10px;width:100%;transition:border-color .2s ease,box-shadow .2s ease}.api-key-input::placeholder{color:hsl(var(--muted-foreground))}.api-key-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary) / .25)}.api-key-input:disabled{opacity:.6;cursor:not-allowed}.terminal-controls{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto}.terminal-controls button{background-color:hsl(var(--navy-700));border:1px solid hsl(var(--border));color:hsl(var(--foreground));padding:8px 16px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:999px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background-color .2s ease}.terminal-controls button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 18px hsl(var(--navy-900) / .45)}.terminal-controls button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.connect-btn{background:var(--gradient-emerald);border-color:hsl(var(--primary) / .6);color:hsl(var(--primary-foreground));box-shadow:var(--shadow-glow-emerald)}.connect-btn:hover:not(:disabled){border-color:hsl(var(--primary))}.disconnect-btn{background:transparent;border-color:hsl(var(--destructive) / .6);color:hsl(var(--destructive))}.disconnect-btn:hover:not(:disabled){border-color:hsl(var(--destructive))}.clear-btn{background:transparent;border-color:hsl(var(--gold) / .6);color:hsl(var(--gold))}.clear-btn:hover:not(:disabled){border-color:hsl(var(--gold))}.terminal-body{flex:1;display:flex;flex-direction:column;min-height:0;background:hsl(var(--navy-900) / .55)}.messages-container{flex:1;overflow-y:auto;padding:20px 28px;line-height:1.6;min-height:0;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12.5px}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:hsl(var(--navy-800))}.messages-container::-webkit-scrollbar-thumb{background:hsl(var(--navy-600));border-radius:4px}.messages-container::-webkit-scrollbar-thumb:hover{background:hsl(var(--navy-600) / .8)}.message{display:flex;gap:12px;margin-bottom:10px;word-wrap:break-word;max-width:100%;align-items:flex-start}.message-timestamp{color:hsl(var(--muted-foreground));font-size:11px;flex-shrink:0;min-width:70px}.message-text{flex:1;text-align:left}.json-message{background-color:hsl(var(--navy-700) / .5);border:1px solid hsl(var(--border));border-radius:10px;padding:12px;margin-top:4px;font-size:12px;color:hsl(var(--card-foreground));overflow-x:auto;white-space:pre;line-height:1.5;text-align:left}.message-system .json-message{color:hsl(var(--gold-light));background-color:hsl(var(--gold) / .08);border-color:hsl(var(--gold) / .3)}.message-sent .json-message{color:hsl(var(--emerald-glow));background-color:hsl(var(--primary) / .08);border-color:hsl(var(--primary) / .3)}.message-received .json-message{color:hsl(var(--sky));background-color:hsl(var(--sky) / .08);border-color:hsl(var(--sky) / .3)}.request-id{color:hsl(var(--gold));font-weight:600}.log-message{color:hsl(var(--sky))}.log-json-message{background-color:hsl(var(--navy-700) / .5);border:1px solid hsl(var(--border));border-radius:10px;padding:10px;margin-top:6px;font-size:11.5px;color:hsl(var(--card-foreground));overflow-x:auto;white-space:pre;line-height:1.5;text-align:left}.message-system .log-json-message{color:hsl(var(--gold-light));background-color:hsl(var(--gold) / .08);border-color:hsl(var(--gold) / .3)}.message-sent .log-json-message{color:hsl(var(--emerald-glow));background-color:hsl(var(--primary) / .08);border-color:hsl(var(--primary) / .3)}.message-received .log-json-message{color:hsl(var(--sky));background-color:hsl(var(--sky) / .08);border-color:hsl(var(--sky) / .3)}.message-sent{color:hsl(var(--emerald))}.message-sent .message-text:before{content:"< ";color:hsl(var(--emerald-glow))}.message-received{color:hsl(var(--sky))}.message-received .message-text:before{content:"> ";color:hsl(var(--sky))}.message-system{color:hsl(var(--gold))}.message-system .message-text:before{content:"* ";color:hsl(var(--gold))}.message-error{color:hsl(var(--destructive))}.input-form{flex-shrink:0;padding:16px 28px 20px;border-top:1px solid hsl(var(--border));background-color:hsl(var(--navy-800) / .7)}.input-container{display:flex;align-items:center;gap:12px;background:hsl(var(--navy-900) / .7);border:1px solid hsl(var(--border));border-radius:12px;padding:10px 12px}.prompt{color:hsl(var(--primary));font-weight:600}.message-input{flex:1;background-color:transparent;border:none;outline:none;color:hsl(var(--foreground));font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;padding:4px 0}.message-input::placeholder{color:hsl(var(--muted-foreground))}.terminal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:12px 28px;background-color:hsl(var(--navy-800) / .85);border-top:1px solid hsl(var(--border));font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:hsl(var(--muted-foreground))}.help-text code{background-color:hsl(var(--navy-700));padding:3px 6px;border-radius:6px;color:hsl(var(--foreground));margin:0 4px;font-size:10px;text-transform:none;letter-spacing:0}.endpoint-text{text-transform:none;letter-spacing:.02em;font-size:11px;color:hsl(var(--muted-foreground))}@media(max-width:900px){.websocket-terminal{padding:20px 16px}.terminal-frame{height:calc(100vh - 32px)}.terminal-header{padding:20px 20px 14px}.terminal-toolbar{padding:14px 20px}.messages-container{padding:16px 20px}.input-form{padding:14px 20px 18px}.terminal-footer{padding:10px 20px}}@media(max-width:640px){.terminal-header{flex-direction:column;align-items:flex-start}.terminal-title{font-size:24px}.input-label{min-width:100%;flex:1 1 100%}.terminal-controls{margin-left:0}.terminal-footer{flex-direction:column;align-items:flex-start}}#root{height:100%;width:100%}
