*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0f1419;color:#e6edf3;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.loading{color:#58a6ff;font-size:1.2rem;height:100vh}.loading,.login-page{align-items:center;display:flex;justify-content:center}.login-page{background:linear-gradient(135deg,#0d1117,#1c2128);min-height:100vh}.login-container{background:#161b22;border:1px solid #30363d;border-radius:12px;box-shadow:0 8px 24px #0006;max-width:400px;padding:3rem;width:100%}.login-header{margin-bottom:2rem;text-align:center}.login-header h1{color:#58a6ff;font-size:2.5rem;margin-bottom:.5rem}.login-header p{color:#8b949e;font-size:.9rem}.auth-toggle{border:1px solid #30363d;border-radius:6px;display:flex;gap:0;margin-bottom:2rem;overflow:hidden}.auth-toggle button{background:#21262d;border:none;color:#8b949e;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;padding:.75rem;transition:all .2s}.auth-toggle button:hover{background:#30363d;color:#c9d1d9}.auth-toggle button.active{background:#58a6ff;color:#fff}.login-form{gap:1.5rem}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#c9d1d9;font-size:.9rem;font-weight:600}.form-group input,.form-group textarea{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#e6edf3;font-size:1rem;padding:.75rem;transition:all .2s}.form-group input:focus,.form-group textarea:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff1a;outline:none}.login-form button{background:#238636;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem;transition:background .2s}.login-form button:hover:not(:disabled){background:#2ea043}.login-form button:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#da3633;border-radius:6px;color:#fff;font-size:.9rem;padding:.75rem}.login-footer{color:#8b949e;margin-top:1.5rem;text-align:center}.app{display:flex;flex-direction:column;height:100vh}.app-header{align-items:center;background:#161b22;border-bottom:1px solid #30363d;display:flex;justify-content:space-between;padding:1rem 2rem}.header-left h1{color:#58a6ff;font-size:1.5rem}.header-right{align-items:center;display:flex;gap:1.5rem}.user-name{color:#c9d1d9;font-weight:500}.logout-btn{background:#21262d;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;cursor:pointer;padding:.5rem 1rem;transition:all .2s}.logout-btn:hover{background:#30363d;border-color:#8b949e}.main-content{display:flex;flex:1 1;overflow:hidden}.sidebar{background:#161b22;border-right:1px solid #30363d;padding:1rem 0;width:250px}.sidebar ul{list-style:none}.sidebar li{color:#c9d1d9;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:background .2s}.sidebar li:hover{background:#21262d}.sidebar li.active{background:#1f6feb;border-left:3px solid #58a6ff;color:#fff}.content-area{background:#0d1117;flex:1 1;overflow-y:auto;padding:2rem}.dashboard-header{margin-bottom:2rem}.dashboard-title-row{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.view-toggle-btn{align-items:center;display:inline-flex;gap:.5rem}.view-toggle-btn.active{background:#1f6feb;border-color:#388bfd;color:#fff}.view-toggle-hint{color:#8b949e;font-size:.9rem;margin-bottom:1rem}.dashboard-header h2{color:#e6edf3;font-size:2rem;margin-bottom:1.5rem}.stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-value{margin-bottom:.5rem}.stat-label{font-size:.9rem}.pentests-list{grid-gap:1rem;display:grid;gap:1rem}.empty-state{color:#8b949e;padding:4rem 2rem;text-align:center}.empty-state button{background:#238636;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.75rem 1.5rem;transition:background .2s}.empty-state button:hover{background:#2ea043}.pentest-card{background:#161b22;border:1px solid #30363d;border-radius:8px;cursor:pointer;padding:1.5rem;transition:all .2s}.pentest-card:hover{border-color:#58a6ff;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.pentest-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.pentest-card h3{color:#e6edf3;font-size:1.3rem}.status-badge{font-size:.8rem;text-transform:uppercase}.status-badge.completed{background:#1f6feb;color:#fff}.pentest-info{color:#c9d1d9;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.info-row strong{color:#8b949e;margin-right:.5rem}.pentest-stats{border-top:1px solid #30363d;color:#8b949e;display:flex;font-size:.9rem;gap:1.5rem;padding-top:1rem}.pentest-detail{margin:0 auto;max-width:1200px}.back-btn{background:#21262d;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;cursor:pointer;margin-bottom:1.5rem;padding:.5rem 1rem;transition:all .2s}.back-btn:hover{background:#30363d}.pentest-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.pentest-header h2{color:#e6edf3;font-size:2rem}.status-callout{align-items:flex-start;background:#161b22;border:1px solid #30363d;border-left:4px solid #58a6ff;border-radius:8px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.status-callout-icon{font-size:1.75rem;line-height:1}.status-callout-body{flex:1 1}.status-callout-title{color:#e6edf3;font-weight:600;margin-bottom:.25rem}.status-callout-message{color:#c9d1d9;line-height:1.4}.status-callout-subtext{color:#8b949e;font-size:.9rem;margin-top:.35rem}.status-callout-spinner{animation:spin .75s linear infinite;border:3px solid #58a6ff40;border-radius:50%;border-top-color:#58a6ff;height:24px;margin-top:.2rem;width:24px}.pentest-overview{grid-gap:1rem;background:#161b22;border:1px solid #30363d;border-radius:8px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem;padding:1.5rem}.overview-item{color:#c9d1d9}.overview-item strong{color:#8b949e;display:block;margin-bottom:.25rem}.overview-item.autonomy-control{display:flex;flex-direction:column;gap:.5rem}.overview-item.autonomy-control strong{display:block;margin-bottom:0}.autonomy-mode-selector{border:1px solid #30363d;border-radius:6px;display:flex;flex-wrap:wrap;gap:0;overflow:hidden}.autonomy-btn{background:#21262d;border:none;border-right:1px solid #30363d;color:#8b949e;cursor:pointer;font-size:.8rem;font-weight:600;padding:.4rem .75rem;transition:all .2s;white-space:nowrap}.autonomy-btn:last-child{border-right:none}.autonomy-btn:hover:not(.active){background:#30363d;color:#c9d1d9}.autonomy-btn.active{background:#238636;color:#fff}.tabs{border-bottom:1px solid #30363d;display:flex;gap:.5rem;margin-bottom:1.5rem}.tabs button{background:none;border:none;border-bottom:2px solid #0000;color:#8b949e;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .2s}.tabs button:hover{color:#c9d1d9}.tabs button.active{border-bottom-color:#58a6ff;color:#58a6ff}.logs-container{display:flex;flex-direction:column;height:600px}.logs-list{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding-bottom:1rem}.log-entry{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:1rem}.log-header{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:.4rem}.log-merge-count{background:#388bfd33;border-radius:999px;color:#58a6ff;font-size:.7rem;font-weight:600;padding:.15rem .5rem}.agent-type{background:#1f6feb;border-radius:10px;color:#fff;font-size:.75rem;font-weight:600;padding:.2rem .6rem}.log-entry.user-prompt{background:#58a6ff14;border-left:3px solid #58a6ff;padding-left:.75rem}.agent-type.agent-user{background:#58a6ff}.log-action{color:#e6edf3;flex:1 1;font-size:.85rem;font-weight:600}.log-time{color:#8b949e;font-size:.75rem}.log-details{border-left:2px solid #30363d;color:#c9d1d9;font-size:.85rem;margin-top:.35rem;padding-left:.4rem;white-space:pre-wrap}.reasoning-toggle{background:#238636;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.75rem;padding:.4rem .8rem;transition:background .2s}.reasoning-toggle:hover{background:#2ea043}.reasoning-details{background:#0d1117;border:1px solid #30363d;border-radius:6px;margin-top:1rem;padding:1rem}.reasoning-header{align-items:center;border-bottom:1px solid #30363d;display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem}.reasoning-header strong{color:#58a6ff}.reasoning-stats{color:#8b949e;font-size:.8rem}.reasoning-content{word-wrap:break-word;background:#010409;border-radius:4px;color:#c9d1d9;font-size:.85rem;overflow-x:auto;padding:1rem;white-space:pre-wrap}.backend-logs-toggle{background:#1f6feb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.75rem;margin-left:.5rem;padding:.4rem .8rem;transition:background .2s}.backend-logs-toggle:hover{background:#388bfd}.backend-logs-details{background:#0d1117;border:1px solid #30363d;border-radius:6px;margin-top:1rem;padding:1rem}.backend-logs-header{border-bottom:1px solid #30363d;margin-bottom:.75rem;padding-bottom:.5rem}.backend-logs-header strong{color:#58a6ff;display:block;margin-bottom:.25rem}.backend-logs-subtitle{color:#8b949e;font-size:.75rem;font-style:italic}.backend-logs-content{word-wrap:break-word;background:#010409;border-radius:4px;color:#c9d1d9;font-family:Courier New,monospace;font-size:.75rem;max-height:400px;overflow-x:auto;overflow-y:auto;padding:1rem;white-space:pre-wrap}.backend-logs-empty,.backend-logs-loading{color:#8b949e;font-style:italic;padding:1rem;text-align:center}.prompt-input-container{align-items:flex-end;background:#0d1117;border-top:1px solid #30363d;display:flex;flex-shrink:0;gap:.75rem;padding-top:.75rem}.prompt-input-container textarea{background:#161b22;border:1px solid #30363d;border-radius:6px;color:#e6edf3;flex:1 1;font-family:inherit;font-size:.9rem;min-height:60px;padding:.75rem;resize:vertical}.prompt-input-container textarea:focus{border-color:#58a6ff;outline:none}.prompt-actions{align-items:stretch;display:flex;flex-direction:column;gap:.5rem}.prompt-actions>button{background:#238636;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.25rem;transition:background .2s;white-space:nowrap}.prompt-actions>button:hover:not(:disabled){background:#2ea043}.prompt-actions>button:disabled{cursor:not-allowed;opacity:.5}.quick-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.quick-actions button{background:#21262d;border:1px solid #30363d;border-radius:6px;color:#8b949e;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem .75rem;transition:all .2s;white-space:nowrap}.quick-actions button:hover:not(:disabled){background:#30363d;border-color:#58a6ff;color:#58a6ff}.quick-actions button:disabled{cursor:not-allowed;opacity:.5}.btn-continue{background:#238636!important;border:1px solid #238636!important;color:#fff!important}.btn-continue:hover:not(:disabled){background:#2ea043!important;border-color:#2ea043!important}.scans-container{display:flex;flex-direction:column;gap:1rem}.scan-entry{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:1.25rem}.scan-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.scan-header-main{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.scan-header-meta{align-items:flex-end;display:flex;flex-direction:column;gap:.3rem}.tool-name{background:#1f6feb;color:#fff;font-size:.8rem;padding:.35rem .9rem}.scan-type,.tool-name{border-radius:999px;font-weight:600}.scan-type{background:#58a6ff26;color:#58a6ff;font-size:.75rem;letter-spacing:.05em;padding:.3rem .8rem;text-transform:uppercase}.scan-time{color:#8b949e;font-size:.85rem}.scan-summary{color:#a5d6ff;font-size:.85rem;font-weight:600}.scan-overview{background:#0d1117;border:1px solid #30363d;border-radius:8px;margin-bottom:1.25rem;padding:.75rem 1rem}.scan-description{color:#c9d1d9;font-size:.95rem;margin-bottom:.5rem}.scan-recommendation{color:#8b949e;font-size:.9rem}.scan-recommendation strong{color:#c9d1d9}.scan-findings{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.finding-card{background:#0d1117;border:1px solid #30363d;border-radius:8px;display:flex;flex-direction:column;gap:.75rem;padding:1rem}.finding-card h4{color:#e6edf3;font-size:1rem;margin:0}.finding-header{align-items:center;display:flex;gap:.75rem}.severity-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:600;justify-content:center;letter-spacing:.04em;padding:.25rem .8rem;text-transform:uppercase}.severity-critical{background:#da3633;color:#fff}.severity-high{background:#f85149;color:#fff}.severity-medium{background:#d29922;color:#0d1117}.severity-low{background:#3fb950;color:#0d1117}.severity-info{background:#58a6ff26;border:1px solid #58a6ff4d;color:#58a6ff}.finding-description{color:#c9d1d9;font-size:.95rem}.finding-points{color:#8b949e;display:flex;flex-direction:column;font-size:.9rem;gap:.35rem;list-style:disc;padding-left:1.2rem}.finding-evidence{background:#161b22;border:1px solid #30363d;border-radius:6px;color:#a5d6ff;font-size:.85rem;padding:.75rem}.finding-recommendation{color:#8b949e;font-size:.9rem}.finding-recommendation strong{color:#c9d1d9}.finding-error{background:#22181c;border-color:#f8514999}.finding-error-message{background:#2d1b1f;border:1px solid #f8514999;border-radius:6px;color:#ffb3ae;font-size:.85rem;padding:.75rem}.scan-raw-toggle{display:flex;flex-direction:column;gap:.75rem;margin-top:1.25rem}.scan-raw-data{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-size:.85rem;overflow-x:auto;padding:1rem;white-space:pre-wrap}.new-pentest-form{margin:0 auto;max-width:800px}.new-pentest-form h2{color:#e6edf3;font-size:2rem;margin-bottom:2rem}.new-pentest-form form{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:2rem}.new-pentest-form .form-group{margin-bottom:1.5rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.form-actions button{border:none;border-radius:6px;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .2s}.form-actions button[type=button]{background:#21262d;border:1px solid #30363d;color:#c9d1d9}.form-actions button[type=button]:hover{background:#30363d}.form-actions button[type=submit]{background:#238636;color:#fff}.form-actions button[type=submit]:hover:not(:disabled){background:#2ea043}.form-actions button:disabled{cursor:not-allowed;opacity:.6}.delete-btn{background:#da3633;border:1px solid #f85149;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.delete-btn:hover{background:#f85149}.pentest-actions{align-items:center;display:flex;gap:.5rem}.detail-top-bar{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.attack-plan-container{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:1.5rem}.plan-header{align-items:center;border-bottom:1px solid #30363d;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.plan-header h3{color:#e6edf3;font-size:1.3rem}.plan-actions{align-items:center;display:flex;gap:.5rem}.btn-success{background:#238636;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .2s}.btn-success:hover{background:#2ea043}.btn-danger{background:#da3633;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .2s}.btn-danger:hover{background:#f85149}.btn-secondary{background:#21262d;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.btn-secondary:hover{background:#30363d}.btn-warning{background:#6f42c1;border:1px solid #8a63d2;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.btn-warning:hover{background:#8a63d2}.btn-fast-forward{background:#d4a72c;border:1px solid #e3b341;border-radius:6px;color:#0d1117;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-fast-forward:hover{background:#e3b341}.btn-stop-task{background:#d97706;border:1px solid #f59e0b;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-stop-task:hover{background:#f59e0b}.continue-steps-group{align-items:center;background:#d4a72c1a;border:1px solid #d4a72c4d;border-radius:6px;display:flex;gap:.3rem;padding:.25rem .5rem}.steps-input{background:#161b22;border:1px solid #30363d;border-radius:4px;color:#c9d1d9;font-size:.9rem;padding:.3rem .5rem;text-align:center;width:50px}.steps-input:focus{border-color:#d4a72c;outline:none}.steps-label{color:#8b949e;font-size:.85rem;font-weight:500}.approved-badge{color:#3fb950;font-size:.9rem;font-weight:600}.plan-content{background:#0d1117;border:1px solid #30363d;border-radius:6px;overflow-x:auto;padding:1rem}.plan-content pre{color:#c9d1d9;font-size:.85rem;margin:0}.plan-editor{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-family:Courier New,monospace;font-size:.85rem;padding:1rem;resize:vertical;width:100%}.plan-editor:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff1a;outline:none}.action-buttons{align-items:center;display:flex;gap:.5rem}.export-btn{background:#238636;border:1px solid #2ea043;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.export-btn:hover{background:#2ea043}.retry-btn{background:#1f6feb;border:1px solid #58a6ff;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.retry-btn:hover{background:#58a6ff}.stop-btn{background:#d73a49;border:1px solid #f97583;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.stop-btn:hover{background:#f97583}.skip-btn{background:#6f42c1;border:1px solid #8a63d2;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.skip-btn:hover{background:#8a63d2}.header-status{align-items:center;display:flex;gap:1rem}.status-warning{color:#f0883e;font-size:.9rem;font-weight:600}.status-badge.failed{background:#da3633;color:#fff}.status-badge.plan_rejected{background:#6e7681;color:#fff}.status-badge.running{background:#1f6feb;color:#fff}.status-badge.generating_plan{background:#8957e5;color:#fff}.status-badge.awaiting_approval{background:#f0883e;color:#fff}.status-badge.awaiting_completion{background:#9e6a03;color:#fff}.status-badge.awaiting_next_phase{background:#6e40c9;color:#fff}.status-badge.awaiting_authorization{background:#d29922;color:#fff}.status-badge.plan_approved{background:#238636;color:#fff}.activity-timeline-container{display:flex;flex-direction:column;height:600px}.activity-scrollable{flex:1 1;overflow-y:auto;padding-bottom:.75rem}.activity-list,.activity-scrollable{display:flex;flex-direction:column;gap:.75rem}.activity-list{margin-bottom:1rem}.activity-item{background:#161b22;border:1px solid #30363d;border-radius:6px;padding:.85rem;transition:all .2s ease}.activity-item:hover{border-color:#58a6ff;box-shadow:0 0 0 1px #58a6ff33}.activity-attack-plan{border-left:4px solid #58a6ff}.activity-header{align-items:center;border-bottom:1px solid #30363d;display:flex;gap:.5rem;margin-bottom:.65rem;padding-bottom:.5rem}.activity-icon{font-size:1.15rem}.activity-title{color:#e6edf3;font-size:.95rem;font-weight:600}.activity-time{color:#8b949e;font-size:.8rem;margin-left:auto}.plan-approval-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.65rem}.plan-approved-badge{background:#23863626;border:1px solid #238636;border-radius:4px;color:#3fb950;font-size:.85rem;font-weight:500;margin-bottom:.65rem;padding:.4rem .75rem}.activity-log{border-left:4px solid #6e7681}.activity-log.user-prompt{background:#58a6ff14;border-left:4px solid #58a6ff}.activity-chat{border-left:4px solid #8b949e}.activity-chat.user-message{background:#58a6ff0d;border-left:4px solid #58a6ff}.activity-chat.agent-message{border-left:4px solid #a371f7}.chat-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.chat-icon{font-size:1.05rem}.chat-role{color:#e6edf3;font-size:.85rem;font-weight:600}.chat-time{color:#8b949e;font-size:.75rem;margin-left:auto}.chat-content{color:#c9d1d9;font-size:.85rem;line-height:1.5;margin-bottom:.35rem;white-space:pre-wrap}.phase-recommendations{border-top:1px solid #30363d;margin-top:1rem;padding-top:1rem}.recommendation-header{color:#e6edf3;font-size:1rem;margin-bottom:1rem}.phase-card{background:#6e76811a;border:1px solid #30363d;border-radius:6px;margin-bottom:.75rem;padding:1rem}.phase-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.phase-name{color:#58a6ff;font-size:.95rem;font-weight:600}.priority-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.priority-badge.priority-critical,.priority-badge.priority-high{background:#f8514926;border:1px solid #da3633;color:#f85149}.priority-badge.priority-medium{background:#bb800926;border:1px solid #9e6a03;color:#d29922}.priority-badge.priority-low{background:#23863626;border:1px solid #238636;color:#3fb950}.phase-description{color:#c9d1d9;font-size:.9rem;margin-bottom:.5rem}.phase-rationale{color:#8b949e;font-size:.85rem;font-style:italic}.phase-approval-actions{border-top:1px solid #30363d;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;padding-top:1rem}.phase-individual-actions{border-top:1px solid #21262d;display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem}.phase-executing-indicator{align-items:center;background:#58a6ff1a;border:1px solid #58a6ff4d;border-radius:4px;color:#58a6ff;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;margin-top:.75rem;padding:.75rem}.streaming-progress{display:flex;flex-direction:column;gap:.75rem}.streaming-status{align-items:center;color:#8b949e;display:flex;font-size:.9rem;gap:.5rem}.streaming-progress-bar{display:flex;flex-direction:column;gap:.5rem}.progress-message{color:#e6edf3;font-size:.9rem;font-weight:500}.progress-bar-container{background:#21262d;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-bar-fill{background:linear-gradient(90deg,#1f6feb,#58a6ff);border-radius:4px;height:100%;transition:width .3s ease}.progress-percent{color:#58a6ff;font-family:SF Mono,Monaco,monospace;font-size:.85rem;font-weight:600;text-align:right}.streaming-reasoning{background:#58a6ff0d;border:1px solid #58a6ff33;border-radius:4px;margin-top:.5rem;padding:.75rem}.streaming-reasoning .reasoning-header{color:#58a6ff;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.streaming-reasoning .reasoning-content{color:#8b949e;font-family:SF Mono,Monaco,monospace;font-size:.85rem;line-height:1.4;white-space:pre-wrap}.streaming-complete{background:#3fb9501a;color:#3fb950}.streaming-complete,.streaming-error{align-items:center;border-radius:4px;display:flex;font-weight:500;gap:.5rem;padding:.5rem}.streaming-error{background:#f851491a;color:#f85149}.recommendation-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.authorization-actions{border-top:1px solid #30363d;margin-top:1rem;padding-top:1rem}.btn-sm{font-size:.85rem;padding:.4rem .8rem}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#161b22;border:1px solid #30363d;border-radius:8px;max-height:80vh;max-width:600px;overflow-y:auto;padding:2rem;width:90%}.modal-content h3{color:#e6edf3;font-size:1.5rem;margin-bottom:1rem}.modal-content p{color:#8b949e;margin-bottom:1.5rem}.modal-content select{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#e6edf3;cursor:pointer;font-size:1rem;padding:.75rem;width:100%}.modal-content select:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff1a;outline:none}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.approval-alert{animation:pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#f0883e,#da3633);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.approval-alert-content{align-items:center;color:#fff;display:flex;gap:1rem}.approval-icon{font-size:2rem}.approval-text strong{display:block;font-size:1.2rem;margin-bottom:.25rem}.approval-text p{margin:0;opacity:.9}.view-mode-toggle{background:#0d1117;border:1px solid #30363d;border-radius:6px;display:flex;gap:0;padding:.25rem}.view-mode-toggle button{background:#0000;border:none;border-radius:4px;color:#8b949e;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.view-mode-toggle button.active{background:#1f6feb;color:#fff}.view-mode-toggle button:hover:not(.active){background:#21262d;color:#c9d1d9}.btn-large{font-size:1rem!important;font-weight:600;padding:.75rem 1.5rem!important}.visual-plan{padding:.5rem 0 0}.plan-overview-cards{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:.75rem}.plan-card{align-items:flex-start;background:#161b22;border:1px solid #30363d;border-left:2px solid #58a6ff;border-radius:4px;display:flex;gap:.5rem;padding:.65rem;transition:all .2s}.plan-card:hover{background:#1a1f26;border-left-color:#1f6feb;transform:translateX(2px)}.plan-card-icon{font-size:1.15rem;min-width:1.15rem;opacity:.85}.plan-card-content{flex:1 1}.plan-card-content h4{color:#8b949e;font-size:.65rem;font-weight:600;letter-spacing:.05em;margin:0 0 .25rem;text-transform:uppercase}.plan-card-content p{color:#e6edf3;font-size:.8rem;font-weight:500;margin:.1rem 0}.plan-flowchart{background:#0000;margin-bottom:.75rem}.flowchart-title{border-bottom:1px solid #30363d;color:#c9d1d9;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.5rem;padding-bottom:.35rem;text-transform:uppercase}.phase-flow{max-width:100%;position:relative}.phase-node{background:#161b22;border:1px solid #30363d;border-left:2px solid #58a6ff;border-radius:4px;display:flex;gap:.5rem;padding:.65rem;position:relative;transition:all .2s}.phase-node:hover{background:#1a1f26;border-left-color:#1f6feb;transform:translateX(2px)}.phase-number{align-items:center;background:#58a6ff1a;border-radius:3px;color:#58a6ff;display:flex;flex-shrink:0;font-family:SF Mono,Monaco,monospace;font-size:.75rem;font-weight:600;height:22px;justify-content:center;width:22px}.phase-content{flex:1 1}.phase-content h5{color:#e6edf3;font-size:.85rem;font-weight:600;margin:0 0 .25rem}.phase-description{color:#8b949e;font-size:.8rem;line-height:1.4;margin:0 0 .5rem}.phase-steps{background:#0d111799;border-radius:3px;margin:.35rem 0;padding:.5rem}.step-item{align-items:flex-start;color:#c9d1d9;display:flex;font-size:.75rem;gap:.4rem;padding:.2rem 0}.step-bullet{color:#58a6ff;font-weight:600;opacity:.7}.step-item.more{color:#6e7681;font-size:.7rem;font-style:italic;padding-left:.8rem}.phase-tools{border-top:1px solid #21262d;color:#6e7681;font-size:.75rem;margin-top:.5rem;padding-top:.5rem}.phase-tools strong{color:#8b949e}.phase-arrow{align-items:flex-start;display:flex;flex-direction:column;margin:.25rem 0 .25rem .5rem}.arrow-line{background:#30363d;height:12px;width:2px}.arrow-head{color:#30363d;font-size:.85rem;line-height:1;margin-left:-3px}.plan-details{grid-gap:.5rem;display:grid;gap:.5rem;margin-top:.65rem}.detail-section{background:#161b22;border:1px solid #30363d;border-radius:4px;padding:.65rem}.detail-section h4{color:#e6edf3;font-size:.8rem;font-weight:600;margin:0 0 .5rem}.detail-section p{color:#8b949e;font-size:.75rem;line-height:1.5;margin:0}.detail-section ul{margin:0;padding-left:1rem}.detail-section ul li{color:#8b949e;font-size:.75rem;margin-bottom:.3rem}.risk-list{display:flex;flex-direction:column;gap:.4rem}.risk-item{background:#f0883e0d;border-left:2px solid #f0883e;border-radius:3px;padding:.5rem}.risk-description{color:#e6edf3;font-size:.75rem;margin-bottom:.3rem}.risk-description strong{color:#f0883e}.risk-details{color:#8b949e;font-size:.7rem;line-height:1.4;margin-bottom:.3rem}.risk-mitigation{border-top:1px solid #21262d;color:#8b949e;font-size:.7rem;margin-top:.3rem;padding-top:.3rem}.risk-mitigation em{color:#3fb950;font-style:normal;font-weight:600}.advanced-editor{margin-top:1rem}.editor-actions{display:flex;gap:.5rem;margin-bottom:1rem}.usage-stats{border-top:1px solid #30363d;margin-top:2rem;padding:1rem 1.5rem}.usage-stats h3{color:#8b949e;font-size:.9rem;letter-spacing:.5px;text-transform:uppercase}.usage-item,.usage-stats h3{margin-bottom:1rem}.usage-item:last-of-type{margin-bottom:.5rem}.usage-label{color:#8b949e;display:block;font-size:.85rem;margin-bottom:.25rem}.usage-value{color:#e6edf3;display:block;font-size:1rem;font-weight:600;margin-bottom:.5rem}.usage-bar{background:#21262d;border-radius:3px;height:6px;overflow:hidden;width:100%}.usage-bar-fill{background:linear-gradient(90deg,#238636,#2ea043);height:100%;transition:width .3s ease}.usage-bar-fill[style*="100%"]{background:linear-gradient(90deg,#da3633,#f85149)}.usage-reset{border-top:1px solid #21262d;color:#6e7681;font-size:.75rem;margin-top:.75rem;padding-top:.75rem}.chat-container{background:#0d1117;border-radius:6px;display:flex;flex-direction:column;height:600px;overflow:hidden}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1rem}.chat-message{animation:slideIn .2s ease;border-radius:8px;max-width:80%;padding:1rem}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{align-self:flex-end;background:#1f6feb;margin-left:auto}.chat-message.agent{align-self:flex-start;background:#21262d;margin-right:auto}.chat-message.system{background:#161b22;font-style:italic;margin:0 auto;max-width:60%;text-align:center}.message-header{display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:.5rem;opacity:.8}.message-time{color:#6e7681;font-size:.75rem}.message-content{line-height:1.6;white-space:pre-wrap}.message-type-badge{background:#388bfd;border-radius:4px;display:inline-block;font-size:.75rem;font-weight:500;margin-top:.5rem;padding:.25rem .5rem}.chat-empty{align-items:center;color:#6e7681;display:flex;flex:1 1;justify-content:center;padding:2rem;text-align:center}.chat-input-container{background:#161b22;border-top:1px solid #21262d;display:flex;gap:.75rem;padding:1rem}.chat-input{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;flex:1 1;font-family:inherit;font-size:.875rem;padding:.75rem;resize:none}.chat-input:focus{border-color:#1f6feb;box-shadow:0 0 0 3px #1f6feb1a;outline:none}.chat-input:disabled{cursor:not-allowed;opacity:.5}.chat-input-container .btn-primary{align-self:flex-end;white-space:nowrap}.billing-status{border:1px solid #30363d;border-radius:8px;margin:1rem 0;padding:1rem;transition:all .3s ease}.billing-status.trial-active{background:#1f6feb0d;border-color:#1f6feb4d}.billing-status.trial-expired{animation:pulse 2s ease-in-out infinite;background:#f851491a;border-color:#f85149}.billing-status.subscription-active{background:#2ea0430d;border-color:#2ea0434d}@keyframes pulse{0%,to{border-color:#f85149}50%{border-color:#f8514980}}.billing-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.billing-icon{font-size:1.25rem}.billing-title{color:#c9d1d9;font-size:.875rem;font-weight:600}.billing-content{margin-bottom:.75rem}.trial-days{color:#1f6feb;font-size:1.5rem;font-weight:700;margin:0 0 .25rem}.trial-message{color:#8b949e;font-size:.875rem;margin:.25rem 0}.btn-subscribe{background:#238636;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1rem;transition:background .2s ease;width:100%}.btn-subscribe:hover{background:#2ea043}.btn-subscribe-small{background:#21262d;border:1px solid #30363d;border-radius:6px;color:#58a6ff;cursor:pointer;font-size:.75rem;padding:.5rem .75rem;transition:all .2s ease}.btn-subscribe-small:hover{background:#30363d;border-color:#58a6ff}.billing-status.trial-expired .btn-subscribe{animation:pulse-button 2s ease-in-out infinite;background:#da3633}.billing-status.trial-expired .btn-subscribe:hover{background:#f85149}@keyframes pulse-button{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.subscription-info{align-items:center;color:#8b949e;display:flex;font-size:.875rem;gap:.5rem}.subscription-info .status-badge{background:#2ea043;border-radius:4px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.card-form-modal{max-width:500px;width:90%}.card-form-notice{background:#1f6feb1a;border:1px solid #1f6feb4d;border-radius:6px;color:#58a6ff;font-size:.875rem;margin-bottom:1.5rem;padding:.75rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.card-form-modal .form-group{margin-bottom:1rem}.card-form-modal .form-group label{color:#c9d1d9;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.card-form-modal .form-group input{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-family:SF Mono,Monaco,monospace;font-size:.875rem;padding:.75rem;width:100%}.card-form-modal .form-group input:focus{border-color:#1f6feb;box-shadow:0 0 0 3px #1f6feb1a;outline:none}.planning-placeholder{border-left-color:#58a6ff}.planning-placeholder .log-details{color:#c9d1d9;font-size:.95rem}.planning-inline{align-items:center;display:flex;gap:.75rem}.inline-spinner{animation:spin .8s linear infinite;border:3px solid #58a6ff33;border-radius:50%;border-top-color:#58a6ff;height:16px;width:16px}.form-hint,.planning-subtext{color:#8b949e;font-size:.85rem;margin-top:.25rem}.form-hint{display:block;font-style:italic}.admin-dashboard{padding:2rem}.admin-dashboard h2{color:#58a6ff;margin-bottom:2rem}.admin-dashboard h3{color:#c9d1d9;margin-bottom:1rem;margin-top:3rem}.platform-stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:1.5rem;text-align:center;transition:all .2s}.stat-card:hover{border-color:#58a6ff;transform:translateY(-2px)}.stat-icon{font-size:2.5rem;margin-bottom:.5rem}.stat-value{color:#58a6ff;font-size:2rem;font-weight:700;margin-bottom:.25rem}.stat-label{color:#8b949e;font-size:.85rem;letter-spacing:.5px;text-transform:uppercase}.server-metrics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.metric-card{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:1.5rem;transition:all .2s}.metric-card:hover{border-color:#58a6ff;transform:translateY(-2px)}.metric-header{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.metric-icon{font-size:1.5rem}.metric-title{color:#e6edf3;font-size:.9rem;font-weight:600}.metric-bar-container{background:#21262d;border-radius:6px;height:12px;margin-bottom:.75rem;overflow:hidden}.metric-bar{border-radius:6px;height:100%;transition:width .3s ease,background-color .3s ease}.metric-details{align-items:center;color:#c9d1d9;display:flex;font-size:.95rem;justify-content:space-between;margin-bottom:.25rem}.metric-percent{font-family:SF Mono,Monaco,monospace;font-weight:700}.metric-subtext{color:#8b949e;font-size:.8rem}.metric-value-large{color:#58a6ff;font-family:SF Mono,Monaco,monospace;font-size:2.5rem;font-weight:700;margin:1rem 0 .5rem}.user-stats-table{background:#161b22;border:1px solid #30363d;border-radius:8px;overflow-x:auto}.user-stats-table table{border-collapse:collapse;width:100%}.user-stats-table th{background:#0d1117;font-size:.85rem;letter-spacing:.5px;text-align:left;text-transform:uppercase}.user-stats-table td,.user-stats-table th{border-bottom:1px solid #30363d;color:#c9d1d9;padding:1rem}.user-stats-table tr:last-child td{border-bottom:none}.user-stats-table tr:hover{background:#0d1117}.admin-row{background:#58a6ff0d}.user-cell{display:flex;flex-direction:column;gap:.25rem}.user-cell strong{color:#e6edf3}.user-cell small{color:#8b949e;font-size:.8rem}.admin-badge{background:#58a6ff;color:#0d1117;font-size:.7rem;font-weight:700;margin-top:.25rem;padding:.125rem .5rem;width:-webkit-fit-content;width:fit-content}.admin-badge,.status-badge{border-radius:12px;display:inline-block}.status-badge{font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:capitalize}.status-badge.active{background:#238636;color:#fff}.status-badge.trialing{background:#1f6feb;color:#fff}.status-badge.trial_expired{background:#da3633;color:#fff}.severity-edit-select{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#e6edf3;cursor:pointer;font-size:.85rem;font-weight:600;padding:.4rem .6rem;transition:border-color .2s}.severity-edit-select:hover{border-color:#58a6ff}.severity-edit-select:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff1a;outline:none}.finding-title-edit{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#e6edf3;flex:1 1;font-size:1rem;font-weight:600;padding:.5rem;transition:border-color .2s}.finding-title-edit:hover{border-color:#58a6ff}.finding-title-edit:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff1a;outline:none}.finding-description-edit,.finding-recommendation-edit{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#e6edf3;font-family:inherit;font-size:.9rem;line-height:1.6;padding:.75rem;resize:vertical;transition:border-color .2s;width:100%}.finding-description-edit:hover,.finding-recommendation-edit:hover{border-color:#58a6ff}.finding-description-edit:focus,.finding-recommendation-edit:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff1a;outline:none}.finding-edit-actions{display:flex;gap:.5rem;margin-top:1rem}.execution-status-bar{align-items:center;animation:pulse-border 2s ease-in-out infinite;background:linear-gradient(135deg,#1f6feb,#0969da);border:1px solid #388bfd;border-radius:8px;box-shadow:0 2px 8px #1f6feb4d;display:flex;gap:12px;margin-bottom:12px;padding:12px 16px}@keyframes pulse-border{0%,to{box-shadow:0 2px 8px #1f6feb4d}50%{box-shadow:0 2px 12px #1f6feb80}}.status-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;flex-shrink:0;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.status-text{color:#fff;flex:1 1;font-size:.95rem}.status-text strong{font-weight:600}.status-subtext{color:#ffffffb3;font-size:.85rem;font-style:italic}
/*# sourceMappingURL=main.a49d5512.css.map*/