/* Keyboard-first documentation controls. The native docs remain completely usable
   without JavaScript; these are progressively enhanced only. */
.docs-search{display:inline-flex;align-items:center;gap:9px;margin-right:2px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.5);font:500 12px var(--sans);color:var(--muted);cursor:pointer;transition:border-color .18s,background .18s,color .18s}.docs-search:hover{border-color:var(--accent);background:var(--accent-wash);color:var(--accent-deep)}.docs-search kbd{font:500 10px var(--mono);border:1px solid var(--line);border-radius:4px;padding:1px 4px;color:var(--muted);background:var(--bg-soft)}
.docs-progress{position:fixed;z-index:80;left:0;top:59px;height:2px;width:100%;pointer-events:none;background:transparent}.docs-progress span{display:block;width:0;height:100%;background:var(--accent);transition:width .08s linear}.docs-top{position:fixed;right:20px;bottom:20px;z-index:55;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--bg);color:var(--ink-soft);font:20px/1 var(--sans);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .2s,transform .2s,border-color .2s;box-shadow:0 8px 22px rgba(28,32,30,.08);cursor:pointer}.docs-top.visible{opacity:1;pointer-events:auto;transform:none}.docs-top:hover{border-color:var(--accent);color:var(--accent)}
.docs-palette{position:fixed;z-index:120;inset:0;display:grid;place-items:start center;padding-top:min(16vh,130px);background:rgba(24,32,28,.24);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .18s}.docs-palette.open{opacity:1;pointer-events:auto}.docs-palette-box{width:min(670px,calc(100vw - 30px));max-height:min(570px,calc(100vh - 40px));display:flex;flex-direction:column;overflow:hidden;background:var(--bg);border:1px solid rgba(28,32,30,.18);border-radius:14px;box-shadow:0 32px 80px rgba(16,25,20,.28);transform:translateY(-8px) scale(.985);transition:transform .2s var(--ease)}.open .docs-palette-box{transform:none}.docs-palette-form{display:flex;align-items:center;gap:10px;padding:15px 17px;border-bottom:1px solid var(--line-soft)}.docs-palette-icon{color:var(--muted);font:18px/1 var(--mono)}.docs-palette-input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font:500 16px var(--sans)}.docs-palette-input::placeholder{color:var(--muted)}.docs-palette-esc{font:500 10px var(--mono);border:1px solid var(--line);border-radius:5px;padding:3px 6px;color:var(--muted)}.docs-results{overflow:auto;padding:7px}.docs-result{width:100%;display:grid;grid-template-columns:82px 1fr;gap:11px;text-align:left;border:0;border-radius:9px;padding:10px 11px;background:transparent;color:var(--ink);cursor:pointer;font-family:var(--sans)}.docs-result:hover,.docs-result.active{background:var(--accent-wash)}.docs-result-type{font:500 10px var(--mono);color:var(--accent);letter-spacing:.05em;text-transform:uppercase;padding-top:3px}.docs-result-title{font-size:14px;font-weight:600;letter-spacing:-.01em}.docs-result-snippet{margin-top:2px;color:var(--muted);font-size:12.5px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.docs-empty{padding:34px 16px;text-align:center;color:var(--muted);font-size:13.5px}.docs-palette-foot{display:flex;gap:12px;padding:10px 16px;border-top:1px solid var(--line-soft);color:var(--muted);font:11px var(--mono)}.docs-palette-foot kbd{font:500 10px var(--mono);border:1px solid var(--line);border-radius:4px;padding:1px 4px;background:var(--bg-soft)}
@media(max-width:760px){.docs-search{width:34px;height:34px;padding:0;justify-content:center}.docs-search .docs-search-label,.docs-search kbd{display:none}.docs-palette{padding-top:72px}.docs-top{right:12px;bottom:12px}}
