carbon-tokenization / frontend /src /styles /editor /_hero-editable.css
tfrere's picture
tfrere HF Staff
feat(editor): authors & affiliations manager modal
1f88239
/* ============================================================================ */
/* Hero editable elements */
/* */
/* Transparent inputs & click-to-edit affordances used inside FrontmatterHero. */
/* The !important cluster on .editable-text-input is intentional: it flattens */
/* every inherited form control style so the input looks identical to the */
/* surrounding heading text. Loaded AFTER _form.css so these wins the cascade. */
/* ============================================================================ */
.editable-text { cursor: text; }
.editable-text:not(.hero-title):not(.hero-desc) {
border-radius: 4px;
transition: background 0.15s;
padding: 2px 4px;
margin: -2px -4px;
}
.editable-text:not(.hero-title):not(.hero-desc):hover {
background: var(--bg-hover);
}
.editable-text-input,
.editable-text-input:focus,
.editable-text-input:hover,
.editable-text-input:active {
font: inherit !important;
color: inherit !important;
text-align: inherit !important;
letter-spacing: inherit !important;
line-height: inherit !important;
font-weight: inherit !important;
font-style: inherit !important;
width: 100% !important;
display: block !important;
box-sizing: border-box !important;
resize: none !important;
overflow: hidden !important;
white-space: pre-wrap !important;
word-wrap: break-word !important;
overflow-wrap: break-word !important;
text-wrap: balance !important;
border: none !important;
outline: none !important;
box-shadow: none !important;
background: transparent !important;
padding: 0 !important;
margin: 0 !important;
border-radius: 0 !important;
-webkit-appearance: none !important;
appearance: none !important;
min-height: 0 !important;
}
.editable-text-input--inline,
.editable-text-input--inline:focus,
.editable-text-input--inline:hover,
.editable-text-input--inline:active {
display: inline !important;
width: auto !important;
white-space: normal !important;
}
.editable-text-input::placeholder {
color: inherit;
opacity: 0.35;
}
.author-editable {
cursor: pointer;
border-radius: 4px;
transition: background 0.15s;
}
.author-editable:hover { background: var(--bg-hover); }
/* Affiliations open the same manager modal on click (editor-only). The
pointer cursor + subtle hover signal they're interactive without leaking
into the published article, which loads _hero.css but not this file. */
.affiliations--clickable { cursor: pointer; border-radius: 4px; }
.affiliations--clickable:hover { background: var(--bg-hover); }
.author-add-btn {
display: inline-flex;
align-items: center;
margin-left: 4px;
}
.meta-placeholder-btn {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 4px 10px;
border: 1px dashed var(--border-color);
border-radius: 6px;
background: transparent;
color: var(--muted-color);
font: inherit;
font-size: 0.85rem;
cursor: pointer;
transition: border-color 0.15s, color 0.15s, background 0.15s;
}
.meta-placeholder-btn:hover {
border-color: var(--primary-color);
color: var(--primary-color);
background: rgba(149, 141, 241, 0.06);
}