/* One owner for offer geometry on every public route. Keep this in the head:
   runtime count updates must never introduce a competing stylesheet. */
body.public-site #beta-offer-banner.beta-offer-banner{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  margin:0 0 16px;
  padding:12px 16px;
  border:1px solid var(--color-accent-border);
  border-radius:12px;
  background:linear-gradient(100deg,var(--color-accent-bg),var(--color-surface));
  color:var(--color-text);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  font:600 13px/1.35 var(--font-sans);
  box-shadow:var(--shadow-sm);
}
body.public-site #beta-offer-banner .beta-copy{min-width:0}
body.public-site #beta-offer-banner .beta-copy strong{display:block;font-size:14px}
body.public-site #beta-offer-banner .beta-copy span{
  display:block;
  margin-top:2px;
  color:var(--color-text-muted);
  font-size:11px;
}
body.public-site #beta-offer-banner a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  max-width:100%;
  padding:8px 14px;
  border-radius:999px;
  background:var(--color-text);
  color:var(--color-on-dark);
  text-align:center;
  text-decoration:none;
  font:700 12px/1.35 var(--font-sans);
  white-space:normal;
}
body.public-site #beta-offer-banner a:hover{background:var(--ac-ink-soft)}
@media(max-width:560px){
  body.public-site #beta-offer-banner.beta-offer-banner{grid-template-columns:minmax(0,1fr)}
  body.public-site #beta-offer-banner a{width:100%}
}
