funkwhale/front/src/components/ui/input.scss

132 lines
2.1 KiB
SCSS

.funkwhale.input {
position: relative;
flex-grow: 1;
--padding-v: 9px;
--padding: 16px;
> input {
border: none !important;
width: 100%;
padding: 10px 16px;
font-size: 14px;
font-family: $font-main;
line-height: 28px;
border-radius: var(--fw-border-radius);
cursor: text;
@include light-theme {
&.raised {
background-color: #ffffff;
border-color: var(--border-color);
}
}
&:hover {
box-shadow: inset 0 0 0 4px var(--border-color);
}
&:focus {
box-shadow: inset 0 0 0 4px var(--focus-ring-color);
&:focus-visible {
outline: none;
}
}
&::placeholder {
color: var(--fw-placeholder-color);
}
}
&.has-icon > input {
padding-left: 36px;
}
> .label {
margin-top: -18px;
padding-bottom: 8px;
font-size:14px;
font-weight:600;
}
> .prefix,
> .input-right {
align-items: center;
font-size: 14px;
color: var(--fw-placeholder-color);
}
> .prefix {
position: absolute;
left: 0;
bottom: 0;
height: 48px;
min-width: 48px;
display: flex;
> i {
font-size:18px;
margin: auto;
}
}
&:has(>.prefix)>input {
padding-left: 40px;
}
> .input-right {
position: absolute;
right: 0px;
bottom: 0px;
height: 48px;
min-width: 48px;
display: flex;
> i {
font-size:18px;
}
> .span-right {
padding: calc(var(--padding-v) - 1px) var(--padding) calc(var(--padding-v) + 1px) var(--padding);
> .button {
margin-right: -16px;
margin-top: 2px;
border-bottom-left-radius: 0px;
border-top-left-radius: 0px;
}
}
}
> .search {
> i {
font-size:18px;
}
&.button {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
}
&:has(>.search)>input {
padding-right: 140px;
}
> .show-password {
justify-content:center;
}
&:has(>.show-password)>input {
padding-right: 40px;
}
>.reset {
min-width: auto;
margin: 4px;
// Make button fit snuggly into rounded border
border-radius: 4px;
}
}