*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#0f0c29,#302b63 50%,#24243e);min-height:100vh;color:#fff}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{box-shadow:0 0 20px rgba(99,102,241,.3)}50%{box-shadow:0 0 40px rgba(99,102,241,.6)}}@keyframes spin{to{transform:rotate(1turn)}}.card{background:hsla(0,0%,100%,.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.1);border-radius:24px;padding:40px;box-shadow:0 8px 32px rgba(0,0,0,.3)}.input-field{width:100%;padding:14px 18px;border-radius:12px;border:1px solid hsla(0,0%,100%,.15);background:hsla(0,0%,100%,.08);color:#fff;font-size:15px;transition:all .3s ease;outline:none}.input-field:focus{border-color:#6366f1;background:hsla(0,0%,100%,.12);box-shadow:0 0 0 3px rgba(99,102,241,.2)}.input-field::placeholder{color:hsla(0,0%,100%,.4)}.btn-primary{width:100%;padding:16px;border-radius:12px;border:none;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px rgba(99,102,241,.4)}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.output-card{background:linear-gradient(135deg,rgba(99,102,241,.2),rgba(139,92,246,.2));border:1px solid rgba(99,102,241,.3);border-radius:20px;padding:30px;text-align:center;animation:glow 2s ease-in-out infinite}audio{width:100%;margin-top:15px;border-radius:10px}.badge{padding:6px 14px;border-radius:20px;background:rgba(99,102,241,.2);border:1px solid rgba(99,102,241,.3);font-size:12px;color:#a5b4fc;margin-bottom:20px}.badge,.spinner{display:inline-block}.spinner{width:20px;height:20px;border:3px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px;vertical-align:middle}.label{display:block;margin-bottom:8px;font-weight:500;color:hsla(0,0%,100%,.8);font-size:14px}.gradient-text{font-size:32px;font-weight:700;background:linear-gradient(135deg,#fff,#a5b4fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.subtitle{color:hsla(0,0%,100%,.5);font-size:15px}.footer{text-align:center;color:hsla(0,0%,100%,.3);font-size:12px;margin-top:40px}