.formdot-hp {
position: absolute !important;
left: -9999px !important;
top: -9999px !important;
height: 1px;
width: 1px;
overflow: hidden;
}
.formdot-error {
display: block;
color: #b32d2e;
font-size: .875em;
margin-top: .25em;
}
.formdot-response {
display: none;
margin-top: 1em;
}
.formdot-response.is-success,
.formdot-response.is-error {
display: block;
} .formdot-replacement:focus {
outline: none;
}
.formdot [aria-invalid="true"] {
outline: 1px solid #b32d2e;
} .formdot-choice-group {
border: 0;
margin: 0;
padding: 0;
min-width: 0;
} .formdot-spinner { --formdot-spinner-size: 24px;
--formdot-spinner-color: currentColor; --formdot-spinner-speed: 1.2s;
display: none;
}
.formdot-form.formdot-submitting .formdot-spinner {
display: block;
} .formdot-spinner:empty {
position: relative;
width: var(--formdot-spinner-size);
height: var(--formdot-spinner-size);
}
.formdot-spinner:empty::before,
.formdot-spinner:empty::after {
content: "";
position: absolute;
inset: 0;
border-radius: 50%;
background: var(--formdot-spinner-color);
}
.formdot-spinner:empty::before {
transform: scale(.4); }
.formdot-spinner:empty::after {
transform: scale(.4); animation: formdot-spinner-pulse var(--formdot-spinner-speed) ease-out infinite;
}
@keyframes formdot-spinner-pulse {
0%   { transform: scale(.4); opacity: .6; }
100% { transform: scale(1);  opacity: 0; }
}
@keyframes formdot-spinner-breathe {
0%, 100% { opacity: .25; }
50%      { opacity: .6; }
} @media (prefers-reduced-motion: reduce) {
.formdot-spinner:empty::after {
transform: scale(.4);
animation: formdot-spinner-breathe var(--formdot-spinner-speed) ease-in-out infinite;
}
} .formdot-dropzone {
background: rgba(0, 0, 0, .1);
border: 2px dashed rgba(0, 0, 0, .3);
border-radius: 4px;
padding: 1.25em 1em;
text-align: center;
cursor: pointer;
}
.formdot-dropzone.is-dragover {
background: rgba(0, 0, 0, .18);
}
.formdot-dropzone:focus-within {
outline: 2px solid rgba(0, 0, 0, .5);
outline-offset: 2px;
}
.formdot-file-input {
position: absolute !important;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
clip-path: inset(50%);
white-space: nowrap;
}
.formdot-files {
list-style: none;
margin: .5em 0 0;
padding: 0;
text-align: left;
}
.formdot-files li {
display: flex;
align-items: center;
justify-content: space-between;
gap: .5em;
padding: .25em 0;
}
.formdot-file-remove {
cursor: pointer;
}