@guardian/threads
Version:
70 lines (59 loc) • 1.34 kB
CSS
.editableText:hover:not([data-editing]) {
box-shadow: 0 0 0 2px var(--color-primary-light);
}
.editableText[data-mode='multiline'] {
margin: var(--sp-base);
}
.editableText textarea {
resize: none;
width: 100%;
min-height: 3em;
box-sizing: border-box;
background: transparent;
overflow: hidden;
display: inline-block;
}
.editableText input {
display: inline-block;
background: transparent;
}
.previewText {
display: inline-block;
white-space: pre-wrap;
font-size: var(--fs-input);
cursor: text;
margin: calc(var(--sp-small) + 1px);
}
.editableText[data-mode='multiline'] > .previewText {
min-height: 3em;
}
/* Date */
.editableText[data-invalid-date] {
text-decoration: underline;
text-decoration-color: red;
text-decoration-style: dashed;
}
:root {
--width-date-warning: 14px;
}
.editableText[data-mode='date'] {
padding-right: calc(calc(var(--sp-small) * 2) + var(--width-date-warning));
box-sizing: border-box;
position: relative;
display: inline-block;
}
.editableText[data-invalid-date]:after {
position: absolute;
top: 50%;
right: var(--sp-small);
transform: translateY(-50%);
content: '!';
background: var(--color-error);
color: white;
width: var(--width-date-warning);
height: var(--width-date-warning);
border-radius: var(--radius-default);
}
.placeholder {
color: rgba(0, 0, 0, 0.2);
}