:root{--ink:#14211d;--muted:#77827d;--paper:#f4f5f0;--line:#dce1da;--green:#c9f36a;--deep:#101b18;--white:#fff}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}
.shell{max-width:1120px;margin:auto;padding:0 42px}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font:800 12px Manrope,sans-serif;letter-spacing:1.3px}.brand-mark{display:grid;place-items:center;width:28px;height:28px;background:var(--deep);color:var(--green);font:700 17px Manrope;border-radius:3px}.brand-light{font-weight:500;color:#78837d;margin-left:4px}
.top-meta,.muted,.eyebrow,.step,.version,.score-label,.method-grid span,footer{font:10px "DM Mono",monospace;letter-spacing:.7px}.top-meta{display:flex;align-items:center;gap:9px;color:#78837d}.live-dot{width:7px;height:7px;border-radius:50%;background:#8dbd37}.version{border:1px solid var(--line);padding:5px 7px;border-radius:2px}
.hero{padding:76px 0 54px;max-width:720px}.eyebrow{color:#748079}.hero h1{font:700 clamp(44px,7vw,76px)/.99 Manrope,sans-serif;letter-spacing:-4px;margin:22px 0}.hero h1 em{font-style:normal;color:#85928b}.hero-copy{font-size:16px;line-height:1.7;color:#65716a;max-width:570px}
.workspace{background:var(--white);padding:30px;border:1px solid var(--line);box-shadow:0 12px 40px #14211d08}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-head>div{display:flex;align-items:center;gap:12px}.section-head h2{font:700 17px Manrope;margin:0}.step{color:#91a08f}.muted{color:#8a958e;font-size:9px}
.dropzone{min-height:170px;border:1px dashed #b9c5ba;background:#fafbf8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;cursor:pointer;transition:.2s}.dropzone:hover,.dropzone.drag{border-color:#7b9c4d;background:#f7faef}.dropzone input{display:none}.upload-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eaf2dd;color:#54782b;font-size:22px}.dropzone strong{font:600 14px Manrope}.dropzone .muted{font:12px "DM Sans";letter-spacing:0}.file-meta{margin-top:10px;padding:10px 12px;background:#f1f5eb;font-size:12px}
.query-head{margin-top:30px}.scope-card{border:1px solid var(--line);padding:16px 18px}.scope-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0 12px}.scope-row+.scope-row{border-top:1px solid #edf0eb;padding-top:12px}.scope-row div{display:flex;flex-direction:column;gap:4px}.scope-row strong{font:600 13px Manrope}.scope-row span:not(.source-status){font-size:11px;color:#7c8780}.source-status{font:9px "DM Mono";color:#648b36;letter-spacing:.5px}.scope-note{font-size:11px;line-height:1.6;color:#859087;margin:12px 0 0;padding-top:12px;border-top:1px solid #edf0eb}
.run-button{margin-top:20px;width:100%;padding:17px 19px;border:0;background:var(--deep);color:white;display:flex;justify-content:space-between;align-items:center;font:600 13px Manrope;cursor:pointer}.run-button span:last-child{color:var(--green);font-size:18px}.run-button:disabled{opacity:.35;cursor:not-allowed}.privacy-note{text-align:center;color:#8a958e;font-size:10px;margin:12px 0 0}
.progress-panel,.results{margin-top:28px;background:white;border:1px solid var(--line);padding:26px}.progress-top{display:flex;justify-content:space-between;font:600 13px Manrope}.progress-track{height:4px;background:#edf0eb;margin:15px 0}.progress-track span{display:block;height:100%;width:0;background:#9bc84f;transition:width .3s}.progress-panel p{font-size:11px;color:#7d8981}
.score-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px}.score-card{background:var(--deep);color:white;padding:25px}.score-label{color:#aab5ac}.score-number{font:700 58px Manrope;letter-spacing:-3px;margin:10px 0 0;overflow-wrap:anywhere}.score-number small{font-size:23px;color:var(--green);letter-spacing:0}.score-caption{font-size:11px;color:#aab5ac;line-height:1.5;margin-top:5px}.result-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.result-stats div{background:#fafbf8;padding:17px;display:flex;flex-direction:column;gap:5px;min-width:0}.result-stats strong{font:700 24px Manrope;overflow-wrap:anywhere}.result-stats span{font-size:10px;color:#78837d;line-height:1.4}
.notice{background:#f5f8ef;border-left:3px solid #9bc84f;padding:14px 17px;margin-top:15px}.notice strong{font:600 12px Manrope}.notice p{font-size:11px;line-height:1.65;color:#6f7b72;margin:6px 0 0}.matches-head{display:flex;justify-content:space-between;align-items:center;margin:26px 0 12px;gap:10px}.matches-head h3{font:700 14px Manrope;margin:0}.match-list{display:flex;flex-direction:column;gap:9px}.match{border:1px solid var(--line);padding:15px}.match-top{display:flex;justify-content:space-between;gap:15px}.match-title{font:600 13px Manrope;color:var(--ink);text-decoration:none}.match-title:hover{text-decoration:underline}.match-score{font:500 11px "DM Mono";white-space:nowrap;color:#60852f}.match-meta{font-size:10px;color:#8a958e;margin-top:5px;line-height:1.5}.evidence{border-top:1px solid #edf0eb;margin-top:12px;padding-top:10px}.evidence-location{font:9px "DM Mono";color:#829087;letter-spacing:.5px}.evidence p{font-size:11px;line-height:1.65;color:#5f6b63;margin:8px 0 0;overflow-wrap:anywhere}.evidence p strong{font:600 10px Manrope;color:#27352d}.evidence mark{background:#e7f2ce;color:#26351e;padding:1px 2px}.match-excerpt{font-size:11px;line-height:1.6;color:#5f6b63;margin:10px 0 0}
.method{padding:75px 0 65px}.method h2{font:700 29px Manrope;letter-spacing:-1px;margin:15px 0 28px;max-width:470px}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.method-grid div{border-top:1px solid #cfd7ce;padding-top:13px}.method-grid span{font-size:9px;color:#829087}.method-grid strong{display:block;font:600 12px Manrope;margin:12px 0 7px}.method-grid p{font-size:11px;line-height:1.65;color:#77827a;margin:0}
footer{border-top:1px solid var(--line);padding:22px 0 30px;display:flex;justify-content:space-between;color:#8a958e;font-size:9px}
@media(max-width:700px){.shell{padding:0 18px}.top-meta{font-size:8px}.hero{padding:55px 0 38px}.hero h1{letter-spacing:-2.5px}.workspace,.progress-panel,.results{padding:19px}.section-head{align-items:flex-start;gap:8px}.section-head .muted{max-width:120px;text-align:right;line-height:1.5}.score-layout{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr 1fr;row-gap:25px}footer{gap:12px;flex-wrap:wrap}footer span:nth-child(2){order:3;width:100%}.match-top{flex-direction:column;gap:7px}.match-score{white-space:normal}}
#providerDiagnostics{font-size:11px;line-height:1.7;color:#6f7b72;overflow-wrap:anywhere}

.repo-search-note{font-size:11px;line-height:1.6;color:#6f7b72;margin:8px 0 12px}.repo-search-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.repo-search-link{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;border:1px solid #dce1da;color:#26352d;text-decoration:none;font-size:11px;min-width:0}.repo-search-link:hover{background:#f5f8ef;border-color:#9bb77d}.repo-search-link span{font-weight:600}.repo-search-link small{font:9px "DM Mono",monospace;color:#879188;text-align:right;overflow-wrap:anywhere}@media(max-width:700px){.repo-search-grid{grid-template-columns:1fr}}

.repo-search-diagnostics{font:10px "DM Mono",monospace;color:#748079;line-height:1.6;margin:7px 0;overflow-wrap:anywhere}
.repo-results{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.repo-result{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border:1px solid #dce1da;background:#fff;padding:10px}
.repo-result>div:first-child{display:flex;flex-direction:column;gap:5px;min-width:0}
.repo-result strong{font:600 11px Manrope;line-height:1.5;overflow-wrap:anywhere}
.repo-result small{font-size:10px;color:#78837d;line-height:1.5}
.repo-result-links{display:flex;align-items:center;gap:8px;white-space:nowrap;font:9px "DM Mono",monospace}
.repo-result-links a{color:#476b2b;text-decoration:none}
.repo-pdf{color:#476b2b}
.repo-meta-only{color:#8a958e}
.repo-empty{font-size:11px;color:#6f7b72;margin:8px 0}
@media(max-width:700px){.repo-result{flex-direction:column}.repo-result-links{white-space:normal}}
