.shares-heading, .shares-bar, .share-dialog-heading, .share-image-bar, .share-form-actions, .share-lightbox-bar, .share-lightbox-nav { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.shares-heading h2 { margin-bottom: 14px; }
.shares-heading > button { margin-top: 30px; }
.shares-bar { flex-wrap: wrap; }
.shares-status { min-height: 20px; font-size: 12px; color: var(--ink-soft); }
#sharesList > .collections-preview, #sharesList > .collection-more[open] > .collections-rest { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; align-items: start; }
.share-post { min-width: 0; padding: 16px; background: var(--card); border: 1px solid var(--blush); border-radius: 8px; overflow-wrap: anywhere; }
.share-post h3 { font-family: var(--round); font-size: 18px; line-height: 1.5; margin: 12px 0 8px; }
.share-post .share-meta { color: var(--ink-soft); font-size: 12px; line-height: 1.8; margin: 0 0 12px; }
.share-post .share-body { white-space: pre-wrap; line-height: 1.9; font-size: 14px; }
.share-post .share-link { display: inline-block; margin-top: 12px; color: var(--rose); font-size: 13px; }
.share-link-text { white-space: pre-wrap; line-height: 1.6; color: var(--ink-soft); font-size: 12px; }
.share-images { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.share-images.single { grid-template-columns: minmax(0, 1fr); }
.share-images.single button { aspect-ratio: 3 / 4; }
#wishList .share-images { margin: 12px 0; }
.share-images button { position: relative; display: block; padding: 0; border: 0; background: var(--blush-bg); border-radius: 4px; overflow: hidden; cursor: zoom-in; aspect-ratio: 4 / 3; }
.share-images img { width: 100%; height: 100%; object-fit: contain; display: block; }
.share-more-images { position: absolute; inset: 0; background: rgba(25, 55, 70, .55); color: white; display: grid; place-items: center; font-size: 20px; }
.share-post-actions { display: flex; gap: 6px; margin-top: 12px; padding-top: 10px; border-top: 1px dashed var(--blush); }
.share-icon { display: inline-grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 1px solid var(--blush); border-radius: 4px; color: var(--rose); background: transparent; cursor: pointer; flex: none; }
.share-icon svg, #shareImageIcon svg { width: 18px; height: 18px; display: block; }
.share-icon:hover { background: var(--blush-bg); }
.share-icon:focus-visible, .share-images button:focus-visible { outline: 2px solid var(--rose); outline-offset: 3px; }
.share-dialog, .share-lightbox { box-sizing: border-box; width: min(600px, calc(100% - 24px)); max-height: calc(100dvh - 32px); padding: 20px; border: 1px solid #b9d7e8; border-radius: 8px; color: #29465c; background: #fffef8; font-family: var(--sans); overflow-y: auto; }
.share-dialog::backdrop, .share-lightbox::backdrop { background: rgba(25, 45, 55, .45); }
.share-dialog h3 { font-size: 20px; margin: 0; }
.share-dialog label, .share-dialog legend { font-size: 13px; }
.share-dialog input:not([type="radio"]):not([type="file"]), .share-dialog textarea { box-sizing: border-box; width: 100%; border: 1px solid #b9d7e8; border-radius: 6px; background: #f1f8fc; padding: 10px; font: inherit; font-size: 14px; color: #29465c; margin: 6px 0 14px; }
.share-dialog textarea { resize: vertical; }
.share-optional { color: #5d788d; font-size: 12px; }
.share-form-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 16px 0; flex-wrap: wrap; }
.share-form-row fieldset { padding: 0; border: 0; display: flex; gap: 12px; }
.share-form-row legend { margin-bottom: 8px; }
.share-sign select { font: inherit; font-weight: 700; color: #347eae; border: 0; border-bottom: 1px dashed #b9d7e8; border-radius: 0; background: transparent; padding: 4px; }
.share-image-bar { font-size: 12px; color: #5d788d; }
#shareAddImages { display: inline-flex; align-items: center; gap: 6px; }
#shareImagePreview { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 12px; }
.share-preview-image { position: relative; min-width: 0; aspect-ratio: 1; background: #f1f8fc; }
.share-preview-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.share-preview-image .share-icon { position: absolute; right: 2px; top: 2px; background: #fffef8; width: 28px; height: 28px; }
#shareFormStatus { min-height: 18px; line-height: 1.6; font-size: 13px; color: #5d788d; }
.share-form-actions { justify-content: flex-end; }
.share-form-actions > .btn { width: auto; flex: none; white-space: nowrap; padding: 12px 18px; font-size: 15px; }
.share-form-actions > .ghost { min-width: 70px; background: transparent; color: #347eae; border: 1px solid #b9d7e8; border-radius: 6px; }
.share-form-actions > .btn-main { flex: 1; min-width: 0; border-radius: 6px; }
.share-lightbox { width: min(1000px, calc(100% - 24px)); padding: 12px; }
.share-lightbox-bar { font-size: 13px; margin-bottom: 10px; }
#shareLightboxImage { width: 100%; height: min(70dvh, 700px); object-fit: contain; display: block; background: #f1f8fc; }
.share-lightbox-nav { justify-content: center; margin-top: 10px; }
@media (max-width: 879px) { #sharesList > .collections-preview, #sharesList > .collection-more[open] > .collections-rest { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: no-preference) { .share-dialog[open], .share-lightbox[open] { animation: share-appear .16s ease-out; } @keyframes share-appear { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } } }
