:root{color:#e2e8f0;background:#0f172a;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:#0f172a;color:#e2e8f0}.app{position:relative;min-height:100vh;overflow:hidden;background:#0f172a;color:#e2e8f0}.bg-overlay{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 20%,rgba(99,102,241,.15),transparent 35%),radial-gradient(circle at 80% 0%,rgba(236,72,153,.12),transparent 30%),radial-gradient(circle at 50% 80%,rgba(16,185,129,.08),transparent 30%),linear-gradient(rgba(148,163,184,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.04) 1px,transparent 1px);background-size:120px 120px,120px 120px,120px 120px,120px 120px,120px 120px}.shell{width:min(1100px,calc(100% - 2rem));margin:0 auto}.header-shell{display:flex;flex-direction:column;gap:12px;padding:20px 0;align-items:flex-start;justify-content:space-between}@media (min-width: 640px){.header-shell{flex-direction:row;align-items:center}}.app-header{position:relative;z-index:10;border-bottom:1px solid rgba(51,65,85,.7);background:#0f172acc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-left{display:flex;align-items:center;gap:12px}.brand-mark{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:#6366f126;box-shadow:inset 0 0 0 1px #6366f166,inset 0 8px 24px #6366f133;color:#c7d2fe;font-weight:600;font-size:.9rem}.header-titles h1{margin:0;font-size:1.25rem;font-weight:600;letter-spacing:-.01em}@media (min-width: 640px){.header-titles h1{font-size:1.45rem}}.title-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.subtitle{margin:2px 0 0;font-size:.75rem;color:#94a3b8}.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}.status-chip{display:inline-flex;align-items:center;gap:8px;border-radius:999px;border:1px solid;padding:6px 12px;font-size:.72rem;font-weight:600;box-shadow:0 10px 30px #00000059}.status-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.status-running{border-color:#fbbf2499;background:#fbbf241a;color:#fef3c7}.status-connected{border-color:#34d39999;background:#34d3991a;color:#d1fae5}.status-idle{border-color:#64748b99;background:#0f172ab3;color:#e2e8f0}.status-error{border-color:#f43f5eb3;background:#f43f5e1a;color:#fecdd3}.status-dot.running{background:#fbbf24;animation:pulse 1s ease-in-out infinite}.status-dot.connected{background:#34d399}.status-dot.error{background:#fb7185}.status-dot.idle{background:#94a3b8}@keyframes pulse{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.status-meta{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;color:#94a3b8;font-size:.68rem}.meta-chip{border-radius:8px;border:1px solid rgba(51,65,85,.7);padding:6px 10px;background:#0f172ad9}.meta-chip.clickable{cursor:pointer;transition:all .2s ease}.meta-chip.clickable:hover{background:#1e293be6;border-color:#6366f180}.copy-indicator{margin-left:6px;color:#34d399;font-weight:700}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:600;border:1px solid rgba(148,163,184,.3);background:#0f172acc}.pill-indigo{border-color:#6366f159;background:#6366f11a;color:#c7d2fe}.pill-emerald{border-color:#10b98159;background:#10b9811a;color:#bbf7d0}.pill-stroke{border-color:#475569b3}.main-shell{position:relative;z-index:10;display:flex;flex-direction:column;gap:24px;padding:32px 0 48px}.layout-grid{display:grid;gap:20px}.layout-grid.two-col{grid-template-columns:1fr}@media (min-width: 1024px){.layout-grid{grid-template-columns:1.2fr .8fr}.layout-grid.two-col{grid-template-columns:1fr 1fr}}.panel{border:1px solid rgba(51,65,85,.7);background:#0f172ad9;border-radius:18px;padding:20px;box-shadow:inset 0 1px #ffffff05,0 20px 50px #0006}.hero{background:linear-gradient(135deg,#0f172af2,#1e293bb3)}.side{background:#0f172ad9}.hero-top{display:flex;flex-direction:column;gap:8px;align-items:flex-start;justify-content:space-between}@media (min-width: 640px){.hero-top{flex-direction:row;align-items:flex-start}}.hero h2{margin:4px 0 0;font-size:1.6rem;font-weight:600;letter-spacing:-.01em}.muted{color:#94a3b8;margin:6px 0 0;font-size:.92rem}.muted.small{font-size:.8rem}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;color:#c7d2fe;margin:0}.eyebrow.small{color:#94a3b8;font-size:.68rem}.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.hero-actions{margin-top:16px;display:flex;flex-direction:column;gap:10px}@media (min-width: 640px){.hero-actions{flex-direction:row;align-items:center}}.action-buttons{display:flex;gap:8px;align-items:center}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(71,85,105,.7);border-radius:14px;padding:12px 16px;font-weight:600;color:#e2e8f0;cursor:pointer;background:#0f172acc;transition:all .2s ease}.btn-secondary:hover{background:#1e293be6;border-color:#64748be6}.error-banner{display:flex;align-items:center;gap:10px;margin-top:12px;padding:12px 16px;border-radius:12px;background:#f43f5e26;border:1px solid rgba(244,63,94,.4);color:#fecdd3}.error-icon{font-size:1.1rem}.error-text{flex:1;font-size:.9rem}.error-retry{border:1px solid rgba(244,63,94,.6);border-radius:8px;padding:6px 12px;background:#f43f5e33;color:#fecdd3;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s ease}.error-retry:hover{background:#f43f5e4d}.input{flex:1;width:100%;border-radius:14px;border:1px solid rgba(51,65,85,.8);background:#0f172ad9;color:#e2e8f0;padding:12px 14px;font-size:.95rem;box-shadow:inset 0 1px 2px #00000059}.input::-moz-placeholder{color:#64748b}.input::placeholder{color:#64748b}.input:focus{outline:2px solid rgba(99,102,241,.4);border-color:#6366f180;box-shadow:0 0 0 4px #6366f12e}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:14px;padding:12px 16px;font-weight:700;color:#fff;cursor:pointer;background:linear-gradient(90deg,#6366f1,#8b5cf6);box-shadow:0 12px 30px #6366f159;transition:filter .2s ease,transform .1s ease}.btn-primary:disabled{background:#1e293b;cursor:not-allowed;box-shadow:none;color:#94a3b8}.btn-primary:not(:disabled):hover{filter:brightness(1.05)}.btn-primary:not(:disabled):active{transform:translateY(1px)}.spinner{display:inline-block;width:14px;height:14px;border-radius:999px;border:2px solid rgba(255,255,255,.8);border-bottom-color:transparent;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stats-row{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.stat-card{border:1px solid rgba(51,65,85,.8);border-radius:12px;padding:12px;background:#0f172acc}.stat-card.subtle{background:#0f172a99}.stat-card.full{grid-column:span 2}@media (max-width: 640px){.stat-card.full{grid-column:span 1}}.stat-label{margin:0;text-transform:uppercase;font-size:.7rem;letter-spacing:.14em;color:#94a3b8}.stat-label.small{font-size:.65rem}.stat-value{margin:6px 0 4px;font-size:1.1rem;font-weight:600}.stat-value.small{font-size:.95rem}.stat-help{margin:0;color:#94a3b8;font-size:.8rem}.accent-indigo{color:#c7d2fe}.accent-emerald{color:#bbf7d0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-title{margin:0;font-size:1rem;text-transform:uppercase;letter-spacing:.12em;color:#cbd5e1}.panel-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:.75rem;color:#94a3b8}.panel-head-actions{display:flex;align-items:center;gap:8px}.copy-report-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(16,185,129,.4);border-radius:8px;padding:6px 12px;background:#10b9811a;color:#bbf7d0;cursor:pointer;font-size:.75rem;font-weight:600;transition:all .2s ease}.copy-report-btn:hover{background:#10b98133;border-color:#10b98199}.stat-value-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0 4px}.copy-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid rgba(71,85,105,.7);border-radius:6px;background:#0f172acc;color:#94a3b8;cursor:pointer;font-size:.7rem;transition:all .2s ease;padding:0}.copy-btn:hover{background:#1e293be6;border-color:#6366f180;color:#c7d2fe}.log-window{margin-top:14px;height:24rem;overflow-y:auto;border-radius:14px;border:1px solid rgba(51,65,85,.8);background:linear-gradient(180deg,#0f172ae6,#0f172a99);padding:12px;scroll-behavior:smooth}.log-window::-webkit-scrollbar{width:8px}.log-window::-webkit-scrollbar-track{background:#0f172a80;border-radius:4px}.log-window::-webkit-scrollbar-thumb{background:#47556999;border-radius:4px}.log-window::-webkit-scrollbar-thumb:hover{background:#64748bcc}.empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;color:#94a3b8}.empty-title{margin:0;font-weight:600;color:#e2e8f0}.empty-body{margin:0;max-width:320px;font-size:.78rem}.log-list{display:flex;flex-direction:column;gap:10px}.log-item{position:relative;border:1px solid rgba(51,65,85,.8);border-radius:12px;background:#0f172acc;padding:12px;box-shadow:0 10px 20px #0000004d}.log-dot{position:absolute;top:10px;right:10px;width:8px;height:8px;border-radius:50%;background:#6366f1b3}.log-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.74rem;color:#94a3b8}.log-tag{border:1px solid rgba(71,85,105,.7);border-radius:999px;padding:4px 8px;background:#0f172acc;font-size:.7rem}.log-msg{margin-top:6px;font-size:.95rem;color:#e2e8f0}.report{margin-top:14px}.report-empty{border:1px dashed rgba(71,85,105,.7);border-radius:12px;padding:14px;background:#0f172acc;color:#94a3b8;font-size:.9rem}.report h1,.report h2,.report h3,.report h4,.report h5{margin:.4em 0 .2em;font-weight:600}.report p{margin:.35em 0;color:#e2e8f0}.report ul{padding-left:1.2em;margin:.3em 0 .6em}.report li{margin:.2em 0}.side-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:12px}body{color:#e2e8f0;background:#0f172a;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}
