
.tools .quiet{display:flex;align-items:center;gap:6px}.tools .quiet svg{flex:none}.tree{overflow-anchor:none}
.tree{position:relative;width:var(--planner-viewport-width,100vw);margin-left:calc(50% - var(--planner-viewport-width,100vw)/2);height:clamp(470px,76svh,760px);border:0;border-radius:0;background:#fff;background-image:none;box-shadow:none;overflow:auto;overscroll-behavior:auto;--tree-gutter:120px;isolation:isolate}
.tree-canvas{position:relative;min-height:100%;padding:24px 0 50px}
.tree-root-row,.tree-level{position:relative;display:grid;grid-template-columns:var(--tree-gutter) minmax(0,1fr);align-items:stretch}
.tree-root-row{padding:0 0 24px}
.tree-leader-space{width:calc(var(--planner-viewport-width,100vw) - var(--tree-gutter));display:flex;justify-content:center;position:relative;z-index:1}
.tree-line-label{position:sticky;left:0;z-index:3;padding:25px 12px 18px 20px;align-self:stretch;background:linear-gradient(to right,#fff 90%,#ffffff00);font-size:11px;line-height:1.45;color:#69788e;overflow-wrap:anywhere}
.tree-line-label strong{display:block;font-size:13px;line-height:1.35;font-weight:500;color:#19243b;margin-bottom:8px}
.tree-line-label span{display:block;max-width:90px}
.tree-axis{padding-top:10px;font-size:12px;color:#69788e}
.tree-children{display:flex;align-items:flex-start;justify-content:center;gap:18px;padding:24px 20px 30px}
.tree-wires{position:absolute;left:0;top:0;z-index:0;pointer-events:none;overflow:visible}
.tree-wires path{stroke:#dce1e8;stroke-width:1.2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.tree-wrap .node{position:relative;flex:none;width:184px;margin:0;border-radius:14px;box-shadow:0 3px 10px #19243b07;background:#fff;z-index:1}
.tree-wrap .node.selected{border-color:#c9342f}
.tree-wrap .tree-leader{width:204px;border-color:#c9342f}
.tree-wrap .node-main{padding:14px 13px}
.tree-wrap .node-main b{font-size:14px;line-height:1.35;font-weight:500;margin:0 0 12px;overflow-wrap:anywhere}
.node-data{margin:0}
.node-data-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:7px;font-variant-numeric:tabular-nums}
.node-data-row dt{margin:0;color:#69788e;font-size:10px;line-height:1.4;min-width:0}
.node-data-row dd{margin:0;color:#19243b;font-size:12px;line-height:1.4;text-align:right;white-space:nowrap;flex:none}
.node-data-row.node-budget-row{margin:0 0 10px}
.node-budget-row dt{font-size:11px}
.node-budget-row dd{font-size:17px;line-height:1.15;letter-spacing:-.025em}
.node-capital-row{padding-top:8px;margin-top:10px;border-top:1px solid #edf0f3}
.node-capital-row dd{font-weight:500}
.node-channel-row dt{max-width:86px}
.tree-wrap .node-actions button{padding:9px 5px;font-size:10px}
.tree-wrap .add{border-radius:0 0 13px 13px;font-size:11px;padding:10px;border-width:1px 0 0;border-style:solid;border-color:#edf0f3;min-width:150px;width:auto}
.tree-wrap .tree-children>.add{border:1px dashed #cbd2dc;border-radius:12px;align-self:flex-start;padding:12px;width:184px}
.tree-wrap .tree-leader .add{width:100%}
@media(max-width:520px){.tree{--tree-gutter:96px}.tree-line-label{padding-left:13px;padding-right:9px;font-size:10px}.tree-line-label strong{font-size:12px}.tree-line-label span{max-width:72px}.tree-wrap .tree-leader{width:204px}.tree-leader-space{min-width:224px}.tree-children{padding-top:24px;padding-bottom:24px}.tree-wrap .node-main{padding:13px 12px}}
