.product-assistant { margin: 12px 0; padding: 16px; border: 1px solid var(--border, #344155); border-radius: 12px; background: var(--bg-card, #121c2c); color: var(--text, #eef2f7); }
.product-assistant[hidden], .product-assistant [hidden] { display: none !important; }
.product-assistant h2 { font-size: 1.12rem; margin: 0 0 6px; }
.product-assistant p { line-height: 1.5; overflow-wrap: anywhere; }
.pa-muted { color: var(--text-secondary, #b7c4d8); font-size: .88rem; }
.pa-form { display: grid; grid-template-columns: minmax(130px, 1fr) minmax(110px, .6fr) minmax(160px, 2fr) auto; gap: 10px; align-items: end; }
.pa-form label { display: grid; gap: 5px; font-size: .88rem; min-width: 0; }
.product-assistant input, .product-assistant select, .product-assistant button { min-height: 44px; font: inherit; border: 1px solid var(--border, #43516a); border-radius: 7px; padding: 8px 12px; color: inherit; background: var(--bg-input, #1b2940); max-width: 100%; }
.product-assistant input, .product-assistant select { width: 100%; box-sizing: border-box; }
.product-assistant button { cursor: pointer; white-space: normal; text-align: left; }
.product-assistant button:focus-visible, .product-assistant input:focus-visible, .product-assistant select:focus-visible { outline: 3px solid var(--accent, #7ebdff); outline-offset: 2px; }
.pa-status { min-height: 24px; margin: 12px 0; }
.pa-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; }
.pa-results { display: grid; gap: 8px; align-content: start; }
.pa-result { display: grid; gap: 4px; width: 100%; }
.pa-result strong { overflow-wrap: anywhere; }
.pa-detail { min-width: 0; padding: 12px; border: 1px solid var(--border, #344155); border-radius: 9px; }
.pa-detail h3 { margin-top: 12px; overflow-wrap: anywhere; }
.pa-detail dl { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px 12px; }
.pa-detail dd { margin: 0; overflow-wrap: anywhere; }
.pa-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.pa-related { display: grid; gap: 8px; }
@media (max-width: 800px) { .pa-form { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .pa-query { grid-column: 1 / -1; } .pa-layout { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 400px) { .product-assistant { padding: 10px; } .pa-form { grid-template-columns: minmax(0, 1fr); } .pa-detail dl { grid-template-columns: minmax(0, 1fr); } }
