/* 爱搜索内容发布系统 · 样式 */
:root{
  --blue:#1e5bb8; --blue-d:#15437f; --blue-l:#eaf1fb;
  --ink:#1c2b3a; --mut:#63748a; --line:#e2e9f2; --bg:#f4f7fb;
  --ok:#1d9e74; --warn:#d98213; --bad:#c23a3a; --radius:10px;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.7}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
.topbar{background:var(--blue-d);color:#fff;height:52px;display:flex;align-items:center;padding:0 22px;gap:20px}
.topbar .brand{font-size:16px;font-weight:bold;letter-spacing:.5px}
.topbar .chan{background:rgba(255,255,255,.15);border-radius:14px;padding:1px 10px;font-size:12px}
.topbar .right{margin-left:auto;font-size:13px;display:flex;gap:14px;align-items:center}
.topbar a{color:#fff;opacity:.9}
.navbar{background:#fff;border-bottom:1px solid var(--line);padding:0 22px;display:flex;gap:6px;overflow-x:auto}
.navbar a{padding:11px 14px;font-size:14px;color:var(--mut);border-bottom:2px solid transparent;white-space:nowrap}
.navbar a.on{color:var(--blue);border-bottom-color:var(--blue);font-weight:bold;text-decoration:none}
.wrap{max-width:1180px;margin:20px auto;padding:0 18px 60px}
.page-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.page-head h1{font-size:19px}
.page-head .sub{color:var(--mut);font-size:13px}
.page-head .actions{margin-left:auto;display:flex;gap:8px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;margin-bottom:16px}
.card h2{font-size:16px;margin-bottom:12px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px;text-align:center}
.kpi strong{display:block;font-size:24px;color:var(--blue);line-height:1.3}
.kpi span{font-size:12.5px;color:var(--mut)}
table{width:100%;border-collapse:collapse;font-size:13.5px}
th{background:#f2f6fc;text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);font-weight:normal;color:#42546a;white-space:nowrap}
td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
tr:hover td{background:#fafcff}
.btn{display:inline-block;background:var(--blue);color:#fff;border:none;border-radius:6px;padding:7px 16px;font-size:13.5px;cursor:pointer;line-height:1.4}
.btn:hover{background:var(--blue-d);text-decoration:none;color:#fff}
.btn.gray{background:#e8edf5;color:#41536b}
.btn.gray:hover{background:#dbe3ef;color:#33455c}
.btn.small{padding:4px 10px;font-size:12.5px}
.btn.danger{background:#fbeaea;color:var(--bad)}
.btn.danger:hover{background:#f6d9d9;color:var(--bad)}
.btn.ok{background:#e3f5ee;color:var(--ok)}
input[type=text],input[type=password],input[type=number],select,textarea{
  width:100%;border:1px solid #cfdae8;border-radius:6px;padding:8px 10px;font-size:13.5px;font-family:inherit;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue)}
label.f{display:block;font-size:13px;color:#41536b;margin:12px 0 5px}
.hint{font-size:12.5px;color:var(--mut);margin-top:4px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 18px}
@media(max-width:860px){.kpis{grid-template-columns:repeat(2,1fr)}.grid2,.grid3{grid-template-columns:1fr}}
.badge{display:inline-block;border-radius:4px;padding:1px 8px;font-size:12px}
.b-ok{background:#e3f5ee;color:var(--ok)}
.b-warn{background:#fdf1e0;color:var(--warn)}
.b-bad{background:#fbeaea;color:var(--bad)}
.b-gray{background:#eef1f6;color:#5b6b7c}
.b-blue{background:var(--blue-l);color:var(--blue)}
.msg{background:#e9f7f1;border:1px solid #bfe6d6;color:#14684f;border-radius:8px;padding:10px 14px;margin-bottom:14px;font-size:13.5px}
.msg.err{background:#fdeeee;border-color:#f0c2c2;color:#9c2b2b}
.tip{background:#fff8ec;border:1px solid #f2ddb0;color:#8a5a10;border-radius:8px;padding:10px 14px;margin-bottom:14px;font-size:13.5px}
.login-wrap{max-width:400px;margin:80px auto}
.login-wrap .logo{text-align:center;font-size:20px;font-weight:bold;color:var(--blue-d);margin-bottom:6px}
.login-wrap .slogan{text-align:center;color:var(--mut);font-size:13px;margin-bottom:22px}
.stat-line{color:var(--mut);font-size:12.5px}
.ellipsis{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:bottom}
.tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.tabs a{padding:5px 14px;border-radius:16px;background:#eef2f8;color:#4a5b72;font-size:13px}
.tabs a.on{background:var(--blue);color:#fff}
.faq-item{border-bottom:1px dashed var(--line);padding:10px 0}
.faq-item b{color:var(--blue-d)}
pre.log{background:#20293a;color:#cfe0f5;border-radius:8px;padding:14px;font-size:12.5px;overflow:auto;max-height:480px}
.footer{text-align:center;color:#94a3b8;font-size:12.5px;padding:26px 0}

/* ---- 大模型配置向导（系统设置页）---- */
.presets{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.preset{flex:1;min-width:150px;text-align:left;background:#f7f9fc;border:1px solid var(--line);border-radius:10px;padding:10px 14px;cursor:pointer;font-family:inherit;transition:.15s}
.preset b{display:block;color:#243447;font-size:13.8px;margin-bottom:2px}
.preset span{display:block;color:var(--mut);font-size:12.2px;line-height:1.5}
.preset:hover{border-color:#b9cbe4;background:#f2f6fc}
.preset.on{border-color:var(--blue);background:#eef4fd;box-shadow:0 0 0 1px var(--blue) inset}
.preset.on b{color:var(--blue-d)}
.mini-btn{margin-left:6px;background:#e8edf5;color:#41536b;border:none;border-radius:5px;padding:2px 9px;font-size:11.8px;cursor:pointer;font-family:inherit}
.mini-btn:hover{background:#dbe3ef;color:#33455c}
