
        body {
            font-family: 'Poppins', sans-serif;
           background: url(/image/bg.webp)no-repeat center/cover;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            min-height: 100vh;
            margin: 0;
            color: #fff;
            animation: gradientBG 15s ease infinite;
            overflow-x: hidden;
        }

        @keyframes gradientBG {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }

        .container {
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            padding: 20px;
            border-radius: 15px;
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
            width: 90%;
            max-width: 600px;
            text-align: center;
            animation: fadeIn 1s ease-out;
            border: 1px solid rgba(255, 255, 255, 0.2);
        }

        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        h1 {
            margin-bottom: 15px;
            font-size: 1.5em;
            color: #fff;
            text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
            animation: slideIn 0.5s ease-out;
        }

        @keyframes slideIn {
            from { transform: translateX(-20px); opacity: 0; }
            to { transform: translateX(0); opacity: 1; }
        }

        input[type="file"] {
            margin-bottom: 15px;
            padding: 8px;
            border: 1px solid rgba(255, 255, 255, 0.3);
            border-radius: 10px;
            width: 100%;
            box-sizing: border-box;
            background: rgba(255, 255, 255, 0.15);
            color: #fff;
            font-size: 0.9em;
            transition: all 0.3s ease;
        }

        input[type="file"]:hover, input[type="file"]:focus {
            border-color: #00ff88;
            box-shadow: 0 0 10px rgba(0, 255, 136, 0.5);
            animation: glow 1.5s ease-in-out infinite;
        }

        @keyframes glow {
            0%, 100% { box-shadow: 0 0 5px rgba(0, 255, 136, 0.5); }
            50% { box-shadow: 0 0 15px rgba(0, 255, 136, 0.8); }
        }

        .input-container {
            margin-bottom: 15px;
        }

        label {
            display: block;
            margin-bottom: 8px;
            font-weight: 600;
            font-size: 0.9em;
            color: #fff;
            animation: slideIn 0.7s ease-out;
        }

        input[type="number"] {
            padding: 8px;
            border: 1px solid rgba(255, 255, 255, 0.3);
            border-radius: 10px;
            width: 80px;
            text-align: center;
            font-size: 0.9em;
            background: rgba(255, 255, 255, 0.15);
            color: #fff;
            transition: all 0.3s ease;
        }

        input[type="number"]:hover, input[type="number"]:focus {
            border-color: #00ff88;
            box-shadow: 0 0 10px rgba(0, 255, 136, 0.5);
            animation: glow 1.5s ease-in-out infinite;
        }

        .preview-section {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-around;
            margin-bottom: 15px;
            gap: 10px;
        }

        .preview {
            flex: 1 1 250px;
            text-align: center;
        }

        .preview img {
            max-width: 100%;
            height: auto;
            border-radius: 10px;
            border: 1px solid rgba(255, 255, 255, 0.2);
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
            animation: scaleIn 0.8s ease-out;
        }

        @keyframes scaleIn {
            from { transform: scale(0.8); opacity: 0; }
            to { transform: scale(1); opacity: 1; }
        }

        .preview p {
            margin-top: 8px;
            font-size: 0.85em;
            color: #ddd;
        }

        .size-warning, .loading {
            color: #ff4d4d;
            font-size: 0.8em;
            margin-top: 5px;
        }

        .loading {
            color: #00ff88;
            animation: pulse 1.5s ease-in-out infinite;
        }

        @keyframes pulse {
            0%, 100% { opacity: 0.7; }
            50% { opacity: 1; }
        }

        button {
            background: linear-gradient(45deg, #00ff88, #00b7ff);
            color: #fff;
            border: none;
            padding: 10px 20px;
            border-radius: 10px;
            cursor: pointer;
            font-size: 0.9em;
            font-weight: 600;
            transition: all 0.3s ease;
            animation: buttonPulse 2s ease-in-out infinite;
        }

        @keyframes buttonPulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.05); }
        }

        button:hover:not(:disabled) {
            background: linear-gradient(45deg, #00b7ff, #00ff88);
            box-shadow: 0 0 15px rgba(0, 255, 136, 0.7);
        }

        button:disabled {
            background: #666;
            cursor: not-allowed;
            animation: none;
        }

        #downloadBtn {
            display: none;
        }

        footer {
            margin-top: 15px;
            font-size: 0.85em;
            color: #ddd;
            text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
            transition: all 0.3s ease;
        }

        footer:hover {
            color: #00ff88;
            transform: translateY(-2px);
        }

        @media (max-width: 600px) {
            .container {
                padding: 15px;
                max-width: 85%;
            }
            h1 {
                font-size: 1.2em;
            }
            .preview {
                flex: 1 1 100%;
            }
            input[type="number"] {
                width: 70px;
            }
            button {
                padding: 8px 16px;
                font-size: 0.85em;
            }
        }

        @media (min-width: 601px) and (max-width: 900px) {
            .container {
                max-width: 80%;
            }
            h1 {
                font-size: 1.4em;
            }
        }



        :root{
  --bg: #070617;                 /* dark base */
  --neon-inner: #9b59ff;         /* main neon color */
  --neon-accent: #00e5ff;        /* secondary glow */
  --neon-soft: rgba(155,89,255,0.12);
  --glass: rgba(255,255,255,0.04);
  --btn-pad: 14px 28px;
  --radius: 12px;
  --transition: 260ms cubic-bezier(.2,.9,.2,1);
}
        /* Footer container */
footer.neon{
  width:100%;
  max-width:980px;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:18px;
  border-radius:16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)),
    radial-gradient(600px 120px at 10% 0%, rgba(155,89,255,0.06), transparent 10%),
    rgba(0,0,0,0.2);
  box-shadow:
    0 8px 30px rgba(0,0,0,0.6),
    0 0 40px rgba(155,89,255,0.06);
  backdrop-filter: blur(6px) saturate(120%);
  -webkit-backdrop-filter: blur(6px) saturate(120%);
  border: 1px solid rgba(255,255,255,0.04);
}

/* Neon button */
.neon-btn{
  appearance: none;
  -webkit-appearance: none;
  background: linear-gradient(90deg, rgba(255,255,255,0.03), rgba(255,255,255,0.02));
  color: white;
  padding: var(--btn-pad);
  border-radius: var(--radius);
  border: 1px solid rgba(255,255,255,0.06);
  font-weight: 600;
  letter-spacing: 0.6px;
  cursor: pointer;
  font-size: 14px;
  position: relative;
  overflow: visible;
  transition: transform var(--transition), box-shadow var(--transition), filter var(--transition);
  box-shadow:
    0 8px 30px rgba(0,0,0,0.6),
    0 0 18px rgba(155,89,255,0.10);
  outline: none;
}

/* neon text effect with glow stroke */
.neon-btn::before{
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: calc(var(--radius) + 2px);
  background: linear-gradient(90deg, rgba(155,89,255,0.06), rgba(0,229,255,0.04));
  filter: blur(8px);
  opacity: 0.8;
  z-index: -2;
  transition: opacity var(--transition);
}

/* colored glow lines using pseudo-element */
.neon-btn::after{
  content: "";
  position: absolute;
  left: -30%;
  top: -30%;
  width: 160%;
  height: 160%;
  background:
    radial-gradient(40% 40% at 20% 20%, var(--neon-inner), transparent 10%),
    radial-gradient(30% 30% at 80% 80%, var(--neon-accent), transparent 10%);
  filter: blur(28px) saturate(140%);
  opacity: 0.45;
  z-index: -3;
  transition: transform 800ms cubic-bezier(.2,.9,.2,1), opacity var(--transition);
  transform: scale(1);
}

/* neon text styling */
.neon-btn{
  text-shadow:
    0 0 8px rgba(255,255,255,0.06),
    0 0 16px rgba(155,89,255,0.18),
    0 0 28px rgba(0,229,255,0.10);
  color: #e6e6ff;
}

/* Hover / focus effects */
.neon-btn:hover,
.neon-btn:focus{
  transform: translateY(-4px) scale(1.01);
  box-shadow:
    0 14px 40px rgba(0,0,0,0.6),
    0 0 36px rgba(155,89,255,0.18),
    0 0 60px rgba(0,229,255,0.12);
}
.neon-btn:hover::after,
.neon-btn:focus::after{
  transform: scale(1.06);
  opacity: 0.9;
}
.neon-btn:active{
  transform: translateY(-1px) scale(0.995);
}

/* small animated pulse */
@keyframes neonPulse {
  0% { filter: drop-shadow(0 0 6px rgba(155,89,255,0.18)); transform: translateY(0); }
  50% { filter: drop-shadow(0 0 18px rgba(155,89,255,0.30)); transform: translateY(-2px); }
  100% { filter: drop-shadow(0 0 6px rgba(155,89,255,0.18)); transform: translateY(0); }
}
.neon-btn.pulse {
  animation: neonPulse 2.8s ease-in-out infinite;
}

/* Accessibility: visible focus ring */
.neon-btn:focus-visible{
  box-shadow:
    0 0 0 4px rgba(155,89,255,0.12),
    0 0 30px rgba(155,89,255,0.12);
}

/* Responsive tweaks */
@media (max-width:520px){
  .neon-btn{ padding:10px 18px; font-size:13px; }
  footer.neon{ padding:12px; border-radius:12px; }
}