.promotion-txid-feedback{display:block;min-height:17px;color:#697180;font-size:11px;font-weight:850}.promotion-txid-feedback.ok{color:#08735e}.promotion-txid-feedback.error{color:#d42755}.promotion-focus{animation:promotionFocus .9s ease}#promotionPingpayAddress[readonly]{background:#f2f5f5;color:#111;font-weight:850;cursor:not-allowed}.promotion-select-label{display:grid;gap:7px;margin-bottom:14px;font-weight:900}.promotion-select-label select{width:100%;border:1px solid #64dfc2;border-radius:12px;background:#f3fffb;color:#111;padding:12px 14px;font:inherit;font-weight:850}.promotion-inline-detail{margin:0 0 16px}.promotion-inline-detail:empty{display:none}.promotion-inline-detail .promotion-detail-image{max-height:420px;margin:0 auto;border-radius:14px 14px 0 0}.promotion-inline-apply form{display:grid;gap:12px}.promotion-inline-apply form>label,.promotion-inline-apply form fieldset label{display:grid;gap:6px;color:#111;font-weight:850}.promotion-inline-apply form label em{color:#ef4775;font-size:11px;font-style:normal}.promotion-inline-apply input,.promotion-inline-apply textarea{width:100%;box-sizing:border-box;border:1px solid #d9dfe8;border-radius:11px;background:#fff;color:#111;padding:11px;font:inherit}.promotion-inline-apply #promotionSubmitButton{width:100%;margin-top:4px}.promotion-success{padding:14px;border-radius:12px;background:rgba(85,223,195,.28);color:#07110f;font-weight:900}#promotionHistory{display:grid;gap:14px;padding:0;border:0;background:transparent;box-shadow:none}#promotionHistory .promotion-history-row{display:block;margin:0;padding:16px;border:1px solid #64dfc2;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(22,93,78,.05)}#promotionHistory .promotion-history-row header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid #e5f5f1}#promotionHistory .promotion-history-row header strong{display:block;color:#05070a;font-size:17px;font-weight:950}#promotionHistory .promotion-history-row header small{display:block;margin-top:4px;color:#687181}.promotion-application-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:14px 0 0}.promotion-application-fields>div{min-width:0}.promotion-application-fields>div.wide{grid-column:1/-1}.promotion-application-fields dt{margin:0 0 3px;color:#687181;font-size:11px;font-weight:900}.promotion-application-fields dd{margin:0;color:#111;font-size:13px;font-weight:800;overflow-wrap:anywhere}.promotion-application-evidence{display:grid;gap:7px;margin-top:14px;padding-top:12px;border-top:1px solid #e5f5f1}.promotion-application-evidence strong{font-size:12px}.promotion-application-evidence img{display:block;width:min(220px,100%);max-height:180px;border:1px solid #dce8e5;border-radius:10px;background:#070808;object-fit:contain}.promotion-application-evidence span{color:#687181;font-size:12px;font-weight:800}@media(max-width:600px){.promotion-application-fields{grid-template-columns:1fr}.promotion-application-fields>div.wide{grid-column:auto}#promotionHistory .promotion-history-row{padding:13px}}@keyframes promotionFocus{50%{filter:drop-shadow(0 0 12px rgba(85,223,195,.75))}}

/* v53: remove the pale sticky strip above the first promotion section. */
#promotions .promo-tabs{
  position:static;
  padding:0;
  background:transparent;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

/* v53: compact, structured two-column benefit application. */
#promotionApplyForm{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
#promotionApplyForm>.promotion-purchase-fields,
#promotionApplyForm>.promotion-custom-fields,
#promotionApplyForm>.promotion-shipping,
#promotionApplyForm>#promotionSubmitButton{
  grid-column:1/-1;
}
#promotionApplyForm>.promotion-purchase-fields,
#promotionApplyForm>.promotion-shipping{
  padding:14px;
  border:0;
  border-radius:14px;
  background:#f8fffd;
}
#promotionApplyForm>.promotion-custom-fields{
  border:0;
  background:#f8fffd;
}
#promotionApplyForm>label{
  align-content:start;
  min-width:0;
}
#promotionApplyForm>#promotionSubmitButton{
  min-height:46px;
}

@media(max-width:700px){
  #promotionApplyForm{grid-template-columns:1fr}
  #promotionApplyForm>.promotion-purchase-fields,
  #promotionApplyForm>.promotion-custom-fields,
  #promotionApplyForm>.promotion-shipping,
  #promotionApplyForm>#promotionSubmitButton{grid-column:auto}
}

/* v54: optional badge and conditional shipping guidance. */
.promotion-optional-badge{
  display:inline-flex;
  align-items:center;
  margin-left:7px;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(85,223,195,.28);
  color:#08735e!important;
  font-size:10px!important;
  font-weight:950;
  line-height:1.2;
  vertical-align:middle;
}
.promotion-shipping-note{
  grid-column:1/-1;
  margin:0 0 2px;
  color:#4f5d59;
  font-size:12px;
  font-weight:850;
}

/* v55: required and automatic helper labels use a borderless pale-red badge. */
.promotion-inline-apply form label em{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:3px 7px;
  border:0;
  border-radius:999px;
  background:#fff0f2;
  color:#b72b4f;
  font-size:10px;
  font-weight:950;
  line-height:1.2;
}

/* v56: mint outlines only around major groups; fields use soft-gray fills. */
#promotionApplyForm>.promotion-purchase-fields,
#promotionApplyForm>.promotion-custom-fields,
#promotionApplyForm>.promotion-shipping{
  border:1px solid #8fe3d1;
}
.promotion-inline-apply input,
.promotion-inline-apply textarea,
.promotion-select-label select{
  border:0;
  background:#f2f3f5;
  box-shadow:none;
}
.promotion-inline-apply input:focus,
.promotion-inline-apply textarea:focus,
.promotion-select-label select:focus{
  outline:2px solid rgba(85,223,195,.42);
  outline-offset:0;
  box-shadow:none;
}
#promotionPingpayAddress[readonly]{
  border:0;
  background:#f2f3f5;
}
