.if-wrapper{max-width:760px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.if-field{margin-bottom:14px}
.if-field label{display:block;font-size:14px;margin-bottom:6px}
.if-field input,.if-field select,.if-field textarea{width:100%;padding:8px 10px;border:1px solid #ccc;border-radius:6px}
.if-field input,.if-field select{height:40px}
.if-field textarea{min-height:90px}
.if-full{grid-column:1 / -1}
.if-areas{display:flex;flex-direction:column;gap:18px;margin-bottom:10px}
.if-area{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}
.if-area .if-actions{display:flex;align-items:center;justify-content:flex-end}
.if-remove-btn{height:40px;padding:0 18px;border:1px solid #d0d0d0;background:#fff;border-radius:8px;cursor:pointer}
.if-add-area{background:#0a0a0a;color:#fff;border:0;padding:10px 16px;border-radius:8px;cursor:pointer;margin:8px 0 14px}
.if-result{margin-top:10px;font-size:16px}
.if-note{font-size:12px;color:#666}
.if-request{margin-top:22px}
.if-request-toggle,.if-send-btn{background:#0a0a0a;color:#fff;border:0;padding:10px 14px;border-radius:8px;cursor:pointer}
.if-request-toggle:hover,.if-send-btn:hover{opacity:.92}
.if-dropzone{margin-top:8px;border:2px dashed #bbb;border-radius:8px;padding:16px;text-align:center;cursor:pointer}
.if-dropzone.if-drag{border-color:#000}
.if-file-list{list-style:none;padding:0;margin:10px 0 0}
.if-file-item{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.if-file-item .if-file-remove{margin-left:auto;height:30px;padding:0 12px;border:1px solid #ccc;background:#fff;border-radius:6px;cursor:pointer}
.if-progress{width:120px;height:6px;background:#eee;border-radius:4px;overflow:hidden}
.if-progress .if-bar{width:0%;height:100%;background:#000}
.if-upload-note strong{font-weight:700}
.if-consent-wrap{margin-top:8px}
.if-consent-label{display:inline-flex;align-items:center;gap:8px;font-size:14px}
.if-consent-label input{width:auto;height:auto;margin:0;vertical-align:middle;accent-color:#000}
.if-status{margin-top:10px}
.if-status.ok{font-weight:700;font-size:16px}
.if-status.error{color:#b00020}
@media(max-width:760px){.if-area{grid-template-columns:1fr 1fr;}.if-area .if-actions{grid-column:1 / -1;justify-content:flex-start}}