.bot-picker-trigger { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px; text-align: left; border: 1px solid var(--line-strong); border-radius: 5px; background: var(--ink-raised); }
.bot-picker-trigger strong, .bot-picker-trigger small { display: block; }
.bot-picker-trigger small { color: var(--paper-muted); font-size: 11px; margin-top: 5px; line-height: 1.5; }
.bot-picker-change { color: var(--signal); font-size: 12px; white-space: nowrap; }
.bot-picker-trigger:hover { border-color: var(--signal); }
.bot-picker-dialog { width: min(620px, calc(100vw - 32px)); max-height: calc(100dvh - 40px); padding: 24px; color: var(--paper); background: var(--ink-raised); border: 1px solid var(--line-strong); border-radius: 12px; overflow: hidden; }
.bot-picker-dialog[open] { display: flex; flex-direction: column; gap: 12px; animation: picker-enter .16s ease-out; }
.bot-picker-dialog::backdrop { background: rgb(0 0 0 / .7); }
.bot-picker-header { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.bot-picker-header h2 { font: 600 23px var(--display); margin: 0; }
.bot-picker-close { min-height: 44px; padding: 8px 12px; background: transparent; border: 1px solid var(--line); border-radius: 4px; }
.bot-picker-dialog input[type=search], .bot-picker-dialog select { width: 100%; min-width: 0; min-height: 44px; padding: 10px 12px; color: var(--paper); background: var(--ink); border: 1px solid var(--line-strong); border-radius: 4px; font-size: 16px; }
.bot-picker-filters { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.bot-picker-availability { display: flex; align-items: center; gap: 9px; font-size: 13px; min-height: 32px; }
.bot-picker-availability input { width: 18px; height: 18px; accent-color: var(--signal); }
.bot-picker-count { color: var(--paper-muted); font: 12px var(--mono); margin: 0; }
.bot-picker-status { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 12px; }
.bot-picker-results { min-height: 80px; overflow-y: auto; overscroll-behavior: contain; border-top: 1px solid var(--line); }
.bot-picker-option { display: flex; flex-direction: column; gap: 4px; width: 100%; padding: 13px 10px; min-height: 80px; text-align: left; border: 0; border-bottom: 1px solid var(--line); background: transparent; transition: background .12s; }
.bot-picker-option:hover, .bot-picker-option[aria-pressed=true] { background: var(--signal-soft); }
.bot-picker-option[aria-pressed=true] { box-shadow: inset 3px 0 var(--signal); }
.bot-picker-option strong { font-size: 15px; }
.bot-picker-option span { font-size: 12px; color: var(--paper-muted); }
.bot-picker-option small { font-size: 11px; color: var(--paper-muted); }
.bot-picker-empty { padding: 20px 8px; }
.bot-picker-footnote { margin: 0; font-size: 11px; line-height: 1.5; color: var(--paper-muted); }
.calibration-suggest { width: 100%; min-height: 44px; margin-bottom: 12px; border: 1px solid var(--line-strong); background: transparent; border-radius: 4px; }
@keyframes picker-enter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 760px) {
    .bot-picker-dialog { width: 100%; max-width: none; max-height: calc(100dvh - 12px); margin: auto 0 0; padding: 16px 16px max(16px, env(safe-area-inset-bottom)); border-radius: 16px 16px 0 0; }
    .bot-picker-header h2 { font-size: 21px; }
}
@media (prefers-reduced-motion: reduce) { .bot-picker-dialog[open] { animation: none; } .bot-picker-option { transition: none; } }
@media (min-width: 600px) and (max-height: 500px) {
    .bot-picker-dialog[open] { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto auto minmax(60px, 1fr) auto; gap: 8px 12px; height: calc(100dvh - 24px); max-height: none; padding: 12px 16px; }
    .bot-picker-header, .bot-picker-status, .bot-picker-results, .bot-picker-footnote { grid-column: 1 / -1; }
    .bot-picker-results { min-height: 0; }
}
@media (max-width: 599px) and (max-height: 480px) {
    .bot-picker-dialog[open] { display: block; overflow-y: auto; }
    .bot-picker-dialog > * + * { margin-top: 10px; }
    .bot-picker-results { max-height: 180px; }
}
