/* rd-3.8.0「AI 模型与密钥」两个页签（ai-settings.html）。颜色、圆角、阴影全用 app.css 的变量，不另起一套。 */

.aim-tabs{grid-template-columns:repeat(2,1fr)}
.aim-tabs button{white-space:nowrap}

.ai-status-card{align-items:center}
.ai-status-card>div{flex:1}
.aim-under-status{margin:8px 4px 0}

/* ---------- 各功能用哪个模型 ---------- */
.aim-uses{display:grid;gap:9px}
.aim-use{display:grid;gap:8px;padding:13px 14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.88)}
.aim-use strong{display:block;font-size:13px}
.aim-use small{display:block;margin-top:2px;color:var(--muted);font-size:10px;line-height:1.5}
.aim-use select{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--line-strong);border-radius:13px;background:#fbfdfc;color:var(--text);font-size:13px}
.aim-use-now{color:var(--brand-strong);font-size:10px;font-style:normal;word-break:break-all}

/* ---------- 卡片（模型 / 声音） ---------- */
.aim-list{display:grid;gap:10px}
.aim-card{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:19px;background:rgba(255,255,255,.9);box-shadow:var(--shadow-sm)}
.aim-card.is-default{border-color:#9cc9ad;background:linear-gradient(180deg,#f3faf5,#fff)}
.aim-card.is-off{opacity:.62}
.aim-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.aim-card-head strong{font-size:14px;word-break:break-all;margin-right:2px}
.aim-card-sub{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--muted);font-size:10px}
.aim-card-sub code{padding:2px 7px;border-radius:7px;background:var(--surface-soft);color:var(--text-soft);font-size:11px;word-break:break-all}
.aim-card-meta{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--muted);font-size:10px}
.aim-card-error{margin:0;padding:9px 11px;border-radius:12px;background:#fbeeec;color:#96504a;font-size:10px;line-height:1.6;word-break:break-all}
.aim-card .ai-test-result{margin:0}
.aim-card-actions{display:flex;flex-wrap:wrap;gap:7px}
.aim-chip{display:inline-flex;align-items:center;min-height:20px;padding:0 8px;border-radius:999px;background:var(--surface-soft);color:var(--text-soft);font-size:9px;font-weight:750;white-space:nowrap}
.aim-chip.accent{background:var(--brand);color:#fff}
.aim-chip.warn{background:#fbf0de;color:#9a6a24}
.aim-state.ok{color:#3c8158}
.aim-state.bad{color:var(--danger)}
.aim-used{color:var(--brand-strong)}
.aim-muted{color:var(--muted);font-size:10px}
.aim-small-btn{min-height:34px;padding:0 12px;border-radius:12px;font-size:11px;display:inline-flex;align-items:center;gap:5px}
.aim-small-btn .icon{width:15px;height:15px}
.aim-small-btn.danger{color:var(--danger)}

/* ---------- 表单 ---------- */
.aim-form{padding:16px;border:1px solid var(--line);border-radius:23px;background:rgba(255,255,255,.9);box-shadow:var(--shadow-sm)}
.aim-field-label{color:#587065;font-size:11px;font-weight:800;margin-bottom:-6px}
.aim-form .provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.aim-form .provider-card{min-height:46px;padding:10px 12px}
.aim-form .provider-card strong{font-size:12px}
.aim-form textarea{min-height:46px;font-family:inherit}
.aim-form label output{margin-left:6px;color:var(--brand-strong);font-weight:850}
.aim-form input[type="range"]{padding:0;border:0;background:transparent;box-shadow:none;accent-color:var(--brand)}
.aim-form [hidden]{display:none!important}
.model-chip-row button.on{border-color:var(--brand-strong);background:var(--brand-soft);color:var(--brand-strong);font-weight:800}
.aim-remote{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.aim-remote small{flex:1 1 180px;color:var(--muted);font-size:10px;line-height:1.55}
.aim-remote-box{display:grid;gap:10px;padding:12px;border:1px dashed #cbded3;border-radius:16px;background:#fbfdfc}
.aim-remote-groups{display:grid;gap:10px;max-height:340px;overflow:auto;overscroll-behavior:contain}
.aim-remote-group b{display:block;margin-bottom:9px;font-size:11px;color:var(--text-soft)}
.aim-remote-group b i{font-style:normal;color:var(--muted);font-weight:600}
.aim-remote-group .model-chip-row{margin:0}
.aim-advanced{border-top:1px solid var(--line);padding-top:10px}
.aim-advanced summary{cursor:pointer;color:var(--text-soft);font-size:11px;font-weight:750}
.aim-advanced[open] summary{margin-bottom:12px}
.aim-advanced label{margin-bottom:10px}
.aim-check{display:flex!important;align-items:center;gap:8px;grid-template-columns:none}
.aim-check input{width:auto!important}
.aim-reuse select{font-size:13px}

@media (min-width:720px){
  .aim-form .provider-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .aim-use{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center}
  .aim-use-now{grid-column:2}
}
