Files
nexu-io--open-design/apps/web/src/components/MemoryProfilePanel.module.css
T
wehub-resource-sync 070959e133
landing-page-staging / Deploy landing page to staging (push) Has been skipped
landing-page-ci / Validate landing page (push) Failing after 4s
visual-baseline / Capture visual baselines (push) Has been cancelled
bake-plugin-previews / Bake plugin previews (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:00:47 +08:00

97 lines
1.5 KiB
CSS

/* Structured profile editor matching the Memory settings surface. */
.panel {
display: flex;
flex-direction: column;
gap: 14px;
}
.head {
display: flex;
align-items: flex-start;
gap: 10px;
}
.headIcon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 28px;
height: 28px;
flex: 0 0 auto;
border-radius: var(--radius-md, 8px);
background: var(--bg-subtle);
color: var(--accent);
}
.title {
margin: 0;
font-size: 14px;
font-weight: 600;
}
.hint {
margin: 2px 0 0;
font-size: 12px;
line-height: 1.5;
color: var(--text-muted);
}
.fields {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px 14px;
}
.field {
display: flex;
flex-direction: column;
gap: 4px;
min-width: 0;
}
/* The two multiline fields (aesthetic, goals) span the full width so their
* textareas have room to breathe. They are the last items in their rows. */
.field:nth-child(5),
.field:nth-child(8) {
grid-column: 1 / -1;
}
.fieldLabel {
font-size: 10px;
font-weight: 600;
letter-spacing: 0.5px;
text-transform: uppercase;
color: var(--text-muted);
}
.field input,
.field textarea {
width: 100%;
font-size: 13px;
line-height: 1.45;
}
.field textarea {
resize: vertical;
}
.actions {
display: flex;
align-items: center;
justify-content: flex-end;
gap: 10px;
}
.savedPill {
font-size: 12px;
font-weight: 500;
color: var(--green);
}
@media (max-width: 560px) {
.fields {
grid-template-columns: minmax(0, 1fr);
}
}