.gift-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}.gift-offer{background:#f4f6fa;border:1px solid #dce3ed;border-radius:16px;padding:20px;margin:16px 0;color:#172b4d;overflow-wrap:anywhere}.gift-offer h3{font-size:1.1rem;margin:10px 0}.gift-offer p{line-height:1.5;font-size:.95rem}.gift-offer small{display:block;margin-bottom:12px}.gift-label{display:inline-block;background:#dcf5e6;color:#1c7a44;font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:20px}html body .gift-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#172b4d;color:#fff;border:1px solid #172b4d;border-radius:8px;padding:10px 16px;text-decoration:none;font:inherit;cursor:pointer}html body .gift-button:hover{background:#29456d;color:#fff}html body .gift-button:disabled{opacity:.55;cursor:not-allowed}.gift-button:focus-visible{outline:3px solid #7c9ecb;outline-offset:3px}.gift-form{display:grid;gap:16px;margin-top:18px}.gift-form label{display:grid;gap:6px}.gift-form #giftCustom{display:grid;gap:14px}.gift-form [hidden]{display:none!important}.gift-password{display:flex;gap:8px}.gift-password input{min-width:0}.gift-pagination{display:flex;gap:20px;margin:20px 0}.gifts-admin{font-size:1rem}.gifts-admin h3{font-size:1.25rem}.st-card>.gift-offer{margin:0 18px 18px}

/* Product-style offers, consistent with the subscription catalog. */
html body .gift-product-card { display:flex; flex-direction:column; min-width:0; margin:0; padding:18px; background:#fff; color:#172b4d; border:1px solid #bac9db; border-radius:8px; box-shadow:0 8px 24px rgb(23 43 77 / 8%); height:100%; }
.gift-card-top { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:18px; }
.gift-free { color:#1c7a44; font-size:.8rem; font-weight:700; }
.gift-card-name { display:flex; align-items:center; gap:12px; min-height:54px; margin-bottom:14px; }
.gift-logo { display:block; flex:none; width:48px; height:48px; object-fit:contain; border-radius:10px; background:#fff; }
.gift-logo-placeholder { display:grid; place-items:center; background:#edf2fa; color:#172b4d; font-size:1.4rem; }
html body .gift-card-name h3 { font-family:inherit; font-size:1.1rem; line-height:1.4; font-weight:700; margin:0; }
.gift-cover { display:flex; align-items:center; justify-content:center; aspect-ratio:16/10; width:100%; background:#f1f4f8; border-radius:10px; overflow:hidden; margin:0 0 16px; }
.gift-cover img { width:100%; height:100%; object-fit:contain; }
.gift-cover-empty { color:#c0cbdb; font-size:3rem; }
.gift-product-card p { color:#53647c; margin-bottom:18px; }
.gift-card-bottom { margin-top:auto; }
.gift-card-bottom .gift-button { display:flex; width:100%; box-sizing:border-box; }
.gift-grid { align-items:stretch; grid-template-columns:repeat(3,minmax(0,1fr)); }
#giftCustom .gift-grid,.gift-form .gift-grid { grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); }
#giftCustom { min-width:0; }
#giftCouponBox textarea { min-height:90px; }
#giftCouponBox small { color:#53647c; }
#giftCouponBox[hidden] { display:none!important; }
.st-card > .gift-product-card { height:auto; margin:16px 0 0; }
.gift-gallery { display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-color:#b8c2cf #f1f3f5; margin:18px 0; padding-bottom:8px; }
.gift-gallery:empty { display:none; }
.gift-gallery a { flex:0 0 min(80%,360px); scroll-snap-align:start; }
.gift-gallery img { width:100%; aspect-ratio:4/3; object-fit:contain; background:#fff; border-radius:12px; }
.gift-media-admin { display:flex; gap:16px; flex-wrap:wrap; }
.gift-media-admin img { width:120px; height:90px; object-fit:contain; background:#fff; border:1px solid #dce3ed; border-radius:8px; }
.gift-coupon-reveal { background:#dcf5e6; color:#1c7a44; border-radius:12px; padding:16px; margin:16px 0; }
.gift-coupon-reveal textarea { display:block; width:100%; box-sizing:border-box; background:#fff; color:#172b4d; border:1px solid #b8d7c3; border-radius:8px; padding:12px; margin:10px 0; font:inherit; resize:vertical; }
@media(max-width:1100px){.gift-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:650px){.gift-grid{grid-template-columns:1fr;}}
