.ph-konf{padding-top:1rem;padding-bottom:3rem}
.ph-konf-title{margin-bottom:.25rem}.ph-konf-intro{color:#55667a;max-width:48rem}
.ph-steps{display:flex;gap:.4rem;flex-wrap:wrap;margin:1.2rem 0 1rem}
.ph-step{flex:1 1 140px;border:1px solid #d6dee6;border-radius:8px;padding:.5rem .7rem;font-size:.85rem;background:#fff;color:#55667a;cursor:pointer}
.ph-step.is-active{border-color:#0f3d5e;background:#0f3d5e;color:#fff}.ph-step.is-done{border-color:#0f3d5e;color:#0f3d5e}
.ph-step b{display:block;font-size:.7rem;opacity:.8}
.ph-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:1.5rem;align-items:start}
@media(max-width:991px){.ph-layout{grid-template-columns:1fr}}
.ph-preview{position:sticky;top:1rem;background:#f4f7fa;border:1px solid #d6dee6;border-radius:12px;padding:1rem;text-align:center}
.ph-preview canvas{max-width:100%;height:auto;background:#fff;border-radius:8px}
.ph-preview-caption{font-size:.8rem;color:#55667a;margin-top:.5rem}
.ph-panel{background:#fff;border:1px solid #d6dee6;border-radius:12px;padding:1.2rem}
.ph-panel h2{font-size:1.15rem;margin-bottom:.8rem;color:#0f3d5e}
.ph-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.7rem}
.ph-card{border:2px solid #d6dee6;border-radius:10px;padding:.6rem;cursor:pointer;background:#fff;text-align:center;transition:border-color .15s}
.ph-card:hover{border-color:#0f3d5e}.ph-card.is-selected{border-color:#f58220;box-shadow:0 0 0 3px rgba(245,130,32,.18)}
.ph-card img{width:100%;height:90px;object-fit:contain;margin-bottom:.4rem}
.ph-card .ph-ico{height:90px;display:flex;align-items:center;justify-content:center;margin-bottom:.4rem}
.ph-card span{font-size:.85rem;font-weight:600;color:#1b2733;display:block}
.ph-opts{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.ph-opt{border:2px solid #d6dee6;border-radius:999px;padding:.35rem .9rem;font-size:.9rem;cursor:pointer;background:#fff}
.ph-opt.is-selected{border-color:#f58220;background:#fff4ea}
.ph-label{font-weight:700;font-size:.9rem;margin:.7rem 0 .35rem;color:#1b2733}
.ph-swatches{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem}
.ph-swatch{width:34px;height:34px;border-radius:50%;border:2px solid #d6dee6;cursor:pointer;position:relative}
.ph-swatch.is-selected{border-color:#f58220;box-shadow:0 0 0 3px rgba(245,130,32,.25)}
.ph-swatch[title]{}
.ph-range{width:100%}
.ph-file{border:2px dashed #d6dee6;border-radius:10px;padding:1.2rem;text-align:center;cursor:pointer;background:#f9fbfd}
.ph-file.is-drag{border-color:#f58220}
.ph-file input{display:none}
.ph-input{width:100%;border:1px solid #d6dee6;border-radius:8px;padding:.5rem .7rem}
.ph-qty{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem}
.ph-price{background:#f4f7fa;border-radius:10px;padding:1rem;margin-top:1rem}
.ph-price .ph-unit{font-size:1rem;color:#55667a}.ph-price .ph-total{font-size:1.7rem;font-weight:800;color:#0f3d5e}
.ph-price small{display:block;color:#55667a;margin-top:.4rem;font-size:.78rem}
.ph-nav{display:flex;justify-content:space-between;gap:.5rem;margin-top:1rem}
.ph-btn{border:0;border-radius:8px;padding:.65rem 1.2rem;font-weight:700;cursor:pointer;background:#0f3d5e;color:#fff}
.ph-btn.ph-btn-buy{background:#f58220;font-size:1.05rem}.ph-btn.ph-btn-ghost{background:#fff;color:#0f3d5e;border:2px solid #0f3d5e}
.ph-btn:disabled{opacity:.5;cursor:default}
.ph-summary{font-size:.85rem;color:#55667a;margin-top:.6rem}
html[dir=rtl] .ph-layout{direction:rtl}
.ph-layout.ph-single{grid-template-columns:1fr}
