/* Keep 2.0.7 layout and image box */
:root{ --ptlc-primary: var(--primary-color, #2f6bff); --ptlc-text:#1d2433; --ptlc-muted:#6c757d; --ptlc-bg:#fff; --ptlc-border:#e9eef5; --ptlc-radius:16px; }
.ptlc-grid{ display:grid; gap:24px; grid-template-columns:repeat(3,minmax(0,1fr)); justify-content:center; }
@media (max-width:1199.98px){ .ptlc-grid{ grid-template-columns:repeat(2,minmax(280px,1fr)); } }
@media (max-width:767.98px){ .ptlc-grid{ grid-template-columns:1fr; } }
.ptlc-card{ background:var(--ptlc-bg); border:1px solid var(--ptlc-border); border-radius:var(--ptlc-radius); padding:24px; text-align:center; display:flex; flex-direction:column; align-items:center; gap:12px; transition:.2s ease; box-shadow:0 6px 20px rgba(47,107,255,.06); width:100%; max-width:560px; margin-inline:auto; }
.ptlc-card:hover{ transform:translateY(-2px); box-shadow:0 18px 40px rgba(47,107,255,.08) }
.ptlc-imgbox{ width:100%; height:160px; display:flex; align-items:center; justify-content:center; }
.ptlc-img{ max-height:100%; max-width:100%; width:auto; height:auto; object-fit:contain; }
.ptlc-title{ font-weight:800; font-size:20px; color:var(--ptlc-text); }
.ptlc-price{ display:flex; align-items:center; gap:8px; font-size:14px; color:var(--ptlc-muted); }
.ptlc-number{ font-size:32px; font-weight:900; color:var(--ptlc-text); }
.ptlc-unit{ opacity:.85 }
.ptlc-select-wrap{ width:100%; text-align:right }
.ptlc-select-label{ display:block; font-size:12px; color:var(--ptlc-muted); margin-bottom:6px; }
.ptlc-select{ width:100%; padding:10px 12px; border-radius:12px; border:1px solid var(--ptlc-border); background:#fff; color:var(--ptlc-text); }
.ptlc-select:focus{ outline:0; box-shadow:0 0 0 3px rgba(47,107,255,.15) }
.ptlc-btn{ display:inline-flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; padding:10px 16px; border-radius:12px; text-decoration:none; color:#fff; background:var(--ptlc-primary); }
.ptlc-btn:hover{ opacity:.95 }
.ptlc-btn.ptlc-disabled{ opacity:.55; cursor:not-allowed; pointer-events:none; }
.ptlc-features{ list-style:none; padding:0; margin:8px 0 0 0; text-align:right; width:100%; }
.ptlc-features li{ padding:8px 0; border-bottom:1px dashed var(--ptlc-border); }
.ptlc-features li:last-child{ border-bottom:0 }
.ptlc-card .ptlc-btn:visited, .ptlc-card .ptlc-order:visited{ color:#fff !important; background:var(--ptlc-primary) !important; text-decoration:none !important; }
@media (max-width:575.98px){ .ptlc-imgbox{ height:120px; } .ptlc-number{ font-size:28px; } }
