.technology-dialog{width:min(1900px,calc(100vw - 36px));height:calc(100vh - 36px);max-width:none;max-height:none;padding:0;border:1px solid #414243;border-radius:6px;background:#000;color:#dcdfe6;box-shadow:var(--shadow)}
.technology-dialog::backdrop{background:#000b}
.technology-shell{position:relative;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#000}
.technology-header{display:flex;align-items:center;gap:18px;padding:16px 22px;border-bottom:1px solid #303030;background:#000}
.technology-header h2{margin:0;font-size:22px}.technology-stats{margin-left:auto;font-size:14px;color:#a8abb2}
.technology-shell button{font:inherit;cursor:pointer;border:1px solid #414243;background:#000;color:inherit;border-radius:4px;padding:7px 12px}
.technology-shell button:hover{border-color:var(--accent);color:var(--accent)}.technology-shell button:focus-visible,.technology-search:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.technology-shell button:disabled{opacity:.4;cursor:default}.technology-close{font-size:14px}
.technology-toolbar{display:flex;align-items:center;gap:12px;padding:10px 22px;background:#000}.technology-search{width:380px;padding:7px 10px;border:1px solid #414243;border-radius:4px;background:#000;color:inherit;font:inherit}
.technology-categories{display:flex;align-items:center;gap:20px;padding:8px 22px;font-size:12px;border-bottom:1px solid #303030;background:#000}
.technology-category{display:flex;align-items:center;gap:7px}.technology-category::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--technology-color)}
.technology-viewport{position:relative;flex:1;min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;background:#000;scrollbar-color:#4a4c50 #000;touch-action:none;cursor:grab}
.technology-viewport[data-dragging=true]{cursor:grabbing}.technology-canvas{position:relative;margin:18px;isolation:isolate;background:#000}
.technology-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.technology-connections path{stroke:#444950;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;fill:none}.technology-connections g[data-active=true] path{stroke:#738c65}
.technology-shell .technology-node{position:absolute;display:flex;align-items:center;justify-content:flex-start;flex-direction:column;padding:calc(var(--technology-icon-top) * var(--technology-zoom)) 0 0;gap:0;border:0;border-radius:0;background:transparent;overflow:visible;z-index:1;font-size:calc(23px * var(--technology-zoom));cursor:pointer;color:#dcdfe6}
.technology-shell .technology-node:hover{background:transparent;color:#fff}.technology-node-icon{width:calc(96px * var(--technology-zoom));height:calc(96px * var(--technology-zoom));object-fit:contain;filter:grayscale(.85);opacity:.7;flex-shrink:0;pointer-events:none}
.technology-node[data-status=available] .technology-node-icon{filter:grayscale(.35);opacity:.9}.technology-node[data-status=partial] .technology-node-icon,.technology-node[data-status=complete] .technology-node-icon{filter:none;opacity:1}
.technology-node[data-status=complete]::before,.technology-node[data-selected=true]::after{content:"";position:absolute;box-sizing:border-box;left:50%;top:calc(var(--technology-ring-top) * var(--technology-zoom));transform:translateX(-50%);width:calc(var(--technology-ring-size) * var(--technology-zoom));height:calc(var(--technology-ring-size) * var(--technology-zoom));border:calc(4px * var(--technology-zoom)) solid var(--technology-color);border-radius:50%;pointer-events:none}
.technology-node[data-selected=true]::after{border-color:var(--accent)}.technology-node-name{font-weight:650;line-height:1.15;text-align:center;max-width:100%;pointer-events:none}.technology-node-rank{font-size:calc(20px * var(--technology-zoom));line-height:1.1;margin-top:calc(4px * var(--technology-zoom));pointer-events:none}
.technology-node[data-search-match=false]{opacity:.2}.technology-node[data-status=locked] .technology-node-name,.technology-node[data-status=locked] .technology-node-rank{color:#b0b4bc}
.technology-tooltip{position:absolute;z-index:5;box-sizing:border-box;width:350px;max-width:calc(100% - 24px);padding:16px 18px 0;overflow:auto;border:1px solid #606266;border-radius:6px;background:#000;color:#dcdfe6;box-shadow:0 8px 24px #000b;font-size:14px;line-height:1.55;scrollbar-color:#4a4c50 #000}
.technology-tooltip[hidden]{display:none}.technology-tooltip-heading{display:flex;align-items:center;gap:10px}.technology-tooltip h3{margin:0;font-size:18px}.technology-tooltip h4{font-size:13px;margin:16px 0 6px;color:#a8abb2}.technology-tooltip p{margin:8px 0}.technology-tooltip-icon{width:42px;height:42px;object-fit:contain}
.technology-shell .technology-tooltip-close{margin-left:auto;align-self:flex-start;padding:0 5px;border:0;font-size:23px;line-height:26px}.technology-tooltip-rank{color:#a8abb2}.technology-effect{white-space:pre-line}.technology-condition{color:#e6a23c;font-size:13px}
.technology-tooltip-actions{position:sticky;bottom:0;display:flex;gap:10px;margin:16px -18px 0;padding:12px 18px;background:#000;border-top:1px solid #303030}.technology-tooltip-actions button{flex:1}.technology-message{min-height:20px;margin:0;padding:4px 22px;color:#e6a23c;font-size:12px;background:#000}
