::placeholder {
  color: #999 !important;
  font-weight:300;
  font-size:0.9em;
}

.reqitem {
  color: #c61010;
  padding-left: 5px;
  display: inline-block;
}

.formcomment {
  margin-top: 5px;
  color: #c61010;
}

.form-inline .form-control {
  display: inline-block;
  width: auto;
  vertical-align: middle;
}

.notice-box {
  margin-bottom: 30px;
  background-color: rgba(0, 0, 0, 0.05);
  padding: 20px;
  margin: 20px 0;
  border-top: 3px solid var(--theme-color);
}
.notice-box ul { margin-bottom:0; font-weight:300; padding-left:20px;}

form .form-group {
  margin-bottom: 1.25em;
}

form .form-group label.form-head { position:relative; padding-left:20px; font-weight:500; margin-bottom:0.25em; color:#333; }
form .form-group label.form-head.flex { display:flex; justify-content: space-between !important; align-items: center !important; }


form .form-group label.form-head:before {
  content: '';
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translate(0%, -55%);
  width: 0.9em;
  height: 0.9em;
  border:3px solid var(--theme-color);
}

/*
form .form-group label:after {
  content: '';
  position: absolute;
  left: 2px;
  top: 2px;
  width: 8px;
  height: 8px;
  background-color: rgba(var(--theme-color-rgb), 0.5);
}
*/

form select.form-control { padding: .48rem .75rem !important; }
.form-txt {border-style: dashed; background-color:rgba(0, 0, 0, 0.03);}

.form-comment {  color:#f15454; padding-left:1.2em; position:relative; font-size:0.9em; }
div.form-comment {display:block; margin-top:5px;}
.form-comment:before {
  content: "\f430";
  position:absolute;
  left:0;
  top:0.25em;
  display: inline-block;
  font-family: bootstrap-icons !important;
  font-style: normal;
  font-weight: 400 !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: -.125em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* spinner */
.sending-spinner {
  position: relative;
  width:0px;
  visibility:hidden;
}

@keyframes spinner {
  to {transform: rotate(360deg);}
}

.sending-spinner:before {
  content: '';
  box-sizing: border-box;
  position: absolute;
  top: 55%;
  left: 5px;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  margin-left: -10px;
  border-radius: 50%;
  border: 2px solid #ccc;
  border-top-color: #000;
  animation: spinner .6s linear infinite;
}

/* multi file uploader (pluploader widget) */
.file-upload-box .file-size-info { margin:5px 0 0 0; text-align:right; }
.file-upload-box .file-drop-target { display:block; border: 5px dashed #999; text-align: center; color: #999; font-size: 15px; width: 100%; padding:10px; cursor: pointer;}
.file-upload-box .file-drop-target > span { display:block; font-size: 15px; color:#b50000}
.file-upload-box .file-drop-target.dragover { background: rgba(255, 255, 255, 0.4); border-color: green;}

.file-upload-box ul.file-queue-list { margin:5px 0 10px 0; padding:0; border:1px dotted #ddd; display:none;}
.file-upload-box ul.file-queue-list li { margin:0; padding:5px 5px; list-style:none; position:relative; font-size:0.9em;}
.file-upload-box ul.file-queue-list li a.upload-action-link { position:absolute; right:10px; top:2px; }
.file-upload-box ul.file-queue-list li div.upload_filename { padding-right:20px; } /* to prevent overlapped with cancel/remove link */
.file-upload-box ul.file-queue-list li:nth-child(odd) { background-color:#fbfbfb; }

.file-upload-box ul.file-queue-list.queue-thumbs li { display:inline-block !important; vertical-align:top !important; max-width:150px; min-height:200px; background-color:#fff; border:1px solid #eee; margin:5px;padding:0; }
.file-upload-box ul.file-queue-list.queue-thumbs li:hover { border:1px solid #f00; }
.file-upload-box ul.file-queue-list.queue-thumbs li div.upload_filename {overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; padding:5px; border-top:1px solid #eee0;}
.file-upload-box ul.file-queue-list.queue-thumbs li div.upload_filesize {overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; padding:0 5px;}
.file-upload-box ul.file-queue-list.queue-thumbs li a.upload-action-link { position:absolute; right:10px; top:auto; bottom:2px !important; }
.file-upload-box ul.file-queue-list.queue-thumbs li a.view_uploaded_file { position:absolute; right:30px; top:auto; bottom:2px !important; }
.file-upload-box ul.file-queue-list.queue-sortable li img:hover { cursor:move; }


.file-upload-box .upload_progress { height:1px;opacity:0;}
.file-upload-box .upload_progress_bar { height:100%; background-color:#55a7ff;}

.moxie-shim { width: auto !important; } /* plupload add a fixed width on div.moxie-shim, but it must not be fixed */