.ct-public-share { margin-top:12px; max-width:100%; font-family:inherit; }
.ct-public-share[hidden], .ct-public-share [hidden] { display:none !important; }
.ct-public-share button, .ct-public-share .ct-whatsapp-share { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:8px 12px; border:1px solid var(--home-line,var(--line,#555)); border-radius:10px; background:var(--home-surface,var(--panel,#111318)); color:var(--home-text,var(--text,#fff)); font:inherit; font-size:.8125rem; line-height:1.4; cursor:pointer; }
.ct-public-share button:disabled { opacity:.65; cursor:wait; }
.ct-public-share svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.ct-public-share :is(button,input,a):focus-visible { outline:3px solid var(--home-focus,var(--gold2,#f0c95d)); outline-offset:3px; }
.ct-public-share [role="status"] { font-size:.8125rem; line-height:1.5; color:var(--home-text,var(--text,#fff)); margin:6px 0 0; }
.ct-public-share [role="status"]:empty { display:none; }
.ct-public-share input { display:block; width:min(100%,28rem); margin-top:8px; min-height:44px; padding:8px; border:1px solid var(--home-line,var(--line,#555)); border-radius:8px; color:var(--home-text,var(--text,#fff)); background:var(--home-surface,var(--panel,#111318)); font:inherit; font-size:.8125rem; }

.ct-public-share .ct-whatsapp-share { margin-left:6px; text-decoration:none; max-width:100%; box-sizing:border-box; text-align:center; vertical-align:middle; }


/* Compact WhatsApp presentation; sharing destinations and click guards stay in public-share.js. */
.ct-whatsapp-control { display:inline-flex; flex-direction:column; align-items:flex-start; gap:6px; margin-left:6px; vertical-align:bottom; }
.ct-whatsapp-control[hidden] { display:none !important; }
.ct-whatsapp-heading { display:block; font:inherit; font-size:.8125rem; line-height:1.4; color:inherit; }
.ct-whatsapp-control .ct-whatsapp-share { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; width:44px; min-width:44px; height:44px; min-height:44px; padding:9px; margin:0; border:1px solid #128c50; border-radius:10px; background:#25d366; color:#07351b; text-decoration:none; }
.ct-whatsapp-control .ct-whatsapp-share img { display:block; width:24px; height:24px; }
.ct-whatsapp-control .ct-whatsapp-share:focus-visible { outline:3px solid var(--home-focus,var(--gold2,#f0c95d)); outline-offset:3px; }
.ct-whatsapp-control .ct-whatsapp-share:hover { background:#40df7b; }
.ct-whatsapp-control .ct-whatsapp-share[hidden] { display:none !important; }
.share-menu-actions > .ct-whatsapp-control { margin-left:0; }

/* One event opener below the original cover; purchase links remain untouched. */
.ct-home .catalog-card > .ct-public-share { margin:0; padding:16px; text-align:center; }
.ct-home .catalog-card > .ct-public-share .ct-event-share-opener { min-height:56px; padding:12px 22px; border-radius:999px; border-color:transparent; background:var(--home-accent); color:var(--home-ink); font-weight:700; }
.ct-home .ct-event-share-opener svg { fill:currentColor; stroke:none; }
@media(min-width:900px) {
  .ct-home .is-event-rail > .catalog-card > .catalog-photo { grid-column:1; grid-row:1; border-radius:15px 0 0 0; }
  .ct-home .is-event-rail > .catalog-card > .ct-public-share { grid-column:1; grid-row:2; }
  .ct-home .is-event-rail > .catalog-card > .catalog-body { grid-column:2; grid-row:1 / 3; }
}
.ct-share-dialog { box-sizing:border-box; width:min(420px,calc(100% - 28px)); max-height:calc(100dvh - 48px); margin:auto auto max(24px,env(safe-area-inset-bottom)); padding:16px; border-radius:22px; background:var(--home-surface,#111820); color:var(--home-text,#fff); border:1px solid var(--home-line,#555); box-shadow:0 24px 70px rgba(0,0,0,.45); overflow:auto; }
.ct-share-dialog::backdrop { background:rgba(0,0,0,.48); backdrop-filter:blur(4px); }
.ct-share-dialog-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.ct-share-dialog-head strong { font-size:16px; }
.ct-share-dialog-head button { width:44px; height:44px; border-radius:50%; font-size:22px; }
.ct-share-dialog .ct-share-dialog-action { width:100%; min-height:56px; justify-content:flex-start; text-align:left; border-radius:15px; margin:0 0 10px; font-size:1rem; font-weight:700; }
.ct-share-dialog small { display:block; font-weight:400; font-size:.875rem; margin-top:2px; }
.ct-share-dialog .ct-share-dialog-action:last-of-type { flex-direction:column; align-items:flex-start; gap:0; margin-top:10px; }
.ct-share-dialog .ct-whatsapp-control { margin-left:0; display:flex; }
.ct-share-dialog .ct-whatsapp-control .ct-whatsapp-share { width:44px; height:44px; padding:9px; background:#25d366; color:#07351b; border-color:#128c50; }
.ct-share-dialog input { box-sizing:border-box; }
