/* Don’t forget this meta tag in your HTML <head>! */
/* <meta name="viewport" content="width=device-width, initial-scale=1" /> */

body {
    background-color: #121212;
    font-family: Arial, Helvetica, sans-serif;
    margin: 0; /* prevent default margin on mobile */
    padding: 0;
}

#container {
    min-width: 300px;       /* smaller min-width for phones */
    max-width: 500px;
    width: 90%;             /* flexible width for responsiveness */
    min-height: 500px;
    max-height: 500px;
    background-color: #1e1e2f;
    text-align: center;
    margin: 20px auto 0 auto;
    padding: 5px;
    border-radius: 2%;
    box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 1;
    box-sizing: border-box; /* to include padding inside width */
}

button {
    background-color: #2a2a40;
    border: none;
    padding: 10px 20px;
    font-size: 24px;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
    transition-duration: 0.4s;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
    font-weight: bolder;
    margin-top: 30px;
    color: #ffffff;
}

.texty {
    font-size: 35px;
    color: #e7c0ff;
    text-shadow: 0 0 8px #9d00ff, 0 0 16px #6a0dad;
    margin-top: 20px;
    transition: 0.5s;
    font-weight: bolder;
}

@keyframes pulse {
  0% { text-shadow: 0 0 5px white; }
  50% { text-shadow: 0 0 20px white; }
  100% { text-shadow: 0 0 5px white; }
}

.texty.animate {
    color: #ffffff;
    animation: pulse 0.8s ease-in-out;
}

button:hover {
    background-color: #ffffff;
    color: #2a2a40;
    box-shadow: 0px 0px 10px rgba(34, 34, 34, 0.5);
    transform: scale(1.1);
}

p {
    color: #e7c0ff;
    font-size: 18px;
    margin: 50px auto 0 auto;
    text-align: center;
    text-shadow: 0 0 8px #9d00ff, 0 0 16px #6a0dad;
    font-family: monospace, sans-serif;
    font-weight: bolder;
    max-width: 400px;
}

hr {
    background-color: #0e0123;
    border-width: 0px;
    height: 1px;
    max-width: 50px;
    margin-top: 30px;
}

.Circle {
    width: 100px;
    height: 100px;
    background-color: rgba(0, 0, 0, 0);
    border-radius: 50%;
    display: inline-block;
    margin-top: 20px;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0);
    border: 2px solid #e7c0ff00;
    position: absolute;
    top: 0px;
    left: 0px;
    transition:
        border 0.5s ease-in-out,
        top 1s ease-in-out,
        left 1s ease-in-out,
        box-shadow 0.5s ease-in-out;
    z-index: 0;
}

.Circle.animatecircle {
    border: 2px solid #e7c0ff;
    box-shadow: 0px 0px 8px rgba(239, 196, 255, 0.388);
}

/* ===== Responsive Mobile Tweaks ===== */
@media (max-width: 600px) {
    #container {
        min-width: auto;      /* remove min-width restriction */
        width: 95%;           /* fill most of the screen width */
        min-height: auto;     /* allow height to adjust */
        max-height: none;
        padding: 15px;        /* more padding for touch */
    }

    button {
        font-size: 20px;      /* scale down button text on mobile */
        padding: 12px 25px;
        margin-top: 20px;
    }

    .texty {
        font-size: 28px;      /* smaller heading */
        margin-top: 15px;
    }

    p {
        font-size: 16px;
        max-width: 90%;
        margin: 30px auto 0 auto;
    }

    hr {
        margin-top: 20px;
        max-width: 40px;
    }

    .Circle {
        width: 70px;
        height: 70px;
        margin-top: 15px;
        top: 0;
        left: 0;
    }
}