:root{--bg: #0e0f14;--bg-panel: #161822;--bg-panel-2: #1d2030;--border: #2a2e42;--text: #e7e8ef;--text-dim: #8b8fa8;--accent: #4de8c9;--accent-dim: #2d8f7d;--danger: #ef6461;--user-bubble: #23263a;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", ui-monospace, SFMono-Regular, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);background-image:radial-gradient(circle at 20% 0%,rgba(77,232,201,.06),transparent 40%),radial-gradient(circle at 80% 100%,rgba(93,79,232,.08),transparent 45%);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;height:100vh;max-width:900px;margin:0 auto}.app-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border)}.app-header h1{font-size:15px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0;font-family:var(--font-mono)}.app-header select{background:var(--bg-panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-family:var(--font-mono);font-size:12px}.chat{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.msg{max-width:85%;display:flex;flex-direction:column;gap:8px}.msg-user{align-self:flex-end}.msg-assistant{align-self:flex-start}.msg-content{white-space:pre-wrap;line-height:1.55;padding:10px 14px;border-radius:10px;font-size:14.5px}.msg-user .msg-content{background:var(--user-bubble);border:1px solid var(--border)}.msg-assistant .msg-content{background:transparent;padding-left:2px}.ui-block{border:1px solid var(--border);background:var(--bg-panel);border-radius:10px;padding:14px 16px}.ui-block h4{margin:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-family:var(--font-mono)}.ui-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:13px}.ui-table th,.ui-table td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border)}.ui-table th{color:var(--text-dim);font-weight:500}.ui-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.ui-card{background:var(--bg-panel-2);border:1px solid var(--border);border-radius:8px;padding:12px}.ui-card-title{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.ui-card-value{font-family:var(--font-mono);font-size:20px;color:var(--accent);margin-top:4px}.ui-card-desc{font-size:12px;color:var(--text-dim);margin-top:4px}.ui-actions{display:flex;flex-wrap:wrap;gap:8px}.ui-form{display:flex;flex-direction:column;gap:10px}.ui-form-field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-dim)}.ui-form-field input{background:var(--bg-panel-2);border:1px solid var(--border);border-radius:6px;padding:8px 10px;color:var(--text);font-family:var(--font-mono)}.ui-btn{background:var(--bg-panel-2);border:1px solid var(--accent-dim);color:var(--accent);border-radius:6px;padding:8px 14px;font-size:13px;font-family:var(--font-mono);cursor:pointer;transition:background .15s ease}.ui-btn:hover{background:#4de8c91a}.ui-btn-danger{border-color:var(--danger);color:var(--danger)}.ui-btn-danger:hover{background:#ef64611a}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10}.confirm-box{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:20px;max-width:460px;width:90%}.confirm-box code{display:block;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px;font-family:var(--font-mono);font-size:13px;margin:10px 0;word-break:break-all}.confirm-actions{display:flex;gap:8px;justify-content:flex-end}.composer{display:flex;gap:10px;padding:16px 20px 20px;border-top:1px solid var(--border)}.composer textarea{flex:1;resize:none;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:10px 12px;font-family:var(--font-ui);font-size:14px;min-height:44px;max-height:140px}.composer textarea:focus{outline:none;border-color:var(--accent-dim)}.composer button{background:var(--accent);color:#06110d;border:none;border-radius:8px;padding:0 20px;font-weight:600;font-size:13px;cursor:pointer}.composer button:disabled{opacity:.4;cursor:not-allowed}
