@import"https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=Inter:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--bg-deep: #0a0f16;--bg-surface: #131b26;--bg-elevated: rgba(25, 35, 50, .6);--text-main: #e2e8f0;--text-muted: #94a3b8;--text-inverse: #ffffff;--accent-cyan: #06b6d4;--accent-cyan-glow: rgba(6, 182, 212, .3);--accent-blue: #3b82f6;--accent-purple: #8b5cf6;--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .15);--ok: #10b981;--ok-bg: rgba(16, 185, 129, .15);--queued: #f59e0b;--queued-bg: rgba(245, 158, 11, .15);--failed: #ef4444;--failed-bg: rgba(239, 68, 68, .15);--glass-blur: blur(16px);--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -2px rgba(0, 0, 0, .2);--shadow-glow: 0 0 20px var(--accent-cyan-glow)}*{box-sizing:border-box}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0003;border-radius:4px}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}html,body,#root{margin:0;width:100%;height:100%}body{color:var(--text-main);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-deep);background-image:radial-gradient(circle at 15% 50%,rgba(6,182,212,.08),transparent 40%),radial-gradient(circle at 85% 30%,rgba(139,92,246,.08),transparent 40%);background-attachment:fixed}h1,h2,h3,h4,h5,h6,.td-kicker{font-family:Outfit,sans-serif}.td-app-shell{min-height:100%;display:grid;grid-template-rows:auto 1fr;padding:20px;gap:20px;max-width:1800px;margin:0 auto}.td-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--line);border-radius:20px;background:var(--bg-elevated);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);padding:16px 24px;box-shadow:var(--shadow-sm)}.td-kicker{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--accent-cyan);font-weight:600}.td-topbar h1{margin:4px 0 0;font-size:clamp(1.4rem,2vw,1.8rem);font-weight:600;background:linear-gradient(to right,#fff,#a5b4fc);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.td-topbar-meta{display:flex;align-items:center;gap:12px}.td-topbar-meta code{font-family:IBM Plex Mono,monospace;border-radius:999px;border:1px solid var(--line);padding:6px 14px;font-size:.75rem;background:#0000004d;color:var(--text-muted)}.td-status-chip{padding:6px 14px;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.1em;font-family:Outfit,sans-serif}.td-status-idle{color:var(--text-muted);background:#ffffff0d;border:1px solid var(--line)}.td-status-queued{color:var(--queued);background:var(--queued-bg);border:1px solid rgba(245,158,11,.3);animation:pulse-queued 2s infinite}@keyframes pulse-queued{0%{box-shadow:0 0 #f59e0b66}70%{box-shadow:0 0 0 6px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.td-status-completed{color:var(--ok);background:var(--ok-bg);border:1px solid rgba(16,185,129,.3)}.td-status-failed{color:var(--failed);background:var(--failed-bg);border:1px solid rgba(239,68,68,.3)}.td-grid{min-height:0;display:grid;gap:20px}.td-grid-3d{grid-template-columns:minmax(380px,450px) minmax(0,1fr)}.td-panel{border:1px solid var(--line);border-radius:20px;background:var(--bg-elevated);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);padding:24px;min-height:0;overflow:auto;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.td-panel h2{margin:0 0 6px;font-size:1.25rem;font-weight:600}.td-panel h3{margin:0;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.td-muted{margin:0 0 16px;color:var(--text-muted);line-height:1.5;font-size:.9rem}.td-chat-log{border:1px solid var(--line);border-radius:16px;background:#0003;padding:16px;flex-grow:1;min-height:200px;max-height:45vh;overflow-y:auto;display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.td-chat-bubble{border-radius:14px;padding:12px 16px;max-width:90%;animation:slide-up .3s ease-out}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.td-chat-bubble strong{font-family:Outfit,sans-serif;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;opacity:.8;display:block;margin-bottom:4px}.td-chat-bubble p{margin:0;font-size:.95rem;line-height:1.5}.td-chat-user{align-self:flex-end;background:#ffffff14;border:1px solid var(--line);border-bottom-right-radius:4px}.td-chat-assistant{align-self:flex-start;background:linear-gradient(145deg,#06b6d41a,#3b82f61a);border:1px solid rgba(6,182,212,.2);border-bottom-left-radius:4px}.td-form{display:grid;gap:16px;background:#0003;padding:20px;border-radius:16px;border:1px solid var(--line)}.td-form-chat{margin-top:auto}.td-form label{display:grid;gap:8px;font-size:.85rem;color:var(--text-muted);font-weight:500}.td-form textarea,.td-form input{width:100%;border:1px solid var(--line-strong);border-radius:12px;background:#0006;color:var(--text-inverse);font-family:Inter,sans-serif;font-size:.95rem;line-height:1.5;padding:12px 16px;transition:all .2s ease}.td-form input{font-family:IBM Plex Mono,monospace;font-size:.85rem}.td-form textarea:focus,.td-form input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 2px #06b6d433;background:#0009}.td-form textarea{resize:vertical;min-height:100px}.td-form textarea::placeholder{color:#ffffff4d}button{border:none;border-radius:12px;padding:14px 20px;color:#fff;font-family:Outfit,sans-serif;font-weight:600;font-size:.95rem;letter-spacing:.05em;background:linear-gradient(to right,var(--accent-blue),var(--accent-cyan));cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #06b6d433}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #06b6d466;filter:brightness(1.1)}button:active:not(:disabled){transform:translateY(0)}button:disabled{opacity:.5;cursor:not-allowed;background:var(--line-strong);box-shadow:none}.td-panel-viewer{display:flex;flex-direction:column;gap:16px}.td-canvas-wrap{width:100%;flex-grow:1;min-height:480px;border:1px solid var(--line-strong);border-radius:16px;overflow:hidden;background:radial-gradient(circle at center,#1e293b,#0f172a);position:relative;box-shadow:inset 0 0 40px #00000080}.td-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.td-metrics div{border:1px solid var(--line);border-radius:12px;padding:12px 16px;background:#0003;text-align:center}.td-metrics p{margin:0 0 6px;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-family:Outfit,sans-serif}.td-metrics code{font-family:IBM Plex Mono,monospace;font-size:.85rem;color:var(--text-main)}.td-text-queued{color:var(--queued);font-weight:600}.td-text-completed{color:var(--ok);font-weight:600}.td-text-failed{color:var(--failed);font-weight:600}.td-export-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.td-export-row a{text-decoration:none;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:#ffffff0d;color:var(--text-main);padding:10px 20px;font-family:Outfit,sans-serif;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600;transition:all .2s ease}.td-export-row a:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-1px)}.td-failure-box{border:1px solid rgba(239,68,68,.3);background:#ef44440d;border-radius:16px;padding:16px;display:grid;gap:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.td-failure-box .td-error{font-size:1.05rem;color:#fca5a5;margin:0}.td-failure-box button{background:linear-gradient(to right,#ef4444,#dc2626);box-shadow:0 4px 12px #ef444433;width:100%}.td-failure-box button:hover:not(:disabled){box-shadow:0 6px 20px #ef444466}.td-error{margin:8px 0 0;color:var(--failed);font-weight:500;font-size:.9rem}@media(max-width:1040px){.td-grid-3d{grid-template-columns:1fr}.td-topbar{flex-direction:column;align-items:flex-start}.td-topbar-meta{justify-content:flex-start;flex-wrap:wrap;width:100%}.td-canvas-wrap{min-height:400px}.td-app-shell{padding:12px}}
