:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;background-color:#0d1117}.file-drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100vh;border:3px dashed #4a90d9;border-radius:16px;background:linear-gradient(135deg,#1a1a2e,#16213e);cursor:pointer;transition:all .3s ease}.file-drop-zone:hover{border-color:#64b5f6;background:linear-gradient(135deg,#1e1e3f,#1a2747)}.drop-icon{font-size:4rem;margin-bottom:1rem}.file-drop-zone h2{color:#64b5f6;margin-bottom:.5rem;font-size:1.8rem}.file-drop-zone p{color:#a0a0a0;margin:.25rem 0}.file-drop-zone .hint{font-size:.9rem;color:#666}.demo-btn{margin-top:1.5rem;padding:.75rem 1.5rem;background:#4a90d9;border:none;border-radius:8px;color:#fff;font-size:1rem;cursor:pointer;transition:background .2s}.demo-btn:hover{background:#64b5f6}.file-drop-zone-mini{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background:#1a1a2e;border-radius:8px;cursor:pointer;font-size:.85rem;color:#a0a0a0}.file-drop-zone-mini:hover{background:#252545}.demo-btn-mini{padding:.35rem .75rem;background:#3a7bc8;border:none;border-radius:4px;color:#fff;font-size:.8rem;cursor:pointer}.demo-btn-mini:hover{background:#4a90d9}.task-list{position:relative;height:100%;background:#0d1117;border-right:1px solid #30363d;width:300px;transition:width .3s ease;overflow:hidden}.task-list.collapsed{width:0;border-right:none}.task-list-content{display:flex;flex-direction:column;height:100%;width:100%;padding-top:10px}.task-items{flex:1;overflow-y:auto;padding:.5rem}.task-item{display:flex;gap:.75rem;padding:.75rem;margin-bottom:.5rem;background:#161b22;border-radius:8px;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.task-item:hover{background:#21262d}.task-item.selected{border-color:#58a6ff;background:#0d419d}.task-index{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#58a6ff;color:#0d1117;border-radius:50%;font-size:.75rem;font-weight:700;flex-shrink:0}.task-content{flex:1;min-width:0}.task-message{color:#e0e0e0;font-size:.9rem;line-height:1.4;margin-bottom:.35rem;word-break:break-word}.task-meta{display:flex;gap:.75rem;font-size:.75rem;color:#666}.task-time{color:#888}.task-entries{color:#58a6ff}.sequence-diagram{display:flex;flex-direction:column;height:100%;background:#0d1117}.diagram-header{display:flex;background:#161b22;border-bottom:2px solid #30363d;position:sticky;top:0;z-index:10;position:relative}.sidebar-toggle-button{position:absolute;left:16px;top:50%;transform:translateY(-50%);background:#21262d;border:1px solid #30363d;color:#58a6ff;font-size:1.2rem;cursor:pointer;padding:8px 12px;border-radius:6px;transition:all .2s ease;z-index:11;display:flex;align-items:center;justify-content:center;min-width:40px;height:40px}.sidebar-toggle-button:hover{background:#30363d;border-color:#58a6ff;transform:translateY(-50%) scale(1.05)}.column-header{flex:1;display:flex;flex-direction:column;align-items:center;padding:1rem .5rem;gap:.35rem}.column-icon{font-size:1.5rem}.column-name{font-size:.85rem;font-weight:600;color:#8b949e;text-transform:uppercase;letter-spacing:.05em}.diagram-body{flex:1;overflow-y:auto;position:relative;padding:1rem 0}.events{position:relative;z-index:1;min-height:100%;overflow:visible;background-image:repeating-linear-gradient(to bottom,#30363d 0px,#30363d 4px,transparent 4px,transparent 8px),repeating-linear-gradient(to bottom,#30363d 0px,#30363d 4px,transparent 4px,transparent 8px),repeating-linear-gradient(to bottom,#30363d 0px,#30363d 4px,transparent 4px,transparent 8px);background-size:2px 8px,2px 8px,2px 8px;background-position:16.67% 0,50% 0,83.33% 0;background-repeat:repeat-y}.event-row{position:relative;min-height:80px;cursor:pointer;transition:background .2s;padding:.5rem 0}.event-row:hover{background:#388bfd1a}.event-row.expanded{background:#388bfd26}.event-node{position:absolute;width:12px;height:12px;border-radius:50%;transform:translate(-50%);top:34px;z-index:2;box-shadow:0 0 8px #ffffff4d}.arrow{position:absolute;top:39px;height:2px;transform:translateY(-50%);z-index:1}.arrow:before{content:"";position:absolute;top:0;width:100%;height:2px;background-color:inherit;border-color:inherit}.arrow-right:after{content:"";position:absolute;right:0;top:-4px;border:5px solid transparent;border-left-color:inherit}.arrow-left:after{content:"";position:absolute;left:0;top:-4px;border:5px solid transparent;border-right-color:inherit}.assistant-labels-container{position:absolute;top:-26px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px}.arrow-label{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.7rem;line-height:1;color:#fff;white-space:nowrap;font-weight:500;cursor:pointer}.event-detail{position:absolute;left:1rem;right:1rem;background:#161b22;border:1px solid #30363d;border-radius:8px;overflow:hidden;z-index:100;box-shadow:0 4px 12px #0006}.event-detail-top{bottom:calc(100% + .5rem)}.event-detail-bottom{top:calc(100% + .5rem)}.detail-header{display:flex;gap:1rem;padding:.5rem .75rem;background:#21262d;border-bottom:1px solid #30363d}.detail-tool{color:#58a6ff;font-weight:600;font-size:.85rem}.detail-file{color:#8b949e;font-size:.8rem}.detail-content{margin:0;padding:.75rem;font-size:.8rem;color:#c9d1d9;overflow-x:auto;max-height:200px;overflow-y:auto;white-space:pre-wrap;word-break:break-all}.no-events{display:flex;align-items:center;justify-content:center;height:100%;color:#8b949e;font-size:1rem}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;width:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#0d1117;color:#c9d1d9}.app{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.app-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:#161b22;border-bottom:1px solid #30363d;flex-shrink:0}.header-left h1{margin:0;font-size:1.25rem;color:#58a6ff;font-weight:600}.header-right{display:flex;align-items:center}.app-main{display:flex;flex:1;overflow:hidden}.sidebar{width:300px;flex-shrink:0;overflow:hidden;border-right:1px solid #30363d;transition:width .3s ease}.sidebar.collapsed{width:0;border-right:none}.content{flex:1;overflow:hidden}
