.query-composer-tools { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:.85rem; flex-wrap:wrap; }
.query-composer-tools p { flex:1 1 230px; margin:0; color:#64748b; font-size:.9rem; line-height:1.5; }
.query-composer-tools button { display:flex; align-items:center; justify-content:center; gap:.5rem; flex-wrap:wrap; padding:.75rem 1rem; border:1px solid #bfdbfe; border-radius:12px; color:#1e40af; background:#eff6ff; }
.query-composer-tools button span { flex-basis:100%; font-size:.75rem; font-weight:500; }
.query-composer-status { color:#334155; font-size:.9rem; line-height:1.5; margin:.75rem 0; }
.query-composer-status:empty { display:none; }
.query-composer-panel { margin-top:1rem; padding:1.25rem; background:#f8fafc; border:1px solid #bfdbfe; border-radius:16px; }
.query-composer-panel[hidden] { display:none !important; }
.query-composer-panel h3 { margin:0 0 .5rem; font-size:1.12rem; font-weight:800; color:#1e3a8a; }
.query-composer-panel p, .query-composer-panel small { color:#475569; line-height:1.55; }
.query-composer-panel p { margin:0 0 1rem; font-size:.9rem; }
.query-composer-panel label { display:block; font-weight:700; margin-bottom:.5rem; color:#334155; }
.query-composer-panel textarea { width:100%; resize:vertical; min-height:130px; }
.query-composer-actions { display:flex; flex-wrap:wrap; gap:.6rem; margin:1rem 0; }
.query-composer-actions button { min-height:44px; padding:.7rem 1rem; border-radius:10px; }
.query-composer-panel button:focus-visible, .query-composer-tools button:focus-visible { outline:3px solid #3b82f6; outline-offset:3px; }
.query-composer-panel button:disabled, .query-composer-tools button:disabled { opacity:.6; cursor:wait; }
.dark-mode .query-composer-panel { background:#172033; border-color:#334155; }
.dark-mode .query-composer-panel h3 { color:#93c5fd; }
.dark-mode .query-composer-panel p, .dark-mode .query-composer-panel small, .dark-mode .query-composer-panel label, .dark-mode .query-composer-status, .dark-mode .query-composer-tools p { color:#cbd5e1; }
.dark-mode .query-composer-tools button { background:#1e293b; border-color:#334155; color:#bfdbfe; }
@media(max-width:640px) { .query-composer-tools button, .query-composer-actions button { width:100%; } .query-composer-panel { padding:1rem; } }
