:root{--bg: #0f0f0f;--surface: #1a1a1a;--border: #2a2a2a;--text: #e0e0e0;--text-dim: #888;--accent: #4f9cf7;--accent-hover: #6db3ff;--danger: #e74c3c;--success: #2ecc71;--warning: #f39c12;--radius: 8px;--font: "SF Mono", "Cascadia Code", "Fira Code", monospace}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}button{font-family:var(--font);cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:8px 16px;border-radius:var(--radius);font-size:13px;transition:background .15s}button:hover{background:var(--border)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:var(--accent-hover)}button.danger{border-color:var(--danger);color:var(--danger)}input,textarea,select{font-family:var(--font);background:var(--bg);border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:var(--radius);font-size:13px;width:100%;resize:vertical}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent)}.app{max-width:1200px;margin:0 auto;padding:20px}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.header h1{font-size:20px;font-weight:600}.tabs{display:flex;gap:4px}.tabs button{border:none;background:none;color:var(--text-dim);padding:8px 16px;border-radius:var(--radius)}.tabs button.active{background:var(--surface);color:var(--accent)}.explorer{display:grid;gap:20px}.prompt-area{display:grid;gap:12px}.prompt-row{display:flex;gap:8px;align-items:end}.prompt-row textarea{flex:1;min-height:80px}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.result-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;position:relative}.result-card img{width:100%;aspect-ratio:1;object-fit:contain;background:repeating-conic-gradient(#222,#222 25%,#1a1a1a 0%,#1a1a1a 50%) 50% / 16px 16px}.result-card .meta{padding:8px;font-size:12px;color:var(--text-dim);display:flex;justify-content:space-between;align-items:center}.result-card .actions{display:flex;gap:4px}.result-card .actions button{padding:4px 8px;font-size:11px}.batch-editor textarea{min-height:400px;font-family:var(--font);font-size:12px;line-height:1.6}.batch-controls{display:flex;gap:8px;margin-top:12px;align-items:center}.batch-progress{margin-top:16px;font-size:13px;color:var(--text-dim)}.review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.review-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:border-color .15s}.review-card:hover{border-color:var(--accent)}.review-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.review-card img{width:100%;aspect-ratio:1;object-fit:contain;background:repeating-conic-gradient(#222,#222 25%,#1a1a1a 0%,#1a1a1a 50%) 50% / 16px 16px}.review-card .name{padding:6px 8px;font-size:11px;text-align:center;color:var(--text-dim)}.status-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.status-badge.running{background:var(--warning);color:#000}.status-badge.completed{background:var(--success);color:#000}.status-badge.failed{background:var(--danger);color:#fff}.status-badge.pending{background:var(--border);color:var(--text-dim)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-dim)}.field{display:grid;gap:4px}.field label{font-size:12px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px}.settings-row{display:flex;gap:12px;flex-wrap:wrap}.settings-row .field{flex:1;min-width:200px}.error-msg{color:var(--danger);font-size:12px;margin-top:4px}
