.node-port{z-index:6;transition:opacity .15s,transform .15s}
.node-port-right{right:-8px;left:auto;top:calc(50% - 7px)}
.node-port-left{left:-8px;right:auto;top:calc(50% - 7px)}
.node-port-top{top:-8px;left:calc(50% - 7px);right:auto}
.node-port-bottom{bottom:-8px;top:auto;left:calc(50% - 7px);right:auto}
.node-text-link{display:inline;padding:0;border:0;background:none;color:#a5f3e2;font:inherit;font-weight:800;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2px;cursor:pointer;vertical-align:baseline;white-space:inherit}
.node-text-link:hover{color:#fff;text-decoration-thickness:2px}
.node-copy .node-text-link{max-width:100%}
.field-help{margin:3px 0 8px;color:#8fa7c5;font-size:10px;line-height:1.5}
.text-links-section{padding-bottom:6px}
.text-links-section .property-button{height:auto;min-height:35px;white-space:normal}
.text-link-list{display:grid;gap:5px;margin-top:7px}
.text-link-row{display:flex;align-items:center;gap:6px;border:1px solid #8aafd02b;border-radius:8px;padding:4px 5px 4px 8px;color:#a8cfdf;background:#2444672b;font-size:10px}
.text-link-row span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.text-link-row button{height:22px;width:22px;flex:none;border:0;border-radius:6px;background:#ffffff12;color:#d7e6ef;font-size:16px}
.text-link-row button:hover{background:#e0767555}
.link-dialog{max-height:min(85dvh,700px);overflow:auto}
.link-dialog .field-label{margin:15px 0 6px}
.link-dialog .field-input{font-size:13px;padding:10px}
.link-dialog select{appearance:auto}
.link-dialog #pdf-name{margin:4px 0 0;word-break:break-all}
.link-dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}
.link-dialog-actions button{height:37px;padding:0 17px;border-radius:9px;font-weight:700;font-size:12px}
.link-dialog-actions .outline-btn{border:1px solid #7187b244;background:#16274a;color:#d6e6ff}
body[data-theme="ice"] .node-text-link{color:#176b9d}
body[data-theme="ice"] .node-text-link:hover{color:#06446b}
body[data-theme="ice"] .field-help{color:#6989a6}
body[data-theme="ice"] .text-link-row{background:#e5f4ff;color:#346080;border-color:#fff}
body[data-theme="ice"] .text-link-row button{color:#4c7292;background:#d0eafa}
body[data-theme="ice"] .link-dialog-actions .outline-btn{background:#e7f4ff;color:#315d7c;border-color:#fff}
@media(max-width:820px){
  .node.selected .node-port{opacity:1;width:18px;height:18px;border-width:2px}
  .node.selected .node-port-top{top:-9px;left:calc(50% - 9px)}
  .node.selected .node-port-bottom{bottom:-9px;left:calc(50% - 9px)}
  .node.selected .node-port-left{left:-9px;top:calc(50% - 9px)}
  .node.selected .node-port-right{right:-9px;top:calc(50% - 9px)}
  .text-link-row{font-size:11px}
  .link-dialog{width:calc(100vw - 26px);padding:22px}
}

/* Node geometry and text flow */
.nodes{pointer-events:none}
.node{pointer-events:auto;height:var(--node-height,74px);min-height:0;width:var(--node-width,210px);border-color:var(--border-color,rgba(139,171,219,.31));align-items:center}
.node-root{width:var(--node-width,244px);height:var(--node-height,92px)}
.node-copy{min-width:0;overflow:hidden}
.node-title,.node-desc{white-space:pre-wrap;overflow-wrap:anywhere;overflow:visible;text-overflow:clip;line-height:1.25}
.node-title{font-size:var(--title-size,12px)}
.node-desc{font-size:var(--desc-size,10px)}
.node-root .node-title{font-size:var(--title-size,14px)}
.node-root .node-desc{font-size:var(--desc-size,10px)}
.node.has-border,.node.has-border:hover,body[data-theme="ice"] .node.has-border,body[data-theme="ice"] .node.has-border:hover{border-color:var(--border-color)}
.node.has-border.selected,body[data-theme="ice"] .node.has-border.selected{border-color:var(--border-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--border-color) 42%,transparent),0 15px 35px #010a2255}
.node-shape-circle{border-radius:50%;flex-direction:column;justify-content:center;text-align:center;padding:20px;gap:6px}
.node-shape-circle .node-badge{width:38px;height:38px;border-radius:50%}
.node-shape-circle .node-copy{width:100%;flex:none}
.node-shape-circle .node-desc{margin-top:3px}
.node-social{position:absolute;right:8px;top:8px;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#fff;box-shadow:0 2px 8px #00182c66;pointer-events:none}
.node-social svg{width:17px;height:17px;fill:currentColor}
.node-social[data-social=whatsapp],.social-picks [data-social=whatsapp]{background:#25d366}
.node-social[data-social=telegram],.social-picks [data-social=telegram]{background:#2aabee}
.node-social[data-social=threads],.social-picks [data-social=threads]{background:#151515}
.node-social[data-social=instagram],.social-picks [data-social=instagram]{background:linear-gradient(135deg,#6b37cc,#e1306c,#f9bd5e)}
.node-resize{display:none;position:absolute;right:-7px;bottom:-7px;width:18px;height:18px;border:2px solid #fff;border-radius:6px;background:var(--accent);z-index:10;cursor:nwse-resize;box-shadow:0 3px 10px #00182c77;touch-action:none}
.node.selected .node-resize{display:block}
.node-shape-circle .node-resize{right:7%;bottom:7%}
.setting-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}
.setting-pair label{color:#9fb2d0;font-size:10px;font-weight:700}
.setting-pair input{display:block;margin-top:5px}
.social-picks{display:flex;gap:7px;flex-wrap:wrap}
.social-picks button{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;border:2px solid transparent;color:white;font-size:15px;font-weight:800;cursor:pointer}
.social-picks button svg{width:18px;height:18px;fill:currentColor}
.social-picks button.active{border-color:#fff;box-shadow:0 0 0 2px #78c6e5}
.social-picks [data-social=none]{background:#51647e}
.subtle-action{border:0;background:none;color:#8fbdd4;font-size:10px;padding:4px 0;cursor:pointer}
.connection-path{pointer-events:none}
.edge-hit{fill:none;stroke:transparent;stroke-width:var(--edge-hit-width,20px);pointer-events:stroke;cursor:pointer}
.edge-bend-add,.edge-bend-handle{pointer-events:all;cursor:pointer}
.edge-bend-add{fill:#e6f6ff;stroke:#5b9fd1;stroke-width:2}
.edge-bend-handle{fill:#9de4f5;stroke:#357bb2;stroke-width:2;cursor:move;touch-action:none}
.edge-bend-plus{fill:#3679a9;font-size:var(--edge-font-size,13px);font-weight:800;pointer-events:none;text-anchor:middle;dominant-baseline:middle}
.connections:has(.edge-hit:hover) .edge-bend-add{fill:#fff}
body[data-theme="ice"] .setting-pair label{color:#4d7291}
body[data-theme="ice"] .node-social{box-shadow:0 2px 8px #4691bd66}
@media(max-width:820px){
  .node.selected .node-resize{width:22px;height:22px}
  .node.selected .node-port,.node.selected .node-resize,.node.selected .node-edit,.node-social{transform:scale(var(--control-scale,1))}
  .social-picks button{width:35px;height:35px}
  .tool-card{min-width:0}
}
.topbar{position:relative;z-index:40;overflow:visible}
.export-menu{top:calc(100% + 8px);z-index:50;width:202px;max-height:min(60dvh,330px);overflow-y:auto;background:linear-gradient(145deg,rgba(22,42,77,.98),rgba(10,25,51,.98));box-shadow:0 20px 50px rgba(1,8,24,.45)}
body[data-theme="ice"] .export-menu{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(227,243,255,.98));box-shadow:0 20px 50px rgba(49,94,138,.25)}
.share-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:18px;font-size:11px;color:#bfd4ec}.share-list-head button{border:0;background:transparent;color:#83dfd4;font-size:11px;cursor:pointer;padding:5px}.share-boards{display:grid;gap:6px;max-height:170px;overflow-y:auto;margin-top:8px;padding:4px}.share-board-option{display:flex;align-items:center;gap:9px;min-height:35px;padding:7px 10px;border:1px solid #8daacf35;border-radius:9px;background:#ffffff0c;color:#e7f3ff;font-size:12px;cursor:pointer}.share-board-option input{accent-color:#64d4c6}.share-board-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-json{width:100%;margin-top:10px;padding:10px;border:1px solid #8fb5d355;border-radius:9px;background:#24446756;color:#cce5f5;font-size:12px;font-weight:700;cursor:pointer}.share-json:hover{background:#34638880}.share-json:disabled,.share-field button:disabled{opacity:.45;cursor:not-allowed}#share-dialog{max-height:min(86dvh,660px);overflow-y:auto}
body[data-theme="ice"] .share-list-head{color:#426886}body[data-theme="ice"] .share-list-head button{color:#287fa0}body[data-theme="ice"] .share-board-option{background:#eaf7ff;color:#23486b;border-color:#bedfed}body[data-theme="ice"] .share-json{background:#e2f3ff;color:#285675;border-color:#b9dcee}
.rename-board-tab{height:31px;white-space:nowrap;padding:0 10px;border:1px solid #8aafd044;border-radius:8px;background:#1b355747;color:#aad2e6;font-size:11px;font-weight:700;flex:none}.rename-board-tab:hover{background:#599dc846}body[data-theme="ice"] .rename-board-tab{color:#406f95;background:#e5f3ff;border-color:#fff}.rename-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.rename-actions button{border-radius:9px;padding:10px 15px;font-size:12px;font-weight:700}.rename-dialog{max-width:410px}
@media(max-width:820px){.rename-board-tab{width:31px;min-width:31px;padding:0;font-size:16px}.rename-board-tab span{display:none}}
