.submissions-shell { padding-top: 2rem; padding-bottom: 3rem; overflow-wrap: anywhere; }
.submissions-shell input, .submissions-shell textarea, .submissions-shell select, .submission-editor { box-sizing: border-box; }
.submissions-shell .button.is-primary { color: #fff; }
.submission-form { display: grid; gap: 1.2rem; }
.submission-form input:not([type="checkbox"]):not([type="hidden"]), .submission-form textarea, .submission-form select { width: 100%; max-width: 100%; padding: .65rem; border: 1px solid var(--op-border, #bcc9d8); border-radius: .4rem; background: var(--op-surface, #fff); color: var(--op-text, #17212e); font: inherit; }
.submission-field, .submission-repeat > div { display: grid; gap: .4rem; margin-block: 1rem; }
.submission-field label, .submission-repeat label { font-weight: 650; }
.submission-check { display: flex; align-items: flex-start; gap: .7rem; margin-block: 1rem; }
.submission-check input { margin-top: .4rem; flex-shrink: 0; }
.submission-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-block: 1rem; }
.submission-repeat { border: 1px solid var(--op-border, #bcc9d8); border-radius: .5rem; padding: 1rem; margin-block: 1rem; min-width: 0; }
.submission-repeat summary, .submission-policy summary { cursor: pointer; font-weight: 650; }
.submission-policy { padding: 1rem; border: 1px solid var(--op-border, #bcc9d8); border-radius: .5rem; }
.submission-image img { display: block; max-width: min(100%, 480px); max-height: 300px; object-fit: contain; }
.submission-preview { padding: 1.2rem; border: 1px solid var(--op-border, #bcc9d8); border-radius: .5rem; margin-block: 1rem; }
.submission-table { overflow-x: auto; }
.submission-editor { min-height: 25rem; padding: 1rem; border: 1px solid var(--op-border, #bcc9d8); border-radius: .4rem; background: var(--op-surface, #fff); color: var(--op-text, #17212e); overflow-wrap: anywhere; white-space: pre-wrap; }
.submission-toolbar { display: flex; flex-wrap: wrap; gap: .35rem; margin-bottom: .5rem; }
.submission-toolbar button { padding: .4rem .7rem; cursor: pointer; border-radius: .3rem; border: 1px solid var(--op-border, #bcc9d8); background: var(--op-surface, #fff); color: var(--op-text, #17212e); }
.submission-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.submission-form .errorlist { color: #b42318; margin: .3rem 0; }
.submission-editor:focus-visible, .submission-toolbar button:focus-visible { outline: 3px solid var(--op-primary, #275dad); outline-offset: 2px; }
@media (max-width: 600px) { .submission-actions > .button { width: 100%; } .submission-editor { min-height: 18rem; } }
