Fix/BOOK-323 enter details scroll error * fix(BOOK-323): scroll to invalid element on submit on enter details * fix(BOOK-323): update error message design * fix(BOOK-323): clean up * fix(BOOK-323): scroll to fields in room in right order * fix(BOOK-323): add id to translations * fix(BOOK-323): remove undefined * fix(BOOK-323): fix submitting state * fix(BOOK-323): use ref in multiroom for scrolling to right element, add membershipNo * fix(BOOK-323): fix invalid border country * fix(BOOK-323): use error message component * fix(BOOK-323): fix invalid focused styling on mobile * fix(BOOK-323): remove redundant dependency in callback Approved-by: Erik Tiekstra
177 lines
3.2 KiB
CSS
177 lines
3.2 KiB
CSS
@value globals: "../../styles/globals.css";
|
|
@value inputContainerHeight, inputExpandedHeight from globals;
|
|
|
|
.select {
|
|
position: relative;
|
|
background-color: var(--Surface-UI-Fill-Default);
|
|
border: 1px solid var(--Border-Interactive-Default);
|
|
border-radius: var(--Corner-radius-md);
|
|
height: inputContainerHeight;
|
|
box-sizing: border-box;
|
|
|
|
&[data-required] .label::after {
|
|
content: ' *';
|
|
}
|
|
&[data-open] {
|
|
.chevron {
|
|
rotate: -90deg;
|
|
}
|
|
|
|
.selectedText {
|
|
min-height: inputExpandedHeight;
|
|
}
|
|
}
|
|
&[data-focused] {
|
|
outline-offset: -2px;
|
|
outline: 2px solid var(--Border-Interactive-Focus);
|
|
|
|
.button,
|
|
.input {
|
|
outline: none;
|
|
}
|
|
.input {
|
|
min-height: inputExpandedHeight;
|
|
}
|
|
.label {
|
|
color: var(--Text-Interactive-Focus);
|
|
}
|
|
}
|
|
&[data-disabled] {
|
|
border: none;
|
|
.inner {
|
|
background-color: var(--Surface-Primary-Disabled);
|
|
color: var(--Text-Interactive-Disabled);
|
|
}
|
|
.button,
|
|
.input,
|
|
.label,
|
|
.selectValue {
|
|
color: var(--Text-Interactive-Disabled);
|
|
}
|
|
}
|
|
&[data-invalid] {
|
|
border-color: var(--Border-Interactive-Error);
|
|
}
|
|
&[data-invalid][data-focused] {
|
|
outline: 2px solid var(--Border-Interactive-Error);
|
|
}
|
|
}
|
|
|
|
.chevron {
|
|
rotate: 90deg;
|
|
}
|
|
|
|
.inner {
|
|
display: flex;
|
|
align-items: center;
|
|
width: 100%;
|
|
height: 100%;
|
|
box-sizing: border-box;
|
|
border-radius: var(--Corner-radius-md);
|
|
|
|
&.button {
|
|
padding: 0 var(--Space-x15);
|
|
gap: var(--Space-x1);
|
|
}
|
|
|
|
.button {
|
|
padding: 0 var(--Space-x15) 0 var(--Space-x1);
|
|
height: 100%;
|
|
}
|
|
|
|
> label {
|
|
flex: 1;
|
|
height: 100%;
|
|
padding: 0 0 0 var(--Space-x15);
|
|
}
|
|
}
|
|
|
|
.button,
|
|
.input {
|
|
background: none;
|
|
border: 0;
|
|
}
|
|
|
|
.input {
|
|
height: 1px;
|
|
padding: 0;
|
|
width: 100%;
|
|
|
|
&[value]:not([value='']) {
|
|
min-height: inputExpandedHeight;
|
|
}
|
|
}
|
|
|
|
.input,
|
|
.selectedText {
|
|
min-height: 0;
|
|
transition: min-height 150ms ease;
|
|
}
|
|
|
|
.selectedText:not(:empty) {
|
|
min-height: inputExpandedHeight;
|
|
}
|
|
|
|
.displayText {
|
|
display: flex;
|
|
flex-direction: column;
|
|
flex: 1;
|
|
justify-content: center;
|
|
height: 100%;
|
|
position: relative;
|
|
|
|
&:has(.input) {
|
|
cursor: text;
|
|
}
|
|
}
|
|
|
|
.selectValue {
|
|
align-items: flex-start;
|
|
color: var(--Text-Default);
|
|
}
|
|
|
|
.label {
|
|
color: var(--Text-Interactive-Placeholder);
|
|
white-space: nowrap;
|
|
transition: font-size 150ms ease;
|
|
}
|
|
|
|
.popover {
|
|
background-color: var(--Surface-Primary-Default);
|
|
border-radius: var(--Corner-radius-md);
|
|
box-shadow: 0 0 14px 6px rgb(0 0 0 / 10%);
|
|
display: inline-flex;
|
|
flex-direction: column;
|
|
gap: var(--Space-x1);
|
|
overflow: auto;
|
|
padding: var(--Space-x2);
|
|
outline: none;
|
|
min-width: 280px;
|
|
scrollbar-color: var(--Icon-Interactive-Disabled);
|
|
scrollbar-width: thin;
|
|
}
|
|
|
|
.listBox {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--Space-x1);
|
|
outline: none;
|
|
}
|
|
|
|
.listBoxItem {
|
|
padding: var(--Space-x1) var(--Space-x1) var(--Space-x1) var(--Space-x15);
|
|
color: var(--Text-Default);
|
|
border-radius: var(--Corner-radius-md);
|
|
display: flex;
|
|
align-items: center;
|
|
gap: var(--Space-x1);
|
|
|
|
&[data-focused] {
|
|
outline: none;
|
|
}
|
|
&[data-focused],
|
|
&[data-hovered] {
|
|
background-color: var(--Surface-Primary-Hover);
|
|
}
|
|
}
|