:root{--background: #0a0a0b;--foreground: #f4f4f5;--primary: #6366f1;--primary-hover: #4f46e5;--secondary: #18181b;--accent: #10b981;--muted: #71717a;--border: #27272a;--radius: .75rem;--font-sans: "Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--foreground);font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased}.container{max-width:1000px;margin:0 auto;padding:2rem}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.title{font-size:2rem;font-weight:800;background:linear-gradient(to right,#6366f1,#a855f7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.card{background:var(--secondary);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:0 10px 15px -3px #0000001a}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed var(--border);border-radius:var(--radius);padding:3rem;text-align:center;transition:border-color .2s ease,background-color .2s ease;cursor:pointer;position:relative;outline:none;-webkit-user-select:none;user-select:none}.upload-zone:hover,.upload-zone:focus-within{border-color:var(--primary);background:#6366f10d}.btn{background:var(--primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:background .2s}.btn:hover{background:var(--primary-hover)}.btn-icon{display:flex;align-items:center;justify-content:center;padding:.5rem;border-radius:.5rem;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:#ef44441a;color:#ef4444;border-color:#ef444433}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.metric-card{background:var(--secondary);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.metric-card h3{font-size:1rem;margin-bottom:.5rem;color:var(--primary)}.metric-value{font-size:1.25rem;font-weight:700}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-processing{background:#3b82f620;color:#60a5fa}.status-completed{background:#10b98120;color:#34d399}.status-error{background:#ef444420;color:#f87171}.mesh-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background-color:var(--background);background-image:radial-gradient(at 0% 0%,hsla(253,16%,7%,1) 0,transparent 50%),radial-gradient(at 50% 0%,hsla(225,39%,30%,.15) 0,transparent 50%),radial-gradient(at 100% 0%,hsla(339,49%,30%,.15) 0,transparent 50%)}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:16px;padding:24px;width:90%;max-width:400px;box-shadow:0 20px 40px #0003;transform:translateY(0);animation:slideUp .3s cubic-bezier(.16,1,.3,1)}.modal-header h3{margin:0 0 12px;color:#1a1a1a;font-size:1.25rem;font-weight:600}.modal-body p{color:#666;line-height:1.5;margin:0 0 24px}.modal-footer{display:flex;justify-content:flex-end;gap:12px}.btn-cancel,.btn-confirm{padding:10px 20px;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;font-size:.9rem;display:flex;align-items:center;gap:8px}.btn-cancel{background:#f3f4f6;color:#4b5563}.btn-cancel:hover{background:#e5e7eb}.btn-confirm{background:#ef4444;color:#fff}.btn-confirm:hover{background:#dc2626;box-shadow:0 4px 12px #ef44444d}.key-hint{font-size:.7rem;padding:2px 4px;background:#0000001a;border-radius:4px;opacity:.7}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-color-scheme:dark){.modal-content{background:#1f2937;border:1px solid #374151}.modal-header h3{color:#f9fafb}.modal-body p{color:#9ca3af}.btn-cancel{background:#374151;color:#d1d5db}.btn-cancel:hover{background:#4b5563}.key-hint{background:#ffffff1a}}
