.attachment-summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; background: #f2f7f4; border: 1px solid #dfebe3; border-radius: 8px; padding: 11px 14px; margin-bottom: 20px; font-size: 13px; color: #536f5e; }
.attachment-summary > span:first-child { display: flex; align-items: center; gap: 7px; }
.attachment-summary strong { color: #146b59; font-size: 15px; }
.attachment-summary .icon { width: 17px; height: 17px; }
.attachment-pickers { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.attachment-picker { min-width: 0; }
.attachment-picker h3 { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; font-size: 15px; margin-bottom: 10px; color: #2a4d37; }
.attachment-picker h3 > span { font-size: 12px; font-weight: 400; color: #5a7563; }
.attachment-drop { display: flex; flex-direction: column; align-items: center; text-align: center; border: 2px dashed #bdd3c6; border-radius: 12px; background: #fbfdfb; padding: 24px 14px 20px; min-height: 245px; transition: background .15s, border-color .15s, box-shadow .15s; }
.attachment-drop.is-dragging { background: #e6f5ed; border-color: #146b59; box-shadow: inset 0 0 0 2px #146b5920; }
.attachment-drop-icon { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 12px; background: #eaf4ee; color: #287557; margin-bottom: 13px; }
.attachment-drop-icon .icon { width: 23px; height: 23px; }
.attachment-drop > strong { font-size: 14px; font-weight: 650; color: #335b43; overflow-wrap: anywhere; }
.attachment-or { color: #708475; font-size: 12px; margin: 8px 0; }
.attachment-drop .button { min-height: 42px; font-size: 13px; color: #146b59; }
.attachment-drop > p { color: #667e6d; font-size: 11px; margin-top: 12px; }
.attachment-list { list-style: none; padding: 0; margin: 10px 0 0; display: grid; gap: 8px; }
.attachment-item { display: flex; align-items: center; gap: 10px; padding: 11px 10px; background: #fff; border: 1px solid #dce8e0; border-radius: 9px; }
.attachment-file-icon { display: grid; place-items: center; color: #287557; flex: none; }
.attachment-file-icon .icon { width: 19px; height: 19px; }
.attachment-item > div { min-width: 0; flex: 1; }
.attachment-item strong { display: block; font-size: 13px; color: #304f3b; font-weight: 600; overflow-wrap: anywhere; }
.attachment-item div > span { display: block; font-size: 11px; color: #6b7e70; margin-top: 3px; }
.attachment-item .icon-button { width: 36px; height: 36px; flex: none; color: #657a6b; }
.attachment-item .icon-button:hover { background: #fef2f2; color: #a32720; }
.attachment-help { margin-top: 15px; font-size: 12px; line-height: 1.9; color: #5f7867; }
.attachment-error { padding: 12px 14px; margin-top: 14px; border: 1px solid #f4c2bb; border-radius: 8px; background: #fff2f0; color: #9d271d; font-size: 13px; overflow-wrap: anywhere; }
.reference-materials { margin-bottom:22px; }.reference-materials .page-head { align-items:flex-start; gap:18px; }.reference-materials .page-head p { max-width:720px; margin-top:9px; }.reference-materials>.button { margin-top:15px; }.reference-google { margin:22px 0; }.reference-google>.field { margin-top:16px; }
@media(max-width:1200px) and (min-width:761px) { .form-layout .attachment-pickers { grid-template-columns: 1fr; } }
@media(max-width:600px) { .attachment-pickers { grid-template-columns: 1fr; gap: 22px; } .attachment-drop { min-height: 215px; padding: 19px 14px; } .attachment-summary { gap: 5px; padding: 10px; } .attachment-summary > span:last-child { font-size: 12px; } .attachment-item .icon-button { width: 40px; height: 40px; } }
