.model-settings-dialog { width: min(620px, calc(100vw - 32px)); }
.model-intro { margin-bottom: 22px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.model-field { margin-bottom: 20px; }
.model-field .label { margin-top: 0; }
.model-help { margin: 6px 0 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.model-destination { padding: 11px 13px; margin: -6px 0 20px; border: 1px solid #d7e1d1; border-radius: 5px; background: #f0f5ec; color: var(--forest-dark); font: 11px/1.6 ui-monospace, SFMono-Regular, Menlo, monospace; overflow-wrap: anywhere; }
.model-label-line { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.model-memory-label { display: inline-flex; align-items: center; gap: 5px; margin-bottom: 7px; color: var(--forest); font-size: 10px; }
.model-memory-label .icon { width: 12px; height: 12px; flex-basis: 12px; }
.model-key-row { display: flex; align-items: stretch; gap: 8px; }
.model-key-row .input { min-width: 0; flex: 1; }
.model-key-row .button { min-width: 58px; }
.model-key-cleared { padding: 10px 12px; color: #765a2e; background: #fbf4e7; border: 1px solid #eadcc2; border-radius: 5px; font-size: 11px; line-height: 1.65; }
.model-test-line { display: flex; align-items: center; gap: 14px; padding-top: 3px; }
.model-test-line .button { flex: 0 0 auto; }
.model-test-line .model-help { margin: 0; }
.model-test-status { margin-top: 14px; padding: 12px 14px; color: var(--body); border: 1px solid var(--line); border-radius: 5px; background: #f8f9f5; font-size: 12px; line-height: 1.65; overflow-wrap: anywhere; }
.model-test-status[data-kind="error"] { color: #8a3e32; border-color: #e9c9c1; background: #fcf1ed; }
.model-test-status[data-kind="success"] { color: var(--forest-dark); border-color: #c9d8bf; background: #f0f6eb; }
.model-privacy { margin-top: 22px; padding-top: 15px; border-top: 1px solid var(--line-soft); font-size: 11px; color: var(--muted); line-height: 1.75; }
.model-privacy summary { color: var(--ink); cursor: pointer; font-weight: 550; }
.model-privacy p { margin: 10px 0 0; }
.model-warning { margin-bottom: 15px; }
.model-settings-dialog .modal-footer { flex-wrap: wrap; }
.model-settings-dialog .model-clear { margin-right: auto; }
@media (max-width: 520px) {
  .model-settings-dialog { width: calc(100vw - 24px); }
  .model-test-line { align-items: flex-start; flex-direction: column; gap: 8px; }
  .model-settings-dialog .modal-footer { gap: 6px; }
  .model-settings-dialog .modal-footer .button { font-size: 11px; padding-left: 10px; padding-right: 10px; }
}
