Files
oauth/resources/scss/components/_field.scss
2026-07-27 17:20:02 +02:00

82 lines
1.6 KiB
SCSS

@use '../abstracts/variables' as *;
@use '../abstracts/mixins' as *;
.field {
display: flex;
flex-direction: column;
}
.field__label {
font-size: $font-sm;
font-weight: 500;
color: var(--color-text-primary);
margin-bottom: $space-1;
}
.field__hint {
display: block;
margin-top: $space-1;
font-size: $font-xs;
color: var(--color-text-muted);
}
.field__error {
margin-top: $space-1;
font-size: $font-sm;
color: var(--color-danger);
}
.field__input,
.field__select {
width: 100%;
border: 1px solid var(--color-border-strong);
background: var(--color-surface);
color: var(--color-text-primary);
border-radius: $radius-md;
padding: $space-2 $space-3;
font-size: $font-sm;
transition: border-color $transition-fast;
@include dark {
border-color: var(--color-border);
background: var(--color-surface-muted);
}
&::placeholder {
color: var(--color-text-muted);
}
&:focus {
outline: none;
border-color: var(--color-accent-strong);
box-shadow: 0 0 0 3px rgb(99 102 241 / 15%);
}
}
.field--sm {
.field__label {
font-size: $font-xs;
color: var(--color-text-secondary);
}
.field__input,
.field__select {
padding: $space-1 * 1.5 $space-2;
}
}
.field__checkbox-row {
display: flex;
align-items: center;
gap: $space-2;
font-size: $font-sm;
color: var(--color-text-secondary);
}
.field__checkbox {
width: 1rem;
height: 1rem;
border-radius: $radius-sm;
accent-color: var(--color-accent);
}