:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#242424;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}a{color:#646cff;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:#535bf2}body{place-items:center;min-width:320px;min-height:100vh;margin:0;display:flex}h1{font-size:3.2em;line-height:1.1}button{cursor:pointer;background-color:#1a1a1a;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{width:100%;min-height:100vh}.container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%) 0 0/200% 200%;justify-content:center;align-items:center;min-height:100vh;padding:20px;animation:15s infinite gradientShift;display:flex}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.card{background:#fff;border-radius:24px;width:100%;max-width:500px;padding:40px 30px;animation:.6s ease-out slideUp;box-shadow:0 30px 60px #0000004d}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.title{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:2rem;font-weight:700}.subtitle{color:#999;margin-bottom:30px;font-size:.9rem;font-weight:400}.input-group{margin-bottom:20px}.input-label{color:#333;text-align:left;margin-bottom:8px;font-size:.85rem;font-weight:600;display:block}.input{background-color:#f8f9fa;border:2px solid #e0e0e0;border-radius:12px;width:100%;padding:14px 16px;font-family:inherit;font-size:1rem;transition:all .3s}.input:focus{background-color:#fff;border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.input::placeholder{color:#bbb}.file-input-wrapper{width:100%;display:inline-block;position:relative;overflow:hidden}.file-input{position:absolute;left:-9999px}.file-input-label{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:2px dashed #ffffff4d;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;padding:14px 16px;font-size:.95rem;font-weight:600;transition:all .3s;display:flex}.file-input-label:hover{background:linear-gradient(135deg,#764ba2 0%,#667eea 100%);border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 10px 25px #0003}.file-name{color:#667eea;margin-top:6px;font-size:.8rem;font-weight:500;display:block}.button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:12px;width:100%;margin-top:20px;padding:14px 24px;font-size:1rem;font-weight:700;transition:all .3s;box-shadow:0 10px 25px #667eea4d}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 15px 35px #667eea66}.button:active:not(:disabled){transform:translateY(0)}.button:disabled{opacity:.7;cursor:not-allowed}.error{color:#e74c3c;background-color:#fadbd8;border-radius:8px;margin-top:15px;padding:12px 16px;font-size:.9rem;animation:.5s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.result{background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);border-radius:12px;margin-top:25px;padding:20px;animation:.5s ease-out slideUp}.result h3{color:#333;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;font-size:.95rem;font-weight:700}.result p{color:#555;word-wrap:break-word;font-size:.95rem;line-height:1.6}.copy-button{color:#fff;cursor:pointer;background-color:#667eea;border:none;border-radius:8px;margin-top:12px;padding:10px 16px;font-size:.85rem;font-weight:600;transition:all .3s}.copy-button:hover{background-color:#764ba2;transform:translateY(-2px)}.loading-spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:1s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=768px){.container{padding:15px}.card{border-radius:20px;padding:25px 20px}.title{margin-bottom:6px;font-size:1.75rem}.subtitle{margin-bottom:20px;font-size:.8rem}.input-group{margin-bottom:16px}.input,.file-input-label{padding:12px 14px;font-size:16px}.input-label{margin-bottom:6px;font-size:.8rem}.button{margin-top:15px;padding:12px 20px;font-size:.95rem}.result{margin-top:20px;padding:16px}.result h3,.result p{font-size:.9rem}}@media (width<=480px){.card{padding:20px 16px}.title{margin-bottom:4px;font-size:1.5rem}.subtitle{margin-bottom:18px;font-size:.75rem}.input{padding:11px 12px;font-size:16px}.button{padding:11px 18px;font-size:.9rem}}
