.rcai { max-width: 1000px; margin: 0 auto 40px; }
.rcai [hidden] { display: none !important; }
.rcai .rcai-note { color: #666; font-size: 14px; }
.rcai-messages { display: grid; gap: 12px; margin: 24px 0; }
.rcai-message { margin: 0; padding: 16px 20px; white-space: pre-wrap; overflow-wrap: anywhere; background: #f3f3f3; border-left: 3px solid #ee883d; }
.rcai-message[data-role="user"] { background: #fff8f1; border-left-color: #555; }
.rcai-form label { display: block; font-weight: 600; margin: 0 0 8px; }
.rcai-form textarea { box-sizing: border-box; width: 100%; min-height: 100px; font: inherit; padding: 12px; }
.rcai-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 14px 0; }
.rcai-status { min-height: 24px; white-space: pre-wrap; }
.rcai-selection { padding-top: 20px; border-top: 1px solid #ddd; }
.rcai-pair { font-weight: 600; white-space: pre-line; }
.rcai-products { display: grid; gap: 12px; margin: 20px 0; }
.rcai-product { display: flex; gap: 16px; padding: 16px; border: 1px solid #ddd; }
.rcai-product-image { flex: 0 0 120px; }
.rcai-product-image img { display: block; width: 120px; height: 120px; object-fit: contain; }
.rcai-product-body { min-width: 0; overflow-wrap: anywhere; }
.rcai-product p { margin: 6px 0 0; }
.rcai-drawing { overflow: auto; background: #fafafa; border: 1px solid #ddd; margin: 16px 0; }
.rcai-drawing svg { display: block; width: 100%; min-width: 480px; height: auto; }
.rcai-open { display: inline-block; margin: 12px 0; }
.rcai-candidates { display: grid; gap: 24px; }
.rcai-candidate { border: 1px solid #ddd; padding: 20px; }
.rcai-candidate h4 { margin: 0 0 16px; font-size: 21px; }
.rcai-assumptions { margin: 8px 0 16px; padding-left: 20px; }
.rcai-adapter-details { margin: 16px 0; }
.rcai-adapter-details summary { cursor: pointer; }
.rcai-custom { padding-top: 16px; border-top: 1px solid #ddd; }
.rcai-confirm { display: block; margin: 12px 0; }
.rcai-confirm input { margin-right: 6px; }
.rcai-draft { margin-top: 24px; border-top: 2px solid #ee883d; padding-top: 12px; }
@media (max-width: 600px) { .rcai-actions > button, .rcai-actions > a { width: 100%; box-sizing: border-box; text-align: center; } }
@media (max-width: 420px) { .rcai-product-image { flex-basis: 80px; } .rcai-product-image img { width: 80px; height: 80px; } }

.rcai-sources{margin:12px 0;padding-left:22px}.rcai-sources li{margin:10px 0}.rcai-sources small,.rcai-sources q{display:block;font-size:13px;margin-top:4px}.rcai-research-note{padding:12px;border-left:3px solid #ef8839;background:#fff7ef}

.rcad .rcai{margin:18px 0 28px}.rcai-show-option,.rcai-edit-option{margin:6px 10px 0 0}.rcai-show-option[aria-pressed="true"]{border-color:#ef8839;background:#fff2e7}.rcai-back{margin:12px 0}.rcai-transfer-note{padding:12px;border-left:3px solid #ef8839;background:#fff7ef}.rcad .rcai .rcai-candidates{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.rcad .rcai h2{font-size:26px}.rcad[data-rcai-mode="assistant"] .rcai-back{display:none}

.rcai .rcai-fit-notice {
    margin: 16px 0 12px;
    padding: 12px 16px;
    border: 1px solid #f0cc8d;
    border-inline-start: 4px solid #b56716;
    border-radius: 4px;
    background-color: #fff4df;
    color: #402a13;
}
