*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0d0d0d;color:#ccc;min-height:100vh;padding:1.5rem}.app-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;max-width:1400px}.app-header h1{font-size:1.2rem;font-weight:700;color:#fff;letter-spacing:-.02em}.gear-btn{all:unset;cursor:pointer;color:#666;font-size:1.1rem;line-height:1;transition:color .15s}.gear-btn:hover{color:#aaa}.modal-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;z-index:100;align-items:center;justify-content:center}.modal-backdrop.open{display:flex}.modal{background:#141414;border:1px solid #242424;border-radius:8px;padding:1.25rem;width:360px;max-width:90vw;position:relative}.modal-title{font-size:.85rem;font-weight:600;color:#fff;margin-bottom:1rem}.modal-close{all:unset;position:absolute;top:.9rem;right:1rem;cursor:pointer;color:#666;font-size:1rem;line-height:1}.modal-close:hover{color:#aaa}.max-w{max-width:1400px}.card{background:#141414;border:1px solid #242424;border-radius:6px;padding:1rem}.tabs{display:flex;gap:0;margin-bottom:1rem;border-bottom:1px solid #242424}.tab{padding:.4rem .85rem;font-size:.8rem;cursor:pointer;color:#777;border-bottom:2px solid transparent;margin-bottom:-1px}.tab.active{color:#fff;border-bottom-color:#00bcd4}.panel{display:none}.panel.active{display:block}label{display:block;font-size:.75rem;color:#888;margin-bottom:.3rem}label span{color:#666}input,select{width:100%;background:#0d0d0d;border:1px solid #242424;border-radius:4px;padding:.4rem .55rem;color:#ccc;font-size:.8rem;margin-bottom:.75rem;outline:none}input:focus,select:focus{border-color:#00bcd4}button{width:100%;background:#00bcd4;color:#000;border:none;border-radius:4px;padding:.5rem;font-size:.8rem;font-weight:600;cursor:pointer}button:hover{background:#00acc1}button:disabled{background:#1e1e1e;color:#666;cursor:not-allowed}.section-title{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#00bcd4;margin-bottom:.75rem}.jobs-list{display:flex;flex-direction:column;gap:.4rem;overflow-y:auto;max-height:420px}.job-item{background:#0d0d0d;border:1px solid #1e1e1e;border-radius:4px;padding:.6rem .75rem;cursor:pointer}.job-item:hover{border-color:#2e2e2e}.job-item.selected{border-color:#00bcd4}.job-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.2rem}.job-title{font-size:.8rem;font-weight:500;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.badge{font-size:.62rem;font-weight:700;padding:.1rem .4rem;border-radius:3px;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.badge.running{background:#1a3a1a;color:#4caf50}.badge.done{background:#0a2a3a;color:#00bcd4}.badge.failed{background:#3a1a1a;color:#f44336}.badge.cancelled{background:#2a2a1a;color:#ffb74d}.badge.pass{background:#0a2a0a;color:#4caf50}.job-meta{font-size:.68rem;color:#666;font-family:monospace}.cancel-btn{width:auto;background:none;border:none;color:#666;font-size:1rem;padding:0 .2rem;cursor:pointer;line-height:1;flex-shrink:0}.cancel-btn:hover{color:#f44336}.empty{color:#666;font-size:.78rem;padding:.5rem 0;font-family:monospace}.spinner{display:inline-block;width:7px;height:7px;border:1.5px solid #4caf50;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;margin-right:5px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.dashboard{display:flex;flex-direction:column;gap:.75rem}.dash-empty{display:flex;align-items:center;justify-content:center;height:400px;color:#666;font-family:monospace;font-size:.85rem;border:1px solid #1a1a1a;border-radius:6px}.stats-bar{background:#141414;border:1px solid #242424;border-radius:6px;padding:.75rem 1rem}.stats-job-title{font-size:.85rem;font-weight:600;color:#fff;margin-bottom:.5rem;display:flex;align-items:center;gap:.6rem}.stats-job-title .badge{font-size:.62rem}.stats-row{display:flex;gap:1.5rem;font-family:SF Mono,Fira Code,monospace;font-size:.75rem}.stat{display:flex;flex-direction:column;gap:.15rem}.stat-label{color:#666;font-size:.62rem;text-transform:uppercase;letter-spacing:.06em}.stat-value{color:#ccc}.stat-value.teal{color:#00bcd4}.stat-value.amber{color:#ffb74d}.stat-value.green{color:#4caf50}.stat-value.red{color:#f44336}.panels-top{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;min-width:0}.panels-mid{display:grid;grid-template-columns:1.6fr 1fr;gap:.75rem;min-width:0}.panels-top>*,.panels-mid>*{min-width:0}.dash-panel{background:#141414;border:1px solid #242424;border-radius:6px;display:flex;flex-direction:column;min-height:180px;max-height:280px;min-width:0;overflow:hidden}.dash-panel-header{padding:.55rem .75rem;border-bottom:1px solid #1e1e1e;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.dash-panel-title{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#00bcd4}.dash-panel-count{font-size:.65rem;font-family:monospace;color:#666}.dash-panel-body{padding:.5rem .75rem;overflow-y:auto;overflow-x:hidden;flex:1;font-family:SF Mono,Fira Code,monospace;font-size:.72rem;line-height:1.65;min-width:0}.p-header{display:flex;align-items:baseline;gap:.5rem;padding:.2rem 0 .35rem;border-bottom:1px solid #242424;margin-bottom:.1rem;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#555}.p-header .p-indicator{visibility:hidden}.p-row{display:flex;align-items:baseline;gap:.5rem;padding:.1rem 0;border-bottom:1px solid #1a1a1a}.p-row:last-child{border-bottom:none}.p-indicator{flex-shrink:0;font-size:.7rem;width:1.2rem;text-align:center}.p-main{color:#bbb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.p-meta{flex-shrink:0;color:#666;font-size:.65rem}.p-indicator.active{color:#ffb74d}.p-indicator.done{color:#4caf50}.p-indicator.error{color:#f44336}.p-indicator.search{color:#00bcd4}.p-indicator.extract{color:#4caf50}.p-row.active-row .p-main{color:#ffb74d}.raw-log-wrap{background:#141414;border:1px solid #242424;border-radius:6px}.raw-log-header{padding:.55rem .75rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}.raw-log-header:hover{background:#1a1a1a;border-radius:6px}.raw-log-toggle{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#00bcd4}.raw-log-chevron{color:#666;font-size:.75rem;transition:transform .15s}.raw-log-chevron.open{transform:rotate(90deg)}.raw-log-body{border-top:1px solid #1e1e1e;padding:.5rem .75rem;max-height:220px;overflow-y:auto;overflow-x:hidden;font-family:SF Mono,Fira Code,monospace;font-size:.7rem;line-height:1.6}.log-line{white-space:pre-wrap;word-break:break-all;overflow-wrap:anywhere;color:#777}.log-line.search{color:#4f8ef7}.log-line.scrape{color:#9c7ef7}.log-line.extract{color:#4caf50}.log-line.agent{color:#666;font-style:italic}.log-line.error{color:#f44336}.log-line.finish{color:#ffb74d;font-weight:600}.dl-link{font-size:.72rem;color:#00bcd4;text-decoration:none}.dl-link:hover{text-decoration:underline}.rpanel-tabs{display:flex;gap:0;border-bottom:1px solid #1e1e1e;margin-bottom:.75rem}.rpanel-tab{padding:.4rem .9rem;font-size:.75rem;cursor:pointer;color:#666;border-bottom:2px solid transparent;margin-bottom:-1px}.rpanel-tab.active{color:#fff;border-bottom-color:#00bcd4}.records-wrap{overflow-x:auto}.records-table{width:100%;border-collapse:collapse;font-family:SF Mono,Fira Code,monospace;font-size:.7rem}.records-table th{text-align:left;padding:.35rem .6rem;color:#00bcd4;font-weight:600;font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid #242424;white-space:nowrap;position:sticky;top:0;background:#0d0d0d}.records-table td{padding:.3rem .6rem;color:#aaa;border-bottom:1px solid #181818;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.records-table tr:hover td{background:#141414}.records-table td.source-official{color:#4caf50}.records-table td.source-comparison{color:#ffb74d}.records-scroll{max-height:calc(100vh - 200px);overflow-y:auto}.test-case{background:#0d0d0d;border:1px solid #1e1e1e;border-radius:4px;padding:.65rem .75rem;margin-bottom:.5rem}.test-case-header{display:flex;align-items:center;gap:.4rem;margin-bottom:.25rem}.test-case-name{font-size:.8rem;font-weight:600;color:#ddd}.test-case-topic{font-size:.68rem;color:#666;font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:.35rem}.check-item{display:flex;align-items:baseline;gap:.4rem;font-size:.72rem;font-family:monospace;padding:.1rem 0;line-height:1.5}.check-item.pass{color:#4caf50}.check-item.fail{color:#f44336}.run-test-btn{width:auto!important;padding:.2rem .55rem!important;font-size:.72rem!important;margin-left:auto!important}div.svelte-1178mu8{display:inline-flex;align-items:center}.brand.svelte-oiwvqb{display:flex;align-items:center;gap:.45rem}.docs-link.svelte-oiwvqb{font-size:.8rem;color:#aaa;text-decoration:underline;text-underline-offset:3px;font-family:monospace;transition:color .15s}.docs-link.svelte-oiwvqb:hover{color:#fff}.app-nav.svelte-oiwvqb{display:flex;gap:.1rem}.nav-link.svelte-oiwvqb{all:unset;cursor:pointer;font-size:.8rem;font-weight:500;color:#888;padding:.25rem .65rem;border-radius:4px;transition:color .15s,background .15s}.nav-link.svelte-oiwvqb:hover{color:#aaa;background:#1a1a1a}.nav-link.active.svelte-oiwvqb{color:#00bcd4;background:#0a2a2a}.running-indicator.svelte-oiwvqb{display:flex;align-items:center;gap:.45rem}.pulse.svelte-oiwvqb{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4caf50;box-shadow:0 0 #4caf5080;animation:svelte-oiwvqb-pulse 1.4s ease-in-out infinite;flex-shrink:0}@keyframes svelte-oiwvqb-pulse{0%{box-shadow:0 0 #4caf5080}70%{box-shadow:0 0 0 6px #4caf5000}to{box-shadow:0 0 #4caf5000}}.running-label.svelte-oiwvqb{font-size:.72rem;color:#4caf50;font-family:monospace;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-ticker.svelte-xolv2a{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem .75rem;margin-bottom:.75rem;background:#0d1a0d;border:1px solid #1a2e1a;border-radius:4px;font-family:SF Mono,Fira Code,monospace;font-size:.72rem;color:#4caf50;min-width:0;transition:color .3s,border-color .3s}.action-ticker.idle.svelte-xolv2a{color:#565;border-color:#1a1a1a}.ticker-dot.svelte-xolv2a{width:6px;height:6px;border-radius:50%;background:#4a5a4a;flex-shrink:0;margin-top:.3rem}.ticker-dot.active.svelte-xolv2a{background:#4caf50;animation:svelte-xolv2a-ticker-pulse 1.2s ease-in-out infinite}@keyframes svelte-xolv2a-ticker-pulse{0%,to{opacity:1}50%{opacity:.3}}.ticker-text.svelte-xolv2a{white-space:pre-wrap;word-break:break-word;min-height:4.2em;line-height:1.5}.monitor-grid.svelte-xolv2a{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem}@media(max-width:1100px){.monitor-grid.svelte-xolv2a{grid-template-columns:1fr 1fr}}@media(max-width:700px){.monitor-grid.svelte-xolv2a{grid-template-columns:1fr}}.job-row.svelte-xolv2a{all:unset;display:flex;align-items:baseline;gap:.5rem;padding:.1rem 0;border-bottom:1px solid #1a1a1a;cursor:pointer;width:100%;box-sizing:border-box}.job-row.svelte-xolv2a:last-of-type{border-bottom:none}.job-row.svelte-xolv2a:hover .p-main:where(.svelte-xolv2a){color:#fff}.cancel-btn.svelte-xolv2a{all:unset;cursor:pointer;color:#444;font-size:.85rem;line-height:1;margin-left:auto;flex-shrink:0}.cancel-btn.svelte-xolv2a:hover{color:#f44336}.clear-link.svelte-xolv2a{all:unset;cursor:pointer;font-size:.62rem;color:#555;margin-top:.35rem;display:block;transition:color .15s}.clear-link.svelte-xolv2a:hover{color:#ef5350}.inline-form.svelte-13jfdni{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.field.svelte-13jfdni{display:flex;flex-direction:column;gap:.25rem;min-width:120px;flex:1}.field.grow2.svelte-13jfdni{flex:2}.field.narrow.svelte-13jfdni{flex:0 0 80px;min-width:0}.field.submit.svelte-13jfdni{flex:0 0 auto}label.svelte-13jfdni{font-size:.68rem;color:#555;margin:0}input.svelte-13jfdni,select.svelte-13jfdni{margin:0}button.svelte-13jfdni{margin:0;white-space:nowrap}.inline-form.svelte-1p45hml{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.field.svelte-1p45hml{display:flex;flex-direction:column;gap:.25rem;min-width:120px;flex:1}.field.grow.svelte-1p45hml{flex:2}.field.submit.svelte-1p45hml{flex:0 0 auto}label.svelte-1p45hml{font-size:.68rem;color:#888;margin:0}input.svelte-1p45hml,select.svelte-1p45hml{margin:0}button.svelte-1p45hml{margin:0;white-space:nowrap}.top-bar.svelte-19o5e6k{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;min-width:0}.dataset-select-wrap.svelte-19o5e6k{display:flex;align-items:center;gap:0;flex:1;min-width:0;border:1px solid #1e1e1e;border-radius:4px;background:#0d0d0d;max-width:320px}.dataset-select.svelte-19o5e6k{all:unset;flex:1;min-width:0;font-size:.75rem;font-family:monospace;color:#888;padding:.28rem .5rem;cursor:pointer;background:transparent;-moz-appearance:auto;appearance:auto;-webkit-appearance:auto}.dataset-select.svelte-19o5e6k:focus{outline:none;color:#ccc}.ds-btn.svelte-19o5e6k{all:unset;cursor:pointer;font-size:.7rem;color:#666;padding:.28rem .35rem;text-decoration:none;transition:color .15s;border-left:1px solid #1a1a1a;line-height:1}.ds-btn.svelte-19o5e6k:hover{color:#aaa}.ds-btn.del.svelte-19o5e6k:hover{color:#ef5350}.action-btns.svelte-19o5e6k{display:flex;gap:.35rem;flex-shrink:0}.action-btn.svelte-19o5e6k{all:unset;cursor:pointer;font-size:.72rem;color:#888;border:1px solid #2a2a2a;border-radius:4px;padding:.3rem .6rem;background:#0d0d0d;white-space:nowrap;transition:color .15s,border-color .15s,background .15s}.action-btn.svelte-19o5e6k:hover{color:#ccc;border-color:#444}.action-btn.active.svelte-19o5e6k{color:#00bcd4;border-color:#00bcd4;background:#001a1f}.action-btn.icon.svelte-19o5e6k{padding:.3rem .5rem}.inline-panel.svelte-19o5e6k{background:#0a0a0a;border:1px solid #1e1e1e;border-radius:6px;padding:1rem 1.25rem;margin-bottom:.75rem}.records-area.svelte-19o5e6k{min-width:0}.model-pair.svelte-529oul{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.hint.svelte-529oul{font-weight:400;color:#777;font-size:.75em}.section-divider.svelte-529oul{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#666;border-top:1px solid #2a2a2a;padding-top:.75rem;margin:.75rem 0 .5rem}.api-key-row.svelte-529oul{display:flex;gap:.5rem;margin-bottom:.75rem}.copy-btn.svelte-529oul{all:unset;cursor:pointer;font-size:.75rem;color:#4caf50;border:1px solid #2a3a2a;border-radius:3px;padding:.2rem .5rem;white-space:nowrap}.copy-btn.svelte-529oul:hover{color:#fff;border-color:#4caf50}
