/* Social sharing pilot v1: inherits the product's semantic theme. */
.social-sharing { margin-block: var(--space-6); }
.social-sharing [hidden] { display: none !important; }
.social-sharing svg { width: 1.5rem; height: 1.5rem; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linejoin: round; stroke-linecap: round; flex-shrink: 0; }
.share-trigger { display: inline-flex; align-items: center; gap: var(--space-2); min-height: 44px; padding: .5rem 1rem; border: 1px solid var(--color-border); border-radius: 2rem; color: var(--color-primary); background: var(--color-surface); cursor: pointer; font-weight: 650; list-style: none; }
.share-trigger::-webkit-details-marker { display: none; }
.share-trigger:hover { background: var(--color-background); }
.share-panel { padding: var(--space-4); min-width: 0; }
.share-fallback > .share-panel, .social-sharing[data-presentation="tray"] { border: 1px solid var(--color-border); border-radius: var(--radius-panel); background: var(--color-surface); max-width: 36rem; }
.share-fallback > .share-panel { margin-top: var(--space-3); }
.share-dialog { width: min(36rem, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); padding: 0; overflow-y: auto; border: 1px solid var(--color-border); border-radius: var(--radius-panel); background: var(--color-surface); color: var(--color-text); }
.share-dialog::backdrop { background: rgb(0 0 0 / .45); }
.share-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); position: sticky; top: 0; background: var(--color-surface); padding-block: var(--space-2); z-index: 1; }
.share-panel-heading h2 { margin: 0; font-size: 1.3rem; overflow-wrap: anywhere; }
.share-close { display: none; margin: 0; min-width: 44px; flex-shrink: 0; font-size: 1.5rem; padding: 0; background: var(--color-surface); color: var(--color-text); }
.share-dialog .share-close { display: inline-grid; place-items: center; }
.share-description { color: var(--color-text-muted); margin-block: var(--space-2) var(--space-4); }
.share-channels { display: flex; flex-wrap: wrap; align-items: flex-start; gap: var(--space-2); }
.share-channel { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--space-1); width: 5.75rem; min-height: 80px; padding: .5rem .25rem; margin: 0; border: 0; border-radius: var(--radius-control); background: var(--color-surface); color: var(--color-primary); font-size: .875rem; line-height: 1.4; text-decoration: none; text-align: center; }
.share-channel:hover { background: var(--color-background); }
.share-icon { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--color-border); background: var(--color-background); }
.share-icon--brand { width: 48px; height: 48px; border: 0; background: transparent; }
.share-brand-logo { display: block; width: 32px; height: 32px; object-fit: contain; }
.share-channel:has(.share-brand-logo) { color: var(--color-text); }
.share-channel[data-channel="instagram"] .share-icon--brand { background: linear-gradient(35deg, #feda75, #fa7e1e 25%, #d62976 55%, #962fbf 80%, #4f5bd5); }
.share-channel[data-channel="x"] .share-icon--brand { background: #000; }
.share-channel[data-channel="x"] .share-brand-logo { width: 24px; height: 24px; }
.share-url-label { font-size: .875rem; margin-block: var(--space-4) 0; }
.share-url-label input { display: block; font-size: 1rem; margin-top: var(--space-1); }
.share-status { min-height: 1.6em; margin-block: var(--space-2) 0; font-size: .875rem; }
.social-sharing[data-presentation="tray"] { border: 0; border-top: 1px solid var(--color-border); background: transparent; }
.social-sharing[data-presentation="tray"] .share-panel { padding-inline: 0; }
.social-sharing[data-presentation="tray"] .share-panel-heading { position: static; background: transparent; }
.social-sharing[data-presentation="tray"] h2 { font-size: 1rem; }
.social-sharing[data-presentation="tray"] .share-description { font-size: .875rem; margin-block: 0 var(--space-2); }
.share-link-details { margin-top: var(--space-2); }
.share-link-details > summary { cursor: pointer; min-height: 44px; padding-block: .5rem; color: var(--color-primary); font-size: .875rem; }
.share-manual-badge { font-size: .75rem; color: var(--color-text-muted); }
.share-manual-guide { margin-top: var(--space-4); padding: var(--space-3); background: var(--color-background); border: 1px solid var(--color-border); border-radius: var(--radius-control); }
.share-manual-guide h3 { margin-block: 0 var(--space-2); font-size: 1rem; }
.share-manual-guide p { margin-block: var(--space-2); }
.share-guide-actions { display: flex; gap: var(--space-2); flex-wrap: wrap; align-items: center; }
.share-guide-actions button { margin: 0; }
.share-open-platform { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem .75rem; }
