*{margin:0;padding:0;box-sizing:border-box;font-family:segoe ui,Tahoma,Geneva,Verdana,sans-serif}body{overflow:hidden;background-color:var(--background-color);color:var(--text-color)}.container{display:flex;width:100vw;height:100vh}.graph-container{flex:1;position:relative;overflow:hidden}canvas{position:absolute;top:0;left:0}.node-tooltip{position:absolute;background:var(--tooltip-background);color:var(--tooltip-text);padding:5px 10px;border-radius:4px;font-size:12px;pointer-events:none;opacity:0;transition:opacity .3s;white-space:nowrap;z-index:100}.loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:20px;color:var(--tooltip-text);background-color:var(--tooltip-background);padding:20px;border-radius:10px;z-index:1000}.debug-panel{position:absolute;top:10px;left:10px;background:var(--tooltip-background);padding:10px;border-radius:5px;font-size:12px;color:var(--tooltip-text);z-index:1000}#nodeContentDetail{margin-top:16px;padding:16px;background-color:var(--card-background);border-radius:4px;color:var(--card-text-color);line-height:1.6}#header-person{border-bottom:1px dashed var(--border-color)}#nodeContentDetail h2{margin-bottom:16px;font-size:1.3rem;color:var(--text-color);border-bottom:1px solid var(--border-color);padding-bottom:8px}#nodeContentDetail h3{margin:16px 0 8px;font-size:1.1rem;color:var(--secondary-text)}#nodeContentDetail p{margin-bottom:12px}#nodeContentDetail ul,#nodeContentDetail ol{margin:8px 0 16px 24px}#nodeContentDetail a{color:var(--link-color);text-decoration:none}#nodeContentDetail a:hover{text-decoration:underline}@media(max-width:1000px){.container{flex-direction:column}.graph-container{height:100vh;width:100vw}body{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}#cardContent,.node-detail-content,.section-content{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.loading{font-size:16px;padding:15px}}@media(max-width:600px){.graph-container{height:100vh}.loading{font-size:14px;padding:12px}.node-tooltip{font-size:11px;padding:4px 8px}#nodeContentDetail{padding:12px;margin-top:12px}#nodeContentDetail h2{font-size:1.1rem;margin-bottom:12px}#nodeContentDetail h3{font-size:.95rem;margin:12px 0 6px}#nodeContentDetail ul,#nodeContentDetail ol{margin:6px 0 12px 18px}}.canvas-footer{position:absolute;bottom:15px;left:0;width:100%;text-align:center;z-index:50;opacity:.4;color:var(--text-color)}.canvas-footer p{color:var(--text-color);font-size:.8rem;margin:0;padding:0;text-shadow:0 0 2px var(--background-color)}.red{color:red}