/*
 * Bid2Stay Release 15.0.12.9 — Invite & Earn BidPoints + tier ladder
 * Guest-facing presentation layer only. Referral and wallet values are loaded
 * from the existing live BidPoints RPCs.
 */
body[data-portal-role="guest"] .b2s129-feature-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
  gap:16px;
  align-items:stretch;
}
body[data-portal-role="guest"] .b2s129-card{
  min-width:0;
  background:#fff;
  border:1px solid #dce6e0;
  border-radius:18px;
  box-shadow:0 8px 24px rgba(31,50,46,.055);
  padding:22px;
}
body[data-portal-role="guest"] .b2s129-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
body[data-portal-role="guest"] .b2s129-kicker{
  display:block;
  margin-bottom:5px;
  color:#26724b;
  font-size:.71rem!important;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
body[data-portal-role="guest"] .b2s129-card h2{
  margin:0!important;
  color:#132a1d!important;
  font-size:1.12rem!important;
  line-height:1.25!important;
  letter-spacing:-.018em!important;
}
body[data-portal-role="guest"] .b2s129-card-head p,
body[data-portal-role="guest"] .b2s129-card>p{
  margin:5px 0 0!important;
  color:#66776d!important;
  font-size:.85rem!important;
  line-height:1.52!important;
}
body[data-portal-role="guest"] .b2s129-integrity{
  margin-top:14px;
  padding:10px 12px;
  border-radius:12px;
  background:#f4f8f5;
  border:1px solid #e2ebe5;
  color:#5a6b61;
  font-size:.76rem;
  line-height:1.45;
}
body[data-portal-role="guest"] .b2s129-code-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  margin:14px 0;
  padding:12px;
  border:1px solid #d8e5dd;
  border-radius:14px;
  background:#f8fbf9;
}
body[data-portal-role="guest"] .b2s129-code-row small{
  display:block;
  margin-bottom:3px;
  color:#718078;
  font-size:.69rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
body[data-portal-role="guest"] .b2s129-code-row strong{
  display:block;
  min-width:0;
  color:#153a28;
  font-size:1rem!important;
  line-height:1.3;
  letter-spacing:.045em;
  overflow-wrap:anywhere;
}
body[data-portal-role="guest"] .b2s129-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  border:1px solid transparent;
  border-radius:10px;
  padding:9px 12px;
  font:inherit;
  font-size:.78rem!important;
  font-weight:850;
  line-height:1.2;
  cursor:pointer;
  text-decoration:none;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}
body[data-portal-role="guest"] .b2s129-btn:hover{transform:translateY(-1px)}
body[data-portal-role="guest"] .b2s129-btn.primary{
  background:#176b49;
  color:#fff;
  box-shadow:0 7px 16px rgba(23,107,73,.16);
}
body[data-portal-role="guest"] .b2s129-btn.secondary{
  background:#fff;
  color:#1b5c40;
  border-color:#cddcd3;
}
body[data-portal-role="guest"] .b2s129-btn.whatsapp{
  background:#ecf8f0;
  color:#17623c;
  border-color:#cae7d4;
}
body[data-portal-role="guest"] .b2s129-invite-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
body[data-portal-role="guest"] .b2s129-invite-option{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:15px;
  border:1px solid #dce7e0;
  border-radius:15px;
  background:#fff;
}
body[data-portal-role="guest"] .b2s129-invite-option-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
body[data-portal-role="guest"] .b2s129-invite-option h3{
  margin:0!important;
  color:#183324!important;
  font-size:.92rem!important;
  line-height:1.3!important;
}
body[data-portal-role="guest"] .b2s129-invite-option p{
  margin:4px 0 0!important;
  color:#6d7b73!important;
  font-size:.76rem!important;
  line-height:1.45!important;
}
body[data-portal-role="guest"] .b2s129-reward-pill{
  flex:0 0 auto;
  padding:5px 8px;
  border-radius:999px;
  background:#fff4d8;
  color:#7a5311;
  font-size:.68rem!important;
  font-weight:900;
  white-space:nowrap;
}
body[data-portal-role="guest"] .b2s129-option-actions{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:auto;
}
body[data-portal-role="guest"] .b2s129-option-actions .b2s129-btn{flex:1 1 120px}
body[data-portal-role="guest"] .b2s129-referral-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:14px;
}
body[data-portal-role="guest"] .b2s129-referral-stat{
  min-width:0;
  padding:11px 12px;
  border-radius:12px;
  background:#f7faf8;
  border:1px solid #e3ebe6;
}
body[data-portal-role="guest"] .b2s129-referral-stat span{
  display:block;
  color:#6d7c73;
  font-size:.68rem!important;
  font-weight:800;
  line-height:1.3;
}
body[data-portal-role="guest"] .b2s129-referral-stat strong{
  display:block;
  margin-top:4px;
  color:#143a27;
  font-size:1.15rem!important;
  line-height:1;
}
body[data-portal-role="guest"] .b2s129-tier-summary{
  display:flex;
  align-items:center;
  gap:12px;
  margin:13px 0 12px;
  padding:12px;
  border-radius:14px;
  background:#f7faf8;
  border:1px solid #e0e9e3;
}
body[data-portal-role="guest"] .b2s129-tier-mark{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#176b49;
  color:#fff;
  font-size:1rem;
  font-weight:950;
}
body[data-portal-role="guest"] .b2s129-tier-summary small{
  display:block;
  color:#718078;
  font-size:.68rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.055em;
}
body[data-portal-role="guest"] .b2s129-tier-summary strong{
  display:block;
  margin-top:2px;
  color:#153723;
  font-size:1rem!important;
  line-height:1.2;
}
body[data-portal-role="guest"] .b2s129-tier-summary b{
  margin-left:auto;
  color:#176b49;
  font-size:.8rem!important;
  white-space:nowrap;
}
body[data-portal-role="guest"] .b2s129-tier-progress{
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:#e2ebe5;
}
body[data-portal-role="guest"] .b2s129-tier-progress i{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:#176b49;
  transition:width .35s ease;
}
body[data-portal-role="guest"] .b2s129-tier-progress-meta{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin:7px 0 15px;
  color:#6d7b73;
  font-size:.7rem;
  font-weight:750;
}
body[data-portal-role="guest"] .b2s129-tier-list{
  display:grid;
  gap:8px;
}
body[data-portal-role="guest"] .b2s129-tier-item{
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px 11px;
  border:1px solid #e1e9e4;
  border-radius:12px;
  background:#fff;
}
body[data-portal-role="guest"] .b2s129-tier-item.current{
  border-color:#9bc7ae;
  background:#f0f8f3;
  box-shadow:inset 3px 0 0 #176b49;
}
body[data-portal-role="guest"] .b2s129-tier-icon{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#edf4ef;
  color:#176b49;
  font-size:.72rem;
  font-weight:950;
}
body[data-portal-role="guest"] .b2s129-tier-item.current .b2s129-tier-icon{background:#176b49;color:#fff}
body[data-portal-role="guest"] .b2s129-tier-item strong{
  display:block;
  color:#193526;
  font-size:.82rem!important;
  line-height:1.25;
}
body[data-portal-role="guest"] .b2s129-tier-item small{
  display:block;
  margin-top:2px;
  color:#718078;
  font-size:.68rem!important;
  line-height:1.35;
}
body[data-portal-role="guest"] .b2s129-tier-range{
  color:#52675a;
  font-size:.7rem!important;
  font-weight:850;
  white-space:nowrap;
}
body[data-portal-role="guest"] .b2s129-loading,
body[data-portal-role="guest"] .b2s129-error{
  min-height:110px;
  display:grid;
  place-items:center;
  padding:18px;
  border:1px dashed #ccd9d1;
  border-radius:14px;
  background:#f9fbfa;
  color:#68786f;
  text-align:center;
  font-size:.82rem;
  line-height:1.5;
}
body[data-portal-role="guest"] .b2s129-error{border-color:#ebc9c3;background:#fff8f6;color:#8b4439}
body[data-portal-role="guest"] .b2s129-toast{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:10000;
  max-width:min(360px,calc(100vw - 32px));
  padding:11px 14px;
  border-radius:11px;
  background:#102f21;
  color:#fff;
  box-shadow:0 13px 28px rgba(0,0,0,.2);
  font-size:.8rem;
  font-weight:750;
}
/* Compact dashboard entry */
body[data-portal-role="guest"] .b2s129-dashboard-card{
  margin-top:16px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  padding:17px 19px;
  border:1px solid #dbe7df;
  border-radius:17px;
  background:linear-gradient(135deg,#f7fbf8,#eef7f1);
}
body[data-portal-role="guest"] .b2s129-dashboard-card h2{margin:0!important;font-size:1rem!important;color:#163322!important}
body[data-portal-role="guest"] .b2s129-dashboard-card p{margin:4px 0 0!important;font-size:.8rem!important;color:#63736a!important;line-height:1.45!important}
body[data-portal-role="guest"] .b2s129-dashboard-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1050px){
  body[data-portal-role="guest"] .b2s129-feature-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  body[data-portal-role="guest"] .b2s129-card{padding:18px}
  body[data-portal-role="guest"] .b2s129-invite-options{grid-template-columns:1fr}
  body[data-portal-role="guest"] .b2s129-code-row{grid-template-columns:1fr}
  body[data-portal-role="guest"] .b2s129-code-row .b2s129-btn{width:100%}
  body[data-portal-role="guest"] .b2s129-dashboard-card{grid-template-columns:1fr}
  body[data-portal-role="guest"] .b2s129-dashboard-actions{justify-content:flex-start}
}
@media(max-width:480px){
  body[data-portal-role="guest"] .b2s129-referral-stats{grid-template-columns:1fr}
  body[data-portal-role="guest"] .b2s129-tier-item{grid-template-columns:30px minmax(0,1fr)}
  body[data-portal-role="guest"] .b2s129-tier-range{grid-column:2;white-space:normal}
  body[data-portal-role="guest"] .b2s129-tier-summary{align-items:flex-start;flex-wrap:wrap}
  body[data-portal-role="guest"] .b2s129-tier-summary b{width:100%;margin-left:54px}
}
