@import "https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700&family=Sora:wght@600;700;800&display=swap";:root{--ink:#eef4f3;--muted:#8fa0a4;--accent:#3dd6b8;--accent-deep:#1fa892;--surface:#ffffff09;--surface-strong:#ffffff0f;--line:#ffffff1a;--danger:#ffb4a4;--font-display:"Sora", system-ui, sans-serif;--font-body:"Figtree", system-ui, sans-serif;--radius:16px;--shadow-soft:0 18px 50px #00000047;font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--ink);background:#0a0f13;font-weight:400;line-height:1.45}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,a{font:inherit}::selection{color:#fff;background:#3dd6b859}.app{min-height:100svh;color:var(--ink);flex-direction:column;display:flex;position:relative}.bg{z-index:-1;background:radial-gradient(920px 540px at 88% -8%,#3dd6b829,#0000 58%),radial-gradient(720px 480px at -5% 95%,#648cdc1a,#0000 52%),linear-gradient(165deg,#090e12 0%,#111820 48%,#0c1218 100%);position:fixed;inset:0;overflow:hidden}.bg:before{content:"";background:radial-gradient(circle at 30% 40%,#3dd6b812,#0000 28%),radial-gradient(circle at 70% 60%,#ffffff08,#0000 24%);animation:18s ease-in-out infinite alternate drift;position:absolute;inset:-20% -10%}.bg:after{content:"";opacity:.7;background-image:radial-gradient(#ffffff0a .7px,#0000 .7px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(2%,-1.5%)scale(1.04)}}.topbar{align-items:center;gap:.65rem;padding:1.15rem 1.35rem;animation:.55s both rise;display:flex}.brand-mark{width:1.35rem;height:1.35rem;color:var(--ink)}.brand{font-family:var(--font-display);letter-spacing:-.04em;font-size:1.05rem;font-weight:700}main{flex:1;width:min(560px,100% - 2rem);margin:0 auto;padding:0 0 3rem}.hero{flex-direction:column;justify-content:center;gap:1rem;min-height:min(72svh,680px);animation:.75s both rise;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.brand-hero{font-family:var(--font-display);letter-spacing:-.065em;background:linear-gradient(#fff 20%,#c5d5d2 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(3.1rem,12vw,5rem);font-weight:800;line-height:.92}.lede{max-width:28ch;color:var(--muted);margin:0;font-size:1.12rem;line-height:1.4}.status-line{margin:.25rem 0 0}.dropzone{border-radius:var(--radius);background:var(--surface);width:100%;box-shadow:var(--shadow-soft);cursor:pointer;border:1px dashed #ffffff2e;flex-direction:row;align-items:center;gap:1.1rem;margin-top:.85rem;padding:1.4rem 1.3rem;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;animation:.85s 80ms both rise;display:flex}.dropzone:hover,.dropzone.is-dragging{background:#3dd6b814;border-style:solid;border-color:#3dd6b8b3;transform:translateY(-2px);box-shadow:0 22px 55px #00000059}.dropzone:hover .dropzone-mark,.dropzone.is-dragging .dropzone-mark{color:var(--accent);transform:scale(1.05)}.dropzone.is-disabled{opacity:.5;pointer-events:none}.dropzone-mark{color:#fff;flex:none;width:3.4rem;height:3.4rem;transition:transform .25s,color .25s;display:block}.dropzone-copy{text-align:left;flex-direction:column;gap:.2rem;min-width:0;display:flex}.dropzone-title{font-family:var(--font-display);letter-spacing:-.03em;font-size:1.2rem;font-weight:700}.dropzone-sub{color:var(--muted);font-size:.92rem}.gate{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-top:.5rem;padding:1rem 1.1rem}.gate h2{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 .4rem;font-size:1.15rem}.gate-hint,.muted{color:var(--muted)}.panel{flex-direction:column;gap:1.15rem;padding:.35rem 0 1rem;animation:.55s both rise;display:flex}.panel-top{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.05rem;display:flex}.file-name{letter-spacing:-.02em;word-break:break-all;margin:0 0 .25rem;font-weight:650}.estimate,.tip{margin:0;font-size:.9rem}.process-controls{flex-direction:column;gap:.35rem;padding:.35rem .15rem;display:flex}.feature-block{border-top:1px solid var(--line);flex-direction:column;gap:.75rem;padding:1rem 0;display:flex}.feature-block:first-child{border-top:0;padding-top:.25rem}.toggle-row{cursor:pointer;align-items:flex-start;gap:.8rem;display:flex}.toggle-row input{width:1.05rem;height:1.05rem;accent-color:var(--accent);margin-top:.3rem}.toggle-row span{flex-direction:column;gap:.15rem;display:flex}.toggle-row strong{letter-spacing:-.02em;font-weight:650}.toggle-row em{color:var(--muted);font-size:.88rem;font-style:normal}.feature-body{flex-direction:column;gap:.75rem;padding-left:1.85rem;display:flex}.feature-body .blend-row{border-top:1px solid var(--line);margin-top:.2rem;padding-top:.7rem}.mode-row{flex-wrap:wrap;gap:.45rem;display:flex}.mode-row button,.fps-presets button{border:1px solid var(--line);min-width:3rem;color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:.42rem .75rem;transition:border-color .15s,background .15s,color .15s}.mode-row button.is-active,.fps-presets button.is-active{color:var(--accent);background:#3dd6b81f;border-color:#3dd6b8a6}@media (hover:hover) and (pointer:fine){.mode-row button:hover:not(:disabled):not(.is-active),.fps-presets button:hover:not(:disabled):not(.is-active){color:var(--accent);border-color:#3dd6b873}}.size-row{align-items:center;gap:.5rem;display:flex}.size-row label{color:var(--muted);align-items:center;gap:.35rem;font-size:.9rem;display:flex}.size-row input,.fps-row input{border:1px solid var(--line);width:5.5rem;color:var(--ink);background:#00000047;border-radius:12px;padding:.5rem .65rem}.fps-row{align-items:center;gap:.7rem;display:flex}.fps-label{width:4rem;color:var(--muted);font-size:.9rem}.fps-unit{color:var(--muted)}.fps-presets{flex-wrap:wrap;gap:.45rem;display:flex}.fps-presets button:disabled{opacity:.35;cursor:not-allowed}.btn{font:inherit;letter-spacing:-.01em;cursor:pointer;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;padding:.8rem 1.15rem;font-weight:650;text-decoration:none;transition:transform .15s,background .15s,opacity .15s,box-shadow .15s;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:linear-gradient(180deg, #4ae0c2 0%, var(--accent) 55%, var(--accent-deep) 100%);color:#061015;box-shadow:0 10px 28px #3dd6b838}.btn.primary:hover:not(:disabled){box-shadow:0 14px 34px #3dd6b84d}.btn.wide{width:100%}.btn.text{color:var(--muted);background:0 0;padding:.35rem .55rem;font-weight:500}.btn.text:hover:not(:disabled){color:var(--ink)}.progress-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:.7rem;padding:1.05rem 1.1rem;display:flex}.progress-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.progress-percent{font-family:var(--font-display);letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:750;line-height:1}.progress-stage{color:var(--muted);text-align:right;font-size:.92rem}.progress-bar{background:#ffffff14;border-radius:999px;height:9px;overflow:hidden}.progress-bar-fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent-deep), var(--accent), #8af0d8);height:100%;transition:width .22s}.progress-bar.is-loading .progress-bar-fill{animation:1.1s ease-in-out infinite progress-pulse}@keyframes progress-pulse{0%,to{filter:brightness()}50%{filter:brightness(1.3)}}.progress-detail{color:var(--muted);margin:0;font-size:.85rem}.error-text{color:var(--danger);margin:0;font-size:.95rem}.result{flex-direction:column;gap:.9rem;display:flex}.result video{border:1px solid var(--line);border-radius:var(--radius);width:100%;max-height:380px;box-shadow:var(--shadow-soft);background:#000}.footer{color:var(--muted);letter-spacing:.01em;padding:1rem 1.5rem 1.85rem;font-size:.8rem}.footer p{text-align:center;margin:0}@media (width<=420px){.dropzone{gap:.9rem;padding:1.2rem 1.05rem}.dropzone-mark{width:2.9rem;height:2.9rem}.brand-hero{font-size:clamp(2.7rem,14vw,3.6rem)}}
