:root{--brand:#363c8e;--amber:#f59e0b;--ink:#19203a;--muted:#697089;--line:#e3e5ee;--paper:#fff;--bg:#f4f5f9}
*{box-sizing:border-box}body{margin:0;font:16px/1.5 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg)}[hidden]{display:none!important}button,input,a{-webkit-tap-highlight-color:transparent}button,a,input:focus-visible{outline:3px solid var(--amber);outline-offset:4px}a{color:inherit;text-decoration:none}.topbar{height:86px;display:flex;align-items:center;justify-content:space-between;max-width:1040px;margin:auto;padding:0 26px}.brand{display:flex;gap:12px;align-items:center;color:var(--brand)}.brand strong{font-size:29px;letter-spacing:-1px}.brand span{font-size:12px;letter-spacing:1.8px;font-weight:700;border-left:1px solid #c9cde0;padding-left:12px}.private-label{font-size:13px;color:var(--muted)}main{max-width:800px;margin:32px auto 70px;padding:0 24px}.heading{margin-bottom:28px}.eyebrow{font-size:11px;color:var(--brand);font-weight:700;letter-spacing:1.8px;margin:0 0 10px}h1{font-size:32px;line-height:1.2;letter-spacing:-.7px;margin:0 0 15px}h2{font-size:24px;line-height:1.25;margin:0 0 22px}.intro{color:var(--muted);margin:0;font-size:17px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:32px;box-shadow:0 8px 30px #202c5810;margin-bottom:20px}.dropzone{min-height:226px;border:2px dashed #c5cae1;border-radius:12px;background:#f9f9fe;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;cursor:pointer;gap:9px}.dropzone svg{color:var(--brand);margin-bottom:8px}.dropzone strong{font-size:19px}.dropzone span{font-size:14px;color:var(--muted)}.dropzone .formats{font-size:12px;margin-top:9px;letter-spacing:.4px}.dropzone:hover,.dropzone.dragover{background:#eeeef9;border-color:var(--brand)}.file-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.dropzone:has(+input:focus-visible){outline:3px solid var(--amber)}.limits{font-size:12px;color:var(--muted);margin:14px 0 20px}.selection{display:flex;align-items:center;justify-content:space-between;font-size:14px;gap:12px}.file-list{padding-left:18px;margin:10px 0 20px;font-size:13px;color:var(--muted);overflow-wrap:anywhere}.file-list:empty{display:none}.primary{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:8px;background:var(--brand);color:#fff;font:700 15px/1.4 Arial,sans-serif;min-height:48px;padding:13px 24px;cursor:pointer}.primary:hover{background:#292f77}.primary:disabled{opacity:.45;cursor:default}.quiet{border:0;background:transparent;color:var(--brand);font:400 13px/1.5 Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;padding:6px;cursor:pointer}.privacy{color:var(--muted);font-size:12px;line-height:1.6;margin:20px 0 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0}.stats>div{border-left:3px solid var(--line);padding-left:18px}.stats>div:first-child{border-color:var(--brand)}.stats>div:last-child{border-color:var(--amber)}.stats strong{display:block;font-size:36px;line-height:1.15;letter-spacing:-1px}.stats span{font-size:14px;color:var(--muted)}.result-notes{font-size:13px;color:var(--muted);margin-bottom:24px}.notice{border-radius:10px;padding:20px 24px;margin:20px 0;overflow-wrap:anywhere}.notice.error{background:#fff4e6;color:#754707;border:1px solid #f1d5b0}.notice p{margin:0 0 8px}.notice ul{margin-bottom:0;padding-left:20px;font-size:14px}progress{width:100%;height:10px;accent-color:var(--brand);border:0}#progress-text{font-size:14px;color:var(--muted)}.login-panel{max-width:480px;margin:60px auto}.login-panel h1{font-size:28px}.login-form{display:flex;flex-direction:column;margin-top:26px}.login-form label{font-size:13px;font-weight:700;margin:16px 0 7px}.login-form input{height:46px;border:1px solid #ccd0df;border-radius:7px;padding:8px 12px;color:var(--ink);font:16px Arial,sans-serif}.login-form .primary{margin-top:26px}footer{color:#858a9e;text-align:center;font-size:11px;padding:0 20px 28px}footer span{display:inline-block;margin-left:12px}#new-batch{margin-left:14px}@media(max-width:620px){.topbar{height:74px;padding:0 20px}main{margin-top:18px;padding:0 16px}h1{font-size:28px}.intro{font-size:15px}.panel{padding:22px}.dropzone{padding:20px;min-height:214px}.dropzone strong{font-size:17px}.stats{gap:8px}.stats>div{padding-left:10px}.stats strong{font-size:30px}.stats span{font-size:12px}.primary{width:100%}#new-batch{display:block;margin:18px auto 0}.selection{align-items:start}.login-panel{margin-top:30px}}
