.log-page[data-v-1a09fc9a]{min-height:100vh;background:#f0f4f8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;color:#0f172a}.topbar[data-v-1a09fc9a]{display:flex;align-items:center;gap:16px;padding:20px 32px;background:#fff;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:10}.topbar h1[data-v-1a09fc9a]{font-size:22px;font-weight:700;margin:0;color:#0f172a}.topbar .count[data-v-1a09fc9a]{font-size:14px;color:#64748b;background:#f1f5f9;padding:4px 12px;border-radius:12px}.topbar .spacer[data-v-1a09fc9a]{flex:1}.search-box input[data-v-1a09fc9a]{width:240px;height:38px;border:1px solid #e2e8f0;border-radius:8px;padding:0 14px;font-size:14px;outline:none;transition:border-color .15s;color:#0f172a}.search-box input[data-v-1a09fc9a]:focus{border-color:#3b82f6}.back-btn[data-v-1a09fc9a],.refresh-btn[data-v-1a09fc9a]{height:38px;padding:0 20px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#3b82f6;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.back-btn[data-v-1a09fc9a]:hover,.refresh-btn[data-v-1a09fc9a]:hover{background:#3b82f6;color:#fff;border-color:#3b82f6}.table-wrap[data-v-1a09fc9a]{padding:20px 32px;display:flex;justify-content:center;overflow-x:auto}table[data-v-1a09fc9a]{width:auto;min-width:0;table-layout:auto;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.06)}thead[data-v-1a09fc9a]{background:#f8fafc}th[data-v-1a09fc9a]{text-align:center;font-size:14px;font-weight:600;color:#475569;padding:14px clamp(3px,2.5vw,30px);border-bottom:2px solid #e2e8f0;white-space:nowrap;letter-spacing:.3px}td[data-v-1a09fc9a]{padding:20px clamp(3px,2.5vw,30px);font-size:15px;border-bottom:1px solid #f1f5f9;vertical-align:middle;color:#1e293b;text-align:center}tr:last-child td[data-v-1a09fc9a]{border-bottom:none}tr:hover td[data-v-1a09fc9a]{background:#f0f9ff}.col-id[data-v-1a09fc9a]{text-align:center}.col-method[data-v-1a09fc9a],.col-num[data-v-1a09fc9a],.col-result[data-v-1a09fc9a]{text-align:center}.col-time[data-v-1a09fc9a]{white-space:nowrap}.cell-num[data-v-1a09fc9a]{font-family:JetBrains Mono,Cascadia Code,monospace;font-size:14px;color:#334155}.cell-barcode[data-v-1a09fc9a]{font-family:JetBrains Mono,Cascadia Code,monospace;font-size:15px;font-weight:600;letter-spacing:1px;color:#0f172a}.cell-project[data-v-1a09fc9a]{font-weight:600;color:#0f172a}.cell-time[data-v-1a09fc9a]{font-size:14px;font-weight:500;color:#334155;white-space:nowrap}.empty-row[data-v-1a09fc9a]{text-align:center;color:#94a3b8;padding:60px 0;font-size:15px}.photo-thumb[data-v-1a09fc9a]{display:inline-block;width:120px;height:90px;border-radius:8px;overflow:hidden;cursor:pointer;border:1px solid #e2e8f0;background:#f8fafc;transition:box-shadow .15s}.photo-thumb[data-v-1a09fc9a]:hover{box-shadow:0 4px 12px rgba(0,0,0,.15)}.photo-thumb img[data-v-1a09fc9a]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.no-photo[data-v-1a09fc9a]{color:#cbd5e1;font-size:15px}.badge[data-v-1a09fc9a]{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;font-size:20px;font-weight:700}.badge.ok[data-v-1a09fc9a]{background:#dcfce7;color:#16a34a}.badge.fail[data-v-1a09fc9a]{background:#fef2f2;color:#dc2626}.tag[data-v-1a09fc9a]{display:inline-block;padding:4px 10px;border-radius:6px;font-size:13px;font-weight:600;white-space:nowrap}.tag-camera[data-v-1a09fc9a]{background:#e0f2fe;color:#0369a1}.tag-manual[data-v-1a09fc9a]{background:#f1f5f9;color:#475569}.photo-overlay[data-v-1a09fc9a]{position:fixed;inset:0;background:rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;z-index:1000;cursor:pointer}.photo-overlay img[data-v-1a09fc9a]{max-width:90vw;max-height:90vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);cursor:default}