    * {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }

    body {
        font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        background: linear-gradient(135deg, #1f2d3d, #2c3e50);
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
        color: #333;
    }

    .login-box {
        background: #fff;
        padding: 40px 30px;
        border-radius: 12px;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
        width: 100%;
        max-width: 400px;
    }

    .login-box h2 {
        text-align: center;
        margin-bottom: 25px;
        color: #2c80ff;
    }

    .login-box .input-group {
        margin-bottom: 20px;
    }

    .login-box .input-group label {
        display: block;
        margin-bottom: 6px;
        font-weight: bold;
    }

    .login-box .input-group input {
        width: 100%;
        padding: 12px;
        border: 1px solid #ccc;
        border-radius: 6px;
        transition: border 0.3s;
    }

    .login-box .input-group input:focus {
        border-color: #2c80ff;
        outline: none;
    }

    .login-box button {
        width: 100%;
        padding: 12px;
        background-color: #2c80ff;
        border: none;
        color: white;
        border-radius: 6px;
        font-weight: bold;
        cursor: pointer;
        transition: background 0.3s;
    }

    .login-box button:hover {
        background-color: #1b66d1;
    }

    .error-message {
        background-color: #f44336;
        color: white;
        padding: 10px;
        text-align: center;
        margin-bottom: 15px;
        border-radius: 6px;
    }

    .top-error {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        padding: 15px;
        background: transparent;
        display: flex;
        justify-content: center;
        z-index: 9999;
        animation: slideDown 0.3s ease-out;
    }

    .error-box {
        background: #f44336;
        color: #fff;
        padding: 12px 20px;
        border-radius: 6px;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
        font-weight: bold;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    @keyframes slideDown {
        from {
            transform: translateY(-100%);
            opacity: 0;
        }

        to {
            transform: translateY(0);
            opacity: 1;
        }
    }

    .footer-text {
        text-align: center;
        margin-top: 15px;
        font-size: 0.9em;
        color: #888;
    }

    @media (max-width: 500px) {
        .login-box {
            padding: 30px 20px;
        }
    }

    /* Estilo para quando o input estiver em foco */
    #username:focus {
        border-color: #007bff;
        /* Cor da eDataCenter */
        box-shadow: 0 0 8px rgba(0, 123, 255, 0.5);
        outline: none;
        /* Remove aquela borda padrão chata do navegador */
        transition: border-color 0.3s, box-shadow 0.3s;
    }