*,*:before,*:after{box-sizing:border-box}:root{color-scheme:dark;--bg: #0f1117;--surface: #1a1d27;--border: #2a2f3d;--text: #e8eaed;--muted: #9aa0b0;--accent: #5b8def;--accent-hover: #7aa3f5;--success: #4caf82;--error: #e05c5c}html{height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column}header{flex-shrink:0;padding:2rem 0 1rem;border-bottom:1px solid var(--border)}.header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;max-width:1200px;width:100%;margin:0 auto;padding:0 2rem}header h1{margin:0 0 .25rem;font-size:1.75rem;font-weight:600}.subtitle{margin:0;color:var(--muted)}.simd-badge{flex-shrink:0;padding:.35rem .75rem;border-radius:999px;font-size:.8125rem;font-weight:500;letter-spacing:.01em;border:1px solid var(--border);background:var(--surface);color:var(--muted)}.simd-badge--yes{border-color:#4caf8273;background:#4caf821f;color:var(--success)}.simd-badge--no{border-color:#e05c5c59;background:#e05c5c14;color:#e88a8a}main{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:2rem;max-width:1200px;width:100%;margin:0 auto}.controls{flex-shrink:0}.drop-zone{border:2px dashed var(--border);border-radius:8px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--accent);background:#5b8def0f}.drop-zone p{margin:0;color:var(--muted)}.file-list{margin-top:1rem}.file-list ul{list-style:none;padding:0;margin:0}.file-list li{padding:.5rem 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;color:var(--muted);font-size:.9rem}.file-list li span.name{color:var(--text)}.actions{display:flex;gap:1rem;align-items:center;margin-top:1.5rem;flex-wrap:wrap}.actions label{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.9rem}.actions input[type=number],.actions input[type=text]{padding:.4rem .5rem;background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);font:inherit;transition:opacity .15s}.actions input[type=number]:disabled,.actions input[type=text]:disabled,.actions input[type=checkbox]:disabled{opacity:.4;cursor:not-allowed}.actions label:has(input:disabled){opacity:.6;cursor:not-allowed}.actions input[type=number]{width:4rem}.chunk-sizes-label input[type=text]{width:14rem}button{padding:.6rem 1.25rem;border:none;border-radius:6px;font-size:.95rem;cursor:pointer;transition:background .15s}#run-btn{background:var(--accent);color:#fff}#run-btn:hover:not(:disabled){background:var(--accent-hover)}#run-btn:disabled{opacity:.4;cursor:not-allowed}#clear-btn{background:var(--surface);color:var(--text);border:1px solid var(--border)}#clear-btn:hover:not(:disabled){background:var(--border)}#clear-btn:disabled{opacity:.4;cursor:not-allowed}.progress-section{flex-shrink:0;margin-top:2rem}.benchmark-output{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;margin-top:2rem}.results-section{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.results-scroll{flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.results-scroll thead th{position:sticky;top:0;z-index:1;background:var(--surface);box-shadow:0 1px 0 var(--border)}.progress-section h2,.results-section h2,.summary-section h2{flex-shrink:0;font-size:1.1rem;margin:0 0 1rem;color:var(--muted);font-weight:500}.progress-item{margin-bottom:.75rem}.progress-item .label{font-size:.85rem;color:var(--muted);margin-bottom:.25rem}.progress-bar{height:6px;background:var(--surface);border-radius:3px;overflow:hidden}.progress-bar .fill{height:100%;background:var(--accent);border-radius:3px;transition:width .1s}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:500;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}tr.mismatch td{background:#e05c5c14}.match-yes{color:var(--success)}.match-no{color:var(--error);font-weight:600}.match-na{color:var(--muted)}.hash-cell{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;cursor:help}.summary-section{flex-shrink:0;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.table-scroll{overflow-x:auto}tr.summary-winner td{background:#4caf821f}tr.summary-winner td:first-child{box-shadow:inset 3px 0 0 var(--success)}tr.summary-winner td:last-child{color:var(--success);font-weight:600}
