.infographic-container{max-width:1400px;margin:0 auto;padding:2rem;font-family:Inter,sans-serif;color:var(--text-main);box-sizing:border-box}.infographic-header{text-align:center;margin-bottom:3rem;position:relative}.infographic-title{font-size:2.5rem;font-weight:800;margin:0;background:linear-gradient(135deg,#fff,#888);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.03em}.infographic-desc{font-size:1.1rem;color:var(--text-muted);max-width:800px;margin:1rem auto 0;line-height:1.6}.infographic-grid{display:flex;flex-direction:column;gap:2rem;padding-bottom:4rem;max-width:800px;margin:0 auto}.infographic-card{background:#111;border-radius:16px;box-shadow:0 4px 6px -1px #00000080,0 10px 15px -3px #00000080;overflow:hidden;transition:transform .2s,box-shadow .2s;border:1px solid #333333;display:flex;flex-direction:column}.infographic-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #0006;border-color:#555}.card-header{background:#1a1a1a;padding:1.25rem 1.5rem;border-bottom:1px solid #333333;display:flex;align-items:center;gap:.75rem}.card-header h3{margin:0;font-size:1.1rem;font-weight:700;color:var(--text-main)}.card-icon{width:32px;height:32px;border-radius:8px;background:#222;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;border:1px solid #333}.card-body{padding:1.5rem;flex:1}.card-desc{font-size:.95rem;color:var(--text-muted);margin-bottom:1.5rem;line-height:1.5}.card-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.card-list li{position:relative;padding-left:1.5rem;font-size:.95rem;color:var(--text-muted);line-height:1.4;cursor:pointer;transition:color .2s}.card-list li:before{content:"•";position:absolute;left:0;color:#fff;font-weight:700;font-size:1.2rem;line-height:1;top:.1rem}.card-list li:hover{color:#fff}.card-chevron{font-size:.8rem;color:var(--text-muted);transition:transform .2s;display:inline-block}.card-chevron.expanded{transform:rotate(90deg);color:var(--text-main)}@media(max-width:768px){.infographic-container{padding:1rem}.infographic-title{font-size:1.75rem}}:root{--bg-app: #0a0a0a;--bg-sidebar: #111111;--border-color: #333333;--primary: #ffffff;--primary-light: #222222;--text-main: #ffffff;--text-muted: #888888;--font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--sidebar-width: 300px;--header-height: 60px}body,html,#root{margin:0;height:100%;font-family:var(--font-family);background:var(--bg-app);color:var(--text-main);overflow:hidden}.layout{display:flex;width:100vw;height:100vh;overflow:hidden;position:relative}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;height:100%;transition:transform .3s cubic-bezier(.4,0,.2,1),margin-left .3s cubic-bezier(.4,0,.2,1);z-index:50;flex-shrink:0}.layout.sidebar-closed .sidebar{margin-left:calc(var(--sidebar-width) * -1)}.sidebar-header{padding:1.5rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.sidebar-title-row{display:flex;justify-content:space-between;align-items:flex-start}.close-sidebar-btn{display:none}.sidebar-header h2{margin:0;font-size:1.1rem;font-weight:700;letter-spacing:-.02em;color:var(--text-main)}.sidebar-header p{margin:.25rem 0 0;font-size:.85rem;color:var(--text-muted)}.sidebar-content{flex:1;overflow-y:auto;padding:1rem 0;min-height:0}.sidebar-footer{padding:1rem;border-top:1px solid var(--border-color);display:flex;gap:.5rem;flex-shrink:0;background:var(--bg-sidebar)}.sidebar-footer button{flex:1;padding:.5rem;border:1px solid var(--border-color);background:#222;border-radius:6px;font-size:.75rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s}.sidebar-footer button:hover{background:#333;color:var(--text-main);border-color:#444}.canvas-area{flex:1;position:relative;display:flex;flex-direction:column;background-color:#000;background-image:radial-gradient(#333333 1.5px,transparent 1.5px);background-size:24px 24px;height:100%;overflow:hidden;transition:width .3s;min-width:0}.canvas-header{position:absolute;top:1rem;left:1rem;right:1rem;z-index:10;pointer-events:none;display:flex;align-items:flex-start;gap:1rem}.canvas-header>*{pointer-events:auto}.icon-btn{background:#222;border:1px solid var(--border-color);border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);font-size:1.1rem;box-shadow:0 2px 4px #0003;transition:all .2s;flex-shrink:0}.icon-btn:hover{background:#333;color:var(--primary)}.header-info{background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.75rem 1rem;border-radius:12px;border:1px solid #333;box-shadow:0 4px 6px -1px #0000004d;flex:1;max-width:600px}.breadcrumb{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.badge{background:var(--text-main);color:#000;font-size:.65rem;text-transform:uppercase;font-weight:700;padding:2px 6px;border-radius:4px;letter-spacing:.05em;flex-shrink:0}.current-title{font-weight:600;font-size:1rem;line-height:1.2;color:var(--text-main)}.node-desc{margin-top:.25rem;font-size:.85rem;color:var(--text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.canvas-controls-hint{position:absolute;bottom:1rem;right:1rem;font-size:.75rem;color:#666;background:#00000080;padding:4px 8px;border-radius:4px;pointer-events:none;z-index:5}.diagram-wrapper{flex:1;width:100%;height:100%;overflow-y:auto;position:relative}.tree-row{display:flex;align-items:center;padding:8px 12px;cursor:pointer;font-size:.9rem;color:var(--text-muted);-webkit-user-select:none;user-select:none;transition:background .1s;border-left:3px solid transparent;--node-accent: #9CA3AF;--node-bg: #F3F4F6;--node-text: #374151}.tree-row--depth-0{--node-accent: #FF5978;--node-bg: #FFDFE5;--node-text: #8E2236}.tree-row--depth-1{--node-accent: #FBB35A;--node-bg: #FFEFDB;--node-text: #8F632D}.tree-row--depth-2{--node-accent: #EAB308;--node-bg: #FEF9C3;--node-text: #854D0E}.tree-row--depth-3{--node-accent: #22C55E;--node-bg: #DCFCE7;--node-text: #14532D}.tree-row--depth-4{--node-accent: #3B82F6;--node-bg: #DBEAFE;--node-text: #1E3A8A}.tree-row--depth-5{--node-accent: #8B5CF6;--node-bg: #F3E8FF;--node-text: #581C87}.tree-row--depth-6{--node-accent: #9CA3AF;--node-bg: #F3F4F6;--node-text: #374151}.tree-row:hover{background:#f8fafc;color:var(--text-main)}.tree-row--selected{background:var(--node-bg)!important;color:var(--node-text)!important;font-weight:500;border-left-color:var(--node-accent)}.tree-expander{font-size:.65rem;margin-right:8px;transition:transform .2s;color:var(--node-accent);padding:4px}.tree-expander.expanded{transform:rotate(90deg)}.tree-expander.invisible{visibility:hidden}.mobile-backdrop{position:fixed;inset:0;background:#0000004d;z-index:40;opacity:0;pointer-events:none;transition:opacity .3s}.mobile-backdrop.visible{opacity:1;pointer-events:auto}@media(max-width:768px){.sidebar{position:fixed;left:0;top:0;bottom:0;width:85vw;max-width:320px;box-shadow:0 0 15px #0000001a;transform:translate(-100%);margin-left:0!important}.layout.sidebar-open .sidebar{transform:translate(0)}.layout.sidebar-closed .sidebar{transform:translate(-100%)}.close-sidebar-btn{display:flex;border:none;box-shadow:none}.canvas-header{top:.5rem;left:.5rem;right:.5rem;flex-direction:row}.header-info{padding:.5rem}.current-title{font-size:.9rem}.badge{font-size:.55rem}.node-desc{font-size:.75rem;display:none}.diagram-tools{bottom:4rem}.mermaid-tip-box{display:none!important}}@media(min-width:480px)and (max-width:768px){.node-desc{display:-webkit-box}}.edgePath .path{stroke:#94a3b8!important;stroke-width:2px!important;fill:none}.edgePath marker{fill:#94a3b8!important;stroke:#94a3b8!important}.node rect,.node circle,.node ellipse,.node polygon,.node path{stroke-width:1.5px!important}.diagram-tools{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);z-index:20;background:#fff;border-radius:999px;display:flex;gap:0;padding:4px;box-shadow:0 10px 15px -3px #0000001a;border:1px solid var(--border-color)}.diagram-tools button{width:40px;height:40px;border:none;background:transparent;font-size:1.2rem;color:var(--text-muted);cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center}.diagram-tools button:hover{background:#f1f5f9;color:var(--primary)}
