/* Materials upload controls shared with the deeper project brief. */
[data-file-uploads]{margin:26px 0 30px;border-top:1px solid var(--line);padding-top:26px}
.file-upload-intro{max-width:64ch;margin:0 0 24px;color:var(--muted);font-size:.875rem}
.file-upload-row,.upload-field{padding-bottom:23px;margin-bottom:24px;border-bottom:1px solid var(--line)}
.field input[type=file][data-project-file]{height:auto;min-height:54px;padding:8px;max-width:100%;overflow:hidden;font-size:.8125rem;background:var(--surface)}
[data-project-file]::file-selector-button{border:1px solid #c9c9d1;background:#fff;color:var(--ink);padding:10px 13px;border-radius:7px;font:inherit;font-weight:500;cursor:pointer;margin-right:12px}
[data-project-file]::file-selector-button:hover{border-color:var(--blue);background:#f1f7ff}
[data-remove-file]{font-size:.75rem;min-height:40px;margin-top:4px}
[data-file-status]{overflow-wrap:anywhere;word-break:break-word}
.upload-file-meta{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 16px}.upload-file-meta [data-file-status]{flex:1 1 200px}.upload-file-meta [data-file-status]:empty{display:none}.upload-file-meta [data-remove-file]{flex:none}
[data-files-total]{margin:0 0 16px;color:var(--ink);font-weight:500}
.file-reload-note{margin-bottom:0;max-width:68ch}
.files-layout{display:grid;grid-template-columns:240px minmax(0,760px);gap:76px;padding-block:46px 92px;border-top:1px solid var(--line)}
.files-aside{min-width:0}.files-aside h2{font-size:1.25rem;line-height:1.3;letter-spacing:-.02em;margin-bottom:14px}.files-aside p{font-size:.875rem;color:var(--muted);max-width:29ch}.files-aside .text-link{font-size:.8125rem;overflow-wrap:anywhere}.files-aside .file-return-note{margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}
.files-form-panel{min-width:0}.files-form-panel h2{font-size:2rem;line-height:1.2;letter-spacing:-.04em}.files-form-panel .file-section-heading{margin:36px 0 14px}.files-form-panel .file-section-heading:first-child{margin-top:0}.files-form-panel .form-actions{margin-top:28px}
.files-success-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:24px}.files-success-actions .button{margin:0}
@media(max-width:1000px){.files-layout{gap:42px;grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:760px){.files-layout{grid-template-columns:minmax(0,1fr);gap:30px;padding-block:30px 58px}.files-aside{padding-bottom:24px;border-bottom:1px solid var(--line)}.files-aside p{max-width:60ch}.files-aside .file-return-note{margin:18px 0 0;padding:0;border:0}.files-form-panel h2{font-size:1.75rem}.file-upload-intro{font-size:.8125rem}.file-upload-row,.upload-field{padding-bottom:20px;margin-bottom:22px}.files-success-actions{align-items:flex-start;flex-direction:column}}

/* Keep an attachment beside the content it belongs to. */
.context-upload[data-file-uploads]{margin:14px 0 28px;padding:18px 20px 8px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.context-upload .upload-field{padding:0 0 14px;margin:0 0 16px}.context-upload .upload-field:last-of-type{border-bottom:0;margin-bottom:0;padding-bottom:4px}.context-upload .upload-guidance{font-size:.75rem;margin:4px 0 12px}
@media(max-width:640px){.context-upload[data-file-uploads]{padding:16px 14px 6px}}
