.plc-forms-wrapper {
max-width: 600px;
}
.plc-forms-form {
position: relative;
} .plc-forms-hp {
position: absolute;
left: -9999px;
opacity: 0;
height: 0;
overflow: hidden;
} .plc-forms-field {
margin-bottom: 1.25em;
} .plc-forms-label {
display: block;
margin-bottom: 0.25em;
font-weight: 500;
}
.plc-forms-required {
color: #d63638;
margin-left: 0.25em;
} .plc-forms-description {
font-size: 0.875em;
color: #666;
margin: 0 0 0.35em 0 !important; padding: 0;
line-height: 1.4;
} .plc-forms-input,
.plc-forms-textarea,
.plc-forms-select {
width: 100%;
padding: 0.75em;
border: 1px solid #ccc;
border-radius: 4px;
font-size: 1em;
font-family: inherit;
background: #fff;
transition: border-color 0.2s, box-shadow 0.2s;
margin-top: 0 !important; }
.plc-forms-input:focus,
.plc-forms-textarea:focus,
.plc-forms-select:focus {
outline: none;
border-color: #0073aa;
box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
} .plc-forms-field.has-error .plc-forms-input,
.plc-forms-field.has-error .plc-forms-textarea,
.plc-forms-field.has-error .plc-forms-select {
border-color: #d63638;
}
.plc-forms-field.has-error .plc-forms-input:focus,
.plc-forms-field.has-error .plc-forms-textarea:focus,
.plc-forms-field.has-error .plc-forms-select:focus {
box-shadow: 0 0 0 2px rgba(214, 54, 56, 0.2);
}
.plc-forms-error-message {
display: block;
color: #d63638;
font-size: 0.875em;
margin-top: 0.5em;
} .plc-forms-checkbox-label {
display: flex;
align-items: flex-start;
gap: 0.5em;
cursor: pointer;
}
.plc-forms-checkbox {
margin-top: 0.25em;
} .plc-forms-submit {
margin-top: 2em;
}
.plc-forms-button {
display: inline-block;
padding: 0.75em 2em;
background: #0073aa;
color: #fff;
border: none;
border-radius: 4px;
font-size: 1em;
font-weight: 500;
cursor: pointer;
transition: background-color 0.2s;
}
.plc-forms-button:hover {
background: #005a87;
color: #fff;
}
.plc-forms-button:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(0, 115, 170, 0.4);
}
.plc-forms-button:disabled {
background: #ccc;
cursor: not-allowed;
} .plc-forms-status {
margin-top: 1em;
}
.plc-forms-status.error {
color: #d63638;
padding: 0.75em;
background: #fce4e4;
border-radius: 4px;
}
.plc-forms-status.sending {
color: #666;
} .plc-forms-success {
background: #d4edda;
color: #155724;
padding: 1.5em;
border-radius: 4px;
text-align: center;
} .plc-forms-form.is-sending .plc-forms-button {
position: relative;
color: transparent;
}
.plc-forms-form.is-sending .plc-forms-button::after {
content: '';
position: absolute;
top: 50%;
left: 50%;
width: 20px;
height: 20px;
margin: -10px 0 0 -10px;
border: 2px solid #fff;
border-top-color: transparent;
border-radius: 50%;
animation: plc-forms-spin 0.8s linear infinite;
}
@keyframes plc-forms-spin {
to {
transform: rotate(360deg);
}
} .plc-forms-error {
color: #d63638;
padding: 1em;
background: #fce4e4;
border-radius: 4px;
}