[hidden]{display:none!important}
.video-converter-shell{max-width:1120px;margin:0 auto}
.video-workspace{display:grid;gap:20px}
.video-panel{background:#fff;border:1px solid #dfe4ec;border-radius:16px;padding:22px;box-shadow:0 5px 22px rgba(16,24,40,.04)}
.step-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}.step-heading>span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#eaf1ff;color:#2563eb;font-weight:850;flex:0 0 30px}.step-heading h2{font-size:21px;margin:1px 0 4px}.step-heading p{margin:0;color:#667085;font-size:14px}
.runtime-warning{margin-bottom:20px}
.upload-dropzone{position:relative;border:2px dashed #bfd0ec;border-radius:14px;background:#f8fbff;padding:30px 20px;text-align:center;cursor:pointer;transition:.18s ease;outline:none}.upload-dropzone:hover,.upload-dropzone:focus,.upload-dropzone.is-dragover{border-color:#2563eb;background:#eef4ff;box-shadow:0 0 0 4px rgba(37,99,235,.08)}.upload-dropzone-inner{display:grid;gap:7px;justify-items:center}.upload-icon{width:48px;height:48px;border-radius:999px;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-size:20px}.upload-title{font-weight:850;color:#0f172a}.upload-note{font-size:14px;color:#667085}.sr-only-file{position:absolute;inset:0;opacity:0;pointer-events:none;width:100%;height:100%}
.upload-progress{margin-top:16px}.progress-meta{display:flex;justify-content:space-between;gap:12px;color:#475467;margin-bottom:8px}.progress-bar{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden}.progress-bar span{display:block;height:100%;background:#2563eb;border-radius:999px;transition:width .15s ease}
.source-layout{display:grid;grid-template-columns:minmax(320px,1.1fr) minmax(300px,.9fr);gap:20px;align-items:start}.video-preview-frame{background:#0f172a;border-radius:12px;overflow:hidden;display:grid;place-items:center;min-height:260px}.video-preview-frame video,.result-preview video{display:block;width:100%;max-height:500px;background:#000}
.video-info-grid,.result-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.video-info-grid>div,.result-info-grid>div{background:#f8fafc;border:1px solid #e6eaf0;border-radius:10px;padding:11px 12px;min-width:0}.video-info-grid dt,.result-info-grid dt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#667085;font-weight:800}.video-info-grid dd,.result-info-grid dd{margin:4px 0 0;font-weight:750;color:#172033;overflow-wrap:anywhere}
.conversion-options{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:12px}.conversion-options .field{margin:0}.conversion-options label{display:block;font-weight:750;margin-bottom:7px}.conversion-options select{width:100%;padding:11px;border:1px solid #cfd6e2;border-radius:9px;background:#fff;font:inherit}.check-row{display:flex;gap:9px;align-items:center;margin:17px 0;font-weight:650}.convert-button{min-width:190px}
.conversion-progress{display:flex;align-items:center;gap:12px;margin-top:18px;padding:14px;border-radius:12px;background:#f8fafc;border:1px solid #e5eaf1}.conversion-progress>div:last-child{display:grid;gap:2px}.conversion-progress span{font-size:14px;color:#667085}.spinner{width:22px;height:22px;border:3px solid #d0d5dd;border-top-color:#2563eb;border-radius:50%;animation:wcvcspin .7s linear infinite}@keyframes wcvcspin{to{transform:rotate(360deg)}}
.result-preview{border-radius:12px;overflow:hidden;background:#0f172a;margin-bottom:14px}.download-only{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:22px;color:#667085;text-align:center;margin-bottom:14px}.result-info-grid{grid-template-columns:repeat(3,1fr);margin-top:14px}.result-actions{display:flex;gap:10px;margin-top:16px}
@media(max-width:850px){.source-layout{grid-template-columns:1fr}.conversion-options{grid-template-columns:1fr 1fr}.conversion-options .field:first-child{grid-column:1/-1}.result-info-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.video-panel{padding:17px}.conversion-options,.result-info-grid,.video-info-grid{grid-template-columns:1fr}.conversion-options .field:first-child{grid-column:auto}.result-actions{flex-direction:column}.convert-button{width:100%}.video-preview-frame{min-height:190px}}
