    body { background: #0f172a; color: #e2e8f0; min-height: 100vh; }
    .panel { background: #1e293b; border: 1px solid #334155; border-radius: 16px; }
    .chip { background: #334155; padding: 2px 8px; border-radius: 999px; font-size: 11px; }
    .ok-dot { width:8px;height:8px;border-radius:50%;background:#22c55e;display:inline-block; }
    .ko-dot { width:8px;height:8px;border-radius:50%;background:#ef4444;display:inline-block; }
    .pending-dot { width:8px;height:8px;border-radius:50%;background:#f59e0b;display:inline-block; }
    table { width:100%; border-collapse: collapse; }
    th, td { padding: 10px 12px; text-align: left; border-bottom: 1px solid #334155; font-size: 13px; }
    th { background: #0f172a; font-weight: 600; color: #94a3b8; text-transform: uppercase; font-size: 11px; letter-spacing: .05em; }
    tbody tr:hover { background: #273448; }
    input, select, textarea {
        background:#0f172a; border:1px solid #334155; color:#e2e8f0;
        padding:8px 12px; border-radius:8px; width:100%; font-size:13px;
    }
    input:focus, select:focus, textarea:focus { outline:none; border-color:#7c3aed; box-shadow: 0 0 0 3px rgba(124,58,237,.2); }
    .btn { padding:8px 14px; border-radius:8px; font-size:13px; font-weight:600; cursor:pointer; transition:all .15s; display:inline-flex; align-items:center; gap:6px; border:none; }
    .btn-primary { background: linear-gradient(135deg,#7c3aed,#4f46e5); color:#fff; }
    .btn-primary:hover { background: linear-gradient(135deg,#6d28d9,#4338ca); }
    .btn-ghost { background: transparent; color:#cbd5e1; border:1px solid #334155; }
    .btn-ghost:hover { background:#334155; }
    .btn-danger { background:#dc2626; color:#fff; }
    .btn-danger:hover { background:#b91c1c; }
    .badge-ok { background: rgba(34,197,94,.15); color:#86efac; padding:2px 8px; border-radius:6px; font-size:11px; }
    .badge-ko { background: rgba(239,68,68,.15); color:#fca5a5; padding:2px 8px; border-radius:6px; font-size:11px; }
    .badge-pending { background: rgba(245,158,11,.15); color:#fcd34d; padding:2px 8px; border-radius:6px; font-size:11px; }
    .modal-bg { position:fixed; inset:0; background:rgba(2,6,23,.75); display:flex; align-items:center; justify-content:center; z-index:50; padding:24px; }
    .modal { background:#1e293b; border:1px solid #334155; border-radius:16px; max-width:640px; width:100%; padding:24px; max-height:90vh; overflow-y:auto; }
    .tab-btn, .detail-tab { padding:10px 16px; border-bottom:2px solid transparent; cursor:pointer; color:#94a3b8; font-weight:500; font-size:13px; }
    .tab-btn.active, .detail-tab.active { color:#a78bfa; border-color:#7c3aed; }
    .detail-tab:hover { color:#c4b5fd; }
    .tool-card { background:#0f172a; border:1px solid #334155; border-radius:10px; padding:14px; transition:border-color .15s; }
    .tool-card:hover { border-color:#7c3aed; }
    .tool-card .tool-name { font-weight:700; color:#e2e8f0; font-size:14px; }
    .tool-card .tool-desc { color:#94a3b8; font-size:12px; margin-top:4px; line-height:1.4; }
    .param-row { display:flex; align-items:baseline; gap:8px; padding:4px 0; font-size:12px; }
    .param-name { color:#a78bfa; font-weight:600; font-family:monospace; }
    .param-type { color:#64748b; font-size:11px; }
    .param-desc { color:#94a3b8; }
    .chat-bubble-nox { background:#1e293b; border:1px solid #334155; border-radius:0 12px 12px 12px; padding:12px 16px; font-size:14px; line-height:1.6; color:#cbd5e1; max-width:85%; white-space:pre-wrap; word-break:break-word; }
    .chat-bubble-nox strong { color:#a78bfa; }
    .chat-bubble-user { background:linear-gradient(135deg,#7c3aed,#4f46e5); border-radius:12px 0 12px 12px; padding:12px 16px; font-size:14px; line-height:1.6; color:#fff; max-width:85%; word-break:break-word; }
    .ai-analysis { background:#0f172a; border:1px solid #334155; border-radius:12px; padding:20px; line-height:1.7; font-size:14px; color:#cbd5e1; white-space:pre-wrap; }
    .ai-analysis strong, .ai-analysis b { color:#a78bfa; }
    .ai-objective { background:rgba(124,58,237,.1); border:1px solid rgba(124,58,237,.3); border-radius:8px; padding:12px; margin-bottom:16px; }
    code { background:#0f172a; padding:2px 6px; border-radius:4px; font-size:12px; }
    pre { background:#0b1220; border:1px solid #1e293b; padding:12px; border-radius:8px; overflow-x:auto; font-size:12px; }
