:root{color:#171a1f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f5f1e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,a{font:inherit}.appShell{background:linear-gradient(135deg,#e6394629,#0000 28%),linear-gradient(315deg,#2a9d8f33,#0000 32%),#f5f1e8;min-height:100vh;padding:32px}.workspace{max-width:1180px;margin:0 auto}.topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.brand{align-items:center;gap:16px;display:flex}.brandMark{color:#fffdf7;background:#111418;border:3px solid #e63946;border-radius:8px;place-items:center;width:54px;height:54px;display:inline-grid;box-shadow:8px 8px #f4c430}h1{letter-spacing:0;margin:0;font-size:clamp(2rem,4vw,4.5rem);line-height:.95}p{color:#59606b;margin:6px 0 0;font-size:1rem}.iconButton{color:#171a1f;cursor:pointer;background:#fffaf0;border:1px solid #d5cfbf;border-radius:8px;place-items:center;width:44px;height:44px;display:inline-grid}.contentGrid{grid-template-columns:minmax(300px,390px) minmax(0,1fr);align-items:start;gap:22px;display:grid}.controlsPanel,.previewPanel{background:#fffcf4e0;border:1px solid #ded8c9;border-radius:8px;box-shadow:0 20px 50px #1f222614}.controlsPanel{gap:16px;padding:18px;display:grid}.uploadBox{cursor:pointer;background:#fffaf0;border:2px dashed #b7ad98;border-radius:8px;grid-template-columns:44px minmax(0,1fr) 36px;align-items:center;gap:14px;min-height:96px;padding:16px;transition:border-color .16s,transform .16s,background .16s;display:grid}.uploadBox:hover,.uploadBox.hasFile{background:#f3fffc;border-color:#2a9d8f}.uploadBox:hover{transform:translateY(-1px)}.uploadBox input{display:none}.uploadIcon,.uploadAction{color:#fffdf7;background:#1e272e;border-radius:8px;place-items:center;display:inline-grid}.uploadIcon{width:44px;height:44px}.uploadAction{background:#e63946;width:36px;height:36px}.uploadText{min-width:0}.uploadText strong,.downloadBar strong{color:#171a1f;text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.uploadText small,.downloadBar small{color:#69717d;margin-top:5px;line-height:1.35;display:block}.settings{background:#191d22;border-radius:8px;gap:12px;padding:14px;display:grid}.rangeControl{color:#fffaf0;grid-template-columns:1fr auto;gap:8px 12px;display:grid}.rangeControl span{align-items:center;gap:8px;display:inline-flex}.rangeControl strong{color:#f4c430}.rangeControl input{accent-color:#e63946;grid-column:1/-1}.primaryButton,.downloadButton{color:#fffdf7;cursor:pointer;background:#e63946;border:0;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:48px;font-weight:800;text-decoration:none;display:inline-flex}.primaryButton:disabled,.downloadButton.disabled{cursor:not-allowed;opacity:.45}.spin{animation:1s linear infinite spin}.progressArea{gap:8px;display:grid}.statusLine{color:#414852;justify-content:space-between;gap:12px;font-size:.92rem;display:flex}.progressTrack{background:#dfd7c6;border-radius:8px;height:12px;overflow:hidden}.progressFill{border-radius:inherit;background:linear-gradient(90deg,#e63946,#f4c430,#2a9d8f);height:100%;transition:width .18s}.hint{color:#b12a34;margin:0;font-size:.9rem}.previewPanel{overflow:hidden}.previewFrame{background:linear-gradient(45deg,#ffffff14 25%,#0000 25%) 0 0/28px 28px,#111418;place-items:center;min-height:460px;display:grid}.previewFrame video{background:#050607;width:100%;max-height:68vh;display:block}.emptyPreview{color:#fffaf0;place-items:center;gap:14px;display:grid}.downloadBar{justify-content:space-between;align-items:center;gap:18px;padding:16px;display:flex}.downloadBar>div{min-width:0}.downloadButton{background:#2a9d8f;min-width:136px;padding:0 18px}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=860px){.appShell{padding:18px}.topbar,.downloadBar{align-items:stretch}.contentGrid,.topbar{grid-template-columns:1fr;display:grid}.iconButton{justify-self:end}.previewFrame{min-height:300px}}@media (width<=560px){.brand{align-items:flex-start}.brandMark{width:46px;height:46px;box-shadow:5px 5px #f4c430}.uploadBox{grid-template-columns:38px minmax(0,1fr)}.uploadAction{display:none}.downloadBar{display:grid}.downloadButton{width:100%}}.iconButton:disabled{cursor:not-allowed;opacity:.45}.primaryButton.cancel{background:#2b3038}.trimHeader{color:#fffaf0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.trimHeader>span{align-items:center;gap:8px;font-weight:700;display:inline-flex}.presetRow{gap:6px;display:flex}.presetRow button{color:#fffaf0;cursor:pointer;background:0 0;border:1px solid #3a414b;border-radius:6px;padding:5px 10px;font-size:.85rem;font-weight:700}.presetRow button.active{color:#191d22;background:#f4c430;border-color:#f4c430}.presetRow button:disabled{cursor:not-allowed;opacity:.5}.uploadBox.dropReady{border-color:#f4c430}.uploadBox.dragOver{background:#fff1e6;border-style:solid;border-color:#e63946;transform:scale(1.02)}.uploadBox.disabled{cursor:not-allowed;opacity:.6}.timeFields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.timeField{color:#fffaf0;grid-template-columns:minmax(0,1fr) auto;gap:4px 6px;display:grid}.timeField span{color:#c9c2b2;grid-column:1/-1;font-size:.85rem}.timeField input{color:#f4c430;font-variant-numeric:tabular-nums;background:#232830;border:1px solid #3a414b;border-radius:6px;min-width:0;padding:8px 10px;font-weight:700}.timeField input::placeholder{color:#7d8592;font-weight:400}.timeField input:focus{outline-offset:-1px;outline:2px solid #f4c430}.timeField.invalid input{border-color:#e63946;outline-color:#e63946}.timeField button{color:#fffaf0;cursor:pointer;background:0 0;border:1px solid #3a414b;border-radius:6px;place-items:center;width:36px;display:inline-grid}.timeField button:hover:not(:disabled){color:#f4c430;border-color:#f4c430}.trimSlider{accent-color:#e63946;width:100%}.trimSummary{color:#c9c2b2;font-variant-numeric:tabular-nums;margin:0;font-size:.85rem}.trimSummary.error{color:#ff8a93;font-weight:700}@media (width<=400px){.timeFields{grid-template-columns:1fr}}.speedHint{color:#c9c2b2;grid-column:1/-1;font-size:.8rem;line-height:1.35}
