/* Photo drop zones on the warranty forms (built by forms.js). Class names and measurements
   follow the "Images Optimize and Upload CF7" plugin they replace, so the page looks the same. */
.images-optimize-upload-wrapper { display: block; }
.images-optimize-upload-wrapper input[type="file"] { display: none; }
.images-optimize-upload-handler {
  border: 3px dashed #ccc; border-radius: 10px; padding: 30px 30px 35px; margin: 0 0 20px;
  text-align: center; background: #fff; cursor: pointer;
}
.images-optimize-upload-handler.is-dragover { border-color: #00ae9e; background: #f3fbfa; }
.images-optimize-upload-inner h3 {
  position: relative; padding: 42px 0 3px; margin: 0; border-bottom: 2px solid #00ae9e;
  color: #999; font-size: 15px; font-weight: 400; letter-spacing: 1px; line-height: 27px; text-transform: uppercase;
}
.images-optimize-upload-inner h3::before {
  content: "\21E9"; position: absolute; top: 0; left: 50%; transform: translateX(-50%);
  width: 40px; border-bottom: 2px solid #999; color: #999; font-size: 16px; line-height: 24px;
}
.images-optimize-upload-inner > span { display: block; color: #ccc; font-family: sans-serif; }
.images-optimize-upload-button {
  display: inline-block; padding: 5px 30px; border-radius: 3px; background: #00b9eb; color: #fff;
  font-size: 16px; text-decoration: none;
}
.images-optimize-upload-button:hover, .images-optimize-upload-button:focus { background: #0098c2; color: #fff; }
.images-optimize-upload-wrapper ul.list { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.images-optimize-upload-wrapper ul.list:empty { display: none; }
.images-optimize-upload-wrapper ul.list li {
  position: relative; width: 120px; font-size: 12px; line-height: 1.3; word-break: break-all; color: #565656;
}
.images-optimize-upload-wrapper ul.list img { display: block; width: 120px; height: 90px; object-fit: cover; border-radius: 4px; }
.images-optimize-upload-wrapper ul.list button {
  position: absolute; top: 4px; right: 4px; width: 24px; height: 24px; padding: 0; border: 0; border-radius: 50%;
  background: rgba(0, 0, 0, .65); color: #fff; font-size: 16px; line-height: 24px; cursor: pointer;
}
.images-optimize-upload-error { border: 2px solid red; padding: 3.2px 16px; margin: 0 0 16px; }
.images-optimize-upload-error:empty { display: none; }
