:root{--color-bg: #f5f7fa;--color-surface: #ffffff;--color-surface-alt: #eef2f6;--color-border: #d8dee5;--color-text: #18222e;--color-text-muted: #5b6776;--color-primary: #003a70;--color-primary-hover: #00528f;--color-accent: #e87722;--color-danger: #b3261e;--color-warning: #f1b500;--color-success: #1f8c4c;--shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 3px rgba(0, 0, 0, .06);--radius: 6px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);font-size:14px;line-height:1.5}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button,.button{font-family:inherit;font-size:14px;padding:8px 14px;background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);border-radius:var(--radius);cursor:pointer;transition:background .15s ease}button:hover,.button:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:var(--color-surface);color:var(--color-primary)}button.secondary:hover{background:var(--color-surface-alt)}button.danger{background:var(--color-danger);border-color:var(--color-danger)}input,select,textarea{font-family:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%}textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;min-height:120px}label{display:block;margin-bottom:4px;font-weight:500;color:var(--color-text)}.app{display:flex;flex-direction:column;min-height:100vh}.topbar{height:56px;background:var(--color-primary);color:#fff;display:flex;align-items:center;padding:0 20px;gap:20px;box-shadow:var(--shadow-1)}.topbar .logo{height:32px;width:auto;display:block}.topbar .spacer{flex:1}.topbar select{background:#ffffff1f;color:#fff;border-color:#fff3;width:auto;min-width:220px}.topbar select option{color:var(--color-text)}.topbar .user-menu{position:relative}.topbar .user-button{background:#ffffff1f;border-color:#fff3}.user-popover{position:absolute;right:0;top:44px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-1);min-width:220px;padding:12px;z-index:10}.body{display:flex;flex:1;min-height:0}.sidebar{width:220px;background:var(--color-surface);border-right:1px solid var(--color-border);padding:16px 0}.sidebar nav{display:flex;flex-direction:column}.sidebar a{padding:10px 20px;color:var(--color-text);font-weight:500}.sidebar a:hover{background:var(--color-surface-alt);text-decoration:none}.sidebar a.active{background:var(--color-surface-alt);color:var(--color-primary);border-left:3px solid var(--color-primary);padding-left:17px}.main{flex:1;padding:24px 32px;overflow:auto;display:flex;flex-direction:column}.main>*:not(.page-fill){flex-shrink:0}.main>.page-fill{flex:1;min-height:0;overflow:hidden}.page-header{margin-bottom:24px}.page-header h1{margin:0 0 4px;font-size:22px;font-weight:600}.page-header p{margin:0;color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px;margin-bottom:16px;box-shadow:var(--shadow-1)}.card h2{margin-top:0;font-size:16px}.card .field{margin-bottom:14px}.card .actions{display:flex;gap:8px;justify-content:flex-end}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--color-border);vertical-align:top}th{background:var(--color-surface-alt);font-weight:600;color:var(--color-text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.4px}.task-row.human-assigned{background:#e8772214}.task-row .toggle{border:none;background:transparent;color:var(--color-primary);padding:0 4px 0 0;cursor:pointer;width:20px}.status-badge{display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.4px;padding:2px 8px;border-radius:12px;background:var(--color-surface-alt);color:var(--color-text-muted)}.status-badge.RUNNING,.status-badge.PROVISIONING,.status-badge.PENDING,.status-badge.QUEUED{background:#00528f1f;color:var(--color-primary)}.status-badge.STOPPED{background:#1f8c4c1f;color:var(--color-success)}.status-badge.FAILED{background:#b3261e1f;color:var(--color-danger)}.muted{color:var(--color-text-muted)}.error{color:var(--color-danger)}.flex{display:flex;gap:8px;align-items:center}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.page-fill{display:flex;flex-direction:column;height:100%;min-height:0}.page-fill .page-header{margin-bottom:12px;flex-shrink:0}.page-fill .card{flex-shrink:0}.agent-selector{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px;flex-shrink:0}.agent-selector select{min-width:200px}.agent-selector .msg{color:var(--color-success);font-size:13px}.agent-detail{flex:1;display:flex;flex-direction:column;min-height:0}.agent-fields{display:flex;flex-wrap:wrap;gap:12px;flex-shrink:0;margin-bottom:12px}.agent-fields .field.inline{min-width:180px;flex:1}.agent-fields .field.inline label{font-size:12px;font-weight:600;margin-bottom:4px;display:block}.agent-prompt{flex:1;display:flex;flex-direction:column;min-height:0}.agent-prompt label{font-size:12px;font-weight:600;margin-bottom:4px;flex-shrink:0}.agent-prompt textarea{flex:1;min-height:120px;resize:none}.card textarea[style*="overflow: hidden"]{min-height:120px}.center-screen{display:flex;align-items:center;justify-content:center;min-height:100vh}.callout{background:var(--color-surface-alt);border-left:3px solid var(--color-primary);padding:12px 16px;border-radius:var(--radius);margin-bottom:16px}.callout ol,.callout ul{margin:6px 0 6px 20px;padding:0}.callout code{background:var(--color-surface);padding:1px 6px;border-radius:4px;border:1px solid var(--color-border);font-size:12px}.repo-row,.agent-row,.member-row{border:1px solid var(--color-border);padding:12px;border-radius:var(--radius);margin-bottom:10px;background:var(--color-bg)}.repo-row .row-actions,.agent-row .row-actions{display:flex;justify-content:flex-end}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--color-border);margin-bottom:16px}.tab{background:transparent;border:none;border-bottom:2px solid transparent;padding:8px 16px;margin-bottom:-1px;cursor:pointer;color:var(--color-text-muted);font-size:14px;font-weight:500}.tab:hover{color:var(--color-text)}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.kv-grid{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0}.kv-grid dt{color:var(--color-text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.4px}.kv-grid dd{margin:0}.log-viewer{background:#0b0d10;color:#d6dde6;border-radius:var(--radius);padding:12px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;max-height:480px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:8px 0 0}.token-status{padding:8px 12px;border-radius:var(--radius);font-size:13px;margin:8px 0}.token-status--checking{background:var(--color-surface-alt);color:var(--color-text-muted)}.token-status--valid{background:#e6f4ec;color:var(--color-success)}.token-status--warning{background:#fff3e0;color:#e65100}.token-status--invalid{background:#fdecea;color:var(--color-danger)}
