*{box-sizing:border-box;margin:0;padding:0}html,body{color:#fff;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;overflow:hidden}.container{flex-direction:column;width:100vw;height:100vh;display:flex}header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#0000004d;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;display:flex}h1{background:linear-gradient(90deg,#00d4ff,#7c3aed);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:600}.controls{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.revision-toggle{border:1px solid #fff3;border-radius:8px;display:inline-flex;overflow:hidden}.rev-btn{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-radius:0;padding:.45rem .9rem;font-size:.85rem;font-weight:500;transition:background .15s,color .15s}.rev-btn:not(:last-child){border-right:1px solid #fff3}.rev-btn:hover{color:#fff;background:#ffffff14}.rev-btn.active{color:#fff;background:linear-gradient(135deg,#7c3aed 0%,#2563eb 100%)}.rev-btn:disabled{cursor:wait;opacity:.6}button{cursor:pointer;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.btn-primary{color:#fff;background:linear-gradient(135deg,#7c3aed 0%,#2563eb 100%)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #7c3aed66}.btn-secondary{color:#fff;background:#ffffff1a;border:1px solid #fff3}.btn-secondary:hover{background:#fff3}select{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;padding:.5rem 1rem;font-size:.875rem}select option{color:#fff;background:#16213e}main{flex:1;position:relative;overflow:hidden}#visualization,#visualization svg{width:100%;height:100%}#loading{color:#ffffffb3;font-size:1.25rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#loading.hidden{display:none}.legend{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#000000b3;border:1px solid #ffffff1a;border-radius:12px;padding:1rem;font-size:.75rem;position:fixed;top:5rem;right:1rem}.legend h4{color:#00d4ff;margin-bottom:.5rem}.legend-item{align-items:center;gap:.5rem;margin:.25rem 0;display:flex}.legend-color{border-radius:50%;width:12px;height:12px}.tooltip{color:#fff;pointer-events:none;opacity:0;z-index:1000;background:#000000e6;border:1px solid #fff3;border-radius:8px;max-width:350px;padding:.75rem 1rem;font-size:.875rem;transition:opacity .2s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:#00d4ff;margin-bottom:.25rem;font-weight:600}.tooltip-text{color:#fffc}.node circle{cursor:pointer;stroke-width:2px;transition:all .2s}.node circle:hover{stroke-width:3px;filter:brightness(1.2)}.node text{fill:#ffffffe6;pointer-events:none;font-size:10px}.node text .label-primary{font-weight:500}.node text .label-secondary{fill:#ffffff8c;font-size:8.5px}.link{fill:none;stroke:#fff3;stroke-width:1px}body.layout-graph .link:not(.xref){stroke:#ffffff14}.link.xref{stroke-width:1.3px;stroke-dasharray:5 3;opacity:.85}.link.xref-foundationChildElsewhere{stroke:#ffb84d}.link.xref-exclusion{stroke:#ff6b6b}.link.xref-inclusion{stroke:#51cf66}.link.xref-relatedPerinatal{stroke:#a78bfa}.link.xref-relatedMaternal{stroke:#f472b6}.xref-legend{border-top:1px solid #ffffff1a;margin-top:.8rem;padding-top:.5rem}.xref-legend h4{color:#00d4ff;margin-bottom:.35rem}.legend-edge{background:currentColor;width:18px;height:2px;margin-right:.5rem;display:inline-block}.legend-edge.xref-foundationChildElsewhere{color:#ffb84d}.legend-edge.xref-exclusion{color:#ff6b6b}.legend-edge.xref-inclusion{color:#51cf66}.legend-edge.xref-relatedPerinatal{color:#a78bfa}.legend-edge.xref-relatedMaternal{color:#f472b6}.chord-label{fill:#ffffffe6;paint-order:stroke;stroke:#0009;stroke-width:2px;font-size:10px}.chord-empty{font-family:inherit}.sugiyama-expand-indicator{fill:#000000d9;pointer-events:none;font-size:10px;font-weight:700}.detail-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;z-index:20;pointer-events:none;background:#0c1224f5;border:1px solid #ffffff1f;border-radius:12px;width:min(420px,100vw - 2rem);max-height:calc(100vh - 8rem);padding:1.25rem 1.25rem 1.5rem;font-size:.875rem;transition:transform .25s,left,right;position:fixed;top:7rem;right:1rem;overflow-y:auto;transform:translate(calc(100% + 2rem));box-shadow:0 10px 40px #00000073}.detail-panel>*{pointer-events:auto}.detail-panel .detail-kind,.detail-panel .detail-path,.detail-panel .detail-desc,.detail-panel .detail-title{pointer-events:none}.detail-panel[aria-hidden=false]{transform:translate(0)}body.layout-tree .detail-panel,body.layout-cluster .detail-panel{left:1rem;right:auto;transform:translate(calc(-100% - 2rem))}body.layout-tree .detail-panel[aria-hidden=false],body.layout-cluster .detail-panel[aria-hidden=false]{transform:translate(0)}.detail-close{color:#ffffffb3;background:0 0;border-radius:6px;width:2rem;height:2rem;padding:0;font-size:1.5rem;line-height:1;position:absolute;top:.5rem;right:.5rem}.detail-close:hover{color:#fff;background:#ffffff1a}.detail-kind{text-transform:uppercase;letter-spacing:.08em;color:#00d4ff;margin-bottom:.35rem;font-size:.7rem}.detail-title{word-break:break-word;margin-bottom:.5rem;padding-right:2rem;font-size:1.1rem;font-weight:600}.detail-desc{color:#ffffffe6;margin-bottom:.75rem;line-height:1.45}.detail-wiki{color:#00d4ff;background:#00d4ff1f;border:1px solid #00d4ff59;border-radius:6px;margin-bottom:.9rem;padding:.35rem .7rem;font-size:.78rem;text-decoration:none;transition:background .15s;display:inline-block}.detail-wiki:hover{background:#00d4ff38}.detail-path{color:#ffffff8c;word-break:break-word;margin-bottom:1rem;font-size:.75rem;line-height:1.5}.detail-path .crumb+.crumb:before{content:" / ";color:#ffffff4d}.detail-body section{border-top:1px solid #ffffff14;margin-top:1rem;padding-top:.85rem}.detail-body section:first-child{border-top:none;margin-top:0;padding-top:0}.detail-body h3{text-transform:uppercase;letter-spacing:.05em;color:#fff9;margin-bottom:.4rem;font-size:.75rem}.detail-body h3.excludes1{color:#ff6b6b}.detail-body h3.excludes2{color:#ffa94d}.detail-body h3.includes,.detail-body h3.inclusion{color:#51cf66}.detail-body h3.code-hint{color:#7c3aed}.detail-body ul{padding:0;list-style:none}.detail-body li{color:#ffffffe0;padding:.2rem 0;line-height:1.45}.detail-body li.child{cursor:pointer;border-radius:6px;gap:.5rem;padding:.3rem .4rem;transition:background .15s;display:flex}.detail-body li.child:hover{background:#ffffff0f}.detail-body li.child .code{color:#00d4ff;flex-shrink:0;min-width:4rem;font-family:ui-monospace,SFMono-Regular,monospace;font-size:.82rem}.detail-body .empty{color:#ffffff80;font-size:.8rem;font-style:italic}@media (width<=768px){header{padding:.75rem 1rem}h1{font-size:1.25rem}.info-panel,.legend{max-width:calc(50% - 1.5rem);padding:.75rem;font-size:.75rem}.legend{top:auto;bottom:1rem;right:1rem}.info-panel{bottom:1rem;left:1rem}}
