.njm-advisor { box-sizing:border-box; width:min(900px,calc(100vw - 32px)); max-width:100%; max-height:calc(100dvh - 32px); padding:20px; border:1px solid #dedede; border-radius:14px; color:#242424; background:#fff; font:16px/1.5 system-ui,sans-serif; }
.njm-advisor::backdrop { background:rgb(0 0 0 / .35); }
.njm-advisor *, .njm-advisor *::before, .njm-advisor *::after { box-sizing:border-box; }
.njm-advisor header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.njm-advisor h2 { margin:0; font-size:22px; }
.njm-advisor button, .njm-advisor select { min-height:44px; font:inherit; padding:8px 12px; border:1px solid #ccc; border-radius:6px; background:#fff; color:inherit; cursor:pointer; }
.njm-advisor button:focus-visible,.njm-advisor textarea:focus-visible,.njm-advisor select:focus-visible,.njm-advisor a:focus-visible { outline:3px solid #c86416; outline-offset:2px; }
.njm-advisor button:disabled { opacity:.6; cursor:wait; }
.njm-advisor textarea { display:block; width:100%; max-width:100%; min-height:70px; padding:10px; font:inherit; border:1px solid #bbb; border-radius:6px; resize:vertical; }
.njm-advisor form { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.njm-advisor label,.njm-advisor textarea { flex-basis:100%; }
.njm-advisor__results { max-height:46dvh; overflow-y:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.njm-advisor__card { display:flex; gap:12px; min-width:0; padding:12px; border:1px solid #e5e5e5; border-radius:8px; }
.njm-advisor__card img { width:95px; height:95px; object-fit:contain; flex-shrink:0; }
.njm-advisor__card div { min-width:0; overflow-wrap:anywhere; }
.njm-advisor__card p { margin:6px 0; font-size:14px; }
.njm-advisor__results[aria-busy="true"] { opacity:.65; }
@media(max-width:600px) {
 .njm-advisor { width:100%; max-width:100%; height:100dvh; max-height:100dvh; margin:0; padding:14px; border-radius:0; }
 .njm-advisor__results { grid-template-columns:minmax(0,1fr); max-height:calc(100dvh - 360px); }
 .njm-advisor__card img { width:80px; height:80px; }
 .njm-advisor form button,.njm-advisor select { max-width:100%; }
}
