/* Feature composition only. Inputs, menus, chips and modal shells use shared DS owners. */
.bctx-fields { display:flex; flex-direction:column; gap:var(--space-7); }
.bctx-form-section { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-5); }
.bctx-form-section > .field,.bctx-form-section > .bctx-form-pair { width:100%; }
.bctx-form-section h3,.bctx-section h3 { margin:0; }
.bctx-form-section + .bctx-form-section { border-top:var(--stroke-hairline) solid var(--neutral-200); padding-top:var(--space-7); }
.bctx-form-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-6); }
.bctx-avatar-upload { display:flex; align-items:center; gap:var(--space-6); width:100%; }
.bctx-avatar-upload > img,.bctx-avatar-upload-empty { width:var(--space-14); height:var(--space-14); object-fit:cover; border-radius:var(--radius-lg); flex:none; }
.bctx-avatar-upload-empty { display:grid; place-items:center; background:var(--surface-subtle); color:var(--text-muted); font-size:var(--space-10); }
.bctx-avatar-upload > .field { min-width:0; flex:1; }
.bctx-detail-body { display:flex; flex-direction:column; gap:var(--space-8); padding:var(--space-8) 0; min-height:0; overflow:auto; }
.bctx-description { margin:0; color:var(--text-secondary); }
.bctx-section { display:flex; flex-direction:column; gap:var(--space-5); min-width:0; }
.bctx-section p { margin:0; }
.bctx-section + .bctx-section { border-top:var(--stroke-hairline) solid var(--neutral-200); padding-top:var(--space-8); }
.bctx-section-head { display:flex; align-items:center; justify-content:space-between; gap:var(--space-5); }
.bctx-section .crm-table { width:100%; }
.bctx-section .crm-table a { color:var(--text-secondary); overflow-wrap:anywhere; }
.bctx-source-link { text-decoration:none; display:flex; align-items:center; gap:var(--space-3); color:var(--text-secondary); overflow-wrap:anywhere; }
.bctx-source-link:hover { color:var(--text-primary); text-decoration:none; }
.bctx-avatar-placeholder { display:grid; place-items:center; min-height:calc(var(--space-14) * 2); background:var(--surface-subtle); color:var(--text-muted); font-size:var(--space-12); }
.bctx-section audio,[data-bctx-modal] audio { max-width:100%; width:100%; }
.bctx-influencer-row { display:flex; flex-direction:column; gap:var(--space-5); padding-block:var(--space-5); }
.bctx-influencer-row + .bctx-influencer-row { border-top:var(--stroke-hairline) solid var(--neutral-200); }
.bctx-influencer-head { display:flex; align-items:center; gap:var(--space-4); color:var(--text-secondary); }
.bctx-influencer-head > span { flex:1; }

.bctx-section h3{font:var(--fw-medium) var(--type-b3-size)/var(--type-b3-lh) var(--font-sans);color:var(--neutral-700)}
.bctx-source-overview{display:flex;align-items:center;gap:var(--space-5)}
.bctx-source-overview>div{flex:1}
.bctx-source-overview p{margin:var(--space-1) 0 0;color:var(--neutral-600);font:var(--fw-regular) var(--type-c1-size)/var(--type-c1-lh) var(--font-sans)}
.bctx-source-symbol{width:var(--space-12);height:var(--space-12);display:grid;place-items:center;background:var(--neutral-50);border:var(--stroke-hairline) solid var(--neutral-200);border-radius:var(--radius-lg);color:var(--neutral-500);font-size:var(--space-7)}
.bctx-content-list{border:var(--stroke-hairline) solid var(--neutral-200);border-radius:var(--radius-lg);padding-inline:var(--space-5)}
.bctx-content-row{display:flex;align-items:center;gap:var(--space-4)}
.bctx-content-row+.bctx-content-row{border-top:var(--stroke-hairline) solid var(--neutral-200)}
.bctx-content-row>.collection-open{min-width:0;flex:1;padding-block:var(--space-5)}
.bctx-content-row>.collection-more{opacity:0;pointer-events:none}
.bctx-content-row:is(:hover,:focus-within)>.collection-more{opacity:1;pointer-events:auto}
.bctx-source-summary{display:flex;gap:var(--space-5);align-items:center;padding:var(--space-6);border:var(--stroke-hairline) solid var(--neutral-200);border-radius:var(--radius-lg)}
.bctx-source-summary>div{min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}
.bctx-source-summary>.ph{color:var(--neutral-500);font-size:var(--space-7)}
.bctx-content-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-10) var(--space-6);border:var(--stroke-hairline) solid var(--neutral-200);border-radius:var(--radius-lg);text-align:center}
.bctx-content-empty>.ph{font-size:var(--space-10);color:var(--neutral-500)}
.bctx-content-empty>span{color:var(--neutral-600);font-size:var(--type-c1-size);line-height:var(--type-c1-lh)}
.bctx-avatar-identity{display:flex;align-items:center;gap:var(--space-7)}
.bctx-portrait{width:calc(var(--space-14)*2);height:calc(var(--space-14)*2);flex:none;border-radius:var(--radius-xl);overflow:hidden;background:var(--neutral-50)}
.bctx-portrait>img{width:100%;height:100%;object-fit:cover}
.bctx-avatar-intro{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-5);min-width:0}
.bctx-avatar-intro h3{margin:0;font:var(--fw-medium) var(--type-b1-size)/var(--type-b1-lh) var(--font-sans)}
.bctx-avatar-intro p{margin:0;color:var(--neutral-600)}
.bctx-meta{margin:0}
.bctx-meta>div{display:flex;justify-content:space-between;gap:var(--space-5);padding-block:var(--space-5)}
.bctx-meta>div+div{border-top:var(--stroke-hairline) solid var(--neutral-200)}
.bctx-meta dt{color:var(--neutral-600)}
.bctx-meta dd{margin:0}

.bctx-avatar-extra>summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-5);cursor:pointer;list-style:none;color:var(--neutral-600);font:var(--fw-medium) var(--type-b3-size)/var(--type-b3-lh) var(--font-sans)}
.bctx-avatar-extra>summary::-webkit-details-marker,.bctx-content-group>summary::-webkit-details-marker{display:none}
.bctx-avatar-extra[open]>summary{margin-bottom:var(--space-6)}
.bctx-content-group+.bctx-content-group{border-top:var(--stroke-hairline) solid var(--neutral-200)}
.bctx-content-group>summary{display:flex;align-items:center;gap:var(--space-5);padding-block:var(--space-6);cursor:pointer;list-style:none;font:var(--fw-regular) var(--type-b3-size)/var(--type-b3-lh) var(--font-sans)}
.bctx-content-group>summary>.ph{color:var(--neutral-500)}
.bctx-content-group>summary>span:first-of-type{flex:1}
.bctx-group-count{color:var(--neutral-600);font-size:var(--type-c1-size)}
.bctx-content-group[open]>summary>.ph:last-child{transform:rotate(180deg)}
.bctx-content-group>div{padding-left:var(--space-8)}
