:root{color:#1a1a1a;--accent:#1f6f4a;--card:#fff;--line:#e4e1d8;--muted:#5c5c5c;background:#f6f5f2;font-family:system-ui,Segoe UI,Roboto,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{color:#f3f4f6;--accent:#3d9d6d;--card:#1f2128;--line:#2c2f38;--muted:#a8adb8;background:#16171d}}*{box-sizing:border-box}body{margin:0}#app{min-height:100svh}a{color:var(--accent);text-decoration:none}.page,.shell,.boot{max-width:52rem;margin:0 auto;padding:20px 16px 48px}.boot{padding-top:48px}.topbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.12em;opacity:.7;margin:0 0 4px;font-size:.75rem}h1{margin:0;font-size:1.6rem;font-weight:600}p{margin:0 0 12px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px}.hint,.status{color:var(--muted);font-size:.95rem}.error{color:#b42318;background:#fde8e6;border-radius:8px;padding:8px 12px}code{font-family:ui-monospace,Consolas,monospace;font-size:.9em}button,.primary{border:1px solid var(--line);background:var(--card);color:inherit;min-height:44px;font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:12px 14px;display:inline-flex}button:disabled{opacity:.6;cursor:not-allowed}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.hidden-input{display:none}.preview,.slip{object-fit:contain;background:#111;border-radius:8px;width:100%;max-height:60vh}.form label{gap:4px;margin:10px 0;font-size:.9rem;display:grid}.form input,.form textarea{font:inherit;border:1px solid var(--line);min-height:44px;color:inherit;background:0 0;border-radius:8px;padding:10px 12px}.pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.review-grid{gap:16px;display:grid}@media (width>=720px){.review-grid{grid-template-columns:minmax(12rem,.9fr) 1.1fr;align-items:start}}.lines-head{justify-content:space-between;align-items:center;gap:8px;margin:16px 0 8px;display:flex}.lines-head h2{margin:0;font-size:1rem}.lines{border-collapse:collapse;width:100%}.lines th,.lines td{text-align:left;vertical-align:middle;padding:6px 0}.lines .num{text-align:right;width:7rem}.lines .act{text-align:right;width:4.5rem}.lines input{width:100%;min-height:44px;font:inherit;border:1px solid var(--line);color:inherit;background:0 0;border-radius:8px;padding:8px 10px}.ocr-debug{color:var(--muted);margin:12px 0;font-size:.9rem}.ocr-debug summary{cursor:pointer}.list{margin:0;padding:0;list-style:none}.list li+li{margin-top:8px}.row{border:1px solid var(--line);background:var(--card);color:inherit;border-radius:12px;justify-content:space-between;gap:12px;padding:12px 14px;display:flex}.sort-bar{justify-content:flex-end;align-items:center;gap:8px;margin:0 0 12px;display:flex}.sort-label{color:var(--muted);font-size:.8rem}.sort-toggle{border:1px solid var(--line);background:var(--card);border-radius:10px;display:inline-flex;overflow:hidden}.sort-toggle button{background:0 0;border:0;border-radius:0;min-height:36px;padding:6px 12px}.sort-toggle button+button{border-left:1px solid var(--line)}.sort-toggle button.active{background:var(--accent);color:#fff}.row p{color:var(--muted);margin:4px 0 0;font-size:.9rem}.row-meta{text-align:right;gap:4px;display:grid}.badge{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.75rem}.facts{grid-template-columns:1fr 1fr;gap:10px 16px;margin:16px 0;display:grid}.facts dt{color:var(--muted);font-size:.8rem}.facts dd{margin:0}.ocr{white-space:pre-wrap;background:color-mix(in srgb, var(--line) 40%, transparent);border-radius:8px;max-height:12rem;padding:10px;font-size:.8rem;overflow:auto}.empty{text-align:center}.foot{color:var(--muted);justify-content:space-between;gap:12px;margin-top:28px;font-size:.85rem;display:flex}.link{color:var(--accent);background:0 0;border:0;padding:0}
