.batch-list{display:grid;gap:14px}.batch-card{display:block;color:var(--ink);text-decoration:none;border:1px solid var(--line);border-radius:16px;padding:20px;background:#fbfcfa;transition:transform .15s ease,border-color .15s ease}.batch-card:hover{transform:translateY(-2px);border-color:#aab7aa}.batch-card-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.batch-card h3{font-size:22px;margin:4px 0}.batch-card p{margin:0}.progress{height:8px;border-radius:999px;background:#e4e8e1;overflow:hidden;margin:17px 0 12px}.progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),#76a55e)}.progress.large{height:12px;margin:8px 0 22px}.batch-stats{display:flex;gap:22px;flex-wrap:wrap;color:var(--muted);font-size:12px}.batch-stats strong{color:var(--ink)}.batch-score{display:grid;text-align:right}.batch-score strong{font-size:38px;line-height:1}.batch-score small{color:var(--muted)}.metric-grid.compact{margin:0}.metric-grid.compact .metric{min-height:82px;padding:16px}.metric-grid.compact .metric strong{font-size:30px}.chat-panel{padding:0;overflow:hidden}.chat-panel>.panel-head{padding:25px 26px 18px;margin:0;border-bottom:1px solid var(--line)}.thread-badge{background:var(--green2);color:var(--green);border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800;text-transform:uppercase}.chat-thread{display:grid;gap:14px;padding:24px;max-height:620px;overflow:auto;background:#f6f7f3}.chat-empty{padding:35px;text-align:center;color:var(--muted)}.message{max-width:78%;border-radius:16px;padding:14px 16px;box-shadow:0 3px 12px rgba(30,45,33,.06)}.message-user{margin-left:auto;background:var(--ink);color:#fff}.message-assistant{margin-right:auto;background:#fff;border:1px solid var(--line)}.message-system{margin:auto;background:#e9eee8}.message-meta{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:11px}.message-meta span{opacity:.65}.message-body{white-space:pre-wrap;overflow-wrap:anywhere}.chat-compose{padding:20px 24px 24px;border-top:1px solid var(--line);background:#fff}.chat-compose textarea{min-height:105px}.compose-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:12px}.attach{font-size:12px;color:var(--muted);font-weight:600}.attach input{display:block;border:0;padding:6px 0 0;background:transparent;font-size:12px}.status-queued,.status-running{background:#e1eaf8;color:#315f9a}.status-failed{background:var(--redbg);color:var(--red)}
@media(max-width:780px){.batch-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.message{max-width:92%}.compose-actions{align-items:stretch;flex-direction:column}.compose-actions .button{width:100%}.chat-panel>.panel-head{align-items:flex-start;gap:12px;flex-direction:column}}
