.pfa-configurator{--pfa-brown:#4b2d20;--pfa-gold:#a46e35;--pfa-border:#e7d7c8;display:block!important;max-width:none!important;margin:18px 0 30px!important;color:var(--pfa-brown);font-family:Arial,sans-serif}
.pfa-configurator *{box-sizing:border-box}.pfa-config-head{margin-bottom:26px}.pfa-eyebrow{color:#9b6937;font-size:11px;font-weight:800;letter-spacing:.17em}.pfa-config-head h2{font:700 clamp(24px,2.4vw,33px)/1.2 Georgia,serif;margin:10px 0;color:#4b2d20}.pfa-config-head p{font-size:14px;line-height:1.6;color:#76685e;margin:0}
.pfa-choice-group{padding:0;margin:0 0 28px;border:0;min-width:0}.pfa-choice-group legend,.pfa-choice-group h3{font-size:17px;font-weight:800;display:flex;align-items:center;gap:10px;padding:0;margin:0 0 14px;color:#4b2d20}.pfa-step{display:inline-grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#f4e9db;color:#8d5d2f;font-size:12px;font-family:Arial,sans-serif}
.pfa-style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.pfa-style-card,.pfa-format-card{position:relative;cursor:pointer;display:block!important;margin:0!important;font-weight:400!important}.pfa-style-card>input,.pfa-format-card>input{position:absolute;opacity:0;width:1px;height:1px;left:50%}.pfa-card-body{position:relative;display:block;overflow:hidden;background:#fff;border:2px solid var(--pfa-border);border-radius:13px;transition:border-color .2s,box-shadow .2s,transform .2s}.pfa-style-card:hover .pfa-card-body{transform:translateY(-2px);box-shadow:0 9px 25px #59341812}.pfa-style-card input:checked+.pfa-card-body{border-color:#a46e35;box-shadow:0 0 0 3px #e9d2b9}.pfa-style-card input:focus-visible+.pfa-card-body,.pfa-format-card input:focus-visible+.pfa-format-inner{outline:3px solid #987047;outline-offset:3px}.pfa-card-body img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#f6eee6}.pfa-style-title{display:block;text-align:center;padding:10px 4px;font-size:12px;font-weight:700;line-height:1.3}.pfa-card-check{display:none;position:absolute;right:7px;top:7px;width:23px;height:23px;border-radius:50%;background:#a46e35;color:#fff;text-align:center;line-height:23px;font-size:13px}.pfa-style-card input:checked+.pfa-card-body .pfa-card-check{display:block}
.pfa-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pfa-format-inner{display:flex;flex-direction:column;gap:5px;min-height:98px;padding:14px;background:#fff;border:2px solid var(--pfa-border);border-radius:12px;transition:background .2s,border-color .2s}.pfa-format-card input:checked+.pfa-format-inner{border-color:#a46e35;background:#fbf4ec}.pfa-format-inner strong{font-size:14px}.pfa-format-inner small{font-size:12px;color:#87776a}.pfa-format-price{font-size:15px;font-weight:800;color:#865322;margin-top:auto}
.pfa-configurator .pfa-field{display:block!important;font-size:13px;font-weight:700;margin:0 0 15px}.pfa-configurator .pfa-field input,.pfa-configurator .pfa-field textarea{display:block;width:100%;padding:13px 14px;margin-top:8px;background:#fff;border:1px solid #dfcbbb;border-radius:10px;color:#422c22;font:14px Arial,sans-serif;resize:vertical}.pfa-configurator .pfa-field :is(input,textarea):focus{outline:2px solid #cba97e;outline-offset:1px}
.pfa-configurator .pfa-upload{border:2px dashed #d6bda4;border-radius:15px;padding:22px 15px;text-align:center;background:#fcf8f4;display:flex!important;align-items:center;flex-direction:column;gap:7px;cursor:pointer;font-weight:400}.pfa-upload-icon{font-size:25px;color:#9d6934}.pfa-upload strong{font-size:14px}.pfa-upload>span:not(.pfa-upload-icon){font-size:12px;color:#75675c}.pfa-upload input{width:100%;max-width:270px;font-size:12px;margin:8px auto 0}.pfa-upload-preview{display:block;width:100%;max-width:180px;max-height:150px;object-fit:contain;border-radius:10px;margin-top:8px}.pfa-upload-preview[hidden]{display:none}
.pfa-checkout-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f6ede3;border:1px solid #e9d5bf;border-radius:15px;padding:18px}.pfa-checkout-bar>div{display:flex;flex-direction:column;gap:4px}.pfa-checkout-bar>div>span{font-size:12px;color:#6d5d50}.pfa-live-price{font:700 28px Georgia,serif;color:#5d341d}.pfa-checkout-bar small{font-size:10px;color:#806d60}.pfa-configurator .pfa-checkout-bar button{border:0;border-radius:10px;padding:14px 18px;min-height:48px;background:#80501f;color:#fff;font-weight:700;cursor:pointer;font-size:13px;white-space:nowrap}.pfa-configurator .pfa-checkout-bar button:hover{background:#603a18}.pfa-disclaimer{font-size:11px;color:#897b70;line-height:1.6;margin:12px 0 0}
@media(max-width:900px){.pfa-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.pfa-checkout-bar{align-items:stretch;flex-direction:column}.pfa-configurator .pfa-checkout-bar button{width:100%}.pfa-style-grid{gap:8px}.pfa-style-title{font-size:11px}.pfa-format-inner{padding:11px;min-height:108px}}

/* v1.0.5: compact product preview, synced to selected portrait style */
@media(min-width:768px){
 .pfa-shop-shell .product .woocommerce-product-gallery{width:36%!important;max-width:36%!important;float:left!important;margin-right:4%!important}
 .pfa-shop-shell .product .summary{width:60%!important;float:right!important;clear:none!important}
}
.pfa-shop-shell .pfa-dynamic-gallery .woocommerce-product-gallery__image{background:#fbf7f2;border-radius:14px;overflow:hidden;text-align:center}
.pfa-shop-shell .pfa-dynamic-gallery .woocommerce-product-gallery__image img{display:block!important;width:100%!important;height:clamp(250px,29vw,390px)!important;max-height:390px!important;object-fit:contain!important;object-position:center!important;margin:auto!important}
.pfa-shop-shell .pfa-dynamic-gallery .woocommerce-product-gallery__trigger{display:none!important}
@media(max-width:767px){.pfa-shop-shell .product .woocommerce-product-gallery{width:100%!important;max-width:100%!important;float:none!important}.pfa-shop-shell .pfa-dynamic-gallery .woocommerce-product-gallery__image img{height:280px!important}}

/* v1.0.6 – seven style thumbnails directly below the main gallery image */
.pfa-shop-shell .pfa-gallery-with-styles .pfa-style-choice{clear:both!important;width:100%;margin:16px 0 22px!important;padding:0!important;border:0!important;min-width:0}
.pfa-shop-shell .pfa-gallery-with-styles .pfa-style-choice legend{font-size:14px!important;margin-bottom:10px!important;display:flex;align-items:center;gap:8px}
.pfa-shop-shell .pfa-gallery-with-styles .pfa-style-choice .pfa-step{width:26px;height:26px;font-size:11px}
.pfa-shop-shell .pfa-gallery-with-styles .pfa-style-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:5px!important;overflow:visible}
.pfa-shop-shell .pfa-gallery-with-styles .pfa-card-body{border-radius:8px!important;border-width:2px!important}
.pfa-shop-shell .pfa-gallery-with-styles .pfa-card-body img{width:100%!important;aspect-ratio:1/1!important;height:auto!important;object-fit:cover!important}
.pfa-shop-shell .pfa-gallery-with-styles .pfa-style-title{font-size:9px!important;line-height:1.2!important;padding:6px 1px!important;overflow-wrap:anywhere}
.pfa-shop-shell .pfa-gallery-with-styles .pfa-card-check{width:16px;height:16px;line-height:16px;font-size:10px;right:3px;top:3px}
@media(max-width:767px){
 .pfa-shop-shell .pfa-gallery-with-styles .pfa-style-grid{display:flex!important;overflow-x:auto!important;scroll-snap-type:x proximity;gap:8px!important;padding:3px 2px 12px;scrollbar-width:thin}
 .pfa-shop-shell .pfa-gallery-with-styles .pfa-style-card{flex:0 0 82px;scroll-snap-align:start}
 .pfa-shop-shell .pfa-gallery-with-styles .pfa-style-title{font-size:10px!important}
}

/* v1.0.16: photo quality feedback and live order summary */
.pfa-configurator .pfa-photo-quality{display:block;font-size:12px;line-height:1.5;margin-top:6px;font-weight:600}
.pfa-configurator .pfa-quality-good{color:#236344}.pfa-configurator .pfa-quality-warning{color:#90641d}.pfa-configurator .pfa-quality-error{color:#ae3434}
.pfa-configurator .pfa-order-summary{background:#fff;border:1px solid #e7d7c8;border-radius:15px;padding:18px;margin:0 0 16px}
.pfa-configurator .pfa-order-summary h3{font:700 20px Georgia,serif;color:#4b2d20;margin:0 0 12px}
.pfa-configurator .pfa-order-summary dl{margin:0}.pfa-configurator .pfa-order-summary dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid #f1e8df}
.pfa-configurator .pfa-order-summary dt{font-size:13px;color:#77675b}.pfa-configurator .pfa-order-summary dd{font-size:13px;font-weight:700;color:#4b2d20;margin:0;text-align:right;overflow-wrap:anywhere;max-width:65%}
.pfa-configurator .pfa-order-summary .pfa-summary-total{border-bottom:0;padding-top:14px}.pfa-configurator .pfa-summary-total dd{font-size:20px;color:#80501f}
.pfa-configurator .pfa-summary-hint{font-size:11px;line-height:1.5;color:#796b5e;margin:8px 0 0}
.pfa-configurator .pfa-checkout-bar button:disabled{opacity:.5;cursor:not-allowed}
