.tl{--tl-ruler-h:34px;--tl-lane-h:56px;--tl-head-w:168px;display:flex;flex-direction:column;gap:10px;padding:14px 0 0}.tl__toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:0 16px 12px;border-bottom:1px solid var(--line-soft)}.tl__body{display:grid;grid-template-columns:var(--tl-head-w) 1fr}.tl__heads{border-right:1px solid var(--line-soft);background:var(--bg-elevated)}.tl__head{height:var(--tl-lane-h);display:flex;flex-direction:column;justify-content:center;gap:4px;padding:6px 12px;border-bottom:1px solid #182032}.tl__head--ruler{height:var(--tl-ruler-h);justify-content:center;font-size:12px}.tl__head-name{display:flex;align-items:center;gap:8px;font-size:13.5px}.tl__head-kind{font-size:10.5px;padding:1px 6px}.tl__head-actions{display:flex;gap:6px}.tl__scroller{overflow-x:auto;overflow-y:hidden}.tl__canvas{position:relative;min-width:100%}.tl__ruler{position:relative;height:var(--tl-ruler-h);border-bottom:1px solid var(--line-soft);cursor:col-resize}.tl__tick{position:absolute;top:0;bottom:0;display:flex;flex-direction:column;justify-content:space-between;padding-left:3px;pointer-events:none}.tl__tick i{width:1px;height:7px;background:#33415e}.tl__tick b{font-size:10.5px;color:var(--text-mute);white-space:nowrap}.tl__lane{position:relative;height:var(--tl-lane-h);border-bottom:1px solid #182032;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 8%)}.tl__lane--audio{--tl-lane-h:62px}.tl__lane--subtitle{--tl-lane-h:38px}.tl__clip{position:absolute;top:5px;bottom:5px;border-radius:6px;border:1px solid rgba(255,255,255,.16);padding:5px 8px;overflow:hidden;cursor:-webkit-grab;cursor:grab;display:flex;flex-direction:column;gap:2px}.tl__clip:active{cursor:-webkit-grabbing;cursor:grabbing}.tl__clip.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px rgba(76,194,255,.3)}.tl__clip.is-dragging{opacity:.85;box-shadow:var(--shadow)}.tl__clip-name{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl__clip-meta{font-size:10.5px;color:rgba(232,236,245,.65)}.tl__clip-wave{position:absolute;left:0;right:0;bottom:0;height:18px;opacity:.55}.tl__clip-trim{position:absolute;right:5px;top:5px;font-size:10px;font-family:var(--mono);padding:1px 4px;border-radius:4px;background:rgba(5,8,14,.55)}.tl__playhead{bottom:0;width:1px;pointer-events:none}.tl__playhead,.tl__playhead:before{position:absolute;top:0;background:var(--accent)}.tl__playhead:before{content:"";left:-5px;width:11px;height:11px;border-radius:2px}.tl__playhead-cap{position:absolute;top:12px;left:6px;font-size:10.5px;padding:1px 5px;border-radius:4px;background:rgba(76,194,255,.18);color:#d6efff;white-space:nowrap}.editor{display:grid;grid-template-columns:260px minmax(0,1fr) 300px;grid-template-areas:"bin viewer inspector" "timeline timeline timeline";grid-gap:16px;gap:16px;align-items:start}.editor__bin{grid-area:bin;position:-webkit-sticky;position:sticky;top:0;max-height:calc(100vh - 190px);overflow:auto}.editor__viewer{grid-area:viewer;min-width:0}.editor__inspector{grid-area:inspector;position:-webkit-sticky;position:sticky;top:0;max-height:calc(100vh - 190px);overflow:auto}.editor__timeline{grid-area:timeline;min-width:0}@media (max-width:1240px){.editor{grid-template-columns:230px minmax(0,1fr);grid-template-areas:"bin viewer" "inspector viewer" "timeline timeline"}.editor__bin,.editor__inspector{position:static;max-height:none}}@media (max-width:860px){.editor{grid-template-columns:minmax(0,1fr);grid-template-areas:"viewer" "bin" "inspector" "timeline"}}.bin{display:flex;flex-direction:column}.bin__item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #182032}.bin__item.is-off{opacity:.45}.bin__thumb{width:42px;height:26px;flex-shrink:0;border-radius:5px;border:1px solid var(--line-soft)}.bin__text{min-width:0;display:flex;flex-direction:column;gap:2px}.bin__name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bin__meta{font-size:11px;color:var(--text-mute)}.checkbox{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--text-dim);cursor:pointer}.checkbox input{width:16px;height:16px;accent-color:var(--accent-strong)}.presets{gap:8px;margin-top:10px}.preset,.presets{display:flex;flex-direction:column}.preset{gap:3px;text-align:left;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line-soft);background:var(--bg-elevated);color:var(--text);cursor:pointer;transition:border-color .15s ease}.preset:hover{border-color:#2b4a66}.preset.is-active{border-color:var(--accent);background:rgba(76,194,255,.07)}.preset__name{font-size:13.5px;font-weight:600}.preset__meta{font-size:11.5px;color:var(--text-mute)}.viewer{display:flex;flex-direction:column;gap:10px}.viewer__stage{position:relative;aspect-ratio:16/9;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#05080e}.viewer__video{width:100%;height:100%;object-fit:contain;background:#000}.viewer__fake,.viewer__fake-grid{position:absolute;inset:0}.viewer__fake-grid{background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 0);background-size:33.33% 33.33%}.viewer__fake-safe{position:absolute;inset:8%;border:1px dashed rgba(255,255,255,.22);border-radius:4px}.viewer__fake-sub{position:absolute;left:50%;bottom:12%;transform:translateX(-50%);padding:6px 14px;border-radius:6px;background:rgba(5,8,14,.72);color:#eaf3ff;font-size:13px}.viewer__badge{position:absolute;top:10px;left:10px;z-index:2}.viewer__scene{position:absolute;right:10px;bottom:10px;z-index:2;padding:4px 9px;border-radius:6px;background:rgba(5,8,14,.7);color:#cfe6f7;font-size:12px}.viewer__strip{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:6px;gap:6px}.viewer__thumb{position:relative;aspect-ratio:16/9;border:1px solid var(--line-soft);border-radius:6px;cursor:pointer;display:flex;align-items:flex-end;padding:4px 5px;opacity:.75}.viewer__thumb:hover{opacity:1}.viewer__thumb.is-active{opacity:1;border-color:var(--accent);box-shadow:0 0 0 2px rgba(76,194,255,.25)}.viewer__thumb span{font-size:10px;color:#dbe9f7;background:rgba(5,8,14,.55);border-radius:4px;padding:1px 4px}.viewer__bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--bg-elevated)}.viewer__range{flex:1 1;min-width:140px}.viewer__time{color:var(--text-dim);white-space:nowrap}.viewer__speed{display:inline-flex;gap:4px}.viewer__file{cursor:pointer}