@oslokommune/punkt-css
Version:
CSS-rammeverket til Punkt, et designsystem laget av Oslo Origo
179 lines (177 loc) • 5.56 kB
CSS
/* inputwrapper */
pkt-input-wrapper {
display: block;
}
@supports selector(:not(:has(*))) {
pkt-helptext:not(:has(.pkt-inputwrapper__has-helptext)):not(:has([slot=helptext]:not(:empty)),
:has(.pkt-inputwrapper__helptext-expandable .pkt-inputwrapper__helptext:not(:empty))),
.pkt-inputwrapper__helptext-container:not(.pkt-inputwrapper__has-helptext):not(:has([slot=helptext]:not(:empty)),
:has(.pkt-inputwrapper__helptext-expandable .pkt-inputwrapper__helptext:not(:empty))) {
display: none;
}
}
.pkt-inputwrapper__label {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 0.5rem;
color: var(--pkt-color-text-body-default);
}
.pkt-inputwrapper__label:empty {
display: none;
}
.pkt-inputwrapper__label, .pkt-inputwrapper__legend {
letter-spacing: -0.2px;
font-weight: 500;
font-size: 1.125rem;
line-height: 1.75rem;
}
.pkt-inputwrapper__helptext-container {
display: flex;
flex-direction: column;
gap: 0.25rem;
}
.pkt-inputwrapper__helptext {
width: min(100%, 31rem);
color: var(--pkt-color-text-body-default);
letter-spacing: -0.2px;
font-weight: 300;
font-size: 0.875rem;
line-height: 1.375rem;
}
.pkt-inputwrapper__helptext > .pkt-btn, .pkt-inputwrapper__helptext-expandable .pkt-btn {
padding: 0;
height: auto;
display: inline-flex;
text-align: left;
align-items: center;
letter-spacing: -0.2px;
font-weight: 300;
font-size: 0.875rem;
line-height: 1.375rem;
}
.pkt-inputwrapper__helptext > *:first-child {
margin-top: 0;
}
.pkt-inputwrapper__helptext > *:last-child {
margin-bottom: 0;
}
.pkt-inputwrapper__helptext-expandable-heading {
margin: 0;
letter-spacing: -0.2px;
font-weight: 500;
font-size: 1.125rem;
line-height: 1.75rem;
}
.pkt-inputwrapper__helptext-expandable-open {
display: block;
border-left: 2px solid var(--pkt-color-text-body-dark);
padding: 0.5rem 1rem;
margin-bottom: 0.25rem;
}
.pkt-inputwrapper__helptext-expandable-closed {
display: none;
}
.pkt-inputwrapper__fieldset {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 0.5rem;
border: none;
padding: 0;
margin: 0;
}
.pkt-inputwrapper__legend {
margin-bottom: 0.5rem;
}
.pkt-inputwrapper--disabled {
color: var(--pkt-color-text-action-disabled);
cursor: inherit;
}
.pkt-inputwrapper--disabled .pkt-tag {
background-color: var(--pkt-color-surface-default-gray);
}
.pkt-inputwrapper--disabled .pkt-alert {
background-color: var(--pkt-color-surface-default-gray);
border-color: var(--pkt-color-text-action-disabled);
color: var(--pkt-color-text-action-disabled);
}
.pkt-inputwrapper--disabled .pkt-alert .pkt-alert__icon {
--fg-color: var(--pkt-color-text-action-disabled);
}
.pkt-inputwrapper--disabled .pkt-alert,
.pkt-inputwrapper--disabled .pkt-inputwrapper__label,
.pkt-inputwrapper--disabled .pkt-inputwrapper__helptext,
.pkt-inputwrapper--disabled .pkt-inputwrapper__helptext-expandable .pkt-link {
color: var(--pkt-color-text-action-disabled);
}
.pkt-inputwrapper--inline {
display: inline-block;
vertical-align: middle;
margin-right: 8px;
}
.pkt-inputwrapper .pkt-alert {
width: min(100%, 31rem);
margin: 0 0 0.5rem 0;
}
.pkt-inputwrapper .pkt-alert--error {
margin: 0.5rem 0 0.5rem 0;
}
.pkt-inputwrapper .pkt-tag {
margin-left: 8px;
}
.pkt-inputwrapper--error .pkt-input,
.pkt-inputwrapper--error .pkt-input-prefix,
.pkt-inputwrapper--error .pkt-input-suffix,
.pkt-inputwrapper--error .pkt-input-icon {
border-color: var(--pkt-color-brand-red-1000);
}
.pkt-inputwrapper--error .pkt-input:hover,
.pkt-inputwrapper--error .pkt-input__container:hover,
.pkt-inputwrapper--error .pkt-input__container:hover .pkt-input,
.pkt-inputwrapper--error .pkt-input__container:hover .pkt-input-prefix,
.pkt-inputwrapper--error .pkt-input__container:hover .pkt-input-suffix,
.pkt-inputwrapper--error .pkt-input__container:hover .pkt-input-icon {
border-color: var(--pkt-color-brand-red-1000);
}
.pkt-inputwrapper--error .pkt-input:focus-within,
.pkt-inputwrapper--error .pkt-input__container:focus-within .pkt-input,
.pkt-inputwrapper--error .pkt-input__container:focus-within .pkt-input-prefix,
.pkt-inputwrapper--error .pkt-input__container:focus-within .pkt-input-suffix,
.pkt-inputwrapper--error .pkt-input__container:focus-within .pkt-input-icon {
border-color: var(--pkt-color-brand-red-1000);
}
.pkt-inputwrapper--disabled {
color: var(--pkt-color-text-action-disabled);
cursor: inherit;
}
.pkt-inputwrapper--disabled .pkt-input,
.pkt-inputwrapper--disabled .pkt-input-prefix,
.pkt-inputwrapper--disabled .pkt-input-suffix,
.pkt-inputwrapper--disabled .pkt-input-icon {
border-color: var(--pkt-color-border-states-disabled);
background-color: var(--pkt-color-surface-default-gray);
}
.pkt-inputwrapper--disabled .pkt-input__container:hover .pkt-input,
.pkt-inputwrapper--disabled .pkt-input__container:hover .pkt-input-prefix,
.pkt-inputwrapper--disabled .pkt-input__container:hover .pkt-input-suffix,
.pkt-inputwrapper--disabled .pkt-input__container:hover .pkt-input-icon {
border-color: var(--pkt-color-border-states-disabled);
}
.pkt-inputwrapper--disabled .pkt-input:hover {
border-color: var(--pkt-color-border-states-disabled);
box-shadow: none;
}
.pkt-inputwrapper--disabled .pkt-input:focus {
border-color: var(--pkt-color-border-states-disabled);
box-shadow: none;
outline: none;
}
.pkt-inputwrapper--disabled .pkt-input__container:active .pkt-input {
border-right: none;
box-shadow: none;
outline: none;
}
[data-mode=dark] .pkt-inputwrapper {
color: white;
}