Files
KVideo/app/styles/search-history.css

102 lines
2.4 KiB
CSS

/* Search History Dropdown */
.search-history-dropdown {
max-height: 400px;
overflow-y: auto;
background: var(--bg-color);
border-radius: var(--radius-2xl);
box-shadow: var(--shadow-md);
border: 1px solid var(--glass-border);
padding: 0.75rem;
opacity: 0;
transform: translateY(-10px) scale(0.95);
animation: search-dropdown-appear 0.2s ease-out forwards;
transform-origin: top center;
user-select: none;
-webkit-user-select: none;
will-change: transform, opacity;
}
.search-history-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0.5rem 0.75rem;
margin-bottom: 0.5rem;
}
.search-history-divider {
height: 1px;
width: 100%;
background: var(--glass-border);
margin: 0.5rem 0;
}
.search-history-list {
display: flex;
flex-direction: column;
gap: 0.25rem;
}
.search-history-item {
display: flex;
align-items: center;
justify-content: space-between;
gap: 0.75rem;
border-radius: var(--radius-2xl);
padding: 0.75rem 1rem;
cursor: pointer;
transition: background-color 0.2s ease;
background: transparent;
}
.search-history-item:hover {
background: rgba(0, 122, 255, 0.1);
background: color-mix(in srgb, var(--accent-color) 10%, transparent);
}
.search-history-item.highlighted {
background: rgba(0, 122, 255, 0.15);
background: color-mix(in srgb, var(--accent-color) 15%, transparent);
box-shadow: inset 0 0 0 1px rgba(0, 122, 255, 0.3);
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent-color) 30%, transparent);
}
.search-history-remove {
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
border-radius: var(--radius-full);
background: transparent;
border: none;
color: var(--text-color-secondary);
cursor: pointer;
flex-shrink: 0;
transition: all 0.2s ease;
z-index: 1;
}
.search-history-remove:hover {
background: rgba(128, 128, 128, 0.2);
background: color-mix(in srgb, var(--text-color-secondary) 20%, transparent);
color: var(--text-color);
transform: scale(1.1);
}
.search-history-remove:active {
transform: scale(0.95);
}
/* Animations */
@keyframes search-dropdown-appear {
from {
opacity: 0;
transform: translateY(-10px) scale(0.95);
}
to {
opacity: 1;
transform: translateY(0) scale(1);
}
}