.abpg-shell{--navy:#163b27;--blue:#277a39;--orange:#79be32;--ink:#23352a;--muted:#627568;--bg:#f5f9f1;--white:#fff;--line:#e2ebdd;--shadow:0 18px 50px rgba(22,59,39,.12);font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);line-height:1.6;}
.abpg-shell *{box-sizing:border-box}.abpg-shell a{text-decoration:none;color:inherit}
.abpg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.abpg-card{margin:0;background:white;border:1px solid #e2ebdd;border-radius:18px;overflow:hidden}.abpg-card a{display:block}.abpg-card img{display:block;width:100%;height:230px;object-fit:cover}.abpg-card figcaption{padding:16px;color:#23352a}.abpg-dialog{padding:0;border:0;border-radius:14px;width:min(1100px,96vw);max-width:96vw;background:#102a1c;color:white}.abpg-dialog::backdrop{background:rgba(0,0,0,.9)}.abpg-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px}.abpg-toolbar button{background:#18344e;color:white;border:1px solid #627568;border-radius:8px;padding:10px;cursor:pointer}.abpg-toolbar span{flex:1}.abpg-stage{height:70vh;overflow:auto;display:flex}.abpg-stage img{width:100%;height:100%;object-fit:contain;margin:auto;max-width:none}.abpg-stage.zoomed img{width:200%;height:auto;flex-shrink:0;margin:0}.abpg-caption{padding:12px;margin:0}.abpg-dialog button:focus-visible,.abpg-card a:focus-visible{outline:3px solid #79be32;outline-offset:2px}.abpg-help{color:#627568;font-size:14px}@media(max-width:850px){.abpg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.abpg-grid{grid-template-columns:1fr}}
.abpg-details{padding:20px}.abpg-details h3{margin:0 0 8px}.abpg-description{white-space:normal;overflow-wrap:anywhere;color:#627568}.abpg-price{font-weight:800;color:#277a39;font-size:24px}.abpg-payment{font-size:13px;overflow-wrap:anywhere}.abpg-upload{padding:32px;margin-top:40px;background:white;border:1px solid #e2ebdd;border-radius:18px}.abpg-form{display:grid;gap:18px;max-width:680px}.abpg-form label{display:grid;gap:6px;font-weight:600}.abpg-form input,.abpg-form textarea{width:100%;font:inherit;padding:12px;border:1px solid #bcc9d6;border-radius:8px}.abpg-form button{cursor:pointer;justify-self:start}.abpg-upload-preview{width:200px;height:150px;object-fit:contain}.abpg-upload-preview[hidden]{display:none}.abpg-notice{padding:15px;background:#e9f4ff;border-radius:8px}.abpg-form-error{color:#a32b21}.abpg-pagination{display:flex;gap:15px;margin-top:25px}.abpg-pagination .current{font-weight:bold;color:#277a39}@media(max-width:500px){.abpg-upload{padding:20px}}

.abpg-shell .abpg-card{background:var(--white);border-color:var(--line);box-shadow:0 8px 30px rgba(22,59,39,.06)}.abpg-shell .abpg-card h3{color:var(--navy)}.abpg-shell .abpg-description{color:var(--muted)}.abpg-shell .abpg-price{color:var(--blue)}.abpg-shell .btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 19px;border-radius:10px;font-weight:800;border:1px solid transparent}.abpg-shell .primary{background:var(--orange);color:#1d2730}.abpg-shell .abpg-upload{background:var(--white);border-color:var(--line)}

/* Product Gallery styling using the supplied page palette */
.abpg-shell{width:100%;max-width:1140px;margin:0 auto;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink)}.abpg-shell .abpg-grid{gap:24px}.abpg-shell .abpg-card{border-radius:18px;overflow:hidden;transition:box-shadow .2s,transform .2s}.abpg-shell .abpg-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.abpg-shell .abpg-upload{border-top:4px solid var(--orange);padding:32px;box-shadow:0 8px 30px rgba(22,59,39,.06)}.abpg-shell .abpg-upload h2{font-family:inherit;color:var(--navy);font-size:32px;line-height:1.2;margin:0 0 16px}.abpg-shell .abpg-form{max-width:none}.abpg-shell .abpg-form input,.abpg-shell .abpg-form textarea{background:var(--white);color:var(--ink);border-color:var(--line);min-height:48px}.abpg-shell .abpg-form input:focus,.abpg-shell .abpg-form textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.abpg-shell .abpg-form input[type=file]::file-selector-button{background:var(--navy);color:white;border:0;border-radius:6px;padding:10px 14px;margin-right:12px;cursor:pointer}.abpg-shell .abpg-form button:disabled{opacity:.65;cursor:wait}.abpg-shell .abpg-upload-preview{width:min(100%,360px);height:240px;border-radius:12px;background:var(--bg)}.abpg-shell .abpg-notice{border-left:4px solid var(--blue)}@media(max-width:500px){.abpg-shell .abpg-upload{padding:20px}.abpg-shell .abpg-upload h2{font-size:26px}}

/* Match R2G Wellness theme typography and navy/orange colors. */
.abpg-shell h1,.abpg-shell h2,.abpg-shell h3,.abpg-shell h4,.abpg-shell p,.abpg-shell input,.abpg-shell textarea,.abpg-shell button{font-family:Inter,"Segoe UI",Arial,sans-serif!important}
.abpg-shell .abpg-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),360px));justify-content:center;align-items:stretch;gap:24px}
.abpg-shell .abpg-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e2ebdd;border-top:4px solid #79be32;border-radius:18px;box-shadow:0 8px 30px rgba(22,59,39,.06)}
.abpg-shell .abpg-card>a img{height:280px;width:100%;object-fit:contain;background:#f5f9f1}
.abpg-shell .abpg-details{padding:24px;display:flex;flex-direction:column;flex:1}
.abpg-shell .abpg-details h3{font-size:21px;font-weight:800;line-height:1.35;color:#163b27;margin:0 0 12px}
.abpg-shell .abpg-description{font-size:14px;line-height:1.7;color:#627568;margin:0 0 18px}
.abpg-shell .abpg-price{font-size:26px;color:#277a39;margin:auto 0 20px;padding-top:10px;font-weight:800}
.abpg-shell .abpg-buy-form{margin:0}.abpg-shell .abpg-buy{width:100%;font-size:16px;line-height:1.4;border:0;background:#79be32;color:#23352a;cursor:pointer;padding:14px 20px;border-radius:10px;font-weight:800}
.abpg-shell .abpg-buy:hover{background:#c5e990}.abpg-shell .abpg-buy:disabled{opacity:.55;cursor:not-allowed}
.abpg-shell .abpg-view-details{color:#277a39;text-align:center;font-size:14px;margin-top:12px;text-decoration:underline}
.abpg-shell .abpg-setup-note{font-size:13px;color:#627568;margin:12px 0 0}

/* Keep product images consistent on the homepage and Gallery page. */
.abpg-shell .abpg-card>a{display:block;margin:0;overflow:hidden;border-radius:14px;background:#f5f9f1}
.abpg-shell .abpg-card>a img{display:block;width:100%;height:280px;object-fit:contain;background:#f5f9f1;border-radius:14px;box-shadow:none;margin:0}

.abpg-shell .abpg-quantity-label{display:grid;gap:6px;font-weight:600;margin:0 0 12px}.abpg-shell .abpg-quantity{width:100%;font:inherit;border:1px solid #bcc9d6;border-radius:8px;padding:10px}.abpg-shell .abpg-total{font-weight:800;color:#277a39;font-size:22px;margin:0 0 20px}.abpg-shell .abpg-price{margin:12px 0;font-size:20px}.abpg-shell .abpg-form-total{background:#eef6fc}

.abpg-edit-form{display:grid;gap:18px;max-width:680px}.abpg-edit-form label{display:grid;gap:6px}.abpg-edit-form input,.abpg-edit-form textarea{width:100%;padding:12px;font:inherit;border:1px solid #bcc9d6;border-radius:8px}.abpg-manage-list{display:grid;gap:16px}.abpg-manage-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:18px;border:1px solid #e2ebdd;border-radius:12px}.abpg-manage-row strong{flex:1;min-width:180px}.abpg-delete-form{margin:0}.abpg-delete{background:#a32b21;color:white;border:0;border-radius:10px;padding:13px 19px;font:inherit;cursor:pointer}

.abpg-payment-qr{display:block;width:min(100%,450px)!important;height:auto!important;object-fit:contain;margin:20px auto}.abpg-qr-payment{max-width:760px;margin:0 auto}

.abpg-table-wrap{overflow-x:auto;margin:20px 0 28px}.abpg-summary{width:100%;border-collapse:collapse;text-align:left;font-size:15px}.abpg-summary caption{text-align:left;color:#627568;padding-bottom:12px}.abpg-summary th,.abpg-summary td{padding:14px;border-bottom:1px solid #e2ebdd;vertical-align:top}.abpg-summary thead{background:#163b27;color:white}.abpg-summary tfoot{background:#eef6fc;color:#277a39;font-weight:800}.abpg-summary tbody th{overflow-wrap:anywhere}

.abpg-cart-thumb{display:block;width:72px!important;height:72px!important;object-fit:contain;margin-bottom:8px}.abpg-summary input[type=number]{width:85px;padding:8px;border:1px solid #bac9d7;border-radius:6px}.abpg-cart-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.abpg-cart-actions .btn{width:auto}.abpg-summary th,.abpg-summary td{vertical-align:middle}

.abpg-shopping-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:18px 0}.abpg-cart-feedback{flex:1;min-width:180px;margin:0}.abpg-buy:disabled{opacity:.7;cursor:wait}
