/* ======================================== * Semantic Metadata Viewer Styles * ======================================== */ .semantic-viewer-toolbar { display: flex; align-items: center; justify-content: space-between; padding: 0.75rem 1rem; background: hsl(var(--muted) / 0.3); border-bottom: 1px solid hsl(var(--border)); } .semantic-table-container { max-height: 400px; overflow-y: auto; } .semantic-table { width: 100%; border-collapse: collapse; font-size: 0.8125rem; } .semantic-table th { position: sticky; top: 0; background: hsl(var(--card)); padding: 0.625rem 0.75rem; text-align: left; font-weight: 600; font-size: 0.75rem; color: hsl(var(--muted-foreground)); border-bottom: 1px solid hsl(var(--border)); white-space: nowrap; } .semantic-table td { padding: 0.625rem 0.75rem; border-bottom: 1px solid hsl(var(--border) / 0.5); vertical-align: top; } .semantic-row { cursor: pointer; transition: background 0.15s ease; } .semantic-row:hover { background: hsl(var(--hover)); } .semantic-cell-file { max-width: 200px; } .semantic-cell-lang { width: 80px; color: hsl(var(--muted-foreground)); } .semantic-cell-purpose { max-width: 180px; color: hsl(var(--foreground) / 0.8); } .semantic-cell-keywords { max-width: 160px; } .semantic-cell-tool { width: 70px; } .semantic-cell-date { width: 80px; color: hsl(var(--muted-foreground)); font-size: 0.75rem; } .semantic-keyword { display: inline-block; padding: 0.125rem 0.375rem; margin: 0.125rem; background: hsl(var(--primary) / 0.1); color: hsl(var(--primary)); border-radius: 0.25rem; font-size: 0.6875rem; } .semantic-keyword-more { display: inline-block; padding: 0.125rem 0.375rem; margin: 0.125rem; background: hsl(var(--muted)); color: hsl(var(--muted-foreground)); border-radius: 0.25rem; font-size: 0.6875rem; } .tool-badge { display: inline-block; padding: 0.125rem 0.5rem; border-radius: 0.25rem; font-size: 0.6875rem; font-weight: 500; text-transform: capitalize; } .tool-badge.tool-gemini { background: hsl(210 80% 55% / 0.15); color: hsl(210 80% 45%); } .tool-badge.tool-qwen { background: hsl(142 76% 36% / 0.15); color: hsl(142 76% 36%); } .tool-badge.tool-unknown { background: hsl(var(--muted)); color: hsl(var(--muted-foreground)); } .semantic-detail-row { background: hsl(var(--muted) / 0.2); } .semantic-detail-row.hidden { display: none; } .semantic-detail-content { padding: 1rem; } .semantic-detail-section { margin-bottom: 1rem; } .semantic-detail-section h4 { display: flex; align-items: center; gap: 0.5rem; font-size: 0.75rem; font-weight: 600; color: hsl(var(--muted-foreground)); margin-bottom: 0.5rem; text-transform: uppercase; letter-spacing: 0.05em; } .semantic-detail-section p { font-size: 0.8125rem; line-height: 1.5; color: hsl(var(--foreground)); } .semantic-keywords-full { display: flex; flex-wrap: wrap; gap: 0.25rem; } .semantic-detail-meta { display: flex; gap: 1rem; padding-top: 0.75rem; border-top: 1px solid hsl(var(--border) / 0.5); font-size: 0.75rem; color: hsl(var(--muted-foreground)); } .semantic-detail-meta span { display: flex; align-items: center; gap: 0.375rem; } .semantic-viewer-footer { display: flex; align-items: center; justify-content: space-between; padding: 0.75rem 1rem; background: hsl(var(--muted) / 0.3); border-top: 1px solid hsl(var(--border)); } .semantic-loading, .semantic-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 3rem; text-align: center; color: hsl(var(--muted-foreground)); } .semantic-loading { gap: 1rem; } /* ======================================== * CodexLens Test Search Results * ======================================== */ #searchResults { margin-top: 0.5rem; } #searchResults > div { display: flex; flex-direction: column; max-height: 200px; overflow: hidden; background: hsl(var(--muted) / 0.3); border-radius: 0.5rem; padding: 0.75rem; } #searchResults .flex.items-center { flex-shrink: 0; margin-bottom: 0.5rem; } #searchResultContent { flex: 1; min-height: 0; overflow-y: auto; overflow-x: hidden; font-size: 0.75rem; font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace; line-height: 1.5; white-space: pre-wrap; word-break: break-all; color: hsl(var(--foreground) / 0.9); background: hsl(var(--background) / 0.5); border-radius: 0.375rem; padding: 0.5rem; margin: 0; }