/* lpknit Forms — frontend (editorial, neutral; inherits brand where present) */
.lpk-form{--lpk-accent:#1c1a18;--lpk-border:#dcdcdc;--lpk-err:#c0392b;max-width:100%;margin:0;}
.lpk-form *{box-sizing:border-box;}
.lpk-form-title{font-size:20px;font-weight:600;margin:0 0 18px;color:#1c1a18;}
.lpk-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;}
.lpk-field{display:flex;flex-direction:column;gap:6px;min-width:0;}
.lpk-field.lpk-field-wide{grid-column:1 / -1;}
.lpk-field label{font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:#6b6660;}
.lpk-form .lpk-req{color:var(--lpk-err);}
.lpk-field input,
.lpk-field select,
.lpk-field textarea{
	width:100%;padding:12px 14px;font-size:15px;color:#1c1a18;background:#fff;
	border:1px solid var(--lpk-border);border-radius:2px;line-height:1.4;
	transition:border-color .2s ease,box-shadow .2s ease;font-family:inherit;
}
.lpk-field textarea{resize:vertical;min-height:120px;}
.lpk-field input:focus,
.lpk-field select:focus,
.lpk-field textarea:focus{outline:none;border-color:var(--lpk-accent);box-shadow:0 0 0 3px rgba(28,26,24,.08);}
.lpk-field.lpk-invalid input,
.lpk-field.lpk-invalid select,
.lpk-field.lpk-invalid textarea{border-color:var(--lpk-err);box-shadow:0 0 0 3px rgba(192,57,43,.08);}
.lpk-check{flex-direction:row!important;align-items:flex-start;gap:10px;text-transform:none!important;font-weight:400!important;letter-spacing:0!important;color:#444!important;font-size:14px;}
.lpk-check input{width:auto;margin-top:2px;}
.lpk-form-foot{display:flex;align-items:center;gap:14px;margin-top:20px;}
.lpk-form-submit{
	display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
	background:var(--lpk-accent);color:#fff;border:1px solid var(--lpk-accent);border-radius:0;
	padding:15px 34px;font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;
	font-family:inherit;
}
/* 提交按钮: 悬停 / 聚焦 / 点击(active) / 提交中 都保持原样, 不产生任何视觉变化。
   用 !important 确保不被主题(Blocksy) / Elementor 的按钮 hover/focus/outline 规则覆盖,
   并关闭 transition / filter / outline, 杜绝任何动画或描边。 */
.lpk-form-submit,
.lpk-form-submit:hover,
.lpk-form-submit:focus,
.lpk-form-submit:focus-visible,
.lpk-form-submit:focus-within,
.lpk-form-submit:active,
.lpk-form-submit[disabled]{
	background:var(--lpk-accent)!important;background-image:none!important;color:#fff!important;
	border-color:var(--lpk-accent)!important;opacity:1!important;box-shadow:none!important;
	outline:none!important;transform:none!important;filter:none!important;transition:none!important;
}
.lpk-form-submit[disabled]{cursor:default;}
.lpk-form-spin{font-size:13px;color:#9a948b;letter-spacing:2px;}
.lpk-form-overlay{
	position:fixed;inset:0;z-index:100100;
	display:flex;align-items:center;justify-content:center;
	background:rgba(28,26,24,.42);
	backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
	opacity:0;visibility:hidden;pointer-events:none;
	transition:opacity .2s ease,visibility .2s ease;
}
.lpk-form-overlay.is-on{opacity:1;visibility:visible;pointer-events:auto;}
.lpk-form-overlay-card{
	display:flex;flex-direction:column;align-items:center;gap:16px;
	background:#fff;padding:36px 42px;border-radius:2px;
	box-shadow:0 18px 50px rgba(28,26,24,.22);min-width:220px;
}
.lpk-form-overlay-spin{
	width:36px;height:36px;border-radius:50%;
	border:2px solid #e8e4de;border-top-color:#1c1a18;
	animation:lpk-form-spin .7s linear infinite;
}
.lpk-form-overlay-txt{
	margin:0;font-size:13px;font-weight:600;letter-spacing:1.4px;
	text-transform:uppercase;color:#1c1a18;
}
@keyframes lpk-form-spin{to{transform:rotate(360deg);}}
body.lpk-form-sending{overflow:hidden;}
.lpk-form-msg{margin-top:16px;padding:14px 16px;border-radius:2px;font-size:14px;line-height:1.5;}
.lpk-form-msg.is-ok{background:#eef5ea;border:1px solid #cfe3c3;color:#3a5a2c;}
.lpk-form-msg.is-err{background:#fdeceb;border:1px solid #f3c9c5;color:#9b2c22;}
@media (max-width:560px){
	.lpk-form-grid{grid-template-columns:1fr;}
	.lpk-form-submit{width:100%;}
}
