.fkp-form{margin-top:14px;max-width:520px}
.fkp-field{margin:0 0 18px}
.fkp-label{display:block;font-weight:700;margin:0 0 8px;font-size:15px}

/* Design swatches */
.fkp-designs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.fkp-design{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;border:2px solid #e3e3e3;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s;text-align:center}
.fkp-design:hover{border-color:#c9c9c9}
.fkp-design.is-selected{border-color:#111;box-shadow:0 0 0 1px #111}
.fkp-design-img{width:100%;aspect-ratio:1/1;border-radius:6px;background-size:cover;background-position:center;background-color:#f4f4f4}
.fkp-design-name{font-size:12.5px;line-height:1.2;color:#222}
.fkp-design-name small{color:#e0592a;font-weight:700}
.fkp-own-icon{display:flex;align-items:center;justify-content:center;font-size:30px;color:#e0592a;background:#fff5f0;border:1px dashed #f0b499}

/* Upload */
.fkp-upload-box{border:1px dashed #cbcbcb;border-radius:10px;padding:14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.fkp-upload-state{font-size:13px;color:#444;display:flex;align-items:center;gap:8px}
.fkp-upload-state img{width:40px;height:40px;object-fit:cover;border-radius:6px}
.fkp-upload-state.is-ok{color:#1f7a34;font-weight:600}
.fkp-upload-state.is-err{color:#b32d2e;font-weight:600}

/* Size radio cards / upsell */
.fkp-size-options{display:grid;gap:10px}
.fkp-size-card{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:14px 15px;border:1px solid #d9d9d9;border-radius:12px;background:#fff;cursor:pointer;box-sizing:border-box;transition:border-color .15s,box-shadow .15s,transform .15s,background .15s}
.fkp-size-card:hover{border-color:#aaa;transform:translateY(-1px)}
.fkp-size-card input{position:absolute;opacity:0;pointer-events:none}
.fkp-radio-dot{width:20px;height:20px;border:2px solid #aaa;border-radius:50%;box-sizing:border-box;position:relative;transition:.15s}
.fkp-size-card.is-selected{border-color:#111;box-shadow:0 0 0 1px #111}
.fkp-size-card.is-selected .fkp-radio-dot{border-color:#111}
.fkp-size-card.is-selected .fkp-radio-dot:after{content:"";position:absolute;inset:4px;border-radius:50%;background:#111}
.fkp-size-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.fkp-size-topline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fkp-size-name{font-size:15px;line-height:1.15;color:#171717}
.fkp-size-badge{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border-radius:999px;background:#f1f1f1;color:#555;font-size:10.5px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.02em}
.fkp-size-upsell{font-size:12px;line-height:1.25;color:#777}
.fkp-size-upsell .woocommerce-Price-amount{font-weight:700;color:inherit}
.fkp-size-price{display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap;text-align:right}
.fkp-size-price del{font-size:12px;color:#999;font-weight:500}
.fkp-size-price strong{font-size:16px;color:#111}
.fkp-size-card.is-upsell{border-color:#d4d4d4}
.fkp-size-card.is-recommended{border-width:2px;background:linear-gradient(90deg,#fff 0%,#fff9f5 100%)}
.fkp-size-card.is-recommended .fkp-size-badge{background:#e0592a;color:#fff}
.fkp-size-card.is-largest{background:#fafafa}
.fkp-size-card.is-largest .fkp-size-badge{background:#111;color:#fff}
@media(max-width:480px){
	.fkp-size-card{grid-template-columns:20px minmax(0,1fr) auto;gap:9px;padding:12px 11px}
	.fkp-radio-dot{width:18px;height:18px}
	.fkp-size-name{font-size:14px}
	.fkp-size-badge{font-size:9px;padding:3px 6px}
	.fkp-size-upsell{font-size:11px}
	.fkp-size-price strong{font-size:14px}
	.fkp-size-price del{font-size:11px}
}

/* Price line */
.fkp-price-line{display:flex;align-items:baseline;gap:10px;margin:4px 0 16px}
.fkp-price{font-size:26px;font-weight:800;color:#111}
.fkp-compare{font-size:16px;color:#9a9a9a;text-decoration:line-through}
.fkp-fee-note{font-size:12px;color:#e0592a;font-weight:600}

.fkp-submit{width:100%;padding:14px 18px !important;font-size:16px !important;font-weight:700 !important}

/* USP block */
.fkp-usp{margin:26px 0;padding:22px;border:1px solid #eee;border-radius:14px;background:#fafafa}
.fkp-usp h3{margin:0 0 14px;font-size:18px}
.fkp-usp ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fkp-usp li{display:flex;align-items:center;gap:12px;font-size:15px}
.fkp-usp-ic{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#e0592a;color:#fff;font-size:20px;flex:0 0 42px}
@media(max-width:600px){.fkp-usp ul{grid-template-columns:1fr}}

/* Hide any Probo configurator injected on our products (belt-and-suspenders with the PHP dequeue) */
connect-product-configurator,
.connect-product-configurator,
.probo-configurator,
.probo-connect-configurator,
.connect-product-configurator__wrapper{display:none !important}

/* optional own-photo clear link (alongside mode) */
.fkp-upload-clear{font-size:12px;color:#b32d2e;text-decoration:underline;margin-left:4px}
