.contact-attachments{padding:1rem;border:1px solid var(--border,#303541);border-radius:14px;background:rgba(255,255,255,.025)}
.contact-attachments label{display:flex;justify-content:space-between;gap:1rem}.contact-attachments .help{margin:.35rem 0 .75rem}
#contact-files{max-width:100%;font:inherit;color:inherit}#contact-files::file-selector-button{font:inherit;color:inherit;background:#262331;border:1px solid #4b415e;border-radius:9px;padding:.65rem .85rem;margin-right:.75rem;cursor:pointer}
#contact-file-list{list-style:none;margin:.8rem 0 0;padding:0}#contact-file-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 0;border-top:1px solid #303541}#contact-file-list span{overflow-wrap:anywhere;font-size:.9rem}#contact-file-list button{flex:none;font:inherit;background:transparent;color:#c8b6ff;border:1px solid #4b415e;border-radius:8px;padding:.4rem .65rem;cursor:pointer}
#contact-errors:not([hidden]){padding:.8rem 1rem;border:1px solid #c76b7b;border-radius:12px;background:#321e29;margin:1rem 0;color:#ffe5ea}#contact-errors p{margin:.35rem 0}#contact-errors:focus{outline:2px solid #c8b6ff;outline-offset:3px}

.contact-attachments { min-width: 0; padding: 16px; border-color: var(--line); border-radius: 14px; }
.contact-attachments .field { align-items: center; font-size: 14px; }
.contact-attachments .field > .help { margin: 0; font-size: 12px; }
.contact-attachments .help { font-size: 13px; }
#contact-files { display: block; width: 100%; min-height: 46px; padding: 0; border: 0; border-radius: 0; background: transparent; font-size: 13px; line-height: 1.5; }
#contact-files::file-selector-button { min-height: 44px; margin-right: 10px; padding: 10px 12px; font-size: 13px; }
#contact-file-list { margin-top: 10px; }
#contact-file-list:empty { display: none; }
#contact-file-list li { min-width: 0; gap: 10px; }
#contact-file-list span { min-width: 0; font-size: 13px; }
#contact-file-list button { min-height: 44px; padding: 10px; font-size: 13px; }
#contact-file-summary { margin: 10px 0 0; }
#contact-errors .errors { margin: 0; padding: 0 0 0 18px; border: 0; background: transparent; color: inherit; }
#contact-errors:not([hidden]) { margin: 0 0 20px; }
@media (max-width: 359px) { .contact-attachments { padding: 12px; } }

/* The message is the main action; supporting files stay optional. */
.contact-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .7fr); gap: 16px; }
.auth-panel .contact-attachments { margin: 0; padding: 0 14px; }
.contact-attachments summary { color: var(--text); }
.contact-attachments summary .help { margin-left: 8px; color: var(--muted); }
.contact-attachments[open] { padding-bottom: 14px; }
.contact-attachments[open] summary { margin-bottom: 8px; }
.contact-shortcuts { display: flex; flex-wrap: wrap; gap: 0 20px; margin-top: 16px; border-top: 1px solid var(--line); padding-top: 8px; font-size: 13px; }
.contact-shortcuts a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 520px) { .contact-fields { grid-template-columns: minmax(0, 1fr); gap: 18px; } }
