.ai-panel { border:1px solid #334155; background:#111c30; padding:20px; border-radius:16px; color:#e2e8f0; font-size:13px; }
.ai-panel h2,.ai-panel h3 { font-weight:700; margin:0 0 12px; }
.ai-note { color:#94a3b8; font-size:12px; margin:8px 0; line-height:1.6; }
.ai-actions { display:flex; gap:8px; flex-wrap:wrap; margin:12px 0; }
.ai-btn { border:1px solid #475569; background:#25354d; color:#e2e8f0; border-radius:8px; padding:7px 12px; cursor:pointer; font-size:12px; }
.ai-btn:hover { background:#334b6b; }
.ai-btn:disabled { opacity:.5; cursor:wait; }
.ai-primary { background:#0369a1; border-color:#0284c7; }
.ai-danger { color:#fda4af; }
.ai-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ai-field { display:flex; flex-direction:column; gap:5px; font-size:12px; }
.ai-field input,.ai-field select,.ai-field textarea,.ai-select { width:100%; background:#0b1323; color:#e2e8f0; border:1px solid #475569; border-radius:8px; padding:8px; min-width:0; }
.ai-field textarea { min-height:75px; resize:vertical; }
.ai-wide { grid-column:1/-1; }
.ai-table-wrap { overflow:auto; margin:12px 0; }
.ai-table { width:100%; border-collapse:collapse; font-size:12px; }
.ai-table td,.ai-table th { padding:9px; border-bottom:1px solid #334155; text-align:left; vertical-align:top; }
.ai-table small { color:#94a3b8; display:block; margin-top:4px; }
.ai-dialog { position:fixed; inset:0; z-index:100; background:#000a; display:flex; align-items:center; justify-content:center; padding:20px; }
.ai-dialog[hidden] { display:none; }
.ai-dialog>.ai-panel { max-width:900px; width:100%; max-height:90vh; overflow:auto; }
.ai-status { white-space:pre-wrap; margin:10px 0; color:#7dd3fc; }
.ai-status[data-error=true] { color:#fda4af; }
.ai-caption-text { white-space:pre-wrap; max-width:500px; overflow-wrap:anywhere; }
@media(max-width:640px) { .ai-grid { grid-template-columns:1fr; } }
