.bus-community-main { width:100%; max-width:calc(var(--space-12) * 28); margin-inline:auto; padding:var(--space-6); }
.bus-community-heading,.bus-community-detail-heading,.bus-community-toolbar,.bus-community-actions,.bus-community-search { display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-3); }
.bus-community-heading,.bus-community-detail-heading { justify-content:space-between; margin-bottom:var(--space-5); }
.bus-community-heading h1 { margin:var(--space-2) 0 0; font-size:var(--fs-h1); line-height:var(--lh-h1); }
.bus-community-heading a:not(.btn) { font-size:var(--fs-xs); color:var(--muted-foreground); }
.bus-community-page .btn { white-space:normal; }
.bus-community-detail-heading h2 { margin:0; font-size:var(--fs-h3); overflow-wrap:anywhere; }
.bus-community-detail-heading > div { min-width:0; }
.bus-community-meta { font-size:var(--fs-sm); color:var(--muted-foreground); margin-block:var(--space-3); overflow-wrap:anywhere; }
.bus-community-search { flex-wrap:nowrap; }
.bus-community-search .input { flex:1; min-width:0; }
.bus-community-search .btn { flex-shrink:0; }
.bus-community-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-5); margin-block:var(--space-5); }
.bus-community-item { min-width:0; padding-bottom:var(--space-4); border-bottom:1px solid var(--border); }
.bus-community-item a { display:block; color:var(--foreground); text-decoration:none; }
.bus-community-thumbnail { display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:10/3; background:var(--secondary); border:1px solid var(--border); font-size:var(--fs-sm); text-rendering:geometricPrecision; }
.bus-community-thumbnail svg { display:block; width:100%; height:auto; pointer-events:none; }
.bus-community-item h2 { margin:var(--space-3) 0 var(--space-1); font-size:var(--fs-h4); overflow-wrap:anywhere; }
.bus-community-item p { margin-block:var(--space-1); }
.bus-community-toolbar { justify-content:space-between; }
.bus-community-toolbar #communityVariantField { display:flex; align-items:center; gap:var(--space-2); min-width:0; max-width:100%; font-size:var(--fs-sm); }
.bus-community-toolbar #communityVariantField > label { flex-shrink:0; white-space:nowrap; }
.bus-community-toolbar .block-search-select { min-width:0; max-width:100%; }
.bus-community-toolbar .select { min-width:0; max-width:100%; }
.bus-community-toolbar output { min-width:var(--space-10); text-align:center; font-size:var(--fs-sm); font-variant-numeric:tabular-nums; }
.bus-community-canvas { position:relative; height:clamp(16rem,45dvh,32rem); overflow:hidden; border:1px solid var(--border); background:var(--secondary); padding:var(--space-4); }
.bus-community-canvas[data-ready="true"] { touch-action:none; cursor:grab; }
.bus-community-canvas.is-grabbing { cursor:grabbing; }
#communityDiagram { position:absolute; top:0; left:0; width:2400px; height:720px; transform-origin:0 0; user-select:none; }
#communityDiagram svg { display:block; width:100%; height:100%; text-rendering:geometricPrecision; pointer-events:none; }
#communityDetail { padding-block:var(--space-5); margin-bottom:var(--space-5); border-block:1px solid var(--border); scroll-margin-top:calc(var(--header-height) + var(--space-4)); }
#shareFallback { display:block; margin-top:var(--space-3); font-size:var(--fs-sm); }
.bus-community-footer { margin-top:var(--space-6); padding-top:var(--space-4); border-top:1px solid var(--border); font-size:var(--fs-sm); color:var(--muted-foreground); }
.bus-community-page [hidden] { display:none !important; }
@media(max-width:640px) {
  .bus-community-main { padding:var(--space-4); }
  .bus-community-heading h1 { font-size:var(--fs-h2); }
  .bus-community-results { grid-template-columns:minmax(0,1fr); }
  .bus-community-page :is(.input,.select) { font-size:max(16px,var(--control-font-s)); }
  .bus-community-canvas { padding:var(--space-2); }
}
