.node.circle{min-width:112px;width:112px;height:112px;max-width:112px;border-radius:50%;display:grid;place-items:center;padding:16px}
.node.hexagon{border:0;clip-path:polygon(18% 0,82% 0,100% 50%,82% 100%,18% 100%,0 50%);padding:16px 25px}
.node.parallelogram{border:0;clip-path:polygon(12% 0,100% 0,88% 100%,0 100%);padding-left:25px;padding-right:25px}
.node.capsule{min-width:160px;border-radius:50% / 50%}
.node.tag{border:0;clip-path:polygon(12% 0,100% 0,100% 100%,12% 100%,0 50%);padding-left:28px}
.node.document{border-radius:5px 5px 18px 5px;clip-path:polygon(0 0,100% 0,100% 80%,88% 100%,0 100%)}
.shape-field{margin-bottom:16px}.field-label{display:block;font-size:12px;font-weight:700;margin-bottom:8px}
.shape-field>select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.shape-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.shape-picker button{display:flex;align-items:center;gap:8px;min-width:0;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--muted);text-align:left}
.shape-picker button:hover{border-color:#b9b0ff;background:#f5f3ff;color:var(--primary)}
.shape-picker button.active{border-color:var(--primary);background:#efedff;color:var(--primary);box-shadow:0 0 0 2px #6657e81a}
.shape-picker small{font-size:10px;font-weight:700;overflow:hidden;text-overflow:ellipsis}
.shape-preview{display:block;flex:0 0 34px;width:34px;height:22px;border:2px solid currentColor;background:#6657e81a}
.shape-preview.round{border-radius:7px}.shape-preview.pill,.shape-preview.capsule{border-radius:999px}.shape-preview.rect{border-radius:1px}
.shape-preview.diamond{width:21px;height:21px;margin:0 6px;transform:rotate(45deg)}
.shape-preview.circle{width:24px;height:24px;margin:0 5px;border-radius:50%}
.shape-preview.hexagon{clip-path:polygon(18% 0,82% 0,100% 50%,82% 100%,18% 100%,0 50%)}
.shape-preview.parallelogram{clip-path:polygon(15% 0,100% 0,85% 100%,0 100%)}
.shape-preview.tag{clip-path:polygon(18% 0,100% 0,100% 100%,18% 100%,0 50%)}
.shape-preview.document{border-radius:2px 2px 8px 2px;clip-path:polygon(0 0,100% 0,100% 74%,82% 100%,0 100%)}
[data-theme=dark] .shape-picker button:hover,[data-theme=dark] .shape-picker button.active{background:#2c2947}
@media(max-width:600px){.shape-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.shape-picker button{min-height:45px}}
.app-version{margin-top:auto;padding:12px 2px 3px;display:flex;align-items:center;justify-content:center;gap:4px;color:var(--muted);font-size:9px;font-weight:700;white-space:nowrap}.app-version svg{width:12px;height:12px;stroke-width:2}.app-version:hover{color:var(--primary)}
@media(max-width:600px){.app-version{display:none}}
.node-title{display:inline-block;max-width:100%;border-radius:5px;cursor:text;white-space:pre-wrap;overflow-wrap:anywhere}.node-title[contenteditable=true]{min-width:42px;padding:2px 5px;margin:-2px -5px;outline:2px solid currentColor;outline-offset:2px;background:#ffffff26;cursor:text;user-select:text;-webkit-user-select:text}.node.editing{cursor:text;z-index:30}.node.editing:hover{transform:none}.node.editing .node-title{touch-action:auto}
