.survey-page { max-width: 1120px; }
.survey-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 12px 0; }
.survey-note { color: var(--nv-text); opacity: .75; font-size: 13px; line-height: 1.7; }
.survey-block, .survey-list-row, .survey-preview, .survey-confirm { padding: 24px; margin: 20px 0; }
.survey-list-row { display: flex; justify-content: space-between; gap: 16px; align-items: center; }
.survey-list-title { display: inline-block; font-size: 18px; margin: 0 12px; overflow-wrap: anywhere; }
.survey-empty { padding: 32px 0; border-top: 1px solid var(--nv-border); }
.survey-question, .survey-editor-fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.survey-question legend { font-size: 19px; font-weight: 600; overflow-wrap: anywhere; }
.survey-option { display: flex; width: 100%; border-top: 1px solid var(--nv-border-dim); padding: 6px 0; }
.survey-option .mud-radio, .survey-option .mud-checkbox { align-items: flex-start; width: 100%; }
.survey-option .mud-input-control-boolean-input-label { flex: 1; padding-top: 10px; }
.survey-option span { overflow-wrap: anywhere; }
.survey-image { display: block; max-width: 100%; max-height: 620px; object-fit: contain; margin: 12px 0; }
.survey-option-image { display: block; max-width: min(100%, 340px); max-height: 240px; object-fit: contain; margin: 10px 0; }
.survey-block figure { margin: 0; }
.survey-block figcaption { opacity: .75; font-size: 13px; }
.survey-monaco { width: 100%; height: 260px; border: 1px solid var(--nv-border); margin-top: 12px; }
.survey-block-header { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.survey-meta-editor { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin: 24px 0; }
.survey-title-field { flex: 1 1 300px; }
.survey-deadline-field { flex: 1 1 280px; }
.survey-choice-limit { flex: 1 1 220px; max-width: 340px; }
.survey-upload:focus-within .mud-button-root { outline: 2px solid var(--nv-accent); outline-offset: 3px; }
.survey-upload { position: relative; display: inline-flex; align-items: center; margin: 12px 0; }
.survey-upload .mud-button-root { white-space: normal; }
.survey-upload input[type=file] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.survey-upload input[type=file]:disabled { cursor: not-allowed; }
.survey-edit-option { border-left: 2px solid var(--nv-border); padding: 12px 16px; margin: 14px 0; }
.survey-prose { line-height: 1.8; overflow-wrap: anywhere; }
.survey-prose img { max-width: 100%; }
.survey-prose pre { overflow-x: auto; }
.survey-results { margin-top: 32px; }
.survey-result-option { margin: 20px 0; }
.survey-result-label { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 8px; }
.survey-result-label > span:first-child { overflow-wrap: anywhere; }
.survey-actions > .mud-button-root { white-space: nowrap; }
@media (max-width: 640px) {
    .survey-list-row, .survey-block-header { align-items: flex-start; flex-direction: column; }
    .survey-block, .survey-list-row, .survey-preview { padding: 14px; }
    .survey-list-title { display: block; margin: 10px 0; }
}
.survey-translations { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; width: 100%; }
.survey-language-editor { min-width: 0; }
@media (max-width: 700px) { .survey-translations { grid-template-columns: 1fr; } }
