#dao-structure-panel { min-width: 0; }
.structure-frame { padding: 24px; border: 1px solid var(--neta-control-border); border-radius: 12px; background: var(--neta-surface); }
.structure-frame.structure-consolidated { border-color: var(--neta-accent); }
.structure-header, .structure-footer { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.structure-identity { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.structure-identity strong { color: var(--neta-text); font-size: 16px; }
.structure-identity span { color: var(--neta-text-secondary); font-size: 12px; letter-spacing: .04em; }
.structure-overview { min-height: 44px; padding: 10px 14px; border: 1px solid var(--neta-control-border); border-radius: 8px; background: var(--neta-surface-raised); color: var(--neta-text); font-size: 13px; text-transform: none; }
.structure-overview[aria-pressed=true] { border-color: var(--neta-accent); color: var(--neta-accent); }
.structure-tree, .structure-branches { list-style: none; padding: 0; margin: 0; display: grid; width: 100%; justify-items: center; }
.structure-tree { padding: 36px 0 28px; }
.structure-branch { display: flex; flex-direction: column; align-items: center; min-width: 0; width: 100%; position: relative; }
.structure-node { display: flex; align-items: center; gap: 18px; padding: 14px 20px; width: 360px; max-width: 100%; min-height: 126px; text-align: left; text-transform: none; border: 1px solid var(--neta-control-border); border-radius: 10px; background: var(--neta-surface-raised); color: var(--neta-text); box-shadow: 0 7px 0 -1px var(--neta-bg), 0 8px 0 var(--neta-border); position: relative; z-index: 1; }
.structure-node:hover { border-color: var(--neta-text-secondary); }
.structure-node[aria-pressed=true] { border-color: var(--neta-accent); box-shadow: 0 7px 0 -1px var(--neta-bg), 0 8px 0 var(--neta-accent); }
.structure-plaza, .structure-art { display: block; width: 96px; height: 96px; flex: 0 0 96px; object-fit: contain; }
.structure-node-copy { display: grid; gap: 5px; min-width: 0; }
.structure-node-copy small { color: var(--neta-text-secondary); font-size: 12px; letter-spacing: .06em; }
.structure-node-copy strong { color: var(--neta-text); font-size: 18px; line-height: 1.3; overflow-wrap: anywhere; }
.structure-selected { color: var(--neta-accent); font-size: 12px; min-height: 18px; }
.structure-branches { padding-top: 56px; position: relative; }
.structure-branches::before { content: ''; position: absolute; top: 8px; height: 48px; left: 50%; width: 1px; background: var(--neta-control-border); }
.structure-peers { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 24px; align-items: start; }
.structure-branches.structure-peers { padding-top: 68px; }
.structure-branches.structure-peers > .structure-branch::before { content: ''; width: 1px; height: 20px; position: absolute; top: -20px; background: var(--neta-control-border); }
.structure-branches.structure-peers::after { content: ''; position: absolute; top: 48px; left: 0; right: 0; height: 1px; background: var(--neta-control-border); }
.structure-footer { border-top: 1px solid var(--neta-border); padding-top: 16px; color: var(--neta-text-secondary); font-size: 12px; }
.structure-legend { display: flex; align-items: center; gap: 8px; }
.structure-legend i { height: 7px; width: 7px; border-radius: 50%; background: var(--neta-accent); }
.structure-detail { display: flex; align-items: baseline; gap: 10px 14px; flex-wrap: wrap; margin-top: 18px; font-size: 13px; color: var(--neta-text-secondary); }
.structure-detail strong { color: var(--neta-text); }
.structure-unavailable { color: var(--neta-warning); }
@media(max-width:640px) {
  .structure-frame { padding: 16px; }
  .structure-node { gap: 10px; padding: 14px 12px; min-height: 112px; }
  .structure-plaza, .structure-art { width: 72px; height: 72px; flex-basis: 72px; }
  .structure-node-copy strong { font-size: 16px; }
  .structure-identity { gap: 6px; }
  .structure-identity span { font-size: 11px; }
  .structure-peers { grid-template-columns: 1fr; }
  .structure-branches.structure-peers { border-left: 1px solid var(--neta-control-border); padding-left: 12px; }
  .structure-branches.structure-peers > .structure-branch::before { top: 54px; left: -12px; height: 1px; width: 12px; }
  .structure-branches.structure-peers::after { display: none; }
}
