body[data-theme-area="frontend"] .writeup-editor-page .longform-editor-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    max-width: 1040px;
    margin-inline: auto;
}
body[data-theme-area="frontend"] .writeup-editor-page .longform-editor-main {
    padding: clamp(1rem, 2.5vw, 2rem);
}
body[data-theme-area="frontend"] .writeup-editor-page .longform-editor-section + .longform-editor-section {
    margin-top: 1.5rem;
    padding-top: 0;
    border-top: 0;
}
body[data-theme-area="frontend"] .writeup-editor-page .longform-editor-section { padding: 0; }
.submission-optional-fields {
    padding-block: 1rem;
    border-top: 1px solid var(--border, #d6e0ec);
}
.submission-optional-fields:first-of-type { margin-top: 1.5rem; }
.submission-optional-fields summary {
    cursor: pointer;
    color: var(--ink, #172033);
    font-weight: 600;
}
.submission-optional-fields[open] summary { margin-bottom: 1rem; }
.submission-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem clamp(1rem, 2.5vw, 2rem);
    border-top: 1px solid var(--border, #d6e0ec);
}
.submission-action-buttons,
.submission-draft-state { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }
.submission-draft-state { color: var(--ink-muted, #64748b); font-size: .85rem; }
.submission-field-error { margin-top: .45rem; color: #b42318; font-size: .875rem; }
body.theme-dark .submission-field-error { color: #fda29b; }
body[data-theme-area="frontend"] .df-vditor-shell[data-vditor-compact="true"] .df-vditor-status {
    min-height: 0;
    padding: .25rem 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}
.df-vditor-shell [hidden],
.submission-draft-state [hidden],
[data-contribution-submit-hint][hidden] { display: none !important; }
.contribution-composer-page {
    max-width: 1040px;
    margin-inline: auto;
}
.contribution-composer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 1.25rem 0 1.75rem;
    padding: 0;
    background: transparent;
    border: 0;
}
.contribution-composer-head h1 { margin: 0; font-size: clamp(1.6rem, 3vw, 2rem); letter-spacing: -.03em; }
.contribution-composer-head > a { font-size: .875rem; text-decoration: none; white-space: nowrap; }
.contribution-composer-card {
    overflow: hidden;
    border: 1px solid var(--border, #d6e0ec);
    border-radius: 12px;
    background: var(--surface, #fff);
}
.contribution-composer-fields { padding: clamp(1rem, 3vw, 2rem); }
.contribution-composer-card .editor-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.25rem; }
.contribution-composer-card .editor-grid > * { min-width: 0; }
.contribution-composer-card .span-12 { grid-column: 1 / -1; }
.contribution-composer-card .span-6 { grid-column: span 6; }
.contribution-composer-card .form-label { display: block; margin-bottom: .5rem; font-size: .875rem; font-weight: 600; }
.contribution-composer-card .form-control,
.contribution-composer-card .form-select { min-height: 44px; border-radius: 7px; }
.contribution-composer-card .composer-type-field .form-select { max-width: 280px; }
.composer-required { color: var(--ink-muted, #64748b); }
.composer-field-hint { margin: .5rem 0 0; color: var(--ink-muted, #64748b); font-size: .8125rem; }
.contribution-composer-card .composer-extra-fields { margin: .25rem 0 0; padding: 1rem 0; }
.composer-extra-fields summary { font-size: .875rem; }
.composer-extra-fields summary > span { margin-left: .4rem; color: var(--ink-muted, #64748b); font-weight: 400; }
.contribution-composer-card .df-vditor-shell .vditor { box-shadow: none; }
.contribution-composer-actions { padding: 1.25rem clamp(1rem, 3vw, 2rem); }
.contribution-composer-actions .btn { min-height: 44px; padding-inline: 1.25rem; }
.composer-cancel-link { color: var(--ink-muted, #64748b); font-size: .875rem; text-decoration: none; }
.composer-cancel-link:hover { color: var(--ink, #172033); }
.contribution-composer-card .contribution-submit-hint { flex-basis: 100%; margin: 0; font-size: .875rem; color: #b42318; }
.contribution-composer-card .attachment-manager__actions .form-text { font-size: .75rem; line-height: 1.5; }
.composer-review-note,
.composer-prefill { margin-bottom: 1rem; padding: .75rem 1rem; border-left: 3px solid var(--accent, #2563eb); background: var(--surface, #fff); font-size: .875rem; }
.composer-review-note p { margin: .5rem 0 0; white-space: pre-wrap; }
.composer-prefill { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .75rem; }
.composer-recent-drafts { margin: 0 0 1rem; font-size: .875rem; }
.composer-recent-drafts summary { cursor: pointer; color: var(--ink-muted, #64748b); }
.composer-recent-drafts summary > span { margin-left: .4rem; }
.composer-recent-drafts > a { display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 0; border-bottom: 1px solid var(--border, #d6e0ec); text-decoration: none; }
.composer-recent-drafts > a > span { color: var(--ink-muted, #64748b); font-size: .75rem; }
.contribution-composer-card .contribution-local-draft { padding: .75rem; margin-bottom: 1rem; border: 1px solid var(--border, #d6e0ec); border-radius: 7px; }
.contribution-local-draft__actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .5rem; }
.contribution-local-draft p { font-size: .8125rem; color: var(--ink-muted, #64748b); margin: .3rem 0 0; }
.contribution-composer-card .contribution-local-draft-status { font-size: .875rem; }
.contribution-composer-card .contribution-event-fields { padding: 0; border: 0; background: transparent; }
.contribution-composer-card .contribution-event-fields__head { margin-bottom: 1rem; }
.contribution-composer-card .contribution-event-fields__head span { display: none; }
@media (max-width: 575.98px) {
    .contribution-composer-card .span-6 { grid-column: 1 / -1; }
    .contribution-composer-card .composer-type-field .form-select { max-width: none; }
    .contribution-composer-actions .composer-cancel-link { margin-left: auto; }
    .contribution-composer-head { margin-bottom: 1.25rem; }
    .contribution-composer-card .attachment-manager__actions { align-items: start; }
    .composer-recent-drafts > a { flex-direction: column; gap: .25rem; }
}
body[data-theme-area="frontend"] .contribution-editor-layout { grid-template-columns: minmax(0, 1fr); }
body[data-theme-area="frontend"] .contribution-form-actions { position: static; }
body[data-theme-area="frontend"] .contribution-editor-sidebar { position: static; }
body[data-theme-area="frontend"] .contribution-sidebar-head { display: none; }
@media (max-width: 575.98px) {
    .submission-actions { align-items: stretch; }
    .submission-action-buttons { width: 100%; }
    .submission-action-buttons .btn { flex: 1; }
    .submission-draft-state { width: 100%; }
}

.contribution-composer-card .contribution-local-draft__actions .btn-link {
    border-color: transparent;
    background: transparent;
    box-shadow: none;
    color: var(--ink-muted, #64748b);
    text-decoration: none;
}
.contribution-local-draft p:empty { display: none; }
