/* Match the shared KANSEI ShareBar without importing the entire site stylesheet. */
.estate-share { max-width: 1180px; margin: 0 auto; padding: 24px clamp(20px, 4vw, 64px); color: #181617; }
.estate-share [data-estate-share] > div { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.estate-share .share-btn { width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; border: 1px solid #d4d0c8; border-radius: 50%; background: transparent; color: #65615d; padding: 0; text-decoration: none; cursor: pointer; transition: color 150ms, border-color 150ms; }
.estate-share .share-btn:hover { color: #181617; border-color: #65615d; }
.estate-share .share-btn:focus-visible { outline: 2px solid #9a031e; outline-offset: 3px; }
.estate-share .share-btn:disabled { opacity: .4; cursor: not-allowed; }
.estate-share svg { width: 16px; height: 16px; }
.estate-share .font-mono { font-family: ui-monospace, monospace; font-size: 11px; line-height: 1.5; color: #65615d; }
.estate-share .uppercase { text-transform: uppercase; letter-spacing: .08em; margin-right: 4px; }
.estate-share .text-crimson { color: #9a031e; }
.estate-share [role="status"] { flex-basis: 100%; }
@media (max-width: 480px) { .estate-share [data-estate-share] > div { gap: 6px; } .estate-share .uppercase { flex-basis: 100%; margin-bottom: 4px; } }
@media (max-width: 380px) { .estate-share [data-estate-share] > div { display: grid; grid-template-columns: repeat(4, 44px); } .estate-share span { grid-column: 1 / -1; } }
@media (prefers-reduced-motion: reduce) { .estate-share .share-btn { transition: none; } }
