@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;700&display=swap";:root{--bg-color:#fff;--panel-bg:#00000005;--panel-border:#0000001a;--text-main:#1a1a2e;--text-muted:#6b7280;--accent-gradient:linear-gradient(135deg, #00d2ff 0%, #3a7bd5 100%);--accent-color:#00d2ff;--error-color:#ff4b4b;--success-color:#00e676;--font-base:"Outfit", sans-serif;--radius-lg:20px;--radius-md:12px;--transition:all .3s cubic-bezier(.25, .8, .25, 1)}*{box-sizing:border-box}body{font-family:var(--font-base);background-color:var(--bg-color);color:var(--text-main);background-image:radial-gradient(circle at 15%,#00d2ff14,#0000 25%),radial-gradient(circle at 85% 30%,#3a7bd514,#0000 25%);justify-content:center;align-items:center;min-height:100vh;margin:0;padding:0;display:flex;overflow-x:hidden}.app-container{background:var(--panel-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--panel-border);border-radius:var(--radius-lg);width:100%;max-width:800px;padding:40px;animation:.6s ease-out slideUp;box-shadow:0 25px 50px -12px #00000080}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.header{text-align:center;margin-bottom:40px}.title{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 10px;font-size:2.5rem;font-weight:700;display:inline-block}.subtitle{color:var(--text-muted);margin:0;font-size:1.1rem;font-weight:300}.upload-grid{grid-template-columns:1fr 1fr;gap:25px;margin-bottom:35px;display:grid}@media (width<=600px){.upload-grid{grid-template-columns:1fr}}.upload-card{border:1px dashed var(--panel-border);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:var(--transition);background:#00000005;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:30px 20px;display:flex;position:relative}.upload-card:hover{border-color:var(--accent-color);background:#00d2ff08;transform:translateY(-2px)}.upload-card.has-file{border:1px solid var(--accent-color);background:#00d2ff0d}.upload-card input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.upload-icon{margin-bottom:15px;font-size:2.5rem;display:block}.upload-label{letter-spacing:.5px;margin-bottom:5px;font-size:1.1rem;font-weight:600}.upload-hint{color:var(--text-muted);font-size:.85rem}.file-preview{color:var(--accent-color);word-break:break-all;background:#0000000d;border-radius:20px;margin-top:15px;padding:6px 12px;font-size:.9rem;display:inline-block}.img-preview{object-fit:contain;border-radius:8px;width:100%;max-height:100px;margin-top:10px}.action-section{text-align:center}.primary-btn{background:var(--accent-gradient);color:#fff;font-size:1.1rem;font-weight:600;font-family:var(--font-base);cursor:pointer;transition:var(--transition);border:none;border-radius:30px;padding:16px 40px;box-shadow:0 10px 20px -10px #00d2ff80}.primary-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 15px 25px -10px #00d2ff99}.primary-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.loading-container{border-radius:var(--radius-md);border:1px solid var(--panel-border);background:#00000005;flex-direction:column;align-items:center;margin-top:30px;padding:20px;display:flex}.spinner{border:3px solid #0000001a;border-top-color:var(--accent-color);border-radius:50%;width:40px;height:40px;margin-bottom:20px;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:var(--text-main);letter-spacing:.5px;margin:0;font-weight:500;animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.result-section{text-align:center;margin-top:40px;animation:.6s ease-out slideUp}.result-video{border-radius:var(--radius-md);border:1px solid var(--panel-border);background:#000;width:100%;max-width:640px;margin-bottom:25px;box-shadow:0 10px 30px #00000080}.download-btn{color:var(--text-main);border:1px solid var(--accent-color);cursor:pointer;transition:var(--transition);background:0 0;border-radius:30px;align-items:center;gap:10px;padding:12px 30px;font-size:1rem;font-weight:500;text-decoration:none;display:inline-flex}.download-btn:hover{background:#00d2ff1a;box-shadow:0 0 15px #00d2ff33}.error-message{color:var(--error-color);border-radius:var(--radius-md);background:#ff4b4b1a;border:1px solid #ff4b4b33;margin-top:20px;padding:15px;font-size:.95rem}
