.share-invite { padding:26px; border:1px solid var(--border,#cbd9ef); border-radius:22px; background:linear-gradient(125deg,#10213c,#193b6b); color:#fff; }
.share-invite h1 { margin:8px 0 10px; max-width:850px; color:#fff; font:800 clamp(26px,3.4vw,42px)/1.15 Poppins,Inter,sans-serif; }
.share-invite > p { margin:0; max-width:780px; color:#d4e3f7; font-size:16px; line-height:1.55; }
.share-invite-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.share-invite-action { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:11px 16px; border:1px solid #a9c8ff; border-radius:10px; background:#fff; color:#164789; font:750 14px/1.3 Inter,sans-serif; text-align:center; text-decoration:none; cursor:pointer; }
.share-invite-action.primary { color:#fff; background:#1761de; border-color:#69a0ff; }
.share-invite-action:hover { filter:brightness(.94); }
.share-invite-action:focus-visible { outline:3px solid #80bdff; outline-offset:3px; }
.share-invite-action:disabled { opacity:.65; cursor:wait; }
.share-invite .share-invite-status { margin-top:12px; font-size:13px; color:#d4e3f7; }
.share-invite-status:empty { display:none; }
.share-invite-fallback { margin-top:14px; }
.share-invite-fallback[hidden] { display:none; }
.share-invite-fallback label { display:block; margin-bottom:6px; color:#fff; font-weight:650; }
.share-invite-fallback textarea { box-sizing:border-box; width:100%; padding:12px; min-height:105px; border:1px solid #bdd2ef; border-radius:10px; background:#fff; color:#172235; font:14px/1.5 Inter,sans-serif; resize:vertical; }
.share-friend-challenge { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; padding:20px 24px; margin-top:18px; border:1px solid var(--border,#dbe4f0); border-radius:18px; background:var(--surface,#fff); }
.share-friend-challenge h2 { margin:0 0 5px; font-size:22px; }
.share-friend-challenge p { margin:0; max-width:780px; color:var(--text-muted,#64748b); font-size:14px; line-height:1.5; }
.share-progress-intro { margin-top:26px; }
.share-progress-intro h2 { margin:0 0 6px; font-size:26px; }
.share-progress-intro > p { margin:0; color:var(--text-muted,#64748b); line-height:1.5; }
.share-progress-stats { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:12px; font-size:13px; color:var(--text-muted,#64748b); }
.share-progress-stats strong { color:var(--text,#172235); }
@media(max-width:600px) {
 .share-shell { padding-top:18px; }
 .share-invite { padding:20px; border-radius:18px; }
 .share-invite-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .share-invite-actions .primary { grid-column:1/-1; }
 .share-invite-action { min-width:0; padding-inline:12px; }
 .share-friend-challenge { padding:18px; }
 .share-friend-challenge .share-invite-action { width:100%; }
}
