:root{color-scheme:dark;--bg:#040c16;--panel:#091b2c;--line:#2b516a;--text:#effaff;--sub:#a3c4d4;--blue:#41c6ff;--green:#4cf2ba;--purple:#aa7aff}
*{box-sizing:border-box}body.wwc-editor{margin:0;background:radial-gradient(70% 50% at 0% 0%,#07503950,transparent),radial-gradient(75% 55% at 100% 35%,#51328b48,transparent),#040c16;color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}button,input,select{font:inherit}button,a,label{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}.ve-shell{max-width:1370px;padding:22px clamp(12px,3vw,32px) 56px;margin:0 auto}.ve-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.ve-links a{background:#0b2435;border:1px solid #2b6175;border-radius:10px;padding:10px 12px;color:#d9f9ff;font-weight:700;font-size:12px;text-decoration:none}.ve-links a:hover{background:#17405a}.ve-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:12px 0 22px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.15em;color:var(--green)}.ve-hero h1{font-size:clamp(26px,4.1vw,52px);line-height:1.07;margin:8px 0 10px;letter-spacing:-.05em}.ve-hero h1 em{font-style:normal;color:var(--purple)}.ve-hero p{color:var(--sub);font-size:15px;line-height:1.5;margin:0;max-width:780px}.ve-chip{font-size:11px;border:1px solid #2d6975;background:#0c2a32;border-radius:50px;color:#b8fff0;padding:7px 11px;font-weight:750;white-space:normal}.ve-panel{background:linear-gradient(145deg,#0c2235,#081423);border:1px solid #28526b;box-shadow:0 12px 40px #0005;padding:clamp(14px,2vw,24px);border-radius:19px;margin-bottom:14px;min-width:0}.ve-heading,.ve-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ve-heading{justify-content:space-between;margin-bottom:16px}.ve-heading h2{margin:4px 0 0;font-size:21px}.ve-row h3,.ve-mode h3{font-size:15px;margin:0}.ve-between{justify-content:space-between}.ve-imports,.ve-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.ve-primary,.ve-button,.ve-danger,.ve-mini{border:1px solid #39758c;background:#132c41;color:#e8f9ff;padding:13px 17px;min-height:45px;border-radius:12px;font-weight:800;text-align:center}.ve-primary{background:linear-gradient(100deg,#48efb5,#55befb);border-color:#48e6c1;color:#021b21}.ve-danger{color:#ffc7d6;border-color:#923f61;background:#35152b}.ve-mini{padding:5px 9px;min-height:32px}.ve-button:hover,.ve-mini:hover{border-color:#80eaff;background:#1d4158}.ve-primary:hover{filter:brightness(1.07)}.ve-file{position:relative;overflow:hidden;cursor:pointer}.ve-file input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.ve-note,.ve-muted,.ve-mode p,.ve-hint,.ve-status{font-size:12px;color:var(--sub);line-height:1.5}.ve-status{padding:12px;border:1px solid #234e5a;border-radius:11px;background:#071b27;min-height:40px}.ve-status[data-error="1"]{background:#391626;border-color:#954052;color:#ffccd9}.ve-work{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,1fr);gap:14px;align-items:start}.ve-preview-panel{min-width:0}.ve-stage{position:relative;width:100%;background:#01060c;border:1px solid #315670;border-radius:13px;overflow:hidden;line-height:0;user-select:none;touch-action:pan-y}.ve-stage video{display:block;width:100%;max-height:430px;min-height:170px;object-fit:contain;background:#02050b}.ve-crop{position:absolute;outline:2px solid var(--green);border:1px dashed #091a20;background:rgba(76,242,186,.08);cursor:move;touch-action:none;line-height:normal}.ve-crop-label{position:absolute;left:0;top:0;background:#07382f;color:#baffdf;padding:3px 5px;font-weight:900;font-size:10px}.ve-resize{position:absolute;bottom:-10px;right:-10px;width:24px;height:24px;border:3px solid #00241c;background:#75ffd4;border-radius:8px;cursor:nwse-resize}.ve-playbar{display:flex;gap:10px;align-items:center;margin:11px 0;flex-wrap:wrap}.ve-playbar span{font-variant-numeric:tabular-nums;color:#c3e9f5;font-size:12px}.ve-timeline-wrap{border:1px solid #294d63;border-radius:12px;background:#06101e;padding:12px}.ve-timeline{display:flex;gap:3px;overflow:hidden;margin:10px 0}.ve-segment{min-width:32px;min-height:53px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;border:1px solid #1eab9d;background:linear-gradient(135deg,#126756,#183d60);border-radius:7px;color:white;font-size:11px;font-weight:800;overflow:hidden}.ve-segment[aria-pressed="true"]{outline:3px solid #70eefd;outline-offset:-3px;background:linear-gradient(120deg,#235f96,#583b87)}.ve-segment span{font-size:9px;font-weight:550;white-space:nowrap}#veSeek{width:100%;accent-color:var(--green);height:26px}.ve-times{display:flex;justify-content:space-between;color:var(--sub);font-size:11px;font-variant-numeric:tabular-nums}.ve-mode-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:16px 0}.ve-mode-tabs button{padding:10px 4px;border-radius:11px;border:1px solid #2c5269;background:#091a2b;color:var(--text);font-size:12px;font-weight:750;min-height:44px}.ve-mode-tabs button.selected{border-color:#70f2c7;background:#18554b}.ve-mode{padding:12px 0}.ve-mode p{margin:10px 0}.ve-timeinputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}label.ve-title,.ve-timeinputs label,.ve-crop-aspect{display:block;color:#e1fbff;font-size:12px;font-weight:750}input[type=number],input[type=text],select{display:block;background:#06162b;border:1px solid #3a6881;border-radius:10px;padding:12px 11px;color:#f1fcff;width:100%;min-width:0;margin-top:5px}input:focus-visible,button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #75e9e8;outline-offset:2px}.ve-crop-aspect{margin:12px 0}.ve-advanced{padding-top:15px}.ve-advanced details{border:1px solid #2e526b;border-radius:12px;padding:10px}.ve-advanced summary{font-weight:800;cursor:pointer}.ve-advanced p{color:var(--sub);font-size:12px}.ve-summary{color:#b4eaff;font-size:12px;border-top:1px solid #24516b;padding-top:12px;margin-top:14px}.ve-export input{margin:8px 0 15px;max-width:550px}.ve-progress{margin:15px 0;font-size:12px;color:var(--sub)}.ve-progress progress{display:block;width:100%;height:12px;accent-color:#64eac3}.ve-result{margin-top:20px;border-top:1px solid #2c5a72;padding-top:12px}.ve-result video{display:block;width:100%;max-height:420px;margin:10px 0;border-radius:12px;background:black}.ve-library{margin-top:15px;padding:12px;background:#081526;border:1px solid #27516a;border-radius:14px}.ve-library-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:9px;margin:10px 0}.ve-library-list button{padding:12px;border:1px solid #2d6b77;background:#113144;color:#fff;text-align:left;border-radius:10px;overflow-wrap:anywhere}.ve-library-list small{display:block;color:#aad9e5;margin-top:5px}.ve-result[hidden],.ve-panel[hidden],.ve-work[hidden],.ve-mode[hidden],button[hidden],.ve-crop[hidden],.ve-library[hidden],.ve-progress[hidden]{display:none!important}
@media(max-width:840px){.ve-work{grid-template-columns:1fr}.ve-hero{display:block}.ve-hero .ve-chip{display:inline-block;margin-top:12px}}@media(max-width:500px){.ve-shell{padding:11px 10px 32px}.ve-imports{display:grid;grid-template-columns:1fr 1fr}.ve-imports>*:first-child{grid-column:1/-1}.ve-imports .ve-button{font-size:12px;padding:10px}.ve-mode-tabs button{font-size:11px}.ve-timeinputs{gap:8px}.ve-primary,.ve-button,.ve-danger{font-size:12px;min-height:46px;padding:11px}.ve-hero h1{font-size:29px}}

/* CapCut-inspired direct clip trimming, without adding a heavy framework. */
.ve-trim-editor{border:1px solid #306c85;border-radius:15px;background:linear-gradient(140deg,#071425,#102447);padding:13px 13px 10px;margin:14px 0 17px;user-select:none}
.ve-trim-times{display:flex;justify-content:space-between;gap:8px;align-items:center;color:#b5e9f9;font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}
.ve-trim-times strong{text-align:center;color:#4ef5c5;letter-spacing:.06em;font-size:10px}
.ve-trim-rail{position:relative;height:100px;border-radius:12px;margin:12px 18px 3px;background:repeating-linear-gradient(90deg,#0f3250 0,#0f3250 7%,#194a65 7.1%,#194a65 8%,#11334b 8.1%,#11334b 13%);border:1px solid #3b7186;touch-action:none;overflow:visible}
.ve-trim-selection{position:absolute;inset:3px auto 3px 0;width:100%;border:3px solid #62ffd0;border-radius:8px;background:linear-gradient(180deg,rgba(45,238,174,.35),rgba(42,152,245,.28));pointer-events:none;overflow:hidden}
.ve-trim-art{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0%,#8affdd55 1%,transparent 3%,transparent 10%);opacity:.9}
.ve-trim-handle{position:absolute;top:-8px;width:38px;height:116px;transform:translateX(-50%);border:2px solid #041b26;background:#68ffd2;color:#04312b;border-radius:9px;font-size:20px;font-weight:900;cursor:ew-resize;touch-action:none;z-index:3;box-shadow:0 0 0 2px #34acd3,0 5px 18px #0009}
.ve-trim-handle:hover,.ve-trim-handle:focus-visible{background:white;box-shadow:0 0 0 3px #7be7ef,0 6px 22px #000a}
.ve-trim-editor.is-trimming .ve-trim-selection{background:#26d8ad77}
.ve-trim-tips{color:#a8bece;margin-top:16px;font-size:11px}
.ve-precise-trim{border-top:1px solid #30546f;padding-top:12px;margin-top:12px}
.ve-precise-trim summary{cursor:pointer;color:#baf5ee;font-size:12px;font-weight:800;margin-bottom:12px}
.ve-precise-trim .ve-timeinputs{margin-top:10px}
@media(max-width:500px){.ve-trim-editor{padding:9px 8px}.ve-trim-rail{height:76px;margin:12px 18px}.ve-trim-handle{height:94px;width:38px}.ve-trim-times strong{font-size:9px}.ve-trim-tips{margin-top:14px}}

/* WWCFAM Timeline v3: filmstrip, zoom, touch-friendly trims and a fixed playhead. */
.ve-timeline-toolbar{gap:12px;margin-bottom:8px}.ve-timeline-toolbar>div:first-child{min-width:200px;flex:1}.ve-timeline-toolbar h3{margin-bottom:3px}.ve-zoom-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;background:#081d32;border:1px solid #2d536c;padding:5px 8px;border-radius:10px}.ve-zoom-controls label{font-size:11px;color:#d8f6ff;font-weight:800;white-space:nowrap}.ve-zoom-controls input{width:112px;accent-color:#60edcc}.ve-timeline-viewport{position:relative;overflow:auto hidden;scrollbar-width:none;-ms-overflow-style:none;background:#061321;border:1px solid #2c6986;border-radius:13px;overscroll-behavior-x:contain;touch-action:pan-x;min-height:146px}.ve-timeline-viewport::-webkit-scrollbar{display:none}.ve-timeline-canvas{position:relative;height:145px;min-width:100%;background:#07182b;user-select:none}.ve-timeline-ruler{position:absolute;top:0;left:0;right:0;height:25px;background:#0c2540;border-bottom:1px solid #365a75}.ve-ruler-tick{position:absolute;top:0;border-left:1px solid #50738b;height:25px;padding:3px 0 0 4px;font-size:10px;color:#b7d2dd;white-space:nowrap;pointer-events:none}.ve-timeline-frames{position:absolute;top:26px;bottom:8px;left:0;right:0;overflow:hidden;background:repeating-linear-gradient(90deg,#153753 0,#1d5268 5%,#13415f 10%,#08233e 15%)}.ve-frame{position:absolute;top:0;bottom:0;object-fit:cover;filter:brightness(.65);pointer-events:none}.ve-timeline{position:absolute;inset:28px 0 8px;display:block;overflow:visible;margin:0;pointer-events:auto}.ve-timeline .ve-segment{position:absolute;top:7px;bottom:7px;min-width:4px;min-height:0;border:2px solid #55f0c1;border-radius:6px;background:linear-gradient(180deg,#126c5255,#11466377);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;overflow:visible;z-index:3;font-size:11px;touch-action:none;padding:0;color:#fff}.ve-timeline .ve-segment[aria-pressed="true"]{outline:2px solid #a5fbef;outline-offset:1px;border-color:#d8fff3;background:#1c6a9d58;z-index:5}.ve-timeline .ve-segment strong,.ve-timeline .ve-segment span:not(.ve-film-handle){pointer-events:none;text-shadow:0 1px 4px black;white-space:nowrap;font-weight:800;overflow:hidden;text-overflow:ellipsis;max-width:85%}.ve-film-handle{position:absolute;top:-8px;bottom:-8px;width:22px;background:#58f7c7;border:2px solid #e2fffb;border-radius:6px;z-index:8;cursor:ew-resize;touch-action:none;display:flex;align-items:center;justify-content:center;color:#072f2d;font-size:14px;box-shadow:0 4px 12px #001b2f88}.ve-film-handle[data-side=start]{left:-10px}.ve-film-handle[data-side=end]{right:-10px}.ve-film-playhead{position:absolute;top:0;bottom:0;width:2px;background:#ff6ca4;box-shadow:0 0 0 1px #38152c,0 0 12px #ff6ca4;z-index:15;pointer-events:none}.ve-film-playhead::before{content:'';position:absolute;top:0;left:-6px;border-left:7px solid transparent;border-right:7px solid transparent;border-top:11px solid #ff6ca4}.ve-timeline-wrap{min-width:0}.ve-timeline-wrap input#veSeek{accent-color:#ff73aa}.ve-quick-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.ve-quick-actions button{font-size:11px;padding:8px 12px;min-height:38px}.ve-file-status{font-size:11px;color:#afdbeb;margin:9px 0 0}.ve-file-status.warn{color:#ffcfb5}.ve-segment-empty{color:#b4d0e0;font-size:12px;padding:12px}.ve-primary:disabled,.ve-button:disabled{opacity:.4}
@media(max-width:600px){.ve-timeline-toolbar{align-items:stretch}.ve-timeline-toolbar>div:first-child{flex-basis:100%}.ve-zoom-controls{width:100%;justify-content:space-between}.ve-zoom-controls input{flex:1}.ve-timeline-viewport{min-height:125px}.ve-timeline-canvas{height:124px}.ve-timeline .ve-segment{top:3px;bottom:3px}.ve-film-handle{width:28px}.ve-timeline .ve-segment span:not(.ve-film-handle){display:none}}

/* Timeline fit + edge handle repair (v4): source fits completely at zoom 1. */
.ve-work,.ve-preview-panel,.ve-timeline-wrap,.ve-timeline-toolbar,.ve-timeline-viewport{min-width:0;max-width:100%;}
.ve-timeline-viewport{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#2d8e94 #071827;scroll-padding-inline:4px;}
.ve-timeline-canvas{min-width:100%;box-sizing:border-box;}
.ve-timeline .ve-segment{box-sizing:border-box;}
.ve-film-handle[data-side="start"]{left:0;right:auto;}
.ve-film-handle[data-side="end"]{right:0;left:auto;}
.ve-film-handle{width:clamp(24px,3.2vw,34px);min-height:48px;z-index:12;touch-action:none;pointer-events:auto;user-select:none;}
.ve-ruler-tick.ve-ruler-last{transform:translateX(-100%);}
.ve-zoom-controls{max-width:100%;}
.ve-timeline-toolbar>div:first-child{min-width:0;}
.ve-preview-panel .ve-timeline-toolbar{flex-wrap:wrap;}
.ve-trim-rail{box-sizing:border-box;}
@media(max-width:600px){.ve-film-handle{width:32px;}.ve-timeline-wrap{padding:8px;}.ve-timeline-viewport{scrollbar-width:thin;}}
