/* Compartilhamento e ergonomia de toque para campanhas. */
.share-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}
.share-action{
  display:inline-flex;justify-content:center;align-items:center;gap:.4rem;
  min-height:44px;border:1px solid #34485c;border-radius:12px;
  background:#172431;color:#f4f8f7;font-weight:750;font-size:.85rem;
  padding:.65rem .95rem;text-decoration:none;cursor:pointer;transition:.18s ease;
}
.share-action:hover,.share-action:focus-visible{color:#fff;border-color:#62efb0;background:#214334}
.share-action-whatsapp{border-color:#317c58;background:#1f6948;color:#fff}
.share-action-whatsapp:hover{background:#267d56;color:#fff}
.share-feedback{
  position:fixed;z-index:2000;left:50%;bottom:22px;
  transform:translate(-50%,12px);opacity:0;pointer-events:none;
  background:#142c23;color:#fff;border:1px solid #63c996;
  border-radius:12px;padding:12px 18px;min-width:200px;max-width:calc(100vw - 32px);
  text-align:center;box-shadow:0 8px 26px rgba(0,0,0,.2);transition:.2s ease;
}
.share-feedback.is-visible{opacity:1;transform:translate(-50%,0)}
.number-checkbox:focus-visible + .number-label{outline:3px solid #f4bd56;outline-offset:2px}
@media(max-width:991px){
  .campaign-detail-cover,.campaign-detail-placeholder{height:clamp(235px,48vw,385px)}
  .number-grid{grid-template-columns:repeat(auto-fill,minmax(49px,1fr));gap:9px}
  .checkout-card{top:auto}
}
@media(max-width:575px){
  .campaign-hero-card{border-radius:17px}
  .campaign-detail-cover,.campaign-detail-placeholder{height:260px}
  .campaign-hero-info{padding:20px!important}
  .campaign-detail-title{font-size:clamp(1.5rem,6vw,2rem)!important;line-height:1.16}
  .campaign-detail-stats{gap:1rem!important}
  .campaign-detail-stats > div{min-width:110px}
  .campaign-detail-stats .price{font-size:1.42rem}
  .share-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .share-actions .share-action{font-size:.82rem;padding:.6rem .4rem}
  .share-actions .share-action:first-child{grid-column:span 2}
  .number-panel{padding:.85rem;border-radius:16px}
  .number-grid{grid-template-columns:repeat(auto-fill,minmax(46px,1fr));max-height:370px;gap:7px}
  .number-label{min-height:46px;height:46px;font-size:.83rem}
  .quick-btn{min-height:44px;padding:.58rem .65rem}
  .search-number-controls{width:100%;margin-left:0!important}
  .search-number-controls input{width:100%!important;min-width:0;flex:1}
  .checkout-card{border-radius:16px;padding:1rem}
  .checkout-card .btn-accent{min-height:50px}
  .summary-total{font-size:1.55rem}
}
@media(prefers-reduced-motion:reduce){
  .share-action,.share-feedback{transition:none}
}
