:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#ffffffde;background-color:#242424}a:hover{color:#747bff}.panel{background-color:#1e1e1e;border:1px solid #333}button{background-color:#1a1a1a}}html,body,#root{height:100%;width:100%;overflow:hidden}body{display:block;place-items:initial;min-height:100vh}@media (max-width: 800px){html,body,#root{overflow:auto}}.app-container{display:flex;width:100%;height:100vh;gap:2rem;padding:2rem;box-sizing:border-box;overflow:hidden}#root{width:100%;height:100%;overflow:hidden}.panel{padding:2rem;box-sizing:border-box;display:flex;flex-direction:column;gap:1.5rem;border-radius:16px;background-color:#1e1e1e;border:1px solid #333;overflow:hidden;min-width:0;min-height:0}.panel::-webkit-scrollbar{display:none}.panel{-ms-overflow-style:none;scrollbar-width:none}.upload-panel{flex:1 1 0;justify-content:flex-start;min-width:0;min-height:0;align-items:center;text-align:center;transition:all .3s ease-in-out;overflow-x:hidden;overflow-y:auto}.upload-panel.code-view-active{flex:1 1 0;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto}.upload-panel h1{margin-bottom:0}.subtitle{margin-top:-1rem;color:#888}.results-panel{overflow:hidden;display:flex;flex-direction:column;flex:1 1 0;min-width:0;min-height:0;position:relative}.results-scroll{flex:1 1 auto;min-height:0;overflow:auto;scroll-behavior:smooth;scrollbar-gutter:stable}.results-header{position:relative;height:0;overflow:visible}.results-panel::-webkit-scrollbar{display:none}.results-panel{-ms-overflow-style:none;scrollbar-width:none}.upload-panel::-webkit-scrollbar{display:none}.upload-panel{-ms-overflow-style:none;scrollbar-width:none}.results-panel.analyzing{position:relative}.results-panel.analyzing:before{content:"";position:absolute;inset:-1px;border-radius:16px;padding:1px;background:linear-gradient(45deg,#3b82f6,#8b5cf6,#3b82f6);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;animation:gradient-move 3s linear infinite}@keyframes gradient-move{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@media (max-width: 800px){#root{overflow:auto}.app-container{flex-direction:column;height:auto;min-height:100dvh;padding:1rem;gap:1rem;overflow:visible}.panel{padding:1.5rem;flex:0 1 auto}.upload-panel{max-width:100%;min-width:100%;width:100%;min-height:300px}.results-panel{max-width:100%;min-width:100%;width:100%;max-height:calc(100dvh - 2rem);min-height:500px;display:flex;flex-direction:column}.results-header{position:static;height:auto;display:flex;justify-content:flex-end;margin-bottom:1rem}.upload-panel.code-view-active{max-width:100%;min-width:100%;width:100%;min-height:600px;display:flex;flex-direction:column}.results-scroll{overflow:auto;-webkit-overflow-scrolling:touch}}.platform-section{width:100%;margin:12px 0}.platform-section h3{margin:0 0 8px;font-size:.95em;color:#ccc}.platform-select{width:100%;padding:10px 12px;font-size:1em;background-color:#2a2a2a;color:#eee;border:1px solid #444;border-radius:8px;cursor:pointer;transition:border-color .2s}.platform-select:hover{border-color:#646cff}.platform-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px #646cff33}.platform-select:disabled{opacity:.5;cursor:not-allowed}.platform-section .helper-text{margin:8px 0 0;font-size:.85em;color:#f3d17a;font-style:italic}.platform-section .helper-text.warning{color:#ff9800;font-weight:500}.platform-guidance{margin-top:12px;padding:12px;background-color:#1e3a1e;border:1px solid #4caf50;border-radius:8px}.platform-guidance .guidance-title{margin:0 0 8px;font-size:.9em;color:#4caf50}.platform-guidance .guidance-text{margin:4px 0;font-size:.85em;color:#ccc}.platform-guidance .guidance-description{margin:4px 0 0;font-size:.8em;color:#999;font-style:italic}.upload-section{width:100%;margin:12px 0;transition:opacity .3s}.upload-section.disabled{opacity:.5;pointer-events:none}.upload-section h3{margin:0 0 8px;font-size:.95em;color:#ccc}.mode-switcher{display:flex;gap:8px;margin:12px 0}.mode-switcher button{padding:6px 10px;border:1px solid #c8c8c8;background:#f7f7f7;color:#000;border-radius:6px;cursor:pointer}.mode-switcher button.active{background:#28a745;color:#fff;border-color:#28a745}.uploader-container{width:100%;max-width:500px;display:flex;flex-direction:column;gap:1rem;box-sizing:border-box}.uploader-form{width:100%;display:flex;flex-direction:column;gap:1rem}.drop-zone{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:500px;height:200px;border:2px dashed #444;border-radius:12px;cursor:pointer;transition:background-color .2s,border-color .2s,opacity .3s;background-color:#2a2a2a;box-sizing:border-box}.drop-zone.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.drop-zone-disabled{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#ff9800;text-align:center}.drop-zone-disabled p{margin:0;font-size:1em;font-weight:500;-webkit-user-select:none;user-select:none}.drop-zone-text{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#b0b0b0}.browse-button{margin-top:1rem;padding:.5em 1em;font-size:.9em;background-color:#3c3c3c;border:1px solid #555}.file-info{display:flex;align-items:center;gap:1rem;background-color:#333;padding:.5rem 1rem;border-radius:8px;color:#eee}.clear-btn{background:none;border:none;color:silver;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .2s ease}.clear-btn:hover{color:#e0e0e0}.action-limit-info{width:100%;max-width:500px;padding:12px 16px;margin:12px 0;border-radius:8px;font-size:.9em;text-align:center;background-color:#646cff1a;border:1px solid rgba(100,108,255,.3);color:#a5b4fc;box-sizing:border-box}.action-limit-info p{margin:0}.action-limit-info.limit-warning{background-color:#fbbf241a;border-color:#fbbf244d;color:#fbbf24}.action-limit-info.limit-reached{background-color:#ef44441a;border-color:#ef44444d;color:#f87171}.start-button{width:100%;max-width:500px;padding:.8em 1.2em;font-size:1.1em;font-weight:700;background-color:#646cff;color:#fff;border:none;border-radius:12px;box-sizing:border-box}.start-button:disabled{background-color:#444;cursor:not-allowed}.error-message{background-color:#fff5f5;color:#c53030;border:1px solid #fed7d7;border-radius:6px;padding:12px 16px;text-align:center;font-size:.9rem;line-height:1.4;margin:10px 0}.picker-menu{margin-top:.5rem;display:flex;gap:.5rem}.picker-item{background-color:#3c3c3c;border:1px solid #555;color:#eee;padding:.4em .8em;border-radius:8px;cursor:pointer;text-align:center}.checkpoints-section{width:100%;max-width:500px;margin:1rem 0;padding:1rem;background-color:#2a2a2a;border-radius:12px;border:1px solid #444;box-sizing:border-box}.checkpoints-section h3{margin:0 0 1rem;color:#e5e7eb;font-size:1.1rem;font-weight:600}.checkpoints-controls{display:flex;gap:.5rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.checkpoint-control-btn{background:#2d2f36;border:1px solid #44495a;color:#e5e7eb;padding:.4rem .8rem;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background-color .2s,border-color .2s}.checkpoint-control-btn:hover{background:#3a3f4f;border-color:#5b6175}.selected-count{color:#a0a0a0;font-size:.9rem;margin-left:auto}.checkpoints-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;max-height:200px;overflow-y:auto;padding:.5rem;background-color:#1a1a1a;border-radius:6px;border:1px solid #333}.checkpoint-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background-color:#2a2a2a;border-radius:4px;cursor:pointer;transition:background-color .2s}.checkpoint-item:hover{background-color:#333}.checkpoint-item input[type=checkbox]{margin:0;cursor:pointer}.checkpoint-name{color:#e5e7eb;font-size:.9rem;-webkit-user-select:none;user-select:none;text-align:left;flex:1}.custom-prompt-section{width:100%;max-width:500px;margin:1rem 0;padding:1rem;background-color:#2a2a2a;border-radius:12px;border:1px solid #444;box-sizing:border-box}.custom-prompt-section h3{margin:0 0 1rem;color:#e5e7eb;font-size:1.1rem;font-weight:600}.custom-prompt-category{display:flex;gap:1rem;margin-bottom:1rem}.custom-prompt-category label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#e5e7eb;font-size:.9rem}.custom-prompt-category input[type=radio]{margin:0;cursor:pointer}.custom-prompt-category span{-webkit-user-select:none;user-select:none}.custom-prompt-textarea{width:100%;min-height:80px;padding:.75rem;background-color:#1a1a1a;border:1px solid #444;border-radius:6px;color:#e5e7eb;font-size:.9rem;font-family:inherit;resize:vertical;box-sizing:border-box}.custom-prompt-textarea:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e233}.custom-prompt-textarea::placeholder{color:#888}.summary-section{width:100%;max-width:500px;margin:1rem 0;padding:1rem;background-color:#2a2a2a;border-radius:12px;border:1px solid #444;box-sizing:border-box}.summary-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#e5e7eb;font-size:1rem}.summary-option input[type=checkbox]{margin:0;cursor:pointer}.summary-option span{-webkit-user-select:none;user-select:none}.manual-report-section{width:100%;max-width:500px;margin:1rem 0;padding:1rem;background-color:#2a2a2a;border-radius:12px;border:1px solid #444;box-sizing:border-box}.manual-report-section h3{margin:0 0 .5rem;color:#e5e7eb;font-size:1.1rem;font-weight:600}.manual-report-section .helper-text{color:#a0a0a0;margin:0 0 .75rem;font-size:.9rem}.manual-report-controls{display:flex;flex-direction:column;gap:.75rem}.manual-report-upload input[type=file]{display:inline-block;background:#2d2f36;border:1px solid #44495a;color:#e5e7eb;padding:.4rem .6rem;border-radius:6px}.manual-report-textarea{width:100%;min-height:140px;padding:.9rem 1rem;background-color:#1a1a1a;border:1px solid #444;border-radius:8px;color:#e5e7eb;font-size:.95rem;line-height:1.5;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;resize:vertical;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.manual-report-textarea::placeholder{color:#8a8a8a}.manual-report-textarea:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e240}.task-history-container{width:100%;max-width:500px;margin-top:1rem;display:flex;flex-direction:column;gap:.5rem;box-sizing:border-box}.task-history-container h3{margin:0 0 .5rem;color:#aaa;font-size:1em;text-align:left}.task-history-list{list-style:none;padding:0;margin:0;max-height:150px;overflow-y:auto;border:1px solid #333;border-radius:8px;background-color:#2a2a2a}.task-history-item{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center;font-family:monospace;font-size:.9em;gap:.5rem}.task-history-item:last-child{border-bottom:none}.task-history-item:hover{background-color:#333}.task-history-item.active{background-color:#3a3a5a;color:#fff;font-weight:700}.task-history-item .timestamp{font-size:.8em;color:#888}.task-history-item.active .timestamp{color:#ccc}.task-history-item .platform-info{font-size:.75em;color:#6495ed;background-color:#6495ed1a;padding:.2rem .4rem;border-radius:4px;white-space:nowrap}.task-history-item.active .platform-info{color:#87ceeb;background-color:#87ceeb26}.task-history-item .token-info{font-size:.75em;color:#6aa84f;background-color:#6aa84f1a;padding:.2rem .4rem;border-radius:4px;white-space:nowrap}.task-history-item.active .token-info{color:#8bc34a;background-color:#8bc34a26}.load-more{justify-content:center!important;color:#888;font-style:italic}.task-status-container{width:100%;padding-bottom:1rem;border-bottom:1px solid #333}.task-status-container h2{margin-top:0;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.token-counter{font-size:.6em;font-weight:400;color:#888;text-align:right}.token-counter span{font-family:monospace;color:#aaa}.placeholder-text{color:#888;text-align:center;font-size:1.1em;margin-top:2rem}.status-line{display:flex;justify-content:space-between;align-items:center;font-size:.9em;padding:.5rem 0}.status-indicator{display:flex;align-items:center;gap:.5rem}.spinner{border:2px solid rgba(122,184,243,.3);border-top:2px solid #7ab8f3;border-radius:50%;width:14px;height:14px;animation:spin 1s linear infinite}.progress-counter{color:#aaa;font-family:monospace}.status-line strong{color:#aaa}.status-line span{font-family:monospace}.platform-badge{font-size:.9em;color:#6495ed;background-color:#6495ed26;padding:.3rem .6rem;border-radius:6px;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.status-pending,.status-in_progress{color:#f3d17a}.status-ai_checking{color:#7ab8f3}.status-success{color:#72d5a3}.status-failure{color:#ff6b6b}.status-investigating{color:#c586c0}.status-rechecking{color:#f59e0b}.transient-message span{color:#ffaf5f;white-space:normal;text-align:right}.tool-activity span{color:#aaa;white-space:normal;text-align:right}.failure-reason span{color:#ff6b6b;white-space:normal;text-align:right}.task-id-container{display:flex;align-items:center;gap:.75rem}.copy-button-right{background:none;border:none;color:#888;cursor:pointer;padding:0;line-height:1;font-size:.9em}.copy-button-right:hover{color:#fff}.copied-feedback-right{font-size:.9em;color:#72d5a3}.duration-text{color:#aaa;font-family:monospace}.cancel-task-button{background:#ff4757;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;margin-left:12px;transition:background-color .2s;display:inline-flex;align-items:center;gap:4px}.cancel-task-button:hover:not(:disabled){background:#ff3742}.cancel-task-button:disabled{background:#666;cursor:not-allowed}.cancel-task-button:active:not(:disabled){background:#e73c2e}.status-cancelled{color:#6c757d;font-weight:700}.truncated-text-container p{margin-bottom:.25rem}.trunc-button{background:none;border:none;color:#888;cursor:pointer;padding:0;margin:0;font-size:.9em;text-align:left}.trunc-button:hover{color:#646cff;text-decoration:underline}.tooltip-wrapper{position:relative;display:inline-block}.tooltip-box{position:absolute;left:50%;transform:translate(-50%);background-color:#2a2a2e;color:#e0e0e0;text-align:left;padding:10px 14px;border-radius:6px;z-index:10;width:280px;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;font-size:.85em;border:1px solid #555;box-shadow:0 4px 12px #00000080;pointer-events:none;white-space:pre-line;line-height:1.5}.tooltip-box.tooltip-compact{width:70px;white-space:normal}.tooltip-box.tooltip-bottom{top:100%;margin-top:10px}.tooltip-box.tooltip-bottom:after{content:"";position:absolute;bottom:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:transparent transparent #2a2a2e transparent}.tooltip-box.tooltip-top{bottom:100%;margin-bottom:10px}.tooltip-box.tooltip-top:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#2a2a2e transparent transparent transparent}.tooltip-wrapper:hover .tooltip-box{opacity:1;visibility:visible}.targeted-trace-modal{max-width:920px}.targeted-trace-body{display:flex;flex-direction:column;gap:12px}.targeted-trace-meta .row{display:flex;gap:8px;align-items:baseline;color:#e5e7eb}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.muted{color:#9ca3af;margin:0}.muted.small{font-size:12px}.targeted-trace-tabs{display:flex;gap:8px;align-items:center}.targeted-trace-tabs .spacer{flex:1}.tab-btn{border:1px solid #3a3a3a;background:#222;color:#e5e7eb;padding:6px 10px;border-radius:8px;cursor:pointer;font-size:13px;display:inline-flex;align-items:center;gap:8px}.tab-btn.secondary{opacity:.9}.tab-btn.active{border-color:#646cff;box-shadow:0 0 0 2px #646cff33}.pill{background:#ffffff14;border:1px solid rgba(255,255,255,.12);padding:2px 8px;border-radius:999px;font-size:12px;color:#cbd5e1}.targeted-trace-section{border:1px solid #333;border-radius:10px;padding:10px;background:#1e1e1e}.kv-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.kv .k{color:#9ca3af;font-size:12px;margin-bottom:4px}.kv .v{color:#e5e7eb;min-width:0;overflow-wrap:anywhere;word-break:break-word}.locators{margin:0;padding-left:16px}.toolcall-list{display:flex;flex-direction:column;gap:8px}.toolcall{border:1px solid #333;border-radius:10px;overflow:hidden;background:#171717}.toolcall-summary{cursor:pointer;padding:10px;display:flex;gap:10px;align-items:center;color:#e5e7eb}.toolcall-summary .step{color:#9ca3af}.toolcall-summary .tool{font-weight:600}.toolcall-body{padding:10px;border-top:1px solid #2a2a2a;display:flex;flex-direction:column;gap:10px}.block-title{color:#9ca3af;font-size:12px;margin-bottom:6px}.pre{margin:0;padding:10px;border-radius:8px;background:#0f0f0f;border:1px solid #2a2a2a;max-height:280px;overflow:auto;font-size:12px;line-height:1.35}@media (max-width: 800px){.kv-grid{grid-template-columns:1fr}}.recheck-results-modal{background-color:#2a2a2a;border-radius:12px;width:95%;max-width:1000px;max-height:90vh;overflow:hidden;box-shadow:0 10px 25px #00000080;color:#e5e7eb;display:flex;flex-direction:column}.recheck-results-modal .modal-header{background-color:#374151;padding:1.5rem;border-bottom:1px solid #4b5563;display:flex;justify-content:space-between;align-items:center}.recheck-results-modal .modal-header h2{margin:0;color:#f9fafb;font-size:1.5rem;font-weight:600}.recheck-results-modal .modal-body{flex:1;overflow-y:auto;padding:1.5rem}.recheck-results-modal .modal-footer{background-color:#374151;padding:1rem 1.5rem;border-top:1px solid #4b5563;text-align:right;display:flex;justify-content:flex-end;align-items:center;gap:1rem}.finding-item.recheck-finding{display:block;padding:1rem;border-left:3px solid #444;margin-bottom:.5rem;background-color:#ffffff05;border-radius:4px}.finding-item.recheck-finding.fixed{border-left-color:#10b981;background-color:#10b9810d}.finding-item.recheck-finding.not_fixed{border-left-color:#ef4444;background-color:#ef44440d}.finding-item.recheck-finding.partially_fixed{border-left-color:#f59e0b;background-color:#f59e0b0d}.finding-item.recheck-finding.file_removed{border-left-color:#6b7280;background-color:#6b72800d}.finding-item.recheck-finding.new_issues{border-left-color:#dc2626;background-color:#dc26260d}.finding-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.finding-details{flex:1}.finding-description{display:block;font-weight:500;margin-bottom:.5rem;line-height:1.4}.recheck-status{display:flex;align-items:center;gap:.5rem;font-size:.9em}.finding-content{margin-left:1.5rem}.analysis-explanation{margin-bottom:1rem}.analysis-explanation p{margin:.5rem 0 0;line-height:1.5;color:#d1d5db}.evidence{margin-bottom:1rem}.recommendations{margin-bottom:0}.recommendations p{margin:.5rem 0 0;line-height:1.5;color:#d1d5db}.badge.fixed{background-color:#10b981;color:#fff}.badge.unfixed{background-color:#ef4444;color:#fff}.btn-primary{background-color:#10b981;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:background-color .2s ease}.btn-primary:hover{background-color:#059669}.btn-secondary{background-color:#6b7280;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-weight:600;transition:background-color .2s ease}.loading-state,.error-state,.processing-message{text-align:center;padding:3rem 2rem}.loading-state .spinner,.processing-message .spinner{font-size:2rem;color:#10b981;animation:spin 1s linear infinite;margin-bottom:1rem}.error-state{color:#ef4444}.error-state button{margin-top:1rem;padding:.5rem 1rem;background-color:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer}.error-state button:hover{background-color:#dc2626}.task-status{background-color:#1f2937;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.status-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.status-row:last-child{margin-bottom:0}.status-row .label{font-weight:600;color:#9ca3af}.status{display:flex;align-items:center;gap:.5rem;font-weight:600;padding:.25rem .75rem;border-radius:4px}.status.pending{background-color:#6b728033;color:#9ca3af}.status.processing{background-color:#3b82f633;color:#60a5fa}.status.done{background-color:#10b98133;color:#34d399}.status.failure{background-color:#ef444433;color:#f87171}.results-summary{background-color:#1f2937;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.results-summary h3{margin:0 0 1rem;color:#f9fafb;font-size:1.25rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:1rem}.summary-item{text-align:center;padding:1rem;background-color:#374151;border-radius:6px;border:2px solid transparent}.summary-item.success{border-color:#10b981;background-color:#10b9811a}.summary-item.danger{border-color:#ef4444;background-color:#ef44441a}.summary-item.warning{border-color:#f59e0b;background-color:#f59e0b1a}.summary-item.info{border-color:#3b82f6;background-color:#3b82f61a}.summary-number{font-size:2rem;font-weight:700;color:#f9fafb;margin-bottom:.25rem}.summary-label{font-size:.875rem;color:#9ca3af;font-weight:500}.fix-rate{text-align:center;padding:1rem;background-color:#374151;border-radius:6px}.fix-rate strong{display:block;font-size:1.125rem;color:#10b981;margin-bottom:.25rem}.fix-rate small{color:#9ca3af;font-size:.75rem}.detailed-results{background-color:#1f2937;border-radius:8px;padding:1.5rem}.detailed-results h3{margin:0 0 1rem;color:#f9fafb;font-size:1.25rem}.result-item{background-color:#374151;border-radius:8px;margin-bottom:1rem;overflow:hidden;border:1px solid #4b5563}.result-item:last-child{margin-bottom:0}.result-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:#4b5563;border-bottom:1px solid #6b7280}.result-status{display:flex;align-items:center;gap:.75rem}.status-icon{font-size:1.25rem}.status-icon.fixed{color:#10b981}.status-icon.not-fixed{color:#ef4444}.status-icon.partially-fixed{color:#f59e0b}.status-icon.file-removed{color:#6b7280}.status-text{font-weight:600;font-size:1rem}.confidence{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.confidence-high{background-color:#10b98133;color:#34d399}.confidence-medium{background-color:#f59e0b33;color:#fbbf24}.confidence-low{background-color:#ef444433;color:#f87171}.confidence-unknown{background-color:#6b728033;color:#9ca3af}.result-content{padding:1.5rem}.result-content>div{margin-bottom:1rem}.result-content>div:last-child{margin-bottom:0}.result-content strong{display:block;color:#f9fafb;margin-bottom:.5rem;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.result-content p{margin:0;line-height:1.6;color:#d1d5db}.evidence pre{background-color:#111827;border:1px solid #374151;border-radius:4px;padding:1rem;overflow-x:auto;margin:0}.evidence code{color:#34d399;font-family:Courier New,monospace;font-size:.875rem}.processing-message{background-color:#1f2937;border-radius:8px;margin:2rem 0}.processing-message p{font-size:1.125rem;color:#d1d5db;margin-bottom:.5rem}.processing-message small{color:#9ca3af;font-size:.875rem}@media (max-width: 768px){.recheck-results-modal{width:100%;height:100vh;max-height:100vh;border-radius:0}.summary-grid{grid-template-columns:repeat(2,1fr)}.result-header{flex-direction:column;align-items:flex-start;gap:.5rem}.result-content{padding:1rem}}.filter-controls{display:flex;gap:.5rem}.filter-btn{padding:.5rem 1rem;border:1px solid #4b5563;background:#374151;color:#e5e7eb;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.filter-btn:hover{background:#4b5563;border-color:#6b7280}.filter-btn.active{background:#3b82f6;border-color:#2563eb;color:#fff}.filter-btn.active:hover{background:#2563eb}.filter-btn-success{border-color:#10b981}.filter-btn-success:hover{background:#064e3b;border-color:#10b981}.filter-btn-success.active{background:#10b981;border-color:#059669}.filter-btn-success.active:hover{background:#059669}.filter-btn-warning{border-color:#f59e0b}.filter-btn-warning:hover{background:#451a03;border-color:#f59e0b}.filter-btn-warning.active{background:#f59e0b;border-color:#d97706}.filter-btn-warning.active:hover{background:#d97706}@media (max-width: 480px){.summary-grid{grid-template-columns:1fr}.recheck-results-modal .modal-header,.recheck-results-modal .modal-body,.recheck-results-modal .modal-footer{padding:1rem}.filter-controls{flex-direction:column;gap:.25rem}.filter-btn{font-size:.8rem;padding:.4rem .8rem}}.results-container{width:100%;position:relative;min-width:0}.results-actions{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start;margin-bottom:1rem}.view-toggle{display:inline-flex;gap:.4rem}.view-toggle-sep{display:inline-block;width:1px;height:24px;background:#ffffff1f;align-self:center;margin:0 .25rem}.view-toggle button{border:1px solid #444;background:#1f1f1f;color:#e5e7eb;padding:.4rem .75rem;border-radius:6px;cursor:pointer}.view-toggle button.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.download-button{position:static;background-color:#646cff;color:#fff;border:none;padding:.6em 1.2em;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-weight:700;min-width:200px;justify-content:flex-start}.download-button:disabled{background-color:#555;color:#ccc;cursor:not-allowed}.partial-results-warning{display:flex;gap:1rem;padding:1rem 1.5rem;margin-bottom:1.5rem;background:linear-gradient(135deg,#3d2a00,#2a1d00);border:2px solid #ff9800;border-radius:12px;box-shadow:0 4px 12px #ff980033}.warning-icon{font-size:2rem;flex-shrink:0}.warning-content{flex:1}.warning-content strong{display:block;color:#ff9800;font-size:1.1rem;margin-bottom:.5rem}.warning-content p{margin:0;color:#e5e7eb;line-height:1.5}.summary-container{margin:1.5rem 0;padding:1.5rem;background:linear-gradient(135deg,#2a2a2a,#1e1e1e);border-radius:12px;border:1px solid #444;box-shadow:0 4px 12px #0000004d}.summary-container h2{margin:0 0 1rem;color:#4a90e2;font-size:1.4rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.summary-content{color:#e5e7eb;line-height:1.6;font-size:1rem}.summary-content p{margin:.5rem 0}.summary-content p:first-child{margin-top:0}.summary-content p:last-child{margin-bottom:0}.file-container{margin-bottom:1.5rem;border:1px solid #333;border-radius:8px;overflow:hidden}.checkpoint-group .file-header{background-color:#262626}.checkpoint-group-list{padding:.75rem 1rem .25rem;background-color:#1b1b1b}.checkpoint-id{font-size:.9em;color:#9ca3af}.verified-issue-desc{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.verified-issue.ignored{opacity:.55}.issue-ref-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.issue-ref-btn{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ignored-reason{margin-top:.75rem;color:#9ca3af;font-size:.9rem}.dropped-findings{margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.dropped-title{margin:0 0 .75rem;font-size:1rem;color:#e5e7eb}.dropped-file-title{font-weight:600;color:#cbd5e1;margin:.75rem 0 .25rem}.dropped-checkpoint-title{font-weight:500;color:#e5e7eb;margin:.5rem 0 .25rem}.dropped-list{list-style:none;padding-left:0;margin:0}.dropped-item{margin:.35rem 0}.dropped-reason{margin-top:.25rem;color:#9ca3af;font-size:.85rem}.file-header{background-color:#2a2a2a;padding:1rem;margin:0;cursor:pointer;display:flex;align-items:center;gap:.75rem;font-size:1.1em}.file-findings-count{margin-left:auto;background:#ffffff14;border:1px solid rgba(255,255,255,.12);padding:.15em .6em;border-radius:999px;font-size:.85em;color:#cbd5e1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.inline-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;display:inline-block;vertical-align:middle;position:relative;top:-1px;line-height:1;background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.3);padding:.15rem .35rem;border-radius:4px;font-size:.85em;margin:0 .1rem}.file-header.no-findings{cursor:default;color:#888}.ok-emoji{font-size:1.1em;line-height:1}.checkpoints-list{padding:1rem 1rem .25rem;background-color:#1e1e1e}.checkpoint-container{margin-bottom:.5rem}.checkpoint-container:last-child{margin-bottom:0}.checkpoint-header{display:flex;align-items:center;gap:.5rem;padding:.75rem;background-color:#2c2c2c;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkpoint-name{flex-grow:1;font-weight:500}.badge-container{display:flex;gap:.5rem}.badge{color:#fff;padding:.2em .6em;border-radius:12px;font-size:.8em;font-weight:700}.badge.critical{background-color:#ff6b6b}.badge.minor{background-color:#f3d17a;color:#111}.findings-list{list-style:none;padding:0 0 0 1.5rem;margin:.5rem 0 0}.findings-list>.finding-item:last-child{margin-bottom:0!important}.finding-item{display:flex;align-items:center;padding:.5rem;border-left:3px solid #444;margin-bottom:0;transition:color .2s,opacity .2s,background-color .2s;cursor:pointer}.finding-item:not(:last-child){margin-bottom:.25rem}.finding-item:hover{background-color:#ffffff0d}.finding-item.ignored{opacity:.5;text-decoration:line-through;color:#888}.finding-item.analyzing{animation:border-pulse 2s ease-in-out infinite}.investigate-button{background-color:#4a55a2;color:#fff;border:none;padding:.4em .8em;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-size:.9em}.investigate-button:hover:not(:disabled){background-color:#646cff}.investigate-button:disabled{background-color:#555;color:#999;cursor:not-allowed}.finding-details{flex-grow:1;display:flex;flex-direction:column}.investigation-action-container{margin-top:.25rem}.findings-list>.finding-item:last-child .investigation-action-container,.findings-list>.finding-item:last-child .investigation-history{margin-top:0!important;margin-bottom:0!important}.findings-list:has(.finding-item:only-child){margin-bottom:.5rem!important;padding-bottom:0!important}.checkpoint-container:has(.findings-list .finding-item:only-child){margin-bottom:0!important;padding-bottom:0!important}.findings-list{min-height:auto!important;height:auto!important;max-height:none!important}.investigation-in-progress{display:flex;align-items:center;gap:.5rem;color:#aaa;font-size:.9em}.finding-actions{display:flex;align-items:center;gap:.5rem}.investigation-history{margin-top:.25rem;padding-left:1rem;border-left:2px solid #333}.investigation-entry{font-size:.9em;color:#ccc;margin-bottom:.5rem}.investigation-entry.accepted{background-color:#72d5a31a;border-left-color:#72d5a3}.investigation-entry.rejected{background-color:#ff6b6b1a;border-left-color:#ff6b6b}.investigation-entry.rejected .investigation-explanation{text-decoration:line-through;opacity:.7}.investigation-entry p{margin:.2rem 0}.confidence-value{font-weight:700}.confidence-not-vulnerability{color:#72d5a3}.confidence-likely-not-vulnerability{color:#f3d17a}.confidence-likely-vulnerability{color:#ffaf5f}.confidence-certain-vulnerability{color:#ff6b6b}.investigation-entry .investigation-error{color:#ff6b6b;font-style:italic;white-space:pre-wrap}.feedback-actions{margin-top:.5rem;display:flex;gap:.5rem}.feedback-btn{background:none;border:1px solid #555;color:#888;padding:.3em .6em;border-radius:6px;cursor:pointer}.feedback-btn.accept:hover:not(:disabled){color:#72d5a3;border-color:#72d5a3}.feedback-btn.reject:hover:not(:disabled){color:#ff6b6b;border-color:#ff6b6b}.feedback-btn.selected{color:#fff;cursor:default}.feedback-btn.accept.selected{background-color:#2a5c43;border-color:#72d5a3}.feedback-btn.reject.selected{background-color:#6e3232;border-color:#ff6b6b}.feedback-btn:disabled:not(.selected){opacity:.5;cursor:not-allowed}.spinner-small{border:2px solid rgba(122,184,243,.3);border-top:2px solid #7ab8f3;border-radius:50%;width:20px;height:20px;animation:spin 1s linear infinite;margin:.5rem}.severity-indicator{width:10px;height:10px;border-radius:50%;margin-right:.75rem;flex-shrink:0}.severity-indicator.critical{background-color:#ff6b6b}.severity-indicator.minor{background-color:#f3d17a}.finding-description{flex-grow:1}.finding-function-about{display:inline-block;vertical-align:middle;color:#a78bfa;font-size:.9em;margin-right:.5rem;font-style:italic}.finding-function-about code{display:inline-block;vertical-align:middle;position:relative;top:-1px;line-height:1;background:#8b5cf626;color:#a78bfa;padding:.1rem .3rem;border-radius:4px;font-family:monospace;font-style:normal;border:1px solid rgba(139,92,246,.3)}.verification-tag{display:inline-block;margin-left:.5rem;font-weight:600}.verification-tag.actual{color:#ff6b6b}.verification-tag.not-actual{color:#72d5a3}.verification-tag.neutral{color:#9ca3af}.ai-ignored-tag{display:inline-block;background:#667eea26;border:1px solid rgba(102,126,234,.4);color:#a0b0ff;padding:.25rem .5rem;border-radius:4px;font-size:.85em;margin-top:.5rem;cursor:help}.ignore-button{background:none;border:none;color:#666;cursor:pointer;font-size:1em;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.ignore-button:hover{color:#ccc;background-color:#444}.investigation-failed-icon{color:#f3d17a;font-size:1.2em;margin:.5rem;cursor:help}.token-statistics-container{margin:1.5rem 0;padding:1.2rem;background:linear-gradient(135deg,#2a2a3a,#1e1e2e);border-radius:12px;border:1px solid #4a4a5a;box-shadow:0 4px 12px #0003}.token-statistics-container h3{margin:0 0 1rem;color:#6aa84f;font-size:1.2rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.token-stats{display:flex;flex-wrap:wrap;gap:1rem}.token-stat{display:flex;flex-direction:column;gap:.3rem;padding:.8rem 1rem;background-color:#6aa84f1a;border-radius:8px;border:1px solid rgba(106,168,79,.2);min-width:140px}.token-label{font-size:.9rem;color:#aaa;font-weight:500}.token-value{font-size:1.1rem;color:#8bc34a;font-weight:600;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.recheck-button{background-color:#10b981;color:#fff;border:none;padding:.6em 1.2em;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-weight:700;transition:background-color .2s ease;min-width:200px;justify-content:flex-start}.recheck-button:hover{background-color:#059669}.verified-issue{border-left:4px solid #3b82f6;margin-bottom:1rem}.verified-issue.ignored{opacity:.7;border-left-color:#6b7280}.verified-issue-desc{flex:1;font-weight:600;color:#fff;margin:0 .75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.verified-issue-full-desc{padding:.75rem;color:#e5e7eb;line-height:1.5;background:#ffffff08;border-radius:6px;margin-bottom:.75rem;font-size:1.05rem;border-left:2px solid rgba(59,130,246,.5)}.formatted-description{display:flex;flex-direction:column;gap:.5rem;margin:.25rem 0}.desc-section{display:flex;gap:.5rem;align-items:baseline}.desc-label{font-weight:800;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;min-width:60px;padding:.1rem .4rem;border-radius:4px;text-align:center}.attack-section .desc-label{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.3)}.impact-section .desc-label{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.desc-content{flex:1}.issue-ref-buttons{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem;background:#0003;border-radius:6px;margin-bottom:.5rem}.issue-ref-btn{font-size:.85rem;padding:.3rem .6rem;background:#333!important;border:1px solid #444!important}.issue-ref-btn:hover{background:#444!important}.dropped-findings{margin-top:2rem;padding-top:2rem;border-top:1px dashed #444}.dropped-title{color:#9ca3af;font-size:1.2rem;margin-bottom:1.5rem;text-align:center}.dropped-file{margin-bottom:1.5rem;background:#0000001a;border-radius:8px;padding:1rem}.dropped-file-title{font-weight:700;color:#e5e7eb;margin-bottom:.75rem;font-family:monospace;font-size:.95rem}.dropped-checkpoint{margin-left:1rem;margin-bottom:1rem}.dropped-checkpoint-title{font-size:.9rem;color:#9ca3af;margin-bottom:.5rem;font-weight:600}.dropped-list{list-style:none;padding:0;margin:0}.dropped-item{display:flex;flex-direction:column;gap:.4rem;padding:.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.dropped-item:last-child{border-bottom:none}.dropped-reason{font-size:.85rem;color:#6b7280;font-style:italic;padding-left:.5rem}.unified-toggle-button{background:#f8f9fa;color:#495057;border:1px solid #dee2e6;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;margin-left:8px;transition:all .2s ease}.unified-toggle-button:hover{background:#e9ecef;border-color:#adb5bd}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#2a2a2a;border-radius:12px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 25px #00000080}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #333}.modal-header h3{margin:0;color:#fff;font-size:1.25rem}.modal-close{background:none;border:none;color:#aaa;font-size:1.5rem;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:#fff}.modal-body{padding:1.5rem;color:#ccc;line-height:1.6}.report-options{display:flex;flex-direction:column;gap:.75rem}.report-option{display:flex;align-items:center;gap:.75rem;color:#e5e7eb}.report-option input[type=checkbox]{width:16px;height:16px;accent-color:#10b981}.modal-body p{margin:0 0 1rem}.modal-body ul{margin:1rem 0;padding-left:1.5rem}.modal-body li{margin:.5rem 0}.modal-footer{padding:1.5rem;border-top:1px solid #333;display:flex;justify-content:flex-end;gap:1rem}.btn-secondary{background-color:#6b7280;color:#fff;border:none;padding:.6em 1.2em;border-radius:8px;cursor:pointer;font-weight:500}.btn-secondary:hover{background-color:#4b5563}.report-download-modal .btn-primary{background-color:#10b981;color:#fff;border:none;padding:.6em 1.2em;border-radius:8px;cursor:pointer;font-weight:600}.report-download-modal .btn-primary:hover:not(:disabled){background-color:#059669}.report-download-modal .btn-primary:disabled{background-color:#555;cursor:not-allowed}.recheck-history-button{background-color:#4caf50;color:#fff;border:none;padding:.6em 1.2em;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-weight:700;transition:background-color .3s ease;min-width:200px;justify-content:flex-start}.recheck-history-button:hover{background-color:#45a049}.recheck-history-button.active{background-color:#2196f3;color:#fff}.recheck-history-button.active:hover{background-color:#1976d2}.rechecking-status{display:flex;align-items:center;gap:1rem;background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:1rem;margin-bottom:1rem;color:#856404}.rechecking-spinner{font-size:1.5rem;animation:spin 2s linear infinite}.rechecking-content{flex:1}.rechecking-content strong{display:block;margin-bottom:.5rem;font-size:1.1em}.rechecking-content p{margin:0;opacity:.8}.report-mode-selection{margin-top:1rem;padding-top:1rem;border-top:1px solid #333;display:flex;flex-direction:column;gap:.5rem}.report-option-label{font-size:.9rem;color:#9ca3af;font-weight:600}.recheck-modal-content{background-color:#2a2a2a;border-radius:12px;width:90vw;max-width:90vw;max-height:90vh;overflow:hidden;box-shadow:0 10px 25px #00000080;display:flex;flex-direction:column;box-sizing:border-box;margin:0;padding:0}.recheck-modal-content *{box-sizing:border-box!important}.modal-overlay{overflow:hidden}.recheck-modal-body{flex:1;overflow:auto;padding:0}.recheck-sections{display:grid;grid-template-columns:50% 50%;min-height:50vh;max-height:70vh;gap:0;overflow:hidden;width:100%;box-sizing:border-box}.findings-selection-section{border-right:1px solid #333;display:flex;flex-direction:column;overflow:hidden;max-width:50%}.findings-selection-section *,.findings-selection-section *:before,.findings-selection-section *:after{max-width:100%!important;overflow-wrap:break-word!important;word-break:break-all!important;box-sizing:border-box!important}.section-header{padding:1.5rem;border-bottom:1px solid #333;background-color:#252525}.section-header h4{margin:0 0 1rem;color:#fff;font-size:1.1rem}.selection-controls{display:flex;gap:.5rem}.btn-small{background-color:#374151;color:#fff;border:none;padding:.4em .8em;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500}.btn-small:hover{background-color:#4b5563}.findings-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:1rem;max-height:calc(100% - 120px);min-height:200px}.finding-item{margin-bottom:1rem;border:1px solid #333;border-radius:8px;overflow:hidden;width:100%;box-sizing:border-box}.finding-checkbox{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;cursor:pointer;background-color:#2a2a2a;transition:background-color .2s ease;overflow-wrap:break-word;word-wrap:break-word;overflow:hidden;max-width:100%}.finding-checkbox:hover{background-color:#333}.finding-checkbox input[type=checkbox]{margin-top:.25rem;cursor:pointer}.finding-details{flex:1;overflow-wrap:break-word;word-wrap:break-word;overflow:hidden;max-width:calc(100% - 2rem);word-break:break-all}.finding-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.severity-badge{font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase}.severity-badge.critical{background-color:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.severity-badge.minor{background-color:#f59e0b33;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.file-path{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;word-break:break-all}.checkpoint-name{font-weight:600;color:#60a5fa;font-size:.9rem;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;word-break:break-all}.finding-description{color:#d1d5db;font-size:.9rem;line-height:1.4;overflow-wrap:break-word;word-wrap:break-word;word-break:break-all;white-space:pre-wrap;max-width:calc(100% - 2rem);overflow:hidden}.finding-description code,.finding-description pre{white-space:pre-wrap;word-break:break-all;overflow-wrap:break-word;max-width:100%;display:inline-block;background-color:#0000004d;padding:.2em .4em;border-radius:3px;font-family:Courier New,Courier,monospace;font-size:.85em;overflow:hidden}.finding-description{-webkit-hyphens:auto;-moz-hyphens:auto;hyphens:auto}.finding-description{overflow-x:hidden;text-overflow:ellipsis}.finding-description *{max-width:100%!important;overflow:hidden!important;word-break:break-all!important}.selection-summary{padding:1rem 1.5rem;background-color:#252525;border-top:1px solid #333;color:#9ca3af;font-size:.9rem;font-weight:500}.file-upload-section{display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;max-width:50%;padding:1rem;text-align:center}.file-upload-section .section-header{text-align:center;width:100%}.file-upload-section .section-header h4{text-align:center}.file-upload-section *,.file-upload-section *:before,.file-upload-section *:after{max-width:100%!important;box-sizing:border-box!important}.file-drop-zone{margin:0 auto;padding:2rem;border:2px dashed #4b5563;border-radius:8px;text-align:center;cursor:pointer;transition:all .2s ease;background-color:#1f2937;width:90%;max-width:300px}.file-drop-zone:hover,.file-drop-zone.drag-over{border-color:#10b981;background-color:#10b9810d}.file-drop-zone svg{color:#6b7280;margin-bottom:1rem}.file-drop-zone p{color:#d1d5db;margin:0 0 .5rem;font-weight:500}.file-drop-zone small{color:#9ca3af;font-size:.85rem}.uploaded-files{flex:1;padding:1rem;overflow-y:auto;width:90%;max-width:300px;margin:0 auto}.uploaded-files h5{margin:0 0 1rem;color:#fff;font-size:1rem;text-align:center}.uploaded-file{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background-color:#10b9811a;border:1px solid rgba(16,185,129,.2);border-radius:6px;margin-bottom:.5rem}.file-info{display:flex;align-items:center;gap:.75rem;flex:1}.file-info svg{color:#10b981}.filename{font-family:Monaco,Menlo,Ubuntu Mono,monospace;color:#d1d5db;font-weight:500}.file-size{color:#9ca3af;font-size:.85rem}.remove-file-btn{background:none;border:none;color:#ef4444;cursor:pointer;padding:.25rem;border-radius:4px;transition:background-color .2s ease}.remove-file-btn:hover{background-color:#ef44441a}.modal-footer{padding:1.5rem;border-top:1px solid #333;display:flex;justify-content:space-between;align-items:center;background-color:#252525;flex-wrap:wrap;gap:1rem}.btn-primary{background-color:#10b981;color:#fff;border:none;padding:.75em 1.5em;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:background-color .2s ease}.btn-primary:hover:not(:disabled){background-color:#059669}.btn-primary:disabled{background-color:#6b7280;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@media (max-width: 1200px){.recheck-modal-content{width:95%;max-width:900px}}@media (max-width: 768px){.modal-footer{justify-content:center;flex-direction:column;padding:1rem}.btn-primary,.btn-secondary{min-width:200px}.file-drop-zone{margin:0 auto;padding:1.5rem;width:95%;max-width:none}.uploaded-files{width:95%;max-width:none;margin:0 auto}.findings-list{padding:.5rem}.section-header{padding:.75rem 1rem}}@media (max-width: 900px){.recheck-modal-content{width:98%;max-width:none}.recheck-sections{grid-template-columns:1fr;min-height:auto;max-height:75vh}.findings-selection-section{border-right:none;border-bottom:1px solid #333;max-height:45vh;max-width:100%}.file-upload-section{max-height:30vh;max-width:100%}}@media (max-width: 640px){.recheck-modal-content{width:100%;height:100vh;max-height:100vh;border-radius:0}.section-header{padding:1rem}.selection-controls{flex-direction:column;gap:.25rem}.btn-small{font-size:.8rem;padding:.35em .7em}.finding-checkbox{padding:.75rem}.modal-footer{padding:1rem;flex-direction:column;gap:1rem;align-items:stretch}.btn-primary,.btn-secondary{width:100%;justify-content:center;min-width:auto}.start-recheck-btn{font-size:.9rem;padding:.875rem 1.5rem;margin:1rem 0 2rem}}.recheck-form{width:100%;display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem 1.5rem 2rem;min-height:auto}.drop-zone{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:200px;border:2px dashed #555;border-radius:12px;cursor:pointer;transition:background-color .2s,border-color .2s;background-color:#1a1a1a;color:#ccc;position:relative}.drop-zone:hover,.drop-zone.drag-over{background-color:#333;border-color:#646cff}.drop-zone-text{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#888}.drop-zone-text p{margin:0}.file-info{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#333;border-radius:8px;color:#fff}.clear-btn{background:#f44336;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center}.clear-btn:hover{background:#d32f2f}.picker-menu{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#333;border-radius:8px;box-shadow:0 4px 8px #0000004d;z-index:1000;min-width:200px}.picker-item{display:block;padding:12px 16px;color:#fff;cursor:pointer;border-bottom:1px solid #555}.picker-item:last-child{border-bottom:none;border-radius:0 0 8px 8px}.picker-item:first-child{border-radius:8px 8px 0 0}.picker-item:hover{background-color:#646cff}.findings-section{margin-top:1rem}.findings-section h3{color:#fff;margin:0 0 1rem;font-size:1.2rem}.findings-controls{display:flex;gap:.5rem;align-items:center;margin-bottom:1rem}.finding-control-btn{background-color:#646cff;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem}.finding-control-btn:hover{background-color:#535bf2}.selected-count{color:#888;font-size:.9rem;margin-left:auto}.findings-grid{display:grid;grid-template-columns:1fr;gap:.75rem;max-height:300px;overflow-y:auto;padding:.5rem;background-color:#1a1a1a;border-radius:8px;border:1px solid #333}.finding-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background-color:#2a2a2a;border-radius:6px;cursor:pointer;transition:background-color .2s}.finding-item:hover{background-color:#333}.finding-item input[type=checkbox]{margin-top:2px}.finding-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.finding-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.finding-description{color:#ccc;font-size:.9rem;line-height:1.4}.finding-meta{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#888;flex-wrap:wrap;gap:.5rem}.error-message{background-color:#ef44441a;color:#fca5a5!important;border:1px solid rgba(239,68,68,.3);padding:1rem;border-radius:8px;margin-top:1rem}.start-recheck-btn{background-color:#4caf50;color:#fff;border:none;padding:1rem 2rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;gap:.5rem;margin:1.5rem 0;width:100%;min-height:50px;transition:background-color .3s ease}.start-recheck-btn:hover:not(:disabled){background-color:#45a049}.start-recheck-btn:disabled{background-color:#666;cursor:not-allowed}.spinner{animation:spin 1s linear infinite}.cookie-consent-banner{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);background-color:#111;color:#ddd;padding:1rem 2rem;border-radius:12px;border:1px solid #333;display:flex;align-items:center;justify-content:space-between;gap:2rem;z-index:1000;max-width:800px;width:90%;box-shadow:0 4px 20px #00000080}.cookie-consent-banner p{margin:0;font-size:.9em}.cookie-consent-banner button{background-color:#646cff;color:#fff;border:none;border-radius:8px;padding:.6em 1.2em;cursor:pointer;flex-shrink:0}.code-viewer-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;text-align:center;padding:2rem;box-sizing:border-box}.code-viewer-placeholder-title{font-size:1.75rem;font-weight:600;color:#fff;margin:0 0 1rem}.code-viewer-placeholder-text{font-size:1rem;color:#888;margin:0;max-width:300px;line-height:1.5}@media (max-width: 800px){.code-viewer-placeholder{padding:1.5rem}.code-viewer-placeholder-title{font-size:1.5rem}.code-viewer-placeholder-text{font-size:.9rem}}.user-profile{position:fixed;top:20px;right:20px;z-index:1000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.user-profile.loading{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fffffff2;border-radius:20px;box-shadow:0 2px 10px #0000001a}.user-profile-spinner{font-size:16px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.user-profile.unauthenticated{display:flex;align-items:center}.login-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#4285f4;color:#fff;border:none;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.login-button:hover{background:#3367d6;box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.login-button:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.google-icon{flex-shrink:0}.user-profile.authenticated{display:flex;align-items:center;gap:12px;padding:8px 12px;background:linear-gradient(135deg,#fffffffa,#f8fafcf2);border-radius:25px;box-shadow:0 4px 20px #00000026,0 1px 3px #0000001a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.4)}.user-info{display:flex;align-items:center;gap:10px}.user-avatar{width:32px;height:32px;border-radius:16px;background:linear-gradient(135deg,#4f46e5,#7c3aed,#ec4899);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;box-shadow:0 2px 8px #4f46e54d}.user-details{display:flex;flex-direction:column;gap:2px}.user-name-container{display:flex;align-items:center;gap:6px}.admin-button-inline{background:none;border:none;font-size:14px;cursor:pointer;padding:0;margin:0;line-height:1;transition:transform .1s ease}.admin-button-inline:hover{transform:scale(1.1)}.admin-button-inline:active{transform:scale(.95)}.user-profile .user-name{font-size:13px;font-weight:700;color:#000!important;line-height:1;text-shadow:none!important;background:transparent!important}.user-role{display:flex;align-items:center;gap:4px;font-size:11px;color:#4b5563;line-height:1;padding:3px 8px;border-radius:12px;background:linear-gradient(135deg,#4f46e51a,#7c3aed1a);border:1px solid rgba(79,70,229,.2);transition:all .2s ease}.role-icon{font-size:10px}.role-text{font-weight:500}.usage-summary{display:flex;align-items:center;gap:10px}.action-summary{display:flex;flex-direction:column;gap:2px;padding-left:10px;border-left:2px solid rgba(147,51,234,.3)}.action-item{display:flex;align-items:center;gap:4px;font-size:11px}.action-label{color:#6b7280;font-weight:500}.action-value{color:#7c3aed;font-weight:700;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.token-summary{display:flex;flex-direction:column;gap:2px;padding-left:10px;border-left:2px solid rgba(34,197,94,.3)}.token-item{display:flex;align-items:center;gap:4px;font-size:11px}.token-label{color:#6b7280;font-weight:500}.token-value{color:#059669;font-weight:700;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.user-actions{display:flex;align-items:center}.logout-button{padding:6px 12px;border:none;background:#dc35451a;border-radius:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#dc3545;transition:all .2s ease;white-space:nowrap}.logout-button:hover{background:#dc354533;color:#b02a37;transform:translateY(-1px)}.logout-button:active{transform:translateY(0)}@media (max-width: 800px){.user-profile{position:static;top:auto;right:auto;margin:0;z-index:auto}.user-profile.authenticated{padding:6px 10px;gap:8px}.user-avatar{width:28px;height:28px;border-radius:14px;font-size:12px}.user-name-container{gap:4px}.admin-button-inline{font-size:12px}.user-profile .user-name{font-size:12px;font-weight:700;color:#000!important;background:transparent!important}.user-role{font-size:10px}.usage-summary{display:flex;gap:6px}.action-summary{padding-left:6px;border-left:1px solid rgba(147,51,234,.3)}.action-item{font-size:10px;gap:3px}.action-label,.action-value{font-size:10px}.token-summary{display:none}}.privacy-consent-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.privacy-consent-modal{background:#fff;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.privacy-consent-header{padding:24px 24px 16px;border-bottom:1px solid #e5e7eb;text-align:center}.privacy-consent-header h2{margin:0 0 8px;font-size:24px;font-weight:700;color:#1f2937;display:flex;align-items:center;justify-content:center;gap:8px}.privacy-consent-header p{margin:0;color:#6b7280;font-size:16px;line-height:1.5}.privacy-consent-content{flex:1;overflow-y:auto;padding:20px 24px}.privacy-summary h3{margin:0 0 12px;font-size:18px;font-weight:600;color:#374151}.privacy-summary ul{margin:0 0 20px;padding-left:20px}.privacy-summary li{margin-bottom:6px;color:#4b5563;line-height:1.5}.privacy-note{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;padding:16px;margin-top:20px}.privacy-note p{margin:0;color:#0c4a6e;font-size:14px;line-height:1.5}.privacy-full-policy{background:#f9fafb;border-radius:8px;padding:16px;border:1px solid #e5e7eb}.privacy-full-policy pre{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;line-height:1.6;color:#374151;white-space:pre-wrap;word-wrap:break-word}.privacy-consent-actions{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:16px}.policy-toggle{text-align:center}.link-button{background:none;border:none;color:#3b82f6;font-size:14px;cursor:pointer;text-decoration:underline;padding:4px 8px;border-radius:4px;transition:all .2s ease}.link-button:hover{background:#eff6ff;text-decoration:none}.consent-buttons{display:flex;gap:12px;justify-content:center}.decline-button,.accept-button{padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;border:2px solid transparent;min-width:120px}.decline-button{background:#f3f4f6;color:#6b7280;border-color:#d1d5db}.decline-button:hover:not(:disabled){background:#e5e7eb;color:#4b5563}.accept-button{background:#10b981;color:#fff;border-color:#10b981}.accept-button:hover:not(:disabled){background:#059669;border-color:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.decline-button:disabled,.accept-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.privacy-footer{padding:12px 24px;background:#f9fafb;border-top:1px solid #e5e7eb;text-align:center}.privacy-footer p{margin:0;font-size:12px;color:#6b7280;line-height:1.4}@media (max-width: 768px){.privacy-consent-overlay{padding:10px}.privacy-consent-modal{max-height:95vh}.privacy-consent-header{padding:20px 16px 12px}.privacy-consent-header h2{font-size:20px}.privacy-consent-content{padding:16px}.privacy-consent-actions{padding:12px 16px}.consent-buttons{flex-direction:column}.decline-button,.accept-button{width:100%}.privacy-footer{padding:8px 16px}}.privacy-consent-modal{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.back-to-upload-button{position:fixed;top:20px;left:20px;z-index:1000;display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#fffffffa,#f8fafcf2);border:1px solid rgba(255,255,255,.4);border-radius:20px;box-shadow:0 4px 20px #00000026,0 1px 3px #0000001a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;font-weight:600;color:#374151;cursor:pointer;transition:all .2s ease}.back-to-upload-button:hover{background:linear-gradient(135deg,#fff,#f8fafc);box-shadow:0 6px 24px #0003,0 2px 4px #0000001a;transform:translateY(-1px);color:#1f2937}.back-to-upload-button:active{transform:translateY(0);box-shadow:0 4px 20px #00000026,0 1px 3px #0000001a}@media (max-width: 800px){.back-to-upload-button{position:static;top:auto;left:auto;margin:0 0 1rem;padding:6px 12px;font-size:12px}}.toast-host{position:fixed;right:20px;bottom:20px;z-index:9999;min-width:280px;max-width:min(520px,calc(100vw - 40px))}.toast-body{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#141414f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 10px 28px #00000073}.toast-message{color:#e5e7eb;line-height:1.35;font-size:.95rem;flex:1 1 auto;word-break:break-word}.toast-close{border:none;background:transparent;color:#ffffffb3;cursor:pointer;font-size:1.2rem;line-height:1;padding:0 2px}.toast-close:hover{color:#fff}.toast-info .toast-body{border-color:#3b82f666}.toast-success .toast-body{border-color:#22c55e66}.toast-error .toast-body{border-color:#ef444480}.auth-screen{position:fixed;inset:0;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;align-items:center;z-index:1000}.auth-container{background:#fff;border-radius:12px;padding:40px;box-shadow:0 20px 40px #0000001a;text-align:center;max-width:400px;width:90%}.auth-header h1{color:#333;margin:0 0 8px;font-size:2rem;font-weight:600}.auth-subtitle{color:#666;margin:0 0 30px;font-size:.9rem}.auth-content h2{color:#333;margin:0 0 8px;font-size:1.5rem;font-weight:500}.auth-content p{color:#666;margin:0 0 30px;line-height:1.5}.auth-error{background:#fff5f5;border:1px solid #fed7d7;border-radius:6px;padding:12px;margin:0 0 20px;color:#c53030;font-size:.9rem}.auth-button{background:#4285f4;color:#fff;border:none;border-radius:8px;padding:14px 24px;font-size:1rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;transition:all .2s ease}.auth-button:hover:not(:disabled){background:#3367d6;transform:translateY(-1px);box-shadow:0 4px 8px #4285f44d}.auth-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-button.loading{background:#5a6c7d}.google-icon{font-size:1.2rem}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-info{margin-top:20px;font-size:.8rem;color:#999;line-height:1.4}.auth-info p{margin:0}.beta-waiting-screen{min-height:100vh;width:100vw;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:stretch;padding:clamp(10px,2vw,30px);color:#fff;box-sizing:border-box;margin:0;overflow-x:hidden}.beta-content{width:100%;max-width:none;text-align:center;animation:fadeIn .8s ease-in;box-sizing:border-box;padding:0 clamp(20px,5vw,100px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.beta-header h1{font-size:clamp(2rem,5vw,4rem);margin:0 0 1vw;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.beta-header h2{font-size:clamp(1rem,2.5vw,1.8rem);margin:0 0 2vw;font-weight:400;opacity:.9;text-shadow:0 1px 2px rgba(0,0,0,.2)}.beta-main-sections{display:flex;flex-direction:column;gap:clamp(15px,3vw,40px);margin:clamp(20px,4vw,40px) 0;width:100%}.beta-status{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2vw;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000001a;flex:1;min-height:200px;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;width:100%}.beta-icon{font-size:clamp(2.5rem,6vw,4rem);margin-bottom:1vw;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.beta-status h3{font-size:clamp(1.2rem,3vw,2rem);margin:0 0 1vw;font-weight:600}.beta-message p{font-size:clamp(.9rem,2vw,1.2rem);margin:.5vw 0;line-height:1.6;opacity:.95}.beta-info{display:flex;justify-content:center;flex:1;min-height:200px}.info-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2vw;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000001a;text-align:left;width:100%;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}.info-card h4{font-size:clamp(1.1rem,2.5vw,1.5rem);margin:0 0 1vw;font-weight:600;text-align:center}.info-card ul{list-style:none;padding:0;margin:0}.info-card li{padding:.5vw 0;padding-left:25px;position:relative;line-height:1.5;opacity:.9;font-size:clamp(.9rem,1.8vw,1.1rem)}.info-card li:before{content:"✓";position:absolute;left:0;color:#4ade80;font-weight:700}@media (max-width: 768px){.beta-waiting-screen{padding:15px}.beta-main-sections{gap:15px;margin:20px 0}.beta-status,.beta-info{min-height:160px}}@media (max-width: 480px){.beta-waiting-screen{padding:10px}.beta-main-sections{gap:12px;margin:15px 0}.beta-status,.beta-info{min-height:140px}}@media (max-width: 320px){.beta-waiting-screen{padding:8px}.beta-status,.beta-info{min-height:120px}}@media (max-height: 600px){.beta-waiting-screen{min-height:auto;align-items:flex-start;padding:15px}.beta-main-sections{gap:12px;margin:0}.beta-status,.beta-info{min-height:120px}}@media (max-height: 500px){.beta-waiting-screen{min-height:auto;padding:12px}.beta-main-sections{gap:10px}.beta-status,.beta-info{min-height:100px}}@media (max-height: 400px){.beta-waiting-screen{min-height:auto;padding:8px}.beta-status,.beta-info{min-height:80px}}@media (min-width: 1024px){.beta-content{padding:0 clamp(50px,8vw,150px)}.beta-main-sections{gap:clamp(30px,4vw,60px)}}@media (min-width: 1440px){.beta-content{padding:0 clamp(80px,10vw,200px)}}
