html, body {
    overflow: hidden;
    height: 100%;
}
body {
    margin: 0;
    padding: 0;
    font-family: 'Segoe UI', Arial, sans-serif;
    background: #181818;
    color: #fff;
    min-height: 100vh;
}

.container {
    max-width: 600px;
    margin: 60px auto 0 auto;
    padding: 36px 28px 28px 28px;
    text-align: center;
    position: relative;
    border-radius: 24px;
    background: rgba(30, 30, 40, 0.65);
    box-shadow: 0 8px 40px 0 rgba(0,0,0,0.45), 0 1.5px 12px 0 #0ff6, 0 0.5px 24px 0 #f0f6;
    backdrop-filter: blur(12px) saturate(160%);
    border: 4px solid transparent;
    background-clip: padding-box;
}

.container::before {
    content: '';
    position: absolute;
    inset: -4px;
    z-index: -1;
    border-radius: 28px;
    padding: 0;
    background: linear-gradient(120deg, #f00, #0f0, #00f, #f0f, #0ff, #ff0, #f00);
    background-size: 400% 400%;
    filter: blur(0.5px);
    animation: rgbBorder 6s linear infinite;
}

@keyframes rgbBorder {
    0% { background-position: 0% 50%; }
    100% { background-position: 100% 50%; }
}

h1 {
    font-size: 2.8rem;
    margin-bottom: 0.2em;
    background: linear-gradient(90deg, #f00, #0f0, #00f, #f0f, #0ff, #ff0, #f00);
    background-size: 400% 400%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: rgbText 3s linear infinite;
}

@keyframes rgbText {
    0% { background-position: 0% 50%; }
    100% { background-position: 100% 50%; }
}

.subtitle {
    font-size: 1.2rem;
    margin-bottom: 1.5em;
    color: #ff0;
    text-shadow: 0 0 8px #f0f, 0 0 12px #0ff;
}

.rgb-glow {
    width: 100px;
    height: 100px;
    margin: 0 auto 1.5em auto;
    border-radius: 50%;
    background: linear-gradient(135deg, #f00, #0f0, #00f, #f0f, #0ff, #ff0, #f00);
    box-shadow: 0 0 40px 20px #0ff, 0 0 80px 40px #f0f, 0 0 120px 60px #ff0;
    animation: rgbGlow 2s linear infinite;
}

@keyframes rgbGlow {
    0% { filter: hue-rotate(0deg); }
    100% { filter: hue-rotate(360deg); }
}

button#downloadBtn {
    background: #222;
    border: none;
    border-radius: 8px;
    padding: 16px 36px;
    font-size: 1.3rem;
    font-weight: bold;
    cursor: pointer;
    box-shadow: 0 0 16px 4px #0ff, 0 0 32px 8px #f0f;
    margin-bottom: 1.5em;
    transition: transform 0.1s;
    position: relative;
    overflow: hidden;
}
button#downloadBtn {
    background: #222;
    /* Text gradient like h1 */
    background-clip: padding-box;
}
button#downloadBtn span {
    background: linear-gradient(90deg, #f00, #0f0, #00f, #f0f, #0ff, #ff0, #f00);
    background-size: 400% 400%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    animation: rgbText 3s linear infinite;
    display: inline-block;
}
button#downloadBtn:hover {
    transform: scale(1.07) rotate(-2deg);
    box-shadow: 0 0 32px 8px #ff0, 0 0 64px 16px #0ff;
}

#progressContainer {
    margin: 1.5em 0 1em 0;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    background: #222;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}
#progressBar {
    background: linear-gradient(90deg, #f00, #0f0, #00f, #f0f, #0ff, #ff0, #f00);
    height: 100%;
    width: 0%;
    border-radius: 8px 0 0 8px;
    transition: width 0.3s cubic-bezier(.4,2,.6,1);
    box-shadow: 0 0 16px 4px #0ff, 0 0 32px 8px #f0f;
}
#progressText {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    font-weight: bold;
    text-shadow: 0 0 8px #0ff, 0 0 12px #f0f;
}

#result {
    margin-top: 1.5em;
    font-size: 1.2rem;
    color: #0ff;
    text-shadow: 0 0 8px #f0f, 0 0 12px #ff0;
}

.testimonials {
    margin-top: 2.5em;
    background: rgba(40,40,40,0.8);
    border-radius: 8px;
    padding: 1em;
    box-shadow: 0 0 12px 2px #0ff;
}
.testimonials h2 {
    color: #ff0;
    margin-bottom: 0.5em;
}
.testimonials ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.testimonials li {
    margin-bottom: 0.7em;
    color: #fff;
}
.fake-user {
    color: #0ff;
}

footer {
    margin-top: 2em;
    text-align: center;
    color: #888;
    font-size: 0.95em;
}

.hidden {
    display: none;
}
