.problem-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; } .problem-meta { margin-bottom: 20px; } .meta-item { display: inline-block; margin-right: 15px; margin-bottom: 10px; } .meta-label { font-weight: 600; color: #7f8c8d; margin-right: 5px; } .meta-value { color: #2c3e50; } .task-selector { margin: 20px 0; display: flex; gap: 10px; flex-wrap: wrap; } .task-btn { padding: 10px 20px; background: #ecf0f1; border: 2px solid transparent; border-radius: 4px; cursor: pointer; transition: all 0.3s; font-size: 0.95rem; } .task-btn:hover { background: #bdc3c7; } .task-btn.active { background: #3498db; color: white; border-color: #2980b9; } .task-details { margin-top: 20px; } .task-section { margin-bottom: 25px; padding: 15px; background: #f8f9fa; border-left: 4px solid #3498db; border-radius: 4px; } .task-section h3 { margin-bottom: 10px; color: #2c3e50; font-size: 1.1rem; } .code-block { background: #f8f9fa; padding: 15px; border-radius: 4px; overflow-x: auto; font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; font-size: 0.9rem; border: 1px solid #e1e4e8; } .task-items-list { list-style: none; } .task-items-list li { padding: 10px; margin-bottom: 8px; background: white; border-radius: 4px; border: 1px solid #e1e4e8; } .line-ref { display: inline-block; padding: 2px 8px; background: #3498db; color: white; border-radius: 3px; font-family: monospace; font-size: 0.85rem; margin-right: 8px; } .var-name { display: inline-block; padding: 2px 8px; background: #9b59b6; color: white; border-radius: 3px; font-family: monospace; font-size: 0.85rem; } .io-section { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; } @media (max-width: 768px) { .io-section { grid-template-columns: 1fr; } } .navigation-hint { margin-top: 20px; padding: 15px; background: #e8f4f8; border-radius: 4px; color: #2c3e50; font-size: 0.9rem; } .test-code-section { margin-top: 20px; } /* Inline task visualization */ .code-with-tasks { position: relative; } .task-marker { display: inline-block; margin-left: 10px; padding: 2px 8px; background: #9b59b6; color: white; border-radius: 3px; font-size: 0.75rem; font-weight: 600; cursor: crosshair; } /* Coverage coloring on lineno spans */ td.linenos .normal.line-executed { background-color: #d4edda !important; color: #155724 !important; } td.linenos .normal.line-not-executed { background-color: #f8d7da !important; color: #721c24 !important; } /* Coverage legend */ .coverage-legend { margin: 10px 0; padding: 10px 15px; background: #f8f9fa; border-left: 4px solid #28a745; border-radius: 4px; font-size: 0.85rem; display: none; } .coverage-legend-item { display: inline-block; margin-right: 18px; } .coverage-swatch { display: inline-block; width: 12px; height: 12px; border-radius: 2px; margin-right: 4px; vertical-align: middle; } /* Ground truth answer badge */ .gt-answer { display: inline-block; margin-left: 10px; padding: 2px 8px; background: #17a2b8; color: white; border-radius: 3px; font-family: monospace; font-size: 0.82rem; font-weight: 600; } .gt-answer.loading { background: #6c757d; } /* SVG arrow overlay */ #arrow-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; overflow: visible; z-index: 10; } .exec-arrow { fill: none; stroke: #e67e22; stroke-width: 2.5; stroke-dasharray: none; opacity: 0.9; } .exec-arrow-head { fill: #e67e22; opacity: 0.9; } /* CRUXEval answer highlight */ .crux-answer { border-left: 4px solid #17a2b8 !important; background: #e8f6f8 !important; } /* Before/after diff view */ .diff-container { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } @media (max-width: 1024px) { .diff-container { grid-template-columns: 1fr; } } .diff-panel { overflow-x: auto; } .diff-panel h3 { margin-bottom: 10px; font-size: 1.1rem; } .diff-panel h3 .diff-label-buggy { color: #e74c3c; } .diff-panel h3 .diff-label-fixed { color: #27ae60; } .bug-info { margin-bottom: 15px; padding: 12px 15px; border-left: 4px solid #e74c3c; background: #fdf2f2; border-radius: 4px; } .bug-info .bug-category { display: inline-block; padding: 2px 8px; background: #e74c3c; color: white; border-radius: 3px; font-size: 0.82rem; font-weight: 600; margin-right: 8px; } .bug-info .bug-subtype { display: inline-block; padding: 2px 8px; background: #c0392b; color: white; border-radius: 3px; font-size: 0.82rem; font-weight: 600; } /* Multi-language view */ .lang-tabs { display: flex; gap: 0; border-bottom: 2px solid #e1e4e8; margin-bottom: 0; } .lang-tab { padding: 10px 20px; background: #f8f9fa; border: 1px solid #e1e4e8; border-bottom: none; cursor: pointer; font-size: 0.95rem; font-weight: 500; transition: all 0.2s; border-radius: 4px 4px 0 0; margin-right: 2px; } .lang-tab:hover { background: #e8f4f8; } .lang-tab.active { background: white; border-bottom: 2px solid white; margin-bottom: -2px; color: #3498db; font-weight: 600; } .lang-code-panel { display: none; } .lang-code-panel.active { display: block; } /* BigOBench complexity display */ .complexity-badges { display: flex; gap: 20px; flex-wrap: wrap; } .complexity-item { display: flex; align-items: center; gap: 10px; } .complexity-label { font-weight: 600; color: #7f8c8d; font-size: 0.95rem; } .complexity-value { display: inline-block; padding: 6px 16px; background: #2c3e50; color: #f1c40f; border-radius: 4px; font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; font-size: 1.1rem; font-weight: 600; } /* Diff view (GitHub-style table with line numbers) */ .diff-view { font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; font-size: 0.85rem; line-height: 1.5; overflow-x: auto; border: 1px solid #e1e4e8; border-radius: 4px; } .diff-table { border-collapse: collapse; width: 100%; } .diff-table td { padding: 0 8px; white-space: pre; vertical-align: top; } .diff-ln { width: 1%; min-width: 40px; color: #959da5; text-align: right; user-select: none; font-size: 0.8rem; padding: 0 6px !important; border-right: 1px solid #e1e4e8; } .diff-tr-add td { background: #e6ffec; } .diff-td-add { color: #24292e; } .diff-tr-add .diff-ln { background: #ccffd8; color: #22863a; } .diff-tr-del td { background: #ffebe9; } .diff-td-del { color: #24292e; } .diff-tr-del .diff-ln { background: #ffd7d5; color: #cb2431; } .diff-tr-ctx td { background: white; } .diff-td-ctx { color: #586069; } .diff-tr-hunk td { background: #f1f8ff; color: #0366d6; font-weight: 600; padding: 4px 8px; } .diff-tr-header td { background: #fafbfc; color: #6a737d; font-weight: 600; padding: 4px 8px; border-bottom: 1px solid #e1e4e8; } /* Diff file sections (GitHub-style per-file headers) */ .diff-file-section { margin-bottom: 16px; border: 1px solid #d0d7de; border-radius: 6px; overflow: hidden; } .diff-file-section .diff-view { border: none; border-radius: 0; } .diff-file-header { display: flex; justify-content: space-between; align-items: center; padding: 8px 12px; background: #f6f8fa; border-bottom: 1px solid #d0d7de; font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; font-size: 0.85rem; } .diff-file-path { color: #24292f; font-weight: 600; word-break: break-all; } .diff-file-stats { white-space: nowrap; margin-left: 12px; font-size: 0.8rem; } .diff-stat-add { color: #1a7f37; font-weight: 600; } .diff-stat-del { color: #cf222e; font-weight: 600; margin-left: 6px; } /* GitHub links bar */ .gh-links-bar { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; } .gh-link { display: inline-block; padding: 6px 14px; background: #f6f8fa; border: 1px solid #d0d7de; border-radius: 6px; color: #0969da; text-decoration: none; font-size: 0.9rem; font-weight: 500; transition: background 0.15s, border-color 0.15s; } .gh-link:hover { background: #ddf4ff; border-color: #0969da; } /* Issue / problem statement */ .issue-statement { line-height: 1.7; padding: 10px; white-space: pre-wrap; word-wrap: break-word; max-height: 500px; overflow-y: auto; background: #f8f9fa; border: 1px solid #e1e4e8; border-radius: 4px; font-size: 0.9rem; } .test-id-list { list-style: none; padding: 0; } .test-id-list li { padding: 4px 8px; margin-bottom: 4px; background: #f8f9fa; border-radius: 3px; font-family: monospace; font-size: 0.82rem; border-left: 3px solid #e74c3c; } .test-id-list li.pass-to-pass { border-left-color: #27ae60; } /* Fill-in-the-Middle (SAFIM) view */ .fim-hole-marker { display: inline-block; padding: 4px 16px; background: #e74c3c; color: white; border-radius: 4px; font-family: monospace; font-weight: 600; font-size: 0.9rem; margin: 4px 0; } .fim-answer { padding: 15px; background: #e8f6e8; border-left: 4px solid #27ae60; border-radius: 4px; font-family: monospace; font-size: 0.9rem; } .fim-merged-legend { margin: 8px 0; padding: 6px 12px; background: #f8f9fa; border-radius: 4px; font-size: 0.85rem; color: #555; } /* Vulnerability view */ .vuln-status { display: inline-block; padding: 4px 12px; border-radius: 4px; font-size: 0.85rem; font-weight: 600; } .vuln-status-vulnerable { background: #e74c3c; color: white; } .vuln-status-patched { background: #27ae60; color: white; } .cwe-badge { display: inline-block; padding: 4px 12px; background: #2c3e50; color: #e74c3c; border-radius: 4px; font-family: monospace; font-size: 0.85rem; font-weight: 600; }