body {
    font-family:Arial, Helvetica, sans-serif;
    background-color:whitesmoke
}

h1 {
    color: #2c3e50;
    text-align : center;
}

form {
   
    background-color: white;
    width: 90%;          /* responsive for mobile */
    max-width: 400px;    /* keeps it narrow on laptops */
    margin: auto;
    padding: 20px;
    box-sizing: border-box;
   }

input, button {
    
    padding: 9px;
    width: 100%;
    margin: 6px 0; /* 10px top and bottom spacing */
    box-sizing: border-box;
}


button {
    background-color: #3498db;
    margin-top: 12px;
    color: white;
    border: none;
    cursor: pointer;
    font-weight: bold;
    transition: background 0.3s ease;
   
}
button:hover {
    background-color: #2980b9; /* darker blue on hover */
}
/* Table wrapper (important) */
    .table-container {

        width: 100%;
        max-width: 100%;
        overflow-x: auto;   /* scrolls on mobile */
        margin-top: 10px;
}

/* Table styling */
    table {
    width: 100%;
    max-width: 500px;
    border-collapse: collapse;
    margin: auto;
    }


th, td {
    border: 1px solid black;
    padding: 10px;
    text-align: center;
}

th {
    background-color: #3498db;
    color: white;
}

.result-title {
    text-align: center;
    color: #2c3e50;
    margin-top: 25px;
}

 .cat-gif {
    
    display: block;
    margin: 15px auto;
    width: 50vw;        /* scales with screen width */
    max-width: 320px;
    min-width: 180px;
    height: auto;
    animation: pop 2s ease;
}
/* Media query for small screens (phones) */
@media (max-width: 400px) {
    .cat-gif {
        width: 50vw;   /* bigger relative size */
        max-width: 250px;
    }
}



@keyframes pop {
    from {
        transform: scale(0.5);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}
h1, .result-title {
    font-size: 1.5rem;   /* scales better on mobile */
}


