market/src/components/molecules/Form/FieldTemplate.module.css

144 lines
3.0 KiB
CSS

.row {
margin-bottom: var(--spacer);
}
.input,
.row input:not([type='radio']):not([type='checkbox']),
.row select,
.row textarea {
font-size: var(--font-size-base);
font-family: var(--font-family-base);
font-weight: var(--font-weight-bold);
/* font-weight: var(--font-weight-bold); */
color: var(--color-dark);
border: 1px solid var(--color-grey-light);
box-shadow: none;
width: 100%;
background: var(--color-white);
padding: calc(var(--spacer) / 3);
margin: 0;
border-radius: var(--border-radius);
transition: 0.2s ease-out;
min-height: 43px;
appearance: none;
}
.input:focus,
.row input:focus:not([type='radio']):not([type='checkbox']),
.row select:focus,
.row textarea:focus {
box-shadow: none;
outline: 0;
border-color: var(--color-secondary);
}
.input::placeholder,
.row input::placeholder,
.row textarea::placeholder {
font-family: var(--font-family-base);
font-size: var(--font-size-base);
color: var(--color-secondary);
font-weight: var(--font-weight-base);
opacity: 0.7;
}
.input[readonly],
.input[disabled],
.row input[readonly],
.row input[disabled] {
background-color: var(--color-grey-light);
cursor: not-allowed;
pointer-events: none;
}
.row textarea {
min-height: 5rem;
display: block;
}
.row select {
padding-right: 3rem;
/* custom arrow */
background-image: linear-gradient(
45deg,
transparent 50%,
var(--color-secondary) 50%
),
linear-gradient(135deg, var(--color-secondary) 50%, transparent 50%),
linear-gradient(
to right,
var(--color-grey-light) 0px,
var(--color-white) 1.5px
);
background-position: calc(100% - 18px) calc(1rem + 5px),
calc(100% - 13px) calc(1rem + 5px), 100% 0;
background-size: 5px 5px, 5px 5px, 2.5rem 4rem;
background-repeat: no-repeat;
}
.checkbox label,
.radio label,
.row input[type='radio'] + span,
.row input[type='checkbox'] + span {
display: inline-block;
font-weight: var(--font-weight-base);
margin-bottom: calc(var(--spacer) / 4);
}
.row :global(.field-radio-group) {
border: 1px solid var(--color-grey-light);
padding: calc(var(--spacer) / 3);
border-radius: var(--border-radius);
}
.labelHolder {
display: flex;
justify-content: space-between;
}
.label {
display: block;
font-size: var(--font-size-small);
font-weight: var(--font-weight-bold);
margin-bottom: calc(var(--spacer) / 8);
color: var(--color-secondary);
}
.req:after {
content: '*';
padding-left: calc(var(--spacer) / 8);
color: var(--color-primary);
}
.help {
font-size: var(--font-size-small);
color: var(--color-secondary);
margin-top: 0.25rem;
font-style: italic;
}
.errors {
padding-top: calc(var(--spacer) / 8);
font-size: var(--font-size-mini);
color: var(--color-primary);
text-transform: capitalize;
}
.error input:not([type='radio']):not([type='checkbox']),
.error select,
.error textarea {
border-color: var(--color-primary);
}
/* Size Modifiers */
.large,
.large::placeholder,
.large + button {
font-size: var(--font-size-large);
}
.large {
padding: calc(var(--spacer) / 2);
}