docs/_sass/_search-bar.scss
Rama main · réplica de lectura del repositorio original.
@import 'breakpoints';
@import 'colors';
@import 'fonts';
.search-icon {
margin: auto 0px;
margin-left: auto;
display: none;
@media only screen and (max-width: $breakpoint-tablet) {
display: block;
}
}
.search-input-wrapper {
position: relative;
display: flex;
flex-direction: column;
justify-content: flex-end;
border: 1px solid var(--color-borders);
border-radius: 8px;
padding: 7px 12px;
flex: 1;
height: 52px;
min-height: 52px;
box-sizing: border-box;
cursor: text;
&:focus-within {
border-color: var(--color-button-success-background);
}
}
.search-label {
font-family: 'Expensify Neue', 'Segoe UI Emoji', 'Noto Color Emoji';
color: var(--color-text-supporting);
pointer-events: none;
font-size: 15px;
line-height: 20px;
transition: all 200ms ease-in-out;
position: absolute;
top: 50%;
left: 12px;
transform: translateY(-50%);
}
.search-input {
border: none;
outline: none;
background: transparent;
color: var(--color-text);
font-family: 'Expensify Neue', 'Segoe UI Emoji', 'Noto Color Emoji';
font-size: 15px;
line-height: 20px;
width: 100%;
padding: 0;
}
.search-input:focus ~ .search-label,
.search-input:valid ~ .search-label {
font-size: 13px;
line-height: 16px;
top: 7px;
transform: translateY(0);
}
.search-button {
background-color: var(--color-button-success-background);
border: none;
border-radius: 50%;
width: 40px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
flex-shrink: 0;
&:hover {
background-color: var(--color-button-success-background-hover);
}
.base-icon {
filter: brightness(0) invert(1);
}
}
.search-results {
display: flex;
flex-direction: column;
gap: 4px;
margin-top: 8px;
}
.search-result-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
padding: 12px 20px;
text-decoration: none;
cursor: pointer;
border-radius: 8px;
&:hover,
&:focus {
background-color: var(--color-highlightBG);
outline: none;
}
}
.search-result-content {
display: flex;
flex-direction: column;
gap: 4px;
flex: 1;
min-width: 0;
}
.search-result-title {
font-weight: 700;
font-size: 15px;
line-height: 20px;
color: var(--color-text);
}
.search-result-description {
font-weight: 400;
font-size: 13px;
line-height: 16px;
color: var(--color-text-supporting);
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.search-result-item > .base-icon {
flex-shrink: 0;
width: 20px;
height: 20px;
}
.lhn-search-form {
padding-bottom: 40px;
}
.lhn-search-input-wrapper {
height: 52px;
min-height: 52px;
background-color: var(--color-appBG);
}
.search-no-results,
.search-error {
padding: 0 20px;
color: var(--color-text-supporting);
font-size: 15px;
}
@keyframes skeleton-pulse {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}
.skeleton-search-results {
display: flex;
flex-direction: column;
gap: 4px;
}
.skeleton-item {
display: flex;
flex-direction: column;
gap: 4px;
padding: 12px 20px 12px 0;
}
.skeleton-title,
.skeleton-description {
border-radius: 4px;
background-color: var(--color-row-hover);
animation: skeleton-pulse 3s ease-in-out infinite;
}
.skeleton-title {
height: 15px;
width: 60%;
margin: 2.5px 0;
}
.skeleton-description {
height: 13px;
width: 90%;
margin: 1.5px 0;
}