.types-browser-panel { display: flex; flex-direction: column; height: 100%; min-width: 0; overflow: hidden; } .types-browser-state { padding: var(--space-md, 12px); color: var(--text-muted); text-align: center; } .types-browser-type-list { flex: 1; min-height: 0; margin: 0; padding: 0; list-style: none; overflow-y: auto; } .types-browser-type-group + .types-browser-type-group { border-top: 1px solid var(--border-color); } .types-browser-type-header { display: flex; align-items: stretch; } .types-browser-disclosure-button { display: grid; flex: 0 0 44px; place-items: center; min-height: 44px; padding: 0 12px; color: var(--text-muted); background: transparent; border: 0; cursor: pointer; } .types-browser-type { display: grid; flex: 1 1 auto; grid-template-columns: minmax(0, 1fr); align-items: center; gap: 4px 8px; min-width: 0; min-height: 44px; padding: 4px 12px; color: inherit; font: inherit; text-align: left; background: transparent; border: 0; cursor: pointer; } .types-browser-type-header:has(.types-browser-disclosure-button:hover), .types-browser-type-header:has(.types-browser-type:hover), .types-browser-type-header:has(.types-browser-disclosure-button:focus-visible), .types-browser-type-header:has(.types-browser-type:focus-visible) { background: var(--bg-hover); } .types-browser-disclosure-button:focus-visible, .types-browser-type:focus-visible, .types-browser-row:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; } .types-browser-disclosure { width: 7px; height: 7px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; color: var(--text-muted); transform: rotate(-45deg); transition: transform 160ms cubic-bezier(0.22, 1, 0.36, 1); } .types-browser-disclosure[data-expanded] { transform: rotate(45deg) translate(-1px, -1px); } .types-browser-source, .types-browser-path { min-width: 0; overflow: hidden; text-overflow: ellipsis; } .types-browser-marker { justify-self: start; flex-wrap: wrap; white-space: normal; overflow-wrap: anywhere; } .types-browser-path { color: var(--text-secondary); font-size: 0.78em; white-space: nowrap; } .types-browser-chip-detail { font-size: 0.9em; } .types-browser-results { background: transparent; } .types-browser-row-list { margin: 0; padding: 0; list-style: none; } .types-browser-row-list li { border-top: 1px solid var(--border-color); } .types-browser-limit { padding: 8px 12px; color: var(--text-muted); font-size: 0.78rem; } .types-browser-row { display: flex; flex-direction: column; gap: 4px; width: 100%; box-sizing: border-box; min-height: 44px; padding: 8px 12px 8px 44px; color: inherit; font: inherit; text-align: left; background: transparent; border: 0; overflow: hidden; cursor: pointer; } .types-browser-row:hover, .types-browser-row:focus-visible { background: var(--bg-hover); } .types-browser-source { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; font-size: 0.9rem; line-height: 1.35; } .types-browser-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; width: 100%; } .types-browser-field { display: grid; grid-template-columns: minmax(58px, 0.7fr) minmax(0, 1.3fr); gap: 8px; min-width: 0; overflow: hidden; color: var(--text-secondary); font-size: 0.75rem; line-height: 1.35; } .types-browser-field-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; min-width: 0; overflow: hidden; color: var(--text-muted); overflow-wrap: anywhere; } .types-browser-field-value { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; min-width: 0; overflow: hidden; color: var(--text-secondary); overflow-wrap: anywhere; } .types-browser-field[data-state='conflicted'] .types-browser-field-value { color: var(--warning); } .types-browser-field[data-state='unsupported'] .types-browser-field-value { color: var(--text-muted); font-style: italic; } @media (prefers-reduced-motion: reduce) { .types-browser-disclosure { transition: none; } }