*{box-sizing:border-box;margin:0;padding:0}:root{--bg: #191919;--text: #e0e0e0;--muted: rgb(150, 150, 150);--surface: rgba(255, 255, 255, .07);--medici: #e05050;--medici-red: #6b1818;--shadow-sm: 0 4px 20px rgba(0, 0, 0, .3);--ui-bg: rgba(56, 56, 56, .7);--ui-bg-blur: blur(20px);--ui-text: #ffffff;--ui-muted: #cccccc;--ui-font-size: 14px;--ui-radius: 12px;--ui-radius-pill: 30px;--ui-border-inner: rgba(255, 255, 255, .08);--ui-hover: rgba(255, 255, 255, .1);--ui-shadow: 0 4px 30px rgba(0, 0, 0, .3)}body{background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}#loading{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg);z-index:99999;transition:opacity .4s ease}#loading.fade-out{opacity:0;pointer-events:none}.loading-inner{text-align:center}.loading-title{font-size:22px;font-weight:400;margin-bottom:16px;letter-spacing:-.01em}.loading-status{font-size:14px;color:var(--muted);margin-bottom:20px}.loading-bar{width:200px;height:3px;background:var(--surface);border-radius:2px;overflow:hidden;margin:0 auto}.loading-bar-fill{width:0%;height:100%;background:var(--muted);border-radius:2px;transition:width .3s ease}#app{width:100vw;height:100vh;position:relative}#graph-container{width:100%;height:100%;cursor:grab}#graph-container:active{cursor:grabbing}#tooltip{position:fixed;display:none;padding:.3rem .4rem .3rem .7rem;background:var(--ui-bg);backdrop-filter:var(--ui-bg-blur);-webkit-backdrop-filter:var(--ui-bg-blur);color:var(--ui-muted);font-size:var(--ui-font-size);font-weight:400;border-radius:var(--ui-radius-pill);pointer-events:none;z-index:9999;box-shadow:var(--ui-shadow);max-width:none;white-space:nowrap;line-height:1;display:inline-flex;align-items:center;gap:.3rem}#tooltip.last-only{padding:.3rem .55rem}.tooltip-last{display:inline-block;background:#ffffffe6;color:#1a1a1a;padding:.3rem .55rem;border-radius:var(--ui-radius-pill);font-size:var(--ui-font-size);line-height:1}#tooltip.medici .tooltip-last{background:var(--medici-red);color:var(--ui-muted)}#sidebar{position:fixed;left:16px;top:16px;z-index:9998;display:flex;flex-direction:column;gap:12px;transition:transform .35s ease}#sidebar.collapsed{transform:translate(calc(-100% + 10px))}#stats-box{display:flex;background:var(--ui-bg);backdrop-filter:var(--ui-bg-blur);-webkit-backdrop-filter:var(--ui-bg-blur);font-size:var(--ui-font-size);border-radius:var(--ui-radius);font-weight:400;box-shadow:var(--ui-shadow);overflow:hidden}#stats-main{padding:1rem;flex:1}#stats-close{width:24px;flex-shrink:0;cursor:pointer;background:var(--ui-bg);backdrop-filter:var(--ui-bg-blur);-webkit-backdrop-filter:var(--ui-bg-blur);border:none;border-left:1px solid var(--ui-border-inner);transition:background .3s ease}#stats-close:hover:not(.no-hover){background:var(--ui-hover)}#site-label{font-size:1.1rem;font-weight:400;color:var(--ui-text);letter-spacing:.01em}#stats-content{display:flex;flex-direction:column;gap:6px;color:var(--ui-muted);font-size:var(--ui-font-size);padding-top:1rem}#stats-content .stat-sub{font-size:.9em;opacity:.85}#footer-credit{position:fixed;bottom:16px;left:50%;transform:translate(-50%);padding:.5rem 1rem;background:var(--ui-bg);backdrop-filter:var(--ui-bg-blur);-webkit-backdrop-filter:var(--ui-bg-blur);border-radius:var(--ui-radius-pill);font-size:var(--ui-font-size);color:var(--ui-muted);box-shadow:var(--ui-shadow);white-space:nowrap;z-index:9998;transition:transform .35s ease,opacity .35s ease}#footer-credit.hidden{transform:translate(-50%) translateY(60px);opacity:0;pointer-events:none}#footer-credit a{color:var(--ui-muted);text-decoration:underline;transition:color .3s ease}#footer-credit a:hover{color:var(--ui-text)}#search-bar{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:9998;transition:transform .35s ease,opacity .35s ease}#search-bar.hidden{transform:translate(-50%) translateY(-60px);opacity:0;pointer-events:none}#search-box{position:relative}#search-input{width:150px;padding:.5rem .875rem .5rem 2rem;background:var(--ui-bg);backdrop-filter:var(--ui-bg-blur);-webkit-backdrop-filter:var(--ui-bg-blur);color:var(--ui-muted);font-size:var(--ui-font-size);font-weight:400;border-radius:var(--ui-radius-pill);border:none;outline:none;font-family:inherit;box-shadow:var(--ui-shadow);transition:width .3s ease}#search-input:focus{width:300px}#search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:14px;height:14px;pointer-events:none;stroke:var(--ui-muted);z-index:1}#search-input::placeholder{color:var(--ui-muted)}#search-dropdown{display:none;position:absolute;top:100%;left:0;right:0;margin-top:4px;max-height:280px;overflow-y:overlay;background:var(--ui-bg);backdrop-filter:var(--ui-bg-blur);-webkit-backdrop-filter:var(--ui-bg-blur);border-radius:var(--ui-radius);font-size:var(--ui-font-size);z-index:10000;box-shadow:var(--ui-shadow);padding:.4rem}.search-item{padding:.4rem;margin:0;cursor:pointer;color:var(--ui-muted);border-radius:8px;transition:background .3s ease,color .3s ease}.search-item:hover{background:#ffffffe6;color:#1a1a1a}.search-empty{padding:.625rem 1rem;color:var(--ui-muted)}#detail-panel{position:fixed;top:16px;right:16px;width:340px;max-height:calc(100vh - 32px);overflow:hidden;background:var(--ui-bg);backdrop-filter:var(--ui-bg-blur);-webkit-backdrop-filter:var(--ui-bg-blur);font-size:var(--ui-font-size);color:var(--ui-text);border-radius:var(--ui-radius);z-index:9998;transform:translate(370px);transition:transform .35s ease;box-shadow:var(--ui-shadow)}#detail-panel.open{transform:translate(0);overflow-y:auto}.detail-header{padding:1rem 1.125rem;border-bottom:1px solid var(--ui-border-inner);position:sticky;top:0;background:var(--ui-bg);backdrop-filter:var(--ui-bg-blur);-webkit-backdrop-filter:var(--ui-bg-blur);border-radius:var(--ui-radius) var(--ui-radius) 0 0;z-index:1}.detail-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}#detail-back,#detail-close{background:var(--ui-hover);border:none;color:var(--ui-muted);cursor:pointer;font-size:13px;font-weight:400;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-family:inherit;transition:color .3s ease,background .3s ease}#detail-back,#detail-back .back-svg{display:none}#detail-back:hover,#detail-close:hover{color:var(--ui-text);background:#fff3}#detail-title{font-size:1.1rem;font-weight:400;line-height:1.3;letter-spacing:.01em;margin-bottom:10px;color:var(--ui-text)}.detail-header:has(#detail-meta:empty) #detail-title{margin-bottom:0}.medici-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--medici-red);vertical-align:middle;margin-right:.4rem}#detail-meta{font-size:12px;color:var(--ui-muted);line-height:1.5;font-style:italic}#detail-meta:empty{display:none}.detail-body{padding:1rem 1.125rem}.detail-section-title{display:inline-block;width:fit-content;background:#ffffffe6;color:#1a1a1a;padding:.3rem .7rem;border-radius:var(--ui-radius-pill);font-weight:400;font-size:var(--ui-font-size);line-height:1;margin-bottom:1rem;margin-top:1rem;letter-spacing:.01em}#detail-panel.medici .detail-section-title{background:var(--medici-red)!important;color:var(--ui-muted)!important}.detail-section-title:first-of-type{margin-top:0}#detail-connections{max-height:200px;overflow-y:auto;overflow-x:hidden;margin-bottom:0;margin-left:-1.125rem;margin-right:-1.125rem;padding:0 .4rem}.conn-item{width:fit-content;padding:.4rem .75rem;cursor:pointer;color:var(--ui-muted);border-radius:8px;transition:background .3s ease,color .3s ease;overflow-wrap:break-word;margin:1px 0}.conn-item:hover{background:#ffffffe6;color:#1a1a1a}.conn-item:hover .conn-weight{color:#1a1a1a80}.conn-weight{color:var(--ui-muted);font-size:.9em;transition:color .3s ease}#detail-docs{max-height:320px;overflow-y:auto;margin-left:-1.125rem;margin-right:-1.125rem;padding:0 1.125rem}.doc-item{padding:.625rem 0;border-bottom:1px solid var(--ui-border-inner)}.doc-item:last-child{border-bottom:none}.doc-title{word-wrap:break-word;line-height:1.45}.doc-meta{margin-top:4px;font-size:12px;color:var(--ui-muted);font-style:italic}.detail-empty{color:var(--ui-muted)}#detail-connections::-webkit-scrollbar,#detail-docs::-webkit-scrollbar,#detail-panel::-webkit-scrollbar,#search-dropdown::-webkit-scrollbar{width:5px}#detail-connections::-webkit-scrollbar-track,#detail-docs::-webkit-scrollbar-track,#detail-panel::-webkit-scrollbar-track,#search-dropdown::-webkit-scrollbar-track{background:transparent}#detail-connections::-webkit-scrollbar-thumb,#detail-docs::-webkit-scrollbar-thumb,#detail-panel::-webkit-scrollbar-thumb,#search-dropdown::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:10px}#detail-connections::-webkit-scrollbar-thumb:hover,#detail-docs::-webkit-scrollbar-thumb:hover,#detail-panel::-webkit-scrollbar-thumb:hover,#search-dropdown::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media(max-width:768px){#sidebar,#detail-back .back-text{display:none}#detail-back .back-svg{display:block;width:16px;height:16px}#tooltip,#search-input,#search-dropdown,#footer-credit,#detail-panel,.detail-header,#stats-box{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#282828f2!important;box-shadow:0 2px 12px #0000004d!important}#search-input{width:240px;font-size:14px;transition:none}#search-input:focus{width:240px}#search-icon{width:14px;height:14px}#footer-credit{font-size:12px;padding:.4rem 1rem;bottom:calc(16px + env(safe-area-inset-bottom,0))}#detail-panel{inset:auto auto 0 50%!important;width:94%!important;height:90dvh;max-height:90dvh;border-radius:var(--ui-radius) var(--ui-radius) 0 0;transform:translate(-50%) translateY(110%)!important;transition:transform .4s cubic-bezier(.33,1,.68,1);overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0);display:flex;flex-direction:column}#detail-panel.open{transform:translate(-50%) translateY(70dvh)!important}#detail-panel.open.expanded{transform:translate(-50%) translateY(0)!important}#detail-panel.closing{transform:translate(-50%) translateY(110%)!important;transition:transform .45s cubic-bezier(.33,1,.68,1)!important}#detail-panel.open .detail-header{flex-shrink:0}#detail-panel.open .detail-body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:1rem 1.125rem}#detail-panel.open .detail-header,#detail-panel.open .detail-header *{pointer-events:auto}#detail-panel.open:not(.expanded) .detail-body,#detail-panel.open:not(.expanded) .detail-body #detail-connections,#detail-panel.open:not(.expanded) .detail-body #detail-docs{pointer-events:none}#detail-panel.open:not(.expanded) .detail-body #detail-connections,#detail-panel.open:not(.expanded) .detail-body #detail-docs{overflow:hidden;flex:none;min-height:0}#detail-panel.open .detail-body .detail-section-title{flex-shrink:0}#detail-panel.open.expanded .detail-body #detail-connections,#detail-panel.open.expanded .detail-body #detail-docs{flex:none;overflow-y:auto}#search-bar.mobile-hidden{transform:translate(-50%) translateY(-60px);opacity:0;pointer-events:none}#footer-credit.mobile-hidden{transform:translate(-50%) translateY(60px);opacity:0;pointer-events:none}}
