.vvt-tool{max-width:1180px;margin:48px auto;padding:0 16px;display:grid;grid-template-columns:.75fr 1.25fr;gap:42px;color:#111}
.vvt-tool [hidden]{display:none!important}
.vvt-kicker{font-weight:800;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#5c5500;margin:0}
.vvt-copy h1{font-size:clamp(2.3rem,5vw,4.4rem);letter-spacing:-.07em;line-height:.95;margin:.25em 0 .35em}
.vvt-copy p,.vvt-copy li{color:#4f4f4c}
.vvt-copy ul{padding-left:1.1em}
.vvt-workspace{border:1px solid #ddddda;border-radius:22px;padding:18px;background:#fff;box-shadow:0 15px 40px rgba(17,17,17,.06);align-self:start;min-width:0}
.vvt-drop{border:2px dashed #a9a9a1;min-height:300px;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;text-align:center;border-radius:16px;background:#fafaf8;cursor:pointer;padding:20px}
.vvt-drop:focus-visible,.vvt-btn:focus-visible,.vvt-select:focus-visible{outline:3px solid #111;outline-offset:2px}
.vvt-drop.drag{border-color:#111;background:#fffde8}
.vvt-drop input{display:none}
.vvt-drop strong{font-size:1.25rem}
.vvt-drop span{color:#696966;margin-bottom:8px}
.vvt-btn{display:inline-flex;align-items:center;justify-content:center;border:2px solid #111;background:#f7e70a;color:#111;border-radius:999px;font:inherit;font-weight:800;padding:11px 20px;cursor:pointer;text-decoration:none;line-height:1.2}
.vvt-btn:hover{box-shadow:4px 4px 0 #111}
.vvt-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.vvt-ghost{background:#fff}
.vvt-info{font-size:.85rem;color:#696966;margin:0 0 12px;word-break:break-all}
.vvt-stage{position:relative;background:#101010;border-radius:12px;overflow:hidden;line-height:0;width:fit-content;max-width:100%;margin:0 auto}
.vvt-video{display:block;max-width:100%;max-height:420px;width:auto;height:auto}
.vvt-select{position:absolute;left:30%;top:35%;width:30%;height:16%;border:2px solid #f7e70a;background:rgba(247,231,10,.18);cursor:move;touch-action:none;line-height:normal}
.vvt-select i{position:absolute;width:16px;height:16px;background:#f7e70a;border:2px solid #111;touch-action:none}
.vvt-select i[data-h=nw]{left:-9px;top:-9px;cursor:nwse-resize}
.vvt-select i[data-h=ne]{right:-9px;top:-9px;cursor:nesw-resize}
.vvt-select i[data-h=sw]{left:-9px;bottom:-9px;cursor:nesw-resize}
.vvt-select i[data-h=se]{right:-9px;bottom:-9px;cursor:nwse-resize}
.vvt-hint{font-size:.85rem;color:#696966;margin:10px 0 0}
.vvt-controls{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}
.vvt-controls label{font-size:.8rem;font-weight:700;display:flex;flex-direction:column;gap:4px;flex:1 1 200px}
.vvt-controls select,.vvt-controls input{border:1px solid #b5b5ad;padding:9px;border-radius:10px;background:#fff;font:inherit;font-weight:400;min-width:0}
.vvt-pair{display:flex;gap:8px}
.vvt-pair input{width:50%}
.vvt-rights{font-size:.82rem;display:flex;gap:8px;align-items:flex-start;margin:6px 0 14px;color:#4f4f4c}
.vvt-rights input{margin-top:3px;accent-color:#111}
.vvt-actions{display:flex;gap:10px;flex-wrap:wrap}
.vvt-status{margin-top:14px;font-size:.92rem;min-height:1.4em}
.vvt-err{color:#a11;font-weight:700}
.vvt-progress{height:9px;background:#e7e7df;border-radius:50px;margin-top:10px;overflow:hidden}
.vvt-progress i{display:block;background:#f7e70a;border-right:1px solid #111;height:100%;width:0;transition:width .25s}
.vvt-result{margin-top:18px;border-top:1px solid #ddddda;padding-top:18px}
.vvt-result video{display:block;max-width:100%;max-height:360px;margin:0 auto;border-radius:12px;background:#101010}
.vvt-sizes{font-size:.9rem;color:#4f4f4c}
.vvt-contact{max-width:560px}
.vvt-contact label{display:block;font-weight:700;font-size:.85rem;margin-bottom:4px}
.vvt-contact input,.vvt-contact select,.vvt-contact textarea{width:100%;border:1px solid #b5b5ad;border-radius:10px;padding:11px;font:inherit}
.vvt-hp{position:absolute;left:-9999px}
.vvt-ok{padding:14px;border:1px solid #bfe3a0;background:#f4fde9;border-radius:12px}
.vvt-bad{padding:14px;border:1px solid #e3b0b0;background:#fdeeee;border-radius:12px}
@media(max-width:860px){.vvt-tool{grid-template-columns:1fr;gap:24px;margin:24px auto}.vvt-drop{min-height:220px}}
@media(prefers-reduced-motion:reduce){.vvt-progress i{transition:none}}