@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Sans:wght@300;400;500&display=swap";:root{--bg: #f6f1e8;--bg-deep: #efe3d1;--ink: #1b1d1c;--ink-muted: #4d514f;--accent: #2f5e4e;--accent-soft: #d3e4dc;--panel: rgba(255, 255, 255, .72);--panel-border: rgba(27, 29, 28, .12);--shadow: 0 18px 50px rgba(20, 28, 25, .12)}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at top left,#ffe8c7 0%,var(--bg) 45%,#e7efe2 100%);min-height:100vh}.app{position:relative;padding:48px 6vw 64px;max-width:1200px;margin:0 auto;z-index:1;display:flex;flex-direction:column;gap:24px}.background{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 20%,rgba(47,94,78,.12),transparent 45%),radial-gradient(circle at 80% 10%,rgba(195,135,46,.12),transparent 40%),radial-gradient(circle at 70% 80%,rgba(113,149,154,.16),transparent 45%);z-index:0}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;align-items:center;animation:rise .6s ease-out both}.hero-title h1{font-family:Space Grotesk,Segoe UI,sans-serif;font-size:clamp(2.6rem,4vw,3.6rem);margin:8px 0 12px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;font-weight:600;color:var(--ink-muted);margin:0}.subtitle{font-size:1.05rem;color:var(--ink-muted);max-width:460px}.hero-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:18px;padding:20px;box-shadow:var(--shadow)}.hero-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tag{background:var(--accent-soft);color:var(--accent);font-size:.75rem;padding:6px 10px;border-radius:999px;font-weight:600}.hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.stat-label{margin:0;font-size:.75rem;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em}.stat-value{margin:6px 0 0;font-weight:600;font-size:1rem}.stat-value.status{color:var(--accent)}.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:20px;padding:20px 24px;box-shadow:var(--shadow);animation:rise .6s ease-out both}.status-bar{background:linear-gradient(120deg,#2f5e4e1f,#fffc);border:1px solid var(--panel-border);border-radius:20px;padding:18px 24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:16px;animation:rise .5s ease-out both}.status-bar__top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.status-bar__summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.status-chip{background:#1b1d1c1a;border-radius:999px;padding:6px 12px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.status-chip.extracting,.status-chip.running{background:#2f5e4e33;color:var(--accent)}.status-chip.awaiting_manual{background:#c9872e33;color:#9c6b1d}.status-chip.summarizing,.status-chip.classifying{background:#547a8133;color:#2f4c52}.status-chip.completed{background:#2f5e4e4d;color:var(--accent)}.status-chip.error{background:#c9453233;color:#9d3929}.status-detail{color:var(--ink-muted);font-size:.95rem}.status-bar__counts{display:flex;gap:10px;flex-wrap:wrap;font-size:.8rem;color:var(--ink-muted)}.status-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.status-step{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:14px;border:1px solid rgba(27,29,28,.08);background:#ffffffb3}.status-step.done{border-color:#2f5e4e47;background:#2f5e4e1f}.status-step.active{border-color:#547a8173;background:#547a811f}.status-step__label{margin:0;font-weight:600}.status-step__note{margin:4px 0 0;font-size:.8rem;color:var(--ink-muted)}.status-dot{width:10px;height:10px;border-radius:50%;background:#1b1d1c33;margin-top:6px;flex-shrink:0}.status-step.done .status-dot{background:var(--accent)}.status-step.active .status-dot{background:#4b6f73}.status-steps.is-error .status-step,.status-steps.is-error .status-dot{border-color:#c9453266;background:#c945321f}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.panel-header h2{margin:0 0 4px;font-family:Space Grotesk,Segoe UI,sans-serif}.panel-header p{margin:0;color:var(--ink-muted)}.panel-body{margin-top:18px;display:flex;gap:16px;flex-wrap:wrap;align-items:center}.field{display:flex;flex-direction:column;gap:6px}.field select,textarea{font-family:inherit}.file-input input{display:none}.file-input{background:var(--accent);color:#fff;padding:10px 16px;border-radius:999px;cursor:pointer;font-weight:600;box-shadow:0 10px 20px #2f5e4e3d}.btn{border:1px solid var(--accent);background:transparent;color:var(--accent);padding:10px 18px;border-radius:999px;font-weight:600;cursor:pointer}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn:disabled,.file-input.disabled{opacity:.6;cursor:not-allowed}.pill-group{display:flex;gap:8px;flex-wrap:wrap}.pill{background:#1b1d1c14;padding:6px 12px;border-radius:999px;font-size:.8rem}.table{width:100%;display:grid;gap:10px}.table-wrap{width:100%;display:flex;flex-direction:column;gap:10px}.preview-note{margin:0}.progress-summary{width:100%;display:flex;flex-direction:column;gap:16px}.progress-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.progress-card{background:#ffffffb8;border:1px solid rgba(27,29,28,.08);border-radius:14px;padding:12px 14px}.progress-label{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted)}.progress-value{margin:6px 0 0;font-size:1.2rem;font-weight:600}.progress-bar{position:relative;height:10px;border-radius:999px;background:#1b1d1c1a;overflow:hidden}.progress-bar__fill{height:100%;background:linear-gradient(90deg,#2f5e4ecc,#547a81b3);border-radius:999px;transition:width .4s ease}.progress-meta{display:flex;flex-direction:column;gap:4px}.progress-note{margin:0;color:var(--ink-muted);font-size:.9rem}.table-head,.table-row{display:grid;grid-template-columns:.5fr 2fr .7fr 1.6fr .8fr;gap:12px;align-items:start}.table-head{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-muted)}.table-row{padding:14px;border-radius:14px;border:1px solid rgba(27,29,28,.08);background:#ffffffb3}.status-pill{font-size:.75rem;font-weight:700;text-transform:uppercase;padding:4px 8px;border-radius:8px;display:inline-block;background:#f0f0f0}.status-pill.ok{background:#2f5e4e33;color:var(--accent)}.status-pill.failed{background:#c9453233;color:#9d3929}.status-pill.manual{background:#c9872e33;color:#9c6b1d}.summary-cell pre{margin:0;white-space:pre-wrap;font-size:.85rem}.log{white-space:pre-wrap;font-size:.75rem;color:var(--ink-muted)}.manual-list{display:grid;gap:16px}.manual-item{display:grid;gap:12px;grid-template-columns:minmax(180px,260px) 1fr;align-items:start}.manual-item textarea{min-height:120px;border-radius:12px;border:1px solid var(--panel-border);padding:12px;background:#fff}.manual-label{margin:0 0 6px;font-weight:600}.manual-id{margin:0 0 6px;color:var(--ink-muted)}.manual-url{margin:0;color:var(--ink-muted)}.manual-link{display:inline-block;margin:0 0 8px;color:var(--accent);text-decoration:none;word-break:break-all;overflow-wrap:anywhere;font-size:.85rem}.manual-link:hover{text-decoration:underline}.manual-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.btn.subtle{border-color:#1b1d1c33;color:var(--ink-muted);padding:6px 12px;font-size:.8rem}.mono{font-family:Space Grotesk,Segoe UI,sans-serif;font-size:.85rem}.muted{color:var(--ink-muted)}.error{color:#9d3929;font-weight:600}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 960px){.table-head,.table-row{grid-template-columns:1fr}.table-head{display:none}.manual-item{grid-template-columns:1fr}}
