/* Glow28 CRM storefront — minimal, neutral design. Scoped to CRM sections only. */
.g28l-offers{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#171717;font-size:14px;line-height:1.55}
.g28l-offers header h2{font-size:27px;line-height:1.3;font-weight:600;letter-spacing:-.025em;color:#111;margin:0 0 7px}
.g28l-offers header p{font-size:14px;line-height:1.55;color:#6a6a6a;margin:0 0 18px}
.g28l-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 30px}
.g28l-summary>div,.g28l-summary>div:nth-child(2){background:#fafafa;border:1px solid #e7e7e7;border-radius:8px;padding:20px 22px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;min-height:104px;box-shadow:none}
.g28l-summary span{font-size:13px;line-height:1.4;color:#666;margin:0}
.g28l-summary strong{font-size:25px;line-height:1.25;font-weight:600;color:#141414;margin:0}
.g28l-offers h3{font-size:20px;line-height:1.35;font-weight:500;color:#151515;margin:24px 0 12px}
.g28l-offers h3:first-child{margin-top:0}
.g28l-offers p{line-height:1.6}
.g28l-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.g28l-offer-card{border:1px solid #e7e7e7;border-radius:8px;overflow:hidden;background:#fff}
.g28l-offer-photo{height:180px;overflow:hidden}
.g28l-offer-photo img{width:100%;height:100%;object-fit:cover}
.g28l-offer-body{padding:18px}
.g28l-discount-badge{display:inline-block;background:#f3f3f3;color:#252525;font-size:12px;padding:5px 10px;border:1px solid #e6e6e6;border-radius:4px;font-weight:600}
.g28l-offer-body h4{font-size:17px;color:#161616;margin:12px 0 8px}
.g28l-offer-body p{font-size:13px;color:#666;margin:0 0 12px}
.g28l-offer-code{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;border:1px dashed #d4d4d4;border-radius:6px;padding:8px 8px 8px 12px}
.g28l-offer-code code{font-size:14px;font-weight:600;background:transparent;color:#161616}
.g28l-offer-code button{background:#111;color:#fff;border:1px solid #111;border-radius:5px;padding:9px 13px;cursor:pointer;font-weight:600}
.g28l-offer-code button:hover{background:#333;border-color:#333}
.g28l-history{overflow-x:auto;margin-top:2px}
.g28l-history table{width:100%;border-collapse:collapse;margin:0}
.g28l-history td,.g28l-history th{padding:12px 10px;text-align:left;border-bottom:1px solid #eaeaea;font-size:13px;line-height:1.45;color:#333}
.g28l-history th{font-weight:600;color:#222}
/* Checkout component: no global checkout, order totals or payment styles are changed. */
.g28l-redeem-box{margin:16px 0 0;padding:18px;border:1px solid #e5e5e5;border-radius:8px;background:#fff;box-shadow:none;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#191919;line-height:1.5;box-sizing:border-box}
.g28l-redeem-box *{box-sizing:border-box}
.g28l-redeem-head{display:flex;align-items:center;gap:10px;margin:0 0 15px}
.g28l-redeem-icon{width:34px;height:34px;flex:0 0 34px;border-radius:5px;background:#f2f2f2;border:1px solid #e6e6e6;color:#222;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;letter-spacing:.02em}
.g28l-redeem-eyebrow{display:block;font-size:10px;line-height:1.3;color:#777;text-transform:uppercase;letter-spacing:.06em;margin:0 0 3px}
.g28l-redeem-head h4{margin:0;font-size:17px;line-height:1.3;font-weight:600;color:#191919}
.g28l-redeem-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px}
.g28l-redeem-stat{min-width:0;background:#fafafa;border:1px solid #ebebeb;border-radius:6px;padding:12px;display:flex;flex-direction:column;gap:5px}
.g28l-redeem-stat span{font-size:11px;line-height:1.4;color:#686868}
.g28l-redeem-stat strong{font-size:18px;line-height:1.3;font-weight:600;color:#151515;overflow-wrap:anywhere}
.g28l-redeem-applied{margin:0 0 12px;padding:10px 12px;border:1px solid #dedede;border-radius:5px;background:#f7f7f7;color:#242424;font-size:12px}
.g28l-redeem-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.g28l-redeem-field{display:flex;flex-direction:column;gap:6px;flex:1 1 115px;min-width:0;margin:0}
.g28l-redeem-field span{font-size:11px;line-height:1.35;color:#555;font-weight:500}
.g28l-redeem-box .g28l-redeem-field input{display:block;width:100%;height:39px;min-height:39px;border:1px solid #d9d9d9;border-radius:4px;padding:0 10px;font-size:13px;line-height:normal;background:#fff;color:#151515;box-shadow:none;margin:0}
.g28l-redeem-box .g28l-redeem-field input:focus{outline:1px solid #333;outline-offset:0;border-color:#333;box-shadow:none}
.g28l-redeem-actions{display:flex;gap:8px;flex-wrap:wrap}
.g28l-redeem-box .g28l-redeem-btn{display:inline-flex;align-items:center;justify-content:center;min-height:39px;height:39px;padding:0 13px;border-radius:4px;border:1px solid #151515;font-size:12px;line-height:1.2;font-weight:600;cursor:pointer;transition:background .15s ease;margin:0;box-shadow:none;text-transform:none;letter-spacing:0}
.g28l-redeem-box .g28l-redeem-btn-primary{background:#151515;border-color:#151515;color:#fff}
.g28l-redeem-box .g28l-redeem-btn-primary:hover{background:#333;border-color:#333;color:#fff}
.g28l-redeem-box .g28l-redeem-btn-secondary{background:#fff;border-color:#cfcfcf;color:#222}
.g28l-redeem-box .g28l-redeem-btn-secondary:hover{background:#f3f3f3;color:#222}
.g28l-redeem-hint{margin:11px 0 0;font-size:11px;line-height:1.5;color:#777}
.g28l-redeem-empty{margin:4px 0 0;padding:11px;border-radius:5px;background:#fafafa;border:1px solid #eaeaea;color:#555;font-size:12px}
@media(max-width:767px){.g28l-offer-grid{grid-template-columns:1fr}.g28l-summary>div{padding:15px;min-height:90px}.g28l-summary strong{font-size:21px}.g28l-redeem-row{align-items:stretch}.g28l-redeem-field{flex:1 1 100%}.g28l-redeem-actions{width:100%}.g28l-redeem-box .g28l-redeem-btn{flex:1 1 auto}.g28l-redeem-head h4{font-size:16px}}
@media(max-width:420px){.g28l-summary{grid-template-columns:1fr;gap:10px}.g28l-redeem-stats{gap:7px}.g28l-redeem-stat{padding:10px}.g28l-redeem-stat strong{font-size:16px}}

/* v0.5.8 — fix visual rhythm without changing checkout calculation or payment logic. */
/* Checkout: isolate theme heading margins and align eyebrow with title. */
.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head {display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:0;}
.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head > div:last-child {display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;min-width:0;margin:0;padding:0;}
.woocommerce-checkout .g28l-redeem-box .g28l-redeem-eyebrow {display:block;margin:0!important;padding:0!important;font-size:10px;line-height:1.3;font-weight:400;}
.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head h4 {display:block;margin:0!important;padding:0!important;font-size:17px;line-height:1.35;font-weight:600;letter-spacing:0;}
.woocommerce-checkout .g28l-redeem-box .g28l-redeem-icon {margin:0;padding:0;}
.woocommerce-checkout .g28l-redeem-box .g28l-redeem-hint {margin:8px 0 0!important;padding:0!important;}
.woocommerce-checkout .g28l-redeem-box {margin-bottom:0;}
/* Remove only the seam created where the checkout payment container immediately follows our GP block. */
.woocommerce-checkout #order_review > .g28l-redeem-box + #payment,
.woocommerce-checkout .woocommerce-checkout-review-order > .g28l-redeem-box + #payment {border-top:0!important;}
/* Offers: consistent spacing between summary, offers and history. */
.woocommerce-account .g28l-offers > header {display:block;margin:0 0 16px;padding:0;}
.woocommerce-account .g28l-offers > header h2 {margin:0 0 5px!important;padding:0;line-height:1.3;}
.woocommerce-account .g28l-offers > header p {margin:0!important;padding:0;line-height:1.5;}
.woocommerce-account .g28l-offers > .g28l-summary {margin:0 0 25px!important;padding:0;}
.woocommerce-account .g28l-offers > h3 {margin:0 0 10px!important;padding:0;font-size:19px;line-height:1.35;}
.woocommerce-account .g28l-offers > .g28l-offer-grid {margin:0 0 23px!important;padding:0;}
.woocommerce-account .g28l-offers > .g28l-offer-grid > p {margin:0!important;padding:0;line-height:1.5;}
.woocommerce-account .g28l-offers > .g28l-history {margin:0;padding:0;}
.woocommerce-account .g28l-offers > .g28l-history th,
.woocommerce-account .g28l-offers > .g28l-history td {padding:11px 10px;}

/* v0.5.9: robust two-line GP heading against theme typography selectors. */
body.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head .g28l-redeem-titles {
  display:flex!important;flex-flow:column nowrap!important;align-items:flex-start!important;
  justify-content:center!important;gap:5px!important;margin:0!important;padding:0!important;
  min-height:0!important;height:auto!important;line-height:normal!important;
}
body.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head .g28l-redeem-titles .g28l-redeem-eyebrow,
body.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head .g28l-redeem-titles h4 {
  display:block!important;position:static!important;float:none!important;clear:none!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  margin:0!important;padding:0!important;transform:none!important;
}
body.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head .g28l-redeem-titles .g28l-redeem-eyebrow {font-size:10px!important;line-height:13px!important;}
body.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head .g28l-redeem-titles h4 {font-size:17px!important;line-height:23px!important;}
body.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head .g28l-redeem-icon {align-self:center!important;}

/* v0.5.10: theme-independent GP title — no h4 default typography rules. */
body.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head .g28l-redeem-titles{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:5px!important;margin:0!important;padding:0!important;}
body.woocommerce-checkout .g28l-redeem-box .g28l-redeem-head .g28l-redeem-title{display:block!important;margin:0!important;padding:0!important;line-height:23px!important;font-size:17px!important;font-weight:600!important;color:#191919!important;letter-spacing:0!important;text-transform:none!important;}
