.timeline-editor-cursor{cursor:ew-resize;box-sizing:border-box;border-left:1px solid #5297ff;border-right:1px solid #5297ff;height:calc(100% - 32px);position:absolute;top:32px;transform:translate(-25%)scaleX(.5)}.timeline-editor-cursor-top{margin:auto;position:absolute;top:0;left:50%;transform:translate(-50%)scaleX(2)}.timeline-editor-cursor-area{cursor:ew-resize;width:16px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.timeline-editor-drag-line-container{height:100%;position:absolute;top:0;left:0}.timeline-editor-drag-line{border-left:1px dashed #5297ff99;width:0;height:99%;position:absolute;top:0}.timeline-editor:hover .timeline-editor-edit-area .ReactVirtualized__Grid::-webkit-scrollbar{height:4px}.timeline-editor-edit-area{flex:auto;margin-top:10px;position:relative;overflow:hidden}.timeline-editor-edit-area .ReactVirtualized__Grid{overflow:overlay!important;outline:none!important}.timeline-editor-edit-area .ReactVirtualized__Grid::-webkit-scrollbar{width:0;height:0}.timeline-editor-edit-area .ReactVirtualized__Grid::-webkit-scrollbar-track{background-color:#0000!important}.timeline-editor-edit-area .ReactVirtualized__Grid::-webkit-scrollbar-thumb{background:#313132;border-radius:16px}.timeline-editor-action{background-color:#2f3134;position:absolute;top:0;left:0}.timeline-editor-action .timeline-editor-action-left-stretch,.timeline-editor-action .timeline-editor-action-right-stretch{border-radius:4px;width:10px;height:100%;position:absolute;top:0;overflow:hidden}.timeline-editor-action .timeline-editor-action-left-stretch:after,.timeline-editor-action .timeline-editor-action-right-stretch:after{border-top:28px solid #0000;border-bottom:28px solid #0000;border-radius:4px;margin:auto;position:absolute;top:0;bottom:0}.timeline-editor-action .timeline-editor-action-left-stretch{left:0}.timeline-editor-action .timeline-editor-action-left-stretch:after{content:"";border-left:7px solid #ffffff1a;border-right:7px solid #0000;left:0}.timeline-editor-action .timeline-editor-action-right-stretch{right:0}.timeline-editor-action .timeline-editor-action-right-stretch:after{content:"";border-left:7px solid #0000;border-right:7px solid #ffffff1a;right:0}.timeline-editor-edit-row-dragging{opacity:.5}.timeline-editor-edit-row{box-sizing:border-box;background-image:linear-gradient(#191b1d,#191b1d),linear-gradient(90deg,#ffffff14 1px,#0000 0);background-repeat:no-repeat,repeat;flex-direction:row;transition:opacity .2s,transform .2s;display:flex;position:relative}.timeline-editor-edit-row-drag-handle{cursor:grab;color:#666;-webkit-user-select:none;user-select:none;z-index:10;opacity:.6;justify-content:center;align-items:center;width:16px;height:16px;font-size:12px;transition:opacity .2s;display:flex;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.timeline-editor-edit-row-drag-handle:hover{opacity:1;color:#999}.timeline-editor-edit-row-drag-handle:active{cursor:grabbing}.timeline-editor-edit-row-dragged{opacity:.5;pointer-events:none;z-index:1000;position:relative;transform:scale(.98)}.timeline-editor-edit-row-dragging{cursor:grabbing}.timeline-editor-edit-row-placeholder{opacity:.8;background:#4a90e21a;border:2px dashed #4a90e2;height:4px;min-height:4px;margin:2px 0}.timeline-editor-edit-row-placeholder .timeline-editor-edit-row-drag-handle,.timeline-editor-edit-row-placeholder .timeline-editor-edit-action{display:none}.timeline-editor-edit-row:before{content:"";z-index:100;opacity:0;background:#4a90e2;height:2px;transition:opacity .2s;position:absolute;left:0;right:0}.timeline-editor-edit-row[data-insert-position=top]:before{opacity:1;top:-1px}.timeline-editor-edit-row[data-insert-position=bottom]:before{opacity:1;bottom:-1px}.timeline-editor-time-area{flex:none;height:32px;position:relative}.timeline-editor-time-area .ReactVirtualized__Grid{outline:none}.timeline-editor-time-area .ReactVirtualized__Grid::-webkit-scrollbar{display:none}.timeline-editor-time-area-interact{cursor:pointer;position:absolute;top:0;left:0}.timeline-editor-time-unit{box-sizing:content-box;border-right:1px solid #fff3;position:relative;height:4px!important;top:auto!important;bottom:0!important}.timeline-editor-time-unit-big{height:8px!important}.timeline-editor-time-unit-scale{color:#fff9;position:absolute;top:0;right:0;transform:translate(50%,-100%)}.timeline-editor{background-color:#191b1d;flex-direction:column;width:600px;height:600px;min-height:32px;font-family:PingFang SC;font-size:12px;display:flex;position:relative;overflow:hidden}*{box-sizing:border-box;margin:0;padding:0}body{color:#e0e0e0;background:linear-gradient(135deg,#1a0a2e 0%,#16213e 50%,#0f3460 100%);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.container{max-width:1200px;margin:0 auto;padding:20px}h1{text-align:center;background:linear-gradient(90deg,#ff4da6,#a855f7);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:20px;font-size:26px}h2{color:#ff80bf;margin-bottom:8px;font-size:15px}.tabs{gap:4px;margin-bottom:20px;display:flex}.tab{text-align:center;color:#888;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:600;transition:all .3s;display:flex}.tab:hover:not(.disabled){background:#ffffff14}.tab.active{color:#c084fc;background:#a855f726;border-color:#a855f74d}.tab.disabled{opacity:.4;cursor:not-allowed}.tab-num{background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;display:flex}.tab.active .tab-num{background:#a855f74d}.card{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:14px;padding:16px}.btn{cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{color:#fff;background:linear-gradient(135deg,#a855f7,#ec4899);padding:12px 28px;font-size:15px}.btn-primary:hover{opacity:.9}.btn-secondary{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f633}.btn-add{color:#c084fc;background:#a855f733;border:1px solid #a855f74d}.btn-success{color:#34d399;background:#10b98126;border:1px solid #10b98140}.btn-danger{color:#f87171;background:#ef444426;border:1px solid #ef444433}.btn-sm{padding:6px 12px;font-size:12px}.btn-wide{width:100%}.btn-icon{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:14px;display:flex}textarea,.text-input,input[type=text]{color:#fff;resize:vertical;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;width:100%;padding:10px 14px;font-family:SF Mono,Fira Code,monospace;font-size:14px;line-height:1.6}textarea:focus,.text-input:focus,input[type=text]:focus{border-color:#a855f7;outline:none}select{color:#fff;background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;width:100%;padding:8px 12px;font-size:14px}select:focus{border-color:#a855f7;outline:none}select option{background:#1a0a2e}label{color:#a0a0a0;margin-bottom:4px;font-size:12px;display:block}.row{gap:12px;display:flex}.row>*{flex:1}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-gap{align-items:center;gap:8px;display:flex}.team-row{align-items:center;gap:6px;margin-bottom:5px;animation:.2s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1}}.team-row input[type=text]{flex:1;padding:7px 10px;font-family:inherit;font-size:13px}.rank-select{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;width:55px;padding:7px;font-size:13px}.rank-select option{background:#1a0a2e}.legend{background:#0003;border-radius:8px;margin-top:10px;padding:10px 14px;font-size:12px;line-height:1.8}.legend code{color:#c084fc;background:#a855f733;border-radius:3px;padding:1px 5px;font-size:12px}.slider-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.slider-row label{min-width:100px;margin-bottom:0}.slider-row input[type=range]{accent-color:#a855f7;flex:1}.slider-val{text-align:right;color:#c084fc;min-width:40px;font-size:12px}.upload-area{text-align:center;cursor:pointer;border:2px dashed #ffffff26;border-radius:10px;padding:16px;transition:border-color .2s}.upload-area:hover{border-color:#a855f7}.upload-area.has-file{background:#10b9810d;border-color:#10b981}.preset-chip{cursor:pointer;color:#c084fc;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.preset-chip:hover{background:#a855f726;border-color:#a855f74d}.preset-del{color:#f87171;cursor:pointer;opacity:0;background:#ef444433;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;transition:opacity .2s;display:flex}.preset-chip:hover .preset-del{opacity:1}.progress-bar{margin-top:14px}.progress-track{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#a855f7,#ec4899);border-radius:3px;height:100%;transition:width .5s}.progress-text{color:#a0a0a0;text-align:center;margin-top:5px;font-size:12px}.segment-list{flex-direction:column;gap:8px;display:flex}.segment-card{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:12px;padding:12px 16px;transition:all .2s;display:flex}.segment-card:hover{background:#ffffff12}.segment-card.playing{background:#10b9810d;border-color:#10b98166}.segment-type{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.segment-type.slide{background:#3b82f633}.segment-type.team{background:#a855f733}.segment-info{flex:1;min-width:0}.segment-label{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.segment-dur{color:#888;margin-top:2px;font-size:11px}.segment-wave{flex-shrink:0;align-items:flex-end;gap:1px;width:120px;height:32px;padding:2px;display:flex}.segment-wave .bar{background:#a855f780;border-radius:1px 1px 0 0;flex:1;min-width:1px}.segment-actions{flex-shrink:0;gap:4px;display:flex}.timeline-container{background:#0006;border:1px solid #ffffff14;border-radius:12px;margin-bottom:14px;padding:16px;position:relative;overflow-x:auto}.tl-ruler{border-bottom:1px solid #ffffff14;height:24px;margin-bottom:8px;margin-left:70px;position:relative}.tl-ruler-mark{color:#555;font-size:9px;position:absolute;top:0;transform:translate(-50%)}.tl-ruler-mark:after{content:"";background:#ffffff1f;width:1px;height:8px;margin:2px auto 0;display:block}.tl-track{align-items:stretch;min-height:60px;margin-bottom:4px;display:flex}.tl-track-label{color:#666;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;align-items:center;width:70px;font-size:10px;display:flex}.tl-track-content{flex:1;gap:2px;display:flex;position:relative}.tl-clip{cursor:grab;-webkit-user-select:none;user-select:none;border-radius:6px;flex-direction:column;flex-shrink:0;transition:box-shadow .15s;display:flex;position:relative;overflow:hidden}.tl-clip:hover{z-index:10;box-shadow:0 0 12px #a855f766}.tl-clip.dragging{opacity:.4}.tl-clip-timer{background:linear-gradient(135deg,#f59e0b,#d97706)}.tl-clip-slide{background:linear-gradient(135deg,#3b82f6,#2563eb)}.tl-clip-team{background:linear-gradient(135deg,#a855f7,#7c3aed)}.tl-clip-gap{background:#ffffff08;border:1px dashed #ffffff26}.tl-clip-thumb{object-fit:cover;width:100%;height:40px;display:block}.tl-clip-info{white-space:nowrap;text-overflow:ellipsis;color:#fff;padding:2px 5px;font-size:9px;font-weight:600;overflow:hidden}.tl-clip-dur{opacity:.7;color:#fff;padding:0 5px 2px;font-size:8px}.tl-clip-wave{opacity:.6;align-items:flex-end;gap:1px;height:24px;padding:2px 3px;display:flex}.tl-clip-wave .bar{background:#ffffffb3;border-radius:1px 1px 0 0;flex:1;min-width:1px}.tl-clip-actions{gap:2px;display:none;position:absolute;top:2px;right:2px}.tl-clip:hover .tl-clip-actions{display:flex}.tl-clip-btn{color:#fff;cursor:pointer;background:#00000080;border:none;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;display:flex}.tl-clip-btn:hover{background:#000c}.tl-music{cursor:grab;-webkit-user-select:none;user-select:none;background:#10b98126;border:1px solid #10b98140;border-radius:6px;align-items:center;height:32px;padding:0 10px;transition:box-shadow .15s;display:flex;position:absolute;top:2px;bottom:2px}.tl-music:hover{box-shadow:0 0 12px #10b98166}.tl-music-label{color:#34d399;white-space:nowrap;font-size:11px;font-weight:600}.playhead{z-index:20;pointer-events:none;background:#ff4da6;width:2px;transition:left .1s linear;position:absolute;top:0;bottom:0}.playhead:before{content:"";border-top:6px solid #ff4da6;border-left:6px solid #0000;border-right:6px solid #0000;position:absolute;top:-4px;left:-5px}.preview-area{text-align:center;margin-top:14px}.preview-area video{border:1px solid #ffffff1a;border-radius:10px;max-width:100%}.download-btn{color:#fff;background:linear-gradient(135deg,#10b981,#059669);border-radius:8px;margin-top:10px;padding:10px 24px;font-weight:600;text-decoration:none;display:inline-block}.playback-controls{background:#0000004d;border-radius:10px;align-items:center;gap:12px;margin-bottom:14px;padding:12px 16px;display:flex}.play-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7,#ec4899);border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;transition:transform .15s;display:flex}.play-btn:hover{transform:scale(1.1)}.time-display{color:#c084fc;font-variant-numeric:tabular-nums;font-size:13px}.playback-progress{cursor:pointer;background:#ffffff1a;border-radius:2px;flex:1;height:4px;position:relative}.playback-progress-fill{background:linear-gradient(90deg,#a855f7,#ec4899);border-radius:2px;height:100%;transition:width .1s linear}.gap-btn{cursor:pointer;opacity:0;background:0 0;border:none;justify-content:center;align-items:center;width:8px;min-height:60px;transition:opacity .2s;display:flex;position:relative}.tl-track-content:hover .gap-btn{opacity:1}.gap-btn:after{content:"+";color:#c084fc;background:#a855f74d;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;display:flex}.gap-btn:hover:after{background:#a855f799}
