/* Exhibit content and quiet social utilities. No imported fonts, artwork,
   background polling or animation loop is needed for this slice. */
.social-launch { position: fixed; z-index: 65; right: max(24px,env(safe-area-inset-right)); bottom: max(24px,env(safe-area-inset-bottom)); display: grid; grid-auto-flow: column; place-items: center; gap: 9px; width: auto; min-width: 56px; height: 56px; padding: 0 18px; border: 1px solid #bb8fe3; border-radius: 999px; background: #6636a0; color: #fff; box-shadow: 0 8px 26px #0007; cursor: pointer; transition: transform 140ms ease,box-shadow 140ms ease,color 140ms ease,border-color 140ms ease; }
.social-launch[hidden],.social-tray [hidden],.exhibit-dialog [hidden] { display: none !important; }
.social-launch svg { fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.social-launch > span { font: 700 11px var(--font); letter-spacing: .02em; }
.social-launch:hover { color: #6fe9f7; border-color: rgba(111,233,247,.4); box-shadow: 0 11px 34px #0009; transform: translateY(-2px); }
.social-modal-open { overflow: hidden; scrollbar-gutter: stable; }
.social-tray,.exhibit-dialog,.profile-sharing-dialog { color: var(--ink); border: 1px solid rgba(195,152,240,.24); background: #100a17; box-shadow: 0 24px 100px #0009; padding: 0; }
.social-tray:not([open]),.exhibit-dialog:not([open]),.profile-sharing-dialog:not([open]) { display: none; }
.social-tray::backdrop,.exhibit-dialog::backdrop,.profile-sharing-dialog::backdrop { background: rgba(5,3,9,.5); backdrop-filter: blur(2px); }
.social-tray button,.exhibit-dialog button,.profile-sharing-dialog button { font-family: inherit; }
.social-tray :focus-visible,.exhibit-dialog :focus-visible,.profile-sharing-dialog :focus-visible,.social-launch:focus-visible { outline: 2px solid #6fe9f7; outline-offset: 4px; }
.social-kicker,.social-slot-code { display: block; color: #b49ac8; font: 650 10px/1.35 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.social-status { display: inline-block; flex: none; padding: 4px 7px; border: 1px solid rgba(195,152,240,.24); border-radius: 3px; color: #c4b0d4; font: 600 9px var(--mono); white-space: nowrap; }
.social-close { display: grid; place-items: center; flex: none; width: 44px; height: 44px; padding: 0 0 3px; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; background: rgba(255,255,255,.025); color: var(--ink); font-size: 25px; cursor: pointer; transition: color 120ms ease,border-color 120ms ease,transform 120ms ease; }
.social-close:hover { color: #6fe9f7; border-color: #6fe9f7; }
.social-primary,.social-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 44px; padding: 10px 14px; border: 1px solid rgba(195,152,240,.22); border-radius: 10px; color: var(--ink); font: 600 12px var(--font); text-decoration: none; cursor: pointer; transition: color 120ms ease,border-color 120ms ease,background-color 120ms ease,transform 120ms ease; }
.social-primary { background: linear-gradient(120deg,rgba(155,93,229,.28),rgba(155,93,229,.1)); }
.social-secondary { background: transparent; }
.social-primary:hover,.social-secondary:hover { color: #6fe9f7; border-color: #6fe9f7; transform: translateY(-1px); }
.share-fallback { display: block; flex-basis: 100%; width: 100%; margin-top: 8px; color: var(--ink-2); font-size: 11px; }
.share-fallback input { display: block; width: 100%; min-width: 0; margin-top: 6px; padding: 9px; border: 1px solid #6fe9f766; border-radius: 3px; background: #100a17; color: var(--ink); font-size: 12px; }

/* Desktop rail / mobile full-height sheet share the same DOM and focus model. */
.social-tray[open] { display: flex; flex-direction: column; position: fixed; inset: 0 0 0 auto; margin: 0; width: min(430px,calc(100vw - 24px)); height: 100dvh; max-width: none; max-height: none; overflow: hidden; border-width: 0 0 0 1px; border-radius: 18px 0 0 18px; background: radial-gradient(circle at 92% 4%,rgba(155,93,229,.13),transparent 32%),#100a17; animation: social-arrive 190ms cubic-bezier(.2,.75,.25,1); }
.social-tray-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 28px 28px 13px; }
.social-tray-head h2 { margin: 7px 0 0; font: 700 32px/.98 Archivo,var(--font); letter-spacing: -.04em; }
.social-preview-note { max-width: 48ch; margin: 0; padding: 0 28px 23px; color: #a99bb5; font-size: 12px; line-height: 1.55; }
.social-preview-note .social-status { margin-right: 5px; }
.social-tabs { display: grid; grid-template-columns: repeat(3,1fr); gap: 4px; margin: 0 20px; padding: 4px; border: 1px solid rgba(255,255,255,.075); border-radius: 13px; background: rgba(4,2,7,.36); }
.social-tabs button { min-height: 42px; border: 0; border-radius: 9px; background: transparent; color: #a99bb5; cursor: pointer; font-size: 12px; transition: color 120ms ease,background-color 120ms ease,box-shadow 120ms ease; }
.social-tabs button[aria-selected="true"] { color: #dffcff; background: rgba(111,233,247,.09); box-shadow: inset 0 0 0 1px rgba(111,233,247,.1); }
.social-tray-body { flex: 1; min-height: 0; overflow-y: auto; padding: 26px 28px 30px; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: rgba(195,152,240,.26) transparent; }
.social-tray-body > [role="tabpanel"]:not([hidden]) { animation: social-lane-arrive 150ms ease-out; }
.social-lookup label { display: block; margin-bottom: 10px; font-size: 14px; font-weight: 600; }
.social-lookup > div { display: flex; overflow: hidden; border: 1px solid #6fe9f733; border-radius: 12px; background: rgba(4,2,7,.58); transition: border-color 120ms ease,box-shadow 120ms ease; }
.social-lookup > div:focus-within { border-color: #6fe9f799; box-shadow: 0 0 0 3px #6fe9f70d; }
.social-lookup input { flex: 1; width: 100%; min-width: 0; border: 0; background: transparent; color: var(--ink); padding: 12px; font-size: 12px; }
.social-lookup button { flex: none; width: 46px; min-height: 46px; border: 0; border-left: 1px solid #6fe9f71f; background: #6fe9f708; color: #6fe9f7; font-size: 20px; cursor: pointer; }
.social-lookup small { display: block; margin-top: 9px; color: #a99bb5; font-size: 11px; }
.social-people-results { margin-top: 12px; padding-top: 4px; }
.social-people-results[aria-busy="true"] { min-height: 74px; padding: 25px 4px; color: #a99bb5; font-size: 12px; }
.people-search-state { display: flex; align-items: center; gap: 12px; min-height: 74px; padding: 14px 4px; color: var(--ink-2); }
.people-search-state > span { display: grid; flex: none; width: 36px; height: 36px; place-items: center; border-radius: 50%; background: color-mix(in srgb,var(--live) 8%,transparent); color: var(--live); }
.people-search-state strong,.people-search-state small { display: block; }
.people-search-state strong { font-size: 12px; }.people-search-state small { margin-top: 4px; color: var(--ink-3); font-size: 11px; line-height: 1.45; }
.people-search-state.is-error > span { background: color-mix(in srgb,var(--down) 8%,transparent); color: var(--down); }
.person-row-state { background: color-mix(in srgb,var(--ink) 3.5%,transparent); color: var(--ink-3); font-size: 10px; }
.social-people-results .person-row-copy small { font-size: 10px; }
.social-people-results .person-row-state { font-size: 9px; }
.people-inline-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 2px; border-bottom: 1px solid rgba(255,255,255,.075); }
.people-inline-head strong { font-size: 11px; }.people-inline-head a { color: #6fe9f7; font-size: 10px; text-decoration: none; }
.social-unavailable { margin-top: 26px; padding: 25px 0; border-top: 1px solid rgba(255,255,255,.08); }
.social-unavailable h3 { max-width: 18ch; margin: 15px 0 12px; font: 600 25px/1.12 Archivo,var(--font); letter-spacing: -.025em; }
.social-unavailable p,.social-object-rule p { color: #b7a9c2; font-size: 13px; line-height: 1.65; }
.social-unavailable .social-status { margin-top: 5px; }
.social-room-link { display: block; margin-top: 18px; border-left: 2px solid #6fe9f7; padding: 11px 0 11px 15px; text-decoration: none; color: var(--ink); transition: padding-left 120ms ease,color 120ms ease; }
.social-room-link:hover { padding-left: 19px; color: #6fe9f7; }
.social-room-link span { display: block; margin-bottom: 5px; color: #a99bb5; font-size: 11px; }
.social-room-link strong { display: flex; justify-content: space-between; font-size: 13px; }
.social-room-link i { color: #6fe9f7; font-style: normal; }
.social-object-rule { margin-top: 24px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.075); }
.social-object-rule strong { font-size: 13px; }
.social-tray-foot { display: grid; gap: 9px; padding: 14px 28px max(20px,env(safe-area-inset-bottom)); border-top: 1px solid rgba(255,255,255,.075); background: rgba(7,4,11,.72); font-size: 11px; }
.social-tray-foot a { text-decoration: none; }
.social-foot-primary { display: flex; min-height: 45px; align-items: center; justify-content: space-between; padding: 0 15px; border-radius: 11px; background: linear-gradient(105deg,rgba(111,233,247,.16),rgba(155,93,229,.14)); color: #e9fbff; }
.social-foot-primary i { color: #6fe9f7; font-style: normal; }
.social-foot-quiet { justify-self: center; padding: 6px 10px; color: #9f91aa; }
.social-foot-primary:hover,.social-foot-quiet:hover { color: #6fe9f7; }
.social-lane-ready { display: grid; justify-items: start; min-height: 115px; align-content: center; padding: 18px 0; }
.social-lane-glyph { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; background: rgba(111,233,247,.08); color: #6fe9f7; }
[data-friends-slot],[data-friend-activity-slot],[data-binder-inbox-slot] { position: relative; }
[data-friends-slot][aria-busy="true"],[data-friend-activity-slot][aria-busy="true"],[data-binder-inbox-slot][aria-busy="true"] { min-height: 132px; pointer-events: none; }
[data-friends-slot][aria-busy="true"] > *,[data-friend-activity-slot][aria-busy="true"] > *,[data-binder-inbox-slot][aria-busy="true"] > * { opacity: .12; }
[data-friends-slot][aria-busy="true"]::after,[data-friend-activity-slot][aria-busy="true"]::after,[data-binder-inbox-slot][aria-busy="true"]::after { content: ""; position: absolute; inset: 8px 0 auto; height: 104px; border-radius: 12px; background: linear-gradient(100deg,rgba(255,255,255,.025) 20%,rgba(111,233,247,.1) 42%,rgba(255,255,255,.025) 64%) 0 0/220% 100%; animation: social-loading 950ms ease-in-out infinite; }

/* The artwork has the large canvas; the human story and future conversation
   have a separate column. Market values never become the exhibit headline. */
.exhibit-dialog[open] { display: block; width: min(1120px,calc(100vw - 48px)); max-width: none; max-height: calc(100dvh - 48px); margin: auto; border-radius: 5px; overflow-y: auto; overscroll-behavior: contain; animation: social-arrive 180ms ease-out; }
.exhibit-bar { position: sticky; top: 0; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding: 12px 20px; border-bottom: 1px solid rgba(255,255,255,.1); background: #100a17f5; }
.exhibit-bar > div { display: flex; align-items: center; gap: 22px; }.exhibit-position { color: #6fe9f7; font: 11px var(--mono); }
.exhibit-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.exhibit-stage { display: flex; flex-direction: column; align-items: center; gap: 18px; padding: 30px; background: radial-gradient(ellipse at 50% 45%,rgba(155,93,229,.13),transparent 70%),#09060e; border-right: 1px solid rgba(255,255,255,.08); }
.exhibit-stage > img { display: block; width: auto; max-width: 100%; height: min(52dvh,490px); object-fit: contain; border-radius: 5px; box-shadow: 0 18px 45px #0007; }
.exhibit-no-art { display: grid; align-content: center; gap: 14px; width: 75%; min-height: 340px; padding: 25px; border: 1px dashed rgba(195,152,240,.26); text-align: center; }.exhibit-no-art span { color: #a99bb5; font-size: 12px; }
.exhibit-image-label { max-width: 34ch; text-align: center; color: #a99bb5; font: 10px/1.6 var(--mono); }
.exhibit-navigation { display: flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; margin-top: auto; border-top: 1px solid rgba(255,255,255,.1); padding-top: 15px; }
.exhibit-navigation button { min-height: 44px; padding: 8px; border: 0; background: transparent; color: #d3bddf; font-size: 12px; cursor: pointer; }.exhibit-navigation button:hover { color: #6fe9f7; }.exhibit-navigation span { color: #a99bb5; font: 10px var(--mono); }
.exhibit-story { min-width: 0; padding: 30px; }
.exhibit-curator { display: flex; gap: 12px; align-items: center; color: var(--ink); text-decoration: none; }.exhibit-curator > span:first-child { flex: none; }.exhibit-curator strong,.exhibit-curator small { display: block; }.exhibit-curator strong { font-size: 13px; }.exhibit-curator small { margin-top: 5px; color: #b7a9c2; font-size: 11px; }
.exhibit-heading { margin: 28px 0 20px; }.exhibit-heading h2 { margin: 10px 0; font: 700 clamp(23px,2.8vw,37px)/1.04 Archivo,var(--font); letter-spacing: -.035em; overflow-wrap: anywhere; }.exhibit-heading p { color: #b7a9c2; font-size: 12px; line-height: 1.5; }
.exhibit-caption { margin: 20px 0; padding: 3px 0 3px 17px; border-left: 2px solid #6fe9f7; font-size: 17px; line-height: 1.5; overflow-wrap: anywhere; }.exhibit-unwritten { color: #a99bb5; font-size: 13px; }
.exhibit-copy-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 24px 0; padding: 16px 0; border-block: 1px solid rgba(255,255,255,.08); }.exhibit-copy-facts dt { color: #a99bb5; font: 9px var(--mono); text-transform: uppercase; letter-spacing: .08em; }.exhibit-copy-facts dd { margin: 7px 0 0; font-size: 12px; overflow-wrap: anywhere; }
.exhibit-links { display: flex; flex-wrap: wrap; gap: 8px; }.exhibit-privacy-note { color: #a99bb5; font-size: 10px; line-height: 1.6; }
.exhibit-conversation { margin-top: 27px; padding-top: 21px; border-top: 1px solid rgba(111,233,247,.25); }.conversation-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; }.conversation-head h3 { margin: 0; font-size: 17px; }.exhibit-conversation p { color: #b7a9c2; font-size: 12px; line-height: 1.65; }.conversation-rules summary { cursor: pointer; color: #c5a3e0; font-size: 11px; padding-block: 8px; }
@keyframes social-arrive { from { opacity: .55; transform: translateX(24px); } to { opacity: 1; transform: none; } }
@keyframes social-sheet-arrive { from { opacity: .65; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes social-lane-arrive { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
@keyframes social-loading { from { background-position: 100% 0; } to { background-position: -100% 0; } }
@media(max-width:700px) {
  .social-modal-open { scrollbar-gutter: auto; }
  .social-tray[open] { inset: 0; width: 100%; height: 100dvh; border-radius: 0; border-width: 0; animation-name: social-sheet-arrive; }
  .social-tray-head { padding: max(22px,env(safe-area-inset-top)) 20px 12px; }
  .social-preview-note { padding-inline: 20px; }
  .social-tabs { margin-inline: 14px; }
  .social-tray-body { padding: 24px 20px 28px; }
  .social-tray-foot { padding-inline: 20px; }
  .exhibit-dialog[open] { width: 100%; max-height: 100dvh; height: 100dvh; border-radius: 0; border-width: 0; }
  .exhibit-layout { grid-template-columns: 1fr; }.exhibit-stage { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.08); padding: 24px; }
  .exhibit-stage > img { height: min(43dvh,390px); }.exhibit-story { padding: 24px 22px max(24px,env(safe-area-inset-bottom)); }
}
@media(prefers-reduced-motion:reduce) { .social-tray[open],.exhibit-dialog[open],.social-tray-body > [role="tabpanel"]:not([hidden]),[aria-busy="true"]::after { animation: none; }.social-launch,.social-primary,.social-secondary,.social-room-link { transition: none; } }
/* Keep footer controls scrollable above the floating launcher. */
body:has(.social-launch) > .wrap { padding-bottom: max(96px,calc(var(--s-9) + var(--mobile-dock-clearance))); }
@media(max-width:1000px) { .social-launch { bottom: calc(88px + env(safe-area-inset-bottom)); } }
@media(max-width:700px) { .social-launch { right: max(16px,env(safe-area-inset-right)); width:56px; padding:0; }.social-launch > span { display:none; } }

/* Card context is social evidence attached to its canonical object, not a
   detached people feed. It exposes only the booleans the server authorized. */
.social-object-context { margin:22px 0; padding:22px; border:1px solid var(--glass-edge); border-radius:var(--r-md); background:linear-gradient(145deg,var(--violet-dim),rgba(111,233,247,.025)); }
.social-object-context-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }.social-object-context-head h2 { margin:0; font:650 18px var(--font-display); }.social-object-context-head > a { color:var(--violet-lo); font-size:11px; white-space:nowrap; }
.social-object-context-summary { margin:14px 0 18px; color:var(--ink-2); font-size:12px; line-height:1.55; }.social-object-context-summary strong { color:var(--ink); }
.social-object-context-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0; padding:0; list-style:none; }.social-object-context-list a { display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:10px; align-items:center; min-height:62px; padding:10px 12px; border:1px solid var(--glass-edge); border-radius:11px; background:rgba(0,0,0,.12); transition:border-color var(--t-fast),background var(--t-fast); }.social-object-context-list a:hover { border-color:rgba(155,93,229,.45); background:rgba(255,255,255,.04); }.social-object-context-list .avatar-obj { width:34px; }.social-object-person { min-width:0; }.social-object-person strong,.social-object-person small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.social-object-person strong { font-size:12px; }.social-object-person small { margin-top:3px; color:var(--ink-3); font-size:10px; }
.social-object-signals { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:4px; }.social-object-signals i { padding:3px 6px; border-radius:99px; background:var(--violet-dim); color:var(--violet-lo); font:600 8px var(--mono); font-style:normal; letter-spacing:.04em; text-transform:uppercase; }.social-object-open { display:none; color:var(--violet-lo); font-size:10px; }
.social-object-context-more { display:inline-block; margin-top:12px; color:var(--violet-lo); font-size:11px; }.social-object-context-boundary { margin:16px 0 0; padding-top:12px; border-top:1px solid var(--glass-edge); color:var(--ink-3); font-size:10px; line-height:1.5; }
body:has(.social-object-context) .social-launch { display:none; }
@media(max-width:720px) { .social-object-context { padding:18px; }.social-object-context-list { grid-template-columns:1fr; }.social-object-context-list a { grid-template-columns:36px minmax(0,1fr) auto; }.social-object-signals { display:none; }.social-object-open { display:block; } }
@media(max-width:420px) { .social-object-context-head { display:block; }.social-object-context-head > a { display:inline-block; margin-top:8px; } }

/* Owner tools stay beside the object they change. The visitor composition is
   untouched; this sheet explains existing access without silently changing it. */
.profile-sharing-strip { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 22px; margin: 18px 0 24px; padding: 14px 18px; border: 1px solid var(--profile-edge); border-left: 2px solid #b58ace; background: #c398f009; }
.sharing-state { display: inline-flex; align-items: center; flex: none; gap: 8px; color: #cbb6dc; font: 600 11px var(--font); }
.sharing-state i { width: 7px; height: 7px; border: 1px solid currentColor; border-radius: 50%; }
.sharing-state.is-public { color: #6fe9f7; }.sharing-state.is-public i { background: currentColor; }
.profile-sharing-strip p { flex: 1 1 260px; margin: 0; color: #b7a9c2; font-size: 12px; line-height: 1.5; }
.profile-inline-edit { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: #c5a3e0; font: 600 11px var(--font); text-decoration: none; }
.profile-inline-edit:hover { color: #6fe9f7; }.profile-inline-edit:focus-visible { outline: 2px solid #6fe9f7; outline-offset: 3px; }
.profile-module-tools { display: flex; align-items: flex-end; flex-direction: column; gap: 2px; }
#interests,#showcase-cards,[id^="showcase-card-"] { scroll-margin-top: 100px; }
.profile-sharing-dialog[open] { display: flex; flex-direction: column; width: min(580px,calc(100vw - 32px)); height: min(760px,calc(100dvh - 32px)); max-width: none; max-height: none; margin: auto; border-radius: 5px; overflow: hidden; }
.profile-sharing-body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 28px; }
.profile-sharing-body h2 { margin: 12px 0 25px; font: 700 clamp(30px,5vw,43px)/1.02 Archivo,var(--font); letter-spacing: -.04em; }
.sharing-identity { display: flex; align-items: center; gap: 14px; padding: 18px 0; border-block: 1px solid #c398f033; }
.sharing-identity > div { flex: 1; min-width: 0; }.sharing-identity strong { display: block; font-size: 16px; overflow-wrap: anywhere; }
.sharing-identity > div > span { display: block; margin-top: 5px; color: #b7a9c2; font: 11px var(--mono); overflow-wrap: anywhere; }
.sharing-explanation { margin: 16px 0; color: #b7a9c2; font-size: 13px; line-height: 1.6; }
.sharing-links { display: flex; gap: 8px; flex-wrap: wrap; }.sharing-links .social-primary { flex: 1; }
.profile-sharing-body h3 { margin: 28px 0 12px; font-size: 14px; }
.sharing-preview-boundary { margin: 14px 0 0; padding: 11px 13px; border-left: 2px solid var(--violet-hi); background: color-mix(in srgb,var(--violet-hi) 7%,transparent); color: var(--ink-2); font-size: 11px; line-height: 1.55; }
.sharing-preview-boundary strong { color: var(--ink); }
.sharing-access-list { margin: 0; }.sharing-access-list > div { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 44px; padding: 10px 0; border-top: 1px solid #ffffff10; font-size: 12px; }
.sharing-access-list dd { margin: 0; color: #b7a9c2; }.sharing-access-list dd.is-visible { color: #6fe9f7; }
.sharing-footnote { margin: 15px 0 22px; color: #a99bb5; font-size: 11px; line-height: 1.65; }
.sharing-settings-link { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 15px 17px; border-left: 2px solid #6fe9f7; color: var(--ink); background: #6fe9f708; text-decoration: none; }
.sharing-settings-link strong { font-size: 13px; }.sharing-settings-link small { display: block; margin-top: 5px; color: #b7a9c2; font-size: 11px; }.sharing-settings-link > span:last-child { color: #6fe9f7; }
@media(max-width:700px) {
  .profile-sharing-strip > a { width: 100%; }.profile-sharing-body { padding: 22px 20px max(22px,env(safe-area-inset-bottom)); }
  .profile-sharing-dialog[open] { inset: 0; width: 100%; height: 100dvh; margin: 0; border-width: 0; border-radius: 0; }
  .sharing-identity { flex-wrap: wrap; }.sharing-links > * { flex: 1 1 100%; width: 100%; }
}
@media(max-width:640px) {
  .people-view .wrap { width: min(calc(100% - 24px),1280px); padding-inline: 0; }
  .people-page { min-width: 0; }
  .people-search { grid-template-columns: 19px minmax(0,1fr) auto; gap: 6px; padding-left: 12px; }
  .people-search input { width: 100%; font-size: 16px; }
  .people-search button { min-width: 64px; min-height: 44px; padding-inline: 10px; font-size: 9px; }
}

/* A profile is read at normal viewing distance. The previous 7–9px labels
   made collection, showcase, binder and milestone stories depend on zoom.
   Keep the instrument styling, but give the words room to breathe. */
.profile-page .profile-action { font-size: 12px; }
.profile-page .profile-mode-dock strong { font-size: 14px; }
.profile-page .profile-mode-dock small { font-size: 12px; line-height: 1.35; white-space: normal; }
.profile-page .profile-mode-dock em { font-size: 10px; }
.profile-page .profile-subnav a { font-size: 12px; }
.profile-page .profile-subnav a span { font-size: 11px; }
.profile-page .telemetry-lead,
.profile-page .lane-rail-label { padding-left: 16px; }
.profile-page .telemetry-lead > strong,
.profile-page .lane-rail-label > strong { font-size: 14px; }
.profile-page .telemetry-lead > span,
.profile-page .lane-rail-label > span { font-size: 11px; letter-spacing: .08em; }
.profile-page .profile-portfolio-entry { font-size: 12px; min-height: 44px; }
.profile-page .profile-stats .stat:first-child { padding-left: 18px; }
.profile-page .profile-stats .k { font-size: 11px; letter-spacing: .05em; line-height: 1.3; }
.profile-page .profile-interest span { font-size: 11px; letter-spacing: .07em; }
.profile-page .profile-interest strong { font-size: 13px; line-height: 1.35; }
.profile-page .panel-index { font-size: 11px; letter-spacing: .1em; }
.profile-page .signal-panel .profile-label,
.profile-page .signal-panel .profile-module-state { font-size: 12px; }
.profile-page .signal-panel .profile-module-state { white-space: normal; line-height: 1.35; text-align: right; }
.profile-page .profile-exhibit-code { font-size: 10px; letter-spacing: .08em; }
.profile-page .profile-featured-copy strong {
  display: -webkit-box; min-height: 2.6em; overflow: hidden; font-size: 14px;
  line-height: 1.3; white-space: normal; -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.profile-page .profile-featured-copy small { font-size: 12px; line-height: 1.4; }
.profile-page .profile-featured-copy em { font-size: 12px; line-height: 1.35; }
.profile-page .profile-featured-copy q { font-size: 12px; line-height: 1.45; padding: 8px; }
.profile-page .current-chase-category,
.profile-page .current-chase-percent,
.profile-page .current-chase-route > span,
.profile-page .current-chase-open { font-size: 11px; letter-spacing: .08em; }
.profile-page .current-chase-copy p,
.profile-page .current-chase-route small { font-size: 12px; line-height: 1.5; }
.profile-page .profile-binder-story dt { font-size: 12px; letter-spacing: .08em; }
.profile-page .profile-binder-actions a { min-height: 44px; font-size: 12px; }
.profile-page .binder-index-item { flex-basis: 170px; }
.profile-page .binder-index-item strong { font-size: 12px; line-height: 1.35; white-space: normal; }
.profile-page .binder-index-item small { font-size: 11px; line-height: 1.4; }
.profile-page .trophy-next-top { font-size: 11px; }
.profile-page .trophy-next-card > small { font-size: 12px; line-height: 1.5; }
.profile-page .trophy-next-card > em { font-size: 12px; }
.profile-page .signal-caption strong { font-size: 14px; }
.profile-page .signal-caption span { font-size: 12px; line-height: 1.5; }
.profile-page .network-frequencies > span { font-size: 11px; letter-spacing: .08em; }
.profile-page .network-frequencies a { padding: 7px 9px; font-size: 12px; }
@media (max-width: 640px) {
  .profile-page .profile-featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 12px; }
  .profile-page .profile-featured-copy strong { min-height: 3.9em; -webkit-line-clamp: 3; }
}

/* Collector discovery is a reading surface too. Relationship state must be
   recognizable beside a name on a phone, not rendered as miniature trim. */
.people-view .people-page .people-search button { min-height: 44px; font-size: 13px; letter-spacing: .02em; }
.people-page .people-search a { font-size: 12px; }
.people-page .people-result-head > span { font-size: 12px; letter-spacing: .04em; }
.people-page .person-row-copy small,
.people-page .person-row-copy > span { font-size: 12px; }
.people-page .person-row-state { font-size: 12px; }
.social-people-results .person-row-copy strong { font-size: 14px; }
.social-people-results .person-row-copy small,
.social-people-results .person-row-copy > span { font-size: 12px; }
.social-people-results .person-row-state { font-size: 11px; }
.people-rows .people-row-connect { display: block; width: fit-content; max-width: calc(100% - 4px); margin: -5px 4px 14px 70px; color: var(--live); font: 600 12px/1.4 var(--font); text-decoration: none; }
.people-rows .people-row-connect summary,
.people-rows .people-row-connect > button,
.people-rows a.people-row-connect { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 12px; border: 1px solid color-mix(in srgb,var(--live) 40%,transparent); border-radius: 8px; background: color-mix(in srgb,var(--live) 8%,transparent); color: var(--live); font: inherit; cursor: pointer; }
.people-rows .people-row-connect summary { list-style: none; }
.people-rows .people-row-connect summary::-webkit-details-marker { display: none; }
.people-rows .people-row-connect :is(summary,button):hover,
.people-rows a.people-row-connect:hover { background: color-mix(in srgb,var(--live) 15%,transparent); }
.people-rows .people-row-connect :is(summary,button):focus-visible,
.people-rows a.people-row-connect:focus-visible { outline: 2px solid var(--live); outline-offset: 3px; }
.people-row-connect-panel { max-width: 52ch; margin-top: 8px; padding: 14px; border: 1px solid color-mix(in srgb,var(--ink) 18%,transparent); border-radius: 8px; background: color-mix(in srgb,var(--ink) 5%,transparent); }
.people-row-connect-panel p { margin: 0 0 12px; color: var(--ink-2); font: 400 12px/1.55 var(--font); }
.people-row-connect-panel button { min-height: 44px; padding: 9px 12px; border: 1px solid var(--live); border-radius: 8px; background: color-mix(in srgb,var(--live) 14%,transparent); color: var(--ink); font: 600 12px var(--font); cursor: pointer; }
.people-row-connect-panel button:disabled,
.people-rows .people-row-connect > button:disabled { cursor: wait; opacity: .6; }
.people-rows .people-row-feedback { margin: -5px 4px 14px 70px; color: var(--down); font: 500 12px/1.5 var(--font); }
.people-rows .people-row-feedback[hidden] { display: none; }
.social-people-results .people-rows .people-row-connect,
.social-people-results .people-rows .people-row-feedback { margin-left: 52px; }
@media (max-width: 600px) {
  .people-rows .people-row-connect,
  .people-rows .people-row-feedback { margin-left: 58px; }
  .social-people-results .people-rows .people-row-connect,
  .social-people-results .people-rows .people-row-feedback { margin-left: 50px; }
}
