.docs-layout { display:grid; gap:22px; min-width:0; }
.docs-card { padding:26px; border:1px solid var(--line-strong); border-radius:var(--r-lg); background:var(--surface); box-shadow:var(--e1); min-width:0; }
.docs-overview { background:linear-gradient(115deg,var(--blue-soft),transparent 72%),var(--surface); }
.docs-eyebrow { display:block; margin-bottom:8px; color:var(--blue); font-size:10px; font-weight:700; letter-spacing:.12em; }
.docs-card-head { display:flex; align-items:center; flex-wrap:wrap; gap:12px; justify-content:space-between; margin-bottom:12px; }
.docs-card h2 { font-size:19px; margin:0; }
.docs-card h3 { margin:24px 0 12px; font-size:14px; }
.docs-card p { color:var(--ink-muted); font-size:13px; line-height:1.8; margin:0 0 16px; }
.docs-card code,.docs-card pre,.docs-card textarea { font-family:var(--font-mono); }
.docs-card code { overflow-wrap:anywhere; font-size:12px; }
.docs-server { display:grid; gap:8px; }
.docs-server-head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.docs-server-head a { font-size:12px; color:var(--blue); }
.docs-connect { display:grid; gap:10px; margin-top:4px; }
.docs-card .docs-connect .field { margin:0; }
.docs-connect .input-shell .btn { margin-right:-6px; flex:none; }
.docs-card .field { margin:12px 0; }
.docs-tools { display:grid; gap:12px; }
.docs-search-field { margin:0; max-width:560px; }
.docs-filters { display:flex; flex-wrap:wrap; gap:6px; }
.docs-filter { padding:7px 13px; border:1px solid var(--line); border-radius:24px; font-size:12px; color:var(--ink-muted); background:var(--surface); cursor:pointer; }
.docs-filter:hover { background:var(--hover-bg); }
.docs-filter.active { color:var(--blue); border-color:var(--blue); background:var(--blue-soft); }
#docs-operations { display:grid; gap:22px; min-width:0; }
.docs-group-count { font-size:12px; color:var(--ink-soft); }
.docs-endpoints { display:grid; gap:10px; }
.docs-endpoint { min-width:0; border:1px solid transparent; border-radius:var(--r-sm); background:var(--groove-bg); overflow:hidden; }
.docs-endpoint[open] { border-color:var(--line-strong); background:var(--surface); }
.docs-endpoint > summary { display:flex; align-items:center; gap:12px; padding:15px 16px; cursor:pointer; list-style:none; min-height:54px; }
.docs-endpoint > summary::-webkit-details-marker { display:none; }
.docs-endpoint > summary:hover { background:var(--hover-bg); }
.docs-endpoint > summary:focus-visible,.docs-filter:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
.docs-chevron { width:7px; height:7px; border-right:1.5px solid var(--ink-muted); border-bottom:1.5px solid var(--ink-muted); transform:rotate(-45deg); flex-shrink:0; margin-right:2px; }
.docs-endpoint[open] > summary .docs-chevron { transform:rotate(45deg); }
.docs-endpoint-name { margin-left:auto; color:var(--ink-muted); font-size:12px; text-align:right; }
.docs-method { font-family:var(--font-mono); font-size:10px; font-weight:700; line-height:22px; min-width:48px; text-align:center; color:var(--blue); border-radius:5px; background:var(--blue-soft); flex-shrink:0; }
.docs-method[data-method="DELETE"] { color:var(--red-text); background:var(--red-soft,var(--groove-bg)); }
.docs-method[data-method="POST"],.docs-method[data-method="PATCH"] { color:var(--leaf-text); background:var(--lime-soft); }
.docs-detail { border-top:1px solid var(--line); padding:22px; min-width:0; }
.docs-card .docs-summary { margin-bottom:12px; }
.docs-summary .tag { margin-right:10px; vertical-align:1px; }
.docs-help { color:var(--ink-muted); margin-top:14px; font-size:12px; }
.docs-help summary { cursor:pointer; padding:6px 0; color:var(--blue); }
.docs-help p { margin:10px 0 0; }
.docs-help pre,.docs-pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; line-height:1.65; background:var(--groove-bg); border-radius:var(--r-sm); padding:16px; max-height:480px; overflow:auto; }
.docs-card textarea { width:100%; min-height:160px; padding:12px; font-size:12px; border-radius:var(--r-xs); border:1px solid var(--line-strong); background:var(--input-bg); color:var(--ink); resize:vertical; }
.docs-params { display:grid; border:1px solid var(--line); border-radius:var(--r-sm); }
.docs-param { display:grid; grid-template-columns:minmax(140px,200px) minmax(0,1fr); gap:16px; align-items:start; padding:12px 14px; }
.docs-param + .docs-param { border-top:1px solid var(--line); }
.docs-param-name { display:grid; gap:3px; padding-top:8px; cursor:pointer; }
.docs-param-name > span { font-size:13px; font-weight:600; color:var(--ink); }
.docs-param-name em { font-style:normal; font-size:10px; font-weight:600; color:var(--red-text); margin-left:6px; }
.docs-param-name code { color:var(--ink-soft); font-size:11px; }
.docs-card .docs-param-input p { margin:6px 0 0; font-size:12px; line-height:1.6; color:var(--ink-soft); }
.docs-section-head { margin:24px 0 0; }
.docs-section-head h3 { margin:0; }
.docs-execute { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:20px; }
.docs-execute span { color:var(--ink-soft); font-size:12px; }
.docs-response { border-top:1px solid var(--line); margin-top:24px; padding-top:20px; }
#docs-error,.docs-card #docs-request-error { color:var(--red-text); }
#docs-error:empty { display:none; }
.openapi-view [hidden] { display:none!important; }
/* 展开时由脚本自行补偿滚动位置，关闭浏览器滚动锚定以免重复修正 */
.content:has(.openapi-view),.openapi-view,.openapi-view * { overflow-anchor:none; }
@media(max-width:700px) {
 .docs-card { padding:18px 14px; }
 .docs-endpoint > summary { gap:9px; padding:13px 10px; flex-wrap:wrap; }
 .docs-endpoint > summary code { flex:1; min-width:0; font-size:11px; }
 .docs-endpoint-name { width:100%; margin-left:28px; text-align:left; }
 .docs-detail { padding:16px 12px; }
 .docs-param { grid-template-columns:1fr; gap:8px; }
 .docs-param-name { display:flex; align-items:baseline; gap:8px; padding-top:0; }
}

.docs-extra > summary { cursor:pointer; padding:17px 8px; color:var(--ink-muted); font-size:14px; font-weight:600; }
.docs-extra > summary span { font-size:12px; font-weight:400; color:var(--ink-soft); margin-left:10px; }
.docs-extra > .docs-card { margin-top:16px; }
@media(max-width:700px) { .docs-extra > summary span { display:block; margin:8px 0 0 16px; } }
