.tree-node-box{background:white;border:1px solid #ccc;border-radius:10px;font-size:12px;text-align:center;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 2px 5px rgba(0,0,0,.15);transition:transform .2s ease,box-shadow .2s ease,border-radius .2s ease}.tree-node-box:hover{background-color:#f9f9f9;border:1px solid #999;border-radius:0;box-shadow:0 4px 10px rgba(0,0,0,.2);cursor:pointer;transform:scale(1.05)}.tree-node-img{width:50px;height:60px;-o-object-fit:cover;object-fit:cover;margin-bottom:8px;margin-top:8px}.tree-node-name{font-weight:500}.tree-node-tooltip{background:black;color:white;font-size:12px;padding:6px 10px;border-radius:6px;box-shadow:0 2px 4px rgba(0,0,0,.25);pointer-events:none;max-width:200px;word-wrap:break-word;line-height:1.4;opacity:0;transform:translateY(-5px);transition:opacity .25s ease,transform .25s ease}@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}g:hover .tree-node-tooltip{animation:fadeIn .2s ease forwards}.tree-page{width:100%;height:85vh;position:relative;overflow:hidden;background-color:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.tree-page.fullscreen{height:100vh;padding:0;border:none;border-radius:0;background-color:#fff}.tree-title{font-size:1.5rem;font-weight:600;padding-top:2rem;color:#5e4b3c;text-align:center;width:100%}.tree-description{font-size:1rem;color:#6b7280;text-align:center;margin-bottom:1.5rem;max-width:600px;margin-left:auto;margin-right:auto}.tree-toolbar{position:absolute;top:2rem;right:1rem;background:rgba(255,255,255,.85);backdrop-filter:blur(6px);border:none;box-shadow:0 4px 10px rgba(0,0,0,.15);border-radius:.5rem;padding:.5rem;display:flex;flex-direction:column;gap:.6rem;z-index:10;transition:all .3s ease}.tree-toolbar.collapsed{padding:.25rem;gap:0}.collapse-btn{background:transparent;border:none;border-radius:.375rem;font-size:1.2rem;padding:.25;cursor:pointer;transition:background .2s ease,color .2s ease}.collapse-btn:hover{background:rgba(0,0,0,.05);color:#111827}.toolbar-buttons{display:flex;background:transparent;flex-direction:column;border:#111827;gap:.6rem;margin-top:.5rem}.toolbar-buttons button{background:transparent;padding:.4rem;border-radius:.375rem;cursor:pointer;color:#5e4b3c;font-size:.8rem;transition:background .2s ease,color .2s ease}.toolbar-buttons button:hover{background-color:#5e4b3c;color:#fff}.tree-node-label{font-size:12px;fill:#111827;pointer-events:none}