.szw-shortcode-wrap{
	width:100%;
	margin:2rem 0;
}

.szw-shortcode-layout{
	width:100%;
}

.szw-shortcode-layout--split{
	display:grid;
	grid-template-columns:minmax(0,66fr) minmax(300px,34fr);
	gap:clamp(24px,4vw,56px);
	align-items:start;
}

.szw-shortcode-layout--single{
	max-width:760px;
}


.szw-shortcode-layout--single .szw-form-wrap > .szw-intro{
	padding-bottom:1.25rem;
	margin-bottom:1.25rem;
	border-bottom:1px solid #e5e7eb;
}

.szw-layout__content,
.szw-layout__form{
	min-width:0;
}

.szw-layout__form .szw-form-wrap{
	margin:0;
}

.szw-form-wrap{
	padding:1.5rem;
	border:1px solid #e5e5e5;
	border-radius:12px;
	background:#fff;
	box-sizing:border-box;
}

.szw-form p{
	margin:0 0 1rem;
}

.szw-form label{
	display:block;
	font-weight:600;
	margin-bottom:.35rem;
}

.szw-form input[type=text],
.szw-form input[type=email],
.szw-form input[type=number],
.szw-form textarea{
	width:100%;
	max-width:100%;
	box-sizing:border-box;
}

.szw-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
}

.szw-items{
	display:grid;
	gap:.75rem;
	margin:1rem 0;
}

.szw-item{
	display:grid;
	gap:.75rem;
	padding:1rem;
	border:1px solid #ddd;
	border-radius:10px;
	background:#fff;
}

.szw-item.is-disabled{
	opacity:.65;
	background:#fafafa;
}

.szw-item__select{
	display:flex!important;
	align-items:flex-start;
	gap:.65rem;
	margin:0!important;
	line-height:1.35;
}

.szw-item__checkbox{
	flex:0 0 auto;
	margin:.18em 0 0!important;
}

.szw-item__name{
	min-width:0;
	font-weight:700;
	overflow-wrap:anywhere;
}

.szw-item__meta{
	padding-left:calc(1em + .65rem);
	font-size:.92em;
	line-height:1.35;
	color:#555;
}

.szw-item__ordered-qty{
	display:inline-flex;
}

.szw-qty-row{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:.85rem;
	padding-top:.7rem;
	border-top:1px solid #eee;
}

.szw-qty-label{
	margin:0!important;
	font-weight:600;
	line-height:1.3;
}

.szw-qty-input{
	flex:0 0 5.25rem;
	width:5.25rem!important;
	min-height:44px;
	text-align:center;
}

.szw-muted{
	font-size:.92em;
	color:#666;
	margin:.5rem 0 0;
}

.szw-legal-note{
	font-size:.95em;
	color:#555;
}

.szw-notice{
	padding:.85rem 1rem;
	margin:0 0 1rem;
	border-radius:8px;
}

.szw-notice-error{
	background:#fff1f1;
	border:1px solid #ffbdbd;
	color:#7a1e1e;
}

.szw-notice-info{
	background:#f3f7ff;
	border:1px solid #c7d7ff;
}

.szw-notice--countdown{
	display:grid;
	gap:.45rem;
}

.szw-countdown{
	display:inline-flex;
	align-items:center;
	gap:.4rem;
	flex-wrap:wrap;
	font-size:.95em;
}

.szw-countdown__time{
	font-variant-numeric:tabular-nums;
	letter-spacing:.02em;
}

.szw-notice--countdown.is-expired{
	background:#f2fff4;
	border-color:#b7e7bd;
	color:#1f5f2b;
}

.szw-success{
	margin-top:24px;
	padding:1rem;
	background:#f2fff4;
	border:1px solid #b7e7bd;
	border-radius:10px;
}

.szw-intro{
	max-width:70ch;
	margin:0;
}

.szw-intro p{
	margin:0 0 1rem;
}

.szw-intro p:last-child{
	margin-bottom:0;
}

.szw-hp-field{
	position:absolute!important;
	left:-10000px!important;
	top:auto!important;
	width:1px!important;
	height:1px!important;
	overflow:hidden!important;
	opacity:0!important;
}

.szw-captcha-wrap{
	margin:1rem 0;
}

.szw-captcha-wrap:empty{
	display:none;
}

.szw-captcha-disclosure{
	font-size:.82em;
	color:#666;
	margin:.5rem 0 0;
}

.szw-captcha-disclosure a{
	color:inherit;
	text-decoration:underline;
}

.szw-return-button-wrap{
	margin:.75rem 0;
}

.szw-return-button-wrap--align-left{
	text-align:left;
}

.szw-return-button-wrap--align-center{
	text-align:center;
}

.szw-return-button-wrap--align-right{
	text-align:right;
}

.szw-return-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:.35em;
	text-decoration:none;
	line-height:1.2;
	transition:opacity .2s ease,transform .2s ease,box-shadow .2s ease;
}

.szw-return-button:hover,
.szw-return-button:focus{
	opacity:.88;
	text-decoration:none;
}

.szw-return-button:focus{
	outline:2px solid currentColor;
	outline-offset:3px;
}

.szw-return-button--text{
	color:inherit;
	text-decoration:underline;
	text-underline-offset:.18em;
}

.szw-return-button--solid,
.szw-return-button--pill{
	background:#111;
	color:#fff;
	padding:.78em 1.15em;
	font-weight:600;
}

.szw-return-button--solid:hover,
.szw-return-button--solid:focus,
.szw-return-button--pill:hover,
.szw-return-button--pill:focus{
	color:#fff;
}

.szw-return-button--solid{
	border-radius:6px;
}

.szw-return-button--pill{
	border-radius:999px;
	padding:.78em 1.35em;
}

.editor-styles-wrapper .szw-return-button{
	pointer-events:none;
}

@media (max-width:921px){
	.szw-shortcode-layout--split{
		grid-template-columns:1fr;
		gap:1.5rem;
	}

	.szw-shortcode-layout--single,
	.szw-intro{
		max-width:none;
	}
}

@media (max-width:767px){
	.szw-shortcode-wrap{
		margin-top:0;
	}

	.szw-form-wrap{
		padding:1rem;
	}

	.szw-items{
		gap:.65rem;
	}

	.szw-item{
		padding:.9rem;
		gap:.65rem;
	}

	.szw-item__meta{
		padding-left:calc(1em + .65rem);
	}

	.szw-qty-row{
		gap:.6rem;
	}

	.szw-qty-input{
		flex-basis:4.75rem;
		width:4.75rem!important;
	}
}
