/* 全局搜索浮层:查询框、分组结果、加载/错误/重试状态。 */ /* 导入方:app/components/GlobalSearch.vue。 */ .gs[data-v-bc4d898a] { margin-right: 4px; position: relative; } .gs-input[data-v-bc4d898a] { border: 1px solid var(--p-content-border-color, #e2e8f0); background: var(--p-content-background); width: 220px; height: 32px; color: var(--p-text-muted-color, #94a3b8); border-radius: var(--radius-md); align-items: center; gap: 6px; padding: 0 10px; display: flex; } .gs-input input[data-v-bc4d898a] { min-width: 0; color: var(--p-text-color); background: 0 0; border: 0; outline: none; flex: 1; font-size: 0.9375rem; } .gs-input[data-v-bc4d898a]:focus-within { border-color: var(--p-primary-color); outline: 2px solid var(--p-primary-color); outline-offset: 2px; } .gs-panel[data-v-bc4d898a] { background: var(--p-content-background); border: 1px solid var(--p-content-border-color, #e2e8f0); z-index: 200; border-radius: var(--radius-lg); width: min(320px, 100vw - 32px); max-height: 380px; padding: 6px; position: absolute; top: 38px; right: 0; overflow-y: auto; box-shadow: 0 10px 30px #0f172a1f; } .gs-state[data-v-bc4d898a] { color: var(--p-text-muted-color, #94a3b8); justify-content: center; align-items: center; gap: 6px; padding: 18px 0; font-size: 0.9375rem; display: flex; } .gs-error[data-v-bc4d898a] { text-align: center; flex-direction: column; padding: 16px 10px; } .gs-retry[data-v-bc4d898a] { color: var(--p-primary-color); cursor: pointer; background: 0 0; border: 0; padding: 6px; text-decoration: underline; } /* 键盘操作的可见焦点:不要只保留鼠标 hover 效果而移除此反馈。 */ .gs-item[data-v-bc4d898a]:focus-visible, .gs-retry[data-v-bc4d898a]:focus-visible { outline: 2px solid var(--p-primary-color); outline-offset: -2px; } .gs-group + .gs-group[data-v-bc4d898a] { border-top: 1px solid var(--p-content-border-color, #e2e8f0); margin-top: 4px; padding-top: 4px; } .gs-group-title[data-v-bc4d898a] { color: var(--p-text-muted-color, #94a3b8); padding: 6px 10px 4px; font-size: 0.875rem; } .gs-item[data-v-bc4d898a] { text-align: left; cursor: pointer; background: 0 0; border: 0; border-radius: var(--radius-md); flex-direction: column; gap: 2px; width: 100%; padding: 7px 10px; display: flex; } .gs-item[data-v-bc4d898a]:hover { background: var(--p-content-hover-background); } .gs-item-name[data-v-bc4d898a] { color: var(--p-text-color); font-size: 0.9375rem; } .gs-item-sub[data-v-bc4d898a] { color: var(--p-text-muted-color, #94a3b8); font-size: 0.875rem; }