.srcb-form-wrap{
	max-width:720px;
	margin: 30px auto 50px auto;
}
.srcb-form{
	display:grid;
	gap:16px;
}
.srcb-row{
	display:grid;
	gap:6px
}
.srcb-row input,
.srcb-row select,
.srcb-row textarea,
.srcb-row button{
	max-width:100%;
	padding:10px 12px;
	box-sizing:border-box;
	align-items: center;
}
.srcb-row label{
	font-size: 1.1rem;
	margin-bottom: 0;
}
.srcb-row textarea{
	min-height:120px
}
.srcb-inline{
	display:inline-flex;
	gap:8px;
	align-items:center;
	margin-right:12px
}
.srcb-help{
	display:block;
	opacity:.75
}
.srcb-success,
.srcb-error{
	padding:12px 14px;
	margin-bottom:16px;
	border-radius:8px;
	text-align: center;
}
.srcb-success{
	background:#ecfdf3;
	border:1px solid #abefc6
}
.srcb-error{
	background:#fef3f2;
	border:1px solid #fecdca
}

.srcb-notice-row {
    margin-top: 10px;
}

.srcb-form-notice:empty {
    display: none;
}

.srcb-date-row{
	position:relative
}
.srcb-date-input-wrap{
	position:relative;
	display:block;
	max-width:280px
}
.srcb-date-input{
	background:#fff;
	cursor:pointer
}
.srcb-date-input.srcb-calendar-open,
.flatpickr-input[readonly].srcb-calendar-open{
	border-color:#101828;
	box-shadow:0 0 0 3px rgba(16,24,40,.08)
}
.flatpickr-input[readonly]{
	background:#fff;
	cursor:pointer
}

.flatpickr-calendar{
	border:1px solid #d0d5dd;
	border-radius:14px;
	box-shadow:0 12px 28px rgba(16,24,40,.14)
}
.flatpickr-months .flatpickr-month{
	background:#fff
}
.flatpickr-current-month{
	padding-top:8px
}
.flatpickr-weekdays{
	background:#f8fafc
}
.flatpickr-weekday{
	color:#475467;
	font-weight:600
}
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover{
	color:#98a2b3;
	text-decoration:line-through;
	background:#f9fafb;
	cursor:not-allowed
}
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover{
	background:#101828;
	border-color:#101828
}

.srcb-form-heading {
  margin: 1.5rem 0 0.5rem;
}

.srcb-form-heading-description {
  margin: 0 0 1rem;
}

.srcb-form-paragraph {
  margin: 0 0 1rem;
}

.srcb-quiz-question {
  margin: 0 0 8px;
}

.srcb-row.submit{
	display: flex;
	justify-content: center;
}
.srcb-submit{
	display: flex;
	justify-content: center;
}

.srcb-field-description {
    font-size: 0.9rem;
    line-height: 1.5;
    color: #666;
}
.srcb-field-description p {
    margin: 0 0 8px;
}
.srcb-field-description p:last-child {
    margin-bottom: 0;
}

.flatpickr-current-month{
	display: flex;
	gap: 10px;
}

.srcb-spinner {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255,255,255,0.4);
    border-top-color: #fff;
    border-radius: 50%;
    animation: srcb-spin 0.6s linear infinite;
    margin-right: 6px;
    vertical-align: middle;
}

@keyframes srcb-spin {
    to { transform: rotate(360deg); }
}

.srcb-submit button.is-loading {
    opacity: 0.8;
    pointer-events: none;
}