*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0f0f0f;--surface:#1a1a1a;--surface2:#242424;--border:#2e2e2e;--text:#e8e8e8;--text-muted:#888;--accent:#009f7f;--accent-hover:#00c49a;--accent-dim:#009f7f22;--danger:#e05252;--warning:#d4920a;--radius:8px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.5}.app{flex-direction:column;min-height:100vh;display:flex}.navbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:100;align-items:center;gap:24px;height:52px;padding:0 24px;display:flex;position:sticky;top:0}.navbar-brand{color:var(--accent);letter-spacing:-.3px;font-size:16px;font-weight:600}.navbar-links{gap:4px;display:flex}.nav-link{border-radius:var(--radius);color:var(--text-muted);padding:6px 14px;font-size:13px;text-decoration:none;transition:color .15s,background .15s}.nav-link:hover{color:var(--text);background:var(--surface2)}.nav-link.active{color:var(--accent);background:var(--accent-dim)}.main-content{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:24px}.page-title{margin-bottom:20px;font-size:20px;font-weight:600}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.field-group{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field{flex-direction:column;gap:4px;display:flex}.field.full{grid-column:1/-1}label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px;font-weight:500}input,textarea,select{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;font-family:var(--font);outline:none;padding:8px 10px;transition:border-color .15s}input:focus,textarea:focus,select:focus{border-color:var(--accent)}textarea{resize:vertical;min-height:80px}input.auto-filled{border-color:var(--accent);background:var(--accent-dim)}.btn{border-radius:var(--radius);cursor:pointer;border:none;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:opacity .15s,background .15s;display:inline-flex}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);color:#000}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){opacity:.85}.btn-sm{padding:5px 10px;font-size:12px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.toolbar-right{align-items:center;gap:10px;margin-left:auto;display:flex}.table-wrap{border-radius:var(--radius);border:1px solid var(--border);overflow-x:auto}table{border-collapse:collapse;width:100%}th{background:var(--surface2);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:11px}td{border-bottom:1px solid var(--border);color:var(--text);padding:10px 12px}tr:last-child td{border-bottom:none}tr:hover td{background:var(--surface2)}.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.badge{text-transform:capitalize;border-radius:20px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.badge-pending{color:#d4920a;background:#2a2008}.badge-validated{color:#009f7f;background:#0a2218}.badge-listed{color:#4a9eff;background:#0a1428}.pagination{justify-content:center;align-items:center;gap:8px;margin-top:16px;display:flex}.page-info{color:var(--text-muted);font-size:12px}.confidence-bar{background:var(--border);border-radius:2px;height:3px;margin-top:3px}.confidence-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .3s}.stats-row{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex:1;min-width:120px;padding:14px 16px}.stat-value{font-size:24px;font-weight:600;line-height:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-top:4px;font-size:11px}.dropzone{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;color:var(--text-muted);padding:40px;transition:border-color .15s,background .15s}.dropzone:hover,.dropzone.active{border-color:var(--accent);background:var(--accent-dim);color:var(--text)}.card-images{gap:12px;margin-bottom:16px;display:flex}.card-image{aspect-ratio:3/4;object-fit:contain;background:var(--surface2);border-radius:var(--radius);border:1px solid var(--border);flex:1;max-height:300px}input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0}.alert{border-radius:var(--radius);margin-bottom:12px;padding:12px 16px;font-size:13px}.alert-success{color:#00c49a;background:#0a2218;border:1px solid #009f7f44}.alert-error{color:#e05252;background:#200a0a;border:1px solid #e0525244}.alert-info{color:#4a9eff;background:#0a1428;border:1px solid #4a9eff44}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.split{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=900px){.split,.field-group{grid-template-columns:1fr}}
