:root{--ink:#1b1b1b;--muted:#565c65;--line:#c6cace;--page:#f4f5f7;--card:#fff;--navy:#162e51;--blue:#005ea2;--blue-dark:#1a4480;--green:#216e1f;--green-bg:#e7f4e4;--amber:#775540;--amber-bg:#fff1d2;--red:#b50909;--red-bg:#fdecea;--gray-bg:#e6e6e6}*{box-sizing:border-box}html{font-size:18px}body{background:var(--page);color:var(--ink);margin:0;font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}h1,h2,h3,p{margin:0}.page{max-width:1100px;margin:0 auto;padding:0 24px}main.page{padding-bottom:80px}.site-header{background:var(--navy);color:#fff;padding:24px 0}.site-header h1{font-size:1.8rem}.site-header p{opacity:.9}.modes{border-bottom:3px solid var(--navy);gap:8px;margin:28px 0 24px;display:flex}.mode{font:inherit;border:2px solid var(--line);color:var(--blue-dark);cursor:pointer;background:#fff;border-bottom:none;border-radius:8px 8px 0 0;padding:14px 28px;font-size:1.1rem;font-weight:600}.mode.active{background:var(--navy);border-color:var(--navy);color:#fff}.columns{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:24px}.card h2{align-items:center;gap:12px;font-size:1.3rem;display:flex}.step{background:var(--navy);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:1.1rem;display:inline-grid}.help{color:var(--muted);margin:8px 0 18px}.actions{flex-wrap:wrap;grid-column:1/-1;gap:16px;display:flex}.field{margin-bottom:16px}.field label,.examples label{margin-bottom:4px;font-weight:600;display:block}.optional{color:var(--muted);font-weight:400}input[type=text],select{width:100%;font:inherit;color:var(--ink);background:#fff;border:2px solid #71767a;border-radius:6px;padding:12px 14px}input::placeholder{color:#8d9297}.examples{background:#e8f1fa;border:1px solid #a8c6e5;border-radius:10px;margin-bottom:24px;padding:16px 24px}.file-picker{display:inline-block}.file-picker input{opacity:0;width:1px;height:1px;position:absolute}.file-picker input:disabled+.button{opacity:.5;cursor:not-allowed}.button{font:inherit;border:2px solid var(--blue);cursor:pointer;border-radius:8px;min-height:56px;padding:14px 28px;font-size:1.1rem;font-weight:600;display:inline-block}.button.primary{background:var(--blue);color:#fff;min-width:240px}.button.primary:hover:not(:disabled){background:var(--blue-dark)}.button.secondary,.button.small{color:var(--blue);background:#fff}.button.small{min-height:44px;padding:8px 16px;font-size:1rem}.button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible,.file-picker input:focus-visible+.button{outline-offset:2px;outline:4px solid #2491ff}.preview{margin:18px 0 0}.preview img{border:1px solid var(--line);border-radius:6px;max-width:100%;max-height:460px;display:block}.preview figcaption,.filename{color:var(--muted);font-size:.9rem}.picked{margin-top:14px;font-weight:600}.picked.warn{color:var(--red)}.error{border-left:8px solid var(--red);background:var(--red-bg);margin-top:24px;padding:16px 20px;font-weight:600}.result{margin-top:28px}.banner{border:2px solid;border-radius:10px;align-items:center;gap:20px;padding:20px 24px;display:flex}.banner h2{font-size:1.5rem}.banner p{color:var(--ink)}.banner-symbol{background:currentColor;border-radius:50%;flex:none;place-items:center;width:56px;height:56px;font-size:1.8rem;font-weight:700;display:grid}.banner-symbol span{color:#fff}.verdict-pass{color:var(--green);background:var(--green-bg)}.verdict-review{color:var(--amber);background:var(--amber-bg)}.verdict-fail{color:var(--red);background:var(--red-bg)}.verdict-unreadable{color:#3d4551;background:var(--gray-bg)}.badge{white-space:nowrap;border:1px solid;border-radius:999px;padding:4px 12px;font-weight:700;display:inline-block}.checklist,.batch-list{margin:20px 0 0;padding:0;list-style:none}.check{background:var(--card);border:1px solid var(--line);border-left:10px solid;border-radius:8px;grid-template-columns:190px 1fr;gap:20px;margin-bottom:10px;padding:18px 24px;display:grid}.check-status{font-size:1.05rem;font-weight:700}.check h3{font-size:1.1rem}.check dl{grid-template-columns:150px 1fr;gap:4px 16px;margin:10px 0 0;display:grid}.check dt{color:var(--muted)}.check dd{overflow-wrap:anywhere;margin:0}.status-match{border-left-color:var(--green)}.status-match .check-status{color:var(--green)}.status-review{border-left-color:#c2850c}.status-review .check-status{color:var(--amber)}.status-mismatch,.status-not_found{border-left-color:var(--red)}.status-mismatch .check-status,.status-not_found .check-status{color:var(--red)}.raw-text{margin-top:16px}.raw-text summary{cursor:pointer;color:var(--blue);padding:8px 0;font-weight:600}.raw-text pre{background:var(--card);border:1px solid var(--line);white-space:pre-wrap;border-radius:8px;padding:16px;font-size:.9rem}.progress{align-items:center;gap:16px;font-weight:600;display:flex}.progress progress{height:22px;accent-color:var(--blue);flex:1}.filters{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.filter{font:inherit;border:2px solid var(--blue);color:var(--blue);cursor:pointer;background:#fff;border-radius:999px;padding:10px 18px;font-weight:600}.filter.active{background:var(--blue);color:#fff}.batch-row{background:var(--card);border:1px solid var(--line);border-radius:8px;margin-bottom:10px;padding:16px 24px}.batch-summary{grid-template-columns:1fr 1.6fr auto;align-items:center;gap:20px;display:grid}.batch-summary .filename{overflow-wrap:anywhere;display:block}.batch-outcome{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.batch-row .result{margin-top:16px}.muted{color:var(--muted)}@media (width<=800px){.columns,.check,.batch-summary,.check dl{grid-template-columns:1fr}}
