:root{--bg-dark:#0a0e17;--bg-card:#10182899;--border-card:#ffffff14;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent-primary:#3b82f6;--accent-glow:#3b82f680;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-dark);color:var(--text-primary);background-image:radial-gradient(circle at 15%,#3b82f614,#0000 25%),radial-gradient(circle at 85% 30%,#10b9810d,#0000 25%);flex-direction:column;min-height:100vh;display:flex}.app-container{width:100%;max-width:800px;margin:0 auto;padding:2rem 1.5rem}.header{text-align:center;margin-bottom:2.5rem;animation:.8s ease-out fadeInDown}.header h1{letter-spacing:-.02em;background:linear-gradient(135deg,#fff 0%,#a5b4fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:800}.header p{color:var(--text-secondary);font-size:1rem}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-card);border-radius:20px;padding:2rem;transition:transform .3s,box-shadow .3s;animation:.8s ease-out fadeInUp;box-shadow:0 20px 40px #0006}.glass-card:hover{transform:translateY(-2px);box-shadow:0 25px 50px #00000080}.upload-area{border:2px dashed var(--border-card);text-align:center;cursor:pointer;background:#ffffff05;border-radius:12px;margin-bottom:1.5rem;padding:3rem 2rem;transition:all .3s}.upload-area:hover,.upload-area.active{border-color:var(--accent-primary);box-shadow:0 0 20px var(--accent-glow);background:#3b82f60d}.upload-icon{margin-bottom:1rem;font-size:3rem;display:block}.upload-text{color:var(--text-primary);margin-bottom:.5rem;font-size:1.1rem;font-weight:500}.upload-subtext{color:var(--text-secondary);font-size:.9rem}.input-group{margin-bottom:1.5rem;position:relative}.input-label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.input-field{border:1px solid var(--border-card);width:100%;color:var(--text-primary);font-family:var(--font-family);background:#0003;border-radius:10px;padding:1rem 1.2rem;font-size:1rem;transition:all .3s}.input-field:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #3b82f633}.btn-primary{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,#3b82f6 0%,#4f46e5 100%);border:none;border-radius:10px;width:100%;padding:1rem;font-size:1.1rem;font-weight:600;transition:all .3s;box-shadow:0 4px 15px #3b82f666}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #3b82f699}.btn-primary:active:not(:disabled){transform:translateY(1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;filter:grayscale()}.loader{vertical-align:middle;border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:24px;height:24px;animation:1s ease-in-out infinite spin;display:inline-block}.result-container{border-top:1px solid var(--border-card);margin-top:2rem;padding-top:2rem;animation:.5s ease-out fadeIn}.result-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;margin-bottom:1rem;padding:.5rem 1rem;font-size:.9rem;font-weight:700;display:inline-block}.badge-bull{color:var(--success);background:#10b98126;border:1px solid #10b9814d}.badge-bear{color:var(--danger);background:#ef444426;border:1px solid #ef44444d}.badge-wait{color:var(--warning);background:#f59e0b26;border:1px solid #f59e0b4d}.result-text{color:#e2e8f0;font-size:1.05rem;line-height:1.6}.preview-image{border:1px solid var(--border-card);border-radius:8px;max-width:100%;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=600px){.glass-card{padding:1.5rem}.header h1{font-size:2rem}}
